On Wed, Jan 19, 2022 at 09:58:52PM +0100, Paul Gevers wrote: > Hi Bryce, > > On 19-01-2022 10:28, Bryce Harrington wrote: > > > With [4] applied, I'm seeing the following dumped on armhf: > > > > ## https://autopkgtest.ubuntu.com/packages/m/mediawiki/jammy/armhf > > cat: /var/log/mediawiki/error.log: No such file or directory > > 2022-01-19 09:16:57 autopkgtest-lxd-eeoxik autopkgtestwiki: > > [e33d1ec89af515673078437e] /mediawiki/index.php/Main_Page PHP Fatal Error > > from line 110 of /usr/share/mediawiki/includes/json/FormatJson.php: Maximum > > execution time of 30 seconds exceeded > > #0 [internal function]: MWExceptionHandler::handleFatalError() > > #1 {main} > > 2022-01-19 09:17:27 autopkgtest-lxd-eeoxik autopkgtestwiki: > > [1284cbae5a84eb5387f33003] /mediawiki/index.php/Main_Page PHP Fatal Error > > from line 152 of > > /usr/share/mediawiki/includes/HookContainer/HookContainer.php: Maximum > > execution time of 30 seconds exceeded > > #0 [internal function]: MWExceptionHandler::handleFatalError() > > #1 {main} > > 2022-01-19 09:17:57 autopkgtest-lxd-eeoxik autopkgtestwiki: > > [31731278ed6070e946af4fbe] /mediawiki/index.php/Main_Page PHP Fatal Error > > from line 110 of /usr/share/mediawiki/includes/json/FormatJson.php: Maximum > > execution time of 30 seconds exceeded > > #0 [internal function]: MWExceptionHandler::handleFatalError() > > #1 {main} > > cat: /var/log/mediawiki/fatal.log: No such file or directory > > As this issue seems intermittent (as mediawiki passed at one point) I guess > you're trying to say that you think mediawiki got slower with php8.1? Or is > this timeout new with php8.1?
The failing cases are mostly ones with triggers for php-defaults/84~0ubuntu1 or newer, which marks where php8.1 is set as default. The ones that pass and don't specify that are thus running php8.0. So it looks like the pass-vs-fail correlates to php8.0-vs-8.1 and is something specific to armhf. Unfortunately I don't have i386 builds to compare with (due to dependency issues), so it's just a hunch that this is the same problem Debian sees on i386. It'd be illuminating to doublecheck on your i386 builds that it's also hitting this same timeout situation. > Obviously the code that fails to finish is mediawiki's code, so it > doesn't seem to be a generic issue with php8.1 except if the timeout > happens because of something inside php8.1. Line 110 that the error points to appears to be a json_encode() call. > Can anybody shed a light on if it's reasonable to time out on what > mediawiki is trying to do here. And why doesn't it happen on other > architectures (in Debian, as far as I checked)? I can't tell what it may be trying to encode, but presumably it's either Main_Page or something used by Main_Page, which I'm guessing should only take a fraction of a second to encode. I suppose we could test increasing max_execution_time. But my suspicion is that the encoder is getting stuck in a loop or a recursion. I've not been able to find any reports on the web similar enough to be worth mentioning. Bryce