Skip to content

GH-2222: Expand dispatcher recovery + add periodic loop (internal/executor/) - In `i...#2225

Closed
alekspetrov wants to merge 1 commit intomainfrom
pilot/GH-2222
Closed

GH-2222: Expand dispatcher recovery + add periodic loop (internal/executor/) - In `i...#2225
alekspetrov wants to merge 1 commit intomainfrom
pilot/GH-2222

Conversation

@alekspetrov
Copy link
Copy Markdown
Collaborator

Summary

Automated PR created by Pilot for task GH-2222.

Closes #2222

Changes

GitHub Issue #2222: Expand dispatcher recovery + add periodic loop (internal/executor/) - In `i...

Parent: GH-2219

re-queuing without a worker just recreates the orphan). (c) Change Start() to accept context.Context and launch a runStaleRecoveryLoop goroutine that ticks every StaleRecoveryInterval. (d) Add summary log line "stale recovery complete, reset N tasks" on every pass (even when 0) for diagnosability of the GH-2213 survival mystery. (e) Update Start() callers if signature changes. (f) Add tests: TestRecoverStaleTasks_QueuedAndRunning, TestRecoverStaleTasks_RespectsThresholds, TestRunStaleRecoveryLoop_Periodic, TestQueueTask_AfterRecovery in internal/executor/dispatcher_test.go.

…ecutor/`)

- Add StaleRunningThreshold, StaleQueuedThreshold, StaleRecoveryInterval
  to DispatcherConfig (StaleTaskDuration kept as backwards-compat alias)
- Rewrite recoverStaleTasks() to recover both running and queued orphans,
  marking them failed (not re-queued — re-queuing without a worker just
  recreates the orphan)
- Change Start() to accept context.Context and launch runStaleRecoveryLoop
  goroutine that ticks every StaleRecoveryInterval
- Add summary log "stale recovery complete, reset N tasks" on every pass
  (even when 0) for diagnosability
- Update all Start() callers in main.go and tests
- Add tests: TestRecoverStaleTasks_QueuedAndRunning,
  TestRecoverStaleTasks_RespectsThresholds, TestRunStaleRecoveryLoop_Periodic,
  TestQueueTask_AfterRecovery
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Expand dispatcher recovery + add periodic loop (internal/executor/) - In `i...

1 participant