Aaron Schulz has uploaded a new change for review.

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

Change subject: Only apply wgDBschema to postgres/mssql
......................................................................

Only apply wgDBschema to postgres/mssql

Bug: T148956
Change-Id: I14f0aa7dd52bd0bdd0d3f8729b562a0fee2df6fa
---
M includes/db/MWLBFactory.php
1 file changed, 15 insertions(+), 4 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/core 
refs/changes/02/322202/1

diff --git a/includes/db/MWLBFactory.php b/includes/db/MWLBFactory.php
index 42ef685..0d12c80 100644
--- a/includes/db/MWLBFactory.php
+++ b/includes/db/MWLBFactory.php
@@ -37,6 +37,8 @@
        public static function applyDefaultConfig( array $lbConf, Config 
$mainConfig ) {
                global $wgCommandLineMode;
 
+               static $typesWithSchema = [ 'postgres', 'msssql' ];
+
                $lbConf += [
                        'localDomain' => new DatabaseDomain(
                                $mainConfig->get( 'DBname' ),
@@ -70,13 +72,18 @@
                                                        'keywordTableMap' => [ 
'user' => 'mwuser', 'text' => 'pagecontent' ]
                                                ];
                                        }
-                                       $lbConf['servers'][$i] = $server + [
-                                               'schema' => $mainConfig->get( 
'DBmwschema' ),
+                                       if ( in_array( $server['type'], 
$typesWithSchema, true ) ) {
+                                               $server['schema'] = 
$mainConfig->get( 'DBmwschema' );
+                                       }
+
+                                       $server += [
                                                'tablePrefix' => 
$mainConfig->get( 'DBprefix' ),
                                                'flags' => DBO_DEFAULT,
                                                'sqlMode' => $mainConfig->get( 
'SQLMode' ),
                                                'utf8Mode' => $mainConfig->get( 
'DBmysql5' )
                                        ];
+
+                                       $lbConf['servers'][$i] = $server;
                                }
                        } else {
                                $flags = DBO_DEFAULT;
@@ -88,7 +95,6 @@
                                        'user' => $mainConfig->get( 'DBuser' ),
                                        'password' => $mainConfig->get( 
'DBpassword' ),
                                        'dbname' => $mainConfig->get( 'DBname' 
),
-                                       'schema' => $mainConfig->get( 
'DBmwschema' ),
                                        'tablePrefix' => $mainConfig->get( 
'DBprefix' ),
                                        'type' => $mainConfig->get( 'DBtype' ),
                                        'load' => 1,
@@ -96,6 +102,9 @@
                                        'sqlMode' => $mainConfig->get( 
'SQLMode' ),
                                        'utf8Mode' => $mainConfig->get( 
'DBmysql5' )
                                ];
+                               if ( in_array( $server['type'], 
$typesWithSchema, true ) ) {
+                                       $server['schema'] = $mainConfig->get( 
'DBmwschema' );
+                               }
                                if ( $server['type'] === 'sqlite' ) {
                                        $server[ 'dbDirectory'] = 
$mainConfig->get( 'SQLiteDataDir' );
                                } elseif ( $server['type'] === 'postgres' ) {
@@ -110,7 +119,9 @@
                        }
                } elseif ( $lbConf['class'] === 'LBFactoryMulti' ) {
                        if ( isset( $lbConf['serverTemplate'] ) ) {
-                               $lbConf['serverTemplate']['schema'] = 
$mainConfig->get( 'DBmwschema' );
+                               if ( in_array( 
$lbConf['serverTemplate']['type'], $typesWithSchema, true ) ) {
+                                       $lbConf['serverTemplate']['schema'] = 
$mainConfig->get( 'DBmwschema' );
+                               }
                                $lbConf['serverTemplate']['sqlMode'] = 
$mainConfig->get( 'SQLMode' );
                                $lbConf['serverTemplate']['utf8Mode'] = 
$mainConfig->get( 'DBmysql5' );
                        }

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I14f0aa7dd52bd0bdd0d3f8729b562a0fee2df6fa
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Aaron Schulz <asch...@wikimedia.org>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to