1
0
Fork 0
mirror of https://github.com/retspen/webvirtcloud synced 2026-11-08 11:16:47 +00:00
webvirtcloud/instances
catborise 2d0f41ee57 perf(instances): VM lists read each host once, not three calls a VM
A VM list row showed the VM's state, memory, vCPUs and title, read
through the VM's own connection object: a lookup by UUID, virDomainGetInfo
and the live XML, one after the other for every VM on the page.

The lists (Instances, grouped or not, and a compute's VMs) now read each
host once: the states in one getAllDomainStats call (the state group
only, as the lists' poll; no other group, so a VM busy in the QEMU
monitor holds nothing up) and the memory, vCPUs and title from each
VM's live XML, which the title already read. Checked on QEMU against
virDomainGetInfo for running, paused and shut-off VMs: the same values.

A VM gone from its host, or a host that cannot be read or fails its
listing, shows its VMs unknown as before. Only the grouped list, a
superuser's, prefetches every host's VMs and owners.
2026-11-04 20:54:11 +03:00
..
api fix(instances): Refresh ISO list says which pools it could not read 2026-11-02 16:11:15 +03:00
fixtures Instances overhaul 2020-07-13 15:33:09 +06:00
migrations fix(admin): Removed VMs shows the host a VM left and confirms a delete 2026-10-26 11:48:40 +03:00
templates perf(instances): VM lists read each host once, not three calls a VM 2026-11-04 20:54:11 +03:00
templatetags feat(instances): the VM list on Bootstrap's pills, badges and menus, its actions by the user's rights 2026-10-28 13:55:46 +03:00
tests perf(instances): VM lists read each host once, not three calls a VM 2026-11-04 20:54:11 +03:00
__init__.py Fixe migrations for new deployments 2020-05-28 18:19:25 +06:00
addresses.py feat(webvirtcloud): a request waiting on a host holds one thread, not a worker 2026-11-02 21:19:01 +03:00
apps.py format python code with black 2022-11-02 08:54:35 +03:00
forms.py feat(instances): a VM's console settings in two cards, with a password action 2026-10-30 14:55:57 +03:00
jobs.py feat(locale): quota refusals and connection errors show in the reader's language 2026-11-03 18:36:02 +03:00
models.py feat(instances): the Resize tab shows how much a VM has within its maximum 2026-11-03 23:07:59 +03:00
report.py fix(admin): the Logs download survives any row and stops at a size it can build 2026-10-26 10:12:53 +03:00
states.py feat(instances): the Power tab shows the VM's state and where each action takes it 2026-11-03 19:22:52 +03:00
urls.py perf(instances): the VM page lists ISO images without reading every pool 2026-11-02 13:58:51 +03:00
utils.py perf(instances): VM lists read each host once, not three calls a VM 2026-11-04 20:54:11 +03:00
views.py perf(instances): VM lists read each host once, not three calls a VM 2026-11-04 20:54:11 +03:00