jenkins-bot has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/381004 )

Change subject: WmfDatabase: Rollback all if Civi txn marked for rollback
......................................................................


WmfDatabase: Rollback all if Civi txn marked for rollback

This will avoid cross-database inconsistencies.

Bug: T171349
Change-Id: I4c0947cb828c1e4558fdf4b96dea0925cca051fb
---
M sites/all/modules/wmf_common/WmfDatabase.php
1 file changed, 8 insertions(+), 0 deletions(-)

Approvals:
  jenkins-bot: Verified
  Eileen: Looks good to me, approved



diff --git a/sites/all/modules/wmf_common/WmfDatabase.php 
b/sites/all/modules/wmf_common/WmfDatabase.php
index 44e5c4a..6b6758c 100644
--- a/sites/all/modules/wmf_common/WmfDatabase.php
+++ b/sites/all/modules/wmf_common/WmfDatabase.php
@@ -25,6 +25,14 @@
         try {
             // Do the thing itself
             $result = call_user_func_array( $callback, $params );
+
+            // Detect if anything has marked the native Civi transaction for
+                       // rollback, and do not proceed if so.
+            if 
(\Civi\Core\Transaction\Manager::singleton()->getFrame()->isRollbackOnly()) {
+               throw new RuntimeException(
+                       'Civi Transaction was marked for rollback and Exception 
was suppressed'
+                               );
+                       }
         }
         catch ( Exception $ex ) {
             watchdog( 'wmf_common', "Aborting DB transaction.", NULL, 
WATCHDOG_INFO );

-- 
To view, visit https://gerrit.wikimedia.org/r/381004
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I4c0947cb828c1e4558fdf4b96dea0925cca051fb
Gerrit-PatchSet: 2
Gerrit-Project: wikimedia/fundraising/crm
Gerrit-Branch: master
Gerrit-Owner: Ejegg <ej...@ejegg.com>
Gerrit-Reviewer: Eileen <emcnaugh...@wikimedia.org>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to