Page MenuHomeMiraheze

Error when accessing Special:MultiPageEdit
Closed, ResolvedPublic

Description

When accessing this special page, we encounter the following internal error:

[bc794acf05110d786d660361] 2023-02-10 20:16:44: Fatal exception of type "InvalidArgumentException"

Event Timeline

BrandonWM triaged this task as Normal priority.Feb 11 2023, 16:29
BrandonWM added a project: MediaWiki.

SRE:

Wikimedia\Rdbms\Platform\SQLPlatform::makeList: empty input for field page_title
from /srv/mediawiki/w/includes/libs/rdbms/platform/SQLPlatform.php(191)
#0 /srv/mediawiki/w/includes/libs/rdbms/platform/SQLPlatform.php(679): Wikimedia\Rdbms\Platform\SQLPlatform->makeList(array, integer)
#1 /srv/mediawiki/w/includes/libs/rdbms/database/Database.php(3839): Wikimedia\Rdbms\Platform\SQLPlatform->selectSQLText(array, array, array, string, array, array)
#2 /srv/mediawiki/w/includes/libs/rdbms/database/DatabaseMysqlBase.php(1254): Wikimedia\Rdbms\Database->selectSQLText(array, array, array, string, array, array)
#3 /srv/mediawiki/w/includes/libs/rdbms/database/Database.php(1701): Wikimedia\Rdbms\DatabaseMysqlBase->selectSQLText(array, array, array, string, array, array)
#4 /srv/mediawiki/w/includes/libs/rdbms/database/DBConnRef.php(103): Wikimedia\Rdbms\Database->select(array, array, array, string, array, array)
#5 /srv/mediawiki/w/includes/libs/rdbms/database/DBConnRef.php(325): Wikimedia\Rdbms\DBConnRef->__call(string, array)
#6 /srv/mediawiki/w/includes/specialpage/QueryPage.php(540): Wikimedia\Rdbms\DBConnRef->select(array, array, array, string, array, array)
#7 /srv/mediawiki/w/includes/specialpage/QueryPage.php(726): QueryPage->reallyDoQuery(integer, integer)
#8 /srv/mediawiki/w/extensions/PageForms/specials/PF_MultiPageEdit.php(48): QueryPage->execute(NULL)
#9 /srv/mediawiki/w/includes/specialpage/SpecialPage.php(701): PFMultiPageEdit->execute(NULL)
#10 /srv/mediawiki/w/includes/specialpage/SpecialPageFactory.php(1428): SpecialPage->run(NULL)
#11 /srv/mediawiki/w/includes/MediaWiki.php(316): MediaWiki\SpecialPage\SpecialPageFactory->executePath(string, RequestContext)
#12 /srv/mediawiki/w/includes/MediaWiki.php(904): MediaWiki->performRequest()
#13 /srv/mediawiki/w/includes/MediaWiki.php(562): MediaWiki->main()
#14 /srv/mediawiki/w/index.php(50): MediaWiki->run()
#15 /srv/mediawiki/w/index.php(46): wfIndexMain()
#16 {main}
Wikimedia\Rdbms\Platform\SQLPlatform::makeList: empty input for field page_title
from /srv/mediawiki/w/includes/libs/rdbms/platform/SQLPlatform.php(191)
#0 /srv/mediawiki/w/includes/libs/rdbms/platform/SQLPlatform.php(679): Wikimedia\Rdbms\Platform\SQLPlatform->makeList(array, integer)
#1 /srv/mediawiki/w/includes/libs/rdbms/database/Database.php(3842): Wikimedia\Rdbms\Platform\SQLPlatform->selectSQLText(array, array, array, string, array, array)
#2 /srv/mediawiki/w/includes/libs/rdbms/database/DatabaseMysqlBase.php(1254): Wikimedia\Rdbms\Database->selectSQLText(array, array, array, string, array, array)
#3 /srv/mediawiki/w/includes/libs/rdbms/database/Database.php(1704): Wikimedia\Rdbms\DatabaseMysqlBase->selectSQLText(array, array, array, string, array, array)
#4 /srv/mediawiki/w/includes/libs/rdbms/database/DBConnRef.php(103): Wikimedia\Rdbms\Database->select(array, array, array, string, array, array)
#5 /srv/mediawiki/w/includes/libs/rdbms/database/DBConnRef.php(326): Wikimedia\Rdbms\DBConnRef->__call(string, array)
#6 /srv/mediawiki/w/includes/specialpage/QueryPage.php(540): Wikimedia\Rdbms\DBConnRef->select(array, array, array, string, array, array)
#7 /srv/mediawiki/w/includes/specialpage/QueryPage.php(726): QueryPage->reallyDoQuery(integer, integer)
#8 /srv/mediawiki/w/extensions/PageForms/specials/PF_MultiPageEdit.php(48): QueryPage->execute(NULL)
#9 /srv/mediawiki/w/includes/specialpage/SpecialPage.php(701): PFMultiPageEdit->execute(NULL)
#10 /srv/mediawiki/w/includes/specialpage/SpecialPageFactory.php(1428): SpecialPage->run(NULL)
#11 /srv/mediawiki/w/includes/MediaWiki.php(316): MediaWiki\SpecialPage\SpecialPageFactory->executePath(string, RequestContext)
#12 /srv/mediawiki/w/includes/MediaWiki.php(904): MediaWiki->performRequest()
#13 /srv/mediawiki/w/includes/MediaWiki.php(562): MediaWiki->main()
#14 /srv/mediawiki/w/index.php(50): MediaWiki->run()
#15 /srv/mediawiki/w/index.php(46): wfIndexMain()
#16 {main}
Unknown Object (User) removed a project: Universal Omega.Mar 18 2023, 03:39
Herald removed a subscriber: Unknown Object (User). · View Herald TranscriptMar 18 2023, 03:39

Sorry, it does judging by the recently-merged T10605.

The value used for page_title in the query is from the mTemplateInForm variable in the PFMultiPageEdit class, value is passed to the parent class for querying via overriding the getQueryInfo function (https://github.com/wikimedia/mediawiki/blob/REL1_39/includes/specialpage/QueryPage.php#L186).

This variable is set in the findTemplatesForForm function. It seems to be an associative array, where the keys are templates in a form, and the values is the form itself (only the keys are passed to the parent class). For some reason, the keys are not being set, leading to MediaWiki ultimately complaining about empty inputs down the road. I don't yet have a good understanding of this, but I believe this might end up being an upstream thing.

Paladox claimed this task.
Paladox subscribed.