)]}'
{"kuryr_kubernetes/controller/handlers/policy.py":[{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"9fdea453d434fac4306c2d2a4084695a7190cfef","unresolved":false,"context_lines":[{"line_number":120,"context_line":"                            oslo_cfg.OptGroup(\u0027neutron_defaults\u0027))"},{"line_number":121,"context_line":"                try:"},{"line_number":122,"context_line":"                    self._drv_vif_pool.update_vif_sgs(pod, pod_sgs)"},{"line_number":123,"context_line":"                except (n_exc.NotFound, os_exc.NotFoundException):"},{"line_number":124,"context_line":"                    LOG.debug(\"Fail to update pod sgs.\""},{"line_number":125,"context_line":"                              \" Retrying policy deletion.\")"},{"line_number":126,"context_line":"                    raise exceptions.ResourceNotReady(policy)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_c1ff9a00","line":123,"range":{"start_line":123,"start_character":24,"end_line":123,"end_character":38},"updated":"2020-01-29 12:58:15.000000000","message":"Safe to remove, the only implementation of update_vif_sgs is using OpenStackSDK.","commit_id":"87393ae857adff9d658a6cafb1a3bd82959f5700"},{"author":{"_account_id":13692,"name":"Roman Dobosz","email":"gryf73@gmail.com","username":"gryf"},"change_message_id":"d4812b13ec6c0c6992905f9e6a44a5a230e8beb8","unresolved":false,"context_lines":[{"line_number":120,"context_line":"                            oslo_cfg.OptGroup(\u0027neutron_defaults\u0027))"},{"line_number":121,"context_line":"                try:"},{"line_number":122,"context_line":"                    self._drv_vif_pool.update_vif_sgs(pod, pod_sgs)"},{"line_number":123,"context_line":"                except (n_exc.NotFound, os_exc.NotFoundException):"},{"line_number":124,"context_line":"                    LOG.debug(\"Fail to update pod sgs.\""},{"line_number":125,"context_line":"                              \" Retrying policy deletion.\")"},{"line_number":126,"context_line":"                    raise exceptions.ResourceNotReady(policy)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_dcf53cca","line":123,"range":{"start_line":123,"start_character":24,"end_line":123,"end_character":38},"in_reply_to":"3fa7e38b_c1ff9a00","updated":"2020-01-29 15:35:02.000000000","message":"Ack.","commit_id":"87393ae857adff9d658a6cafb1a3bd82959f5700"}],"kuryr_kubernetes/controller/managers/pool.py":[{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"9fdea453d434fac4306c2d2a4084695a7190cfef","unresolved":false,"context_lines":[{"line_number":165,"context_line":"            try:"},{"line_number":166,"context_line":"                drv_vif_pool.force_populate_pool("},{"line_number":167,"context_line":"                    trunk_ip, project_id, subnets, security_groups, num_ports)"},{"line_number":168,"context_line":"            except n_exc.Conflict:"},{"line_number":169,"context_line":"                LOG.error(\"VLAN Id conflict (already in use) at trunk %s\","},{"line_number":170,"context_line":"                          trunk_ip)"},{"line_number":171,"context_line":"                raise"},{"line_number":172,"context_line":"            except os_exc.ConflictException:"},{"line_number":173,"context_line":"                LOG.error(\"VLAN Id conflict (already in use) at trunk %s\","},{"line_number":174,"context_line":"                          trunk_ip)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_61b3469a","line":171,"range":{"start_line":168,"start_character":0,"end_line":171,"end_character":21},"updated":"2020-01-29 12:58:15.000000000","message":"Seems like NestedMacvlanPodVIFDriver won\u0027t work with pools anyway [1]. It should be safe to remove this as we won\u0027t allow fixing that before it\u0027s converted to openstacksdk.\n\n[1] https://github.com/openstack/kuryr-kubernetes/blob/09b07992b03ae9425302534cd85f6f24c601fdd8/kuryr_kubernetes/controller/drivers/nested_macvlan_vif.py#L60-L63","commit_id":"87393ae857adff9d658a6cafb1a3bd82959f5700"},{"author":{"_account_id":13692,"name":"Roman Dobosz","email":"gryf73@gmail.com","username":"gryf"},"change_message_id":"d4812b13ec6c0c6992905f9e6a44a5a230e8beb8","unresolved":false,"context_lines":[{"line_number":165,"context_line":"            try:"},{"line_number":166,"context_line":"                drv_vif_pool.force_populate_pool("},{"line_number":167,"context_line":"                    trunk_ip, project_id, subnets, security_groups, num_ports)"},{"line_number":168,"context_line":"            except n_exc.Conflict:"},{"line_number":169,"context_line":"                LOG.error(\"VLAN Id conflict (already in use) at trunk %s\","},{"line_number":170,"context_line":"                          trunk_ip)"},{"line_number":171,"context_line":"                raise"},{"line_number":172,"context_line":"            except os_exc.ConflictException:"},{"line_number":173,"context_line":"                LOG.error(\"VLAN Id conflict (already in use) at trunk %s\","},{"line_number":174,"context_line":"                          trunk_ip)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_bc13a001","line":171,"range":{"start_line":168,"start_character":0,"end_line":171,"end_character":21},"in_reply_to":"3fa7e38b_61b3469a","updated":"2020-01-29 15:35:02.000000000","message":"Alright!","commit_id":"87393ae857adff9d658a6cafb1a3bd82959f5700"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"9fdea453d434fac4306c2d2a4084695a7190cfef","unresolved":false,"context_lines":[{"line_number":173,"context_line":"                LOG.error(\"VLAN Id conflict (already in use) at trunk %s\","},{"line_number":174,"context_line":"                          trunk_ip)"},{"line_number":175,"context_line":"                raise"},{"line_number":176,"context_line":"            except n_exc.NeutronClientException:"},{"line_number":177,"context_line":"                LOG.exception(\"Error happened during subports addition at \""},{"line_number":178,"context_line":"                              \"trunk: %s\", trunk_ip)"},{"line_number":179,"context_line":"                raise"},{"line_number":180,"context_line":""},{"line_number":181,"context_line":"    def _delete_subports(self, trunk_ips):"},{"line_number":182,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_815f624b","line":179,"range":{"start_line":176,"start_character":0,"end_line":179,"end_character":21},"updated":"2020-01-29 12:58:15.000000000","message":"This too.","commit_id":"87393ae857adff9d658a6cafb1a3bd82959f5700"},{"author":{"_account_id":13692,"name":"Roman Dobosz","email":"gryf73@gmail.com","username":"gryf"},"change_message_id":"d4812b13ec6c0c6992905f9e6a44a5a230e8beb8","unresolved":false,"context_lines":[{"line_number":173,"context_line":"                LOG.error(\"VLAN Id conflict (already in use) at trunk %s\","},{"line_number":174,"context_line":"                          trunk_ip)"},{"line_number":175,"context_line":"                raise"},{"line_number":176,"context_line":"            except n_exc.NeutronClientException:"},{"line_number":177,"context_line":"                LOG.exception(\"Error happened during subports addition at \""},{"line_number":178,"context_line":"                              \"trunk: %s\", trunk_ip)"},{"line_number":179,"context_line":"                raise"},{"line_number":180,"context_line":""},{"line_number":181,"context_line":"    def _delete_subports(self, trunk_ips):"},{"line_number":182,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_fce27801","line":179,"range":{"start_line":176,"start_character":0,"end_line":179,"end_character":21},"in_reply_to":"3fa7e38b_815f624b","updated":"2020-01-29 15:35:02.000000000","message":"This should be changed to the os_exc.SDKException maybe.","commit_id":"87393ae857adff9d658a6cafb1a3bd82959f5700"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"5ea50ee529abd0c887f224ca13376b3c16aa7d22","unresolved":false,"context_lines":[{"line_number":173,"context_line":"                LOG.error(\"VLAN Id conflict (already in use) at trunk %s\","},{"line_number":174,"context_line":"                          trunk_ip)"},{"line_number":175,"context_line":"                raise"},{"line_number":176,"context_line":"            except n_exc.NeutronClientException:"},{"line_number":177,"context_line":"                LOG.exception(\"Error happened during subports addition at \""},{"line_number":178,"context_line":"                              \"trunk: %s\", trunk_ip)"},{"line_number":179,"context_line":"                raise"},{"line_number":180,"context_line":""},{"line_number":181,"context_line":"    def _delete_subports(self, trunk_ips):"},{"line_number":182,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_ccd00a2e","line":179,"range":{"start_line":176,"start_character":0,"end_line":179,"end_character":21},"in_reply_to":"3fa7e38b_fce27801","updated":"2020-01-31 15:57:46.000000000","message":"Oh, I stand corrected, thank you!","commit_id":"87393ae857adff9d658a6cafb1a3bd82959f5700"}],"kuryr_kubernetes/handlers/retry.py":[{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"9fdea453d434fac4306c2d2a4084695a7190cfef","unresolved":false,"context_lines":[{"line_number":78,"context_line":"            try:"},{"line_number":79,"context_line":"                self._handler(event)"},{"line_number":80,"context_line":"                break"},{"line_number":81,"context_line":"            except n_exc.OverQuotaClient:"},{"line_number":82,"context_line":"                with excutils.save_and_reraise_exception() as ex:"},{"line_number":83,"context_line":"                    if self._sleep(deadline, attempt, ex.value):"},{"line_number":84,"context_line":"                        ex.reraise \u003d False"},{"line_number":85,"context_line":"            except os_exc.ConflictException:"},{"line_number":86,"context_line":"                with excutils.save_and_reraise_exception() as ex:"},{"line_number":87,"context_line":"                    if self._sleep(deadline, attempt, ex.value):"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_c126bacc","line":84,"range":{"start_line":81,"start_character":0,"end_line":84,"end_character":42},"updated":"2020-01-29 12:58:15.000000000","message":"Yep, not safe to remove until Macvlan is converted, worth adding a comment though.","commit_id":"87393ae857adff9d658a6cafb1a3bd82959f5700"},{"author":{"_account_id":13692,"name":"Roman Dobosz","email":"gryf73@gmail.com","username":"gryf"},"change_message_id":"d4812b13ec6c0c6992905f9e6a44a5a230e8beb8","unresolved":false,"context_lines":[{"line_number":78,"context_line":"            try:"},{"line_number":79,"context_line":"                self._handler(event)"},{"line_number":80,"context_line":"                break"},{"line_number":81,"context_line":"            except n_exc.OverQuotaClient:"},{"line_number":82,"context_line":"                with excutils.save_and_reraise_exception() as ex:"},{"line_number":83,"context_line":"                    if self._sleep(deadline, attempt, ex.value):"},{"line_number":84,"context_line":"                        ex.reraise \u003d False"},{"line_number":85,"context_line":"            except os_exc.ConflictException:"},{"line_number":86,"context_line":"                with excutils.save_and_reraise_exception() as ex:"},{"line_number":87,"context_line":"                    if self._sleep(deadline, attempt, ex.value):"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_bcfac0b7","line":84,"range":{"start_line":81,"start_character":0,"end_line":84,"end_character":42},"in_reply_to":"3fa7e38b_c126bacc","updated":"2020-01-29 15:35:02.000000000","message":"Ack","commit_id":"87393ae857adff9d658a6cafb1a3bd82959f5700"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"9fdea453d434fac4306c2d2a4084695a7190cfef","unresolved":false,"context_lines":[{"line_number":82,"context_line":"                with excutils.save_and_reraise_exception() as ex:"},{"line_number":83,"context_line":"                    if self._sleep(deadline, attempt, ex.value):"},{"line_number":84,"context_line":"                        ex.reraise \u003d False"},{"line_number":85,"context_line":"            except os_exc.ConflictException:"},{"line_number":86,"context_line":"                with excutils.save_and_reraise_exception() as ex:"},{"line_number":87,"context_line":"                    if self._sleep(deadline, attempt, ex.value):"},{"line_number":88,"context_line":"                        ex.reraise \u003d False"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_410c0a43","line":85,"range":{"start_line":85,"start_character":26,"end_line":85,"end_character":43},"updated":"2020-01-29 12:58:15.000000000","message":"I\u0027m not exactly happy with not limiting it to quota errors. Any chance to get that?","commit_id":"87393ae857adff9d658a6cafb1a3bd82959f5700"},{"author":{"_account_id":13692,"name":"Roman Dobosz","email":"gryf73@gmail.com","username":"gryf"},"change_message_id":"d4812b13ec6c0c6992905f9e6a44a5a230e8beb8","unresolved":false,"context_lines":[{"line_number":82,"context_line":"                with excutils.save_and_reraise_exception() as ex:"},{"line_number":83,"context_line":"                    if self._sleep(deadline, attempt, ex.value):"},{"line_number":84,"context_line":"                        ex.reraise \u003d False"},{"line_number":85,"context_line":"            except os_exc.ConflictException:"},{"line_number":86,"context_line":"                with excutils.save_and_reraise_exception() as ex:"},{"line_number":87,"context_line":"                    if self._sleep(deadline, attempt, ex.value):"},{"line_number":88,"context_line":"                        ex.reraise \u003d False"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_1cf0b4d9","line":85,"range":{"start_line":85,"start_character":26,"end_line":85,"end_character":43},"in_reply_to":"3fa7e38b_410c0a43","updated":"2020-01-29 15:35:02.000000000","message":"Nope. There is only ConflictException. We could probably deduce type of exception from error message. Will look.","commit_id":"87393ae857adff9d658a6cafb1a3bd82959f5700"},{"author":{"_account_id":27032,"name":"Maysa de Macedo Souza","email":"maysa.macedo95@gmail.com","username":"maysa"},"change_message_id":"ffbcc99f633580aa1cba31f3c4b2a837d3458f32","unresolved":false,"context_lines":[{"line_number":84,"context_line":"                with excutils.save_and_reraise_exception() as ex:"},{"line_number":85,"context_line":"                    if self._sleep(deadline, attempt, ex.value):"},{"line_number":86,"context_line":"                        ex.reraise \u003d False"},{"line_number":87,"context_line":"            except os_exc.ConflictException:"},{"line_number":88,"context_line":"                if ex.details.startswith(\u0027Quota exceeded for resources\u0027):"},{"line_number":89,"context_line":"                    with excutils.save_and_reraise_exception() as ex:"},{"line_number":90,"context_line":"                        if self._sleep(deadline, attempt, ex.value):"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_2bae7aa1","line":87,"range":{"start_line":87,"start_character":19,"end_line":87,"end_character":44},"updated":"2020-01-30 12:39:06.000000000","message":"you\u0027re missing to get the specific exception with \"as ex\"","commit_id":"ec1616529f136567a21ffb733efaec3c57bb6740"},{"author":{"_account_id":13692,"name":"Roman Dobosz","email":"gryf73@gmail.com","username":"gryf"},"change_message_id":"cdc3672a9147fe0cdfd925187e1750d66883263a","unresolved":false,"context_lines":[{"line_number":84,"context_line":"                with excutils.save_and_reraise_exception() as ex:"},{"line_number":85,"context_line":"                    if self._sleep(deadline, attempt, ex.value):"},{"line_number":86,"context_line":"                        ex.reraise \u003d False"},{"line_number":87,"context_line":"            except os_exc.ConflictException:"},{"line_number":88,"context_line":"                if ex.details.startswith(\u0027Quota exceeded for resources\u0027):"},{"line_number":89,"context_line":"                    with excutils.save_and_reraise_exception() as ex:"},{"line_number":90,"context_line":"                        if self._sleep(deadline, attempt, ex.value):"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_0b037e13","line":87,"range":{"start_line":87,"start_character":19,"end_line":87,"end_character":44},"in_reply_to":"3fa7e38b_2bae7aa1","updated":"2020-01-30 13:05:59.000000000","message":"Right…","commit_id":"ec1616529f136567a21ffb733efaec3c57bb6740"}]}
