[openstack-dev] How to make a change in openstack/common
Day, Phil
philip.day at hp.com
Sun Feb 10 21:43:09 UTC 2013
Hi Folks,
I've been tracking down a bug in Nova: https://bugs.launchpad.net/nova/+bug/1118608, and have determined that in part its due to what seems to be an arbitrary recursion limit in common/jsonutils/to-primitive:
The query that is breaking this is security_group_rule_get_by_security_group, which returns a set of rules, which can have the structure:
rule -> grantee_group -> Instance -> Instance_type
The current version of to_primitive fails to encode the instance_type, which leads to an exception in the network/api layer. As a quick hack, increasing the limit to 4 works in DevStack.
It seems to me that the cleanest fix would be to add "max_depth=3" as an extra parameter to to_primitive, and then pass it through each recursion. I could then provide a different value for just this one call from Nova.
However this is my first time venturing into changing openstack/common - so I'd appreciate some pointers on how to start. I'm assuming that I start by pushing the change for review against https://github.com/openstack/oslo-incubator - but it's not clear to me what I then need to do before I can get that change into Nova so I can add the extra parameter to the call from conductor/manager.
Any pointers from someone who's been down this route already please ?
Thanks
Phil
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20130210/c3e37b14/attachment.html>
More information about the OpenStack-dev
mailing list