)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"08fca0393100c4cff35a5e2ef2d77180eb6884c1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"131e1a32_6135132d","updated":"2025-01-30 13:09:11.000000000","message":"recheck","commit_id":"ec63c1183f7f5594fc65d928af3898418c5f14a5"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"5e97e168c7199c8f1f960c3dacf814edb7896b0d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":10,"id":"746171b8_99f4458c","updated":"2025-02-04 15:27:21.000000000","message":"recheck ovn jammy and non jammy flaky failures","commit_id":"19f3b396c3d538da37ae39ad188a183f4c448325"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"d79fa57ef575facec824f32cac5d017896dc4d0a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"0dc4627b_d6460338","updated":"2025-02-05 12:47:03.000000000","message":"check experimental","commit_id":"2a90266ae58907c71c1ea75ce5d2004749fc8f8e"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"f2a894f2b201ca408a8eed33e99cf296fb1270bc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":29,"id":"890c8990_6cd71c4b","updated":"2025-02-09 20:17:35.000000000","message":"recheck ovn and ovn-ubuntu-jammy flaky failures","commit_id":"563a5da248f125466ab2ee800e53320d772adbc4"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"2780c5305bbfa9665db544ceb7d493c21e5eb82f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":30,"id":"5417ca82_fe7dcf6e","updated":"2025-02-13 14:56:46.000000000","message":"flaky ovn jammy and ovn non jammy","commit_id":"d6225f1962be728a2ca472cf7525b64c9ec26fe6"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"071051addd1c788f8418709b03f5d401d5d775cf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":30,"id":"86e5e314_49aae1c2","updated":"2025-02-13 14:56:12.000000000","message":"recheck","commit_id":"d6225f1962be728a2ca472cf7525b64c9ec26fe6"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"ad1e628d07bd13c47f97cf87883c45c8720f78fb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":34,"id":"e69629d8_d3e9018e","updated":"2025-04-06 09:29:41.000000000","message":"recheck - sorry for the time gap, thanks for the reminder, I was focused on other tasks, will get the functional test left resolved this week","commit_id":"964f1a9c01258ee9938351cd582ebcb876ba1a30"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"2abe3630c899b2f23e4ee645cb8bab309e04e19b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":44,"id":"8c5b1ecd_a0938b75","updated":"2025-04-08 11:33:52.000000000","message":"Some nits but good enough to be merged","commit_id":"72df1c0d9e9f89c804bf54d1962a7e25e64971e7"}],"neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/maintenance.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"d92740ebca8f742a5af4d3c4e5f8b6b9fb192f45","unresolved":true,"context_lines":[{"line_number":488,"context_line":"        periodic_run_limit\u003dovn_const.MAINTENANCE_TASK_RETRY_LIMIT,"},{"line_number":489,"context_line":"        spacing\u003dovn_const.MAINTENANCE_ONE_RUN_TASK_SPACING,"},{"line_number":490,"context_line":"        run_immediately\u003dTrue)"},{"line_number":491,"context_line":"    def update_lrouter_ports_ext_ids_name_prefix(self):"},{"line_number":492,"context_line":"        \"\"\"Update OVN logical router ports if missing external ids"},{"line_number":493,"context_line":"        \"neutron-\" prefix for router name."},{"line_number":494,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":14,"id":"be48e832_83e71029","line":491,"range":{"start_line":491,"start_character":8,"end_line":491,"end_character":48},"updated":"2025-02-05 22:08:10.000000000","message":"maintenance methods require functional tests","commit_id":"71d443d03881aa2a610baaac94e9b7212847ca23"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"0b2fe02cedb0b5146e35c6d24b69dd448c1fda09","unresolved":false,"context_lines":[{"line_number":488,"context_line":"        periodic_run_limit\u003dovn_const.MAINTENANCE_TASK_RETRY_LIMIT,"},{"line_number":489,"context_line":"        spacing\u003dovn_const.MAINTENANCE_ONE_RUN_TASK_SPACING,"},{"line_number":490,"context_line":"        run_immediately\u003dTrue)"},{"line_number":491,"context_line":"    def update_lrouter_ports_ext_ids_name_prefix(self):"},{"line_number":492,"context_line":"        \"\"\"Update OVN logical router ports if missing external ids"},{"line_number":493,"context_line":"        \"neutron-\" prefix for router name."},{"line_number":494,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":14,"id":"16e713c2_578f3ae2","line":491,"range":{"start_line":491,"start_character":8,"end_line":491,"end_character":48},"in_reply_to":"be48e832_83e71029","updated":"2025-02-06 12:52:41.000000000","message":"Done","commit_id":"71d443d03881aa2a610baaac94e9b7212847ca23"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"d92740ebca8f742a5af4d3c4e5f8b6b9fb192f45","unresolved":true,"context_lines":[{"line_number":498,"context_line":"        self._sync_timer.restart()"},{"line_number":499,"context_line":"        context \u003d n_context.get_admin_context()"},{"line_number":500,"context_line":"        ports_to_prefix \u003d []"},{"line_number":501,"context_line":"        ports \u003d self._ovn_client._plugin.get_ports(context)"},{"line_number":502,"context_line":"        for port in ports:"},{"line_number":503,"context_line":"            ext_id_rname \u003d port[\u0027external_ids\u0027].get("},{"line_number":504,"context_line":"                ovn_const.OVN_ROUTER_NAME_EXT_ID_KEY)"},{"line_number":505,"context_line":"            if ext_id_rname and not ext_id_rname.startswith(\u0027neutron-\u0027):"},{"line_number":506,"context_line":"                ports_to_prefix.append(port)"},{"line_number":507,"context_line":"        if ports_to_prefix:"},{"line_number":508,"context_line":"            LOG.debug(\u0027Update missing prefix for router_name in %d LRPs:\\n%s\u0027,"},{"line_number":509,"context_line":"                      len(ports_to_prefix),"}],"source_content_type":"text/x-python","patch_set":14,"id":"778e90f6_ec828be4","line":506,"range":{"start_line":501,"start_character":8,"end_line":506,"end_character":44},"updated":"2025-02-05 22:08:10.000000000","message":"This is extremely expensive in a populated environment. This case cost you several minutes. Also it is not needed, you only need to loop over the LRPs, check the external_ids:neutron:router_name and check if it has \u0027neutron-\u0027 at the beginning.","commit_id":"71d443d03881aa2a610baaac94e9b7212847ca23"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"0b2fe02cedb0b5146e35c6d24b69dd448c1fda09","unresolved":false,"context_lines":[{"line_number":498,"context_line":"        self._sync_timer.restart()"},{"line_number":499,"context_line":"        context \u003d n_context.get_admin_context()"},{"line_number":500,"context_line":"        ports_to_prefix \u003d []"},{"line_number":501,"context_line":"        ports \u003d self._ovn_client._plugin.get_ports(context)"},{"line_number":502,"context_line":"        for port in ports:"},{"line_number":503,"context_line":"            ext_id_rname \u003d port[\u0027external_ids\u0027].get("},{"line_number":504,"context_line":"                ovn_const.OVN_ROUTER_NAME_EXT_ID_KEY)"},{"line_number":505,"context_line":"            if ext_id_rname and not ext_id_rname.startswith(\u0027neutron-\u0027):"},{"line_number":506,"context_line":"                ports_to_prefix.append(port)"},{"line_number":507,"context_line":"        if ports_to_prefix:"},{"line_number":508,"context_line":"            LOG.debug(\u0027Update missing prefix for router_name in %d LRPs:\\n%s\u0027,"},{"line_number":509,"context_line":"                      len(ports_to_prefix),"}],"source_content_type":"text/x-python","patch_set":14,"id":"68afb44c_86ddce97","line":506,"range":{"start_line":501,"start_character":8,"end_line":506,"end_character":44},"in_reply_to":"778e90f6_ec828be4","updated":"2025-02-06 12:52:41.000000000","message":"Done","commit_id":"71d443d03881aa2a610baaac94e9b7212847ca23"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"2abe3630c899b2f23e4ee645cb8bab309e04e19b","unresolved":true,"context_lines":[{"line_number":513,"context_line":"                      [str(p[\u0027_uuid\u0027]) for p in ports_to_prefix])"},{"line_number":514,"context_line":"            context \u003d n_context.get_admin_context()"},{"line_number":515,"context_line":"            for port in ports_to_prefix:"},{"line_number":516,"context_line":"                self._nb_idl.update_router_port(context, port)"},{"line_number":517,"context_line":"        self._sync_timer.stop()"},{"line_number":518,"context_line":"        LOG.info(\u0027Maintenance task: Check missing prefix router_name in LRPs \u0027"},{"line_number":519,"context_line":"                 \u0027(took %.2f seconds)\u0027, self._sync_timer.elapsed())"}],"source_content_type":"text/x-python","patch_set":44,"id":"4b7ed868_9478dd39","line":516,"range":{"start_line":516,"start_character":29,"end_line":516,"end_character":47},"updated":"2025-04-08 11:33:52.000000000","message":"This is more expensive than just updating the external_ids ``neutron:router_name``","commit_id":"72df1c0d9e9f89c804bf54d1962a7e25e64971e7"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"e2f7f20c47d8c16229750e55287be2c718a16c23","unresolved":false,"context_lines":[{"line_number":513,"context_line":"                      [str(p[\u0027_uuid\u0027]) for p in ports_to_prefix])"},{"line_number":514,"context_line":"            context \u003d n_context.get_admin_context()"},{"line_number":515,"context_line":"            for port in ports_to_prefix:"},{"line_number":516,"context_line":"                self._nb_idl.update_router_port(context, port)"},{"line_number":517,"context_line":"        self._sync_timer.stop()"},{"line_number":518,"context_line":"        LOG.info(\u0027Maintenance task: Check missing prefix router_name in LRPs \u0027"},{"line_number":519,"context_line":"                 \u0027(took %.2f seconds)\u0027, self._sync_timer.elapsed())"}],"source_content_type":"text/x-python","patch_set":44,"id":"9fad479b_98775452","line":516,"range":{"start_line":516,"start_character":29,"end_line":516,"end_character":47},"in_reply_to":"4b7ed868_9478dd39","updated":"2025-04-08 12:58:05.000000000","message":"Done","commit_id":"72df1c0d9e9f89c804bf54d1962a7e25e64971e7"}],"neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"d92740ebca8f742a5af4d3c4e5f8b6b9fb192f45","unresolved":true,"context_lines":[{"line_number":1893,"context_line":"        lrp_name \u003d utils.ovn_lrouter_port_name(port[\u0027id\u0027])"},{"line_number":1894,"context_line":"        check_rev_cmd \u003d self._nb_idl.check_revision_number("},{"line_number":1895,"context_line":"            lrp_name, port, ovn_const.TYPE_ROUTER_PORTS)"},{"line_number":1896,"context_line":"        if not txn:"},{"line_number":1897,"context_line":"            txn \u003d self._nb_idl.transaction(check_error\u003dTrue)"},{"line_number":1898,"context_line":"        with txn:"},{"line_number":1899,"context_line":"            txn.add(check_rev_cmd)"},{"line_number":1900,"context_line":"            self._update_lrouter_port(context, port, if_exists\u003dif_exists,"}],"source_content_type":"text/x-python","patch_set":14,"id":"2a72522d_7c05916c","line":1897,"range":{"start_line":1896,"start_character":8,"end_line":1897,"end_character":60},"updated":"2025-02-05 22:08:10.000000000","message":"Why this?","commit_id":"71d443d03881aa2a610baaac94e9b7212847ca23"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"0b2fe02cedb0b5146e35c6d24b69dd448c1fda09","unresolved":true,"context_lines":[{"line_number":1893,"context_line":"        lrp_name \u003d utils.ovn_lrouter_port_name(port[\u0027id\u0027])"},{"line_number":1894,"context_line":"        check_rev_cmd \u003d self._nb_idl.check_revision_number("},{"line_number":1895,"context_line":"            lrp_name, port, ovn_const.TYPE_ROUTER_PORTS)"},{"line_number":1896,"context_line":"        if not txn:"},{"line_number":1897,"context_line":"            txn \u003d self._nb_idl.transaction(check_error\u003dTrue)"},{"line_number":1898,"context_line":"        with txn:"},{"line_number":1899,"context_line":"            txn.add(check_rev_cmd)"},{"line_number":1900,"context_line":"            self._update_lrouter_port(context, port, if_exists\u003dif_exists,"}],"source_content_type":"text/x-python","patch_set":14,"id":"d31fa893_f5d51950","line":1897,"range":{"start_line":1896,"start_character":8,"end_line":1897,"end_character":60},"in_reply_to":"2a72522d_7c05916c","updated":"2025-02-06 12:52:41.000000000","message":"This is related to the argument added as well, in order to allow the LRPs update to use same transaction from context manager.\nI thought this could maybe optimize run time a bit.","commit_id":"71d443d03881aa2a610baaac94e9b7212847ca23"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"0ae65736108a0c7e793fdf5fd3b54cff7ba642fc","unresolved":false,"context_lines":[{"line_number":1893,"context_line":"        lrp_name \u003d utils.ovn_lrouter_port_name(port[\u0027id\u0027])"},{"line_number":1894,"context_line":"        check_rev_cmd \u003d self._nb_idl.check_revision_number("},{"line_number":1895,"context_line":"            lrp_name, port, ovn_const.TYPE_ROUTER_PORTS)"},{"line_number":1896,"context_line":"        if not txn:"},{"line_number":1897,"context_line":"            txn \u003d self._nb_idl.transaction(check_error\u003dTrue)"},{"line_number":1898,"context_line":"        with txn:"},{"line_number":1899,"context_line":"            txn.add(check_rev_cmd)"},{"line_number":1900,"context_line":"            self._update_lrouter_port(context, port, if_exists\u003dif_exists,"}],"source_content_type":"text/x-python","patch_set":14,"id":"9d7d67e7_55ab3e8d","line":1897,"range":{"start_line":1896,"start_character":8,"end_line":1897,"end_character":60},"in_reply_to":"d31fa893_f5d51950","updated":"2025-04-07 18:01:14.000000000","message":"After all I won\u0027t insert it so marking comment as resolved.\nI noticed functional maintenance test failures, not sure how maintenance tests can be adjusted for this small questionable optimization, better off dropping it.","commit_id":"71d443d03881aa2a610baaac94e9b7212847ca23"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"2abe3630c899b2f23e4ee645cb8bab309e04e19b","unresolved":true,"context_lines":[{"line_number":1673,"context_line":"            ovn_const.OVN_ROUTER_IS_EXT_GW:"},{"line_number":1674,"context_line":"                str(const.DEVICE_OWNER_ROUTER_GW \u003d\u003d port.get(\u0027device_owner\u0027)),"},{"line_number":1675,"context_line":"            ovn_const.OVN_ROUTER_NAME_EXT_ID_KEY:"},{"line_number":1676,"context_line":"                utils.ovn_name(router_id)"},{"line_number":1677,"context_line":"        }"},{"line_number":1678,"context_line":""},{"line_number":1679,"context_line":"    def _get_reside_redir_for_gateway_port(self, device_id):"}],"source_content_type":"text/x-python","patch_set":44,"id":"9b8d1b82_d10d9394","line":1676,"updated":"2025-04-08 11:33:52.000000000","message":"Don\u0027t remove the comma, in order to append this dictionary without changing the git history of this line.","commit_id":"72df1c0d9e9f89c804bf54d1962a7e25e64971e7"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"e2f7f20c47d8c16229750e55287be2c718a16c23","unresolved":false,"context_lines":[{"line_number":1673,"context_line":"            ovn_const.OVN_ROUTER_IS_EXT_GW:"},{"line_number":1674,"context_line":"                str(const.DEVICE_OWNER_ROUTER_GW \u003d\u003d port.get(\u0027device_owner\u0027)),"},{"line_number":1675,"context_line":"            ovn_const.OVN_ROUTER_NAME_EXT_ID_KEY:"},{"line_number":1676,"context_line":"                utils.ovn_name(router_id)"},{"line_number":1677,"context_line":"        }"},{"line_number":1678,"context_line":""},{"line_number":1679,"context_line":"    def _get_reside_redir_for_gateway_port(self, device_id):"}],"source_content_type":"text/x-python","patch_set":44,"id":"e304c425_3d3017f4","line":1676,"in_reply_to":"9b8d1b82_d10d9394","updated":"2025-04-08 12:58:05.000000000","message":"Done","commit_id":"72df1c0d9e9f89c804bf54d1962a7e25e64971e7"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"2abe3630c899b2f23e4ee645cb8bab309e04e19b","unresolved":true,"context_lines":[{"line_number":1879,"context_line":"            \u0027Logical_Router_Port\u0027, lrp_name,"},{"line_number":1880,"context_line":"            \u0027external_ids\u0027).execute(check_error\u003dTrue)"},{"line_number":1881,"context_line":"        router_id \u003d external_ids[ovn_const.OVN_ROUTER_NAME_EXT_ID_KEY].replace("},{"line_number":1882,"context_line":"            \u0027neutron-\u0027, \u0027\u0027)"},{"line_number":1883,"context_line":"        commands \u003d ["},{"line_number":1884,"context_line":"            self._nb_idl.update_lrouter_port("},{"line_number":1885,"context_line":"                name\u003dlrp_name,"}],"source_content_type":"text/x-python","patch_set":44,"id":"70dc2858_9393c836","line":1882,"updated":"2025-04-08 11:33:52.000000000","message":"OVN_NAME_PREFIX","commit_id":"72df1c0d9e9f89c804bf54d1962a7e25e64971e7"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"e2f7f20c47d8c16229750e55287be2c718a16c23","unresolved":false,"context_lines":[{"line_number":1879,"context_line":"            \u0027Logical_Router_Port\u0027, lrp_name,"},{"line_number":1880,"context_line":"            \u0027external_ids\u0027).execute(check_error\u003dTrue)"},{"line_number":1881,"context_line":"        router_id \u003d external_ids[ovn_const.OVN_ROUTER_NAME_EXT_ID_KEY].replace("},{"line_number":1882,"context_line":"            \u0027neutron-\u0027, \u0027\u0027)"},{"line_number":1883,"context_line":"        commands \u003d ["},{"line_number":1884,"context_line":"            self._nb_idl.update_lrouter_port("},{"line_number":1885,"context_line":"                name\u003dlrp_name,"}],"source_content_type":"text/x-python","patch_set":44,"id":"2295bbae_dc5d52bf","line":1882,"in_reply_to":"70dc2858_9393c836","updated":"2025-04-08 12:58:05.000000000","message":"Done","commit_id":"72df1c0d9e9f89c804bf54d1962a7e25e64971e7"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"2abe3630c899b2f23e4ee645cb8bab309e04e19b","unresolved":true,"context_lines":[{"line_number":1958,"context_line":"                port_removed \u003d True"},{"line_number":1959,"context_line":""},{"line_number":1960,"context_line":"            router_id \u003d ovn_port.external_ids["},{"line_number":1961,"context_line":"                ovn_const.OVN_ROUTER_NAME_EXT_ID_KEY].replace(\u0027neutron-\u0027, \u0027\u0027)"},{"line_number":1962,"context_line":"            router \u003d None"},{"line_number":1963,"context_line":"            gw_ports \u003d []"},{"line_number":1964,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":44,"id":"3e2fcade_e85b7bdd","line":1961,"range":{"start_line":1961,"start_character":63,"end_line":1961,"end_character":71},"updated":"2025-04-08 11:33:52.000000000","message":"OVN_NAME_PREFIX","commit_id":"72df1c0d9e9f89c804bf54d1962a7e25e64971e7"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"e2f7f20c47d8c16229750e55287be2c718a16c23","unresolved":false,"context_lines":[{"line_number":1958,"context_line":"                port_removed \u003d True"},{"line_number":1959,"context_line":""},{"line_number":1960,"context_line":"            router_id \u003d ovn_port.external_ids["},{"line_number":1961,"context_line":"                ovn_const.OVN_ROUTER_NAME_EXT_ID_KEY].replace(\u0027neutron-\u0027, \u0027\u0027)"},{"line_number":1962,"context_line":"            router \u003d None"},{"line_number":1963,"context_line":"            gw_ports \u003d []"},{"line_number":1964,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":44,"id":"35def60d_236f8a42","line":1961,"range":{"start_line":1961,"start_character":63,"end_line":1961,"end_character":71},"in_reply_to":"3e2fcade_e85b7bdd","updated":"2025-04-08 12:58:05.000000000","message":"Done","commit_id":"72df1c0d9e9f89c804bf54d1962a7e25e64971e7"}],"neutron/tests/functional/services/ovn_l3/test_plugin.py":[{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"3f96e95afcf78ba6f556038a467dc4bb2b7b6888","unresolved":true,"context_lines":[{"line_number":347,"context_line":"                        not in row.external_ids):"},{"line_number":348,"context_line":"                    continue"},{"line_number":349,"context_line":"                if row.external_ids[ovn_const.OVN_ROUTER_NAME_EXT_ID_KEY"},{"line_number":350,"context_line":"                                    ] \u003d\u003d ovn_utils.ovn_name(router[\u0027id\u0027]):"},{"line_number":351,"context_line":"                    chassis \u003d {}"},{"line_number":352,"context_line":"                    for gwc in row.gateway_chassis:"},{"line_number":353,"context_line":"                        chassis[gwc.priority] \u003d gwc.chassis_name"}],"source_content_type":"text/x-python","patch_set":42,"id":"e0483a2d_617b158d","line":350,"updated":"2025-04-08 07:06:59.000000000","message":"nit: this formating looks weird for me 😊","commit_id":"bed0843b6d0eabccd0e6f9f224bde37c8b0e0f34"},{"author":{"_account_id":33341,"name":"Maor Blaustein","email":"mblue@redhat.com","username":"blue"},"change_message_id":"76f1cc607cba7f00723416c4f0bc6f10ff8f6894","unresolved":false,"context_lines":[{"line_number":347,"context_line":"                        not in row.external_ids):"},{"line_number":348,"context_line":"                    continue"},{"line_number":349,"context_line":"                if row.external_ids[ovn_const.OVN_ROUTER_NAME_EXT_ID_KEY"},{"line_number":350,"context_line":"                                    ] \u003d\u003d ovn_utils.ovn_name(router[\u0027id\u0027]):"},{"line_number":351,"context_line":"                    chassis \u003d {}"},{"line_number":352,"context_line":"                    for gwc in row.gateway_chassis:"},{"line_number":353,"context_line":"                        chassis[gwc.priority] \u003d gwc.chassis_name"}],"source_content_type":"text/x-python","patch_set":42,"id":"5adb6361_7d70a0be","line":350,"in_reply_to":"e0483a2d_617b158d","updated":"2025-04-08 07:19:35.000000000","message":"Done something different","commit_id":"bed0843b6d0eabccd0e6f9f224bde37c8b0e0f34"}]}
