Aaron Schulz has uploaded a new change for review.

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

Change subject: Remove wf* function and global variable usage from 
DatabaseSqlite
......................................................................

Remove wf* function and global variable usage from DatabaseSqlite

Change-Id: I81753621ecd1e7e3b099243b4c4d0f3428bf9ae2
---
M includes/ServiceWiring.php
M includes/db/DatabaseSqlite.php
2 files changed, 32 insertions(+), 23 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/core 
refs/changes/12/311312/1

diff --git a/includes/ServiceWiring.php b/includes/ServiceWiring.php
index 7a34b3a..80093e4 100644
--- a/includes/ServiceWiring.php
+++ b/includes/ServiceWiring.php
@@ -57,6 +57,9 @@
                if ( $class === 'LBFactorySimple' ) {
                        if ( is_array( $mainConfig->get( 'DBservers' ) ) ) {
                                foreach ( $mainConfig->get( 'DBservers' ) as $i 
=> $server ) {
+                                       if ( $server['type'] === 'sqlite' ) {
+                                               $server += [ 'dbDirectory' => 
$mainConfig->get( 'SQLiteDataDir' ) ];
+                                       }
                                        $lbConf['servers'][$i] = $server + [
                                                'schema' => $mainConfig->get( 
'DBmwschema' ),
                                                'tablePrefix' => 
$mainConfig->get( 'DBprefix' ),
@@ -70,22 +73,25 @@
                                $flags |= $mainConfig->get( 'DebugDumpSql' ) ? 
DBO_DEBUG : 0;
                                $flags |= $mainConfig->get( 'DBssl' ) ? DBO_SSL 
: 0;
                                $flags |= $mainConfig->get( 'DBcompress' ) ? 
DBO_COMPRESS : 0;
-                               $lbConf['servers'] = [
-                                       [
-                                               'host' => $mainConfig->get( 
'DBserver' ),
-                                               '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,
-                                               'flags' => $flags,
-                                               'sqlMode' => $mainConfig->get( 
'SQLMode' ),
-                                               'utf8Mode' => $mainConfig->get( 
'DBmysql5' )
-                                       ]
+                               $server = [
+                                       'host' => $mainConfig->get( 'DBserver' 
),
+                                       '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,
+                                       'flags' => $flags,
+                                       'sqlMode' => $mainConfig->get( 
'SQLMode' ),
+                                       'utf8Mode' => $mainConfig->get( 
'DBmysql5' )
                                ];
+                               if ( $server['type'] === 'sqlite' ) {
+                                       $server += [ 'dbDirectory' => 
$mainConfig->get( 'SQLiteDataDir' ) ];
+                               }
+                               $lbConf['servers'] = [ $server ];
                        }
+
                        $lbConf['externalServers'] = $mainConfig->get( 
'ExternalServers' );
                }
 
diff --git a/includes/db/DatabaseSqlite.php b/includes/db/DatabaseSqlite.php
index 28fb5b5..969d4f8 100644
--- a/includes/db/DatabaseSqlite.php
+++ b/includes/db/DatabaseSqlite.php
@@ -59,9 +59,11 @@
         * @param array $p
         */
        function __construct( array $p ) {
-               global $wgSQLiteDataDir;
+               if ( !isset( $p['dbDirectory'] ) ) {
+                       throw new InvalidArgumentException( "Missing 
'dbDirectory' parameter." );
+               }
 
-               $this->dbDir = isset( $p['dbDirectory'] ) ? $p['dbDirectory'] : 
$wgSQLiteDataDir;
+               $this->dbDir = $p['dbDirectory'];
 
                if ( isset( $p['dbFilePath'] ) ) {
                        parent::__construct( $p );
@@ -93,7 +95,7 @@
                        !in_array( $this->trxMode, [ 'DEFERRED', 'IMMEDIATE', 
'EXCLUSIVE' ] )
                ) {
                        $this->trxMode = null;
-                       wfWarn( "Invalid SQLite transaction mode provided." );
+                       $this->queryLogger->warning( "Invalid SQLite 
transaction mode provided." );
                }
 
                $this->lockMgr = new FSLockManager( [ 'lockDirectory' => 
"{$this->dbDir}/locks" ] );
@@ -178,7 +180,7 @@
                }
 
                if ( !$this->mConn ) {
-                       wfDebug( "DB connection error: $err\n" );
+                       $this->queryLogger->debug( "DB connection error: 
$err\n" );
                        throw new DBConnectionError( $this, $err );
                }
 
@@ -724,9 +726,9 @@
         * @return string User-friendly database information
         */
        public function getServerInfo() {
-               return wfMessage( self::getFulltextSearchModule()
-                       ? 'sqlite-has-fts'
-                       : 'sqlite-no-fts', $this->getServerVersion() )->text();
+               return self::getFulltextSearchModule()
+                       ? "{$this->getServerVersion()} with fulltext search 
enabled"
+                       : "{$this->getServerVersion()} with fulltext search 
disabled";
        }
 
        /**
@@ -806,7 +808,7 @@
                        // There is an additional bug regarding sorting this 
data after insert
                        // on older versions of sqlite shipped with ubuntu 12.04
                        // https://phabricator.wikimedia.org/T74367
-                       wfDebugLog(
+                       $this->queryLogger->debug(
                                __CLASS__,
                                __FUNCTION__ .
                                        ': Quoting value containing null byte. 
' .
@@ -972,7 +974,8 @@
                );
                if ( $temporary ) {
                        if ( preg_match( 
'/^\\s*CREATE\\s+VIRTUAL\\s+TABLE\b/i', $sql ) ) {
-                               wfDebug( "Table $oldName is virtual, can't 
create a temporary duplicate.\n" );
+                               $this->queryLogger->debug(
+                                       "Table $oldName is virtual, can't 
create a temporary duplicate.\n" );
                        } else {
                                $sql = str_replace( 'CREATE TABLE', 'CREATE 
TEMPORARY TABLE', $sql );
                        }

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I81753621ecd1e7e3b099243b4c4d0f3428bf9ae2
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