Tables Drupal creates lazily, and the expiry condition each one needs.
Every entry is guarded: each table is created on first write by its backend's
ensureTableExists(), so a DELETE on a site that never wrote one is a hard error, not a no-op.
Each condition is copied from the owning Drupal service (SessionHandler::gc(),
Flood\DatabaseBackend::garbageCollection(), KeyValueDatabaseExpirableFactory,
BatchStorage::cleanup(), DatabaseQueue::garbageCollection()), so this is Drupal's policy
run by another caller. BatchStorage::cleanup() has no caller in Drupal 11.4.5 (only its
declaration, interface and proxy), so batch GC is ours or nobody's.
Tables Drupal creates lazily, and the expiry condition each one needs.
Every entry is guarded: each table is created on first write by its backend's
ensureTableExists(), so aDELETEon a site that never wrote one is a hard error, not a no-op.Each condition is copied from the owning Drupal service (
SessionHandler::gc(),Flood\DatabaseBackend::garbageCollection(),KeyValueDatabaseExpirableFactory,BatchStorage::cleanup(),DatabaseQueue::garbageCollection()), so this is Drupal's policy run by another caller.BatchStorage::cleanup()has no caller in Drupal 11.4.5 (only its declaration, interface and proxy), so batch GC is ours or nobody's.