)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":32667,"name":"Mamatisa Nurmatov","email":"nurmatov.mamatisa@huawei.com","username":"isabek"},"change_message_id":"1e5b62bfcc1c23154a5fc02e668b8bd1260b9a3e","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Manu B \u003cmanu.b@est.tech\u003e"},{"line_number":5,"context_line":"CommitDate: 2021-09-01 14:29:42 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Use payload for PORT AFTER_UPDATE event"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: I84956d86ea45039a8841b2b1f4f02bf373efcef5"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"7e0e6f44_7173e9a8","line":7,"updated":"2021-09-01 15:04:25.000000000","message":"nit: FLOATING_IP also changed","commit_id":"10b62eb0a2fd3aec4559a61a8f642692a59a21ec"},{"author":{"_account_id":33273,"name":"Manu B","display_name":"Manu B","email":"manu.b@est.tech","username":"eceghkl"},"change_message_id":"65652fd8b4bc704ea2cf6c5b08ee8c12ca347d58","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Manu B \u003cmanu.b@est.tech\u003e"},{"line_number":5,"context_line":"CommitDate: 2021-09-01 14:29:42 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Use payload for PORT AFTER_UPDATE event"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: I84956d86ea45039a8841b2b1f4f02bf373efcef5"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"b4b5482d_78876be0","line":7,"in_reply_to":"7e0e6f44_7173e9a8","updated":"2021-09-02 03:34:58.000000000","message":"Done","commit_id":"10b62eb0a2fd3aec4559a61a8f642692a59a21ec"}],"neutron_dynamic_routing/services/bgp/bgp_plugin.py":[{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"4ea2363761f011606241e360aa2a0d6002f09e1d","unresolved":true,"context_lines":[{"line_number":79,"context_line":"    def _register_callbacks(self):"},{"line_number":80,"context_line":"        registry.subscribe(self.floatingip_update_callback,"},{"line_number":81,"context_line":"                           resources.FLOATING_IP,"},{"line_number":82,"context_line":"                           events.AFTER_UPDATE)"},{"line_number":83,"context_line":"        registry.subscribe(self.router_interface_callback,"},{"line_number":84,"context_line":"                           resources.ROUTER_INTERFACE,"},{"line_number":85,"context_line":"                           events.AFTER_CREATE)"}],"source_content_type":"text/x-python","patch_set":1,"id":"d4dfd805_6cee87a7","line":82,"updated":"2021-08-31 21:34:52.000000000","message":"I\u0027m not sure if it was by mistake or by purpose TBH but patch https://review.opendev.org/c/openstack/neutron/+/801453 which switched to payloads in AFTER_* events for floating ips changed event emited in create_floatingip() method. Earlier it was emited as AFTER_UPDATE - see https://review.opendev.org/c/openstack/neutron/+/801453/4/neutron/db/l3_db.py\nBecause of that it was handled by that floatingip_update_callback always.\nBut now it is emited with AFTER_CREATE event (which IMO makes sense TBH) thus You probably need to add something like:\n\n    registry.subscribe(self.floatingip_update_callback,\n                       resources.FLOATING_IP,\n                       events.AFTER_CREATE)\n\nhere","commit_id":"91b6c7966a2c4147e0604e26e616123aa29919ff"},{"author":{"_account_id":33273,"name":"Manu B","display_name":"Manu B","email":"manu.b@est.tech","username":"eceghkl"},"change_message_id":"65652fd8b4bc704ea2cf6c5b08ee8c12ca347d58","unresolved":false,"context_lines":[{"line_number":79,"context_line":"    def _register_callbacks(self):"},{"line_number":80,"context_line":"        registry.subscribe(self.floatingip_update_callback,"},{"line_number":81,"context_line":"                           resources.FLOATING_IP,"},{"line_number":82,"context_line":"                           events.AFTER_UPDATE)"},{"line_number":83,"context_line":"        registry.subscribe(self.router_interface_callback,"},{"line_number":84,"context_line":"                           resources.ROUTER_INTERFACE,"},{"line_number":85,"context_line":"                           events.AFTER_CREATE)"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a12c68a_02b01142","line":82,"in_reply_to":"d4dfd805_6cee87a7","updated":"2021-09-02 03:34:58.000000000","message":"Done","commit_id":"91b6c7966a2c4147e0604e26e616123aa29919ff"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"ba9e43292e53a4115486c8bd072e94767f53865d","unresolved":true,"context_lines":[{"line_number":224,"context_line":"        return super(BgpPlugin, self).get_advertised_routes(context,"},{"line_number":225,"context_line":"                                                            bgp_speaker_id)"},{"line_number":226,"context_line":""},{"line_number":227,"context_line":"    def floatingip_update_callback(self, resource, event, trigger, **kwargs):"},{"line_number":228,"context_line":"        if event !\u003d events.AFTER_UPDATE:"},{"line_number":229,"context_line":"            return"},{"line_number":230,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"8266721c_7f6bed8c","line":227,"range":{"start_line":227,"start_character":66,"end_line":227,"end_character":75},"updated":"2021-08-31 17:00:29.000000000","message":"This should be changed too. That receives a neutron.db.models.l3.Router in a payload.","commit_id":"91b6c7966a2c4147e0604e26e616123aa29919ff"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"4e760be4ff979c75657d71598fa558250366feb0","unresolved":true,"context_lines":[{"line_number":224,"context_line":"        return super(BgpPlugin, self).get_advertised_routes(context,"},{"line_number":225,"context_line":"                                                            bgp_speaker_id)"},{"line_number":226,"context_line":""},{"line_number":227,"context_line":"    def floatingip_update_callback(self, resource, event, trigger, **kwargs):"},{"line_number":228,"context_line":"        if event !\u003d events.AFTER_UPDATE:"},{"line_number":229,"context_line":"            return"},{"line_number":230,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"b0d8faf6_b807f22b","line":227,"range":{"start_line":227,"start_character":66,"end_line":227,"end_character":75},"in_reply_to":"8266721c_7f6bed8c","updated":"2021-08-31 17:01:07.000000000","message":"That\u0027s not correct.","commit_id":"91b6c7966a2c4147e0604e26e616123aa29919ff"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"4ea2363761f011606241e360aa2a0d6002f09e1d","unresolved":true,"context_lines":[{"line_number":224,"context_line":"        return super(BgpPlugin, self).get_advertised_routes(context,"},{"line_number":225,"context_line":"                                                            bgp_speaker_id)"},{"line_number":226,"context_line":""},{"line_number":227,"context_line":"    def floatingip_update_callback(self, resource, event, trigger, **kwargs):"},{"line_number":228,"context_line":"        if event !\u003d events.AFTER_UPDATE:"},{"line_number":229,"context_line":"            return"},{"line_number":230,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"e6bc01f9_d6bfe953","line":227,"range":{"start_line":227,"start_character":66,"end_line":227,"end_character":75},"in_reply_to":"b0d8faf6_b807f22b","updated":"2021-08-31 21:34:52.000000000","message":"+1 - that change is necessary as Rodolfo mentioned.","commit_id":"91b6c7966a2c4147e0604e26e616123aa29919ff"},{"author":{"_account_id":33273,"name":"Manu B","display_name":"Manu B","email":"manu.b@est.tech","username":"eceghkl"},"change_message_id":"65652fd8b4bc704ea2cf6c5b08ee8c12ca347d58","unresolved":false,"context_lines":[{"line_number":224,"context_line":"        return super(BgpPlugin, self).get_advertised_routes(context,"},{"line_number":225,"context_line":"                                                            bgp_speaker_id)"},{"line_number":226,"context_line":""},{"line_number":227,"context_line":"    def floatingip_update_callback(self, resource, event, trigger, **kwargs):"},{"line_number":228,"context_line":"        if event !\u003d events.AFTER_UPDATE:"},{"line_number":229,"context_line":"            return"},{"line_number":230,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"d1894b1c_8a81300b","line":227,"range":{"start_line":227,"start_character":66,"end_line":227,"end_character":75},"in_reply_to":"e6bc01f9_d6bfe953","updated":"2021-09-02 03:34:58.000000000","message":"Done","commit_id":"91b6c7966a2c4147e0604e26e616123aa29919ff"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"4ea2363761f011606241e360aa2a0d6002f09e1d","unresolved":true,"context_lines":[{"line_number":225,"context_line":"                                                            bgp_speaker_id)"},{"line_number":226,"context_line":""},{"line_number":227,"context_line":"    def floatingip_update_callback(self, resource, event, trigger, **kwargs):"},{"line_number":228,"context_line":"        if event !\u003d events.AFTER_UPDATE:"},{"line_number":229,"context_line":"            return"},{"line_number":230,"context_line":""},{"line_number":231,"context_line":"        ctx \u003d context.get_admin_context()"}],"source_content_type":"text/x-python","patch_set":1,"id":"fdea16dd_655c4a8d","line":228,"updated":"2021-08-31 21:34:52.000000000","message":"and also this line should be changed to something like:\n\n    if event not in [events.AFTER_UPDATE, events.AFTER_CREATE]:\n        return\n\nif this check is really necessary :)","commit_id":"91b6c7966a2c4147e0604e26e616123aa29919ff"},{"author":{"_account_id":33273,"name":"Manu B","display_name":"Manu B","email":"manu.b@est.tech","username":"eceghkl"},"change_message_id":"65652fd8b4bc704ea2cf6c5b08ee8c12ca347d58","unresolved":false,"context_lines":[{"line_number":225,"context_line":"                                                            bgp_speaker_id)"},{"line_number":226,"context_line":""},{"line_number":227,"context_line":"    def floatingip_update_callback(self, resource, event, trigger, **kwargs):"},{"line_number":228,"context_line":"        if event !\u003d events.AFTER_UPDATE:"},{"line_number":229,"context_line":"            return"},{"line_number":230,"context_line":""},{"line_number":231,"context_line":"        ctx \u003d context.get_admin_context()"}],"source_content_type":"text/x-python","patch_set":1,"id":"83f1d76b_ca55d79b","line":228,"in_reply_to":"fdea16dd_655c4a8d","updated":"2021-09-02 03:34:58.000000000","message":"Done","commit_id":"91b6c7966a2c4147e0604e26e616123aa29919ff"},{"author":{"_account_id":5948,"name":"Oleg Bondarev","email":"obondarev@mirantis.com","username":"obondarev"},"change_message_id":"d1855fb4e99e15eebb7adc3068706712f4bb81b4","unresolved":true,"context_lines":[{"line_number":233,"context_line":"        ctx \u003d context.get_admin_context()"},{"line_number":234,"context_line":"        fip \u003d payload.latest_state"},{"line_number":235,"context_line":"        new_router_id \u003d fip[\u0027router_id\u0027]"},{"line_number":236,"context_line":"        last_router_id \u003d fip.get(\u0027last_known_router_id\u0027)"},{"line_number":237,"context_line":"        floating_ip_address \u003d fip[\u0027floating_ip_address\u0027]"},{"line_number":238,"context_line":"        dest \u003d str(floating_ip_address) + \u0027/32\u0027"},{"line_number":239,"context_line":"        bgp_speakers \u003d self._bgp_speakers_for_gw_network_by_family("}],"source_content_type":"text/x-python","patch_set":5,"id":"5c57fb06_3e5fc1c2","line":236,"range":{"start_line":236,"start_character":33,"end_line":236,"end_character":55},"updated":"2021-09-02 15:45:20.000000000","message":"so this is placed into fip dict, not metadata, right?","commit_id":"b8b8788d23de525cfd5f446d5902435957ffa472"}]}
