)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":27032,"name":"Maysa de Macedo Souza","email":"maysa.macedo95@gmail.com","username":"maysa"},"change_message_id":"842de3b0995ad5fd2c38d73c7169cfc1e49c46f9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"c3572249_dbd75546","updated":"2022-04-25 10:18:24.000000000","message":"Just to raise discussion:","commit_id":"f2b9537375b63c183d4e083de1490157240c799f"},{"author":{"_account_id":13692,"name":"Roman Dobosz","email":"gryf73@gmail.com","username":"gryf"},"change_message_id":"35f5795549c4700280090059e30b9b08ff6e0770","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"6138d183_62eed3b5","updated":"2022-04-15 19:51:10.000000000","message":"recheck","commit_id":"f2b9537375b63c183d4e083de1490157240c799f"},{"author":{"_account_id":13692,"name":"Roman Dobosz","email":"gryf73@gmail.com","username":"gryf"},"change_message_id":"eae0cc2653bf9e3b8030f9b23b93dc1b737fc237","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"9ac5b146_700068cc","updated":"2022-04-26 09:34:15.000000000","message":"recheck","commit_id":"8d483c8c77b8d08234508499268023a28834273e"}],"kuryr_kubernetes/controller/drivers/nested_vlan_vif.py":[{"author":{"_account_id":27032,"name":"Maysa de Macedo Souza","email":"maysa.macedo95@gmail.com","username":"maysa"},"change_message_id":"842de3b0995ad5fd2c38d73c7169cfc1e49c46f9","unresolved":true,"context_lines":[{"line_number":96,"context_line":"                for subport_info in subports_info:"},{"line_number":97,"context_line":"                    self._release_vlan_id(subport_info[\u0027segmentation_id\u0027])"},{"line_number":98,"context_line":"                LOG.exception(\"Error creating bulk ports: %s\", bulk_port_rq)"},{"line_number":99,"context_line":"                k_utils.cleanup_dead_ports(network\u003dport_rq[\u0027network_id\u0027],"},{"line_number":100,"context_line":"                                           immidietly\u003dTrue)"},{"line_number":101,"context_line":"                raise"},{"line_number":102,"context_line":"        self._check_port_binding(ports)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ea14c52_df708b91","line":99,"updated":"2022-04-25 10:18:24.000000000","message":"The Semaphore at line 92 is blocking the create_ports operation to ensure only 20 bulk requests are happening at the same time. I wonder if we should handle the cleanup of leftover Ports outside this Semaphore. The creation of other Ports will take longer if we also lock the deletion. But, at the same time if this issue happened it means Neutron is under heavy load.","commit_id":"f2b9537375b63c183d4e083de1490157240c799f"},{"author":{"_account_id":13692,"name":"Roman Dobosz","email":"gryf73@gmail.com","username":"gryf"},"change_message_id":"f48a340eb6fb1928fc87da3ed661c0b619798cb8","unresolved":true,"context_lines":[{"line_number":96,"context_line":"                for subport_info in subports_info:"},{"line_number":97,"context_line":"                    self._release_vlan_id(subport_info[\u0027segmentation_id\u0027])"},{"line_number":98,"context_line":"                LOG.exception(\"Error creating bulk ports: %s\", bulk_port_rq)"},{"line_number":99,"context_line":"                k_utils.cleanup_dead_ports(network\u003dport_rq[\u0027network_id\u0027],"},{"line_number":100,"context_line":"                                           immidietly\u003dTrue)"},{"line_number":101,"context_line":"                raise"},{"line_number":102,"context_line":"        self._check_port_binding(ports)"}],"source_content_type":"text/x-python","patch_set":1,"id":"4ecb1225_88a1ad07","line":99,"in_reply_to":"1ea14c52_df708b91","updated":"2022-04-25 12:06:54.000000000","message":"Well, you\u0027re right. Even so neutron have a hard time during the bulk create request, it\u0027ll be not much better, if we throw at it several delete requests. Maybe we should just relay on the periodic task for that?","commit_id":"f2b9537375b63c183d4e083de1490157240c799f"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"876ec7aff10c3e65b5ad17d08ec7e0aa81e48a61","unresolved":true,"context_lines":[{"line_number":96,"context_line":"                for subport_info in subports_info:"},{"line_number":97,"context_line":"                    self._release_vlan_id(subport_info[\u0027segmentation_id\u0027])"},{"line_number":98,"context_line":"                LOG.exception(\"Error creating bulk ports: %s\", bulk_port_rq)"},{"line_number":99,"context_line":"                k_utils.cleanup_dead_ports(network\u003dport_rq[\u0027network_id\u0027],"},{"line_number":100,"context_line":"                                           immidietly\u003dTrue)"},{"line_number":101,"context_line":"                raise"},{"line_number":102,"context_line":"        self._check_port_binding(ports)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3d3b281b_1e8a8ec2","line":99,"in_reply_to":"26e13733_65bc002a","updated":"2022-04-26 14:07:54.000000000","message":"Yes, just consider the case we\u0027ve seen with networks - even though we\u0027ve always attempted to list networks by name, we still duplicated them because Neutron was still processing the request. I\u0027m pretty sure this can happen with ports too, so I\u0027m not convinced it makes sense to attempt a cleanup immediately. Maybe some task deferred for a few minutes would work too, but then I\u0027m not sure I see any advantage of that compared to just waiting for the periodic.","commit_id":"f2b9537375b63c183d4e083de1490157240c799f"},{"author":{"_account_id":13692,"name":"Roman Dobosz","email":"gryf73@gmail.com","username":"gryf"},"change_message_id":"ff9c9fd6aaf873a55d5a59469f673c280adde738","unresolved":false,"context_lines":[{"line_number":96,"context_line":"                for subport_info in subports_info:"},{"line_number":97,"context_line":"                    self._release_vlan_id(subport_info[\u0027segmentation_id\u0027])"},{"line_number":98,"context_line":"                LOG.exception(\"Error creating bulk ports: %s\", bulk_port_rq)"},{"line_number":99,"context_line":"                k_utils.cleanup_dead_ports(network\u003dport_rq[\u0027network_id\u0027],"},{"line_number":100,"context_line":"                                           immidietly\u003dTrue)"},{"line_number":101,"context_line":"                raise"},{"line_number":102,"context_line":"        self._check_port_binding(ports)"}],"source_content_type":"text/x-python","patch_set":1,"id":"234dae0b_41c8805c","line":99,"in_reply_to":"3d3b281b_1e8a8ec2","updated":"2022-04-27 10:33:23.000000000","message":"Ack","commit_id":"f2b9537375b63c183d4e083de1490157240c799f"},{"author":{"_account_id":13692,"name":"Roman Dobosz","email":"gryf73@gmail.com","username":"gryf"},"change_message_id":"6f332e725e29d07f7e67a377bdb7150c70247efa","unresolved":true,"context_lines":[{"line_number":96,"context_line":"                for subport_info in subports_info:"},{"line_number":97,"context_line":"                    self._release_vlan_id(subport_info[\u0027segmentation_id\u0027])"},{"line_number":98,"context_line":"                LOG.exception(\"Error creating bulk ports: %s\", bulk_port_rq)"},{"line_number":99,"context_line":"                k_utils.cleanup_dead_ports(network\u003dport_rq[\u0027network_id\u0027],"},{"line_number":100,"context_line":"                                           immidietly\u003dTrue)"},{"line_number":101,"context_line":"                raise"},{"line_number":102,"context_line":"        self._check_port_binding(ports)"}],"source_content_type":"text/x-python","patch_set":1,"id":"26e13733_65bc002a","line":99,"in_reply_to":"44c24f7e_8dbf6749","updated":"2022-04-26 13:14:20.000000000","message":"Ok, so that means, we need to wait a bit for port set (or a subset) to be created, and then remove the ports by running periodic task, is that correct?","commit_id":"f2b9537375b63c183d4e083de1490157240c799f"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"44983dac4e14186da628050088cdd747b0efa413","unresolved":true,"context_lines":[{"line_number":96,"context_line":"                for subport_info in subports_info:"},{"line_number":97,"context_line":"                    self._release_vlan_id(subport_info[\u0027segmentation_id\u0027])"},{"line_number":98,"context_line":"                LOG.exception(\"Error creating bulk ports: %s\", bulk_port_rq)"},{"line_number":99,"context_line":"                k_utils.cleanup_dead_ports(network\u003dport_rq[\u0027network_id\u0027],"},{"line_number":100,"context_line":"                                           immidietly\u003dTrue)"},{"line_number":101,"context_line":"                raise"},{"line_number":102,"context_line":"        self._check_port_binding(ports)"}],"source_content_type":"text/x-python","patch_set":1,"id":"44c24f7e_8dbf6749","line":99,"in_reply_to":"4ecb1225_88a1ad07","updated":"2022-04-26 13:00:47.000000000","message":"Deletes are pretty cheap in Neutron world. The problem here is that this mainly targets issue of 504 timeouts on Neutron API and in that case when we\u0027ll query to list ports just after the request fails, the ports will most likely still be missing from the list.","commit_id":"f2b9537375b63c183d4e083de1490157240c799f"}]}
