Merge "Make pre-commit DB callbacks more atomic with multi-DB updates"
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Fri, 15 Jul 2016 13:58:45 +0000 (13:58 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Fri, 15 Jul 2016 13:58:45 +0000 (13:58 +0000)
1  2 
includes/db/Database.php

diff --combined includes/db/Database.php
@@@ -2520,9 -2520,11 +2520,11 @@@ abstract class DatabaseBase implements 
        /**
         * Actually any "on transaction pre-commit" callbacks.
         *
+        * This method should not be used outside of Database/LoadBalancer
+        *
         * @since 1.22
         */
-       protected function runOnTransactionPreCommitCallbacks() {
+       public function runOnTransactionPreCommitCallbacks() {
                $e = $ePrior = null; // last exception
                do { // callbacks may add callbacks :)
                        $callbacks = $this->mTrxPreCommitCallbacks;
                        } else {
                                // The transaction was automatic and has done write operations
                                if ( $this->mTrxDoneWrites ) {
 -                                      wfDebug( "$fname: Automatic transaction with writes in progress" .
 +                                      wfLogDBError( "$fname: Automatic transaction with writes in progress" .
                                                " (from {$this->mTrxFname}), performing implicit commit!\n"
                                        );
                                }