feat(scheduler-dispatch-commit): add dispatch-fail retry counter to job_t (task 1.3)

Add uint32_t dispatch_fail_count to the job_t wrapper struct (xce/types.h,
alongside submit_lsn, same in-memory-only/reset-on-failover precedent),
per Requirement 4.3. Data model only -- xce_job_t (wire type) untouched,
job.c untouched; increment/reset wiring and the bounded-retry threshold
check are tasks 3.1/3.3.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Rongsong Shen 2026-08-23 07:44:22 +00:00
parent 8eea74909c
commit 19bbac6ae0
No known key found for this signature in database
GPG key ID: 5BCDAAE0123E9FE2
5 changed files with 111 additions and 1 deletions

View file

@ -15,7 +15,7 @@
- _Requirements: 2.4_
- _Boundary: WAL Dispatch Fact_
- [ ] 1.3 (P) Track how many consecutive times a job's dispatch has failed for a retryable reason
- [x] 1.3 (P) Track how many consecutive times a job's dispatch has failed for a retryable reason
- Add an in-memory counter on the controller's job record that increments on each retryable dispatch failure and resets to zero on a successful dispatch
- This counter does not need to survive a controller failover — resetting to zero after a failover is an acceptable, safe degradation
- Observable completion: the counter can be incremented, read, and reset independently of any actual dispatch attempt