)]}'
{"quantum/plugins/nicira/nicira_nvp_plugin/QuantumPlugin.py":[{"author":{"_account_id":1994,"name":"Zhongyue Luo","email":"zhongyue.luo@gmail.com","username":"zyluo"},"change_message_id":"5abb4080dab45bfe551f09949ff055e33b69679f","unresolved":false,"context_lines":[{"line_number":818,"context_line":"                    context.session, segmentation_id, physical_network)"},{"line_number":819,"context_line":"                if binding:"},{"line_number":820,"context_line":"                    raise nvp_exc.NvpL3GwAttInUse(vlan_id\u003dsegmentation_id,"},{"line_number":821,"context_line":"                                                  gw_uuid\u003dphysical_network)"},{"line_number":822,"context_line":"            else:"},{"line_number":823,"context_line":"                binding \u003d nicira_db.get_network_binding_by_vlanid_and_phynet("},{"line_number":824,"context_line":"                    context.session, 0, physical_network)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2BmrE%3D","line":821,"updated":"2013-02-26 01:41:21.000000000","message":"\"gw_uuid\" not aligned with \"vlan_id\"","commit_id":"64cac551e40db249701f18bee5f2412ead881c32"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"unresolved":false,"context_lines":[{"line_number":818,"context_line":"                    context.session, segmentation_id, physical_network)"},{"line_number":819,"context_line":"                if binding:"},{"line_number":820,"context_line":"                    raise nvp_exc.NvpL3GwAttInUse(vlan_id\u003dsegmentation_id,"},{"line_number":821,"context_line":"                                                  gw_uuid\u003dphysical_network)"},{"line_number":822,"context_line":"            else:"},{"line_number":823,"context_line":"                binding \u003d nicira_db.get_network_binding_by_vlanid_and_phynet("},{"line_number":824,"context_line":"                    context.session, 0, physical_network)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2BmoM%3D","line":821,"updated":"2013-02-26 02:02:55.000000000","message":"They are aligned in the patch I pushed.\nGerrit might be not showing the alignment correctly (it happened to me in the past).\n\nPlease checkout the patch locally and let me know if they\u0027re disaligned there too.","commit_id":"64cac551e40db249701f18bee5f2412ead881c32"},{"author":{"_account_id":1994,"name":"Zhongyue Luo","email":"zhongyue.luo@gmail.com","username":"zyluo"},"change_message_id":"5abb4080dab45bfe551f09949ff055e33b69679f","unresolved":false,"context_lines":[{"line_number":818,"context_line":"                    context.session, segmentation_id, physical_network)"},{"line_number":819,"context_line":"                if binding:"},{"line_number":820,"context_line":"                    raise nvp_exc.NvpL3GwAttInUse(vlan_id\u003dsegmentation_id,"},{"line_number":821,"context_line":"                                                  gw_uuid\u003dphysical_network)"},{"line_number":822,"context_line":"            else:"},{"line_number":823,"context_line":"                binding \u003d nicira_db.get_network_binding_by_vlanid_and_phynet("},{"line_number":824,"context_line":"                    context.session, 0, physical_network)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2Bmn0%3D","line":821,"in_reply_to":"AAAAM3%2F%2BmoM%3D","updated":"2013-02-26 02:08:37.000000000","message":"you\u0027re right. it was gerrit only showing these two lines unaligned.","commit_id":"64cac551e40db249701f18bee5f2412ead881c32"},{"author":{"_account_id":1994,"name":"Zhongyue Luo","email":"zhongyue.luo@gmail.com","username":"zyluo"},"change_message_id":"5abb4080dab45bfe551f09949ff055e33b69679f","unresolved":false,"context_lines":[{"line_number":824,"context_line":"                    context.session, 0, physical_network)"},{"line_number":825,"context_line":"                if binding:"},{"line_number":826,"context_line":"                    raise nvp_exc.NvpL3GwAttInUse(vlan_id\u003d0,"},{"line_number":827,"context_line":"                                                  gw_uuid\u003dphysical_network)"},{"line_number":828,"context_line":"        else:"},{"line_number":829,"context_line":"            err_msg \u003d _(\"%(net_type_param)s %(net_type_value)s not \""},{"line_number":830,"context_line":"                        \"supported\") % {\u0027net_type_param\u0027: pnet.NETWORK_TYPE,"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2BmrA%3D","line":827,"updated":"2013-02-26 01:41:21.000000000","message":"ditto","commit_id":"64cac551e40db249701f18bee5f2412ead881c32"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"unresolved":false,"context_lines":[{"line_number":824,"context_line":"                    context.session, 0, physical_network)"},{"line_number":825,"context_line":"                if binding:"},{"line_number":826,"context_line":"                    raise nvp_exc.NvpL3GwAttInUse(vlan_id\u003d0,"},{"line_number":827,"context_line":"                                                  gw_uuid\u003dphysical_network)"},{"line_number":828,"context_line":"        else:"},{"line_number":829,"context_line":"            err_msg \u003d _(\"%(net_type_param)s %(net_type_value)s not \""},{"line_number":830,"context_line":"                        \"supported\") % {\u0027net_type_param\u0027: pnet.NETWORK_TYPE,"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2BmoI%3D","line":827,"in_reply_to":"AAAAM3%2F%2BmrA%3D","updated":"2013-02-26 02:02:55.000000000","message":"idem","commit_id":"64cac551e40db249701f18bee5f2412ead881c32"},{"author":{"_account_id":447,"name":"dan wendlandt","email":"dan@nicira.com","username":"danwent"},"unresolved":false,"context_lines":[{"line_number":78,"context_line":"# Provider network extension - allowed network types for the NVP Plugin"},{"line_number":79,"context_line":"class NetworkTypes:"},{"line_number":80,"context_line":"    \"\"\" Allowed provider network types for the NVP Plugin \"\"\""},{"line_number":81,"context_line":"    L3_EXT \u003d \u0027l3_ext\u0027"},{"line_number":82,"context_line":"    STT \u003d \u0027stt\u0027"},{"line_number":83,"context_line":"    GRE \u003d \u0027gre\u0027"},{"line_number":84,"context_line":"    FLAT \u003d \u0027flat\u0027"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2BlHc%3D","line":81,"updated":"2013-02-26 21:15:37.000000000","message":"is \"ext\" for external?  hopefully not for \"extender\" :)","commit_id":"77eff4245d13930d6c13a53764ba12e5514f3ad1"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"unresolved":false,"context_lines":[{"line_number":78,"context_line":"# Provider network extension - allowed network types for the NVP Plugin"},{"line_number":79,"context_line":"class NetworkTypes:"},{"line_number":80,"context_line":"    \"\"\" Allowed provider network types for the NVP Plugin \"\"\""},{"line_number":81,"context_line":"    L3_EXT \u003d \u0027l3_ext\u0027"},{"line_number":82,"context_line":"    STT \u003d \u0027stt\u0027"},{"line_number":83,"context_line":"    GRE \u003d \u0027gre\u0027"},{"line_number":84,"context_line":"    FLAT \u003d \u0027flat\u0027"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2Bk80%3D","line":81,"in_reply_to":"AAAAM3%2F%2BlHc%3D","updated":"2013-02-26 22:27:36.000000000","message":"It\u0027s external!\nLet me know if you come with a better short name!","commit_id":"77eff4245d13930d6c13a53764ba12e5514f3ad1"},{"author":{"_account_id":447,"name":"dan wendlandt","email":"dan@nicira.com","username":"danwent"},"unresolved":false,"context_lines":[{"line_number":824,"context_line":"                    context.session, 0, physical_network)"},{"line_number":825,"context_line":"                if binding:"},{"line_number":826,"context_line":"                    raise nvp_exc.NvpL3GwAttInUse(vlan_id\u003d0,"},{"line_number":827,"context_line":"                                                  gw_uuid\u003dphysical_network)"},{"line_number":828,"context_line":"        else:"},{"line_number":829,"context_line":"            err_msg \u003d _(\"%(net_type_param)s %(net_type_value)s not \""},{"line_number":830,"context_line":"                        \"supported\") % {\u0027net_type_param\u0027: pnet.NETWORK_TYPE,"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2BlFo%3D","line":827,"updated":"2013-02-26 21:15:37.000000000","message":"is this logic technically required?  That is, is their a problem with creating multiple networks that map to the same GW-service-id and VLAN?  NVP certainly allows multiple routers to be on the same gateway-service + VLAN.  I\u0027m not sure what the use case, but I\u0027m also not sure there\u0027s a requirement that this be unique, so it seems simpler not to require it.","commit_id":"77eff4245d13930d6c13a53764ba12e5514f3ad1"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"unresolved":false,"context_lines":[{"line_number":824,"context_line":"                    context.session, 0, physical_network)"},{"line_number":825,"context_line":"                if binding:"},{"line_number":826,"context_line":"                    raise nvp_exc.NvpL3GwAttInUse(vlan_id\u003d0,"},{"line_number":827,"context_line":"                                                  gw_uuid\u003dphysical_network)"},{"line_number":828,"context_line":"        else:"},{"line_number":829,"context_line":"            err_msg \u003d _(\"%(net_type_param)s %(net_type_value)s not \""},{"line_number":830,"context_line":"                        \"supported\") % {\u0027net_type_param\u0027: pnet.NETWORK_TYPE,"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2Bk8k%3D","line":827,"in_reply_to":"AAAAM3%2F%2BlFo%3D","updated":"2013-02-26 22:27:36.000000000","message":"When I implemented this constrain I wasn\u0027t really thinking of NVP routers. I was thinking about external networks.\nThis why I have the todo comment at line 815.\nI was applying a logic similar to provider networks, where we avoid allocating twice the same segmentation id on a transport zone.\n\nHowever, this does not really make a lot of sense for external networks, where we definitely do not need or want per-tenant isolation.\n\nSo I am more than happy to lift this constraint and make the patch simpler.","commit_id":"77eff4245d13930d6c13a53764ba12e5514f3ad1"}],"quantum/plugins/nicira/nicira_nvp_plugin/common/exceptions.py":[{"author":{"_account_id":447,"name":"dan wendlandt","email":"dan@nicira.com","username":"danwent"},"unresolved":false,"context_lines":[{"line_number":52,"context_line":""},{"line_number":53,"context_line":"class NvpL3GwAttInUse(q_exc.Conflict):"},{"line_number":54,"context_line":"    message \u003d _(\"The Layer-3 Gateway %(gw_uuid)s is already using an \""},{"line_number":55,"context_line":"                \"attachment on vlan %(vlan_id)s\")"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2BlFk%3D","line":55,"updated":"2013-02-26 21:15:37.000000000","message":"same uniqueness comment as before.","commit_id":"77eff4245d13930d6c13a53764ba12e5514f3ad1"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"unresolved":false,"context_lines":[{"line_number":52,"context_line":""},{"line_number":53,"context_line":"class NvpL3GwAttInUse(q_exc.Conflict):"},{"line_number":54,"context_line":"    message \u003d _(\"The Layer-3 Gateway %(gw_uuid)s is already using an \""},{"line_number":55,"context_line":"                \"attachment on vlan %(vlan_id)s\")"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2Bk8I%3D","line":55,"in_reply_to":"AAAAM3%2F%2BlFk%3D","updated":"2013-02-26 22:27:36.000000000","message":"I think this can go.","commit_id":"77eff4245d13930d6c13a53764ba12e5514f3ad1"}],"quantum/plugins/nicira/nicira_nvp_plugin/nvplib.py":[{"author":{"_account_id":447,"name":"dan wendlandt","email":"dan@nicira.com","username":"danwent"},"unresolved":false,"context_lines":[{"line_number":873,"context_line":"    if len(results):"},{"line_number":874,"context_line":"        # Return logical router port"},{"line_number":875,"context_line":"        return results[0]"},{"line_number":876,"context_line":""},{"line_number":877,"context_line":""},{"line_number":878,"context_line":"def plug_router_port_attachment(cluster, router_id, port_id,"},{"line_number":879,"context_line":"                                attachment_uuid, nvp_attachment_type,"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2BlFY%3D","line":876,"updated":"2013-02-26 21:15:37.000000000","message":"I\u0027m confused by this method.  How do we know this will return the gateway port and not just some router port? \n\nAre we able to error out if more than one result is ever returned (seems like it never should if this is correct).","commit_id":"77eff4245d13930d6c13a53764ba12e5514f3ad1"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"unresolved":false,"context_lines":[{"line_number":873,"context_line":"    if len(results):"},{"line_number":874,"context_line":"        # Return logical router port"},{"line_number":875,"context_line":"        return results[0]"},{"line_number":876,"context_line":""},{"line_number":877,"context_line":""},{"line_number":878,"context_line":"def plug_router_port_attachment(cluster, router_id, port_id,"},{"line_number":879,"context_line":"                                attachment_uuid, nvp_attachment_type,"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2Bk70%3D","line":876,"in_reply_to":"AAAAM3%2F%2BlFY%3D","updated":"2013-02-26 22:27:36.000000000","message":"This is not what I thought I pushed for nvplib.\n\nThe correct method iterates over results and find the ports whose attachment is a L3GW.\n\nThe rest of the code is the one I expect to have, I wonder what I did wrong.\n\nThanks for noticing this.\nThis patch would have hardly worked.","commit_id":"77eff4245d13930d6c13a53764ba12e5514f3ad1"}]}
