}
}
}
-
+
function doUpdate() {
- global $wgDBname;
$fname = 'SiteStatsUpdate::doUpdate';
$dbw =& wfGetDB( DB_MASTER );
$row = $dbw->selectRow( 'site_stats', '*', false, $fname );
$updates = '';
-
+
$this->appendUpdate( $updates, 'ss_total_views', $this->mViews );
$this->appendUpdate( $updates, 'ss_total_edits', $this->mEdits );
$this->appendUpdate( $updates, 'ss_good_articles', $this->mGood );
$res = $dbr->query( $sql, $fname );
$userRow = $dbr->fetchObject( $res );
$users = $userRow->total + $this->mUsers;
-
+
if ( $updates ) {
$updates .= ',';
}
$updates .= "ss_total_pages=$pages, ss_users=$users";
- } else {
+ } else {
$this->appendUpdate( $updates, 'ss_total_pages', $this->mPages );
$this->appendUpdate( $updates, 'ss_users', $this->mUsers );
}
}
if ( $updates ) {
$site_stats = $dbw->tableName( 'site_stats' );
- $sql = "UPDATE $site_stats SET $updates LIMIT 1";
+ $sql = $dbw->limitResultForUpdate("UPDATE $site_stats SET $updates", 1);
$dbw->query( $sql, $fname );
}
}