)]}'
{"nova/api/openstack/compute/floating_ips.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"2e6197529cc181d28d13cea2d88511ee62ce722b","unresolved":false,"context_lines":[{"line_number":284,"context_line":"        if instance and floating_ip[\u0027port_id\u0027] and instance.uuid \u003d\u003d id:"},{"line_number":285,"context_line":"            try:"},{"line_number":286,"context_line":"                disassociate_floating_ip(self, context, instance, address)"},{"line_number":287,"context_line":"            except Exception as e:"},{"line_number":288,"context_line":"                msg \u003d _(\u0027Unable to disassociate floating IP %(address)s for \u0027"},{"line_number":289,"context_line":"                        \u0027instance %(id)s. Error: %(error)s\u0027) % ("},{"line_number":290,"context_line":"                        {\u0027address\u0027: address, \u0027id\u0027: id, \u0027error\u0027: e})"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_f537d7db","line":287,"range":{"start_line":287,"start_character":12,"end_line":287,"end_character":34},"updated":"2020-02-17 23:05:09.000000000","message":"Ick, no. If FloatingIpNotAssociated no longer exists (I confirm it doesn\u0027t) then just remove the whole try/except here. Otherwise you\u0027re changing behavior. At a quick look, that includes converting HTTPForbidden to HTTPBadRequest. Digging deeper, you\u0027ll also convert ksa ClientExceptionZ, FloatingIp*FoundForAddress, and any errors from PUTting through neutronclient.\n\n(TBC, whether or not that\u0027s the right thing to do, it doesn\u0027t belong in this patch.)","commit_id":"81b3beb3abe3d0eb14c18e87e89ba38930402771"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"f731fb65da78270a7e0328077c06f454d3a342a7","unresolved":false,"context_lines":[{"line_number":284,"context_line":"        if instance and floating_ip[\u0027port_id\u0027] and instance.uuid \u003d\u003d id:"},{"line_number":285,"context_line":"            try:"},{"line_number":286,"context_line":"                disassociate_floating_ip(self, context, instance, address)"},{"line_number":287,"context_line":"            except Exception as e:"},{"line_number":288,"context_line":"                msg \u003d _(\u0027Unable to disassociate floating IP %(address)s for \u0027"},{"line_number":289,"context_line":"                        \u0027instance %(id)s. Error: %(error)s\u0027) % ("},{"line_number":290,"context_line":"                        {\u0027address\u0027: address, \u0027id\u0027: id, \u0027error\u0027: e})"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_9f431d6f","line":287,"range":{"start_line":287,"start_character":12,"end_line":287,"end_character":34},"in_reply_to":"3fa7e38b_f537d7db","updated":"2020-02-18 08:58:06.000000000","message":"Done","commit_id":"81b3beb3abe3d0eb14c18e87e89ba38930402771"}],"nova/compute/manager.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"2e6197529cc181d28d13cea2d88511ee62ce722b","unresolved":false,"context_lines":[{"line_number":2410,"context_line":"                    phase\u003dfields.NotificationPhase.ERROR, exception\u003de,"},{"line_number":2411,"context_line":"                    bdms\u003dblock_device_mapping, tb\u003dtb)"},{"line_number":2412,"context_line":"        except (exception.FixedIpLimitExceeded,"},{"line_number":2413,"context_line":"                exception.NoMoreNetworks, exception.NoMoreFixedIps) as e:"},{"line_number":2414,"context_line":"            LOG.warning(\u0027No more network or fixed IP to be allocated\u0027,"},{"line_number":2415,"context_line":"                        instance\u003dinstance)"},{"line_number":2416,"context_line":"            self._notify_about_instance_usage(context, instance,"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_95e54340","side":"PARENT","line":2413,"range":{"start_line":2413,"start_character":16,"end_line":2413,"end_character":40},"updated":"2020-02-17 23:05:09.000000000","message":"Not clear why this was okay to remove.\n\n[Later] Okay, I see it only happens from NetworkList.get_by_project which is removed in the subsequent patch, so this should remain until then (since you have to respin anyway).","commit_id":"92101bd55a30e9a276e19ff02bb2534549bdeada"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"ed548f242c4ef8f7f1d59d01abc1e4796a4ef930","unresolved":false,"context_lines":[{"line_number":2410,"context_line":"                    phase\u003dfields.NotificationPhase.ERROR, exception\u003de,"},{"line_number":2411,"context_line":"                    bdms\u003dblock_device_mapping, tb\u003dtb)"},{"line_number":2412,"context_line":"        except (exception.FixedIpLimitExceeded,"},{"line_number":2413,"context_line":"                exception.NoMoreNetworks, exception.NoMoreFixedIps) as e:"},{"line_number":2414,"context_line":"            LOG.warning(\u0027No more network or fixed IP to be allocated\u0027,"},{"line_number":2415,"context_line":"                        instance\u003dinstance)"},{"line_number":2416,"context_line":"            self._notify_about_instance_usage(context, instance,"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_567d87c1","side":"PARENT","line":2413,"range":{"start_line":2413,"start_character":16,"end_line":2413,"end_character":40},"in_reply_to":"3fa7e38b_1f1c0d7b","updated":"2020-02-18 15:14:30.000000000","message":"Yeah, so my point is that serious research is required to convince self that NoMoreNetworks is not possible here. Versus the other exceptions removed via this patch which are legitimately not thrown from any (even dead) code.\n\nAnyway, I\u0027ll just convince myself that this is right in context with the subsequent patch and approve them both at once.","commit_id":"92101bd55a30e9a276e19ff02bb2534549bdeada"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"f731fb65da78270a7e0328077c06f454d3a342a7","unresolved":false,"context_lines":[{"line_number":2410,"context_line":"                    phase\u003dfields.NotificationPhase.ERROR, exception\u003de,"},{"line_number":2411,"context_line":"                    bdms\u003dblock_device_mapping, tb\u003dtb)"},{"line_number":2412,"context_line":"        except (exception.FixedIpLimitExceeded,"},{"line_number":2413,"context_line":"                exception.NoMoreNetworks, exception.NoMoreFixedIps) as e:"},{"line_number":2414,"context_line":"            LOG.warning(\u0027No more network or fixed IP to be allocated\u0027,"},{"line_number":2415,"context_line":"                        instance\u003dinstance)"},{"line_number":2416,"context_line":"            self._notify_about_instance_usage(context, instance,"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_1f1c0d7b","side":"PARENT","line":2413,"range":{"start_line":2413,"start_character":16,"end_line":2413,"end_character":40},"in_reply_to":"3fa7e38b_95e54340","updated":"2020-02-18 08:58:06.000000000","message":"We no longer have anything calling that function since commit f5f73b4c4e00164d3ced8f9def5c9084397bc591, so we don\u0027t need to worry about handling the error here. Ditto for anything else like this you see in the patch. Note that previously this patch and the next one were combined but I split them up to make things a bit easier to review, or so I hoped :)","commit_id":"92101bd55a30e9a276e19ff02bb2534549bdeada"}],"nova/tests/unit/api/openstack/compute/test_serversV21.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"2e6197529cc181d28d13cea2d88511ee62ce722b","unresolved":false,"context_lines":[{"line_number":4119,"context_line":""},{"line_number":4120,"context_line":"        fakes.stub_out_key_pair_funcs(self)"},{"line_number":4121,"context_line":"        fake.stub_out_image_service(self)"},{"line_number":4122,"context_line":"        self.stub_out(\u0027nova.db.api.project_get_networks\u0027,"},{"line_number":4123,"context_line":"                      lambda c, u: dict(id\u003d\u00271\u0027, host\u003d\u0027localhost\u0027))"},{"line_number":4124,"context_line":"        self.stub_out(\u0027nova.db.api.instance_create\u0027, instance_create)"},{"line_number":4125,"context_line":"        self.stub_out(\u0027nova.db.api.instance_system_metadata_update\u0027,"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_f5bcb709","side":"PARENT","line":4122,"updated":"2020-02-17 23:05:09.000000000","message":"possibly this one needs to go in the next patch too?","commit_id":"92101bd55a30e9a276e19ff02bb2534549bdeada"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"f731fb65da78270a7e0328077c06f454d3a342a7","unresolved":false,"context_lines":[{"line_number":4119,"context_line":""},{"line_number":4120,"context_line":"        fakes.stub_out_key_pair_funcs(self)"},{"line_number":4121,"context_line":"        fake.stub_out_image_service(self)"},{"line_number":4122,"context_line":"        self.stub_out(\u0027nova.db.api.project_get_networks\u0027,"},{"line_number":4123,"context_line":"                      lambda c, u: dict(id\u003d\u00271\u0027, host\u003d\u0027localhost\u0027))"},{"line_number":4124,"context_line":"        self.stub_out(\u0027nova.db.api.instance_create\u0027, instance_create)"},{"line_number":4125,"context_line":"        self.stub_out(\u0027nova.db.api.instance_system_metadata_update\u0027,"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_7f10a159","side":"PARENT","line":4122,"in_reply_to":"3fa7e38b_f5bcb709","updated":"2020-02-18 08:58:06.000000000","message":"Yeah, again, there\u0027s nothing calling this here so we can remove it even without removing the object itself","commit_id":"92101bd55a30e9a276e19ff02bb2534549bdeada"}],"nova/tests/unit/compute/test_compute_mgr.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"2e6197529cc181d28d13cea2d88511ee62ce722b","unresolved":false,"context_lines":[{"line_number":6683,"context_line":"        got_exc \u003d test.TestingException()"},{"line_number":6684,"context_line":"        self._test_instance_exception(got_exc, exception.RescheduledException)"},{"line_number":6685,"context_line":""},{"line_number":6686,"context_line":"    def test_spawn_network_alloc_failure(self):"},{"line_number":6687,"context_line":"        # Because network allocation is asynchronous, failures may not present"},{"line_number":6688,"context_line":"        # themselves until the virt spawn method is called."},{"line_number":6689,"context_line":"        self._test_build_and_run_spawn_exceptions(exception.NoMoreNetworks())"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_15bab30b","side":"PARENT","line":6686,"updated":"2020-02-17 23:05:09.000000000","message":"ditto","commit_id":"92101bd55a30e9a276e19ff02bb2534549bdeada"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"f731fb65da78270a7e0328077c06f454d3a342a7","unresolved":false,"context_lines":[{"line_number":6683,"context_line":"        got_exc \u003d test.TestingException()"},{"line_number":6684,"context_line":"        self._test_instance_exception(got_exc, exception.RescheduledException)"},{"line_number":6685,"context_line":""},{"line_number":6686,"context_line":"    def test_spawn_network_alloc_failure(self):"},{"line_number":6687,"context_line":"        # Because network allocation is asynchronous, failures may not present"},{"line_number":6688,"context_line":"        # themselves until the virt spawn method is called."},{"line_number":6689,"context_line":"        self._test_build_and_run_spawn_exceptions(exception.NoMoreNetworks())"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_3f02290f","side":"PARENT","line":6686,"in_reply_to":"3fa7e38b_15bab30b","updated":"2020-02-18 08:58:06.000000000","message":"ditto","commit_id":"92101bd55a30e9a276e19ff02bb2534549bdeada"}]}
