Gc ​
- Type
- Class
- Namespace
- craft\services
- Inherits
- craft\services\Gc » yii\base\Component » yii\base\BaseObject
- Implements
- yii\base\Configurable
- Since
- 3.1.0
Garbage Collection service.
An instance of the service is available via Craft::$app->getGc().
Public Properties ​
| Property | Description |
|---|---|
| behaviors | yii\base\Behavior – List of behaviors attached to this component. |
| db | craft\db\Connection, array, string – The database connection to use |
| deleteAllTrashed | boolean – 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 config5:softDeleteDuration config setting. |
| probability | integer – The probability (parts per million) that garbage collection (GC) should be performed on a request. |
| silent | boolean – Whether CLI output should be muted. |
db ​
- Type
- craft\db\Connection, array, string
- Default value
'db'- Since
- 4.0.0
The database connection to use
deleteAllTrashed ​
- Type
- boolean
- 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 config5:softDeleteDuration config setting.
probability ​
- Type
- integer
- 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.
silent ​
- Type
- boolean
- Default value
false- Since
- 5.4.9
Whether CLI output should be muted.
Public Methods ​
| Method | Description |
|---|---|
| __call() | Calls the named method which is not a class method. |
| __clone() | This method is called after the object is created by cloning an existing one. |
| __construct() | Constructor. |
| __get() | Returns the value of a component property. |
| __isset() | Checks if a property is set, i.e. defined and not null. |
| __set() | Sets the value of a component property. |
| __unset() | Sets a component property to be null. |
| attachBehavior() | Attaches a behavior to this component. |
| attachBehaviors() | Attaches a list of behaviors to the component. |
| behaviors() | Returns a list of behaviors that this component should behave as. |
| canGetProperty() | Returns a value indicating whether a property can be read. |
| canSetProperty() | Returns a value indicating whether a property can be set. |
| className() | Returns the fully qualified name of this class. |
| deleteOrphanedFieldLayouts() | Deletes field layouts that are no longer used. |
| deleteOrphanedNestedElements() | Deletes elements which have a fieldId value, but it’s set to an invalid field ID, or they're missing a row in the elements_owners table. |
| deletePartialElements() | Deletes elements that are missing data in the given element extension table. |
| detachBehavior() | Detaches a behavior from the component. |
| detachBehaviors() | Detaches all behaviors from the component. |
| ensureBehaviors() | Makes sure that the behaviors declared in behaviors() are attached to this component. |
| getBehavior() | Returns the named behavior object. |
| getBehaviors() | 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() | Returns a value indicating whether there is any handler attached to the named event. |
| hasMethod() | Returns a value indicating whether a method is defined. |
| hasProperty() | Returns a value indicating whether a property is defined for this component. |
| init() | Initializes the object. |
| off() | Detaches an existing event handler from this component. |
| on() | 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() | Triggers an event. |
deleteOrphanedFieldLayouts() ​
- Since
- 5.5.0
Deletes field layouts that are no longer used.
Arguments ​
$elementType(class-string<\craft\base\ElementInterface>) – The element type$table(string) – The table name that contains a foreign key tofieldlayouts.id$fk(string) – The column name that contains the foreign key tofieldlayouts.id
deleteOrphanedNestedElements() ​
- Since
- 5.4.2
Deletes elements which have a fieldId value, but it’s set to an invalid field ID, or they're missing a row in the elements_owners table.
Arguments ​
$elementType(class-string<\craft\base\ElementInterface>) – The element type$table(string) – The extension table name$fieldFk(string) – The column name that contains the foreign key tofields.id
deletePartialElements() ​
- Since
- 3.6.6
Deletes elements that are missing data in the given element extension table.
Arguments ​
$elementType(class-string<\craft\base\ElementInterface>) – The element type$table(string) – The extension table name$fk(string) – 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.
Arguments ​
$tables(string, string[]) – The table(s) to delete rows from. They must have adateDeletedcolumn.
hardDeleteElements() ​
- Since
- 4.0.0
Hard-deletes eligible elements.
Any soft-deleted nested elements which have revisions will be skipped, as their revisions may still be needed by the owner element.
hardDeleteVolumes() ​
Hard delete eligible volumes, deleting the folders one by one to avoid nested dependency errors.
init() ​
Initializes the object.
This method is invoked at the end of the constructor after the object is initialized with the given configuration.
removeEmptyTempFolders() ​
- Since
- 4.0.0
Find all temp upload folders with no assets in them and remove them.
Throws ​
run() ​
Possibly runs garbage collection.
Arguments ​
$force(boolean) – Whether garbage collection should be forced. If left asfalse, then garbage collection will only run if a random condition passes, factoring in probability.
Constants ​
| Constant | Description |
|---|---|
CHUNK_SIZE |
Events ​
EVENT_RUN ​
- Type
craft\services\Event
The event that is triggered when running garbage collection.