)]}'
{"neutron/agent/linux/openvswitch_firewall/firewall.py":[{"author":{"_account_id":14611,"name":"dasm","display_name":"dasm","email":"dsmigiel@redhat.com","username":"dasm"},"change_message_id":"e134e915990a1d9450a787b25372d7708446d3d6","unresolved":false,"context_lines":[{"line_number":55,"context_line":"    _replace_register(flow_params, ovsfw_consts.REG_NET, \u0027reg_net\u0027)"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"class OVSFWPortNotFound(exceptions.NeutronException):"},{"line_number":59,"context_line":"    message \u003d _(\"Port %(port_id)s is not managed by this agent. \")"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"da6895a0_bf6e0d2d","side":"PARENT","line":58,"updated":"2016-10-26 01:31:48.000000000","message":"I didn\u0027t find any other usages of OVSFWPortNotFound exception than changed in your patch. Even codesearch doesn\u0027t show a lot.\nBut do you think, it would be worth to add `moved debtcollector` to this class?","commit_id":"b288bcf6e52c03a73c79233f5af02eccf16bc649"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"47d22db715f037c4a5992e8cf62f2a14dcf2bd55","unresolved":false,"context_lines":[{"line_number":55,"context_line":"    _replace_register(flow_params, ovsfw_consts.REG_NET, \u0027reg_net\u0027)"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"class OVSFWPortNotFound(exceptions.NeutronException):"},{"line_number":59,"context_line":"    message \u003d _(\"Port %(port_id)s is not managed by this agent. \")"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"ba5da102_4f78fcc4","side":"PARENT","line":58,"in_reply_to":"da6895a0_bf6e0d2d","updated":"2016-11-16 16:22:09.000000000","message":"No, I think this will only add more work to us without adding a useful thing. If it\u0027s not used anywhere, I don\u0027t think we should emit deprecating message.","commit_id":"b288bcf6e52c03a73c79233f5af02eccf16bc649"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"1d05421acc0d42c6277e42db17231c28170b6fb3","unresolved":false,"context_lines":[{"line_number":62,"context_line":"    :param port_name: Name of the port."},{"line_number":63,"context_line":"    :raises OVSFWTagNotFound: In case tag cannot be found in OVSDB."},{"line_number":64,"context_line":"    \"\"\""},{"line_number":65,"context_line":"    other_config \u003d {}"},{"line_number":66,"context_line":"    try:"},{"line_number":67,"context_line":"        other_config \u003d bridge.db_get_val("},{"line_number":68,"context_line":"            \u0027Port\u0027, port_name, \u0027other_config\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"5a74a57a_ab1e8bb8","line":65,"updated":"2016-11-28 11:29:27.000000000","message":"why do we need this line?","commit_id":"ed1a18b91bdf757a1b5f17305f8ca7c5c8e7a10f"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"9cfbf77132a4f59d59aa628e6a4bd0e7c77a13dc","unresolved":false,"context_lines":[{"line_number":62,"context_line":"    :param port_name: Name of the port."},{"line_number":63,"context_line":"    :raises OVSFWTagNotFound: In case tag cannot be found in OVSDB."},{"line_number":64,"context_line":"    \"\"\""},{"line_number":65,"context_line":"    other_config \u003d {}"},{"line_number":66,"context_line":"    try:"},{"line_number":67,"context_line":"        other_config \u003d bridge.db_get_val("},{"line_number":68,"context_line":"            \u0027Port\u0027, port_name, \u0027other_config\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a6eadb0_abaffd92","line":65,"in_reply_to":"3a71b18c_f031c00c","updated":"2016-12-19 13:07:38.000000000","message":"Done","commit_id":"ed1a18b91bdf757a1b5f17305f8ca7c5c8e7a10f"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"d3949ff798aea558a7bc966167d75614951ae642","unresolved":false,"context_lines":[{"line_number":62,"context_line":"    :param port_name: Name of the port."},{"line_number":63,"context_line":"    :raises OVSFWTagNotFound: In case tag cannot be found in OVSDB."},{"line_number":64,"context_line":"    \"\"\""},{"line_number":65,"context_line":"    other_config \u003d {}"},{"line_number":66,"context_line":"    try:"},{"line_number":67,"context_line":"        other_config \u003d bridge.db_get_val("},{"line_number":68,"context_line":"            \u0027Port\u0027, port_name, \u0027other_config\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"5a74a57a_ac4781ba","line":65,"in_reply_to":"5a74a57a_ab1e8bb8","updated":"2016-11-28 12:23:29.000000000","message":"If L67 raises exception, L72 would have undefined variable.","commit_id":"ed1a18b91bdf757a1b5f17305f8ca7c5c8e7a10f"},{"author":{"_account_id":9200,"name":"IWAMOTO Toshihiro","email":"iwamoto@valinux.co.jp","username":"toshii"},"change_message_id":"d4c39a3fe40cd6e803da127e3c62fa4d4ca35acc","unresolved":false,"context_lines":[{"line_number":62,"context_line":"    :param port_name: Name of the port."},{"line_number":63,"context_line":"    :raises OVSFWTagNotFound: In case tag cannot be found in OVSDB."},{"line_number":64,"context_line":"    \"\"\""},{"line_number":65,"context_line":"    other_config \u003d {}"},{"line_number":66,"context_line":"    try:"},{"line_number":67,"context_line":"        other_config \u003d bridge.db_get_val("},{"line_number":68,"context_line":"            \u0027Port\u0027, port_name, \u0027other_config\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"3a71b18c_f031c00c","line":65,"in_reply_to":"5a74a57a_ac4781ba","updated":"2016-12-15 08:30:36.000000000","message":"Personally I prefer None for such a purpose.","commit_id":"ed1a18b91bdf757a1b5f17305f8ca7c5c8e7a10f"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"1d05421acc0d42c6277e42db17231c28170b6fb3","unresolved":false,"context_lines":[{"line_number":69,"context_line":"        return int(other_config[\u0027tag\u0027])"},{"line_number":70,"context_line":"    except (KeyError, TypeError, ValueError):"},{"line_number":71,"context_line":"        raise exceptions.OVSFWTagNotFound("},{"line_number":72,"context_line":"            port_name\u003dport_name, other_config\u003dother_config)"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"class SecurityGroup(object):"}],"source_content_type":"text/x-python","patch_set":4,"id":"5a74a57a_6bdd53df","line":72,"updated":"2016-11-28 11:29:27.000000000","message":"i think that we should pass the port_id to the exception. A port name is not unique and that may not help debug.","commit_id":"ed1a18b91bdf757a1b5f17305f8ca7c5c8e7a10f"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"d3949ff798aea558a7bc966167d75614951ae642","unresolved":false,"context_lines":[{"line_number":69,"context_line":"        return int(other_config[\u0027tag\u0027])"},{"line_number":70,"context_line":"    except (KeyError, TypeError, ValueError):"},{"line_number":71,"context_line":"        raise exceptions.OVSFWTagNotFound("},{"line_number":72,"context_line":"            port_name\u003dport_name, other_config\u003dother_config)"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"class SecurityGroup(object):"}],"source_content_type":"text/x-python","patch_set":4,"id":"5a74a57a_4c86eddb","line":72,"in_reply_to":"5a74a57a_6bdd53df","updated":"2016-11-28 12:23:29.000000000","message":"port_name is unique, you can\u0027t have two ports with same name in a single ovsdb.","commit_id":"ed1a18b91bdf757a1b5f17305f8ca7c5c8e7a10f"}],"neutron/plugins/ml2/drivers/openvswitch/agent/ovs_neutron_agent.py":[{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"6d38470b66963c4e4a061156642262c115c0f187","unresolved":false,"context_lines":[{"line_number":842,"context_line":"            other_config \u003d cur_info[\u0027other_config\u0027]"},{"line_number":843,"context_line":"            if (cur_info[\u0027tag\u0027] !\u003d lvm.vlan or"},{"line_number":844,"context_line":"                    other_config.get(\u0027tag\u0027) !\u003d lvm.vlan):"},{"line_number":845,"context_line":"                other_config[\u0027tag\u0027] \u003d lvm.vlan"},{"line_number":846,"context_line":"                self.int_br.set_db_attribute("},{"line_number":847,"context_line":"                    \"Port\", port.port_name, \"other_config\", other_config)"},{"line_number":848,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"fa6399be_0e3bad9d","line":845,"updated":"2016-10-17 20:26:12.000000000","message":"Should be str(lvm.vlan)","commit_id":"1ff21f48352ae3a3390019174828a94a7707015b"},{"author":{"_account_id":15554,"name":"Bence Romsics","email":"bence.romsics@gmail.com","username":"ebenrom","status":"inactive contributor"},"change_message_id":"ab4057f82fbd2364082fbaf800931a5c74fe7989","unresolved":false,"context_lines":[{"line_number":842,"context_line":"            other_config \u003d cur_info[\u0027other_config\u0027]"},{"line_number":843,"context_line":"            if (cur_info[\u0027tag\u0027] !\u003d lvm.vlan or"},{"line_number":844,"context_line":"                    other_config.get(\u0027tag\u0027) !\u003d lvm.vlan):"},{"line_number":845,"context_line":"                other_config[\u0027tag\u0027] \u003d lvm.vlan"},{"line_number":846,"context_line":"                self.int_br.set_db_attribute("},{"line_number":847,"context_line":"                    \"Port\", port.port_name, \"other_config\", other_config)"},{"line_number":848,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"fa6399be_5f90b195","line":845,"in_reply_to":"fa6399be_0e3bad9d","updated":"2016-10-19 08:43:58.000000000","message":"This is being fixed in another change, you may want to rebase on top of that:\n\nIafa6be3749b1ee863f5fa71150c708fc46951510","commit_id":"1ff21f48352ae3a3390019174828a94a7707015b"},{"author":{"_account_id":9200,"name":"IWAMOTO Toshihiro","email":"iwamoto@valinux.co.jp","username":"toshii"},"change_message_id":"894e5d970218bb65b0b45482897bbca3a3ce4e69","unresolved":false,"context_lines":[{"line_number":827,"context_line":"                \u0027tag\u0027: x[\u0027tag\u0027],"},{"line_number":828,"context_line":"                \u0027other_config\u0027: x[\u0027other_config\u0027] or {}"},{"line_number":829,"context_line":"            }"},{"line_number":830,"context_line":"            for x in port_info"},{"line_number":831,"context_line":"        }"},{"line_number":832,"context_line":"        for port_detail in need_binding_ports:"},{"line_number":833,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba5da102_31319ba3","line":830,"updated":"2016-10-27 15:17:44.000000000","message":"Changes to this file seems to be mostly gratuitous.\nDo we need to make this change?","commit_id":"499db52d3d520e2529789497b4b5ef6f73132d8a"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"d09e97107fbfdf2738a5f97ae9ff573778d7df74","unresolved":false,"context_lines":[{"line_number":827,"context_line":"                \u0027tag\u0027: x[\u0027tag\u0027],"},{"line_number":828,"context_line":"                \u0027other_config\u0027: x[\u0027other_config\u0027] or {}"},{"line_number":829,"context_line":"            }"},{"line_number":830,"context_line":"            for x in port_info"},{"line_number":831,"context_line":"        }"},{"line_number":832,"context_line":"        for port_detail in need_binding_ports:"},{"line_number":833,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a74a57a_ab184b1f","line":830,"in_reply_to":"ba5da102_31319ba3","updated":"2016-11-28 11:21:51.000000000","message":"Yes, we need the other_config.","commit_id":"499db52d3d520e2529789497b4b5ef6f73132d8a"},{"author":{"_account_id":14611,"name":"dasm","display_name":"dasm","email":"dsmigiel@redhat.com","username":"dasm"},"change_message_id":"e134e915990a1d9450a787b25372d7708446d3d6","unresolved":false,"context_lines":[{"line_number":829,"context_line":"            }"},{"line_number":830,"context_line":"            for x in port_info"},{"line_number":831,"context_line":"        }"},{"line_number":832,"context_line":"        for port_detail in need_binding_ports:"},{"line_number":833,"context_line":"            try:"},{"line_number":834,"context_line":"                lvm \u003d self.vlan_manager.get(port_detail[\u0027network_id\u0027])"},{"line_number":835,"context_line":"            except vlanmanager.MappingNotFound:"}],"source_content_type":"text/x-python","patch_set":3,"id":"da6895a0_1f7459fb","line":832,"updated":"2016-10-26 01:31:48.000000000","message":"Would be more readable with newline between these sections.","commit_id":"499db52d3d520e2529789497b4b5ef6f73132d8a"},{"author":{"_account_id":14611,"name":"dasm","display_name":"dasm","email":"dsmigiel@redhat.com","username":"dasm"},"change_message_id":"e134e915990a1d9450a787b25372d7708446d3d6","unresolved":false,"context_lines":[{"line_number":839,"context_line":"                cur_info \u003d info_by_port[port.port_name]"},{"line_number":840,"context_line":"            except KeyError:"},{"line_number":841,"context_line":"                continue"},{"line_number":842,"context_line":"            other_config \u003d cur_info[\u0027other_config\u0027]"},{"line_number":843,"context_line":"            if (cur_info[\u0027tag\u0027] !\u003d lvm.vlan or"},{"line_number":844,"context_line":"                    other_config.get(\u0027tag\u0027) !\u003d lvm.vlan):"},{"line_number":845,"context_line":"                other_config[\u0027tag\u0027] \u003d str(lvm.vlan)"}],"source_content_type":"text/x-python","patch_set":3,"id":"da6895a0_3f611d3a","line":842,"updated":"2016-10-26 01:31:48.000000000","message":"ditto","commit_id":"499db52d3d520e2529789497b4b5ef6f73132d8a"},{"author":{"_account_id":9200,"name":"IWAMOTO Toshihiro","email":"iwamoto@valinux.co.jp","username":"toshii"},"change_message_id":"d4c39a3fe40cd6e803da127e3c62fa4d4ca35acc","unresolved":false,"context_lines":[{"line_number":813,"context_line":"            except vlanmanager.MappingNotFound:"},{"line_number":814,"context_line":"                continue"},{"line_number":815,"context_line":"            port \u003d port_detail[\u0027vif_port\u0027]"},{"line_number":816,"context_line":"            try:"},{"line_number":817,"context_line":"                cur_info \u003d info_by_port[port.port_name]"},{"line_number":818,"context_line":"            except KeyError:"},{"line_number":819,"context_line":"                continue"},{"line_number":820,"context_line":"            other_config \u003d cur_info[\u0027other_config\u0027]"},{"line_number":821,"context_line":"            if (cur_info[\u0027tag\u0027] !\u003d lvm.vlan or"},{"line_number":822,"context_line":"                    other_config.get(\u0027tag\u0027) !\u003d lvm.vlan):"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a6eadb0_01ea1fdb","line":819,"range":{"start_line":816,"start_character":0,"end_line":819,"end_character":24},"updated":"2016-12-15 08:30:36.000000000","message":"IMHO, this kind of gratuitous changes just make reading diffs difficult.","commit_id":"ed1a18b91bdf757a1b5f17305f8ca7c5c8e7a10f"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"9cfbf77132a4f59d59aa628e6a4bd0e7c77a13dc","unresolved":false,"context_lines":[{"line_number":813,"context_line":"            except vlanmanager.MappingNotFound:"},{"line_number":814,"context_line":"                continue"},{"line_number":815,"context_line":"            port \u003d port_detail[\u0027vif_port\u0027]"},{"line_number":816,"context_line":"            try:"},{"line_number":817,"context_line":"                cur_info \u003d info_by_port[port.port_name]"},{"line_number":818,"context_line":"            except KeyError:"},{"line_number":819,"context_line":"                continue"},{"line_number":820,"context_line":"            other_config \u003d cur_info[\u0027other_config\u0027]"},{"line_number":821,"context_line":"            if (cur_info[\u0027tag\u0027] !\u003d lvm.vlan or"},{"line_number":822,"context_line":"                    other_config.get(\u0027tag\u0027) !\u003d lvm.vlan):"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a6eadb0_2b1dadbd","line":819,"range":{"start_line":816,"start_character":0,"end_line":819,"end_character":24},"in_reply_to":"1a6eadb0_01ea1fdb","updated":"2016-12-19 13:07:38.000000000","message":"This is a Pythonic way of dealing with such cases. I find it more readable.","commit_id":"ed1a18b91bdf757a1b5f17305f8ca7c5c8e7a10f"},{"author":{"_account_id":9200,"name":"IWAMOTO Toshihiro","email":"iwamoto@valinux.co.jp","username":"toshii"},"change_message_id":"d4c39a3fe40cd6e803da127e3c62fa4d4ca35acc","unresolved":false,"context_lines":[{"line_number":819,"context_line":"                continue"},{"line_number":820,"context_line":"            other_config \u003d cur_info[\u0027other_config\u0027]"},{"line_number":821,"context_line":"            if (cur_info[\u0027tag\u0027] !\u003d lvm.vlan or"},{"line_number":822,"context_line":"                    other_config.get(\u0027tag\u0027) !\u003d lvm.vlan):"},{"line_number":823,"context_line":"                other_config[\u0027tag\u0027] \u003d str(lvm.vlan)"},{"line_number":824,"context_line":"                self.int_br.set_db_attribute("},{"line_number":825,"context_line":"                    \"Port\", port.port_name, \"other_config\", other_config)"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a6eadb0_21263b15","line":822,"updated":"2016-12-15 08:30:36.000000000","message":"This condition should not happen under normal circumstances.\nWe might better have a warning here.","commit_id":"ed1a18b91bdf757a1b5f17305f8ca7c5c8e7a10f"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"9cfbf77132a4f59d59aa628e6a4bd0e7c77a13dc","unresolved":false,"context_lines":[{"line_number":819,"context_line":"                continue"},{"line_number":820,"context_line":"            other_config \u003d cur_info[\u0027other_config\u0027]"},{"line_number":821,"context_line":"            if (cur_info[\u0027tag\u0027] !\u003d lvm.vlan or"},{"line_number":822,"context_line":"                    other_config.get(\u0027tag\u0027) !\u003d lvm.vlan):"},{"line_number":823,"context_line":"                other_config[\u0027tag\u0027] \u003d str(lvm.vlan)"},{"line_number":824,"context_line":"                self.int_br.set_db_attribute("},{"line_number":825,"context_line":"                    \"Port\", port.port_name, \"other_config\", other_config)"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a6eadb0_4b1109af","line":822,"in_reply_to":"1a6eadb0_21263b15","updated":"2016-12-19 13:07:38.000000000","message":"Issued warnings should inform about possible failure, the code below doesn\u0027t cause any harm. Maybe debug could make more sense but I don\u0027t see what value it would bring.","commit_id":"ed1a18b91bdf757a1b5f17305f8ca7c5c8e7a10f"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"d1ae69aec698469ef7d49f9ab0e1a643ffccfb08","unresolved":false,"context_lines":[{"line_number":809,"context_line":"        }"},{"line_number":810,"context_line":"        for port_detail in need_binding_ports:"},{"line_number":811,"context_line":"            try:"},{"line_number":812,"context_line":"                lvm \u003d self.vlan_manager.get(port_detail[\u0027network_id\u0027])"},{"line_number":813,"context_line":"            except vlanmanager.MappingNotFound:"},{"line_number":814,"context_line":"                continue"},{"line_number":815,"context_line":"            port \u003d port_detail[\u0027vif_port\u0027]"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a57fde8_e7677d23","line":812,"updated":"2017-01-12 13:02:49.000000000","message":"silly note: when I see lvm I always think of logical volumes in linux :P","commit_id":"a66c27193573ce015c6c1234b0f2a1d86fb85a22"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"86aba0aa3900f85f4d536a746d8b95312d13e1d9","unresolved":false,"context_lines":[{"line_number":809,"context_line":"        }"},{"line_number":810,"context_line":"        for port_detail in need_binding_ports:"},{"line_number":811,"context_line":"            try:"},{"line_number":812,"context_line":"                lvm \u003d self.vlan_manager.get(port_detail[\u0027network_id\u0027])"},{"line_number":813,"context_line":"            except vlanmanager.MappingNotFound:"},{"line_number":814,"context_line":"                continue"},{"line_number":815,"context_line":"            port \u003d port_detail[\u0027vif_port\u0027]"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a57fde8_c2498790","line":812,"in_reply_to":"9a57fde8_e7677d23","updated":"2017-01-12 13:05:27.000000000","message":"Yeah, me too :D","commit_id":"a66c27193573ce015c6c1234b0f2a1d86fb85a22"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"d1ae69aec698469ef7d49f9ab0e1a643ffccfb08","unresolved":false,"context_lines":[{"line_number":816,"context_line":"            try:"},{"line_number":817,"context_line":"                cur_info \u003d info_by_port[port.port_name]"},{"line_number":818,"context_line":"            except KeyError:"},{"line_number":819,"context_line":"                continue"},{"line_number":820,"context_line":"            other_config \u003d cur_info[\u0027other_config\u0027]"},{"line_number":821,"context_line":"            if (cur_info[\u0027tag\u0027] !\u003d lvm.vlan or"},{"line_number":822,"context_line":"                    other_config.get(\u0027tag\u0027) !\u003d lvm.vlan):"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a57fde8_42dbd7ed","line":819,"updated":"2017-01-12 13:02:49.000000000","message":"It could be worth logging this as a warning (port vanished). But only if you need to respin.","commit_id":"a66c27193573ce015c6c1234b0f2a1d86fb85a22"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"86aba0aa3900f85f4d536a746d8b95312d13e1d9","unresolved":false,"context_lines":[{"line_number":816,"context_line":"            try:"},{"line_number":817,"context_line":"                cur_info \u003d info_by_port[port.port_name]"},{"line_number":818,"context_line":"            except KeyError:"},{"line_number":819,"context_line":"                continue"},{"line_number":820,"context_line":"            other_config \u003d cur_info[\u0027other_config\u0027]"},{"line_number":821,"context_line":"            if (cur_info[\u0027tag\u0027] !\u003d lvm.vlan or"},{"line_number":822,"context_line":"                    other_config.get(\u0027tag\u0027) !\u003d lvm.vlan):"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a57fde8_62229bbb","line":819,"in_reply_to":"9a57fde8_42dbd7ed","updated":"2017-01-12 13:05:27.000000000","message":"Will do in case of respin.","commit_id":"a66c27193573ce015c6c1234b0f2a1d86fb85a22"}],"neutron/tests/common/conn_testers.py":[{"author":{"_account_id":9200,"name":"IWAMOTO Toshihiro","email":"iwamoto@valinux.co.jp","username":"toshii"},"change_message_id":"894e5d970218bb65b0b45482897bbca3a3ce4e69","unresolved":false,"context_lines":[{"line_number":372,"context_line":""},{"line_number":373,"context_line":"    @staticmethod"},{"line_number":374,"context_line":"    def set_tag(port_name, bridge, tag):"},{"line_number":375,"context_line":"        table_name \u003d \u0027Port\u0027"},{"line_number":376,"context_line":"        ovsdb \u003d bridge.ovsdb"},{"line_number":377,"context_line":"        with ovsdb.transaction() as txn:"},{"line_number":378,"context_line":"            txn.add(ovsdb.db_set(table_name, port_name, (\u0027tag\u0027, tag)))"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba5da102_718873e8","line":375,"updated":"2016-10-27 15:17:44.000000000","message":"I don\u0027t think this improves readability","commit_id":"499db52d3d520e2529789497b4b5ef6f73132d8a"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"d09e97107fbfdf2738a5f97ae9ff573778d7df74","unresolved":false,"context_lines":[{"line_number":372,"context_line":""},{"line_number":373,"context_line":"    @staticmethod"},{"line_number":374,"context_line":"    def set_tag(port_name, bridge, tag):"},{"line_number":375,"context_line":"        table_name \u003d \u0027Port\u0027"},{"line_number":376,"context_line":"        ovsdb \u003d bridge.ovsdb"},{"line_number":377,"context_line":"        with ovsdb.transaction() as txn:"},{"line_number":378,"context_line":"            txn.add(ovsdb.db_set(table_name, port_name, (\u0027tag\u0027, tag)))"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a74a57a_cb9ae76d","line":375,"in_reply_to":"ba5da102_718873e8","updated":"2016-11-28 11:21:51.000000000","message":"Done","commit_id":"499db52d3d520e2529789497b4b5ef6f73132d8a"},{"author":{"_account_id":9200,"name":"IWAMOTO Toshihiro","email":"iwamoto@valinux.co.jp","username":"toshii"},"change_message_id":"894e5d970218bb65b0b45482897bbca3a3ce4e69","unresolved":false,"context_lines":[{"line_number":378,"context_line":"            txn.add(ovsdb.db_set(table_name, port_name, (\u0027tag\u0027, tag)))"},{"line_number":379,"context_line":"            txn.add("},{"line_number":380,"context_line":"                ovsdb.db_add("},{"line_number":381,"context_line":"                    table_name, port_name, \u0027other_config\u0027, {\u0027tag\u0027: str(tag)}))"},{"line_number":382,"context_line":""},{"line_number":383,"context_line":""},{"line_number":384,"context_line":"class OVSConnectionTester(OVSBaseConnectionTester):"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba5da102_916d0735","line":381,"updated":"2016-10-27 15:17:44.000000000","message":"Doesn\u0027t db_add fail to update other_config[\u0027tag\u0027] if it already exists?","commit_id":"499db52d3d520e2529789497b4b5ef6f73132d8a"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"47d22db715f037c4a5992e8cf62f2a14dcf2bd55","unresolved":false,"context_lines":[{"line_number":378,"context_line":"            txn.add(ovsdb.db_set(table_name, port_name, (\u0027tag\u0027, tag)))"},{"line_number":379,"context_line":"            txn.add("},{"line_number":380,"context_line":"                ovsdb.db_add("},{"line_number":381,"context_line":"                    table_name, port_name, \u0027other_config\u0027, {\u0027tag\u0027: str(tag)}))"},{"line_number":382,"context_line":""},{"line_number":383,"context_line":""},{"line_number":384,"context_line":"class OVSConnectionTester(OVSBaseConnectionTester):"}],"source_content_type":"text/x-python","patch_set":3,"id":"7a77a97e_1f50e85c","line":381,"in_reply_to":"ba5da102_916d0735","updated":"2016-11-16 16:22:09.000000000","message":"No, it just doesn\u0027t update the field.","commit_id":"499db52d3d520e2529789497b4b5ef6f73132d8a"},{"author":{"_account_id":9200,"name":"IWAMOTO Toshihiro","email":"iwamoto@valinux.co.jp","username":"toshii"},"change_message_id":"d4c39a3fe40cd6e803da127e3c62fa4d4ca35acc","unresolved":false,"context_lines":[{"line_number":377,"context_line":"            txn.add(ovsdb.db_set(\u0027Port\u0027, port_name, (\u0027tag\u0027, tag)))"},{"line_number":378,"context_line":"            txn.add("},{"line_number":379,"context_line":"                ovsdb.db_add("},{"line_number":380,"context_line":"                    \u0027Port\u0027, port_name, \u0027other_config\u0027, {\u0027tag\u0027: str(tag)}))"},{"line_number":381,"context_line":""},{"line_number":382,"context_line":""},{"line_number":383,"context_line":"class OVSConnectionTester(OVSBaseConnectionTester):"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a6eadb0_21f8fb7a","line":380,"updated":"2016-12-15 08:30:36.000000000","message":"This method used to overwrite other_config.tag if it is already set. You are changing the method to simply return without updating other_config.tag in such cases.\n\nWhy is this change needed?","commit_id":"ed1a18b91bdf757a1b5f17305f8ca7c5c8e7a10f"}]}
