)]}'
{"nova/network/model.py":[{"author":{"_account_id":1030,"name":"Chris Behrens","email":"cbehrens@codestud.com","username":"cbehrens"},"change_message_id":"e19afb524b30d0a9d4546c2ce51b6dc7892ae1b9","unresolved":false,"context_lines":[{"line_number":382,"context_line":"                         \u0027broadcast\u0027: str(subnet_v4.as_netaddr().broadcast),"},{"line_number":383,"context_line":"                         \u0027mac\u0027: vif[\u0027address\u0027],"},{"line_number":384,"context_line":"                         \u0027vif_type\u0027: vif[\u0027type\u0027],"},{"line_number":385,"context_line":"                         \u0027vif_devname\u0027: vif[\u0027devname\u0027],"},{"line_number":386,"context_line":"                         \u0027vif_uuid\u0027: vif[\u0027id\u0027],"},{"line_number":387,"context_line":"                         \u0027rxtx_cap\u0027: vif.get_meta(\u0027rxtx_cap\u0027, 0),"},{"line_number":388,"context_line":"                         \u0027dns\u0027: [get_ip(ip) for ip in subnet_v4[\u0027dns\u0027]],"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAM3%2F%2FmMk%3D","line":385,"updated":"2013-01-14 17:41:47.000000000","message":"Isn\u0027t it possible when hydrating the old-style without \u0027devname\u0027, we\u0027ll get an exception here?  Should this not be vif.get(\u0027devname\u0027) ?   This can happen because: 1) not all services are upgraded yet.  2) One uses instance[\u0027info_cache\u0027][\u0027network_info\u0027] that was put in the DB prior to this new code.","commit_id":"99de167e9fbed14c4241254dc316391cad3a09b3"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"783ff86a594990ab0a8fde7344e21dbabc2883de","unresolved":false,"context_lines":[{"line_number":382,"context_line":"                         \u0027broadcast\u0027: str(subnet_v4.as_netaddr().broadcast),"},{"line_number":383,"context_line":"                         \u0027mac\u0027: vif[\u0027address\u0027],"},{"line_number":384,"context_line":"                         \u0027vif_type\u0027: vif[\u0027type\u0027],"},{"line_number":385,"context_line":"                         \u0027vif_devname\u0027: vif[\u0027devname\u0027],"},{"line_number":386,"context_line":"                         \u0027vif_uuid\u0027: vif[\u0027id\u0027],"},{"line_number":387,"context_line":"                         \u0027rxtx_cap\u0027: vif.get_meta(\u0027rxtx_cap\u0027, 0),"},{"line_number":388,"context_line":"                         \u0027dns\u0027: [get_ip(ip) for ip in subnet_v4[\u0027dns\u0027]],"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAM3%2F%2Fk84%3D","line":385,"in_reply_to":"AAAAM3%2F%2FmMk%3D","updated":"2013-01-15 09:57:55.000000000","message":"Ok, i\u0027ll update it","commit_id":"99de167e9fbed14c4241254dc316391cad3a09b3"}],"nova/virt/libvirt/vif.py":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"c4862be725cabdd5db7fdda14037d2725c78d4a9","unresolved":false,"context_lines":[{"line_number":49,"context_line":"    def get_vif_devname(self, mapping):"},{"line_number":50,"context_line":"        if \u0027vif_devname\u0027 in mapping:"},{"line_number":51,"context_line":"            return mapping[\u0027vif_devname\u0027]"},{"line_number":52,"context_line":"        return (\"nic\" + mapping[\u0027vif_uuid\u0027])[:LINUX_DEV_LEN]"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    def get_config(self, instance, network, mapping):"},{"line_number":55,"context_line":"        conf \u003d vconfig.LibvirtConfigGuestInterface()"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAM3%2F%2FvsU%3D","line":52,"updated":"2013-01-07 21:53:03.000000000","message":"this may be problematic in some quantum plugins - some agents may make use of the tap prefix for their logic","commit_id":"61ff97f9aaf87f953e78db1561e183671264cb6b"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"42c21684ee82c39491baeb2ae33e3653af83e468","unresolved":false,"context_lines":[{"line_number":49,"context_line":"    def get_vif_devname(self, mapping):"},{"line_number":50,"context_line":"        if \u0027vif_devname\u0027 in mapping:"},{"line_number":51,"context_line":"            return mapping[\u0027vif_devname\u0027]"},{"line_number":52,"context_line":"        return (\"nic\" + mapping[\u0027vif_uuid\u0027])[:LINUX_DEV_LEN]"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    def get_config(self, instance, network, mapping):"},{"line_number":55,"context_line":"        conf \u003d vconfig.LibvirtConfigGuestInterface()"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAM3%2F%2Fvr0%3D","line":52,"in_reply_to":"AAAAM3%2F%2FvsU%3D","updated":"2013-01-07 21:59:07.000000000","message":"If the quantum plugin cares about the NIC name, then it can fill in the \u0027mapping[\u0027vif_devname\u0027]\u0027 field as it desires. See the change to quantum_v2/api.py for what I did for Quantum by default:\n\nhttps://review.openstack.org/#/c/19120/","commit_id":"61ff97f9aaf87f953e78db1561e183671264cb6b"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"3663860c1fa8435e9ae1cda3cb8c4d3b66575df1","unresolved":false,"context_lines":[{"line_number":41,"context_line":"CONF.import_opt(\u0027libvirt_type\u0027, \u0027nova.virt.libvirt.driver\u0027)"},{"line_number":42,"context_line":"CONF.import_opt(\u0027use_ipv6\u0027, \u0027nova.netconf\u0027)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"LINUX_DEV_LEN \u003d 14"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"class LibvirtBaseVIFDriver(object):"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAM3%2F%2Fn4M%3D","line":44,"updated":"2013-01-13 16:45:21.000000000","message":"In network.model VIF_NAME_LEN and BRIDGE_NAME_LEN are defined, and LINUX_DEV_LEN is defined here. Isn\u0027t it good to remove one of them for consistency? (though it may not be a part of this patch)","commit_id":"0e3258233bd19db0247b4663e1544ed510a4f975"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"2aac34b52ee0b47e31988aefb9e01d879ce0a88e","unresolved":false,"context_lines":[{"line_number":41,"context_line":"CONF.import_opt(\u0027libvirt_type\u0027, \u0027nova.virt.libvirt.driver\u0027)"},{"line_number":42,"context_line":"CONF.import_opt(\u0027use_ipv6\u0027, \u0027nova.netconf\u0027)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"LINUX_DEV_LEN \u003d 14"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"class LibvirtBaseVIFDriver(object):"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAM3%2F%2FmxU%3D","line":44,"in_reply_to":"AAAAM3%2F%2Fn4M%3D","updated":"2013-01-14 12:42:38.000000000","message":"Yes, could make this module just reference net_model.VIF_NAME_LEN","commit_id":"0e3258233bd19db0247b4663e1544ed510a4f975"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"5e56323fa36840ec63d4030eb125b2e6090a39b8","unresolved":false,"context_lines":[{"line_number":208,"context_line":"    \"\"\""},{"line_number":209,"context_line":""},{"line_number":210,"context_line":"    def get_br_name(self, iface_id):"},{"line_number":211,"context_line":"        return (\"qbr\" + iface_id)[:network_model.VIF_NAME_LEN]"},{"line_number":212,"context_line":""},{"line_number":213,"context_line":"    def get_veth_pair_names(self, iface_id):"},{"line_number":214,"context_line":"        return ((\"qvb%s\" % iface_id)[:network_model.VIF_NAME_LEN],"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAM3%2F%2Fme0%3D","line":211,"updated":"2013-01-14 15:19:10.000000000","message":"network_model.BRIDGE_NAME_LEN since qbr is a linux bridge\n\nBRIDGE_NAME_LEN and VIF_NAME_LEN are both linux network device and have the same limit in length. \nIntegrating them into one parameter is an alternative.\n\nAs you introduced BRIDGE_NAME_LEN  in the recent patch, you may want to distinguish them. Either looks good to me.","commit_id":"99de167e9fbed14c4241254dc316391cad3a09b3"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"783ff86a594990ab0a8fde7344e21dbabc2883de","unresolved":false,"context_lines":[{"line_number":208,"context_line":"    \"\"\""},{"line_number":209,"context_line":""},{"line_number":210,"context_line":"    def get_br_name(self, iface_id):"},{"line_number":211,"context_line":"        return (\"qbr\" + iface_id)[:network_model.VIF_NAME_LEN]"},{"line_number":212,"context_line":""},{"line_number":213,"context_line":"    def get_veth_pair_names(self, iface_id):"},{"line_number":214,"context_line":"        return ((\"qvb%s\" % iface_id)[:network_model.VIF_NAME_LEN],"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAM3%2F%2Fk80%3D","line":211,"in_reply_to":"AAAAM3%2F%2Fme0%3D","updated":"2013-01-15 09:57:55.000000000","message":"Hmm, ok lets not bother having 2 params. I\u0027ll make one single NIC_NAME_LEN constant","commit_id":"99de167e9fbed14c4241254dc316391cad3a09b3"},{"author":{"_account_id":1030,"name":"Chris Behrens","email":"cbehrens@codestud.com","username":"cbehrens"},"change_message_id":"ef91c9d9859bbba676f860d79879f652adf6e257","unresolved":false,"context_lines":[{"line_number":46,"context_line":"class LibvirtBaseVIFDriver(object):"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"    def get_vif_devname(self, mapping):"},{"line_number":49,"context_line":"        if \u0027vif_devname\u0027 in mapping:"},{"line_number":50,"context_line":"            return mapping[\u0027vif_devname\u0027]"},{"line_number":51,"context_line":"        return (\"nic\" + mapping[\u0027vif_uuid\u0027])[:network_model.NIC_NAME_LEN]"},{"line_number":52,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAM3%2F%2Fkhc%3D","line":49,"updated":"2013-01-15 17:38:00.000000000","message":"I think vif_devname could be None in the old-style model at least.  Need to account for that here?","commit_id":"fa96bbf489fac8d16104d51c393d3d7777e0c65c"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"18c9c0d1d3e5ae8f507edcbbfefd31e7b2f0d00c","unresolved":false,"context_lines":[{"line_number":46,"context_line":"class LibvirtBaseVIFDriver(object):"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"    def get_vif_devname(self, mapping):"},{"line_number":49,"context_line":"        if \u0027vif_devname\u0027 in mapping:"},{"line_number":50,"context_line":"            return mapping[\u0027vif_devname\u0027]"},{"line_number":51,"context_line":"        return (\"nic\" + mapping[\u0027vif_uuid\u0027])[:network_model.NIC_NAME_LEN]"},{"line_number":52,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAM3%2F%2FkgI%3D","line":49,"in_reply_to":"AAAAM3%2F%2Fkhc%3D","updated":"2013-01-15 17:55:55.000000000","message":"I believe the line below provide sufficient backwards compatibility for our needs","commit_id":"fa96bbf489fac8d16104d51c393d3d7777e0c65c"}]}
