[us-commits] [ehb54/us3lims_gridctl] c50e86: jobmonitor: finalize COMPLETE jobs without relying...
emre brookes
noreply at github.com
Thu Jul 16 09:58:26 MDT 2026
Branch: refs/heads/ehb54-issue-969
Home: https://github.com/ehb54/us3lims_gridctl
Commit: c50e86c1a89d96fa8bf2522f1420f903090a8974
https://github.com/ehb54/us3lims_gridctl/commit/c50e86c1a89d96fa8bf2522f1420f903090a8974
Author: ehb54 <brookes at uthscsa.edu>
Date: 2026-07-16 (Thu, 16 Jul 2026)
Changed paths:
M jobmonitor/cleanup.php
M jobmonitor/cleanup_gfac.php
M jobmonitor/gridctl.php
Log Message:
-----------
jobmonitor: finalize COMPLETE jobs without relying on UDP 'Finished'
check_job()'s COMPLETE case exited the per-job monitor even when
gfac_cleanup() returned 0 ("not yet finalizable, retry later"), which
orphaned the job until a manual uslims_jobs.php --restart. Separately, the
finalize fallback compared time() to strtotime(queue_messages.time), so a
timezone/clock skew (observed ~7h at zentriforce) made the delta negative
and the fallback never fired.
- check_job() COMPLETE case now retries (returns false, keeps polling) when
complete() returns 0; stops on 1 (finalized) or -1 (terminal).
- cleanup()/complete() propagate the gfac_cleanup()/aira_cleanup() result;
contract: -1 terminal, 0 retry, 1 finalized.
- gfac_cleanup() times the finalize grace on the jobmonitor's own epoch clock
via a per-job marker file ($lock_dir/complete_seen), immune to tz/clock
skew, with a hard ceiling. Grace/ceiling read from
$global_complete_grace_seconds / $global_complete_max_seconds (default
600 / 21600) when defined.
Refs ehb54/ultrascan-tickets#969
Co-Authored-By: Claude Fable 5 <noreply at anthropic.com>
To unsubscribe from these emails, change your notification settings at https://github.com/ehb54/us3lims_gridctl/settings/notifications
More information about the us-commits
mailing list