Rob Earhart
Rob Earhart
We need to send a task outcome when a function executor fails to start up. (The protocol allows tasks to be allocated to an FE before the FE completes startup.)
Using the string "fail" for anything other than a test outcome makes it harder than necessary to grep our logs for failing tests; given GitHub's test runner log output viewer's...
We need to verify that with multiple graphs competing for limited resources, the server makes progress and finishes all of the invocations.
The overarching goal here is to smoothly run with a dynamic number of task executors, varying in physical location and hardware resources.
Add tests to demonstrate that we are not removing functions from allow-listed machines when the cluster doesn't have sufficient resources for running workflows.
The idea: let's use a model to validate the correctness of the Indexify state machine, to try to drive out any edge-case issues and increase our overall reliability.
`GET /namespace//computegraphs/` should return a list of versions