Pass '' instead of false for the $conds parameter in select calls.
authordaniel <daniel.kinzler@wikimedia.de>
Tue, 27 Feb 2018 18:37:26 +0000 (19:37 +0100)
committerKrinkle <krinklemail@gmail.com>
Fri, 2 Mar 2018 02:32:54 +0000 (02:32 +0000)
Per documentation on IDatabase, $conds must be a string or an array.
Passing false for conds is confusing, since it's unclear whether this
should match everything or nothing.

Bug: T188314
Change-Id: I8be1ac4cbdaafc41aadc2a658be8a99b754b0268

26 files changed:
includes/installer/DatabaseUpdater.php
includes/specials/SpecialRecentchanges.php
includes/specials/pagers/ContribsPager.php
includes/specials/pagers/NewFilesPager.php
maintenance/archives/upgradeLogging.php
maintenance/clearInterwikiCache.php
maintenance/migrateActors.php
maintenance/populateBacklinkNamespace.php
maintenance/populateFilearchiveSha1.php
maintenance/populateIpChanges.php
maintenance/populateLogSearch.php
maintenance/populateLogUsertext.php
maintenance/populateParentId.php
maintenance/populateRecentChangesSource.php
maintenance/populateRevisionLength.php
maintenance/populateRevisionSha1.php
maintenance/rebuildFileCache.php
maintenance/refreshLinks.php
maintenance/storage/checkStorage.php
maintenance/storage/fixT22757.php
maintenance/storage/moveToExternal.php
maintenance/storage/orphanStats.php
maintenance/storage/resolveStubs.php
maintenance/storage/storageTypeStats.php
maintenance/storage/trackBlobs.php
maintenance/updateRestrictions.php

index 500bc5a..79ea4f8 100644 (file)
@@ -1047,7 +1047,7 @@ abstract class DatabaseUpdater {
         * Sets the number of active users in the site_stats table
         */
        protected function doActiveUsersInit() {
-               $activeUsers = $this->db->selectField( 'site_stats', 'ss_active_users', false, __METHOD__ );
+               $activeUsers = $this->db->selectField( 'site_stats', 'ss_active_users', '', __METHOD__ );
                if ( $activeUsers == -1 ) {
                        $activeUsers = $this->db->selectField( 'recentchanges',
                                'COUNT( DISTINCT rc_user_text )',
index 4abdebf..d6d4c27 100644 (file)
@@ -686,7 +686,7 @@ class SpecialRecentChanges extends ChangesListSpecialPage {
         */
        public function checkLastModified() {
                $dbr = $this->getDB();
-               $lastmod = $dbr->selectField( 'recentchanges', 'MAX(rc_timestamp)', false, __METHOD__ );
+               $lastmod = $dbr->selectField( 'recentchanges', 'MAX(rc_timestamp)', '', __METHOD__ );
 
                return $lastmod;
        }
index 6fdf05f..cd04995 100644 (file)
@@ -185,7 +185,7 @@ class ContribsPager extends RangeChronologicalPager {
                ];
 
                if ( $this->contribs == 'newbie' ) {
-                       $max = $this->mDb->selectField( 'user', 'max(user_id)', false, __METHOD__ );
+                       $max = $this->mDb->selectField( 'user', 'max(user_id)', '', __METHOD__ );
                        $queryInfo['conds'][] = $revQuery['fields']['rev_user'] . ' >' . (int)( $max - $max / 100 );
                        # ignore local groups with the bot right
                        # @todo FIXME: Global groups may have 'bot' rights
index 4815189..e764e8b 100644 (file)
@@ -75,7 +75,7 @@ class NewFilesPager extends RangeChronologicalPager {
                if ( $opts->getValue( 'newbies' ) ) {
                        // newbie = most recent 1% of users
                        $dbr = wfGetDB( DB_REPLICA );
-                       $max = $dbr->selectField( 'user', 'max(user_id)', false, __METHOD__ );
+                       $max = $dbr->selectField( 'user', 'max(user_id)', '', __METHOD__ );
                        $conds[] = $imgQuery['fields']['img_user'] . ' >' . (int)( $max - $max / 100 );
 
                        // there's no point in looking for new user activity in a far past;
index 13362e0..bcf7023 100644 (file)
@@ -132,13 +132,13 @@ EOT;
         */
        function sync( $srcTable, $dstTable ) {
                $batchSize = 1000;
-               $minTs = $this->dbw->selectField( $srcTable, 'MIN(log_timestamp)', false, __METHOD__ );
+               $minTs = $this->dbw->selectField( $srcTable, 'MIN(log_timestamp)', '', __METHOD__ );
                $minTsUnix = wfTimestamp( TS_UNIX, $minTs );
                $numRowsCopied = 0;
 
                while ( true ) {
-                       $maxTs = $this->dbw->selectField( $srcTable, 'MAX(log_timestamp)', false, __METHOD__ );
-                       $copyPos = $this->dbw->selectField( $dstTable, 'MAX(log_timestamp)', false, __METHOD__ );
+                       $maxTs = $this->dbw->selectField( $srcTable, 'MAX(log_timestamp)', '', __METHOD__ );
+                       $copyPos = $this->dbw->selectField( $dstTable, 'MAX(log_timestamp)', '', __METHOD__ );
                        $maxTsUnix = wfTimestamp( TS_UNIX, $maxTs );
                        $copyPosUnix = wfTimestamp( TS_UNIX, $copyPos );
 
index 2e1f7c9..8579f0f 100644 (file)
@@ -38,7 +38,7 @@ class ClearInterwikiCache extends Maintenance {
        public function execute() {
                global $wgLocalDatabases, $wgMemc;
                $dbr = $this->getDB( DB_REPLICA );
-               $res = $dbr->select( 'interwiki', [ 'iw_prefix' ], false );
+               $res = $dbr->select( 'interwiki', [ 'iw_prefix' ], '', __METHOD__ );
                $prefixes = [];
                foreach ( $res as $row ) {
                        $prefixes[] = $row->iw_prefix;
index 5b144fc..edd5dda 100644 (file)
@@ -55,7 +55,7 @@ class MigrateActors extends LoggedUpdateMaintenance {
                $this->output( "Creating actor entries for all registered users\n" );
                $end = 0;
                $dbw = $this->getDB( DB_MASTER );
-               $max = $dbw->selectField( 'user', 'MAX(user_id)', false, __METHOD__ );
+               $max = $dbw->selectField( 'user', 'MAX(user_id)', '', __METHOD__ );
                $count = 0;
                while ( $end < $max ) {
                        $start = $end + 1;
index 23144e9..e2fd8b5 100644 (file)
@@ -52,13 +52,13 @@ class PopulateBacklinkNamespace extends LoggedUpdateMaintenance {
 
                $start = $this->getOption( 'lastUpdatedId' );
                if ( !$start ) {
-                       $start = $db->selectField( 'page', 'MIN(page_id)', false, __METHOD__ );
+                       $start = $db->selectField( 'page', 'MIN(page_id)', '', __METHOD__ );
                }
                if ( !$start ) {
                        $this->output( "Nothing to do." );
                        return false;
                }
-               $end = $db->selectField( 'page', 'MAX(page_id)', false, __METHOD__ );
+               $end = $db->selectField( 'page', 'MAX(page_id)', '', __METHOD__ );
                $batchSize = $this->getBatchSize();
 
                # Do remaining chunk
index 7c094be..ef57640 100644 (file)
@@ -56,7 +56,7 @@ class PopulateFilearchiveSha1 extends LoggedUpdateMaintenance {
                }
 
                $this->output( "Populating fa_sha1 field from fa_storage_key\n" );
-               $endId = $dbw->selectField( $table, 'MAX(fa_id)', false, __METHOD__ );
+               $endId = $dbw->selectField( $table, 'MAX(fa_id)', '', __METHOD__ );
 
                $batchSize = $this->getBatchSize();
                $done = 0;
index 7bb1605..6e88dfa 100644 (file)
@@ -75,7 +75,7 @@ TEXT
                $start = $this->getOption( 'rev-id', 0 );
                $end = $maxRevId > 0
                        ? $maxRevId
-                       : $dbw->selectField( 'revision', 'MAX(rev_id)', false, __METHOD__ );
+                       : $dbw->selectField( 'revision', 'MAX(rev_id)', '', __METHOD__ );
 
                if ( empty( $end ) ) {
                        $this->output( "No revisions found, aborting.\n" );
index 332d7c5..589be48 100644 (file)
@@ -62,13 +62,13 @@ class PopulateLogSearch extends LoggedUpdateMaintenance {
 
                        return false;
                }
-               $start = $db->selectField( 'logging', 'MIN(log_id)', false, __FUNCTION__ );
+               $start = $db->selectField( 'logging', 'MIN(log_id)', '', __FUNCTION__ );
                if ( !$start ) {
                        $this->output( "Nothing to do.\n" );
 
                        return true;
                }
-               $end = $db->selectField( 'logging', 'MAX(log_id)', false, __FUNCTION__ );
+               $end = $db->selectField( 'logging', 'MAX(log_id)', '', __FUNCTION__ );
 
                # Do remaining chunk
                $end += $batchSize - 1;
index cacd067..3c0bba9 100644 (file)
@@ -50,13 +50,13 @@ class PopulateLogUsertext extends LoggedUpdateMaintenance {
        protected function doDBUpdates() {
                $batchSize = $this->getBatchSize();
                $db = $this->getDB( DB_MASTER );
-               $start = $db->selectField( 'logging', 'MIN(log_id)', false, __METHOD__ );
+               $start = $db->selectField( 'logging', 'MIN(log_id)', '', __METHOD__ );
                if ( !$start ) {
                        $this->output( "Nothing to do.\n" );
 
                        return true;
                }
-               $end = $db->selectField( 'logging', 'MAX(log_id)', false, __METHOD__ );
+               $end = $db->selectField( 'logging', 'MAX(log_id)', '', __METHOD__ );
 
                // If this is being run during an upgrade from 1.16 or earlier, this
                // will be run before the actor table change and should continue. But
index 39bc733..2ef58b7 100644 (file)
@@ -54,8 +54,8 @@ class PopulateParentId extends LoggedUpdateMaintenance {
                        return false;
                }
                $this->output( "Populating rev_parent_id column\n" );
-               $start = $db->selectField( 'revision', 'MIN(rev_id)', false, __FUNCTION__ );
-               $end = $db->selectField( 'revision', 'MAX(rev_id)', false, __FUNCTION__ );
+               $start = $db->selectField( 'revision', 'MIN(rev_id)', '', __FUNCTION__ );
+               $end = $db->selectField( 'revision', 'MAX(rev_id)', '', __FUNCTION__ );
                if ( is_null( $start ) || is_null( $end ) ) {
                        $this->output( "...revision table seems to be empty, nothing to do.\n" );
 
index 4ac3486..8a56d7d 100644 (file)
@@ -46,13 +46,13 @@ class PopulateRecentChangesSource extends LoggedUpdateMaintenance {
                        $this->error( 'rc_source field in recentchanges table does not exist.' );
                }
 
-               $start = $dbw->selectField( 'recentchanges', 'MIN(rc_id)', false, __METHOD__ );
+               $start = $dbw->selectField( 'recentchanges', 'MIN(rc_id)', '', __METHOD__ );
                if ( !$start ) {
                        $this->output( "Nothing to do.\n" );
 
                        return true;
                }
-               $end = $dbw->selectField( 'recentchanges', 'MAX(rc_id)', false, __METHOD__ );
+               $end = $dbw->selectField( 'recentchanges', 'MAX(rc_id)', '', __METHOD__ );
                $end += $batchSize - 1;
                $blockStart = $start;
                $blockEnd = $start + $batchSize - 1;
index bcc4999..8895c9f 100644 (file)
@@ -76,8 +76,8 @@ class PopulateRevisionLength extends LoggedUpdateMaintenance {
                $dbr = $this->getDB( DB_REPLICA );
                $dbw = $this->getDB( DB_MASTER );
                $batchSize = $this->getBatchSize();
-               $start = $dbw->selectField( $table, "MIN($idCol)", false, __METHOD__ );
-               $end = $dbw->selectField( $table, "MAX($idCol)", false, __METHOD__ );
+               $start = $dbw->selectField( $table, "MIN($idCol)", '', __METHOD__ );
+               $end = $dbw->selectField( $table, "MAX($idCol)", '', __METHOD__ );
                if ( !$start || !$end ) {
                        $this->output( "...$table table seems to be empty.\n" );
 
index d2372a9..9662044 100644 (file)
@@ -78,8 +78,8 @@ class PopulateRevisionSha1 extends LoggedUpdateMaintenance {
        protected function doSha1Updates( $table, $idCol, $queryInfo, $prefix ) {
                $db = $this->getDB( DB_MASTER );
                $batchSize = $this->getBatchSize();
-               $start = $db->selectField( $table, "MIN($idCol)", false, __METHOD__ );
-               $end = $db->selectField( $table, "MAX($idCol)", false, __METHOD__ );
+               $start = $db->selectField( $table, "MIN($idCol)", '', __METHOD__ );
+               $end = $db->selectField( $table, "MAX($idCol)", '', __METHOD__ );
                if ( !$start || !$end ) {
                        $this->output( "...$table table seems to be empty.\n" );
 
index ae6a75e..ecdec29 100644 (file)
@@ -82,10 +82,10 @@ class RebuildFileCache extends Maintenance {
                $overwrite = $this->hasOption( 'overwrite' );
                $start = ( $start > 0 )
                        ? $start
-                       : $dbr->selectField( 'page', 'MIN(page_id)', false, __METHOD__ );
+                       : $dbr->selectField( 'page', 'MIN(page_id)', '', __METHOD__ );
                $end = ( $end > 0 )
                        ? $end
-                       : $dbr->selectField( 'page', 'MAX(page_id)', false, __METHOD__ );
+                       : $dbr->selectField( 'page', 'MAX(page_id)', '', __METHOD__ );
                if ( !$start ) {
                        $this->fatalError( "Nothing to do." );
                }
index 9d5d39f..49f1cd1 100644 (file)
@@ -170,8 +170,8 @@ class RefreshLinks extends Maintenance {
                        }
                } else {
                        if ( !$end ) {
-                               $maxPage = $dbr->selectField( 'page', 'max(page_id)', false );
-                               $maxRD = $dbr->selectField( 'redirect', 'max(rd_from)', false );
+                               $maxPage = $dbr->selectField( 'page', 'max(page_id)', '', __METHOD__ );
+                               $maxRD = $dbr->selectField( 'redirect', 'max(rd_from)', '', __METHOD__ );
                                $end = max( $maxPage, $maxRD );
                        }
                        $this->output( "Refreshing redirects table.\n" );
index 8f55b88..bd0556a 100644 (file)
@@ -65,7 +65,7 @@ class CheckStorage {
                } else {
                        print "Checking...\n";
                }
-               $maxRevId = $dbr->selectField( 'revision', 'MAX(rev_id)', false, __METHOD__ );
+               $maxRevId = $dbr->selectField( 'revision', 'MAX(rev_id)', '', __METHOD__ );
                $chunkSize = 1000;
                $flagStats = [];
                $objectStats = [];
index da3ada7..6bc2f98 100644 (file)
@@ -55,7 +55,7 @@ class FixT22757 extends Maintenance {
                $numFixed = 0;
                $numBad = 0;
 
-               $totalRevs = $dbr->selectField( 'text', 'MAX(old_id)', false, __METHOD__ );
+               $totalRevs = $dbr->selectField( 'text', 'MAX(old_id)', '', __METHOD__ );
 
                // In MySQL 4.1+, the binary field old_text has a non-working LOWER() function
                $lowerLeft = 'LOWER(CONVERT(LEFT(old_text,22) USING latin1))';
index e117992..9bb554c 100644 (file)
@@ -41,7 +41,7 @@ if ( !defined( 'MEDIAWIKI' ) ) {
        if ( isset( $options['e'] ) ) {
                $maxID = $options['e'];
        } else {
-               $maxID = $dbw->selectField( 'text', 'MAX(old_id)', false, $fname );
+               $maxID = $dbw->selectField( 'text', 'MAX(old_id)', '', $fname );
        }
        $minID = isset( $options['s'] ) ? $options['s'] : 1;
 
index 4feb95e..9c1b538 100644 (file)
@@ -47,7 +47,7 @@ class OrphanStats extends Maintenance {
                if ( !$dbr->tableExists( 'blob_orphans' ) ) {
                        $this->fatalError( "blob_orphans doesn't seem to exist, need to run trackBlobs.php first" );
                }
-               $res = $dbr->select( 'blob_orphans', '*', false, __METHOD__ );
+               $res = $dbr->select( 'blob_orphans', '*', '', __METHOD__ );
 
                $num = 0;
                $totalSize = 0;
index 8ca8bb2..f9ec398 100644 (file)
@@ -38,7 +38,7 @@ function resolveStubs() {
        $fname = 'resolveStubs';
 
        $dbr = wfGetDB( DB_REPLICA );
-       $maxID = $dbr->selectField( 'text', 'MAX(old_id)', false, $fname );
+       $maxID = $dbr->selectField( 'text', 'MAX(old_id)', '', $fname );
        $blockSize = 10000;
        $numBlocks = intval( $maxID / $blockSize ) + 1;
 
index 6dee1a5..9ba3d1b 100644 (file)
@@ -25,7 +25,7 @@ class StorageTypeStats extends Maintenance {
        function execute() {
                $dbr = $this->getDB( DB_REPLICA );
 
-               $endId = $dbr->selectField( 'text', 'MAX(old_id)', false, __METHOD__ );
+               $endId = $dbr->selectField( 'text', 'MAX(old_id)', '', __METHOD__ );
                if ( !$endId ) {
                        echo "No text rows!\n";
                        exit( 1 );
index b4514ec..ae6d2ff 100644 (file)
@@ -153,7 +153,7 @@ class TrackBlobs {
 
                $textClause = $this->getTextClause();
                $startId = 0;
-               $endId = $dbr->selectField( 'revision', 'MAX(rev_id)', false, __METHOD__ );
+               $endId = $dbr->selectField( 'revision', 'MAX(rev_id)', '', __METHOD__ );
                $batchesDone = 0;
                $rowsInserted = 0;
 
@@ -229,7 +229,7 @@ class TrackBlobs {
 
                $textClause = $this->getTextClause( $this->clusters );
                $startId = 0;
-               $endId = $dbr->selectField( 'text', 'MAX(old_id)', false, __METHOD__ );
+               $endId = $dbr->selectField( 'text', 'MAX(old_id)', '', __METHOD__ );
                $rowsInserted = 0;
                $batchesDone = 0;
 
@@ -339,7 +339,7 @@ class TrackBlobs {
                        $startId = 0;
                        $batchesDone = 0;
                        $actualBlobs = gmp_init( 0 );
-                       $endId = $extDB->selectField( $table, 'MAX(blob_id)', false, __METHOD__ );
+                       $endId = $extDB->selectField( $table, 'MAX(blob_id)', '', __METHOD__ );
 
                        // Build a bitmap of actual blob rows
                        while ( true ) {
index cb40af3..668ba79 100644 (file)
@@ -46,11 +46,11 @@ class UpdateRestrictions extends Maintenance {
                        $this->fatalError( "page_restrictions table does not exist" );
                }
 
-               $start = $db->selectField( 'page', 'MIN(page_id)', false, __METHOD__ );
+               $start = $db->selectField( 'page', 'MIN(page_id)', '', __METHOD__ );
                if ( !$start ) {
                        $this->fatalError( "Nothing to do." );
                }
-               $end = $db->selectField( 'page', 'MAX(page_id)', false, __METHOD__ );
+               $end = $db->selectField( 'page', 'MAX(page_id)', '', __METHOD__ );
 
                # Do remaining chunk
                $end += $batchSize - 1;