Page MenuHomePhabricator

Running a valid function call on Z866 after running an invalid one somehow seems to crash the browser tab?
Open, HighPublicBUG REPORT

Assigned To
None
Authored By
GrounderUK
Wed, Jun 12, 1:09 PM
Referenced Files
F55261883: IMG_0958.png
Wed, Jun 12, 1:09 PM
F55261847: IMG_0957.png
Wed, Jun 12, 1:09 PM
F55261842: IMG_0956.png
Wed, Jun 12, 1:09 PM
F55261827: IMG_0955.png
Wed, Jun 12, 1:09 PM
Restricted File
Wed, Jun 12, 1:09 PM
Subscribers

Description

Steps to replicate the issue (include links if applicable):

(Maybe just using an older iPhone)

  • Go to https://www.wikifunctions.org/wiki/Z866
  • “Try this function” with one string and one function call that does not return a string (Z801 with Sign: neutral, for example)
  • “Run function” and observe error result
  • Change the function call to a string and “Run function” with valid arguments.

What happens?:
Nothing (the button flickers once but does not change colour). Links on the page do not respond. Checkboxes do not register a click. Cannot enter search box. A single click to go back in the browser fails to navigate. iPhone becomes or remains warm if left in the unresponsive state.

What should have happened instead?:
The button should have changed colour, the feedback message “Running…” should have appeared and then the function should have evaluated to True or False.

Software version (on Special:Version page; skip for WMF-hosted wikis like Wikipedia):

Other information (browser name/version, screenshots, etc.):

iPhone 12 mini, iOS 17.5.1 (and previous), Safari and Chrome, desktop or mobile view.

This unresponsive behaviour is not specific to this function. Even when a function runs successfully, and without changing the inputs, there can be a delay of over ten seconds between clicking “Run function” and its colour change and “Running…” feedback message. I’ve not noticed anything similar before this week.

A similar delay occurs with “Try this implementation” when editing an Implementation and with “Try this function” when editing a Test case. I have had a couple of fatal episodes here too and taking care to avoid them limits the scope of testing and debugging.

(I hadn’t noticed before, but it seems that the “Run function” button remains its brighter shade of blue after a result has been returned, unless focus goes elsewhere. I think this might be new behaviour. The button functions normally in this state, repeating the function call after the same delay as noted above. Back and then forward in the browser results in the return of the darker shade but does not alter the subsequent delay. Only after a refresh (and the loss of arguments) is the delay minimised.)

{F55261812} Invalid call produces the correct error result

IMG_0955.png (2×960 px, 429 KB)
Screen is responsive after error

IMG_0956.png (2×960 px, 343 KB)
Before clicking “Run function”

IMG_0957.png (2×960 px, 343 KB)
After clicking “Run function (screen is unresponsive)

IMG_0958.png (2×960 px, 424 KB)
“Refresh” is stalled (but Back refreshes the screen to its initial state… or goes back, probably)

Event Timeline

Jdforrester-WMF renamed this task from Web page can become fatally unresponsive to Running a valid function call on Z866 after running an invalid one somehow seems to crash the browser tab?.Wed, Jun 12, 4:39 PM
Jdforrester-WMF triaged this task as High priority.

I've observed this behavior and located its origin. I believe this will be fixed when we merge https://gerrit.wikimedia.org/r/c/mediawiki/extensions/WikiLambda/+/1036184