)]}'
{"kuryr_kubernetes/controller/handlers/namespace.py":[{"author":{"_account_id":27032,"name":"Maysa de Macedo Souza","email":"maysa.macedo95@gmail.com","username":"maysa"},"change_message_id":"78348ea19f5f5b6aef66c7af527d9d30e07fe885","unresolved":false,"context_lines":[{"line_number":131,"context_line":"                exceptions.K8sResourceNotFound):"},{"line_number":132,"context_line":"            LOG.exception(\"Kuryrnet CRD creation failed. Rolling back \""},{"line_number":133,"context_line":"                          \"resources created for the namespace.\")"},{"line_number":134,"context_line":"            self._drv_subnets.rollback_network_resources(net_crd_spec, ns_name)"},{"line_number":135,"context_line":"            if net_crd_sg.get(\u0027sgId\u0027):"},{"line_number":136,"context_line":"                self._drv_sg.delete_sg(net_crd_sg[\u0027sgId\u0027])"},{"line_number":137,"context_line":"            self._del_kuryrnet_crd(net_crd_name)"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"    def on_deleted(self, namespace, net_crd\u003dNone):"},{"line_number":140,"context_line":"        LOG.debug(\"Deleting namespace: %s\", namespace)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_bc94e7e8","side":"PARENT","line":137,"range":{"start_line":134,"start_character":0,"end_line":137,"end_character":48},"updated":"2019-12-16 13:30:19.000000000","message":"On a second thought the removal of the roll back from here might leave us with leftovers CRDs, as while the namespace creation event is being retried the namespace deletion might have been triggered and the watcher will ignore the retry[1]. Though, I think it might be a scenario that we do not see often.\n\n[1] https://github.com/openstack/kuryr-kubernetes/blob/master/kuryr_kubernetes/handlers/retry.py#L66-L76","commit_id":"018cbf8cacf3bd8b291aadc830d36c2ccc0a38e8"},{"author":{"_account_id":27032,"name":"Maysa de Macedo Souza","email":"maysa.macedo95@gmail.com","username":"maysa"},"change_message_id":"896ede26a00a7332ceea7c7b348f657a6601daa8","unresolved":false,"context_lines":[{"line_number":131,"context_line":"                exceptions.K8sResourceNotFound):"},{"line_number":132,"context_line":"            LOG.exception(\"Kuryrnet CRD creation failed. Rolling back \""},{"line_number":133,"context_line":"                          \"resources created for the namespace.\")"},{"line_number":134,"context_line":"            self._drv_subnets.rollback_network_resources(net_crd_spec, ns_name)"},{"line_number":135,"context_line":"            if net_crd_sg.get(\u0027sgId\u0027):"},{"line_number":136,"context_line":"                self._drv_sg.delete_sg(net_crd_sg[\u0027sgId\u0027])"},{"line_number":137,"context_line":"            self._del_kuryrnet_crd(net_crd_name)"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"    def on_deleted(self, namespace, net_crd\u003dNone):"},{"line_number":140,"context_line":"        LOG.debug(\"Deleting namespace: %s\", namespace)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_9f28fd36","side":"PARENT","line":137,"range":{"start_line":134,"start_character":0,"end_line":137,"end_character":48},"in_reply_to":"3fa7e38b_bc194788","updated":"2019-12-16 13:59:45.000000000","message":"Do you mean to to keep only the roll back of the network resources here?\nIf we have protection on the on_delete for ignoring the deletion of neutron resources that are gone this approach seems okay to me.","commit_id":"018cbf8cacf3bd8b291aadc830d36c2ccc0a38e8"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"cb05a0785f750922eb8bfefb13c75be7bcc3f69c","unresolved":false,"context_lines":[{"line_number":131,"context_line":"                exceptions.K8sResourceNotFound):"},{"line_number":132,"context_line":"            LOG.exception(\"Kuryrnet CRD creation failed. Rolling back \""},{"line_number":133,"context_line":"                          \"resources created for the namespace.\")"},{"line_number":134,"context_line":"            self._drv_subnets.rollback_network_resources(net_crd_spec, ns_name)"},{"line_number":135,"context_line":"            if net_crd_sg.get(\u0027sgId\u0027):"},{"line_number":136,"context_line":"                self._drv_sg.delete_sg(net_crd_sg[\u0027sgId\u0027])"},{"line_number":137,"context_line":"            self._del_kuryrnet_crd(net_crd_name)"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"    def on_deleted(self, namespace, net_crd\u003dNone):"},{"line_number":140,"context_line":"        LOG.debug(\"Deleting namespace: %s\", namespace)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_bc194788","side":"PARENT","line":137,"range":{"start_line":134,"start_character":0,"end_line":137,"end_character":48},"in_reply_to":"3fa7e38b_bc94e7e8","updated":"2019-12-16 13:39:56.000000000","message":"That case will be handled by the namespace clean, right? (upon kuryr-controller restart).\n\nWe can leave here the rollback anyway. I think the most important part was to trigger the resource not ready as well as to switch the set_net_crd vs create_namespace_sg_rules order","commit_id":"018cbf8cacf3bd8b291aadc830d36c2ccc0a38e8"}]}
