config reserved_huge_pages, nova-compute start failed

Bug #1588305 reported by Charlotte Han
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
High
Sean Dague

Bug Description

I set this value in nova.conf
reserved_huge_pages = node=0,size=2048,count=4

nova-compute restart failed.

Log is as follow:

2016-06-02 18:56:04.521 CRITICAL nova [req-e9dd76d9-4a4b-4571-bb88-78d751f74274 None None] TypeError: value_type must be callable

2016-06-02 18:56:04.521 TRACE nova Traceback (most recent call last):
2016-06-02 18:56:04.521 TRACE nova File "/usr/bin/nova-compute", line 10, in <module>
2016-06-02 18:56:04.521 TRACE nova sys.exit(main())
2016-06-02 18:56:04.521 TRACE nova File "/opt/stack/nova/nova/cmd/compute.py", line 76, in main
2016-06-02 18:56:04.521 TRACE nova service.wait()
2016-06-02 18:56:04.521 TRACE nova File "/opt/stack/nova/nova/service.py", line 491, in wait
2016-06-02 18:56:04.521 TRACE nova _launcher.wait()
2016-06-02 18:56:04.521 TRACE nova File "/usr/lib/python2.7/site-packages/oslo_service/service.py", line 309, in wait
2016-06-02 18:56:04.521 TRACE nova status, signo = self._wait_for_exit_or_signal()
2016-06-02 18:56:04.521 TRACE nova File "/usr/lib/python2.7/site-packages/oslo_service/service.py", line 284, in _wait_for_exit_or_signal
2016-06-02 18:56:04.521 TRACE nova self.conf.log_opt_values(LOG, logging.DEBUG)
2016-06-02 18:56:04.521 TRACE nova File "/usr/lib/python2.7/site-packages/oslo_config/cfg.py", line 2525, in log_opt_values
2016-06-02 18:56:04.521 TRACE nova _sanitize(opt, getattr(group_attr, opt_name)))
2016-06-02 18:56:04.521 TRACE nova File "/usr/lib/python2.7/site-packages/oslo_config/cfg.py", line 2946, in __getattr__
2016-06-02 18:56:04.521 TRACE nova return self._conf._get(name, self._group)
2016-06-02 18:56:04.521 TRACE nova File "/usr/lib/python2.7/site-packages/oslo_config/cfg.py", line 2567, in _get
2016-06-02 18:56:04.521 TRACE nova value = self._do_get(name, group, namespace)
2016-06-02 18:56:04.521 TRACE nova File "/usr/lib/python2.7/site-packages/oslo_config/cfg.py", line 2604, in _do_get
2016-06-02 18:56:04.521 TRACE nova return convert(opt._get_from_namespace(namespace, group_name))
2016-06-02 18:56:04.521 TRACE nova File "/usr/lib/python2.7/site-packages/oslo_config/cfg.py", line 2595, in convert
2016-06-02 18:56:04.521 TRACE nova self._substitute(value, group, namespace), opt)
2016-06-02 18:56:04.521 TRACE nova File "/usr/lib/python2.7/site-packages/oslo_config/cfg.py", line 2671, in _convert_value
2016-06-02 18:56:04.521 TRACE nova return [opt.type(v) for v in value]
2016-06-02 18:56:04.521 TRACE nova File "/usr/lib/python2.7/site-packages/oslo_config/types.py", line 478, in __init__
2016-06-02 18:56:04.521 TRACE nova raise TypeError('value_type must be callable')
2016-06-02 18:56:04.521 TRACE nova TypeError: value_type must be callable
2016-06-02 18:56:04.521 TRACE nova

Charlotte Han (hanrong)
Changed in nova:
assignee: nobody → Charlotte Han (hanrong)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to nova (master)

Fix proposed to branch: master
Review: https://review.openstack.org/324379

Changed in nova:
status: New → In Progress
Charlotte Han (hanrong)
Changed in nova:
importance: Undecided → High
Changed in nova:
assignee: Charlotte Han (hanrong) → Sean Dague (sdague)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (master)

Reviewed: https://review.openstack.org/324379
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=8093b764a9430a4e1c8cf2d73068f08117fec90e
Submitter: Jenkins
Branch: master

commit 8093b764a9430a4e1c8cf2d73068f08117fec90e
Author: zte-hanrong <email address hidden>
Date: Thu Jun 2 19:23:46 2016 +0800

    Fix nova-compute start failed when reserved_huge_pages has value.

    The problem is due to this change:
    https://review.openstack.org/#/c/292499/20/nova/conf/virt.py

    The code of item_type=types.Dict is not correct, modfiy by
    item_type=types.Dict().

    Modify the usage discription of config of reserved_huge_pages.
    Usage of oslo_config.types.Dict is key:value pairs separated by
    commas.

    Add unit test because this is a complicated option that might not work
    like people expect.

    Closes-Bug:#1588305
    Change-Id: I06490866f24617cf99764ede73a1938c2d7b7b5c

Changed in nova:
status: In Progress → Fix Released
Revision history for this message
Doug Hellmann (doug-hellmann) wrote : Fix included in openstack/nova 14.0.0.0b2

This issue was fixed in the openstack/nova 14.0.0.0b2 development milestone.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.