Page MenuHomePhabricator

OrchestratorRequest: make sure the returned body is a zobject (or even a Z22) before returning a successful response
Open, HighPublicBUG REPORT

Description

Description

OrchestratorRequest::orchestrate calls the orchestrator with http_errors, which means that a failure response will be returned successfully.
We only check if the body is an array to verify whether it's a successful response, but we could get failure responses which satisfy this condition, such as:

{"error":"Payload too large"}

OrchestratorRequest::orchestrate should make better checks to return a successful response or return an error, at least:

  • response body is a ZObject
  • response body contains a Z22

Completion checklist

Event Timeline

Jdforrester-WMF subscribed.

Impact is mostly on us as developers looking at the logs during chores, but it also means users get a confusing error rather than something more specific when a test/run fails.