jenkins-bot has submitted this change and it was merged.

Change subject: Cut down on system calls
......................................................................


Cut down on system calls

Avoid dozens of file_exists() calls during initialization by making the
code a little more aware of which files need to be loaed.

Change-Id: Ie21ed1732a18ee0557d0d391bb15de678fda0929
---
M wmf-config/CirrusSearch-common.php
M wmf-config/CommonSettings.php
M wmf-config/InitialiseSettings-labs.php
M wmf-config/InitialiseSettings.php
M wmf-config/PoolCounterSettings-common.php
M wmf-config/Wikibase.php
D wmf-config/ext-labs.php
D wmf-config/ext-production.php
R wmf-config/filebackend-production.php
M wmf-config/mobile-labs.php
M wmf-config/mobile.php
M wmf-config/wgConf.php
12 files changed, 56 insertions(+), 92 deletions(-)

Approvals:
  Ori.livneh: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/wmf-config/CirrusSearch-common.php 
b/wmf-config/CirrusSearch-common.php
index 44f2ddb..942094b 100644
--- a/wmf-config/CirrusSearch-common.php
+++ b/wmf-config/CirrusSearch-common.php
@@ -143,4 +143,4 @@
 # - CirrusSearch-labs.php
 # - CirrusSearch-production.php
 #
-require( getRealmSpecificFilename( "$wmfConfigDir/CirrusSearch.php" ) );
+require "{$wmfConfigDir}/CirrusSearch-{$wmfRealm}.php";
diff --git a/wmf-config/CommonSettings.php b/wmf-config/CommonSettings.php
index fdb6afe..8dd12d0 100755
--- a/wmf-config/CommonSettings.php
+++ b/wmf-config/CommonSettings.php
@@ -180,8 +180,17 @@
 
 $wgMemCachedServers = array();
 
-foreach ( array( 'logging', 'db', 'mc', 'redis' ) as $cfg ) {
-       require( getRealmSpecificFilename( "{$wmfConfigDir}/{$cfg}.php" ) );
+require "$wmfConfigDir/logging.php";
+require "$wmfConfigDir/redis.php";
+
+if ( $wmfRealm === 'labs' ) {
+       require "$wmfConfigDir/db-labs.php";
+       require "$wmfConfigDir/mc-labs.php";
+       require "$wmfConfigDir/jobqueue-labs.php";
+} else {
+       require "$wmfConfigDir/mc.php";
+       require "$wmfConfigDir/db-{$wmfDatacenter}.php";
+       require "$wmfConfigDir/jobqueue-{$wmfDatacenter}.php";
 }
 
 ini_set( 'memory_limit', $wmgMemoryLimit );
@@ -416,18 +425,19 @@
 # Squid Configuration
 #######################################################################
 
-if ( $wmgUseClusterSquid ) {
-       $wgUseSquid = true;
-       $wgUseESI   = false;
-
-       require( getRealmSpecificFilename( "$wmfConfigDir/squid.php" ) );
-}
-
 if ( $wmfRealm === 'production' ) {
        $wgStatsdServer = 'statsd.eqiad.wmnet';
+       if ( $wmgUseClusterSquid ) {
+               $wgUseSquid = true;
+               require( "$wmfConfigDir/squid.php" );
+       }
 } elseif ( $wmfRealm === 'labs' ) {
        $wgStatsdServer = 'labmon1001.eqiad.wmnet';
        $wgStatsdMetricPrefix = 'BetaMediaWiki';
+       if ( $wmgUseClusterSquid ) {
+               $wgUseSquid = true;
+               require( "$wmfConfigDir/squid-labs.php" );
+       }
 }
 
 // CORS (cross-domain AJAX, T22814)
@@ -497,11 +507,7 @@
                $wgTimelineSettings->fontFile = 'unifont-5.1.20080907.ttf';
        }
        $wgTimelineSettings->fileBackend = 'local-multiwrite';
-
-       if ( file_exists( '/usr/bin/ploticus' ) ) {
-               $wgTimelineSettings->ploticusCommand = '/usr/bin/ploticus';
-       }
-
+       $wgTimelineSettings->ploticusCommand = '/usr/bin/ploticus';
        $wgTimelineSettings->epochTimestamp = '20130601000000';
 }
 
@@ -514,7 +520,7 @@
 include( $IP . '/extensions/SiteMatrix/SiteMatrix.php' );
 
 // Config for sitematrix
-$wgSiteMatrixFile = getRealmSpecificFilename( "$IP/../langlist" );
+$wgSiteMatrixFile = ( $wmfRealm === 'labs' ) ? "$IP/../langlist-labs" : 
"$IP/../langlist";
 $wgSiteMatrixClosedSites = MWWikiversions::readDbListFile( 'closed' );
 $wgSiteMatrixPrivateSites = MWWikiversions::readDbListFile( 'private' );
 $wgSiteMatrixFishbowlSites = MWWikiversions::readDbListFile( 'fishbowl' );
@@ -827,14 +833,16 @@
 
 if ( $wmgUseClusterFileBackend ) {
        # Cluster-dependent files for file backend
-       require( getRealmSpecificFilename( "$wmfConfigDir/filebackend.php" ) );
+       require "{$wmfConfigDir}/filebackend-{$wmfRealm}.php";
 } else {
        $wgUseInstantCommons = true;
 }
 
 if ( $wmgUseClusterJobqueue ) {
        # Cluster-dependent files for job queue and job queue aggregator
-       require( getRealmSpecificFilename( "$wmfConfigDir/jobqueue.php" ) );
+       require $wmfRealm === 'labs'
+               ? "$wmfConfigDir/jobqueue-labs.php"
+               : "$wmfConfigDir/jobqueue-{$wmfDatacenter}.php";
 }
 
 if ( $wgDBname == 'nostalgiawiki' ) {
@@ -2081,7 +2089,7 @@
 
 # Mobile related configuration
 
-require( getRealmSpecificFilename( "$wmfConfigDir/mobile.php" ) );
+require "{$wmfConfigDir}/mobile.php";
 
 # MUST be after MobileFrontend initialization
 if ( $wmgEnableTextExtracts ) {
@@ -2935,14 +2943,14 @@
 // additional "language names", adding to Names.php data
 $wgExtraLanguageNames = $wmgExtraLanguageNames;
 
-if ( file_exists( "$wmfConfigDir/CommonSettings-$wmfRealm.php" ) ) {
-       require( "$wmfConfigDir/CommonSettings-$wmfRealm.php" );
+
+if ( $wmfRealm === 'labs' ) {
+       require( "$wmfConfigDir/CommonSettings-labs.php" );
 }
 
-#### Per realm extensions
-
-if ( file_exists( "$wmfConfigDir/ext-$wmfRealm.php" ) ) {
-       require( "$wmfConfigDir/ext-$wmfRealm.php" );
+if ( $wmgUseCheckUser ) {
+       include( $IP . '/extensions/CheckUser/CheckUser.php' );
+       $wgCheckUserForceSummary = $wmgCheckUserForceSummary;
 }
 
 // T39211
@@ -2988,23 +2996,6 @@
 
 if ( $wmgUseWPB ) {
        wfLoadExtension( 'WikidataPageBanner' );
-}
-
-if ( file_exists( "$wmfConfigDir/extension-list-$wmgVersionNumber" ) ) {
-
-       // Version specific extension-list files
-       //
-       // If a new extension is added only in one MediaWiki version,
-       // it should go in a version specific file, and be moved back into
-       // the versionless file when said version becomes the "main" version,
-       // and as such, all deployed versions of MediaWiki have this extension.
-       //
-       // If something is to be removed from newer versions, it should go in a
-       // version specific file for the older version. A symlink of this file 
may
-       // be created if it needs to cover multiple versions.
-       // This file can then be deleted once this version of MediaWiki isn't in
-       // production usage.
-       $wgExtensionEntryPointListFiles[] = 
"$wmfConfigDir/extension-list-$wmgVersionNumber";
 }
 
 # THIS MUST BE AFTER ALL EXTENSIONS ARE INCLUDED
diff --git a/wmf-config/InitialiseSettings-labs.php 
b/wmf-config/InitialiseSettings-labs.php
index 3f8a89a..fb9ec7a 100644
--- a/wmf-config/InitialiseSettings-labs.php
+++ b/wmf-config/InitialiseSettings-labs.php
@@ -1056,6 +1056,10 @@
                        'default' => true,
                ),
 
+               'wmgUseCheckUser' => array(
+                       'default' => false,
+               ),
+
                'wmgGraphImgServiceAlways' => array(
                        'default' => true,
                ),
diff --git a/wmf-config/InitialiseSettings.php 
b/wmf-config/InitialiseSettings.php
index 9691ffd..af51697 100644
--- a/wmf-config/InitialiseSettings.php
+++ b/wmf-config/InitialiseSettings.php
@@ -15767,6 +15767,10 @@
        'default' => true,
 ),
 
+'wmgUseCheckUser' => array(
+       'default' => true,
+),
+
 );
 
 
diff --git a/wmf-config/PoolCounterSettings-common.php 
b/wmf-config/PoolCounterSettings-common.php
index ca4399e..c7f4f7e 100644
--- a/wmf-config/PoolCounterSettings-common.php
+++ b/wmf-config/PoolCounterSettings-common.php
@@ -71,4 +71,6 @@
        );
 }
 
-require( getRealmSpecificFilename( "$wmfConfigDir/PoolCounterSettings.php" ) );
+require $wmfRealm === 'labs'
+       ? "{$wmfConfigDir}/PoolCounterSettings-labs.php"
+       : "{$wmfConfigDir}/PoolCounterSettings-{$wmfDatacenter}.php";
diff --git a/wmf-config/Wikibase.php b/wmf-config/Wikibase.php
index 32f9a0d..ec7016a 100644
--- a/wmf-config/Wikibase.php
+++ b/wmf-config/Wikibase.php
@@ -189,4 +189,4 @@
        $wgWBClientSettings['sharedCacheDuration'] = 60 * 60 * 24;
 }
 
-require_once( getRealmSpecificFilename( "$wmfConfigDir/Wikibase.php" ) );
+require_once "{$wmfConfigDir}/Wikibase-{$wmfRealm}.php";
diff --git a/wmf-config/ext-labs.php b/wmf-config/ext-labs.php
deleted file mode 100644
index bb240fe..0000000
--- a/wmf-config/ext-labs.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-
-# WARNING: This file is publically viewable on the web.
-# Do not put private data here.
-
-#######################################################################
-#
-# This file list extension includes and configuration on beta
-#
-#######################################################################
-
-if( $wmfRealm === 'labs' ) {   # safeguard
-
-// Deployed by Petrb as a part of review.
-// This extension is scheduled for review and deployment on enwiki
-// Do not remove this extension, without contacting Petr Bena
-if ($wgDBname == "enwiki") {
-       # commented by hashar on 20121116, cause message cache issue on
-       # beta with the magic word it introduces.
-       # Been disabled by a live hack since last week at least.
-       //include ("$IP/extensions/OnlineStatusBar/OnlineStatusBar.php");
-}
-
-
-} # safeguard
diff --git a/wmf-config/ext-production.php b/wmf-config/ext-production.php
deleted file mode 100644
index 74fb618..0000000
--- a/wmf-config/ext-production.php
+++ /dev/null
@@ -1,19 +0,0 @@
-<?php
-
-# WARNING: This file is publically viewable on the web.
-# Do not put private data here.
-
-#######################################################################
-#
-# This file list extension includes and configuration on production
-#
-#######################################################################
-
-if( $wmfRealm === 'production' ) {   # safeguard
-
-       include( $IP . '/extensions/CheckUser/CheckUser.php' );
-       $wgCheckUserForceSummary = $wmgCheckUserForceSummary;
-
-
-
-} # safeguard
diff --git a/wmf-config/filebackend.php b/wmf-config/filebackend-production.php
similarity index 100%
rename from wmf-config/filebackend.php
rename to wmf-config/filebackend-production.php
diff --git a/wmf-config/mobile-labs.php b/wmf-config/mobile-labs.php
index 24b6eb3..2d8cabc 100644
--- a/wmf-config/mobile-labs.php
+++ b/wmf-config/mobile-labs.php
@@ -3,8 +3,6 @@
 # WARNING: This file is publically viewable on the web.
 # # Do not put private data here.
 
-// Reuse most of production settings
-require_once( __DIR__ . '/mobile.php' );
 
 if ( $wmgMobileFrontend ) {
        if ( $wmgZeroBanner ) {
diff --git a/wmf-config/mobile.php b/wmf-config/mobile.php
index e5cf877..24ad3c9 100644
--- a/wmf-config/mobile.php
+++ b/wmf-config/mobile.php
@@ -633,3 +633,7 @@
                );
        }
 }
+
+if ( $wmfRealm === 'labs' ) {
+       require_once( __DIR__ . '/mobile-labs.php' );
+}
diff --git a/wmf-config/wgConf.php b/wmf-config/wgConf.php
index 9021796..6db983c 100644
--- a/wmf-config/wgConf.php
+++ b/wmf-config/wgConf.php
@@ -20,9 +20,14 @@
        'wikivoyage',
 );
 
-$wgConf->localVHosts = require( getRealmSpecificFilename( 
"$wmfConfigDir/wgConfVHosts.php" ) );
+if ( $wmfRealm === 'labs' ) {
+       $wgConf->localVHosts = require( "{$wmfConfigDir}/wgConfVHosts-labs.php" 
);
+       $dbList = 'all-labs';
+} else {
+       $wgConf->localVHosts = require( "{$wmfConfigDir}/wgConfVHosts.php" );
+       $dbList = 'all';
+}
 
-$dbList = $wmfRealm === 'labs' ? 'all-labs' : 'all';
 $wgConf->wikis = MWWikiversions::readDbListFile( $dbList );
 
 $wgConf->fullLoadCallback = 'wmfLoadInitialiseSettings';

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

Gerrit-MessageType: merged
Gerrit-Change-Id: Ie21ed1732a18ee0557d0d391bb15de678fda0929
Gerrit-PatchSet: 5
Gerrit-Project: operations/mediawiki-config
Gerrit-Branch: master
Gerrit-Owner: Ori.livneh <[email protected]>
Gerrit-Reviewer: Chad <[email protected]>
Gerrit-Reviewer: Ori.livneh <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

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

Reply via email to