Debian Patches
Status for nova/2:31.0.0-6
Patch | Description | Author | Forwarded | Bugs | Origin | Last update |
---|---|---|---|---|---|---|
Install-missed-files.patch | Install missed files diff --git a/MANIFEST.in b/MANIFEST.in new file mode 100644 index 0000000..cf3032d |
Thomas Goirand <zigo@debian.org> | not-needed | 2021-09-28 | ||
remove-svg-converter-from-doc-conf.py.patch | Remove sphinxcontrib.rsvgconverter from doc conf.py =================================================================== |
Thomas Goirand <zigo@debian.org> | not-needed | 2019-09-28 | ||
Add-a-healtcheck-url.patch | [PATCH] Add a /healthcheck URL This is useful for operators to configure HAProxy and for monitoring. |
Thomas Goirand <zigo@debian.org> | no | 2020-04-30 | ||
fix-exception.NovaException.patch | Fix exception.NovaException =================================================================== |
Thomas Goirand <zigo@debian.org> | no | 2024-11-19 | ||
Add-context-switch-chance-to-other-thread-during-get_available_resources.patch | Add context switch chance to other thread during get_available_resources The get_available_resources method checks host's resource usage by connecting libvirt. The libvirt connection uses libvirt python bindings and the connection handling is implemented in C lang. So the eventlet greenthread can't notice the network connection and doesn't trigger thread context switch while the nova-compute connects to the libvirt. If one hypervisor has over 50 or more instances and libvirt is slow any reason, the no context switch situation causes nova-compute's status down and some other failure since other tasks have no chance to work. . This commit adds greenthread.sleep(0) in the middle of for-loop section which is the long running no-context switch section. This sleep(0) gives other tasks to work even though the resource check task takes long time. The force context switch can prevent lack of any heartbeat operation. =================================================================== |
Masahito Muroi <masahito.muroi@linecorp.com> | yes | upstream | upstream, https://review.opendev.org/c/openstack/nova/+/938215 | 2024-12-27 |
Fix-neutron-client-dict-grabbing.patch | Fix neutron client dict grabbing Due to a bug in python3.13 [1] the following code will leads to an emptied dict by the GC even though we hold a reference to the dict. . import gc . class A: . def __init__(self, client): self.__dict__ = client.__dict__ self.client = client . class B: def __init__(self): self.test_attr = "foo" . a = A(B()) print(a.__dict__) print(a.client.__dict__) gc.collect() print("## After gc.collect()") print(a.__dict__) print(a.client.__dict__) . # Output with Python 13 {'test_attr': 'foo', 'client': <__main__.B object at 0x73ea355a8590>} {'test_attr': 'foo', 'client': <__main__.B object at 0x73ea355a8590>} ## After gc.collect() {'test_attr': 'foo', 'client': <__main__.B object at 0x73ea355a8590>} {} . # Output with Python 12 {'test_attr': 'foo', 'client': <__main__.B object at 0x79c86f355400>} {'test_attr': 'foo', 'client': <__main__.B object at 0x79c86f355400>} ## After gc.collect() {'test_attr': 'foo', 'client': <__main__.B object at 0x79c86f355400>} {'test_attr': 'foo', 'client': <__main__.B object at 0x79c86f355400> . Our neutron client has this kind of code and therefore failing in python3.13. This patch adds __getattr__ instead of trying to hold a direct reference to the __dict__. This seems to work around the problem. . [1] https://github.com/python/cpython/issues/130327 diff --git a/nova/network/neutron.py b/nova/network/neutron.py index f24177d..76c8a68f 100644 |
Balazs Gibizer <gibi@redhat.com> | yes | upstream | upstream, https://review.opendev.org/c/openstack/nova/+/952966 | 2025-06-20 |
All known versions for source package 'nova'
- 2:31.0.0-7 (sid, forky)
- 2:31.0.0-6 (trixie)
- 2:26.2.2-1~deb12u3 (bookworm-security, bookworm)