Page MenuHomePhabricator

Wikimedia\Assert\InvariantException: Invariant failed: Expected an element
Closed, ResolvedPublicPRODUCTION ERROR

Description

Error
normalized_message
[{reqId}] {exception_url}   Wikimedia\Assert\InvariantException: Invariant failed: Expected an element
exception.trace
from /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/assert/src/Assert.php(231)
#0 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Utils/DOMUtils.php(136): Wikimedia\Assert\Assert::invariant(boolean, string)
#1 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Wt2Html/PP/Handlers/UnpackDOMFragments.php(177): Wikimedia\Parsoid\Utils\DOMUtils::assertElt(Wikimedia\Parsoid\DOM\Text)
#2 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Wt2Html/DOMPostProcessor.php(331): Wikimedia\Parsoid\Wt2Html\PP\Handlers\UnpackDOMFragments::handler(Wikimedia\Parsoid\DOM\Element, Wikimedia\Parsoid\Config\Env)
#3 [internal function]: Wikimedia\Parsoid\Wt2Html\DOMPostProcessor::Wikimedia\Parsoid\Wt2Html\{closure}(Wikimedia\Parsoid\DOM\Element, Wikimedia\Parsoid\Utils\DTState)
#4 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Utils/DOMTraverser.php(111): call_user_func(Closure, Wikimedia\Parsoid\DOM\Element, Wikimedia\Parsoid\Utils\DTState)
#5 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Utils/DOMTraverser.php(189): Wikimedia\Parsoid\Utils\DOMTraverser->callHandlers(Wikimedia\Parsoid\DOM\Element, Wikimedia\Parsoid\Ext\ParsoidExtensionAPI, Wikimedia\Parsoid\Utils\DTState)
#6 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Utils/DOMTraverser.php(204): Wikimedia\Parsoid\Utils\DOMTraverser->traverseInternal(boolean, Wikimedia\Parsoid\Ext\ParsoidExtensionAPI, Wikimedia\Parsoid\DOM\Element, Wikimedia\Parsoid\Utils\DTState)
#7 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Utils/DOMTraverser.php(204): Wikimedia\Parsoid\Utils\DOMTraverser->traverseInternal(boolean, Wikimedia\Parsoid\Ext\ParsoidExtensionAPI, Wikimedia\Parsoid\DOM\Element, Wikimedia\Parsoid\Utils\DTState)
#8 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Utils/DOMTraverser.php(204): Wikimedia\Parsoid\Utils\DOMTraverser->traverseInternal(boolean, Wikimedia\Parsoid\Ext\ParsoidExtensionAPI, Wikimedia\Parsoid\DOM\Element, Wikimedia\Parsoid\Utils\DTState)
#9 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Utils/DOMTraverser.php(204): Wikimedia\Parsoid\Utils\DOMTraverser->traverseInternal(boolean, Wikimedia\Parsoid\Ext\ParsoidExtensionAPI, Wikimedia\Parsoid\DOM\Element, Wikimedia\Parsoid\Utils\DTState)
#10 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Utils/DOMTraverser.php(204): Wikimedia\Parsoid\Utils\DOMTraverser->traverseInternal(boolean, Wikimedia\Parsoid\Ext\ParsoidExtensionAPI, Wikimedia\Parsoid\DOM\Element, Wikimedia\Parsoid\Utils\DTState)
#11 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Utils/DOMTraverser.php(204): Wikimedia\Parsoid\Utils\DOMTraverser->traverseInternal(boolean, Wikimedia\Parsoid\Ext\ParsoidExtensionAPI, Wikimedia\Parsoid\DOM\Element, Wikimedia\Parsoid\Utils\DTState)
#12 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Utils/DOMTraverser.php(145): Wikimedia\Parsoid\Utils\DOMTraverser->traverseInternal(boolean, Wikimedia\Parsoid\Ext\ParsoidExtensionAPI, Wikimedia\Parsoid\DOM\Element, Wikimedia\Parsoid\Utils\DTState)
#13 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Wt2Html/DOMPPTraverser.php(39): Wikimedia\Parsoid\Utils\DOMTraverser->traverse(Wikimedia\Parsoid\Ext\ParsoidExtensionAPI, Wikimedia\Parsoid\DOM\Element, Wikimedia\Parsoid\Utils\DTState)
#14 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Wt2Html/DOMPostProcessor.php(131): Wikimedia\Parsoid\Wt2Html\DOMPPTraverser->run(Wikimedia\Parsoid\Config\Env, Wikimedia\Parsoid\DOM\Element, array, boolean)
#15 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Wt2Html/DOMPostProcessor.php(908): Wikimedia\Parsoid\Wt2Html\DOMPostProcessor->Wikimedia\Parsoid\Wt2Html\{closure}(Wikimedia\Parsoid\DOM\Element, array, boolean)
#16 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Wt2Html/DOMPostProcessor.php(949): Wikimedia\Parsoid\Wt2Html\DOMPostProcessor->doPostProcess(Wikimedia\Parsoid\DOM\Element)
#17 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Wt2Html/DOMPostProcessor.php(967): Wikimedia\Parsoid\Wt2Html\DOMPostProcessor->process(Wikimedia\Parsoid\DOM\Element)
#18 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Wt2Html/ParserPipeline.php(170): Wikimedia\Parsoid\Wt2Html\DOMPostProcessor->processChunkily(string, array)
#19 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Wt2Html/ParserPipelineFactory.php(279): Wikimedia\Parsoid\Wt2Html\ParserPipeline->parseChunkily(string, array)
#20 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Wikitext/ContentModelHandler.php(161): Wikimedia\Parsoid\Wt2Html\ParserPipelineFactory->parse(string)
#21 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Parsoid.php(191): Wikimedia\Parsoid\Wikitext\ContentModelHandler->toDOM(Wikimedia\Parsoid\Ext\ParsoidExtensionAPI)
#22 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/src/Parsoid.php(232): Wikimedia\Parsoid\Parsoid->parseWikitext(MediaWiki\Parser\Parsoid\Config\PageConfig, MediaWiki\Parser\ParserOutput, array)
#23 /srv/mediawiki/php-1.42.0-wmf.16/includes/parser/Parsoid/ParsoidParser.php(152): Wikimedia\Parsoid\Parsoid->wikitext2html(MediaWiki\Parser\Parsoid\Config\PageConfig, array, NULL, MediaWiki\Parser\ParserOutput)
#24 /srv/mediawiki/php-1.42.0-wmf.16/includes/parser/Parsoid/ParsoidParser.php(260): MediaWiki\Parser\Parsoid\ParsoidParser->genParserOutput(MediaWiki\Parser\Parsoid\Config\PageConfig, ParserOptions)
#25 /srv/mediawiki/php-1.42.0-wmf.16/includes/content/WikitextContentHandler.php(397): MediaWiki\Parser\Parsoid\ParsoidParser->parse(string, MediaWiki\Title\Title, ParserOptions, boolean, boolean, integer)
#26 /srv/mediawiki/php-1.42.0-wmf.16/includes/content/ContentHandler.php(1656): WikitextContentHandler->fillParserOutput(WikitextContent, MediaWiki\Content\Renderer\ContentParseParams, MediaWiki\Parser\ParserOutput)
#27 /srv/mediawiki/php-1.42.0-wmf.16/includes/content/Renderer/ContentRenderer.php(47): ContentHandler->getParserOutput(WikitextContent, MediaWiki\Content\Renderer\ContentParseParams)
#28 /srv/mediawiki/php-1.42.0-wmf.16/includes/Revision/RenderedRevision.php(260): MediaWiki\Content\Renderer\ContentRenderer->getParserOutput(WikitextContent, MediaWiki\Title\Title, integer, ParserOptions, boolean)
#29 /srv/mediawiki/php-1.42.0-wmf.16/includes/Revision/RenderedRevision.php(232): MediaWiki\Revision\RenderedRevision->getSlotParserOutputUncached(WikitextContent, boolean)
#30 /srv/mediawiki/php-1.42.0-wmf.16/includes/Revision/RevisionRenderer.php(226): MediaWiki\Revision\RenderedRevision->getSlotParserOutput(string, array)
#31 /srv/mediawiki/php-1.42.0-wmf.16/includes/Revision/RevisionRenderer.php(164): MediaWiki\Revision\RevisionRenderer->combineSlotOutput(MediaWiki\Revision\RenderedRevision, ParserOptions, array)
#32 [internal function]: MediaWiki\Revision\RevisionRenderer->MediaWiki\Revision\{closure}(MediaWiki\Revision\RenderedRevision, array)
#33 /srv/mediawiki/php-1.42.0-wmf.16/includes/Revision/RenderedRevision.php(199): call_user_func(Closure, MediaWiki\Revision\RenderedRevision, array)
#34 /srv/mediawiki/php-1.42.0-wmf.16/includes/poolcounter/PoolWorkArticleView.php(87): MediaWiki\Revision\RenderedRevision->getRevisionParserOutput()
#35 /srv/mediawiki/php-1.42.0-wmf.16/includes/poolcounter/PoolWorkArticleViewCurrent.php(110): MediaWiki\PoolCounter\PoolWorkArticleView->renderRevision()
#36 /srv/mediawiki/php-1.42.0-wmf.16/includes/poolcounter/PoolCounterWork.php(172): MediaWiki\PoolCounter\PoolWorkArticleViewCurrent->doWork()
#37 /srv/mediawiki/php-1.42.0-wmf.16/includes/page/ParserOutputAccess.php(307): MediaWiki\PoolCounter\PoolCounterWork->execute()
#38 /srv/mediawiki/php-1.42.0-wmf.16/includes/parser/Parsoid/ParsoidOutputAccess.php(197): MediaWiki\Page\ParserOutputAccess->getParserOutput(MediaWiki\Page\PageStoreRecord, ParserOptions, MediaWiki\Revision\RevisionStoreRecord, integer)
#39 /srv/mediawiki/php-1.42.0-wmf.16/includes/Rest/Handler/Helper/HtmlOutputRendererHelper.php(757): MediaWiki\Parser\Parsoid\ParsoidOutputAccess->getParserOutput(MediaWiki\Page\PageStoreRecord, ParserOptions, MediaWiki\Revision\RevisionStoreRecord, integer, boolean)
#40 /srv/mediawiki/php-1.42.0-wmf.16/includes/Rest/Handler/Helper/HtmlOutputRendererHelper.php(565): MediaWiki\Rest\Handler\Helper\HtmlOutputRendererHelper->getParserOutputInternal(ParserOptions)
#41 /srv/mediawiki/php-1.42.0-wmf.16/includes/Rest/Handler/Helper/HtmlOutputRendererHelper.php(661): MediaWiki\Rest\Handler\Helper\HtmlOutputRendererHelper->getParserOutput()
#42 /srv/mediawiki/php-1.42.0-wmf.16/includes/Rest/Handler/ParsoidHandler.php(743): MediaWiki\Rest\Handler\Helper\HtmlOutputRendererHelper->getPageBundle()
#43 /srv/mediawiki/php-1.42.0-wmf.16/vendor/wikimedia/parsoid/extension/src/Rest/Handler/PageHandler.php(92): MediaWiki\Rest\Handler\ParsoidHandler->wt2html(MediaWiki\Parser\Parsoid\Config\PageConfig, array)
#44 /srv/mediawiki/php-1.42.0-wmf.16/includes/Rest/Router.php(561): MWParsoid\Rest\Handler\PageHandler->execute()
#45 /srv/mediawiki/php-1.42.0-wmf.16/includes/Rest/Router.php(452): MediaWiki\Rest\Router->executeHandler(MWParsoid\Rest\Handler\PageHandler)
#46 /srv/mediawiki/php-1.42.0-wmf.16/includes/Rest/EntryPoint.php(195): MediaWiki\Rest\Router->execute(MediaWiki\Rest\RequestFromGlobals)
#47 /srv/mediawiki/php-1.42.0-wmf.16/includes/Rest/EntryPoint.php(135): MediaWiki\Rest\EntryPoint->execute()
#48 /srv/mediawiki/php-1.42.0-wmf.16/rest.php(31): MediaWiki\Rest\EntryPoint::main()
#49 /srv/mediawiki/w/rest.php(3): require(string)
#50 {main}
Notes

Haven't bisected yet but presumably from https://gerrit.wikimedia.org/r/c/mediawiki/services/parsoid/+/992542

Details

Request URL
https://en.wikipedia.org/w/rest.php/en.wikipedia.org/v3/page/pagebundle/Wikipedia%3ADashboard%2FPending_changes/1071510488

Event Timeline

Arlolra moved this task from Backlog to In Progress on the Content-Transform-Team-WIP board.
Arlolra moved this task from Needs Triage to Bugs & Crashers on the Parsoid board.
Arlolra triaged this task as Medium priority.Feb 5 2024, 11:04 PM

Change 997610 had a related patch set uploaded (by Arlolra; author: Arlolra):

[mediawiki/services/parsoid@master] [WIP] Span wrap special page content

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

Change 997610 merged by jenkins-bot:

[mediawiki/services/parsoid@master] Only set DSR on special page transclusion if it's first encap

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

Change 1002593 had a related patch set uploaded (by Jgiannelos; author: Jgiannelos):

[mediawiki/vendor@master] Bump wikimedia/parsoid to 0.19.0-a17

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

Change 1002593 merged by jenkins-bot:

[mediawiki/vendor@master] Bump wikimedia/parsoid to 0.19.0-a17

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

Post-deploy, there are instances of this error on 1.42.0-wmf.18