RuntimeError during calling log_opts_values
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Invalid
|
Undecided
|
Unassigned | ||
oslo.config |
Fix Released
|
Undecided
|
Stephen Finucane |
Bug Description
During starting up nova-compute service, we are hit by the following error message
+ sed -i s/HOST_IP// /tmp/logging-
+ exec nova-compute --config-file /etc/nova/nova.conf --config-file /tmp/pod-
2019-12-13 06:53:09.556 29036 WARNING oslo_config.cfg [-] Deprecated: Option "use_neutron" from group "DEFAULT" is deprecated for removal (
nova-network is deprecated, as are any related configuration options.
). Its value may be silently ignored in the future.
2019-12-13 06:53:12.000 29036 INFO nova.compute.rpcapi [req-eec76cc3-
2019-12-13 06:53:12.000 29036 INFO nova.compute.rpcapi [req-eec76cc3-
2019-12-13 06:53:12.029 29036 INFO nova.virt.driver [req-eec76cc3-
2019-12-13 06:53:12.029 29036 INFO nova.virt.driver [req-eec76cc3-
2019-12-13 06:53:22.064 29036 WARNING oslo_config.cfg [req-eec76cc3-
nova-network is deprecated, as are any related configuration options.
). Its value may be silently ignored in the future.
2019-12-13 06:53:22.192 29036 WARNING os_brick.
2019-12-13 06:53:22.409 29036 WARNING oslo_config.cfg [req-eec76cc3-
nova-network is deprecated, as are any related configuration options.
). Its value may be silently ignored in the future.
2019-12-13 06:53:22.414 29036 WARNING oslo_config.cfg [req-eec76cc3-
nova-network is deprecated, as are any related configuration options.
). Its value may be silently ignored in the future.
2019-12-13 06:53:22.440 29036 INFO nova.service [-] Starting compute node (version 18.0.0)
2019-12-13 06:53:22.570 29036 WARNING oslo_config.cfg [req-eec76cc3-
2019-12-13 06:53:22.440 29036 INFO nova.service [-] Starting compute node (version 18.0.0)
2019-12-13 06:53:22.594 29036 WARNING oslo_config.cfg [req-eec76cc3-
2019-12-13 06:53:22.911 29036 CRITICAL nova [req-eec76cc3-
2019-12-13 06:53:22.911 29036 ERROR nova Traceback (most recent call last):
2019-12-13 06:53:22.911 29036 ERROR nova File "/var/lib/
2019-12-13 06:53:22.911 29036 ERROR nova sys.exit(main())
2019-12-13 06:53:22.911 29036 ERROR nova File "/var/lib/
2019-12-13 06:53:22.911 29036 ERROR nova service.wait()
2019-12-13 06:53:22.911 29036 ERROR nova File "/var/lib/
2019-12-13 06:53:22.911 29036 ERROR nova _launcher.wait()
2019-12-13 06:53:22.911 29036 ERROR nova File "/var/lib/
2019-12-13 06:53:22.911 29036 ERROR nova status, signo = self._wait_
2019-12-13 06:53:22.911 29036 ERROR nova File "/var/lib/
2019-12-13 06:53:22.911 29036 ERROR nova self.conf.
2019-12-13 06:53:22.911 29036 ERROR nova File "/var/lib/
2019-12-13 06:53:22.911 29036 ERROR nova for group_name in self._groups:
2019-12-13 06:53:22.911 29036 ERROR nova RuntimeError: dictionary changed size during iteration
2019-12-13 06:53:22.911 29036 ERROR nova
2019-12-13 06:53:22.911 29036 CRITICAL nova [req-eec76cc3-
2019-12-13 06:53:22.911 29036 ERROR nova Traceback (most recent call last):
2019-12-13 06:53:22.911 29036 ERROR nova File "/var/lib/
2019-12-13 06:53:22.911 29036 ERROR nova sys.exit(main())
2019-12-13 06:53:22.911 29036 ERROR nova File "/var/lib/
2019-12-13 06:53:22.911 29036 ERROR nova service.wait()
2019-12-13 06:53:22.911 29036 ERROR nova File "/var/lib/
2019-12-13 06:53:22.911 29036 ERROR nova _launcher.wait()
2019-12-13 06:53:22.911 29036 ERROR nova File "/var/lib/
2019-12-13 06:53:22.911 29036 ERROR nova status, signo = self._wait_
2019-12-13 06:53:22.911 29036 ERROR nova File "/var/lib/
2019-12-13 06:53:22.911 29036 ERROR nova self.conf.
2019-12-13 06:53:22.911 29036 ERROR nova File "/var/lib/
2019-12-13 06:53:22.911 29036 ERROR nova for group_name in self._groups:
2019-12-13 06:53:22.911 29036 ERROR nova RuntimeError: dictionary changed size during iteration
Looks like cfg._groups is changing while iterating through dictionary object.
After some debugging, I believe the problem is introduced by this commit https:/
Currently the workaround is to disable `log_options`, and I think the default value should also be False as well.
Changed in nova: | |
status: | New → Invalid |
Does this happen every time and is 100% reproducible or is it intermittent somehow?