Deleting a live flow ends the calls it has out on workers and drops what a removed node still returns, so a node that never returns gives its slot and process back and a late answer no longer recreates the flow's values; a cancel goes through the call's own inbox and is sent after the call's frame, so a service stopped right after starting no longer cancels before its serve
This commit is contained in:
@@ -96,10 +96,11 @@ Source code travels with each call and compiles on the worker, so remote-only
|
||||
dependencies do not need to be installed on the engine. Calls to `emit`,
|
||||
`save_artifact` and `load_artifact` work there too.
|
||||
|
||||
Cancelling a run stops its active node processes. A disconnected worker fails
|
||||
in-flight calls. While executing, the agent sends heartbeats every ten seconds;
|
||||
90 seconds without contact fails the call. Heartbeats do not reset the node's
|
||||
own silence timeout.
|
||||
Cancelling a run stops its active node processes. Deleting a flow does the same
|
||||
for the calls it has out, and drops an answer that still comes back. A
|
||||
disconnected worker fails in-flight calls. While executing, the agent sends
|
||||
heartbeats every ten seconds; 90 seconds without contact fails the call.
|
||||
Heartbeats do not reset the node's own silence timeout.
|
||||
|
||||
Every call runs in a process group of its own. The agent kills the group when
|
||||
the engine ends the call, when the connection drops and when the agent stops,
|
||||
|
||||
Reference in New Issue
Block a user