Page MenuHomePhabricator

Orchestrator error logs from Monday 2026-06-08: Don't throw 'unidentified error' on evaluator 4xx responses
Closed, ResolvedPublic

Description

one occurrence of:

Orchestration failed with unidentified error: Error: Function evaluation failed with status 400: Failed to parse the request body as JSON: functionArguments.Z21580K1.object.Z6001K2.object.Z12K1.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K1.object.Z11K1.object.Z60K1.rawObject: recursion limit exceeded at line 1 column 11758.
  • I couldn't find the incoming request for this request-id! ed1d5d78-b109-4afe-907f-0a86805b29f5

one occurrence of:

Orchestration failed with unidentified error: Error: Function evaluation failed with status 400: Failed to parse the request body as JSON: functionArguments.Z30216K1.object.Z6005K7.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K1.object.Z6004K4.object.K2.object.K2.object.K2.object.K1.object.Z6091K1.rawObject: recursion limit exceeded at line 1 column 66190.
  • none of the related Orch request data produced this error locally

one occurrence of:

	Orchestration failed with unidentified error: Error: Function evaluation failed with status 400: Failed to parse the request body as JSON: functionArguments.Z22853K1.object.Z6001K2.object.Z12K1.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K2.object.K1.object.Z11K1.object.Z60K1.rawObject: recursion limit exceeded at line 1 column 12014.
  • also not able to reproduce locally

Details

Related Changes in Gerrit:
Related Changes in GitLab:
TitleReferenceAuthorSource BranchDest Branch
orchestrator: surface evaluator 4xx responses as typed Z507 rather than 'unidentified error'repos/abstract-wiki/wikifunctions/function-orchestrator!717ecarggrace/T428653/handle-json-parse-errormain
Customize query in GitLab

Event Timeline

ecarg updated the task description. (Show Details)

Sounds like we need to add a recursion limit guard in the evaluator somewhere and throw an appropriate Z5xx, but it's not clear where. A stack trace would be so helpful. :-)

Wait, these errors are both coming from the orchestrator, not the evaluator. Are you sure this should block the Rust evaluator roll-out?

I was told to file the log errors from my Chores under this task, but I'm just now getting to the repro steps and agree, this doesn't seem related to the Rust Eval!

ecarg renamed this task from [rust eval] Failed to parse the request body as JSON logs to Failed to parse the request body as JSON logs.Jun 12 2026, 3:41 PM
ecarg edited projects, added: function-orchestrator; removed: function-evaluator.
ecarg renamed this task from Failed to parse the request body as JSON logs to error logs from Monday 260608.Jun 12 2026, 5:02 PM
ecarg changed the task status from Open to In Progress.
ecarg triaged this task as Medium priority.
ecarg updated the task description. (Show Details)

apine merged https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-orchestrator/-/merge_requests/717

orchestrator: surface evaluator 4xx responses as typed Z507 rather than 'unidentified error'

Jdforrester-WMF renamed this task from error logs from Monday 260608 to Orchestrator error logs from Monday 2026-06-08: Don't throw 'unidentified error' on evaluator 4xx responses.Mon, Jun 15, 11:05 PM

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

[operations/deployment-charts@master] wikifunctions: Upgrade orchestrator from 2026-06-11-171152 to 2026-06-16-183209

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

Change #1303434 merged by jenkins-bot:

[operations/deployment-charts@master] wikifunctions: Upgrade orchestrator from 2026-06-11-171152 to 2026-06-16-183209

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

Handling these, Orchestration failed with unidentified error: Error: Function evaluation failed with status 400: "could not evaluate successfully is resolved. Now seeing a bunch of the same except with 5xxs -_-; I can extend the condition added to cover these as well.