Page MenuHomePhabricator

Re-evaluate Parsoid's error handling strategy once it is integrated into MediaWiki
Closed, ResolvedPublic

Description

Parsoid currently either throws an exception or does a log('fatal', ...) when it encounters a problem, including when it hits resource limits.
This is converted into an http 413 response.

Parser.php instead returns an indication of whether the limit has been reached, and when it has been the caller is expected to output an error into the HTML (and not do whatever expensive work would have been done) while still allowing the other content on the page to be displayed. That usually gives a somewhat more graceful degradation.

We should reconcile these error-handling strategies at some point (likely after the initial PHP port).

This is a task spun off from I7fce88e487d86db81748af13898fbe9d9c7cf87c.

Details

Event Timeline

ssastry triaged this task as Medium priority.Apr 22 2019, 12:06 PM
ssastry moved this task from Backlog to Post-Port Work on the Parsoid-PHP board.

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

[mediawiki/services/parsoid@master] Stop throwing on arbitrary resource limits

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

Change 698841 merged by jenkins-bot:

[mediawiki/services/parsoid@master] Stop throwing on arbitrary resource limits

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

Arlolra claimed this task.

Change 704142 had a related patch set uploaded (by Isabelle Hurbain-Palatin; author: Isabelle Hurbain-Palatin):

[mediawiki/vendor@master] Bump parsoid to 0.14.0-a7

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