RestartSupervisor should be decoupled from the orchestrator
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 3.7k
- Forks
- 676
- Avg merge
- 4d 9h
- Merged PRs (30d)
- 6
Description
Currently, the RestartSupervisor is triggered externally by the orchestrator.
This makes some things a little complex in some cases. For instance, the restart supervisor cannot control the rate at which it is being called, leading to workarounds (#1199).
Instead, if the restart supervisor was completely independent (watching for tasks and restarting as needed) it would lead to a simpler design.
The same could perhaps apply to the UpdateSupervisor.
/cc @aaronlehmann @dongluochen
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing how the orchestrator triggers RestartSupervisor and how the supervisor observes tasks and performs restarts. Compare the current design with UpdateSupervisor as suggested. Done means RestartSupervisor independently watches tasks and controls its restart rate without external orchestration, with any resulting behavior covered by the project’s existing tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- distributed-systems
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100