)]}'
{"id":"openstack%2Fnova~990815","triplet_id":"openstack%2Fnova~master~I12951011e295a5dd1ac7b33761b5cc8808328c10","project":"openstack/nova","branch":"master","topic":"bug/2154428","attention_set":{"36824":{"account":{"_account_id":36824,"name":"Isaac Silva","display_name":"Isaac Vicente","email":"isaacvicentsocial@gmail.com","username":"isaacvicente","status":"Cloud Engineer working with Openstack on Laboratory of Distributed System at LSD, Brazil"},"last_update":"2026-05-31 16:41:46.000000000","reason":"Someone else replied on the change"}},"removed_from_attention_set":{},"hashtags":[],"change_id":"I12951011e295a5dd1ac7b33761b5cc8808328c10","subject":"scheduler: fix aggregate cache race condition on concurrent add/remove_host","status":"NEW","created":"2026-05-31 01:18:29.000000000","updated":"2026-05-31 16:52:14.000000000","submit_type":"MERGE_IF_NECESSARY","mergeable":true,"submittable":false,"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"39e202b6de32a83790ed57feb44d2ac341d57921","_number":990815,"virtual_id_number":990815,"owner":{"_account_id":36824,"name":"Isaac Silva","display_name":"Isaac Vicente","email":"isaacvicentsocial@gmail.com","username":"isaacvicente","status":"Cloud Engineer working with Openstack on Laboratory of Distributed System at LSD, Brazil"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:check","value":1,"date":"2026-05-31 16:41:36.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":"","value":1,"default_value":0,"optional":true},"Code-Review":{"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_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":{"all":[{"_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,"permitted_voting_range":{"min":0,"max":1},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{" 0":"Default Priority","+1":"Contributor Review Promise","+2":"Core Review Promise"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"CC":[{"_account_id":14384,"name":"Quobyte CI","email":"openstack-ci-external@quobyte.com","username":"quobyteci","tags":["SERVICE_USER"]},{"_account_id":34420,"name":"openstack lightbits","display_name":"Lightbits CI","email":"openstack@lightbitslabs.com","username":"openstack_lightbits"}],"REVIEWER":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-05-31 01:48:01.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":"CC"},{"updated":"2026-05-31 02:21:44.000000000","updated_by":{"_account_id":14384,"name":"Quobyte CI","email":"openstack-ci-external@quobyte.com","username":"quobyteci","tags":["SERVICE_USER"]},"reviewer":{"_account_id":14384,"name":"Quobyte CI","email":"openstack-ci-external@quobyte.com","username":"quobyteci","tags":["SERVICE_USER"]},"state":"CC"},{"updated":"2026-05-31 03:21:44.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-31 16:41:46.000000000","updated_by":{"_account_id":34420,"name":"openstack lightbits","display_name":"Lightbits CI","email":"openstack@lightbitslabs.com","username":"openstack_lightbits"},"reviewer":{"_account_id":34420,"name":"openstack lightbits","display_name":"Lightbits CI","email":"openstack@lightbitslabs.com","username":"openstack_lightbits"},"state":"CC"}],"messages":[{"id":"595167f5fbb7f1ec5a99029278052652855560ef","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":36824,"name":"Isaac Silva","display_name":"Isaac Vicente","email":"isaacvicentsocial@gmail.com","username":"isaacvicente","status":"Cloud Engineer working with Openstack on Laboratory of Distributed System at LSD, Brazil"},"date":"2026-05-31 01:18:29.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"52ea03da51b7b586335babe3e477b686ea28f4de","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-05-31 01:48:01.000000000","message":"Patch Set 1:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/509c51ce6cad45b5a14292908aac89ff\n\n- openstack-tox-py311-arm64 https://zuul.opendev.org/t/openstack/build/d2ac87a280b943669ce915e341083a5b : SUCCESS in 12m 59s (non-voting)\n- openstack-tox-py313-arm64 https://zuul.opendev.org/t/openstack/build/c8ce861f6bdd44bda22c02577e1df177 : SUCCESS in 18m 01s (non-voting)\n- openstack-tox-py314-arm64 https://zuul.opendev.org/t/openstack/build/e282e596e2ab43f2ae8a6aa643118d3c : SUCCESS in 27m 40s (non-voting)","accounts_in_message":[],"_revision_number":1},{"id":"fa610509e826c0c6c1a95451a2863c1a45a25125","author":{"_account_id":14384,"name":"Quobyte CI","email":"openstack-ci-external@quobyte.com","username":"quobyteci","tags":["SERVICE_USER"]},"date":"2026-05-31 02:21:44.000000000","message":"Patch Set 1:\n\nBuild Failed \n\n* quobyteci:  nova_quobyteci : FAILURE, logs at: https://oscilogs.quobyte.com/logs/I12951011e295a5dd1ac7b33761b5cc8808328c10 .","accounts_in_message":[],"_revision_number":1},{"id":"590e49215d89e51b62577fd543f36ab70a2d753f","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-05-31 03:21:44.000000000","message":"Patch Set 1: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\nand https://docs.openstack.org/project-team-guide/testing.html#how-to-handle-test-failures\n\nhttps://zuul.opendev.org/t/openstack/buildset/9fcca56d792e4c809c9a003787fc2679\n\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/f2e040609ce44c36b638655786b3daa5 : SUCCESS in 43m 21s\n- tempest-integrated-compute https://zuul.opendev.org/t/openstack/build/26acf499a1b3474d90931c5a4dfdd999 : SUCCESS in 1h 57m 35s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/29399771dfd04f6594c577609920c94a : SUCCESS in 50m 57s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/e875e5ce7c344ea9b10088018961cde3 : SUCCESS in 52m 22s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/e3e4367302844069b82a3c734ea7921f : FAILURE in 7m 50s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/871464a1fe23476eb96c4f89874ccd3c : SUCCESS in 14m 45s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/3f7c45b5976c4d0d812a4c146ffacff0 : SUCCESS in 9m 14s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/bcc9308ff68e45798a71c1030fb08f77 : SUCCESS in 13m 02s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/bfdd019977f4428db18b7358158db9ce : SUCCESS in 11m 52s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/cdfc1ba478af4ac398f520cff7b6359b : SUCCESS in 11m 03s\n- ironic-tempest-bios-ipmi-autodetect https://zuul.opendev.org/t/openstack/build/6c4a56b61f5c4d80b4aab910e32ef2e4 : SUCCESS in 1h 12m 52s (non-voting)\n- nova-ceph-multistore https://zuul.opendev.org/t/openstack/build/9b3216037b344a19be937c5c34bda77a : SUCCESS in 1h 15m 45s\n- nova-live-migration https://zuul.opendev.org/t/openstack/build/b59b5652ed6b4f098b4122446d484254 : SUCCESS in 26m 53s\n- nova-vtpm https://zuul.opendev.org/t/openstack/build/c4a0bc510c7e49cb85f5c23005ad66c1 : SUCCESS in 32m 50s\n- nova-graceful-shutdown https://zuul.opendev.org/t/openstack/build/5d52b1998f914645a8ff08e38fa1ca95 : SUCCESS in 1h 12m 30s\n- nova-live-migration-ceph https://zuul.opendev.org/t/openstack/build/43b8876ae66b43c5a2622d8287b2e5c6 : SUCCESS in 57m 26s\n- nova-multi-cell https://zuul.opendev.org/t/openstack/build/fa12c7d47978419dbdd53cb4f71c9f1a : FAILURE in 1h 14m 00s\n- nova-next https://zuul.opendev.org/t/openstack/build/3ce50a260ac74f73bc4fe25cbf355a73 : SUCCESS in 2h 00m 13s\n- nova-alt-configurations https://zuul.opendev.org/t/openstack/build/81eb285d81be4844b908ad2b4bf15562 : SUCCESS in 1h 27m 12s\n- nova-tox-validate-backport https://zuul.opendev.org/t/openstack/build/34abae78cc344c59be34377fbc11d228 : SUCCESS in 4m 32s (non-voting)\n- nova-tox-functional-py311 https://zuul.opendev.org/t/openstack/build/807c58a657f54e938ee3810c515d1283 : SUCCESS in 23m 32s\n- nova-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/34663d862d1740e9a33fd538c8aea6d9 : SUCCESS in 24m 14s\n- nova-tox-functional-py313-threading https://zuul.opendev.org/t/openstack/build/b91ab8987b284531bff8986b473302cd : FAILURE in 57m 04s (non-voting)\n- nova-grenade-multinode https://zuul.opendev.org/t/openstack/build/97ae657ddcd949f99810a3538f84ab56 : SUCCESS in 55m 25s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/613bd0515f78483abc414a678a13f4bb : SUCCESS in 59m 41s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/1bbcc7ce932a4fdc934667609f47bc23 : SUCCESS in 29m 21s (non-voting)\n- barbican-tempest-plugin-simple-crypto https://zuul.opendev.org/t/openstack/build/b452010d6d62439f9f17768017a3f5ec : SUCCESS in 19m 44s (non-voting)\n- nova-tox-py313-threading https://zuul.opendev.org/t/openstack/build/6943f2a41c3a43c3bbfd7274c50ee5eb : SUCCESS in 10m 19s","accounts_in_message":[],"_revision_number":1},{"id":"4862cf886f0b53717039900bad445459d031d05f","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":36824,"name":"Isaac Silva","display_name":"Isaac Vicente","email":"isaacvicentsocial@gmail.com","username":"isaacvicente","status":"Cloud Engineer working with Openstack on Laboratory of Distributed System at LSD, Brazil"},"date":"2026-05-31 14:26:31.000000000","message":"Uploaded patch set 2.\n\nOutdated Votes:\n* Verified-1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":2},{"id":"36505e5797a35694188266623055eb1f8f547c3e","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-05-31 14:58:37.000000000","message":"Patch Set 2:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/6c67e31734b84a17a8450479d89b7b62\n\n- openstack-tox-py311-arm64 https://zuul.opendev.org/t/openstack/build/4aa3385471054a84bdc78e779036ad98 : SUCCESS in 24m 56s (non-voting)\n- openstack-tox-py313-arm64 https://zuul.opendev.org/t/openstack/build/ff96dd376f984f92a0a94352d23f527c : SUCCESS in 23m 53s (non-voting)\n- openstack-tox-py314-arm64 https://zuul.opendev.org/t/openstack/build/4678588e28dd49d8b2c2ee0e98bd81b9 : SUCCESS in 29m 58s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"6d4435f36c498e5cb922f9ec96332ff3598eba3c","author":{"_account_id":14384,"name":"Quobyte CI","email":"openstack-ci-external@quobyte.com","username":"quobyteci","tags":["SERVICE_USER"]},"date":"2026-05-31 15:21:45.000000000","message":"Patch Set 2:\n\nBuild Successful \n\n* quobyteci:  nova_quobyteci : SUCCESS, logs at: https://oscilogs.quobyte.com/logs/I12951011e295a5dd1ac7b33761b5cc8808328c10 .","accounts_in_message":[],"_revision_number":2},{"id":"605265acdf516c667aea49e6dc5af376f9e6bbe4","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-05-31 16:41:36.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/472e57534dcf4a6cbbd4726755e1fc65\n\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/fe69f827cf15475c8000edbfe90e7407 : SUCCESS in 1h 04m 26s\n- tempest-integrated-compute https://zuul.opendev.org/t/openstack/build/4ad89b7bc09d440aa7a4170a4846688d : SUCCESS in 2h 09m 00s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/8664366077694491ad2b0e535149f265 : SUCCESS in 1h 04m 33s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/79e3ea55ec2e49e284ef2df1bd9e01a3 : SUCCESS in 1h 17m 01s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/7c7464057282419dbd73fe3968718878 : SUCCESS in 7m 45s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/efae20ab3e3e4d28aa45b77ea733ead8 : SUCCESS in 16m 34s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/4098e00fcff9446a9598522e85ab820b : SUCCESS in 13m 29s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/6832511e73b2442d9942d5e68d126ee8 : SUCCESS in 22m 47s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/0eb54d14fa0d48fa9fb01189a0a8eea0 : SUCCESS in 6m 36s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/0f480f8978ab47509b1785daa32bee4b : SUCCESS in 15m 20s\n- ironic-tempest-bios-ipmi-autodetect https://zuul.opendev.org/t/openstack/build/1bd9904bc9964bf89f90f8d8c4bbfcd7 : SUCCESS in 1h 03m 04s (non-voting)\n- nova-ceph-multistore https://zuul.opendev.org/t/openstack/build/9dd308dd862542d5b38442f7eb15de84 : SUCCESS in 1h 42m 42s\n- nova-live-migration https://zuul.opendev.org/t/openstack/build/70b4c9a4d6c64ff8b90a069a67c446d1 : SUCCESS in 53m 28s\n- nova-vtpm https://zuul.opendev.org/t/openstack/build/7895493d953b4dcc8f7ac48609423459 : SUCCESS in 29m 57s\n- nova-graceful-shutdown https://zuul.opendev.org/t/openstack/build/338935d7949d4ec5bd4e6bfd31eca712 : SUCCESS in 50m 08s\n- nova-live-migration-ceph https://zuul.opendev.org/t/openstack/build/d0ae1778d1e146008ad5e78fff1b8f0c : SUCCESS in 32m 19s\n- nova-multi-cell https://zuul.opendev.org/t/openstack/build/32bd42111ae545778134c792c77e25c7 : SUCCESS in 1h 34m 37s\n- nova-next https://zuul.opendev.org/t/openstack/build/0768caf509e84858a9a24d00cc678523 : SUCCESS in 1h 14m 53s\n- nova-alt-configurations https://zuul.opendev.org/t/openstack/build/829e53fa5fa84a28910a40555f33f5ae : SUCCESS in 1h 33m 42s\n- nova-tox-validate-backport https://zuul.opendev.org/t/openstack/build/72508dddcb054f28958a8c73fa0f4bc0 : SUCCESS in 2m 43s (non-voting)\n- nova-tox-functional-py311 https://zuul.opendev.org/t/openstack/build/d1704b2e30f545bbbb5bc87277442a7b : SUCCESS in 26m 39s\n- nova-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/a8e0b63cfca144b699977447cfed39e5 : SUCCESS in 25m 23s\n- nova-tox-functional-py313-threading https://zuul.opendev.org/t/openstack/build/6b194ece89d6424db6b407a89a24b5d1 : FAILURE in 46m 29s (non-voting)\n- nova-grenade-multinode https://zuul.opendev.org/t/openstack/build/b4c0ddc8036c410e8c836e41df6d185e : SUCCESS in 1h 00m 04s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/34b6132f54c64f73a0145f0f1472363f : SUCCESS in 58m 36s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/f80d95115f2747e59d935ef816b36597 : SUCCESS in 30m 56s (non-voting)\n- barbican-tempest-plugin-simple-crypto https://zuul.opendev.org/t/openstack/build/117244bb9703452497ef696b0125f23b : SUCCESS in 20m 22s (non-voting)\n- nova-tox-py313-threading https://zuul.opendev.org/t/openstack/build/81b1bbbdbaa84fa7a8edf6eb71209634 : SUCCESS in 14m 13s","accounts_in_message":[],"_revision_number":2},{"id":"39e202b6de32a83790ed57feb44d2ac341d57921","tag":"autogenerated:jenkins-gerrit-trigger","author":{"_account_id":34420,"name":"openstack lightbits","display_name":"Lightbits CI","email":"openstack@lightbitslabs.com","username":"openstack_lightbits"},"date":"2026-05-31 16:52:14.000000000","message":"Patch Set 2:\n\nBuild succeeded. log path: ${LOG_PATH}\nLeave a comment with","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"3578fabb5b28eada04337348ce0b78d54aec10bb","revisions":{"8f30bef98b4f9bd8991566d59fed9b3993b0e7b2":{"kind":"REWORK","_number":1,"created":"2026-05-31 01:18:29.000000000","uploader":{"_account_id":36824,"name":"Isaac Silva","display_name":"Isaac Vicente","email":"isaacvicentsocial@gmail.com","username":"isaacvicente","status":"Cloud Engineer working with Openstack on Laboratory of Distributed System at LSD, Brazil"},"ref":"refs/changes/15/990815/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/nova","ref":"refs/changes/15/990815/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/nova refs/changes/15/990815/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/nova refs/changes/15/990815/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/nova refs/changes/15/990815/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/nova refs/changes/15/990815/1"}}},"commit":{"parents":[{"commit":"380f657b5102707a3da676478e72fd96691e966b","subject":"Merge \"Keep cached VIF until host-side unplug succeeds\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/380f657b5102707a3da676478e72fd96691e966b"}]}],"author":{"name":"Isaac Vicente","email":"isaacvicentsocial@gmail.com","date":"2026-05-31 01:11:57.000000000","tz":-180},"committer":{"name":"Isaac Vicente","email":"isaacvicentsocial@gmail.com","date":"2026-05-31 01:11:57.000000000","tz":-180},"subject":"Fix race condition on add/rm hosts on aggregates","message":"Fix race condition on add/rm hosts on aggregates\n\nConcurrent additions/removals of hosts on a aggregate\ncan lead to an inconsistent state of hosts of an aggregate\ndue to in-memory Nova cache.\n\nThis patch fixes this issue by re-reading from DB to ensure\nconsistency on concurrent operations.\n\nCloses-Bug: #2154428\nAssisted-By: gpt 5.4 mini\n\nChange-Id: I12951011e295a5dd1ac7b33761b5cc8808328c10\nSigned-off-by: Isaac Vicente \u003cisaacvicentsocial@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/8f30bef98b4f9bd8991566d59fed9b3993b0e7b2"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/8f30bef98b4f9bd8991566d59fed9b3993b0e7b2"}]},"branch":"refs/heads/master"},"3578fabb5b28eada04337348ce0b78d54aec10bb":{"kind":"REWORK","_number":2,"created":"2026-05-31 14:26:31.000000000","uploader":{"_account_id":36824,"name":"Isaac Silva","display_name":"Isaac Vicente","email":"isaacvicentsocial@gmail.com","username":"isaacvicente","status":"Cloud Engineer working with Openstack on Laboratory of Distributed System at LSD, Brazil"},"ref":"refs/changes/15/990815/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/nova","ref":"refs/changes/15/990815/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/nova refs/changes/15/990815/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/nova refs/changes/15/990815/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/nova refs/changes/15/990815/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/nova refs/changes/15/990815/2"}}},"commit":{"parents":[{"commit":"380f657b5102707a3da676478e72fd96691e966b","subject":"Merge \"Keep cached VIF until host-side unplug succeeds\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/380f657b5102707a3da676478e72fd96691e966b"}]}],"author":{"name":"Isaac Vicente","email":"isaacvicentsocial@gmail.com","date":"2026-05-31 01:11:57.000000000","tz":-180},"committer":{"name":"Isaac Vicente","email":"isaacvicentsocial@gmail.com","date":"2026-05-31 14:23:38.000000000","tz":-180},"subject":"scheduler: fix aggregate cache race condition on concurrent add/remove_host","message":"scheduler: fix aggregate cache race condition on concurrent add/remove_host\n\nConcurrent additions/removals of hosts on a aggregate\ncan lead to an inconsistent state of hosts of an aggregate\ndue to in-memory Nova cache.\n\nThis patch fixes this issue by re-reading from DB to ensure\nconsistency on concurrent operations.\n\nCloses-Bug: #2154428\nAssisted-By: gpt 5.4 mini\n\nChange-Id: I12951011e295a5dd1ac7b33761b5cc8808328c10\nSigned-off-by: Isaac Vicente \u003cisaacvicentsocial@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/3578fabb5b28eada04337348ce0b78d54aec10bb"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/3578fabb5b28eada04337348ce0b78d54aec10bb"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"OK","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY"},{"label":"Workflow","status":"MAY"},{"label":"Review-Priority","status":"MAY"}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Verified\u003dMAX","label:Verified\u003dMIN"],"atom_explanations":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Code-Review\u003dMAX","label:Code-Review\u003dMIN"],"atom_explanations":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"name":"Review-Priority","description":"Review Priority","status":"NOT_APPLICABLE","is_legacy":false,"applicability_expression_result":{"fulfilled":false,"status":"FAIL"},"submittability_expression_result":{"expression":"is:true","fulfilled":true,"status":"NOT_EVALUATED","passing_atoms":[],"failing_atoms":[],"atom_explanations":{}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Workflow\u003dMAX","label:Workflow\u003dMIN"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
