Page MenuHomePhabricator

UnexpectedValueException: Invalid version string ""
Closed, ResolvedPublicPRODUCTION ERROR

Description

Error
normalized_message
[{reqId}] {exception_url}   UnexpectedValueException: Invalid version string ""
exception.trace
from /srv/mediawiki/php-1.40.0-wmf.14/vendor/composer/semver/src/VersionParser.php(186)
#0 /srv/mediawiki/php-1.40.0-wmf.14/vendor/composer/semver/src/Semver.php(39): Composer\Semver\VersionParser->normalize(string)
#1 /srv/mediawiki/php-1.40.0-wmf.14/vendor/wikimedia/parsoid/src/Core/PageBundle.php(110): Composer\Semver\Semver::satisfies(NULL, string)
#2 /srv/mediawiki/php-1.40.0-wmf.14/includes/Rest/Handler/ParsoidHandler.php(875): Wikimedia\Parsoid\Core\PageBundle->responseData()
#3 /srv/mediawiki/php-1.40.0-wmf.14/vendor/wikimedia/parsoid/extension/src/Rest/Handler/PageHandler.php(92): MediaWiki\Rest\Handler\ParsoidHandler->wt2html(MediaWiki\Parser\Parsoid\Config\PageConfig, array)
#4 /srv/mediawiki/php-1.40.0-wmf.14/includes/Rest/Router.php(487): MWParsoid\Rest\Handler\PageHandler->execute()
#5 /srv/mediawiki/php-1.40.0-wmf.14/includes/Rest/Router.php(406): MediaWiki\Rest\Router->executeHandler(MWParsoid\Rest\Handler\PageHandler)
#6 /srv/mediawiki/php-1.40.0-wmf.14/includes/Rest/EntryPoint.php(191): MediaWiki\Rest\Router->execute(MediaWiki\Rest\RequestFromGlobals)
#7 /srv/mediawiki/php-1.40.0-wmf.14/includes/Rest/EntryPoint.php(131): MediaWiki\Rest\EntryPoint->execute()
#8 /srv/mediawiki/php-1.40.0-wmf.14/rest.php(31): MediaWiki\Rest\EntryPoint::main()
#9 /srv/mediawiki/w/rest.php(3): require(string)
#10 {main}
Impact

I have no idea!

Notes

I somehow missed the error yesterday. It started happening with 1.40.0-wmf.14 deployment:

mediawiki_errors.png (207×668 px, 12 KB)

Wikimedia\Parsoid\Core\PageBundle->responseData() somehow invokes Composer semantic versioning system and bails out due to an empty version being given.

That is limited to rest queries asking for pagebundle and only occurs on parseXXXX hosts.

Details

Request URL
https://www.mediawiki.org/w/rest.php/www.mediawiki.org/v3/page/pagebundle/Module%3AExtensionJson/5658591

Event Timeline

hashar triaged this task as Unbreak Now! priority.Dec 14 2022, 9:25 AM
hashar created this task.

This happens when RESTbase asks parsoid for pagebundle output of a page that isn't wikitext. Which is nonsensical and should result in a 400 or 404 or 406 or whatever. But if we did that, we'd have to fix RESTbase to not try and get parsoid renderings of stuff that parsoid can't render...

This seems conceptually related to T324711. Maybe it was caused by our fix for that, https://gerrit.wikimedia.org/r/c/mediawiki/core/+/866250. Or it needs a similar fix.

The requests in question wouldn't have produced sensible output, so the failure shouldn't have user impact.

Should have a fix ready in about 30 minutes

Change 868066 had a related patch set uploaded (by D3r1ck01; author: Derick Alangi):

[mediawiki/core@master] Parsoid: Default parsoid version to "0.0.0" for unsupported models

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

Change 868066 merged by jenkins-bot:

[mediawiki/core@master] Parsoid: Default parsoid version to "0.0.0" for unsupported models

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

Change 868048 had a related patch set uploaded (by Ladsgroup; author: Derick Alangi):

[mediawiki/core@wmf/1.40.0-wmf.14] Parsoid: Default parsoid version to "0.0.0" for unsupported models

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

Change 868048 merged by jenkins-bot:

[mediawiki/core@wmf/1.40.0-wmf.14] Parsoid: Default parsoid version to "0.0.0" for unsupported models

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

Mentioned in SAL (#wikimedia-operations) [2022-12-14T14:11:52Z] <ladsgroup@deploy1002> Started scap: Backport for [[gerrit:868048|Parsoid: Default parsoid version to "0.0.0" for unsupported models (T325137)]]

Mentioned in SAL (#wikimedia-operations) [2022-12-14T14:13:44Z] <ladsgroup@deploy1002> ladsgroup and ladsgroup: Backport for [[gerrit:868048|Parsoid: Default parsoid version to "0.0.0" for unsupported models (T325137)]] synced to the testservers: mwdebug2001.codfw.wmnet, mwdebug1002.eqiad.wmnet, mwdebug2002.codfw.wmnet, mwdebug1001.eqiad.wmnet

Mentioned in SAL (#wikimedia-operations) [2022-12-14T14:20:04Z] <ladsgroup@deploy1002> Finished scap: Backport for [[gerrit:868048|Parsoid: Default parsoid version to "0.0.0" for unsupported models (T325137)]] (duration: 08m 12s)

hashar assigned this task to xSavitar.
hashar added a subscriber: xSavitar.

Thank you @xSavitar @daniel and @Ladsgroup . The errors are gone after the fixes have been deployed.