Aaron Schulz has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/350969 )

Change subject: Avoid master queries in loadAndLazyInit() for miser mode
......................................................................

Avoid master queries in loadAndLazyInit() for miser mode

Bug: T92357
Change-Id: Idaef633d9039cdbfa3bd123018f2339c6d489fe4
---
M includes/SiteStats.php
1 file changed, 8 insertions(+), 3 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/core 
refs/changes/69/350969/1

diff --git a/includes/SiteStats.php b/includes/SiteStats.php
index 1c7730c..ac5e49e 100644
--- a/includes/SiteStats.php
+++ b/includes/SiteStats.php
@@ -22,6 +22,7 @@
 
 use Wikimedia\Rdbms\Database;
 use Wikimedia\Rdbms\IDatabase;
+use MediaWiki\MediaWikiServices;
 
 /**
  * Static accessor class for site_stats and related things
@@ -78,9 +79,12 @@
                $row = self::doLoad( wfGetDB( DB_REPLICA ) );
 
                if ( !self::isSane( $row ) ) {
-                       // Might have just been initialized during this 
request? Underflow?
-                       wfDebug( __METHOD__ . ": site_stats damaged or missing 
on replica DB\n" );
-                       $row = self::doLoad( wfGetDB( DB_MASTER ) );
+                       $lb = 
MediaWikiServices::getInstance()->getDBLoadBalancer();
+                       if ( $lb->hasOrMadeRecentMasterChanges() ) {
+                               // Might have just been initialized during this 
request? Underflow?
+                               wfDebug( __METHOD__ . ": site_stats damaged or 
missing on replica DB\n" );
+                               $row = self::doLoad( wfGetDB( DB_MASTER ) );
+                       }
                }
 
                if ( !$wgMiserMode && !self::isSane( $row ) ) {
@@ -98,6 +102,7 @@
                if ( !self::isSane( $row ) ) {
                        wfDebug( __METHOD__ . ": site_stats persistently 
nonsensical o_O\n" );
                }
+
                return $row;
        }
 

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Idaef633d9039cdbfa3bd123018f2339c6d489fe4
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Aaron Schulz <[email protected]>

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

Reply via email to