1
0
Fork 0
mirror of https://github.com/retspen/webvirtcloud synced 2026-11-08 11:16:47 +00:00
webvirtcloud/computes
catborise addc7ccfcb fix(computes): a VM moved between computes keeps its owners on PostgreSQL
Two computes decide the owners of the same UUID: the one the VM left
buries them in a tombstone (or a compute delete does), the one it went
to restores them. On PostgreSQL the two ran at once: the restore still
saw the old row of the uncommitted bury, skipped, and the VM ended up
without owners while the tombstone stayed. SQLite was never affected:
its IMMEDIATE transactions take the write lock at the start.

The reconcile and the compute delete now take one transaction-level
advisory lock (pg_advisory_xact_lock) when their database step starts,
so ownership decisions run one after another on PostgreSQL as they do
on SQLite. Reading libvirt stays outside the lock.
2026-10-23 15:31:04 +03:00
..
api feat(logs): admin changes and logins are recorded on the Logs page 2026-10-23 10:30:48 +03:00
migrations fix(computes): a compute's hostname and login cannot inject a connection URI or ssh option 2026-10-06 22:10:19 +03:00
templates fix(templates): forms and detail lists fit a phone screen 2026-10-21 13:19:14 +03:00
tests fix(computes): a VM moved between computes keeps its owners on PostgreSQL 2026-10-23 15:31:04 +03:00
__init__.py Initial commit 2015-02-27 10:53:51 +02:00
apps.py fix: track migrations; installs apply them instead of generating them 2026-10-04 01:08:11 +03:00
forms.py feat(computes): a compute names the address migrations reach it on 2026-10-06 15:05:40 +03:00
models.py fix(computes): a VM moved between computes keeps its owners on PostgreSQL 2026-10-23 15:31:04 +03:00
urls.py refactor(computes): drop the unused domain capabilities endpoint 2026-10-21 09:01:25 +03:00
utils.py fix(computes): a VM moved between computes keeps its owners on PostgreSQL 2026-10-23 15:31:04 +03:00
validators.py fix(computes): a compute's hostname and login cannot inject a connection URI or ssh option 2026-10-06 22:10:19 +03:00
views.py feat(logs): admin changes and logins are recorded on the Logs page 2026-10-23 10:30:48 +03:00