1
0
Fork 0
mirror of https://github.com/retspen/webvirtcloud synced 2026-11-08 19:26:48 +00:00
webvirtcloud/operations/tests
catborise 6ca65e291a fix(operations): a host that does not answer keeps the job worker going for the others
A job's libvirt call to a host that is up but stuck waits as long as
the host does. Measured with the worker's loop: with two jobs stuck on
one host, the other host's jobs ran but their progress was never read
(both progress threads waited on the stuck host); with four stuck, a
new job of another host stayed queued, every slot taken; cancelling
them took all four control threads, so cancels, recovery and
housekeeping stopped for every host.

Now a host's jobs take at most half of the worker's slots (at least
one; a migration counts on both its hosts), and the next queued job of
another host starts instead. A host has at most one progress read and
one control task (a cancel or a recovery inspection) at a time, and
the control tasks of hosts leave one thread to housekeeping.
2026-11-03 07:23:42 +03:00
..
js feat(operations): the job panel and job pages speak the page's language 2026-11-02 23:33:34 +03:00
__init__.py feat(operations): job, claim and worker lease models 2026-10-14 23:27:57 +03:00
fakes.py fix(operations): a host that does not answer keeps the job worker going for the others 2026-11-03 07:23:42 +03:00
proc_kinds.py test(operations): workers and admissions across processes 2026-10-14 23:27:57 +03:00
test_api.py feat(operations): a job's error and warning show in the reader's language 2026-11-02 23:49:45 +03:00
test_claims.py feat(operations): admit claims atomically; redact secrets 2026-10-14 23:27:57 +03:00
test_conf.py feat(operations): worker concurrency and job retention settings 2026-10-14 23:27:57 +03:00
test_hold.py refactor(computes): the lock helpers take claims instead of file locks 2026-10-14 23:27:57 +03:00
test_kinds.py feat(operations): jobs a request runs 2026-10-16 11:53:59 +03:00
test_models.py feat(operations): job, claim and worker lease models 2026-10-14 23:27:57 +03:00
test_panel_js.py feat(operations): job panel on the VM page 2026-10-14 23:27:57 +03:00
test_processes.py test(operations): a worker a process test cannot stop shows where it is stuck 2026-10-21 12:10:59 +03:00
test_recovery.py fix(operations): a host that does not answer keeps the job worker going for the others 2026-11-03 07:23:42 +03:00
test_redact.py feat(operations): admit claims atomically; redact secrets 2026-10-14 23:27:57 +03:00
test_service.py feat(operations): a job's error and warning show in the reader's language 2026-11-02 23:49:45 +03:00
test_views.py feat(operations): a job's error and warning show in the reader's language 2026-11-02 23:49:45 +03:00
test_worker.py fix(operations): a host that does not answer keeps the job worker going for the others 2026-11-03 07:23:42 +03:00