)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"456c87d852920bf839debef6e22c09e2976fe051","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"1f350c34_a2289c54","updated":"2023-06-21 14:13:30.000000000","message":"Looks good, two nits in place. Lemme know if u think it\u0027s worth fixing","commit_id":"553c9af725fcea6134559c81b1e54d15ae3a0e7b"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"941e0d8b6703c1314ea7745e237bbbb72b6ae497","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"321c4348_644962c0","updated":"2023-06-26 11:42:23.000000000","message":"Hi folks, please review this patch if you have some free cycles. Thanks!","commit_id":"9d9f47c20c6c269db264d656a1026e0926f390fd"},{"author":{"_account_id":28056,"name":"Liushy","email":"liuxie_11@163.com","username":"liuxie_11"},"change_message_id":"8138acfb2a107933a4ab35e948e47d2404e0502b","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":5,"id":"716aff3e_45601b4f","updated":"2023-06-26 09:35:11.000000000","message":"LGTM","commit_id":"9d9f47c20c6c269db264d656a1026e0926f390fd"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"75eeb33a2866b9161cfaa93e68bf89693627bc30","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"e8e628de_40191509","updated":"2023-06-26 12:16:16.000000000","message":"Thanks for addressing the comments","commit_id":"9d9f47c20c6c269db264d656a1026e0926f390fd"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"574860e8a52c4046b4823e45b488a4b2631a2815","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"5f2ba70f_289014ac","updated":"2023-06-23 11:04:43.000000000","message":"recheck tempest-integrated-networking","commit_id":"9d9f47c20c6c269db264d656a1026e0926f390fd"}],"neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/maintenance.py":[{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"456c87d852920bf839debef6e22c09e2976fe051","unresolved":true,"context_lines":[{"line_number":1046,"context_line":"        \"Chassis_Private\" table. Otherwise, is not possible to find out which"},{"line_number":1047,"context_line":"        register is newer and thus must be kept in the database."},{"line_number":1048,"context_line":"        \"\"\""},{"line_number":1049,"context_line":"        if not (self.has_lock and"},{"line_number":1050,"context_line":"                self._sb_idl.is_table_present(\u0027Chassis_Private\u0027)):"},{"line_number":1051,"context_line":"            return"},{"line_number":1052,"context_line":""},{"line_number":1053,"context_line":"        # dup_chassis_port_host \u003d {host_name: [(ch1, ch_private1),"},{"line_number":1054,"context_line":"        #                                      (ch2, ch_private2), ... ]}"}],"source_content_type":"text/x-python","patch_set":3,"id":"6eb2b051_47a4b813","line":1051,"range":{"start_line":1049,"start_character":0,"end_line":1051,"end_character":18},"updated":"2023-06-21 14:13:30.000000000","message":"I think we can split these checks and if the \u0027Chassis_Private\u0027 table is not present we could raise NeverAgain() so this task won\u0027t run anymore (cause if we are going to update the OVN db schema we would need to restart the service anyway)","commit_id":"553c9af725fcea6134559c81b1e54d15ae3a0e7b"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"6b1c8d9d86966a51b5fc4c09fdf1859b4e856710","unresolved":false,"context_lines":[{"line_number":1046,"context_line":"        \"Chassis_Private\" table. Otherwise, is not possible to find out which"},{"line_number":1047,"context_line":"        register is newer and thus must be kept in the database."},{"line_number":1048,"context_line":"        \"\"\""},{"line_number":1049,"context_line":"        if not (self.has_lock and"},{"line_number":1050,"context_line":"                self._sb_idl.is_table_present(\u0027Chassis_Private\u0027)):"},{"line_number":1051,"context_line":"            return"},{"line_number":1052,"context_line":""},{"line_number":1053,"context_line":"        # dup_chassis_port_host \u003d {host_name: [(ch1, ch_private1),"},{"line_number":1054,"context_line":"        #                                      (ch2, ch_private2), ... ]}"}],"source_content_type":"text/x-python","patch_set":3,"id":"a821910b_e59d3602","line":1051,"range":{"start_line":1049,"start_character":0,"end_line":1051,"end_character":18},"in_reply_to":"325a481a_d73d74dd","updated":"2023-06-22 09:16:11.000000000","message":"Exactly, without \"Chassis_Private\" this method is useless. Good point.","commit_id":"553c9af725fcea6134559c81b1e54d15ae3a0e7b"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"aa20c69e56263646cfe6d1fbcaf8bf94ec9d4293","unresolved":true,"context_lines":[{"line_number":1046,"context_line":"        \"Chassis_Private\" table. Otherwise, is not possible to find out which"},{"line_number":1047,"context_line":"        register is newer and thus must be kept in the database."},{"line_number":1048,"context_line":"        \"\"\""},{"line_number":1049,"context_line":"        if not (self.has_lock and"},{"line_number":1050,"context_line":"                self._sb_idl.is_table_present(\u0027Chassis_Private\u0027)):"},{"line_number":1051,"context_line":"            return"},{"line_number":1052,"context_line":""},{"line_number":1053,"context_line":"        # dup_chassis_port_host \u003d {host_name: [(ch1, ch_private1),"},{"line_number":1054,"context_line":"        #                                      (ch2, ch_private2), ... ]}"}],"source_content_type":"text/x-python","patch_set":3,"id":"325a481a_d73d74dd","line":1051,"range":{"start_line":1049,"start_character":0,"end_line":1051,"end_character":18},"in_reply_to":"6eb2b051_47a4b813","updated":"2023-06-21 14:14:44.000000000","message":"Just as an example of what I mean:\n\n```\nif not self._sb_idl.is_table_present(\u0027Chassis_Private\u0027):\n    raise periodics.NeverAgain()\n    \nif not self.has_lock:\n    return\n```","commit_id":"553c9af725fcea6134559c81b1e54d15ae3a0e7b"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"456c87d852920bf839debef6e22c09e2976fe051","unresolved":true,"context_lines":[{"line_number":1060,"context_line":"            ch_list \u003d []"},{"line_number":1061,"context_line":"            # Find these chassis matching the hostname and create a list."},{"line_number":1062,"context_line":"            for ch in (ch for ch in chassis if ch.hostname \u003d\u003d hostname):"},{"line_number":1063,"context_line":"                ch_private \u003d self._sb_idl.lookup(\u0027Chassis_Private\u0027, ch.name)"},{"line_number":1064,"context_line":"                ch_list.append((ch, ch_private))"},{"line_number":1065,"context_line":""},{"line_number":1066,"context_line":"            # If the chassis list \u003e 1, then we have duplicated chassis."}],"source_content_type":"text/x-python","patch_set":3,"id":"3f83b9ea_a8143271","line":1063,"range":{"start_line":1063,"start_character":16,"end_line":1063,"end_character":76},"updated":"2023-06-21 14:13:30.000000000","message":"Perhaps handling the RowNotFound exception here, in case the entry is deleted while this task is running (agent delete?). It\u0027s ok that 5m later it will try again but, if we handle it perhaps there\u0027s no need to wait.","commit_id":"553c9af725fcea6134559c81b1e54d15ae3a0e7b"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"6b1c8d9d86966a51b5fc4c09fdf1859b4e856710","unresolved":false,"context_lines":[{"line_number":1060,"context_line":"            ch_list \u003d []"},{"line_number":1061,"context_line":"            # Find these chassis matching the hostname and create a list."},{"line_number":1062,"context_line":"            for ch in (ch for ch in chassis if ch.hostname \u003d\u003d hostname):"},{"line_number":1063,"context_line":"                ch_private \u003d self._sb_idl.lookup(\u0027Chassis_Private\u0027, ch.name)"},{"line_number":1064,"context_line":"                ch_list.append((ch, ch_private))"},{"line_number":1065,"context_line":""},{"line_number":1066,"context_line":"            # If the chassis list \u003e 1, then we have duplicated chassis."}],"source_content_type":"text/x-python","patch_set":3,"id":"c9c5d226_d6594471","line":1063,"range":{"start_line":1063,"start_character":16,"end_line":1063,"end_character":76},"in_reply_to":"3f83b9ea_a8143271","updated":"2023-06-22 09:16:11.000000000","message":"Right, if the \"Chassis_Private\" register is not present, we should handle it properly. I\u0027ll add this circumstance to the UTs.","commit_id":"553c9af725fcea6134559c81b1e54d15ae3a0e7b"}]}
