Page MenuHomePhabricator

WMFTimeoutException when viewing/parsing article on zh.wikipedia.org
Closed, ResolvedPublicPRODUCTION ERROR

Description

Happens when you only open an article.

Details

Request URL
https://zh.wikipedia.org/wiki/%E9%98%BF%E8%AE%B7%E8%A5%BF?uselang=en
Stack Trace

2019-11-07 00:24:16 [XcNj8wpAADkAAIzpab8AAAAC] mw1262 zhwiki 1.35.0-wmf.4 exception ERROR: [XcNj8wpAADkAAIzpab8AAAAC] /wiki/%E9%98%BF%E8%AE%B7%E8%A5%BF?uselang=en WMFTimeoutException from line 39 of /srv/mediawiki/wmf-config/set-time-limit.php: the execution time limit of 60 seconds was exceeded {"exception_id":"XcNj8wpAADkAAIzpab8AAAAC","exception_url":"/wiki/%E9%98%BF%E8%AE%B7%E8%A5%BF?uselang=en","caught_by":"mwe_handler"}
[Exception WMFTimeoutException] (/srv/mediawiki/wmf-config/set-time-limit.php:39) the execution time limit of 60 seconds was exceeded

#0 /srv/mediawiki/php-1.35.0-wmf.4/extensions/ParserFunctions/includes/ParserFunctions.php(223): {closure}(integer)
#1 /srv/mediawiki/php-1.35.0-wmf.4/includes/parser/Parser.php(3669): MediaWiki\Extensions\ParserFunctions\ParserFunctions::switch(Parser, PPTemplateFrame_Hash, array)
#2 /srv/mediawiki/php-1.35.0-wmf.4/includes/parser/Parser.php(3374): Parser->callParserFunction(PPTemplateFrame_Hash, string, array)
#3 /srv/mediawiki/php-1.35.0-wmf.4/includes/parser/PPFrame_Hash.php(253): Parser->braceSubstitution(array, PPTemplateFrame_Hash)
#4 /srv/mediawiki/php-1.35.0-wmf.4/includes/parser/Parser.php(3550): PPFrame_Hash->expand(PPNode_Hash_Tree)
#5 /srv/mediawiki/php-1.35.0-wmf.4/includes/parser/PPFrame_Hash.php(253): Parser->braceSubstitution(array, PPFrame_Hash)
#6 /srv/mediawiki/php-1.35.0-wmf.4/includes/parser/Parser.php(3188): PPFrame_Hash->expand(PPNode_Hash_Tree, integer)
#7 /srv/mediawiki/php-1.35.0-wmf.4/includes/parser/Parser.php(1501): Parser->replaceVariables(string)
#8 /srv/mediawiki/php-1.35.0-wmf.4/includes/parser/Parser.php(591): Parser->internalParse(string)
#9 /srv/mediawiki/php-1.35.0-wmf.4/includes/content/WikitextContent.php(368): Parser->parse(string, Title, ParserOptions, boolean, boolean, integer)
#10 /srv/mediawiki/php-1.35.0-wmf.4/includes/content/AbstractContent.php(555): WikitextContent->fillParserOutput(Title, integer, ParserOptions, boolean, ParserOutput)
#11 /srv/mediawiki/php-1.35.0-wmf.4/includes/Revision/RenderedRevision.php(267): AbstractContent->getParserOutput(Title, integer, ParserOptions, boolean)
#12 /srv/mediawiki/php-1.35.0-wmf.4/includes/Revision/RenderedRevision.php(236): MediaWiki\Revision\RenderedRevision->getSlotParserOutputUncached(WikitextContent, boolean)
#13 /srv/mediawiki/php-1.35.0-wmf.4/includes/Revision/RevisionRenderer.php(215): MediaWiki\Revision\RenderedRevision->getSlotParserOutput(string)
#14 /srv/mediawiki/php-1.35.0-wmf.4/includes/Revision/RevisionRenderer.php(152): MediaWiki\Revision\RevisionRenderer->combineSlotOutput(MediaWiki\Revision\RenderedRevision, array)
#15 [internal function]: MediaWiki\Revision\RevisionRenderer->MediaWiki\Revision\{closure}(MediaWiki\Revision\RenderedRevision, array)
#16 /srv/mediawiki/php-1.35.0-wmf.4/includes/Revision/RenderedRevision.php(198): call_user_func(Closure, MediaWiki\Revision\RenderedRevision, array)
#17 /srv/mediawiki/php-1.35.0-wmf.4/includes/poolcounter/PoolWorkArticleView.php(196): MediaWiki\Revision\RenderedRevision->getRevisionParserOutput()
#18 /srv/mediawiki/php-1.35.0-wmf.4/includes/poolcounter/PoolCounterWork.php(125): PoolWorkArticleView->doWork()
#19 /srv/mediawiki/php-1.35.0-wmf.4/includes/page/Article.php(791): PoolCounterWork->execute()
#20 /srv/mediawiki/php-1.35.0-wmf.4/includes/actions/ViewAction.php(63): Article->view()
#21 /srv/mediawiki/php-1.35.0-wmf.4/includes/MediaWiki.php(514): ViewAction->show()
#22 /srv/mediawiki/php-1.35.0-wmf.4/includes/MediaWiki.php(304): MediaWiki->performAction(Article, Title)
#23 /srv/mediawiki/php-1.35.0-wmf.4/includes/MediaWiki.php(967): MediaWiki->performRequest()
#24 /srv/mediawiki/php-1.35.0-wmf.4/includes/MediaWiki.php(530): MediaWiki->main()
#25 /srv/mediawiki/php-1.35.0-wmf.4/index.php(44): MediaWiki->run()
#26 /srv/mediawiki/w/index.php(3): require(string)
#27 {main}

Event Timeline

Krinkle renamed this task from WMFTimeoutException when viewing article on zhwiki to WMFTimeoutException when viewing/parsing article on zh.wikipedia.org.Nov 7 2019, 9:53 PM
Krinkle moved this task from Untriaged to Nov2019/1.35.wmf.5+ on the Wikimedia-production-error board.
Luke081515 changed the subtype of this task from "Task" to "Production Error".Nov 9 2019, 4:11 PM
Luke081515 set Request URL to https://zh.wikipedia.org/wiki/%E9%98%BF%E8%AE%B7%E8%A5%BF?uselang=en.
Luke081515 updated the task description. (Show Details)
Luke081515 edited Stack Trace. (Show Details)

I have this also on https://de.wikipedia.org/wiki/Liste_der_Landkreise_in_Deutschland:

Trace:

[XcbiXQpAIC4AAIOME@cAAABX] /wiki/Liste_der_Landkreise_in_Deutschland   WMFTimeoutException from line 39 of /srv/mediawiki/wmf-config/set-time-limit.php: the execution time limit of 60 seconds was exceeded
#0 /srv/mediawiki/php-1.35.0-wmf.5/extensions/ParserFunctions/includes/ParserFunctions.php(223): {closure}(integer)
#1 /srv/mediawiki/php-1.35.0-wmf.5/includes/parser/Parser.php(3566): MediaWiki\Extensions\ParserFunctions\ParserFunctions::switch(Parser, PPTemplateFrame_Hash, array)
#2 /srv/mediawiki/php-1.35.0-wmf.5/includes/parser/Parser.php(3270): Parser->callParserFunction(PPTemplateFrame_Hash, string, array)
#3 /srv/mediawiki/php-1.35.0-wmf.5/includes/parser/PPFrame_Hash.php(253): Parser->braceSubstitution(array, PPTemplateFrame_Hash)
#4 /srv/mediawiki/php-1.35.0-wmf.5/extensions/ParserFunctions/includes/ParserFunctions.php(123): PPFrame_Hash->expand(PPNode_Hash_Tree)
#5 /srv/mediawiki/php-1.35.0-wmf.5/includes/parser/Parser.php(3566): MediaWiki\Extensions\ParserFunctions\ParserFunctions::if(Parser, PPTemplateFrame_Hash, array)
#6 /srv/mediawiki/php-1.35.0-wmf.5/includes/parser/Parser.php(3270): Parser->callParserFunction(PPTemplateFrame_Hash, string, array)
#7 /srv/mediawiki/php-1.35.0-wmf.5/includes/parser/PPFrame_Hash.php(253): Parser->braceSubstitution(array, PPTemplateFrame_Hash)
#8 /srv/mediawiki/php-1.35.0-wmf.5/includes/parser/Parser.php(3448): PPFrame_Hash->expand(PPNode_Hash_Tree)
#9 /srv/mediawiki/php-1.35.0-wmf.5/includes/parser/PPFrame_Hash.php(253): Parser->braceSubstitution(array, PPTemplateFrame_Hash)
#10 /srv/mediawiki/php-1.35.0-wmf.5/includes/parser/Parser.php(3448): PPFrame_Hash->expand(PPNode_Hash_Tree)
#11 /srv/mediawiki/php-1.35.0-wmf.5/includes/parser/PPFrame_Hash.php(253): Parser->braceSubstitution(array, PPFrame_Hash)
#12 /srv/mediawiki/php-1.35.0-wmf.5/includes/parser/Parser.php(3112): PPFrame_Hash->expand(PPNode_Hash_Tree, integer)
#13 /srv/mediawiki/php-1.35.0-wmf.5/includes/parser/Parser.php(1477): Parser->replaceVariables(string)
#14 /srv/mediawiki/php-1.35.0-wmf.5/includes/parser/Parser.php(585): Parser->internalParse(string)
#15 /srv/mediawiki/php-1.35.0-wmf.5/includes/content/WikitextContent.php(368): Parser->parse(string, Title, ParserOptions, boolean, boolean, integer)
#16 /srv/mediawiki/php-1.35.0-wmf.5/includes/content/AbstractContent.php(555): WikitextContent->fillParserOutput(Title, integer, ParserOptions, boolean, ParserOutput)
#17 /srv/mediawiki/php-1.35.0-wmf.5/includes/Revision/RenderedRevision.php(267): AbstractContent->getParserOutput(Title, integer, ParserOptions, boolean)
#18 /srv/mediawiki/php-1.35.0-wmf.5/includes/Revision/RenderedRevision.php(236): MediaWiki\Revision\RenderedRevision->getSlotParserOutputUncached(WikitextContent, boolean)
#19 /srv/mediawiki/php-1.35.0-wmf.5/includes/Revision/RevisionRenderer.php(215): MediaWiki\Revision\RenderedRevision->getSlotParserOutput(string)
#20 /srv/mediawiki/php-1.35.0-wmf.5/includes/Revision/RevisionRenderer.php(152): MediaWiki\Revision\RevisionRenderer->combineSlotOutput(MediaWiki\Revision\RenderedRevision, array)
#21 [internal function]: MediaWiki\Revision\RevisionRenderer->MediaWiki\Revision\{closure}(MediaWiki\Revision\RenderedRevision, array)
#22 /srv/mediawiki/php-1.35.0-wmf.5/includes/Revision/RenderedRevision.php(198): call_user_func(Closure, MediaWiki\Revision\RenderedRevision, array)
#23 /srv/mediawiki/php-1.35.0-wmf.5/includes/poolcounter/PoolWorkArticleView.php(196): MediaWiki\Revision\RenderedRevision->getRevisionParserOutput()
#24 /srv/mediawiki/php-1.35.0-wmf.5/includes/poolcounter/PoolCounterWork.php(125): PoolWorkArticleView->doWork()
#25 /srv/mediawiki/php-1.35.0-wmf.5/includes/page/Article.php(791): PoolCounterWork->execute()
#26 /srv/mediawiki/php-1.35.0-wmf.5/includes/actions/ViewAction.php(63): Article->view()
#27 /srv/mediawiki/php-1.35.0-wmf.5/includes/MediaWiki.php(514): ViewAction->show()
#28 /srv/mediawiki/php-1.35.0-wmf.5/includes/MediaWiki.php(304): MediaWiki->performAction(Article, Title)
#29 /srv/mediawiki/php-1.35.0-wmf.5/includes/MediaWiki.php(967): MediaWiki->performRequest()
#30 /srv/mediawiki/php-1.35.0-wmf.5/includes/MediaWiki.php(530): MediaWiki->main()
#31 /srv/mediawiki/php-1.35.0-wmf.5/index.php(46): MediaWiki->run()
#32 /srv/mediawiki/w/index.php(3): require(string)
#33 {main}
<!-- 
NewPP limit report
Parsed by mw1343
Cached time: 20191126011555
Cache expiry: 2592000
Dynamic content: false
Complications: []
CPU time usage: 113.060 seconds
Real time usage: 112.829 seconds
Preprocessor visited node count: 392163/1000000
Preprocessor generated node count: 0/1500000
Post expand include size: 355827/2097152 bytes
Template argument size: 32388/2097152 bytes
Highest expansion depth: 25/40
Expensive parser function count: 51/500
Unstrip recursion depth: 0/20
Unstrip post expand size: 38049/5000000 bytes
Number of Wikibase entities loaded: 1/400
Lua time usage: 0.715/10.000 seconds
Lua memory usage: 18.93 MB/50 MB
-->
<!--
Transclusion expansion time report (%,ms,calls,template)
100.00% 112082.196      1 -total
 53.99% 60515.359      6 Template:French_Commune_Data/Area
 43.49% 48746.892      7 Template:French_Commune_Data/Population
  0.74%  832.896      1 Template:Infobox_settlement
  0.71%  795.454      1 Template:Infobox
  0.50%  559.402     66 Template:Lang
  0.46%  515.269     66 Template:Category_handler
  0.25%  282.512     68 Template:Link-fr
  0.24%  270.222      1 Template:Weather_box
  0.24%  266.929     68 Template:Internal_link_helper
-->

<!-- Saved in parser cache with key zhwiki:pcache:idhash:799826-0!canonical!zh and timestamp 20191126011403 and revision id 56889330
 -->

The time is spend in https://zh.wikipedia.org/wiki/Template:French_Commune_Data/Population?uselang=en&action=edit and https://zh.wikipedia.org/wiki/Template:French_Commune_Data/Area?uselang=en&action=edit which are a very big #switch

<!-- 
NewPP limit report
Parsed by mw1304
Cached time: 20191122205539
Cache expiry: 2592000
Dynamic content: false
Complications: []
CPU time usage: 53.576 seconds
Real time usage: 53.849 seconds
Preprocessor visited node count: 629837/1000000
Preprocessor generated node count: 0/1500000
Post expand include size: 181533/2097152 bytes
Template argument size: 33875/2097152 bytes
Highest expansion depth: 14/40
Expensive parser function count: 1/500
Unstrip recursion depth: 0/20
Unstrip post expand size: 12870/5000000 bytes
Number of Wikibase entities loaded: 0/400
Lua time usage: 0.687/10.000 seconds
Lua memory usage: 2.88 MB/50 MB
-->
<!--
Transclusion expansion time report (%,ms,calls,template)
100.00% 52434.711      1 -total
 60.69% 31824.811    882 Vorlage:FormatNum
 37.20% 19504.299    294 Vorlage:Kfz
 37.13% 19467.572    294 Vorlage:Metadaten_Kfz-Kennzeichen_DE
 26.46% 13871.917    294 Vorlage:EWZF
 23.42% 12279.338    294 Vorlage:FL
 21.37% 11204.084    142 Vorlage:Metadaten_Fläche_DE-BY
 11.05% 5795.657    294 Vorlage:EWZ
  9.62% 5045.358    144 Vorlage:Metadaten_Einwohnerzahl_DE-BY
  8.60% 4511.379     48 Vorlage:Metadaten_Fläche_DE-RP
-->

<!-- Saved in parser cache with key dewiki:pcache:idhash:28984-0!canonical and timestamp 20191122205539 and revision id 193571587
 -->

I'm able to view this page, including after a purge, and after a null edit. It took about 2 seconds to parse, which is well within the 60 seconds timeout.

I'm able to view this page. After a purge it took about 45 seconds to parse. That's quite high, but it did succeed. If it consistently times outs and yet edits are allowed (e.g. not rejected for having too many template nodes or too many expensive functions), please re-open as that warrants investigation to make the limits smarter.

Krinkle claimed this task.