Page MenuHomePhabricator

"Service Temporarily Unavailable" shows up when trying to add a new section/topic to a talk page on Beta cluster
Closed, ResolvedPublic

Description

Steps to replicate this issue:

  1. Try to add a new section by clicking on "Add topic" on any talk page on Beta cluster or try to open this URL:

https://en.wikipedia.beta.wmflabs.org/wiki/User_talk:RYasmeen_(WMF)?action=edit&section=new

Observe that, neither the new topic tool nor the old tool for adding new section opens up, instead it shows a page with error "Service Temporarily Unavailable".

The issue doesn't seem to be Discussion Tools specific. I tried it after disabling Discussion Tools from Beta features, and also after disabling the new topic tool option from #mw-prefsection-editing, it still shows the same error.

Screen Shot 2022-07-08 at 8.27.09 PM.png (752×1 px, 104 KB)

Event Timeline

It's an interesting issue as it takes a lot for the webserver to fail so fatally that it can't even render MW-skinned HTTP 500 "Internal error" page, and then also can't render a PHP7 "Fatal error" page, but instead is getting HTTP 503 from the envoy proxy.

I can reproduce this logged-out and bypassing the ATS and Varnish layers, isolating to just the MediaWiki core and extensions code basically (including possibly DiscussionTools, which potentially at fault here, even if the user may have the feature turned off the extension is still installed).

curl -i 'https://nl.wikipedia.beta.wmflabs.org/w/?title=Talk:Spain&section=new&action=edit' --connect-to ::localhost -H 'X-Wikimedia-Debug: backend=; log'

HTTP/1.1 503 Service Unavailable
date: Sat, 09 Jul 2022 03:18:41 GMT
server: deployment-mediawiki12.deployment-prep.eqiad1.wikimedia.cloud

It affects Spain, Talk:Spain and User_talk:RYasmeen_(WMF). And happens both on enwiki and nlwiki in Beta.

It doesn't happen for just action=edit or just section=new. It doesn't happen for other values of these query parameters.

via WikimediaDebug I enabled verbose logging but nothing interesting stood out. The server seems to silently crash.

https://beta-logs.wmcloud.org/goto/c9e50fc9c07e5c45208b2c6261886b07

timestamp: 2022-07-09T06:17:26+00:00
phpversion: 7.2.34


Start request GET /w/?title=Talk:Spain&section=new&action=edit
X-REQUEST-ID: 741326bb-96e4-4f5a-bc5f-dbada216ebd6
…
HTTP complete: GET http://deployment-sessionstore04.deployment-prep.eqiad1.wikimedia.cloud:8080/
…
WikiPage::pageData [0.001s] deployment-db08: SELECT  page_id […]
…
Registered handler for wikitext: WikitextContentHandler

and then.. nothing. Also nothing relevant in the local server logs:

$ date
Sat Jul  9 04:17:49 UTC 2022

$ sudo tail /var/log/php7.2-fpm/error.log

I do note that the Logstash server seems to think it's currently 2022-07-09 06:17 UTC, whereas the webserver (correctly) says it's 04:17 UTC.

The kernel message buffer (via sudo dmesg -T) shows php-fpm7.2 is segfaulting:

[Sat Jul  9 05:14:09 2022] Core dump to |/usr/lib/systemd/systemd-coredump 9905 33 33 11 1657343924 0 php-fpm7.2 pipe failed
[Sat Jul  9 05:19:35 2022] php-fpm7.2[9906]: segfault at 7ffed9510ff8 ip 00007f6f966e52cd sp 00007ffed9511000 error 6

The kernel is configured to pipe core dumps to systemd-coredump, but systemd-coredump is not installed (hence 'pipe failed'), and the core dumps are lost.

Mentioned in SAL (#wikimedia-releng) [2022-07-09T05:50:44Z] <Krinkle> krinkle@deployment-mediawiki-12$ sudo apt-get install systemd-coredump # ref T312689

krinkle@deployment-mediawiki12:~$ sudo apt-get install systemd-coredump 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required: […]
The following NEW packages will be installed:
  systemd-coredump
0 upgraded, 1 newly installed, 0 to remove and 1 not upgraded.
Need to get 0 B/134 kB of archives.
After this operation, 254 kB of additional disk space will be used.
Selecting previously unselected package systemd-coredump.
(Reading database ... 77393 files and directories currently installed.)
Preparing to unpack .../systemd-coredump_241-7~deb10u8_amd64.deb ...
Unpacking systemd-coredump (241-7~deb10u8) ...
Setting up systemd-coredump (241-7~deb10u8) ...

adduser: The user `systemd-coredump' already exists, but is not a system user. Exiting.

dpkg: error processing package systemd-coredump (--configure):
 installed systemd-coredump package post-installation script subprocess returned error exit status 1

But:

deployment-mediawiki12$ cat /etc/passwd
…
systemd-coredump:x:999:999:systemd Core Dumper:/:/usr/sbin/nologin

Which according to the official systemd website is still in range of the system users (docs), albeit the very last UID in that range.

After @ori removed deleted the systemd-coredump user and installed systemd-coredump. With that in place, syslog provides the folllowing generic dump. Which suggests that either the problem happens in execute_ex (which I assume to mean any interpreted PHP code, so not so useful), or tideways_xhprof_execute_ex.

Jul  9 06:14:42 deployment-mediawiki12 systemd-coredump[24777]: Process 23204 (php-fpm7.2) of user 33 dumped core.#012#012Stack trace of thread 23204:#012#0  0x000055912e2296c4 n/a (php-fpm7.2)#012#1  0x000055912e24ece2 execute_ex (php-fpm7.2)#012#2  0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#3  0x000055912e252d62 execute_ex (php-fpm7.2)#012#4  0x00007fb37bb71c69tideways_xhprof_execute_ex (tideways_xhprof.so)#012#5  0x000055912e252f5c execute_ex (php-fpm7.2)#012#6  0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#7  0x000055912e252d62 execute_ex (php-fpm7.2)#012#8  0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#9  0x000055912e252d62 execute_ex (php-fpm7.2)#012#10 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#11 0x000055912e252d62 execute_ex (php-fpm7.2)#012#12 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#13 0x000055912e252d62 execute_ex (php-fpm7.2)#012#14 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#15 0x000055912e252d62 execute_ex (php-fpm7.2)#012#16 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#17 0x000055912e252d62 execute_ex (php-fpm7.2)#012#18 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#19 0x000055912e252d62 execute_ex (php-fpm7.2)#012#20 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#21 0x000055912e252d62 execute_ex (php-fpm7.2)#012#22 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#23 0x000055912e252f5c execute_ex (php-fpm7.2)#012#24 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#25 0x000055912e252f5c execute_ex (php-fpm7.2)#012#26 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#27 0x000055912e252d62 execute_ex (php-fpm7.2)#012#28 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#29 0x000055912e252d62 execute_ex (php-fpm7.2)#012#30 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#31 0x000055912e252d62 execute_ex (php-fpm7.2)#012#32 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#33 0x000055912e252d62 execute_ex (php-fpm7.2)#012#34 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#35 0x000055912e252d62 execute_ex (php-fpm7.2)#012#36 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#37 0x000055912e252d62 execute_ex (php-fpm7.2)#012#38 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#39 0x000055912e252f5c execute_ex (php-fpm7.2)#012#40 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#41 0x000055912e252f5c execute_ex (php-fpm7.2)#012#42 0x00007fb37bb71c69 tideway_xhprof_execute_ex (tideways_xhprof.so)#012#43 0x000055912e252d62 execute_ex (php-fpm7.2)#012#44 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#45 0x000055912e252d62 execute_ex (php-fpm7.2)#012#46 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#47 0x000055912e252d62 execute_ex (php-fpm7.2)#012#48 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#49 0x000055912e252d62 execute_ex (php-fpm7.2)#012#50 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#51 0x000055912e252d62 execute_ex (php-fpm7.2)#012#52 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#53 0x000055912e252d62 execute_ex (php-fpm7.2)#012#54 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#55 0x000055912e252f5c execute_ex (php-fpm7.2)#012#56 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#57 0x000055912e252f5c execute_ex (php-fpm7.2)#012#58 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#59 0x000055912e252d62 execute_ex (php-fpm7.2)#012#60 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#61 0x000055912e252d62 execute_ex (php-fpm7.2)#012#62 0x00007fb37bb71c69 tideways_xhprof_execute_ex (tideways_xhprof.so)#012#63 0x000055912e252d62 execute_ex (php-fpm7.2)#012#012Stack trace of thread 23235:#012#0  0x00007fb381d4e12b timer_helper_thread (librt.so.1)#012#1  0x00007fb3813a1fa3 start_thread (libpthread.so.0)#012#2  0x00007fb3814b3eff __clone (libc.so.6)

I suspect tideways_xhprof_execute_ex might be a red-herring as just being hooked into call function calls.

I disabled puppet (to avoid it undoing my local changes) and then disabled php-tideways.

$ sudo disable-puppet  …
$ sudo edit /etc/php/7.2/fpm/conf.d/30-tideways-xhprof.ini 

The next request then shows a failure with HTTP 500 instead of HTTP 503.

Screenshot 2022-07-08 at 23.23.40.png (1×1 px, 149 KB)

The php-fpm's error.log tells us it's an out of memory problem now:

PHP Fatal error:  Allowed memory size of 698351616 bytes exhausted (tried to allocate 20480 bytes) in /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php on line 1759

A more useful error message is found in syslog, as formatted by our wonderful php-wmerrors extension:

Jul  9 06:15:39 deployment-mediawiki12 php7.2-fpm: @cee: {
 "message":"[b7462159-8488-4ca8-9679-298fc9d11db5] PHP Fatal error: Allowed memory size of 698351616 bytes exhausted (tried to allocate 20480 bytes) in /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php:1759",
  "exception":{"message":"Allowed memory size of 698351616 bytes exhausted (tried to allocate 20480 bytes)",
  "file":"/srv/mediawiki/php-master/includes/HookContainer/HookRunner.php:1759",
  "trace":"#0 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1759): unknown()
 #1 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #2 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #3 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #4 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #5 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #6 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #7 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #8 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #9 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #10 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #11 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #12 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #13 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #14 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #15 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #16 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #17 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #18 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #19 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #20 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #21 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #22 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #23 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #24 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #25 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #26 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #27 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #28 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #29 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #30 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #31 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #32 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #33 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #34 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #35 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #36 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #37 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #38 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #39 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #40 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #41 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #42 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #43 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #44 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #45 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #46 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #47 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #48 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #49 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #50 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #51 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #52 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #53 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #54 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #55 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #56 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #57 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #58 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #59 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #60 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #61 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #62 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #63 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #64 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #65 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #66 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #67 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #68 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #69 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #70 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #71 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #72 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #73 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #74 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #75 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #76 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #77 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #78 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #79 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #80 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #81 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #82 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #83 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #84 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #85 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #86 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #87 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #88 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #89 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #90 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #91 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #92 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #93 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #94 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #95 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #96 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #97 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #98 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #99 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #100 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #101 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #102 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #103 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #104 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #105 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #106 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #107 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #108 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #109 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #110 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #111 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #112 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #113 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #114 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #115 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #116 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #117 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #118 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #119 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #120 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #121 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #122 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #123 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #124 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #125 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #126 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #127 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #128 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #129 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #130 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #131 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #132 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #133 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #134 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #135 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #136 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #137 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #138 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #139 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #140 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #141 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #142 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #143 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #144 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #145 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #146 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #147 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #148 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #149 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #150 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #151 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #152 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #153 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #154 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #155 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #156 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #157 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #158 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #159 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #160 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #161 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #162 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #163 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #164 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #165 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #166 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #167 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #168 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #169 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #170 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #171 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #172 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #173 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #174 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #175 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #176 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #177 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #178 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #179 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #180 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #181 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #182 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #183 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #184 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #185 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #186 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #187 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #188 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #189 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #190 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #191 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #192 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #193 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #194 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #195 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #196 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #197 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #198 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #199 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #200 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #201 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #202 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #203 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #204 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #205 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #206 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #207 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #208 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #209 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #210 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #211 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #212 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #213 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #214 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTopicTool()
 #215 /srv/mediawiki/php-master/includes/HookContainer/HookContainer.php(160): MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks->onGetActionName()
 #216 /srv/mediawiki/php-master/includes/HookContainer/HookRunner.php(1760): MediaWiki\\HookContainer\\HookContainer->run()
 #217 /srv/mediawiki/php-master/includes/actions/ActionFactory.php(361): MediaWiki\\HookContainer\\HookRunner->onGetActionName()
 #218 /srv/mediawiki/php-master/includes/context/RequestContext.php(305): MediaWiki\\Actions\\ActionFactory->getActionName()
 #219 /srv/mediawiki/php-master/includes/context/ContextSource.php(129): RequestContext->getActionName()
 #220 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(233): ContextSource->getActionName()
 #221 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/HookUtils.php(333): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::isFeatureEnabledForOutput()
 #222 /srv/mediawiki/php-master/extensions/DiscussionTools/includes/Hooks/PageHooks.php(237): MediaWiki\\Extension\\DiscussionTools\\Hooks\\HookUtils::shouldOpenNewTo"
 },
  "caught_by":"php-wmerrors",
  "reqId":"b7462159-8488-4ca8-9679-298fc9d11db5",
  "phpversion":"7.2.34-18+0~20210223.60+debian10~1.gbpb21322+wmf5",
  "servergroup":"misc",
  "type":"mediawiki",
  "normalized_message":"Allowed memory size of 698351616 bytes exhausted (tried to allocate 20480 bytes) in HookRunner.php",
  "url":"/w/?title=Talk:Spain&section=new&action=edit",
  "ip":"172.16.2.65",
  "http_method":"GET",
  "server":"nl.wikipedia.beta.wmflabs.org",
  "mwversion":"master"
}

Based on stack trace being over 200 frames deep, this looks to me like infinite recursion.

Krinkle triaged this task as High priority.
Krinkle added a project: DiscussionTools.

My estimate is this is induced by DiscussionTools, and would likely affect production next week as well, and should be reproducible locally as well, though it might require adding a few more than the default stock config options to trigger, not sure.

T308074 is the next train task which this should probably block if it will affect production. (Note: No train next week due to inspiration week)

We spotted an out of memory exception on a Patch Demo too: https://patchdemo.wmflabs.org/wikis/6c2b1c9b3e/w/index.php?title=User_talk:Mallory&action=edit&redlink=1 was reporting Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 262144 bytes) in Unknown on line 0

hashar subscribed.

Week of July 11th 2022 doesn't have a MediaWiki train, next one will be 1.39.0-wmf.21 on July 19th T308074. I have made the task a blocker (and it should probably be raised to priority Unbreak now).

Change 812441 had a related patch set uploaded (by Zabe; author: Zabe):

[mediawiki/extensions/DiscussionTools@master] Revert "Enable transformations in preview mode"

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

Change 812445 had a related patch set uploaded (by Esanders; author: Esanders):

[mediawiki/extensions/DiscussionTools@master] Fix infinite recursion when checking for the new topic tool on empty pages

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

Change 812441 abandoned by Esanders:

[mediawiki/extensions/DiscussionTools@master] Revert "Enable transformations in preview mode"

Reason:

See Iaf5033a55e3840ef65be0c4994f8b6c00fe2551b

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

Esanders raised the priority of this task from High to Unbreak Now!.Jul 9 2022, 11:51 AM

Change 812445 merged by jenkins-bot:

[mediawiki/extensions/DiscussionTools@master] Fix infinite recursion when checking for the new topic tool on empty pages

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