Reedy has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/158310

Change subject: Don't update the entire table in one query
......................................................................

Don't update the entire table in one query

Bug: 70376
Change-Id: I3b9e0678759b06310979e8c68a79ac5653d9bdbd
---
M MergeUser.php
1 file changed, 10 insertions(+), 6 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/UserMerge 
refs/changes/10/158310/1

diff --git a/MergeUser.php b/MergeUser.php
index a0a7c99..29dc174 100644
--- a/MergeUser.php
+++ b/MergeUser.php
@@ -111,12 +111,16 @@
                        $tableName = array_shift( $fieldInfo );
                        $idField = array_shift( $fieldInfo );
 
-                       $dbw->update(
-                               $tableName,
-                               array( $idField => $this->newUser->getId() ) + 
array_fill_keys( $fieldInfo, $this->newUser->getName() ),
-                               array( $idField => $this->oldUser->getId() ),
-                               __METHOD__
-                       );
+                       do {
+                               $affected = $dbw->update(
+                                       $tableName,
+                                       array( $idField => 
$this->newUser->getId() ) + array_fill_keys( $fieldInfo, 
$this->newUser->getName() ),
+                                       array( $idField => 
$this->oldUser->getId() ),
+                                       __METHOD__,
+                                       array( 'LIMIT' => 100 )
+                               );
+                               wfWaitForSlaves();
+                       } while ( $affected > 0 );
                }
 
                $dbw->delete( 'user_newtalk', array( 'user_id' => 
$this->oldUser->getId() ) );

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I3b9e0678759b06310979e8c68a79ac5653d9bdbd
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/UserMerge
Gerrit-Branch: master
Gerrit-Owner: Reedy <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to