Page MenuHomePhabricator

Improve timeout guarantees in Rust evaluator
Closed, ResolvedPublic

Description

Description

tokio::timeout is implemented as an async poll, which means that the specified timeout duration only gives a minimum bound on when the Future will return.

Desired behavior/Acceptance criteria (returned value, expected error, performance expectations, etc.)

  • use a construct that polls more often, tightening the maximum bound on the timeout

Completion checklist

Event Timeline

Is your thought that we could use timeout to poll more frequently (e.g. every ~1s) and check if the total elapsed time is over the limit?

Change #1271724 had a related patch set uploaded (by Jforrester; author: Jforrester):

[operations/deployment-charts@master] wikifunctions: Upgrade evaluators from 2026-04-06-224243 to 2026-04-14-215402

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

Change #1271724 merged by jenkins-bot:

[operations/deployment-charts@master] wikifunctions: Upgrade evaluators from 2026-04-06-224243 to 2026-04-14-215402

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

Change #1271915 had a related patch set uploaded (by Jforrester; author: Jforrester):

[operations/deployment-charts@master] wikifunctions: Upgrade evaluators from 2026-04-06-224243 to 2026-04-14-215402

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

Change #1271915 merged by jenkins-bot:

[operations/deployment-charts@master] wikifunctions: Upgrade evaluators from 2026-04-06-224243 to 2026-04-14-215402

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