Gc
- Type
- Class
- Namespace
- craft\services
- Inherits
- craft\services\Gc » yii\base\Component (opens new window) » yii\base\BaseObject (opens new window)
- Implements
- yii\base\Configurable (opens new window)
- Since
- 3.1.0
Garbage Collection service.
An instance of the service is available via Craft::$app->gc
.
View source (opens new window)
# Public Properties
Property | Description |
---|---|
behaviors (opens new window) | yii\base\Behavior (opens new window) – List of behaviors attached to this component. |
db | craft\db\Connection, array (opens new window), string (opens new window) – The database connection to use |
deleteAllTrashed | boolean (opens new window) – Whether hardDelete() should delete all soft-deleted rows, rather than just the ones that were deleted long enough ago to be ready for hard-deletion per the config4:softDeleteDuration (opens new window) config setting. |
probability | integer (opens new window) – The probability (parts per million) that garbage collection (GC) should be performed on a request. |
# db
- Type
- craft\db\Connection, array (opens new window), string (opens new window)
- Default value
'db'
- Since
- 4.0.0
The database connection to use
View source (opens new window)
# deleteAllTrashed
- Type
- boolean (opens new window)
- Default value
false
Whether hardDelete() should delete all soft-deleted rows, rather than just the ones that were deleted long enough ago to be ready for hard-deletion per the config4:softDeleteDuration (opens new window) config setting.
View source (opens new window)
# probability
- Type
- integer (opens new window)
- Default value
10
The probability (parts per million) that garbage collection (GC) should be performed on a request. Defaults to 10, meaning 0.001% chance.
This number should be between 0 and 1000000. A value 0 means no GC will be performed at all unless forced.
View source (opens new window)
# Public Methods
Method | Description |
---|---|
__call() (opens new window) | Calls the named method which is not a class method. |
__clone() (opens new window) | This method is called after the object is created by cloning an existing one. |
__construct() (opens new window) | Constructor. |
__get() (opens new window) | Returns the value of a component property. |
__isset() (opens new window) | Checks if a property is set, i.e. defined and not null. |
__set() (opens new window) | Sets the value of a component property. |
__unset() (opens new window) | Sets a component property to be null. |
attachBehavior() (opens new window) | Attaches a behavior to this component. |
attachBehaviors() (opens new window) | Attaches a list of behaviors to the component. |
behaviors() (opens new window) | Returns a list of behaviors that this component should behave as. |
canGetProperty() (opens new window) | Returns a value indicating whether a property can be read. |
canSetProperty() (opens new window) | Returns a value indicating whether a property can be set. |
className() (opens new window) | Returns the fully qualified name of this class. |
deletePartialElements() | Deletes elements that are missing data in the given element extension table. |
detachBehavior() (opens new window) | Detaches a behavior from the component. |
detachBehaviors() (opens new window) | Detaches all behaviors from the component. |
ensureBehaviors() (opens new window) | Makes sure that the behaviors declared in behaviors() (opens new window) are attached to this component. |
getBehavior() (opens new window) | Returns the named behavior object. |
getBehaviors() (opens new window) | Returns all behaviors attached to this component. |
hardDelete() | Hard-deletes any rows in the given table(s), that are due for it. |
hardDeleteElements() | Hard-deletes eligible elements. |
hardDeleteVolumes() | Hard delete eligible volumes, deleting the folders one by one to avoid nested dependency errors. |
hasEventHandlers() (opens new window) | Returns a value indicating whether there is any handler attached to the named event. |
hasMethod() (opens new window) | Returns a value indicating whether a method is defined. |
hasProperty() (opens new window) | Returns a value indicating whether a property is defined for this component. |
init() | Initializes the object. |
off() (opens new window) | Detaches an existing event handler from this component. |
on() (opens new window) | Attaches an event handler to an event. |
removeEmptyTempFolders() | Find all temp upload folders with no assets in them and remove them. |
run() | Possibly runs garbage collection. |
trigger() (opens new window) | Triggers an event. |
# deletePartialElements()
- Since
- 3.6.6
Deletes elements that are missing data in the given element extension table.
View source (opens new window)
Arguments
$elementType
(string (opens new window)) – The element type$table
(string (opens new window)) – The extension table name$fk
(string (opens new window)) – The column name that contains the foreign key toelements.id
# hardDelete()
Hard-deletes any rows in the given table(s), that are due for it.
View source (opens new window)
Arguments
$tables
(string (opens new window), string (opens new window)[]) – The table(s) to delete rows from. They must have adateDeleted
column.
# hardDeleteElements()
- Since
- 4.0.0
Hard-deletes eligible elements.
Any soft-deleted block elements which have revisions will be skipped, as their revisions may still be needed by the owner element.
View source (opens new window)
# hardDeleteVolumes()
Hard delete eligible volumes, deleting the folders one by one to avoid nested dependency errors.
View source (opens new window)
# init()
Initializes the object.
This method is invoked at the end of the constructor after the object is initialized with the given configuration.
View source (opens new window)
# removeEmptyTempFolders()
- Since
- 4.0.0
Find all temp upload folders with no assets in them and remove them.
View source (opens new window)
Throws
- craft\errors\FsException
- yii\base\Exception (opens new window)
- yii\base\InvalidConfigException (opens new window)
# run()
Possibly runs garbage collection.
View source (opens new window)
Arguments
$force
(boolean (opens new window)) – Whether garbage collection should be forced. If left asfalse
, then garbage collection will only run if a random condition passes, factoring in probability.
# Events
# EVENT_RUN
- Type
craft\services\Event
The event that is triggered when running garbage collection.