feat(job-array-one-based-index): idgen allocates ordinary IDs only (task 9.1)
idgen() now accepts only a size of 1 (anything else: -EINVAL, context unchanged) and refuses an exhausted 20-bit sequence with -EOVERFLOW instead of spilling into the timestamp (also after idgen_array has taken the last block). Arrays come only from idgen_array; every caller of idgen/GenerateJobID passes 1. The old multi-element test loop moves to idgen_array with 1-based assertions. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
d3b12159a4
commit
63eaea215a
4 changed files with 110 additions and 26 deletions
|
|
@ -205,7 +205,7 @@
|
|||
- _Depends: 8.2_
|
||||
|
||||
- [ ] 9. Integration and cleanup
|
||||
- [ ] 9.1 Restrict ordinary ID allocation to single jobs
|
||||
- [x] 9.1 Restrict ordinary ID allocation to single jobs
|
||||
- Remove the multi-element path from ordinary ID allocation now that the harness and the API server use the array allocator
|
||||
- Migrate the existing ID-allocation test loop that requests sizes above 1 to the array allocator
|
||||
- Done when the old multi-element test loop is gone or migrated, ordinary allocation with size 2 returns invalid-argument in the libxce suite, and the harness and API server builds and suites still pass
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue