Skip to content

[Compute Separation] M5a: Worker disconnection handling and stateless reconnection #11649

@brettsam

Description

@brettsam

When a connected worker's gRPC stream ends, the host must clean up gracefully. Reconnecting workers get a fresh channel (stateless — new workerId).

Dependencies: M4 (#11647)

Acceptance Criteria

  • FunctionRpcService publishes WorkerErrorEvent when external worker stream ends
  • WorkerConnectionService removes channel from IConnectedWorkerChannelManager on disconnect
  • In-flight invocations are drained before channel removal
  • HostJsonContentProvider.Reset(clearCache: true) called on worker disconnect
  • Reconnecting worker with new workerId gets a fresh ConnectedWorkerChannel
  • Unit tests for disconnect + reconnect scenarios

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions