Merge "RCFilters: Style the Saved Links placeholder and add a title"
[lhc/web/wiklou.git] / maintenance / rebuildrecentchanges.php
index 6465bb3..142a4e5 100644 (file)
@@ -24,6 +24,7 @@
  */
 
 require_once __DIR__ . '/Maintenance.php';
+use MediaWiki\MediaWikiServices;
 
 /**
  * Maintenance script that rebuilds recent changes from scratch.
@@ -304,6 +305,8 @@ class RebuildRecentchanges extends Maintenance {
                        ]
                );
 
+               $field = $dbw->fieldInfo( 'recentchanges', 'rc_cur_id' );
+
                $inserted = 0;
                foreach ( $res as $row ) {
                        $dbw->insert(
@@ -323,7 +326,7 @@ class RebuildRecentchanges extends Maintenance {
                                        'rc_last_oldid' => 0,
                                        'rc_type' => RC_LOG,
                                        'rc_source' => $dbw->addQuotes( RecentChange::SRC_LOG ),
-                                       'rc_cur_id' => $dbw->cascadingDeletes()
+                                       'rc_cur_id' => $field->isNullable()
                                                ? $row->page_id
                                                : (int)$row->page_id, // NULL => 0,
                                        'rc_log_type' => $row->log_type,
@@ -476,15 +479,16 @@ class RebuildRecentchanges extends Maintenance {
        }
 
        /**
-        * Purge cached feeds in $messageMemc
+        * Purge cached feeds in $wanCache
         */
        private function purgeFeeds() {
-               global $wgFeedClasses, $messageMemc;
+               global $wgFeedClasses;
 
                $this->output( "Deleting feed timestamps.\n" );
 
+               $wanCache = MediaWikiServices::getInstance()->getMainWANObjectCache();
                foreach ( $wgFeedClasses as $feed => $className ) {
-                       $messageMemc->delete( wfMemcKey( 'rcfeed', $feed, 'timestamp' ) ); # Good enough for now.
+                       $wanCache->delete( $wanCache->makeKey( 'rcfeed', $feed, 'timestamp' ) ); # Good enough for now.
                }
        }
 }