DatabaseLockBackend::ensureTableExists

protected DatabaseLockBackend::ensureTableExists()

Check if the semaphore table exists and create it if not.

File

core/lib/Drupal/Core/Lock/DatabaseLockBackend.php, line 170

Class

DatabaseLockBackend
Defines the database lock backend. This is the default backend in Drupal.

Namespace

Drupal\Core\Lock

Code

protected function ensureTableExists() {
  try {
    $database_schema = $this->database->schema();
    if (!$database_schema->tableExists(static::TABLE_NAME)) {
      $schema_definition = $this->schemaDefinition();
      $database_schema->createTable(static::TABLE_NAME, $schema_definition);
      return TRUE;
    }
  }
  // If another process has already created the semaphore table, attempting to
  // recreate it will throw an exception. In this case just catch the
  // exception and do nothing.
  catch (SchemaObjectExistsException $e) {
    return TRUE;
  }
  return FALSE;
}
doc_Drupal
2016-10-29 08:59:46
Comments
Leave a Comment

Please login to continue.