)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"dd438e88bb256286ef17fb21f6c26e04f94cb690","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Fernando Royo \u003cfroyo@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2022-09-14 16:51:28 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Reduce probability of LB in PENDING_DELETE"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The LB delete operation will list all LS and all LR related"},{"line_number":10,"context_line":"to the LB and run in a single transaccion the delete of LB over"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"e33efb5e_14c20ae3","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":42},"updated":"2022-09-15 06:21:49.000000000","message":"I think this is not accurate. The function _lb_delete is called within try/except Exception, and in case of whatever exception happening in that function it sets the status to ERROR, not PENDING_DELETE.\n\nSo, this patch is avoiding to set the loadbalancer to ERROR while it could be properly deleted, as if the LS or LR is no longer there, there is no need of removing the lb from it","commit_id":"49a388b589b43958002d408a8386afca07c78236"},{"author":{"_account_id":34451,"name":"Fernando Royo","email":"froyo@redhat.com","username":"froyo"},"change_message_id":"f396afb061c8889f822bb22e923755536340eb26","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Fernando Royo \u003cfroyo@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2022-09-14 16:51:28 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Reduce probability of LB in PENDING_DELETE"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The LB delete operation will list all LS and all LR related"},{"line_number":10,"context_line":"to the LB and run in a single transaccion the delete of LB over"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"6d4daf13_f85af30a","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":42},"in_reply_to":"e33efb5e_14c20ae3","updated":"2022-09-19 10:22:28.000000000","message":"You are right! I was thinking on the trigger of this issue when wrote the title. I also refactor first paragraph to clarify. thx","commit_id":"49a388b589b43958002d408a8386afca07c78236"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"8cdb711f10a2770b007e410fdda2db54a5c135fe","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"3e657cef_6ed62bb4","updated":"2022-09-16 07:58:02.000000000","message":"btw, this would need a launchpad bug to back port it","commit_id":"49a388b589b43958002d408a8386afca07c78236"},{"author":{"_account_id":34451,"name":"Fernando Royo","email":"froyo@redhat.com","username":"froyo"},"change_message_id":"9a055a392c49496c6135cea0906942b4042575c8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"dcae58e8_b864e5e2","updated":"2022-09-27 10:43:12.000000000","message":"recheck ovn-octavia-provider-functional-master cursor commit/rollback reset","commit_id":"f9ccb4c48627a200ef27dde60b01bccdccac4e45"},{"author":{"_account_id":34451,"name":"Fernando Royo","email":"froyo@redhat.com","username":"froyo"},"change_message_id":"6dfbae8a21f623684b4b9dacc1a1c9e6f727254d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"3ac99a74_088257a2","updated":"2022-09-27 13:12:58.000000000","message":"recheck ovn-octavia-provider-functional-master cursor commit/rollback reset\n","commit_id":"f9ccb4c48627a200ef27dde60b01bccdccac4e45"},{"author":{"_account_id":34451,"name":"Fernando Royo","email":"froyo@redhat.com","username":"froyo"},"change_message_id":"a20ec9f40fffab042bffce7f58e0c7dd3d7c3611","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"8b9b9de7_c632575a","updated":"2022-09-27 14:56:35.000000000","message":"recheck ovn-octavia-provider-functional-release unrelated","commit_id":"f9ccb4c48627a200ef27dde60b01bccdccac4e45"}],"ovn_octavia_provider/helper.py":[{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"ff2be0f00f805914ab13f697ef16ea6c11f0d70d","unresolved":true,"context_lines":[{"line_number":1177,"context_line":"            # RowNotFound exception, if this case we will run every command"},{"line_number":1178,"context_line":"            # one by one passing exception in case the command is related to"},{"line_number":1179,"context_line":"            # deletion of Ls or Lr already deleted. Any other case will raise"},{"line_number":1180,"context_line":"            # exception and upper function will report the LB in ERROR status"},{"line_number":1181,"context_line":"            for command in commands:"},{"line_number":1182,"context_line":"                try:"},{"line_number":1183,"context_line":"                    command.execute(check_error\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":3,"id":"e301ed86_960f73b6","line":1180,"updated":"2022-09-27 08:14:34.000000000","message":"I\u0027m not sure I understand what\u0027s the point of raising error in case if any of the resources which should be deleted is already gone. Shouldn\u0027t we simply ignore all RowNotFound exceptions in this case?","commit_id":"f9ccb4c48627a200ef27dde60b01bccdccac4e45"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"13af00ca03af450b4f8d2269bbdd97191694add7","unresolved":true,"context_lines":[{"line_number":1177,"context_line":"            # RowNotFound exception, if this case we will run every command"},{"line_number":1178,"context_line":"            # one by one passing exception in case the command is related to"},{"line_number":1179,"context_line":"            # deletion of Ls or Lr already deleted. Any other case will raise"},{"line_number":1180,"context_line":"            # exception and upper function will report the LB in ERROR status"},{"line_number":1181,"context_line":"            for command in commands:"},{"line_number":1182,"context_line":"                try:"},{"line_number":1183,"context_line":"                    command.execute(check_error\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":3,"id":"d1fa4b49_2ba7217b","line":1180,"in_reply_to":"78d98126_7e0977de","updated":"2022-09-27 10:12:40.000000000","message":"ok, I got it now, thx","commit_id":"f9ccb4c48627a200ef27dde60b01bccdccac4e45"},{"author":{"_account_id":34451,"name":"Fernando Royo","email":"froyo@redhat.com","username":"froyo"},"change_message_id":"dc72b96ad90d2aa2ada13e1bdb9bbd5b104c725d","unresolved":true,"context_lines":[{"line_number":1177,"context_line":"            # RowNotFound exception, if this case we will run every command"},{"line_number":1178,"context_line":"            # one by one passing exception in case the command is related to"},{"line_number":1179,"context_line":"            # deletion of Ls or Lr already deleted. Any other case will raise"},{"line_number":1180,"context_line":"            # exception and upper function will report the LB in ERROR status"},{"line_number":1181,"context_line":"            for command in commands:"},{"line_number":1182,"context_line":"                try:"},{"line_number":1183,"context_line":"                    command.execute(check_error\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":3,"id":"78d98126_7e0977de","line":1180,"in_reply_to":"e301ed86_960f73b6","updated":"2022-09-27 08:43:53.000000000","message":"Yes, the main target with this patch is to delete the LB when a RowNotFound over a LsLbDel or LrLbDel is triggered. Currently, LsLbDel, LrLbDel and the most important command LbDel are included in the same transaction. As it is a single transaction, in case of any RowNotFound, we leave leftover of all types (LsLb, LrLb) and the most important one, the LB is not deleted reporting an ERROR status to the upper layer. With this patch we will \"ignore\" all RowNotFound as you propose, but we make sure not to leave leftover LsLb or LrLb and keeping the ERROR status case if the failed command is the LbDel, raising the exception ---\u003e ERROR status, just to inform the upper layer (Octavia API)","commit_id":"f9ccb4c48627a200ef27dde60b01bccdccac4e45"}]}
