1
0
Fork 0
mirror of https://github.com/retspen/webvirtcloud synced 2026-11-08 19:26:48 +00:00
webvirtcloud/vrtManager
catborise befd1747df perf(storages): a pool's volumes are read with one libvirt call each
wvmStorage.update_volumes looked each volume up by name three times,
read its info twice and its XML once: six round trips per volume to
the host. It now lists the pool's volumes as objects (listAllVolumes)
and reads each one's XML only (volume_details): name, capacity,
allocation and format are all in it, and libvirt refreshes a volume
for its XML as it does for info(). A pool of N volumes takes 2 + N
calls instead of 2 + 6N; 100 volumes over SSH on a test host read in
about 110 ms instead of 720 ms, with the same values.

- A volume deleted between the listing and its read is left out; any
  other error is raised. Volumes come sorted by name.
- get_volume_details (the API's one volume) reads it the same way.
- Only a refused refresh (a clone running in the pool) is tolerated,
  not any exception.
- The pool page reads its volumes and space only to render itself;
  its actions, which all redirect, no longer read every volume first.
- get_volume_size and get_volume_allocation go: nothing else used them.
2026-10-28 19:34:34 +03:00
..
tests perf(storages): a pool's volumes are read with one libvirt call each 2026-10-28 19:34:34 +03:00
__init__.py Initial commit 2015-02-27 10:53:51 +02:00
connection.py feat(instances): a new VM can get a cloud-init seed with its hostname and SSH keys 2026-10-25 19:57:15 +03:00
create.py feat(instances): a new VM can get a cloud-init seed with its hostname and SSH keys 2026-10-25 19:57:15 +03:00
hostdetails.py feat(computes): the host overview shows its VMs, capacity and load, also when it cannot be reached 2026-10-27 14:51:18 +03:00
instance.py fix(console): a VM with a QEMU websocket port opens through novncd 2026-10-26 21:27:52 +03:00
interface.py fix(interfaces): a new interface never replaces one the host defines 2026-10-26 16:14:32 +03:00
libvirt-ssh fix(vrtManager): libvirt connections open within a time limit 2026-10-05 09:06:52 +03:00
network.py fix(networks): fixed addresses, failed creates and stopped networks behave 2026-10-26 15:36:57 +03:00
nwfilters.py fix(nwfilters): a rule is deleted and added exactly as clicked and entered 2026-10-26 15:36:57 +03:00
rwlock.py fix(vrtManager): modernize rwlock for Python 3.12 compatibility and add tests 2026-09-24 21:49:52 +03:00
storage.py perf(storages): a pool's volumes are read with one libvirt call each 2026-10-28 19:34:34 +03:00
util.py fix(console): the console page judges a TCP/TLS console by the running VM 2026-10-26 23:52:37 +03:00
virtsecrets.py fix: a network, pool or secret a VM needs is not stopped or deleted 2026-10-22 08:34:55 +03:00