http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87669

Revision: 87669
Author:   aaron
Date:     2011-05-08 00:58:21 +0000 (Sun, 08 May 2011)
Log Message:
-----------
Run populate_fr_rev_timestamp() via updater

Modified Paths:
--------------
    trunk/extensions/FlaggedRevs/schema/FlaggedRevsUpdater.hooks.php

Modified: trunk/extensions/FlaggedRevs/schema/FlaggedRevsUpdater.hooks.php
===================================================================
--- trunk/extensions/FlaggedRevs/schema/FlaggedRevsUpdater.hooks.php    
2011-05-08 00:10:31 UTC (rev 87668)
+++ trunk/extensions/FlaggedRevs/schema/FlaggedRevsUpdater.hooks.php    
2011-05-08 00:58:21 UTC (rev 87669)
@@ -33,8 +33,8 @@
                                'flaggedrevs_stats', 
"$base/patch-flaggedrevs_stats.sql", true ) );
                        $du->addExtensionUpdate( array( 
'FlaggedRevsUpdaterHooks::doFlaggedImagesTimestampNULL',
                                "$base/patch-fi_img_timestamp.sql" ) );
-                       $du->addExtensionUpdate( array( 'addIndex',
-                               'flaggedrevs', 'page_rev', 
"$base/patch-fr_page_rev-index.sql", true ) );
+                       $du->addExtensionUpdate( array( 
'FlaggedRevsUpdaterHooks::doFlaggedRevsRevTimestamp',
+                               "$base/patch-fr_page_rev-index.sql" ) );
                } elseif ( $wgDBtype == 'postgres' ) {
                        $base = dirname( __FILE__ ) . '/postgres';
                        // Initial install tables (current schema)
@@ -62,8 +62,8 @@
                        // @TODO: PG stats table???
                        $du->addExtensionUpdate( array( 
'FlaggedRevsUpdaterHooks::doFlaggedImagesTimestampNULL',
                                "$base/patch-fi_img_timestamp.sql" ) );
-                       $du->addExtensionUpdate( array( 'addIndex',
-                               'flaggedrevs', 'page_rev', 
"$base/patch-fr_page_rev-index.sql", true ) );
+                       $du->addExtensionUpdate( array( 
'FlaggedRevsUpdaterHooks::doFlaggedRevsRevTimestamp',
+                               "$base/patch-fr_page_rev-index.sql" ) );
                } elseif ( $wgDBtype == 'sqlite' ) {
                        $base = dirname( __FILE__ ) . '/mysql';
                        $du->addExtensionUpdate( array( 'addTable',
@@ -82,4 +82,21 @@
                $du->getDB()->sourceFile( $patch );
                $du->output( "done.\n" );
        }
+
+       public static function doFlaggedRevsRevTimestamp( $du, $patch ) {
+               $exists = $du->getDB()->fieldInfo( 'flaggedrevs', 
'fr_rev_timestamp' );
+               if ( $exists ) {
+                       $du->output( "...fr_rev_timestamp already exists.\n" );
+                       return;
+               }
+               include_once( dirname( __FILE__ ) . 
"/../maintenance/populateRevTimestamp.inc" );
+               if ( !function_exists( 'populate_fr_rev_timestamp' ) ) {
+                       $du->output( "...populateRevTimestamp.inc missing! 
Aborting fr_rev_timestamp update.\n" );
+                       return; // sanity
+               }
+               $du->output( "Adding fr_rev_timestamp and redoing flaggedrevs 
table indexes... " );
+               $du->getDB()->sourceFile( $patch );
+               populate_fr_rev_timestamp( 0 );
+               $du->output( "done.\n" );
+       }
 }


_______________________________________________
MediaWiki-CVS mailing list
MediaWiki-CVS@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to