)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"4a32b7319c3fcd572c261c5fb58295179d705339","unresolved":true,"context_lines":[{"line_number":9,"context_line":"A consequent patch will utilize it to detect db inconsistencies between"},{"line_number":10,"context_line":"neutron and ovn databases."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Related-Bug: #2009053"},{"line_number":13,"context_line":"Change-Id: I1f519147bca11f12a335f7821e92652da8ea1f57"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"7fbacbd2_0f48f376","line":12,"updated":"2023-03-29 20:04:35.000000000","message":"the bug number should change to point to the one for dhcpv6 stateless since metadata is no longer in scope","commit_id":"731130425c2226005637bb833b1c623a0e9cb4ec"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"dd72352d0b0fa3cd668e0816000dee24c2297e4a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"7941c3c8_49caf2ba","updated":"2023-03-07 17:36:31.000000000","message":"-1 just for visibility","commit_id":"1a2b5ae62e2a67816d42d460bbf22e0c9d88e4e4"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"afb92b70b8e8103b12df65c4088c54ce4954e872","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"48e8630e_053b1176","updated":"2023-03-09 09:50:03.000000000","message":"I was expecting a functional test checking \"update_security_group\"\n\nThe code looks ok","commit_id":"b1db308bb7c4b8138cd332343da030c20de4deae"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"915387bba759bb0afe57baea6ea2ebde0c4ecaed","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"e3c89924_d2f83289","updated":"2023-03-09 21:02:10.000000000","message":"Rodolfo, please let me know which FT coverage is missing for the new ovn client endpoint.","commit_id":"b1db308bb7c4b8138cd332343da030c20de4deae"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"55163ccaf511237c259f4dd94c58f82f74cd49d4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"92715c8d_7382d124","in_reply_to":"48e8630e_053b1176","updated":"2023-03-09 18:31:32.000000000","message":"Test cases in TestSecurityGroup already do that. Do you have something specific in mind? Or do you mean covering ovn_client.py function specifically, not relying on plugin.update_security_group triggering it? I am not sure what is actually missing from coverage perspective.","commit_id":"b1db308bb7c4b8138cd332343da030c20de4deae"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"02735912021b49564fedb3e9808b2cd0f9ebe290","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"3a0829ac_68a171fa","in_reply_to":"92715c8d_7382d124","updated":"2023-03-30 10:52:20.000000000","message":"For the maintenance task \"populate_revision_numbers_for_port_groups\", just to check that works interacting with the DB.","commit_id":"b1db308bb7c4b8138cd332343da030c20de4deae"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"44ae6a8b48157f5f392df90f0702aba699990064","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"6a2a8ade_6177f9b8","updated":"2023-03-15 15:09:52.000000000","message":"Slawek asked to raise the question about the need / implementation of the ACLs in drivers meeting this Friday. Holding the patches off for now.","commit_id":"731130425c2226005637bb833b1c623a0e9cb4ec"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"c10a38a59204ca0a3c725e9c9ec11649d2e544a5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"5bb27f66_7c828737","updated":"2023-03-09 23:53:12.000000000","message":"recheck neutron-ovn-rally-task","commit_id":"731130425c2226005637bb833b1c623a0e9cb4ec"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"daf20918d22d0ca45858b754f4d67ffc2ca556a4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"92dd90ca_44c29ae8","updated":"2023-03-14 15:11:49.000000000","message":"recheck neutron-ovn-tempest-ovs-release-ubuntu-old kernel oops in cirros boot","commit_id":"731130425c2226005637bb833b1c623a0e9cb4ec"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"ebb9a82d1b1cf9cf16ee8911d27d60b59ab22be6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"8b90a183_137c875c","updated":"2023-04-05 14:56:37.000000000","message":"Discussion in RA/NA patch made me realize that the ACLs for INGRESS should be independent of stateless-ness of SG and hence won\u0027t need to change on SG update. In which case revision_number tracking may be not needed at all, and this patch may be abandoned.","commit_id":"d103d9d983bb03ce44fa3da7458d46bffdcc49ea"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"8fce42a8dcca372c73d5642e307db3727346d595","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"ee5462f3_fb7e7801","updated":"2023-03-30 12:56:41.000000000","message":"To reconsider test coverage.","commit_id":"d103d9d983bb03ce44fa3da7458d46bffdcc49ea"}],"neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/maintenance.py":[{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"ce2774b4bd4b92c20279a7fdf1a1b7466c8576ed","unresolved":true,"context_lines":[{"line_number":326,"context_line":"        nb_sync.migrate_to_port_groups(admin_context)"},{"line_number":327,"context_line":"        raise periodics.NeverAgain()"},{"line_number":328,"context_line":""},{"line_number":329,"context_line":"    # The migration will run just once per neutron-server instance. If the lock"},{"line_number":330,"context_line":"    # is held by some other neutron-server instance in the cloud, we\u0027ll attempt"},{"line_number":331,"context_line":"    # to perform the migration every 10 seconds until completed."},{"line_number":332,"context_line":"    # TODO(ihrachys): Remove this after the first SLURP release after Bobcat."}],"source_content_type":"text/x-python","patch_set":1,"id":"fbf73c60_e5571e37","line":329,"updated":"2023-03-07 15:25:32.000000000","message":"nit: this isn\u0027t a migration","commit_id":"1a2b5ae62e2a67816d42d460bbf22e0c9d88e4e4"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"1e57e91109360cede3d753bee92850e47093c21d","unresolved":false,"context_lines":[{"line_number":326,"context_line":"        nb_sync.migrate_to_port_groups(admin_context)"},{"line_number":327,"context_line":"        raise periodics.NeverAgain()"},{"line_number":328,"context_line":""},{"line_number":329,"context_line":"    # The migration will run just once per neutron-server instance. If the lock"},{"line_number":330,"context_line":"    # is held by some other neutron-server instance in the cloud, we\u0027ll attempt"},{"line_number":331,"context_line":"    # to perform the migration every 10 seconds until completed."},{"line_number":332,"context_line":"    # TODO(ihrachys): Remove this after the first SLURP release after Bobcat."}],"source_content_type":"text/x-python","patch_set":1,"id":"afc57485_283342d1","line":329,"in_reply_to":"227b2732_87e22746","updated":"2023-03-08 22:42:51.000000000","message":"I have no strong opinion, like you said it\u0027s all copy/paste.","commit_id":"1a2b5ae62e2a67816d42d460bbf22e0c9d88e4e4"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"047ddd318b4c2d0d41191f06f61b867dc0047446","unresolved":false,"context_lines":[{"line_number":326,"context_line":"        nb_sync.migrate_to_port_groups(admin_context)"},{"line_number":327,"context_line":"        raise periodics.NeverAgain()"},{"line_number":328,"context_line":""},{"line_number":329,"context_line":"    # The migration will run just once per neutron-server instance. If the lock"},{"line_number":330,"context_line":"    # is held by some other neutron-server instance in the cloud, we\u0027ll attempt"},{"line_number":331,"context_line":"    # to perform the migration every 10 seconds until completed."},{"line_number":332,"context_line":"    # TODO(ihrachys): Remove this after the first SLURP release after Bobcat."}],"source_content_type":"text/x-python","patch_set":1,"id":"227b2732_87e22746","line":329,"in_reply_to":"f5255bd8_565b8157","updated":"2023-03-08 21:03:10.000000000","message":"Done","commit_id":"1a2b5ae62e2a67816d42d460bbf22e0c9d88e4e4"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"55eb78965361de39134ec887d35105f675c84d74","unresolved":true,"context_lines":[{"line_number":326,"context_line":"        nb_sync.migrate_to_port_groups(admin_context)"},{"line_number":327,"context_line":"        raise periodics.NeverAgain()"},{"line_number":328,"context_line":""},{"line_number":329,"context_line":"    # The migration will run just once per neutron-server instance. If the lock"},{"line_number":330,"context_line":"    # is held by some other neutron-server instance in the cloud, we\u0027ll attempt"},{"line_number":331,"context_line":"    # to perform the migration every 10 seconds until completed."},{"line_number":332,"context_line":"    # TODO(ihrachys): Remove this after the first SLURP release after Bobcat."}],"source_content_type":"text/x-python","patch_set":1,"id":"f5255bd8_565b8157","line":329,"in_reply_to":"fbf73c60_e5571e37","updated":"2023-03-08 21:02:57.000000000","message":"It\u0027s a copy-paste from all the rest of handlers. They are not (or: are) migrations too. I will leave it as is. Let me know if you feel strong about it though.\n\nPerhaps we should stop copy-pasting the same comment over and over in this file, when adding a new transformation handler.","commit_id":"1a2b5ae62e2a67816d42d460bbf22e0c9d88e4e4"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"cff34b7c19f0dacbad4a3b0927411557cccddde9","unresolved":true,"context_lines":[{"line_number":329,"context_line":"    # The migration will run just once per neutron-server instance. If the lock"},{"line_number":330,"context_line":"    # is held by some other neutron-server instance in the cloud, we\u0027ll attempt"},{"line_number":331,"context_line":"    # to perform the migration every 10 seconds until completed."},{"line_number":332,"context_line":"    # TODO(ihrachys): Remove this after the first SLURP release after Bobcat."},{"line_number":333,"context_line":"    @periodics.periodic(spacing\u003d10, run_immediately\u003dTrue)"},{"line_number":334,"context_line":"    def populate_revision_numbers_for_port_groups(self):"},{"line_number":335,"context_line":"        \"\"\"Populate revision numbers for port groups, which is used to detect"}],"source_content_type":"text/x-python","patch_set":1,"id":"3cd10f27_aeaf9394","line":332,"updated":"2023-03-07 08:19:05.000000000","message":"great that You remembered about SLURP releases :) We need all to remember about things like that.","commit_id":"1a2b5ae62e2a67816d42d460bbf22e0c9d88e4e4"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"55eb78965361de39134ec887d35105f675c84d74","unresolved":false,"context_lines":[{"line_number":329,"context_line":"    # The migration will run just once per neutron-server instance. If the lock"},{"line_number":330,"context_line":"    # is held by some other neutron-server instance in the cloud, we\u0027ll attempt"},{"line_number":331,"context_line":"    # to perform the migration every 10 seconds until completed."},{"line_number":332,"context_line":"    # TODO(ihrachys): Remove this after the first SLURP release after Bobcat."},{"line_number":333,"context_line":"    @periodics.periodic(spacing\u003d10, run_immediately\u003dTrue)"},{"line_number":334,"context_line":"    def populate_revision_numbers_for_port_groups(self):"},{"line_number":335,"context_line":"        \"\"\"Populate revision numbers for port groups, which is used to detect"}],"source_content_type":"text/x-python","patch_set":1,"id":"a827e069_1fe8589c","line":332,"in_reply_to":"3cd10f27_aeaf9394","updated":"2023-03-08 21:02:57.000000000","message":"Ack","commit_id":"1a2b5ae62e2a67816d42d460bbf22e0c9d88e4e4"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"ce2774b4bd4b92c20279a7fdf1a1b7466c8576ed","unresolved":true,"context_lines":[{"line_number":334,"context_line":"    def populate_revision_numbers_for_port_groups(self):"},{"line_number":335,"context_line":"        \"\"\"Populate revision numbers for port groups, which is used to detect"},{"line_number":336,"context_line":"           inconsistencies."},{"line_number":337,"context_line":"        \"\"\""},{"line_number":338,"context_line":"        # Collect names of PGs that miss revision numbers in ovn db"},{"line_number":339,"context_line":"        sg_ids \u003d {}"},{"line_number":340,"context_line":"        for name, pg in self._nb_idl.get_sg_port_groups().items():"}],"source_content_type":"text/x-python","patch_set":1,"id":"206e5c1a_5f29f5ec","line":337,"updated":"2023-03-07 15:25:32.000000000","message":"Does this need a \u0027if not self.has_lock:\u0027 check like others here?","commit_id":"1a2b5ae62e2a67816d42d460bbf22e0c9d88e4e4"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"55eb78965361de39134ec887d35105f675c84d74","unresolved":false,"context_lines":[{"line_number":334,"context_line":"    def populate_revision_numbers_for_port_groups(self):"},{"line_number":335,"context_line":"        \"\"\"Populate revision numbers for port groups, which is used to detect"},{"line_number":336,"context_line":"           inconsistencies."},{"line_number":337,"context_line":"        \"\"\""},{"line_number":338,"context_line":"        # Collect names of PGs that miss revision numbers in ovn db"},{"line_number":339,"context_line":"        sg_ids \u003d {}"},{"line_number":340,"context_line":"        for name, pg in self._nb_idl.get_sg_port_groups().items():"}],"source_content_type":"text/x-python","patch_set":1,"id":"d0e192b4_3a3a039a","line":337,"in_reply_to":"206e5c1a_5f29f5ec","updated":"2023-03-08 21:02:57.000000000","message":"Thanks for spotting it. What happens when you don\u0027t start with a copy-paste. :)\n\n(Perhaps there should be a common decorator for all of them that would check the lock and bail out as needed, then we would consistently apply it to all of handlers...)","commit_id":"1a2b5ae62e2a67816d42d460bbf22e0c9d88e4e4"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"b9a02610f25bc9bea7f94992807ea6cdbbac2630","unresolved":false,"context_lines":[{"line_number":334,"context_line":"    def populate_revision_numbers_for_port_groups(self):"},{"line_number":335,"context_line":"        \"\"\"Populate revision numbers for port groups, which is used to detect"},{"line_number":336,"context_line":"           inconsistencies."},{"line_number":337,"context_line":"        \"\"\""},{"line_number":338,"context_line":"        # Collect names of PGs that miss revision numbers in ovn db"},{"line_number":339,"context_line":"        sg_ids \u003d {}"},{"line_number":340,"context_line":"        for name, pg in self._nb_idl.get_sg_port_groups().items():"}],"source_content_type":"text/x-python","patch_set":1,"id":"12a6eae7_f56fe816","line":337,"in_reply_to":"62f0fcda_203b943c","updated":"2023-03-09 00:46:45.000000000","message":"I\u0027ll put this refactor to my backlog and post a fix when I get to it.","commit_id":"1a2b5ae62e2a67816d42d460bbf22e0c9d88e4e4"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"1e57e91109360cede3d753bee92850e47093c21d","unresolved":false,"context_lines":[{"line_number":334,"context_line":"    def populate_revision_numbers_for_port_groups(self):"},{"line_number":335,"context_line":"        \"\"\"Populate revision numbers for port groups, which is used to detect"},{"line_number":336,"context_line":"           inconsistencies."},{"line_number":337,"context_line":"        \"\"\""},{"line_number":338,"context_line":"        # Collect names of PGs that miss revision numbers in ovn db"},{"line_number":339,"context_line":"        sg_ids \u003d {}"},{"line_number":340,"context_line":"        for name, pg in self._nb_idl.get_sg_port_groups().items():"}],"source_content_type":"text/x-python","patch_set":1,"id":"62f0fcda_203b943c","line":337,"in_reply_to":"d0e192b4_3a3a039a","updated":"2023-03-08 22:42:51.000000000","message":"Seems like a follow-on refactor, if you want to open a bug for such a small thing.","commit_id":"1a2b5ae62e2a67816d42d460bbf22e0c9d88e4e4"}]}
