(bug 18657) Workaround for MySQL optimiser bug. Replaces Domas's live patch.
authorTim Starling <tstarling@users.mediawiki.org>
Mon, 4 May 2009 09:31:34 +0000 (09:31 +0000)
committerTim Starling <tstarling@users.mediawiki.org>
Mon, 4 May 2009 09:31:34 +0000 (09:31 +0000)
includes/LogEventsList.php

index 18a0a7e..40204d0 100644 (file)
@@ -726,6 +726,17 @@ class LogPager extends ReverseChronologicalPager {
        public function getTagFilter() {
                return $this->mTagFilter;
        }
+
+       public function doQuery() {
+               // Work around MySQL optimizer bug
+               if ( in_array( get_class( $this->mDb ), array( 'Database', 'DatabaseMysql' ) ) ) {
+                       $this->mDb->query( 'SET SQL_BIG_SELECTS=1' );
+                       parent::doQuery();
+                       $this->mDb->query( 'SET SQL_BIG_SELECTS=0' );
+               } else {
+                       parent::doQuery();
+               }
+       }
 }
 
 /**