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
* 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 )',
*/
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;
}
];
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
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;
*/
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 );
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;
$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;
$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
}
$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;
$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" );
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;
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
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" );
$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;
$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" );
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" );
$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." );
}
}
} 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" );
} 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 = [];
$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))';
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;
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;
$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;
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 );
$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;
$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;
$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 ) {
$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;