bug-1903 partial (page-token precision fixed in efff6b65), bug-1907
logged (harness setpend/jobrun cannot report not-found), stale
parse_jobid regex comment in repl.c updated.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2.4 KiB
2.4 KiB
| id | status | status_updated | status_note | component | severity | timestamp | last_seen | occurrences | files | tags | related | |||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| bug-1907 | open | 2026-10-01 | newly logged | controller | wrong-result | 2026-10-01T15:49:05Z | 2026-10-01T15:49:05Z | 1 |
|
|
|
bug-1907: harness setpend and jobrun cannot report not-found: the controller acks status 0 first
Description
Observed: Found by code reading, no failing run captured. Both controller handlers reply before looking the job up:
src/controller/job.c:2246 handle_jobdispatch: init_reply_by_req(); reply.status = 0; xce_reply(...) /* then the work */
src/controller/job.c:3869 do_set_preason: init_reply_by_req(); reply.status = 0; xce_reply(...) /* then the work */
So harness jobrun -j <id> and setpend -j <id> succeed for a job (or array element) that does not exist.
Expected: like the other single-job commands, jobrun/setpend on an unknown job ID report "not found" (job-array-one-based-index Requirements 4.7 and 5.13).
Impact: wrong result: a test script that targets a wrong element (e.g. $jobid[0] on a new array) passes silently instead of failing.
Found by: review (job-array-one-based-index task 4.3 implementation notes and feature validation, 2026-10-01)
Environment
- OS: no /etc/os-release; Docker container; NixOS kernel; kernel Linux 6.18.33 x86_64
- libc: glibc 2.42-47 (interpreter /nix/store/wb6rhpznjfczwlwx23zmdrrw74bayxw4-glibc-2.42-47/lib/ld-linux-x86-64.so.2)
- Toolchain: gcc (GCC) 15.2.0, meson 1.9.1
- Build: asan (src/build.jai)
- Code: scheduler-framework @ efff6b65-dirty
- Deployment: any (controller request handling)
Reproduction
- Start a controller (xce-deploy-ha) and run
xce_testagainst it. jobrun -j 0-0-1-5(an ID that was never submitted) andsetpendwith-j 0-0-1-5: both report success (expected from the code; not run).- Compare
jobkill -j 0-0-1-5, which reports not found.
- Frequency: deterministic (by code; not run live, 2026-10-01)
- Evidence: not kept (code references above)
Root cause
TODO: required for fixed/partial
Fix
TODO: required for fixed/partial
Verification
- Test: TODO: name + file; RED before the fix, GREEN after
- Suites: TODO: suite results and build profile
- Live: TODO: soak/deploy run, or n/a and why
References
- Related: none