Page MenuHomePhabricator

mediawiki - node: add timeout
Closed, ResolvedPublic3 Story Points

Description

Motivation
In order to avoid blocking mediawiki rendering the termbox SSR request should be configured with a timeout.

Timeout limit
Possibility to find that out: Render a couple of items, and see what would be an unusual time of rendering
If the number is too high, we would impact the whole service of Wikidata and mediawiki (like 60 seconds)
Risk of being too low: We would only rely on client side editing, which would create more load on low performance clients

User perspective

  • They would not see anything until the timeout was reached, and then client side rendering would kick in, and then the user would see stuff (considering their browser supporting javascript)

Acceptance Criteria

  • There is a timeout limit in place when the SSR request is stopped.
  • If the SSR request is stopped, client side rendering happens as a fallback
  • If the SSR request is stopped due to a timeout, ParserCache should not persist any results
  • The timeout limit is neither badly affecting Wikidata/Mediawiki performance nor always resulting in client side fallback activity.

Note
If along the way you find out, what happens on the SSR side (is it still trying to render sth or will it realize that the client has hung up), please make note and let everyone know.

Technical Note

  • relevant bit of code is TermboxRemoteRenderer #34
  • should be configurable with a sensible default. default: 3 seconds
  • add rationale how to get to a meaningful number once the service is in production (see: T220404)

Event Timeline

Pablo-WMDE triaged this task as Normal priority.Feb 12 2019, 3:22 PM
Pablo-WMDE created this task.
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptFeb 12 2019, 3:22 PM
Pablo-WMDE updated the task description. (Show Details)Feb 12 2019, 3:25 PM
Lea_WMDE set the point value for this task to 3.
Jakob_WMDE updated the task description. (Show Details)Apr 8 2019, 2:32 PM
Jakob_WMDE updated the task description. (Show Details)Apr 8 2019, 2:40 PM
Jakob_WMDE updated the task description. (Show Details)Apr 8 2019, 2:43 PM
Tarrow updated the task description. (Show Details)Apr 8 2019, 2:47 PM

Change 503948 had a related patch set uploaded (by Matthias Geisler; owner: Matthias Geisler):
[mediawiki/extensions/Wikibase@master] Add Request timeout for ssr-connection

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

Change 503948 merged by jenkins-bot:
[mediawiki/extensions/Wikibase@master] Add Request timeout for ssr-connection

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

Jakob_WMDE closed this task as Resolved.Apr 23 2019, 12:19 PM