Skip to content

Add scheduler support for jumping to a target operator #4443

@aglinxinyuan

Description

@aglinxinyuan

Task Summary

Add a generic controller-side primitive that allows workflow execution to continue from the region containing a specified target operator (JumpToOperatorRegion).

Design constraints:

  • The schedule generated by WorkflowScheduler remains static; the jump primitive does not live in WorkflowScheduler.
  • Execution-position state is owned by WorkflowExecutionCoordinator; a jump rewrites only the coordinator's view of the remaining schedule.
  • Schedule provides O(1) operator→level-index lookup and a rewriteExecutionFrom data primitive; jump policy stays out of Schedule.

Concretely the change adds:

  • JumpToOperatorRegionRequest and the JumpToOperatorRegion controller RPC.
  • A controller handler (JumpToOperatorRegionHandler) that delegates to the coordinator.
  • Coordinator-owned jump support: replaceSchedule, pullNextRegions, jumpToRegionContainingOperator.

Out of scope: loop-operator logic, region-restart logic, and state materialization. The primitive is generic so those features can build on it.

Priority

P2 – Medium

Task Type

  • Code Implementation
  • Documentation
  • Refactor / Cleanup
  • Testing / QA
  • DevOps / Deployment

Metadata

Metadata

Assignees

Labels

backendAnything related to backend services

Type

No fields configured for Task.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions