)]}'
{"id":"openstack%2Fwatcher~989395","triplet_id":"openstack%2Fwatcher~master~Iac27ecdbcd1fd2aa813a307866a3675cdb5936ff","project":"openstack/watcher","branch":"master","topic":"bug/2152254","attention_set":{},"removed_from_attention_set":{"30002":{"account":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"last_update":"2026-06-01 14:20:59.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"Iac27ecdbcd1fd2aa813a307866a3675cdb5936ff","subject":"Add regression test for notification lost during synchronization","status":"MERGED","created":"2026-05-20 14:11:04.000000000","updated":"2026-06-01 14:22:17.000000000","submitted":"2026-06-01 14:20:59.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":3,"unresolved_comment_count":1,"has_review_started":true,"submission_id":"989395-bug/2152254","meta_rev_id":"3ba39896cd3e128f57dde35269466b14adbacf6b","_number":989395,"virtual_id_number":989395,"owner":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},{"value":0,"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-06-01 14:20:59.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"all":[{"value":2,"date":"2026-06-01 13:37:40.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},{"value":2,"date":"2026-05-29 15:33:31.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"all":[{"value":1,"date":"2026-06-01 14:08:51.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},{"value":0,"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Review-Priority":{"all":[{"value":0,"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},{"value":0,"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{" 0":"Standard Change","+1":"Important Change","+2":"High Priority Change"},"default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-05-20 14:25:51.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2026-05-27 08:50:32.000000000","updated_by":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"reviewer":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"state":"REVIEWER"},{"updated":"2026-06-01 13:37:40.000000000","updated_by":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"reviewer":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"state":"REVIEWER"}],"messages":[{"id":"27e920161e6e9343875b3df22124c66562bc70eb","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"date":"2026-05-20 14:11:04.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"cd6772678a24dba2eb1ffa8f69a9472e6f22798c","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-05-20 14:25:51.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/b227c5b72d3844a89293c634b3cbbe24\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/4887f5b349df45ff9f4352ce3becb1f5 : SUCCESS in 6m 32s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/e60f5b202626446f937bd4551b915172 : SUCCESS in 6m 32s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/00a4aa4437bd4de693f47ebc2d459510 : SUCCESS in 5m 47s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/af2df89841b049098df098ef76a0a43e : SUCCESS in 6m 50s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/81e81bdc10cf484fbebc8c78795423bd : SUCCESS in 6m 13s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/ea6258352a3a47b8bbc0ad4a712abae8 : SUCCESS in 8m 35s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/cb1938b631f44cd09044cadf487ea5f0 : SUCCESS in 4m 35s\n- openstack-tox-py313-eventlet https://zuul.opendev.org/t/openstack/build/b3012c258a2d4e0a89415b58ae93edc0 : SUCCESS in 5m 15s","accounts_in_message":[],"_revision_number":1},{"id":"0c8a18fb2f05a0c768dc6d4f488cf6fc0a48e15a","author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"date":"2026-05-27 08:50:32.000000000","message":"Patch Set 1: Code-Review+1\n\n(2 comments)","accounts_in_message":[],"_revision_number":1},{"id":"d157b6dc88aa7db756318712590a83be5d31a528","author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"date":"2026-05-29 15:33:31.000000000","message":"Patch Set 1: Code-Review+2","accounts_in_message":[],"_revision_number":1},{"id":"577330a06524d8ac87d4787f155894eceaced8bd","author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"date":"2026-06-01 13:37:40.000000000","message":"Patch Set 1: Code-Review+2\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"ce8adb5276791ea35501fc0c24400e5ee1074df4","author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"date":"2026-06-01 14:08:51.000000000","message":"Patch Set 1: Workflow+1","accounts_in_message":[],"_revision_number":1},{"id":"3384c868ece5740920a84f2a50a93771316e621b","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-01 14:09:05.000000000","message":"Patch Set 1: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":1},{"id":"b53108033d91afe28f19668fde452f42e7e23b59","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-01 14:20:59.000000000","message":"Patch Set 1: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/c6d596c405414e05957b4942711d5053\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/1c59525a5a894b8f9235984c12185ad3 : SUCCESS in 6m 03s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/adede4fc3b4e449289404d1282e4b896 : SUCCESS in 6m 14s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/41d6b8afaa23406b8e69f8e6749e55f6 : SUCCESS in 6m 26s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/c664f9e9bcc84a1d957062be4fc6876f : SUCCESS in 5m 33s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/4fb2802386a64b1f82d8615ec52ab628 : SUCCESS in 4m 49s\n- openstack-tox-py313-eventlet https://zuul.opendev.org/t/openstack/build/4b957953b2ec464e9a19877dd7964222 : SUCCESS in 7m 03s","accounts_in_message":[],"_revision_number":1},{"id":"8467118c0b5b9757533584a2faaf60bbebcdb826","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-01 14:20:59.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":1},{"id":"3ba39896cd3e128f57dde35269466b14adbacf6b","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-01 14:22:17.000000000","message":"Patch Set 1:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/263d21772f24463a9ea9c8206a6f2943\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/0c2737204d934f4da5f71bf8c938ca80 : SUCCESS in 58s","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"f9d2ba14098c367a7e796889e40670f65f4c903b","revisions":{"f9d2ba14098c367a7e796889e40670f65f4c903b":{"kind":"REWORK","_number":1,"created":"2026-05-20 14:11:04.000000000","uploader":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"ref":"refs/changes/95/989395/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/watcher","ref":"refs/changes/95/989395/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/watcher refs/changes/95/989395/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/watcher refs/changes/95/989395/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/watcher refs/changes/95/989395/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/watcher refs/changes/95/989395/1"}}},"commit":{"parents":[{"commit":"9b0600157beb34ee18d3feb904c27667a248e0d3","subject":"Merge \"Update configuring docs for keystone section\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/watcher/commit/9b0600157beb34ee18d3feb904c27667a248e0d3"}]}],"author":{"name":"Douglas Viroel","email":"viroel@gmail.com","date":"2026-05-19 20:00:32.000000000","tz":-180},"committer":{"name":"Douglas Viroel","email":"viroel@gmail.com","date":"2026-05-20 14:10:41.000000000","tz":-180},"subject":"Add regression test for notification lost during synchronization","message":"Add regression test for notification lost during synchronization\n\nAdd test_notification_node_reaches_new_model_not_old to expose the race\ncondition where a notification firing while synchronize() is running\nexecute() applies its model update to the old model that is then\ndiscarded, silently losing the update.\n\nRelated-Bug: #2152645\nCo-Authored-By: Claude Sonnet 4.6\nChange-Id: Iac27ecdbcd1fd2aa813a307866a3675cdb5936ff\nSigned-off-by: Douglas Viroel \u003cviroel@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/watcher/commit/f9d2ba14098c367a7e796889e40670f65f4c903b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/watcher/commit/f9d2ba14098c367a7e796889e40670f65f4c903b"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"CLOSED","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY","applied_by":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"}}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dMAX"],"failing_atoms":["label:Verified\u003dMIN"],"atom_explanations":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dMAX"],"failing_atoms":["label:Code-Review\u003dMIN"],"atom_explanations":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Workflow\u003dMAX"],"failing_atoms":["label:Workflow\u003dMIN"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
