Page MenuHomePhabricator

Make ORES-consuming pages more robust to ORES errors
Closed, ResolvedPublic

Description

All pages hooked by Extension:ORES need to be robust to any type of ORES failure, short of a PHP fatal error. We should gracefully degrade functionality, removing ORES features if they are broken or unavailable.

Handle:

  • Thresholds response contains a null.
  • Thresholds response malformed in an unexpected way.
  • ORES service is unreachable.
  • ORES service returns a 500.

Must have tests covering these cases.

Event Timeline

awight created this task.Nov 22 2017, 7:03 PM
awight updated the task description. (Show Details)Nov 22 2017, 7:24 PM

Change 393373 had a related patch set uploaded (by Ladsgroup; owner: Amir Sarabadani):
[mediawiki/extensions/ORES@master] Warn instead of throwing error in case threshold is unparseable

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

Change 393373 merged by jenkins-bot:
[mediawiki/extensions/ORES@master] Warn instead of throwing error in case threshold is unparseable

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

Change 393660 had a related patch set uploaded (by Awight; owner: Amir Sarabadani):
[mediawiki/extensions/ORES@wmf/1.31.0-wmf.8] Warn instead of throwing error in case threshold is unparseable

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

Change 393660 merged by jenkins-bot:
[mediawiki/extensions/ORES@wmf/1.31.0-wmf.8] Warn instead of throwing error in case threshold is unparseable

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

Mentioned in SAL (#wikimedia-operations) [2017-11-27T21:23:38Z] <awight@tin> Synchronized php-1.31.0-wmf.8/extensions/ORES: ORES error handling for bad thresholds, T181191 (duration: 00m 46s)

Confirmed that we also handle the following situation correctly:

  • ORES service is unreachable
  • threshold cache key is cleared or expires
  • Reload Special:RecentChanges
awight updated the task description. (Show Details)Nov 28 2017, 3:52 PM
awight moved this task from Pending deployment to Active on the Scoring-platform-team (Current) board.
Halfak closed this task as Resolved.Jan 30 2018, 8:31 PM