Bug 27518: Updater calls PopulateLogSearch before adding logging.log_user_text; popul...
authorMax Semenik <maxsem@users.mediawiki.org>
Sat, 19 Feb 2011 11:49:14 +0000 (11:49 +0000)
committerMax Semenik <maxsem@users.mediawiki.org>
Sat, 19 Feb 2011 11:49:14 +0000 (11:49 +0000)
includes/AutoLoader.php
includes/ImagePage.php
includes/installer/DatabaseUpdater.php
includes/installer/MysqlUpdater.php
includes/installer/SqliteUpdater.php

index 89a2249..8b80825 100644 (file)
@@ -718,6 +718,7 @@ $wgAutoloadLocalClasses = array(
        'DeleteDefaultMessages' => 'maintenance/deleteDefaultMessages.php',
        'PopulateCategory' => 'maintenance/populateCategory.php',
        'PopulateLogSearch' => 'maintenance/populateLogSearch.php',
+       'PopulateLogUsertext' => 'maintenance/populateLogUsertext.php',
        'PopulateParentId' => 'maintenance/populateParentId.php',
        'PopulateRevisionLength' => 'maintenance/populateRevisionLength.php',
        'SevenZipStream' => 'maintenance/7zip.inc',
index 7668972..063adc0 100644 (file)
@@ -1,5 +1,8 @@
 <?php
 
+if ( !defined( 'MEDIAWIKI' ) )
+       die( 1 );
+
 /**
  * Special handling for image description pages
  *
  */
 class ImagePage extends Article {
 
-       private $img;  // Image object
-       private $displayImg;
-       private $repo;
-       private $fileLoaded;
+       /* private */ var $img;  // Image object
+       /* private */ var $displayImg;
+       /* private */ var $repo;
+       /* private */ var $fileLoaded;
        var $mExtraDescription = false;
        var $dupes;
 
index 6ba2df3..abcea33 100644 (file)
@@ -489,6 +489,21 @@ abstract class DatabaseUpdater {
                $this->output( "...ss_active_users user count set...\n" );
        }
 
+       protected function doLogUsertextPopulation() {
+               if ( $this->updateRowExists( 'populate log_usertext' ) ) {
+                       $this->output( "...log_user_text field already populated.\n" );
+                       return;
+               }
+
+               $this->output(
+                       "Populating log_user_text field, printing progress markers. For large\n" .
+                       "databases, you may want to hit Ctrl-C and do this manually with\n" .
+                       "maintenance/populateLogUsertext.php.\n" );
+               $task = new PopulateLogUsertext();
+               $task->execute();
+               $this->output( "Done populating log_user_text field.\n" );
+       }
+
        protected function doLogSearchPopulation() {
                if ( $this->updateRowExists( 'populate log_search' ) ) {
                        $this->output( "...log_search table already populated.\n" );
index 03d9197..c3186f2 100644 (file)
@@ -147,8 +147,9 @@ class MysqlUpdater extends DatabaseUpdater {
                        // 1.16
                        array( 'addTable', 'user_properties',                   'patch-user_properties.sql' ),
                        array( 'addTable', 'log_search',                        'patch-log_search.sql' ),
-                       array( 'doLogSearchPopulation' ),
                        array( 'addField', 'logging',       'log_user_text',    'patch-log_user_text.sql' ),
+                       array( 'doLogUsertextPopulation' ), # listed separately from the previous update because 1.16 was released without this update
+                       array( 'doLogSearchPopulation' ),
                        array( 'addTable', 'l10n_cache',                        'patch-l10n_cache.sql' ),
                        array( 'addTable', 'external_user',                     'patch-external_user.sql' ),
                        array( 'addIndex', 'log_search',    'ls_field_val',     'patch-log_search-rename-index.sql' ),
index de49ffe..5cbe67a 100644 (file)
@@ -30,8 +30,9 @@ class SqliteUpdater extends DatabaseUpdater {
                        // 1.16
                        array( 'addTable', 'user_properties',                   'patch-user_properties.sql' ),
                        array( 'addTable', 'log_search',                        'patch-log_search.sql' ),
-                       array( 'doLogSearchPopulation' ),
                        array( 'addField', 'logging',       'log_user_text',    'patch-log_user_text.sql' ),
+                       array( 'doLogUsertextPopulation' ), # listed separately from the previous update because 1.16 was released without this update
+                       array( 'doLogSearchPopulation' ),
                        array( 'addTable', 'l10n_cache',                        'patch-l10n_cache.sql' ),
                        array( 'addTable', 'external_user',                     'patch-external_user.sql' ),
                        array( 'addIndex', 'log_search',    'ls_field_val',     'patch-log_search-rename-index.sql' ),