)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"51b5cc44b50749b9b369cd79b8164982ff1e0713","unresolved":true,"context_lines":[{"line_number":23,"context_line":"initial zone creation was still in progress, causing action to change"},{"line_number":24,"context_line":"from CREATE to UPDATE and breaking the worker\u0027s status update."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"Assisted-By: Claude Code 4.5 Sonnet"},{"line_number":27,"context_line":"Change-Id: I688dde81ed8fd7a8cfa7c0beb34dcf206e62514b"},{"line_number":28,"context_line":"Signed-off-by: Omer \u003coschwart@redhat.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":11,"id":"db08a8b3_e848da66","line":26,"updated":"2026-02-06 18:56:26.000000000","message":"We should have a bug linked here.","commit_id":"233cc3fe3bfb93d4b9cb3b195e99b17496f893c2"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":22623,"name":"Erik Olof Gunnar Andersson","email":"eandersson@blizzard.com","username":"eoandersson"},"change_message_id":"e8036d0f5fabe13eb9e0d25e3588b3f694f61a16","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"68cf2b77_1a69c339","updated":"2025-11-07 00:50:54.000000000","message":"Would it be possible to add a unit test, or scenario test to try to capture this?","commit_id":"a9504363bf49a7893e239c2ddea576c43fcd8add"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"b96720e4e548e38edf0d2e3c4de781470ce37a4c","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":4,"id":"b62a4da7_5939aeb0","in_reply_to":"68cf2b77_1a69c339","updated":"2025-11-11 19:08:12.000000000","message":"It is a complicated issue (at least for me). I don\u0027t think I can reproduce it with the current testing tools in the designate repository. I hit it when I tried running AXFR with 5000 records (while a secondary zone is being created).\nI am not even sure now if it doesn\u0027t happen with eventlet, but with threading it was easier to reproduce. I added a test using Claude, not sure if it\u0027s necessary, but I think it is the best I can do for now.\n\nThat is what happens again:\nWhen creating a SECONDARY zone, two concurrent RPC calls might race:\n\n  1. create_zone RPC: Will eventually call update_status(action\u003d\u0027CREATE\u0027)\n  2. perform_zone_xfr RPC: Calls update_zone(increment_serial\u003dFalse) immediately\n\nWithout the patch: AXFR changes action from \u0027CREATE\u0027 to \u0027UPDATE\u0027, then when create_zone tries to call update_status(action\u003d\u0027CREATE\u0027), this line will not allow _update_zone_or_record_status to finish the flow as zone.action is now \u0027UPDATE\u0027 but action is \u0027CREATE\u0027:\nhttps://opendev.org/openstack/designate/src/branch/master/designate/central/service.py#L2373","commit_id":"a9504363bf49a7893e239c2ddea576c43fcd8add"},{"author":{"_account_id":22623,"name":"Erik Olof Gunnar Andersson","email":"eandersson@blizzard.com","username":"eoandersson"},"change_message_id":"ca8784fa2fbfc844f0e2b6098783d1ce0c4e9f16","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"3e945cc0_fd3f0dbe","updated":"2025-11-14 16:03:05.000000000","message":"A little worried about this fix. It\u0027s probably fine, but would like to better understand how and why this is happening now.","commit_id":"0000879cd5b9c2fccc04e2ad3006fea13872302c"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"4305268586ea4440d6bc3266df9a8aa3f69dbd51","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"b6dc77b8_e87946e6","updated":"2026-02-09 10:36:36.000000000","message":"I should try to reproduce that issue with the current state and code changes","commit_id":"233cc3fe3bfb93d4b9cb3b195e99b17496f893c2"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"51b5cc44b50749b9b369cd79b8164982ff1e0713","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"69a367e3_b16c274f","updated":"2026-02-06 18:56:26.000000000","message":"I think we need to understand the situation better before adding this state override.","commit_id":"233cc3fe3bfb93d4b9cb3b195e99b17496f893c2"}],"designate/central/service.py":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"51b5cc44b50749b9b369cd79b8164982ff1e0713","unresolved":true,"context_lines":[{"line_number":978,"context_line":"        # (increment_serial\u003dFalse) to prevent a race condition where AXFR"},{"line_number":979,"context_line":"        # updates during initial zone creation would change action from CREATE"},{"line_number":980,"context_line":"        # to UPDATE, causing update_status(action\u003d\u0027CREATE\u0027) to fail."},{"line_number":981,"context_line":"        preserve_create \u003d ("},{"line_number":982,"context_line":"            zone.action \u003d\u003d \u0027CREATE\u0027 and"},{"line_number":983,"context_line":"            zone.type \u003d\u003d constants.ZONE_SECONDARY and"},{"line_number":984,"context_line":"            not increment_serial"}],"source_content_type":"text/x-python","patch_set":11,"id":"429674ec_56aa842b","line":981,"updated":"2026-02-06 18:56:26.000000000","message":"This concerns me. It confuses the state logic and I want to know how we got here. Maybe there is a missing state check somewhere higher in the call tree.","commit_id":"233cc3fe3bfb93d4b9cb3b195e99b17496f893c2"}],"designate/tests/functional/producer/test_tasks.py":[{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"aad01e65612422affbf9fc769e050712866c4466","unresolved":true,"context_lines":[{"line_number":224,"context_line":"                transferred_at\u003dtransferred_at"},{"line_number":225,"context_line":"            )"},{"line_number":226,"context_line":""},{"line_number":227,"context_line":"    def test_refresh_secondary_zone(self):"},{"line_number":228,"context_line":"        self._create_zones()"},{"line_number":229,"context_line":""},{"line_number":230,"context_line":"        # Fetch the created zones and set them to NONE action to simulate"}],"source_content_type":"text/x-python","patch_set":4,"id":"792e5cf7_d87f5ede","line":227,"updated":"2025-11-06 16:31:17.000000000","message":"This one is a mess, I wasn\u0027t sure how to update/fix it","commit_id":"a9504363bf49a7893e239c2ddea576c43fcd8add"}]}
