Make attachLatest.php wait for DB replica lag
authorReedy <reedy@wikimedia.org>
Sat, 9 Feb 2019 23:27:14 +0000 (23:27 +0000)
committerReedy <reedy@wikimedia.org>
Sun, 10 Feb 2019 19:10:58 +0000 (19:10 +0000)
Change-Id: I4f402ba772d0b0dda8360eaacf11e318f659efc0

maintenance/attachLatest.php

index 897972c..4da0901 100644 (file)
@@ -24,6 +24,8 @@
  * @ingroup Maintenance
  */
 
  * @ingroup Maintenance
  */
 
+use MediaWiki\MediaWikiServices;
+
 require_once __DIR__ . '/Maintenance.php';
 
 /**
 require_once __DIR__ . '/Maintenance.php';
 
 /**
@@ -53,6 +55,7 @@ class AttachLatest extends Maintenance {
                        $conds,
                        __METHOD__ );
 
                        $conds,
                        __METHOD__ );
 
+               $lbFactory = MediaWikiServices::getInstance()->getDBLoadBalancerFactory();
                $n = 0;
                foreach ( $result as $row ) {
                        $pageId = intval( $row->page_id );
                $n = 0;
                foreach ( $result as $row ) {
                        $pageId = intval( $row->page_id );
@@ -78,6 +81,7 @@ class AttachLatest extends Maintenance {
                        if ( $this->hasOption( 'fix' ) ) {
                                $page = WikiPage::factory( $title );
                                $page->updateRevisionOn( $dbw, $revision );
                        if ( $this->hasOption( 'fix' ) ) {
                                $page = WikiPage::factory( $title );
                                $page->updateRevisionOn( $dbw, $revision );
+                               $lbFactory->waitForReplication();
                        }
                        $n++;
                }
                        }
                        $n++;
                }