function TransactionManagerBase::processRootCommit

Same name and namespace in other branches
  1. 11.x core/lib/Drupal/Core/Database/Transaction/TransactionManagerBase.php \Drupal\Core\Database\Transaction\TransactionManagerBase::processRootCommit()
  2. 10 core/lib/Drupal/Core/Database/Transaction/TransactionManagerBase.php \Drupal\Core\Database\Transaction\TransactionManagerBase::processRootCommit()

Processes the root transaction commit.

Throws

\Drupal\Core\Database\TransactionCommitFailedException If the commit of the root transaction failed.

1 call to TransactionManagerBase::processRootCommit()
TransactionManagerBase::commit in core/lib/Drupal/Core/Database/Transaction/TransactionManagerBase.php
Commits a Drupal transaction.

File

core/lib/Drupal/Core/Database/Transaction/TransactionManagerBase.php, line 642

Class

TransactionManagerBase
The database transaction manager base class.

Namespace

Drupal\Core\Database\Transaction

Code

protected function processRootCommit() : void {
  try {
    if (!$this->commitClientTransaction()) {
      $this->exceptionThrown = TRUE;
      throw new TransactionCommitFailedException('Transaction commit failed');
    }
  } catch (TransactionCommitFailedException $e) {
    $this->setConnectionTransactionState(ClientConnectionTransactionState::CommitFailed);
    throw $e;
  }
  $this->setConnectionTransactionState(ClientConnectionTransactionState::Committed);
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.