Index: includes/api/ApiQueryWatchlist.php =================================================================== --- includes/api/ApiQueryWatchlist.php (revision 84756) +++ includes/api/ApiQueryWatchlist.php (working copy) @@ -128,8 +128,12 @@ 'wl_user' => $userId, 'rc_deleted' => 0, ) ); + + $db = $this->getDB(); - $this->addWhereRange( 'rc_timestamp', $params['dir'], $params['start'], $params['end'] ); + $this->addWhereRange( 'rc_timestamp', $params['dir'], + $db->timestamp( $params['start'] ), + $db->timestamp( $params['end'] ) ); $this->addWhereFld( 'wl_namespace', $params['namespace'] ); $this->addWhereIf( 'rc_this_oldid=page_latest', !$params['allrev'] ); @@ -175,7 +179,7 @@ $this->addWhere( 'rc_user_text != ' . $this->getDB()->addQuotes( $params['excludeuser'] ) ); } - $db = $this->getDB(); + // This is an index optimization for mysql, as done in the Special:Watchlist page $this->addWhereIf( "rc_timestamp > ''", !isset( $params['start'] ) && !isset( $params['end'] ) && $db->getType() == 'mysql' );