From 8d84be66f60f074f16a279a7ab9845a0a9513321 Mon Sep 17 00:00:00 2001 From: Aaron Schulz Date: Tue, 26 Apr 2016 14:06:51 -0700 Subject: [PATCH] Do not let DataUpdate exceptions block other deferred updates Change-Id: Ida563b29b5450c44358155fc937cd7eeb87090c2 --- includes/deferred/DeferredUpdates.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/includes/deferred/DeferredUpdates.php b/includes/deferred/DeferredUpdates.php index 249b207d6d..e3b75704aa 100644 --- a/includes/deferred/DeferredUpdates.php +++ b/includes/deferred/DeferredUpdates.php @@ -144,7 +144,12 @@ class DeferredUpdates { } // Delegate DataUpdate execution to the DataUpdate class - DataUpdate::runUpdates( $dataUpdates, $mode ); + try { + DataUpdate::runUpdates( $dataUpdates, $mode ); + } catch ( Exception $e ) { + // Let the other updates occur if these had to rollback + MWExceptionHandler::logException( $e ); + } // Execute the non-DataUpdate tasks foreach ( $otherUpdates as $update ) { try { -- 2.20.1