Page MenuHomePhabricator

RevisionAccessException: Not an available content version (from ParsoidHandler.php)
Closed, ResolvedPublicPRODUCTION ERROR

Description

Error

MediaWiki version: 1.36.0-wmf.6

message
Not an available content version.

Impact

Seeing 65 of these in the last 4 hours

Notes

Details

Request ID
d865d634-36e5-4fe4-a1a2-a7e561301524
Request URL
https://zh.wikipedia.org/w/rest.php/zh.wikipedia.org/v3/transform/pagebundle/to/pagebundle/xxxxxx
Stack Trace
exception.trace
#0 /srv/mediawiki/php-1.36.0-wmf.6/vendor/wikimedia/parsoid/extension/src/Rest/Handler/ParsoidHandler.php(364): MWParsoid\Config\PageConfigFactory->create(Title, User, NULL, NULL, string, array)
#1 /srv/mediawiki/php-1.36.0-wmf.6/vendor/wikimedia/parsoid/extension/src/Rest/Handler/ParsoidHandler.php(892): MWParsoid\Rest\Handler\ParsoidHandler->createPageConfig(Title, NULL, NULL, string)
#2 /srv/mediawiki/php-1.36.0-wmf.6/vendor/wikimedia/parsoid/extension/src/Rest/Handler/TransformHandler.php(148): MWParsoid\Rest\Handler\ParsoidHandler->pb2pb(array)
#3 /srv/mediawiki/php-1.36.0-wmf.6/includes/Rest/Router.php(365): MWParsoid\Rest\Handler\TransformHandler->execute()
#4 /srv/mediawiki/php-1.36.0-wmf.6/includes/Rest/Router.php(320): MediaWiki\Rest\Router->executeHandler(MWParsoid\Rest\Handler\TransformHandler)
#5 /srv/mediawiki/php-1.36.0-wmf.6/includes/Rest/EntryPoint.php(144): MediaWiki\Rest\Router->execute(MediaWiki\Rest\RequestFromGlobals)
#6 /srv/mediawiki/php-1.36.0-wmf.6/includes/Rest/EntryPoint.php(110): MediaWiki\Rest\EntryPoint->execute()
#7 /srv/mediawiki/php-1.36.0-wmf.6/rest.php(31): MediaWiki\Rest\EntryPoint::main()
#8 /srv/mediawiki/w/rest.php(3): require(string)
#9 {main}

Event Timeline

ssastry subscribed.

Very likely a deleted / suppression revision. Nothing to do.

daniel reopened this task as Open.EditedSep 16 2020, 6:42 PM

Reopening.

While it's correct to fail on a deleted / suppression revision, that should not be a fatal error. This kind of event should not go to the error log since it's expected behavior. The REST endpoint should probably return a 404.

Krinkle renamed this task from RevisionAccessException: Not an available content version. to RevisionAccessException: Not an available content version (from ParsoidHandler.php).Sep 16 2020, 6:42 PM
Krinkle subscribed.

Very likely a deleted / suppression revision. Nothing to do.

Seems like this would justify a similar mitigation as the other task: To emit a user error (HTTP 4x) rather than crashing the process which alerts service health monitoring and error triaging :)

[mediawiki/services/parsoid@master] html2wt: Catch RevisionAccessException & return HTTP 404 instead
https://gerrit.wikimedia.org/r/626724

For simplicity, since I filed patches against the other phab task, I'm going to merge this as a duplicate of T262454

Or, actally as @Arlolra rightly noted, this is pb2pb, not html2wt. So, I'll just tag that patch with this bug number.

Change 627370 had a related patch set uploaded (by Subramanya Sastry; owner: Subramanya Sastry):
[mediawiki/services/parsoid@master] Handle exceptional conditions in pb2pb endpoint pageconfig creation

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

Change 627370 merged by jenkins-bot:
[mediawiki/services/parsoid@master] Handle exceptional conditions in pb2pb endpoint pageconfig creation

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

Will ride the train next week.

Change 628944 had a related patch set uploaded (by Subramanya Sastry; owner: Subramanya Sastry):
[mediawiki/vendor@master] Bump wikimedia/parsoid to 0.13.0-a10

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

Change 628944 merged by jenkins-bot:
[mediawiki/vendor@master] Bump wikimedia/parsoid to 0.13.0-a10

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