Last modified: 2014-01-30 22:50:04 UTC
At the watchlist page, clicking "all" (http://ee-flow.wmflabs.org/w/index.php?title=Special:Watchlist&days=0) results in a long error message. Both Klipe and I get the same thing. See http://ee-flow.wmflabs.org/w/index.php?title=Talk:Flow_bugs&workflow=050cd71844f7f00fc8b1fa163e68c4ac for the error message
The WMF core features team tracks this bug on Mingle card https://mingle.corp.wikimedia.org/projects/flow/cards/662, but people from the community are welcome to contribute here and in Gerrit.
Confirmed as still a problem on ee-flow, but not a problem on mediawikiwiki. I will collaborate with spage to triage this, later.
This doesn't happen for other users. Maybe it's some old article in this user's watchlist with data in some incompatible form, it might even be the "Moats" article that can't be viewed (bug 57897). debug.log contains [exception] [69fad112] /w/index.php?title=Special:Watchlist&days=0 Exception from line 160 of /srv/mediawiki/extensions/Flow/includes/Data/ObjectManager.php: Request for '' is not in classmap: Flow\Model\Definition, Definition, Flow\Model\Workflow, Workflow, Flow\Model\PostRevision, PostRevision, Flow\Model\TopicListEntry, TopicListEntry, Flow\Model\Header, Header, BoardHistoryEntry #0 /srv/mediawiki/extensions/Flow/includes/Data/ObjectManager.php(174): Flow\Data\ManagerGroup->getStorage('') #1 /srv/mediawiki/extensions/Flow/includes/Data/ObjectManager.php(184): Flow\Data\ManagerGroup->call('getMulti', Array) #2 /srv/mediawiki/extensions/Flow/includes/Formatter.php(379): Flow\Data\ManagerGroup->getMulti('', Array) #3 /srv/mediawiki/extensions/Flow/includes/Formatter.php(289): Flow\AbstractFormatter->loadRevisions(Array) #4 /srv/mediawiki/extensions/Flow/includes/RecentChanges/Formatter.php(40): Flow\AbstractFormatter->loadRevision(Object(Flow\Model\UUID), NULL) #5 /srv/mediawiki/extensions/Flow/Hooks.php(100): Flow\RecentChanges\Formatter->format(Object(OldChangesList), Object(RecentChange)) #6 [internal function]: FlowHooks::onOldChangesListRecentChangesLine(Object(OldChangesList), '(<a href="/w/in...', Object(RecentChange), Array) #7 /srv/mediawiki/includes/Hooks.php(199): call_user_func_array('FlowHooks::onOl...', Array) #8 /srv/mediawiki/includes/GlobalFunctions.php(4032): Hooks::run('OldChangesListR...', Array) #9 /srv/mediawiki/includes/changes/OldChangesList.php(122): wfRunHooks('OldChangesListR...', Array) #10 /srv/mediawiki/includes/specials/SpecialWatchlist.php(430): OldChangesList->recentChangesLine(Object(RecentChange), '20131108011956', 2039) #11 /srv/mediawiki/includes/specialpage/SpecialPage.php(674): SpecialWatchlist->execute(NULL) #12 /srv/mediawiki/includes/SpecialPageFactory.php(488): SpecialPage->run(NULL) #13 /srv/mediawiki/includes/Wiki.php(298): SpecialPageFactory::executePath(Object(Title), Object(RequestContext)) #14 /srv/mediawiki/includes/Wiki.php(596): MediaWiki->performRequest() #15 /srv/mediawiki/includes/Wiki.php(460): MediaWiki->main() #16 /srv/mediawiki/index.php(49): MediaWiki->run() #17 {main}
Looking closer, its this line: #4 /srv/mediawiki/extensions/Flow/includes/RecentChanges/Formatter.php(40): Flow\AbstractFormatter->loadRevision(Object(Flow\Model\UUID), NULL) That second parameter comes from $changeData['revision_type'] which is somehow null. Two part fix should fail gracefully when the data isnt available, and dig through the data to figure out how that got inserted in the first place.
All of the rc_params.flow-workflow-change has data in this format: Array ( [action] => reply [block] => topic [revision_type] => PostRevision [revision] => 0508d7d5601b34dffb6efa163e68c4ac [workflow] => 0508d7d5600f34dffb6efa163e68c4ac [definition] => 0503ac336376bba2f8a9fa163e68c4ac [post] => 0508d7d5601b34dffb6efa163e68c4ac [topic] => Sooo ) except this one: Array ( [workflow] => 0508d44cae8f34dffb6efa163e68c4ac [definition] => 0503ac33637abba2f8a9fa163e68c4ac [revision] => 0508d44cae9f34dffb6efa163e68c4ac [content] => <p>Use this for substantive comment about Flow. Use <a href="/wiki/Talk:Sandbox" title="Talk:Sandbox">Talk:Sandbox</a> for testing. </p><p>See earlier <a href="... ) I guess this one record is missed by the maintenance script?
I believe this is a data inconsistency issue, we have about 180 flow records in recentchanges table without 'action', 'block', 'revision_type' keys. I suspect that the maintenance script missed some flow type during the conversion and only unset type. All these data were generated before or around the time the patch was merged. Deleting those invalid data should solve the issue: delete from recentchanges where rc_type = '142' and rc_source = 'flow' and rc_params not like '%revision_type%'; Adding graceful failing ensures extra security, :)
Change 110294 had a related patch set uploaded by Bsitu: Watchlist "show all" results in an "Error" page https://gerrit.wikimedia.org/r/110294
Change 110294 merged by jenkins-bot: Watchlist "show all" results in an "Error" page https://gerrit.wikimedia.org/r/110294