function DatabaseBackend::catchException
Same name in other branches
- 8.9.x core/lib/Drupal/Core/Flood/DatabaseBackend.php \Drupal\Core\Flood\DatabaseBackend::catchException()
- 8.9.x core/lib/Drupal/Core/Cache/DatabaseBackend.php \Drupal\Core\Cache\DatabaseBackend::catchException()
- 10 core/lib/Drupal/Core/Flood/DatabaseBackend.php \Drupal\Core\Flood\DatabaseBackend::catchException()
- 10 core/lib/Drupal/Core/Cache/DatabaseBackend.php \Drupal\Core\Cache\DatabaseBackend::catchException()
- 11.x core/lib/Drupal/Core/Flood/DatabaseBackend.php \Drupal\Core\Flood\DatabaseBackend::catchException()
- 11.x core/lib/Drupal/Core/Cache/DatabaseBackend.php \Drupal\Core\Cache\DatabaseBackend::catchException()
Act on an exception when cache might be stale.
If the table does not yet exist, that's fine, but if the table exists and yet the query failed, then the cache is stale and the exception needs to propagate.
Parameters
$e: The exception.
string|null $table_name: The table name. Defaults to $this->bin.
Throws
\Exception
5 calls to DatabaseBackend::catchException()
- DatabaseBackend::deleteAll in core/
lib/ Drupal/ Core/ Cache/ DatabaseBackend.php - DatabaseBackend::deleteMultiple in core/
lib/ Drupal/ Core/ Cache/ DatabaseBackend.php - DatabaseBackend::invalidateAll in core/
lib/ Drupal/ Core/ Cache/ DatabaseBackend.php - DatabaseBackend::invalidateMultiple in core/
lib/ Drupal/ Core/ Cache/ DatabaseBackend.php - DatabaseBackend::removeBin in core/
lib/ Drupal/ Core/ Cache/ DatabaseBackend.php
File
-
core/
lib/ Drupal/ Core/ Cache/ DatabaseBackend.php, line 443
Class
- DatabaseBackend
- Defines a default cache implementation.
Namespace
Drupal\Core\CacheCode
protected function catchException(\Exception $e, $table_name = NULL) {
if ($this->connection
->schema()
->tableExists($table_name ?: $this->bin)) {
throw $e;
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.