Bug 54630 - RuntimeError: dictionary changed size during iteration
RuntimeError: dictionary changed size during iteration
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: Virtualization - UVMM
UCS 4.4
Other Linux
: P5 normal (vote)
: UCS 4.4-8-errata
Assigned To: Philipp Hahn
Erik Damrose
https://git.knut.univention.de/univen...
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2022-04-01 10:36 CEST by Philipp Hahn
Modified: 2022-04-13 15:13 CEST (History)
0 users

See Also:
What kind of report is it?: Bug Report
What type of bug is this?: 5: Major Usability: Impairs usability in key scenarios
Who will be affected by this bug?: 2: Will only affect a few installed domains
How will those affected feel about the bug?: 5: Blocking further progress on the daily work
User Pain: 0.286
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:
hahn: Patch_Available+


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Philipp Hahn univentionstaff 2022-04-01 10:36:08 CEST
Restarting UVMM @ laiva failed with multiple
> RuntimeError: dictionary changed size during iteration
Comment 1 Philipp Hahn univentionstaff 2022-04-01 11:30:56 CEST
2022-03-10 10:55:03,648 - uvmmd.unix - ERROR - [181806] Exception: dictionary changed size during iteration
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/univention/uvmm/unix.py", line 148, in handle_command
    res = cmd(self, command)
  File "/usr/lib/python2.7/dist-packages/univention/uvmm/commands.py", line 366, in DOMAIN_LIST
    domains = node.domain_list(request.uri, request.pattern)
  File "/usr/lib/python2.7/dist-packages/univention/uvmm/node.py", line 1931, in domain_list
    domains[node.pd.uri] = node.domain_list(pattern)
  File "/usr/lib/python2.7/dist-packages/univention/uvmm/node.py", line 1251, in domain_list
    for dom in self.domains:
RuntimeError: dictionary changed size during iteration
Comment 2 Philipp Hahn univentionstaff 2022-04-08 11:51:30 CEST
Package: univention-virtual-machine-manager-daemon
Version: 8.0.1-17A~4.4.0.202204072110
Branch: ucs_4.4-0
Scope: errata4.4-8

[4.4-8] 3c3c50ce85 Bug #49297: univention-virtual-machine-manager-daemon 8.0.1-17A~4.4.0.202204072110
 doc/errata/staging/univention-virtual-machine-manager-daemon.yaml | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

[4.4-8] 58925be1d9 doc[UVMM]: Update changelog
 doc/errata/staging/univention-virtual-machine-manager-daemon.yaml         | 11 +++++++++++
 virtualization/univention-virtual-machine-manager-daemon/debian/changelog |  7 +++++++
 2 files changed, 18 insertions(+)

[4.4-8] af1ecc5abd fix[uvmm]: atomic update of VMs
 virtualization/univention-virtual-machine-manager-daemon/src/univention/uvmm/node.py | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

[4.4-8] 02e6b391aa refactor[uvmm]: Use set instead of list
 virtualization/univention-virtual-machine-manager-daemon/src/univention/uvmm/node.py | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

[4.4-8] b6af3c1c08 fix[uvmm]: atomic iterate over all VMs
 virtualization/univention-virtual-machine-manager-daemon/src/univention/uvmm/node.py | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

QA: Running on `laiva`
Comment 3 Erik Damrose univentionstaff 2022-04-11 17:50:55 CEST
OK: Code Review
OK: Test on laiva
OK: 4.4-9 changelog
OK: 4.4-8 yaml
OK: package available in errata4.4-8, will be released wednesday
OK: package available in 4.4-9

Verified