[go: up one dir, main page]

Page MenuHomePhabricator

Flow\SubmissionHandler::commit was called with $blocks set to an empty array or a falsy value.
Closed, ResolvedPublicPRODUCTION ERROR

Description

Error

MediaWiki version: 1.36.0-wmf.20

message
Flow\SubmissionHandler::commit was called with $blocks set to an empty array or a falsy value.  This indicates the blocks are not able to commit, so Flow\SubmissionHandler::commit should not be called.

Impact

Unknown - occurred on four wikis, only on api endpoints.

Notes

Details

Request ID
X9Dt@ApAMMkAAjtaEvoAAAER
Request URL
https://ar.wikipedia.org/w/api.php
Stack Trace
exception.trace
#0 /srv/mediawiki/php-1.36.0-wmf.20/extensions/Flow/includes/WorkflowLoader.php(66): Flow\SubmissionHandler->commit(Flow\Model\Workflow, array)
#1 /srv/mediawiki/php-1.36.0-wmf.20/extensions/GrowthExperiments/includes/HelpPanel/QuestionPoster/QuestionPoster.php(282): Flow\WorkflowLoader->commit(array)
#2 /srv/mediawiki/php-1.36.0-wmf.20/extensions/GrowthExperiments/includes/HelpPanel/QuestionPoster/QuestionPoster.php(184): GrowthExperiments\HelpPanel\QuestionPoster\QuestionPoster->submitStructuredDiscussions()
#3 /srv/mediawiki/php-1.36.0-wmf.20/extensions/GrowthExperiments/includes/Api/ApiHelpPanelPostQuestion.php(74): GrowthExperiments\HelpPanel\QuestionPoster\QuestionPoster->submit()
#4 /srv/mediawiki/php-1.36.0-wmf.20/includes/api/ApiMain.php(1607): GrowthExperiments\Api\ApiHelpPanelPostQuestion->execute()
#5 /srv/mediawiki/php-1.36.0-wmf.20/includes/api/ApiMain.php(587): ApiMain->executeAction()
#6 /srv/mediawiki/php-1.36.0-wmf.20/includes/api/ApiMain.php(558): ApiMain->executeActionWithErrorHandling()
#7 /srv/mediawiki/php-1.36.0-wmf.20/api.php(90): ApiMain->execute()
#8 /srv/mediawiki/php-1.36.0-wmf.20/api.php(45): wfApiMain()
#9 /srv/mediawiki/w/api.php(3): require(string)
#10 {main}

Event Timeline

The Flow WorkflowLoader calls SubmissionHandler, the submission handler will return empty array on errors. Errors can come from permission check or from Block::onSubmit, but there are never reported back.

QuestionPoster could check for empty array to avoid the commit, but not sure if that is a fatal Status or a good Status inside GrowthExperiments.

Change 685871 had a related patch set uploaded (by Umherirrender; author: Umherirrender):

[mediawiki/extensions/GrowthExperiments@master] Handle empty result from WorkflowLoader::handleSubmit

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

This happens when a mentee sends a question to a mentor who has a Flow talk page (or to a Flow-enabled help desk), and saving the question fails for some reason (page is protected, AbuseFilter etc).

Tgr assigned this task to Umherirrender.

Thanks for the fix!

Change 685871 merged by jenkins-bot:

[mediawiki/extensions/GrowthExperiments@master] Fix error handling around WorkflowLoader::handleSubmit

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