Page MenuHomePhabricator

ApiUsageException “unrecognized value for parameter "action"” in fatalmonitor
Closed, ResolvedPublic

Description

There are a lot of instances of the following error in the Logstash Fatal Monitor:

Unrecognized value for parameter "action": wbgetitems.
#0 /srv/mediawiki/php-1.32.0-wmf.5/includes/api/ApiBase.php(1973): ApiUsageException::newWithMessage(ApiMain, array, string, NULL, NULL)
#1 /srv/mediawiki/php-1.32.0-wmf.5/includes/api/ApiBase.php(1544): ApiBase->dieWithError(array, string)
#2 /srv/mediawiki/php-1.32.0-wmf.5/includes/api/ApiBase.php(1261): ApiBase->parseMultiValue(string, string, boolean, array, NULL, integer, integer)
#3 /srv/mediawiki/php-1.32.0-wmf.5/includes/api/ApiBase.php(783): ApiBase->getParameterFromSettings(string, array, boolean)
#4 /srv/mediawiki/php-1.32.0-wmf.5/includes/api/ApiBase.php(855): ApiBase->extractRequestParams(boolean)
#5 /srv/mediawiki/php-1.32.0-wmf.5/includes/api/ApiMain.php(676): ApiBase->getParameter(string)
#6 /srv/mediawiki/php-1.32.0-wmf.5/includes/api/ApiMain.php(516): ApiMain->handleCORS()
#7 /srv/mediawiki/php-1.32.0-wmf.5/includes/api/ApiMain.php(506): ApiMain->executeActionWithErrorHandling()
#8 /srv/mediawiki/php-1.32.0-wmf.5/api.php(83): ApiMain->execute()
#9 /srv/mediawiki/w/api.php(3): include(string)
#10 {main}

This looks like a perfectly innocuous user error (the API action is actually called wbgetentities), so it probably shouldn’t clutter the fatalmonitor dashboard.

(This isn’t specific to this API action, by the way – there are also less frequent log errors for a “history” action.)

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald TranscriptMay 28 2018, 3:00 PM

Regression introduced in rMW78d1b8ebba6e: API: Introduce "templated parameters", ApiBase::getParameter() should only throw if the one parameter being fetched is invalid.

Change 435937 had a related patch set uploaded (by Anomie; owner: Anomie):
[mediawiki/core@master] API: ApiBase::getParameter() shouldn't throw on other params' errors

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

Anomie claimed this task.May 28 2018, 10:48 PM
Anomie moved this task from In Dev to Needs Review on the MediaWiki-API board.

Change 435937 merged by jenkins-bot:
[mediawiki/core@master] API: ApiBase::getParameter() shouldn't throw on other params' errors

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

Anomie moved this task from Needs Review to Done on the MediaWiki-API board.May 29 2018, 7:07 PM

The fix should be deployed with 1.32.0-wmf.6. I'd close the task, but I don't know if Wikimedia-production-error would rather it be kept open until the log errors actually go away.

Anomie closed this task as Resolved.Jun 4 2018, 8:26 PM

Looks like the flood did indeed go away with 1.32.0-wmf.6.

Vvjjkkii renamed this task from ApiUsageException “unrecognized value for parameter "action"” in fatalmonitor to 24baaaaaaa.Jul 1 2018, 1:07 AM
Vvjjkkii reopened this task as Open.
Vvjjkkii removed Anomie as the assignee of this task.
Vvjjkkii triaged this task as High priority.
Vvjjkkii updated the task description. (Show Details)
Vvjjkkii removed subscribers: gerritbot, Aklapper.
CommunityTechBot renamed this task from 24baaaaaaa to ApiUsageException “unrecognized value for parameter "action"” in fatalmonitor.Jul 2 2018, 3:32 PM
CommunityTechBot closed this task as Resolved.
CommunityTechBot assigned this task to Anomie.
CommunityTechBot raised the priority of this task from High to Needs Triage.
CommunityTechBot updated the task description. (Show Details)
CommunityTechBot added subscribers: gerritbot, Aklapper.