Page MenuHomePhabricator

CirrusSearch\Hooks::onTitleMoveComplete throwing exceptions on all moves on MediaWiki.org
Closed, ResolvedPublic

Description

The moves still go through, but the user sees an error page.

2015-10-28 21:37:22 mw1060 mediawikiwiki exception ERROR: [d967336e] /w/index.php?title=Special:MovePage&action=submit   MWException from line 223 of /srv/mediawiki/php-1.27.0-wmf.4/includes/Hooks.php: Detected bug in an extension! Hook CirrusSearch\Hooks::onTitleMoveComplete has invalid call signature; Parameter 3 to CirrusSearch\Hooks::onTitleMoveComplete() expected to be a reference, value given {"exception_id":"d967336e"} 
[Exception MWException] (/srv/mediawiki/php-1.27.0-wmf.4/includes/Hooks.php:223) Detected bug in an extension! Hook CirrusSearch\Hooks::onTitleMoveComplete has invalid call signature; Parameter 3 to CirrusSearch\Hooks::onTitleMoveComplete() expected to be a reference, value given
  #0 /srv/mediawiki/php-1.27.0-wmf.4/includes/MovePage.php(376): Hooks::run(string, array)
  #1 /srv/mediawiki/php-1.27.0-wmf.4/includes/db/Database.php(3310): Closure$MovePage::move()
  #2 /srv/mediawiki/php-1.27.0-wmf.4/includes/db/Database.php(3557): DatabaseBase->runOnTransactionIdleCallbacks()
  #3 /srv/mediawiki/php-1.27.0-wmf.4/includes/db/loadbalancer/LoadBalancer.php(1039): DatabaseBase->commit(string, string)
  #4 /srv/mediawiki/php-1.27.0-wmf.4/includes/db/loadbalancer/LBFactory.php(186): LoadBalancer->commitMasterChanges()
  #5 /srv/mediawiki/php-1.27.0-wmf.4/includes/db/loadbalancer/LBFactoryMulti.php(397): Closure$LBFactory::forEachLBCallMethod(LoadBalancer, string, array)
  #6 /srv/mediawiki/php-1.27.0-wmf.4/includes/db/loadbalancer/LBFactory.php(187): LBFactoryMulti->forEachLB(Closure$LBFactory::forEachLBCallMethod;1384005219, array)
  #7 /srv/mediawiki/php-1.27.0-wmf.4/includes/db/loadbalancer/LBFactory.php(204): LBFactory->forEachLBCallMethod(string)
  #8 /srv/mediawiki/php-1.27.0-wmf.4/includes/MediaWiki.php(501): LBFactory->commitMasterChanges()
  #9 /srv/mediawiki/php-1.27.0-wmf.4/includes/MediaWiki.php(674): MediaWiki->doPreOutputCommit()
  #10 /srv/mediawiki/php-1.27.0-wmf.4/includes/MediaWiki.php(474): MediaWiki->main()
  #11 /srv/mediawiki/php-1.27.0-wmf.4/index.php(41): MediaWiki->run()
  #12 /srv/mediawiki/w/index.php(3): include(string)
  #13 {main}

Original report:


I used Special:EnableFlow to convert https://www.mediawiki.org/wiki/Talk:WMF_Product_Development_Process (which had one edit on it).
The special page gave me this error:

An error occurred.
The error message received was: Detected bug in an extension! Hook CirrusSearch\Hooks::onTitleMoveComplete has invalid call signature; Parameter 3 to CirrusSearch\Hooks::onTitleMoveComplete() expected to be a reference, value given

(screenshot below)
The page was moved correctly, to https://www.mediawiki.org/wiki/Talk:WMF_Product_Development_Process/Archive_1
but the page was not converted to Flow.

4qQse3n.png (845×913 px, 45 KB)

Event Timeline

Quiddity raised the priority of this task from to Unbreak Now!.
Quiddity updated the task description. (Show Details)
Quiddity added subscribers: Quiddity, Trizek-WMF.
Mattflaschen-WMF renamed this task from Error converting a page to Flow - CirrusSearch\Hooks::onTitleMoveComplete to CirrusSearch\Hooks::onTitleMoveComplete throwing exceptions on all moves on MediaWiki.org.Oct 28 2015, 9:39 PM
Mattflaschen-WMF set Security to None.
Mattflaschen-WMF added a subscriber: aaron.

Never mind, I misread that as 5:41 today.

Change 249571 had a related patch set uploaded (by Mattflaschen):
Revert "Remove ampersands from onTitleMoveComplete()"

https://gerrit.wikimedia.org/r/249571

Change 249571 merged by jenkins-bot:
Revert "Remove ampersands from onTitleMoveComplete()"

https://gerrit.wikimedia.org/r/249571

Last of any of these errors (it affected a few extensions) was 2015-10-28T23:19:39.445Z. I can now move mw.org pages without error as of the I0e5f2d deploy.

The root cause is still there and might be some sort of HHVM bug causing one of the reference arguments to be seen as a value.

Quiddity lowered the priority of this task from Unbreak Now! to Needs Triage.Oct 29 2015, 12:04 AM

Page moves (tested by aaron), and Special:EnableFlow (tested by me), are both working fine now, so I'll un-set the priority.