Make MediaWiki::preOutputCommit() handle PRESEND deferred updates with the "run"...
authorAaron Schulz <aschulz@wikimedia.org>
Fri, 24 May 2019 21:05:12 +0000 (14:05 -0700)
committerAaron Schulz <aschulz@wikimedia.org>
Fri, 24 May 2019 21:05:15 +0000 (14:05 -0700)
This means that enqueuable updates (LinksUpdate, LinksDeletionUpdate) will run immediately
at this point rather than be enqueued as jobs. This only affects ApiPurge since the other
callers use either POSTSEND or "false".

Change-Id: I8b6ff6c9a68730374e6d83682e774e4f4bfbf52f

includes/MediaWiki.php

index 69bafaf..624f0f1 100644 (file)
@@ -597,7 +597,7 @@ class MediaWiki {
                wfDebug( __METHOD__ . ': primary transaction round committed' );
 
                // Run updates that need to block the user or affect output (this is the last chance)
-               DeferredUpdates::doUpdates( 'enqueue', DeferredUpdates::PRESEND );
+               DeferredUpdates::doUpdates( 'run', DeferredUpdates::PRESEND );
                wfDebug( __METHOD__ . ': pre-send deferred updates completed' );
                // T214471: persist the session to avoid race conditions on subsequent requests
                $request->getSession()->save();