)]}'
{"id":"openstack%2Fplacement~993106","triplet_id":"openstack%2Fplacement~master~I2bc6f54a34b364bdf1e9e40fc344a889a0b0ae23","project":"openstack/placement","branch":"master","topic":"placement-sqlite-fix","attention_set":{},"removed_from_attention_set":{"35153":{"account":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"last_update":"2026-07-10 14:10:37.000000000","reason":"Change was submitted"},"9708":{"account":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"last_update":"2026-07-10 11:41:06.000000000","reason":"\u003cGERRIT_ACCOUNT_9708\u003e replied on the change","reason_account":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"}}},"hashtags":[],"change_id":"I2bc6f54a34b364bdf1e9e40fc344a889a0b0ae23","subject":"tests: Support file-backed SQLite URL in placement fixtures","status":"MERGED","created":"2026-06-12 12:50:30.000000000","updated":"2026-07-10 14:11:39.000000000","submitted":"2026-07-10 14:10:37.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":27,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"993106-placement-sqlite-fix","meta_rev_id":"b536a602622d90bfd688594fe058c52b3762a3d6","_number":993106,"virtual_id_number":993106,"owner":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},{"value":0,"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-07-10 14:10:37.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"}],"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":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"all":[{"value":0,"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},{"value":2,"date":"2026-07-10 11:41:06.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":2,"date":"2026-07-09 18:56:41.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"}],"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":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"all":[{"value":0,"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},{"value":1,"date":"2026-07-10 11:41:06.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Review-Priority":{"all":[{"value":0,"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},{"value":0,"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"}],"values":{" 0":"Default Priority","+1":"Contributor Review Promise","+2":"Core Review Promise"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-06-12 14:03:14.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-06-18 14:38:06.000000000","updated_by":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"reviewer":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"state":"REVIEWER"},{"updated":"2026-07-09 18:56:41.000000000","updated_by":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"reviewer":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"state":"REVIEWER"}],"messages":[{"id":"2cd52d63eb8f9f40cfe1e4eb93bdd3c3619263a9","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"date":"2026-06-12 12:50:30.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"613525c7d5ca9b630f9572b03932262419feb3ef","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-12 14:03:14.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/47b9dcae3f524f3e9e0d8c9cc106c6a7\n\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/621e51a6daa9480b8d5b7ddf49d8f0bf : SUCCESS in 36m 52s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/1e09c7c910b640b0925f3c6805fb3dd0 : SUCCESS in 1h 06m 46s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/ef5029dfea62489aafd5a9127c9d3292 : SUCCESS in 5m 20s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/a8baf1afaa9747e784dd1c6e3d63344d : SUCCESS in 4m 35s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/4928e7d20baf4babb2c6f9765b6729f6 : SUCCESS in 5m 31s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/50755501cab945a98c32735f0fd96854 : SUCCESS in 4m 17s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/1f213de7ea2147b2a870ebe83c15df75 : FAILURE in 6m 25s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/c46be0c7101e4e169f77e99ffbb3bf42 : SUCCESS in 8m 34s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/b428fff83a3f448382486c6e56ffa1f0 : SUCCESS in 5m 00s\n- openstack-tox-functional-py311 https://zuul.opendev.org/t/openstack/build/95dbc6bbdcc54c1d9822ff385a899a1b : SUCCESS in 6m 23s\n- openstack-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/f3def7aa916940d59bf69970dc69e56c : SUCCESS in 4m 57s\n- openstack-tox-functional-py314 https://zuul.opendev.org/t/openstack/build/5d1e05f2c38f4f7cbc288b1963c88c95 : SUCCESS in 8m 05s (non-voting)\n- placement-nova-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/32ad81f68dbc4d16b30b5c8d445ce243 : SUCCESS in 19m 17s","accounts_in_message":[],"_revision_number":1},{"id":"df1774540dc927a9a86fc866c6d984186b864237","author":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"date":"2026-06-15 07:15:28.000000000","message":"Patch Set 1: Workflow-1","accounts_in_message":[],"_revision_number":1},{"id":"d5a00337a07be9ccb00aa8ccc3c89b2ff51ffa6a","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"date":"2026-06-15 07:57:59.000000000","message":"Uploaded patch set 2.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n* Workflow-1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":2},{"id":"6a133d8b27fa35293881bbf82ec4bc0ca2a100f0","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-15 09:11:47.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/c1ffe4ea2f5944d6844093ebf0bf9147\n\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/dcfedd89e40d45e9885b0f13f0bb5c80 : SUCCESS in 1h 08m 38s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/c13000ebe9e94968be3b7025deead15e : SUCCESS in 33m 59s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/9ddd8714e7c24b099fbfa1990259186c : SUCCESS in 6m 23s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/937ee36ed0444ed99d0eaa0b3ca599db : SUCCESS in 4m 35s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/2b5f86ae3dbb472da5d75a375f23d33c : SUCCESS in 3m 28s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/285daf9f4d6f438d8bf175848811f74c : SUCCESS in 2m 54s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/20780eed3fca4d1181de88e6921e325e : FAILURE in 8m 38s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/b5634a69d4214eacbcfb2768ffd3c545 : SUCCESS in 9m 45s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/bc2689d64b4241a7bd4fd7297c24ec64 : SUCCESS in 8m 50s\n- openstack-tox-functional-py311 https://zuul.opendev.org/t/openstack/build/bbf5c9fff6b042c2a9be7d3d8b3262bb : SUCCESS in 5m 11s\n- openstack-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/c7019970c54e4efc8fe6badfbaec2b23 : SUCCESS in 5m 18s\n- openstack-tox-functional-py314 https://zuul.opendev.org/t/openstack/build/570e1f6dc61742468d8e407fa67db220 : SUCCESS in 7m 38s (non-voting)\n- placement-nova-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/0323787f9cae4ba784d9f9b3dddcf749 : SUCCESS in 21m 06s","accounts_in_message":[],"_revision_number":2},{"id":"6866cd56320cca866d6cd7fcf0fba9dfa26850cd","author":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"date":"2026-06-15 10:32:22.000000000","message":"Patch Set 2: Workflow-1","accounts_in_message":[],"_revision_number":2},{"id":"706ddbec7b1a2bce1c4ace9ac765c846279de895","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"date":"2026-06-17 15:32:15.000000000","message":"Uploaded patch set 3.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n* Workflow-1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":3},{"id":"0145aa3e638b958d423fd138059f42ea37575ccc","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-17 16:53:33.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/aeea95205e7a4153b7f9512d14f7ee4c\n\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/bbba397976f74f9d96090985b8f57aaf : SUCCESS in 1h 13m 07s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/733c90a41cc1472b87caeb6f1cd69452 : SUCCESS in 59m 57s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/587153069b754637ab700e16213311fd : SUCCESS in 19m 45s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/a723e2b7b5c94f118d91114510d439b5 : SUCCESS in 4m 47s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/0581fa651d2747028dccd801852946c3 : SUCCESS in 6m 04s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/571e8d05b4454b0494733fec06df2307 : SUCCESS in 4m 44s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/5b52c4164f7f4c4787a2a7ddba838ba1 : FAILURE in 6m 27s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/01467e5727614876869eb0becec51002 : SUCCESS in 8m 31s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/abdeb92051e74c77bd06bdea676c213e : SUCCESS in 9m 09s\n- openstack-tox-functional-py311 https://zuul.opendev.org/t/openstack/build/e0bf33fd1adc4f509c2188313d723527 : SUCCESS in 6m 17s\n- openstack-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/99ee1a85ad7a4551b70d5c229980390c : SUCCESS in 5m 49s\n- openstack-tox-functional-py314 https://zuul.opendev.org/t/openstack/build/c2cc43aa6a3b4232b2551e9f0fcc7c01 : SUCCESS in 4m 53s (non-voting)\n- placement-nova-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/d854091b31eb4935b60d2df219cc52f7 : SUCCESS in 21m 17s","accounts_in_message":[],"_revision_number":3},{"id":"35f0ff0ce8b227c648ce48b1389094945892b03c","author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"date":"2026-06-18 14:38:06.000000000","message":"Patch Set 3: Code-Review-1\n\n(3 comments)","accounts_in_message":[],"_revision_number":3},{"id":"98660731c0c587493f874a84ebce50f90527b877","author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"date":"2026-06-18 14:41:07.000000000","message":"Patch Set 3:\n\n(1 comment)","accounts_in_message":[],"_revision_number":3},{"id":"40c8c3b3b03059f5c8d7f3d16215f59d212acf5f","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"date":"2026-07-02 07:17:24.000000000","message":"Uploaded patch set 4.\n\nOutdated Votes:\n* Code-Review-1 (copy condition: \"changekind:TRIVIAL_REBASE OR is:MIN\")\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":4},{"id":"17774cb788809e7c900d5687cd83727a0806d9fc","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-02 08:29:57.000000000","message":"Patch Set 4: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/5455975e1f244aebbd5f0d81dba5b42b\n\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/0abe72b81fd643649342d241c01b2f77 : SUCCESS in 1h 06m 54s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/df90b09d07dd439b90ced1e25b06003f : SUCCESS in 33m 27s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/000b01e6adc340379972482a819875e9 : SUCCESS in 14m 04s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/20a4bf44edb74a41b97ac3f2cd553183 : SUCCESS in 4m 49s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/30d6d21a615e4f27a177f08d5d1827f9 : SUCCESS in 3m 21s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/4fc562854ef74a5fab631817ec8a7938 : SUCCESS in 3m 25s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/de262a74c1e5453aa9691a7222b85c6d : FAILURE in 3m 34s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/708afbed2f5849d2bbea5f755bc0f35a : SUCCESS in 7m 19s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/a08f5ca7bc724c4c95f84533495e4c14 : SUCCESS in 7m 40s\n- openstack-tox-functional-py311 https://zuul.opendev.org/t/openstack/build/9075baf8cb8947e58f29d4e1139dcfa3 : SUCCESS in 4m 49s\n- openstack-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/2f1dcd9f0c0c4db9a4c68fb7cdc0aa66 : SUCCESS in 5m 10s\n- openstack-tox-functional-py314 https://zuul.opendev.org/t/openstack/build/3e648c8feaf14f78891845ac489671bf : SUCCESS in 7m 30s (non-voting)\n- placement-nova-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/6ff35ac72f9745e8a08ed57b47d4140f : SUCCESS in 20m 28s","accounts_in_message":[],"_revision_number":4},{"id":"3f80c8c42c0eabca81ce212e4ffb9c19a2eba1e0","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"date":"2026-07-03 11:42:32.000000000","message":"Uploaded patch set 5.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":5},{"id":"d37253241a5459c698f7328b7cea63e5afe95e29","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"date":"2026-07-03 12:06:12.000000000","message":"Uploaded patch set 6.","accounts_in_message":[],"_revision_number":6},{"id":"d2f12888ab9545e7cd0709dc2a5445abb9649ee2","author":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"date":"2026-07-03 12:58:45.000000000","message":"Patch Set 6:\n\n(3 comments)","accounts_in_message":[],"_revision_number":6},{"id":"92bf8932a591e82884210f45d127eca6c4972408","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-03 13:17:49.000000000","message":"Patch Set 6: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/7a99867522ea4eed8bceef8f94711757\n\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/f66641b106c546b4b897bea9ea372804 : SUCCESS in 1h 05m 36s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/1bdb5c9c91804d8a894f3650b663d40d : SUCCESS in 38m 33s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/892ee97c5aee4c1298fb894f047c779a : SUCCESS in 6m 51s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/be7187a41b3d44bfbf52576860496da2 : SUCCESS in 4m 45s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/d1e6d597c7a84218ad39c28e62962c0f : SUCCESS in 3m 49s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/09d3fe30d217445e9b559a78a7a48bcb : SUCCESS in 4m 12s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/72f9b4e45bb6427495a65aa8be00da2d : FAILURE in 4m 20s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/31bc15fea4304db486191d448325ff14 : SUCCESS in 5m 13s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/05619fc905994764aff0383cd3f3c4ab : SUCCESS in 4m 43s\n- openstack-tox-functional-py311 https://zuul.opendev.org/t/openstack/build/6595a0494b59405e86fd2b817f2f30af : SUCCESS in 5m 10s\n- openstack-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/358e87804af24213b45093f904f03705 : SUCCESS in 3m 38s\n- openstack-tox-functional-py314 https://zuul.opendev.org/t/openstack/build/c769f85991de48ca829a5753c9d53755 : SUCCESS in 7m 56s (non-voting)\n- placement-nova-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/821108c0fde947dbac976e44c0f9cdeb : SUCCESS in 20m 44s","accounts_in_message":[],"_revision_number":6},{"id":"d01ac5147c50463a95525d86f3963981705393b8","author":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"date":"2026-07-03 14:45:55.000000000","message":"Patch Set 6:\n\n(1 comment)","accounts_in_message":[],"_revision_number":6},{"id":"e159efe0958a79f6ca75478ca86875e9b63f0aac","tag":"autogenerated:gerrit:setTopic","author":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"date":"2026-07-06 15:31:37.000000000","message":"Topic set to eventlet-removal","accounts_in_message":[],"_revision_number":6},{"id":"574a325d341a994a019757b0c3ab2591ec09e24b","author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"date":"2026-07-07 16:46:23.000000000","message":"Patch Set 6:\n\n(2 comments)","accounts_in_message":[],"_revision_number":6},{"id":"8bf68e1e97a6a76ff2b2df8c5475cad70e149096","author":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"date":"2026-07-07 21:48:50.000000000","message":"Patch Set 6:\n\n(1 comment)","accounts_in_message":[],"_revision_number":6},{"id":"6402766bf494ed94d477e3fe7b7d1149b1851816","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"date":"2026-07-08 12:06:26.000000000","message":"Uploaded patch set 7.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":7},{"id":"4d41a69f099287fc988d2e97919ccaa820e7229d","author":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"date":"2026-07-08 12:29:17.000000000","message":"Patch Set 7:\n\n(1 comment)","accounts_in_message":[],"_revision_number":7},{"id":"2495ba51021296781ec9d5cd94d16e7c9d13fa14","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-08 13:22:48.000000000","message":"Patch Set 7: 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/54ae756446d64b0694c69daba09af2b1\n\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/a6fa43ed13ca451380669a494400b69d : FAILURE in 15m 57s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/19990dde7d25499ca564bebf4e9a86c7 : SUCCESS in 1h 10m 03s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/726ecc3fee0949d0922fd6793af8eca1 : SUCCESS in 14m 31s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/46da7d6e2de3409a804e209b558433f9 : SUCCESS in 5m 16s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/453c208f7ac1407fa473451f5ef52853 : SUCCESS in 4m 23s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/36a611c72bc54d098e818894e9633609 : SUCCESS in 12m 33s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/b473ea9ae7a6459585d3c3ad445ac993 : FAILURE in 14m 35s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/94ed7a3972bb4037be4d81c78c55d9e0 : SUCCESS in 8m 37s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/a1e08e9ab83a4919b807191040d2d33b : SUCCESS in 10m 14s\n- openstack-tox-functional-py311 https://zuul.opendev.org/t/openstack/build/14cdb71396044a5db9bc7cae3d227291 : SUCCESS in 6m 12s\n- openstack-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/43eb06624ed6428d9ffc8069b8c74a20 : SUCCESS in 6m 12s\n- openstack-tox-functional-py314 https://zuul.opendev.org/t/openstack/build/830117b9a4834fb2806af55ea5a64e90 : SUCCESS in 9m 13s (non-voting)\n- placement-nova-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/6c79e6581db94916bbc676cf9bd87ba2 : FAILURE in 13m 33s","accounts_in_message":[],"_revision_number":7},{"id":"a8742dc2d257978a0008b3718616d49a7896deac","author":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"date":"2026-07-08 23:35:38.000000000","message":"Patch Set 7:\n\n(1 comment)","accounts_in_message":[],"_revision_number":7},{"id":"74a000edb1c1a459b1816d7e9d60423947482203","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-09 00:47:56.000000000","message":"Patch Set 7: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/7cb51fe07b394cd892e721a167a7097d\n\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/d026ff99d02a472f948c5af99a38597f : SUCCESS in 1h 06m 59s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/7dcd2b3433344a4999b88853c714c580 : SUCCESS in 33m 07s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/d1a10022d93f49f2a9367ee41f7f1842 : SUCCESS in 15m 39s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/74a1383b26124387af2b1980d59a2752 : SUCCESS in 4m 29s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/bb5f52dc88264e66bd6af6c3862ecc79 : SUCCESS in 5m 07s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/1e403e29425a42d185cf7fed24c9766f : SUCCESS in 5m 37s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/1d8f0af0b14f4923a0e7c9a0ecfbc2c1 : FAILURE in 6m 23s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/87dee0282e6f4b86a0e82dc557e59f6c : SUCCESS in 5m 19s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/dc76badf1b9945b888e1f64d9e58fe21 : SUCCESS in 8m 59s\n- openstack-tox-functional-py311 https://zuul.opendev.org/t/openstack/build/3da8c714a9dd4450b9ede46fca869886 : SUCCESS in 4m 37s\n- openstack-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/794bd3c0fe804068b3d32d5205a82d80 : SUCCESS in 4m 26s\n- openstack-tox-functional-py314 https://zuul.opendev.org/t/openstack/build/0cc3c5e8bdaf4379ab903620851a9a1f : SUCCESS in 4m 30s (non-voting)\n- placement-nova-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/7b891b3d270b4447ab4c5357b466f9bb : SUCCESS in 21m 28s","accounts_in_message":[],"_revision_number":7},{"id":"bb3fdf8d111741d03d0dc47bdfafdfc041a45ff6","author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"date":"2026-07-09 10:02:50.000000000","message":"Patch Set 7: Code-Review+2\n\n(3 comments)","accounts_in_message":[],"_revision_number":7},{"id":"a0d06df8377c77455c2ee6eeff9b4a5995a6eef2","author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"date":"2026-07-09 10:11:04.000000000","message":"Patch Set 7: -Code-Review\n\n(2 comments)","accounts_in_message":[],"_revision_number":7},{"id":"30a707cfc5ae69857a6d1a6c3153e74116fa2941","author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"date":"2026-07-09 10:43:38.000000000","message":"Patch Set 7: Code-Review-1\n\n(3 comments)","accounts_in_message":[],"_revision_number":7},{"id":"8a474a1ca1e8ec5124b7d2f820ce57e4f0ab041e","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"date":"2026-07-09 11:52:59.000000000","message":"Uploaded patch set 8.\n\nOutdated Votes:\n* Code-Review-1 (copy condition: \"changekind:TRIVIAL_REBASE OR is:MIN\")\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":8},{"id":"68780b69dab8eeb60eea94002d19d9269111a296","author":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"date":"2026-07-09 11:58:08.000000000","message":"Patch Set 8:\n\n(3 comments)","accounts_in_message":[],"_revision_number":8},{"id":"82a1bf2562d45b54d00e67fb98650cf5483f3c81","author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"date":"2026-07-09 12:05:45.000000000","message":"Patch Set 8: Code-Review+2\n\n(1 comment)","accounts_in_message":[],"_revision_number":8},{"id":"7fff36c8cee98922e736b4e6e64122dd7794828d","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-09 13:07:36.000000000","message":"Patch Set 8: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/062c1bc033ea4e45b2d2bd8caed07cfb\n\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/716f1c77cbfc4ed98cccac6bfebe8a9a : SUCCESS in 55m 19s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/7c3e2de5a0d340db9d1813b3590e6f3f : SUCCESS in 1h 07m 56s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/be9bf233721d48fe89b37164d99acffc : SUCCESS in 14m 18s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/9ed11d6519cd4860a5fdda532bd06b55 : SUCCESS in 6m 27s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/32540a9a0ffa444081bf8addc92d9249 : SUCCESS in 4m 12s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/0bf81e5bacc241a0b4ece28c733bd2f7 : SUCCESS in 3m 53s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/79accea4cb2f4975a8831210d9cc463c : FAILURE in 6m 49s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/6d43f10a9b8d48f98dc637a25e8dec76 : SUCCESS in 9m 44s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/9a206bae1a1c4779a2594f8d6947466e : SUCCESS in 5m 28s\n- openstack-tox-functional-py311 https://zuul.opendev.org/t/openstack/build/498f6ec1a16d4f17a99662e835cd1c88 : SUCCESS in 6m 16s\n- openstack-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/a31df71c68f345d5aa8fde4000fe69ac : SUCCESS in 4m 04s\n- openstack-tox-functional-py314 https://zuul.opendev.org/t/openstack/build/5d7e8547332f41cbb08207251579d65c : SUCCESS in 6m 06s (non-voting)\n- placement-nova-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/b7335405c8ed4d58baa25e2d6dbedb1d : SUCCESS in 21m 23s","accounts_in_message":[],"_revision_number":8},{"id":"cbec206bc5ca08e4593f4064a3d80aaa2c77bc90","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"date":"2026-07-09 16:32:14.000000000","message":"Uploaded patch set 9.\n\nOutdated Votes:\n* Code-Review+2 (copy condition: \"changekind:TRIVIAL_REBASE OR is:MIN\")\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":9},{"id":"95c8b5e1bb194fe731fcdd5959f30e0f50989bab","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-09 17:45:07.000000000","message":"Patch Set 9: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/b575f3be5fd64dcabee9719bde9014c3\n\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/c089f35688554b6a8bdbbd4e30bf0bae : SUCCESS in 1h 04m 08s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/c7e78f8e9a6a4970a135c507805e9558 : SUCCESS in 1h 07m 05s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/becbcc7a934d4af094da63f5534e49d9 : SUCCESS in 16m 26s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/f6022e45a3134329972d6b08ecc3ed84 : SUCCESS in 6m 00s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/d35b0d6c1f6f49bb86fa221f9725ac97 : SUCCESS in 4m 52s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/a545d8818b7c426ebf6a031020528b84 : SUCCESS in 6m 57s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/88648700fbd347c187430602207c6efe : FAILURE in 7m 16s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/fec2071d0ad74215803001641b6e3a9e : SUCCESS in 10m 01s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/0ff59ebca80b429a880480cda56eafcc : SUCCESS in 8m 35s\n- openstack-tox-functional-py311 https://zuul.opendev.org/t/openstack/build/fce0f198b52f472fbd644c770a1ad84a : SUCCESS in 6m 56s\n- openstack-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/d4117da38afd4a6387c36d9e0814a05a : SUCCESS in 5m 16s\n- openstack-tox-functional-py314 https://zuul.opendev.org/t/openstack/build/e1a9139e8c3049ff8ffdc7831ae82f0d : SUCCESS in 8m 40s (non-voting)\n- placement-nova-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/4b5e8ee261d343adad982bd8290065e5 : SUCCESS in 22m 02s","accounts_in_message":[],"_revision_number":9},{"id":"4cb4f76a5a826ccb021b442b57919aea37e4c31e","author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"date":"2026-07-09 18:56:41.000000000","message":"Patch Set 9: Code-Review+2\n\n(1 comment)","accounts_in_message":[],"_revision_number":9},{"id":"e97d4a61811f7dd6fb5e633fd45b426b09384ef0","author":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"date":"2026-07-10 08:14:20.000000000","message":"Patch Set 9:\n\n(1 comment)","accounts_in_message":[],"_revision_number":9},{"id":"e541a8c67bad6739ee5e99d1d4749a1fe1ab46ed","author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"date":"2026-07-10 11:41:06.000000000","message":"Patch Set 9: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":9},{"id":"58dd5ccd3b635e25e49d95dec0bb5ddf41798e30","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-10 11:41:43.000000000","message":"Patch Set 9: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":9},{"id":"d3adc351e90c626d4fb045adc0df75f8bc6a9499","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-10 14:10:37.000000000","message":"Patch Set 9: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/11aa63ad559549e19beff381a0df24ae\n\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/32273f631c774ff0ae0f33202c2a31de : SUCCESS in 1h 08m 05s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/d9608b75fdb442758911c0abec8ece01 : SUCCESS in 1h 04m 03s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/848dd405add34812885e0c968a03ab58 : SUCCESS in 5m 00s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/bf2a0dbcd9cd4dfabe1031e81e1368b6 : SUCCESS in 6m 35s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/d3ffc042b0e74ecfb859e37753c23b36 : SUCCESS in 4m 24s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/fcff0434536a4a238419168912720196 : SUCCESS in 8m 15s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/af28a5d9599f40a59e8b1a92377c7251 : SUCCESS in 11m 28s\n- openstack-tox-functional-py311 https://zuul.opendev.org/t/openstack/build/1e4b81b9495d4385b50469ca0ddf5edc : SUCCESS in 7m 33s\n- openstack-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/170621ef81d244dc9a015a8fe34c1757 : SUCCESS in 6m 09s\n- openstack-tox-functional-py314 https://zuul.opendev.org/t/openstack/build/1853e5bb2fe64a21a6a21a494b2c3ca2 : SUCCESS in 8m 22s (non-voting)\n- placement-nova-tox-functional-py313 https://zuul.opendev.org/t/openstack/build/841d97bab2a549d0a1333bfb87bb34a1 : SUCCESS in 21m 21s","accounts_in_message":[],"_revision_number":9},{"id":"d752ddf6f74e75a20921b97b7b85161a155952e9","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-10 14:10:37.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":9},{"id":"b536a602622d90bfd688594fe058c52b3762a3d6","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-10 14:11:39.000000000","message":"Patch Set 9:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/3aa2be6a3a28493e9538140fc6c1e22f\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/08b016ef74c648f980bbe074863ddaf0 : SUCCESS in 44s","accounts_in_message":[],"_revision_number":9}],"current_revision_number":9,"current_revision":"10c4d910a399290f4d0298d735c7a46a8511eebd","revisions":{"c98610736045ac299d4bf625b73df87ffb181aef":{"kind":"REWORK","_number":1,"created":"2026-06-12 12:50:30.000000000","uploader":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"ref":"refs/changes/06/993106/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/placement","ref":"refs/changes/06/993106/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/placement refs/changes/06/993106/1"}}},"commit":{"parents":[{"commit":"3cba66c70ce49e31e582c8d03e945017f38fcf11","subject":"Merge \"Update python versions\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/3cba66c70ce49e31e582c8d03e945017f38fcf11"}]}],"author":{"name":"Ashish Gupta","email":"ashigupt@redhat.com","date":"2026-06-12 12:49:12.000000000","tz":330},"committer":{"name":"Ashish Gupta","email":"ashigupt@redhat.com","date":"2026-06-12 12:49:12.000000000","tz":330},"subject":"tests: Add connection parameter to Database and PlacementFixture","message":"tests: Add connection parameter to Database and PlacementFixture\n\nAllow callers to specify a custom database connection URL when creating\nDatabase and PlacementFixture instances, rather than forcing in-memory\nSQLite.\n\nThe Database fixture now accepts an optional `connection` parameter in\n__init__() which is passed to AdHocDbFixture and used to configure the\nplacement_database group. When not provided, it defaults to \u0027sqlite://\u0027\nfor backward compatibility.\n\nPlacementFixture similarly accepts an optional `db_connection` parameter\nwhich is forwarded to the Database fixture when self.db is True.\n\nThis enables Nova\u0027s functional tests running in native threading mode to\nuse a shared file-backed SQLite database with WAL for Placement, avoiding\n\"cannot start a transaction within a transaction\" errors that occur when\nmultiple service threads concurrently access in-memory SQLite. Without\nthis change, Nova would need to monkey-patch Database.setUp at runtime,\nwhich is fragile and reaches into placement internals.\n\nWith this change, Nova can simply pass db_connection\u003d\u0027sqlite:///path\u0027\nto PlacementFixture instead of runtime patching.\n\nChange-Id: I2bc6f54a34b364bdf1e9e40fc344a889a0b0ae23\nSigned-off-by: Ashish Gupta \u003cashigupt@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/c98610736045ac299d4bf625b73df87ffb181aef"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/c98610736045ac299d4bf625b73df87ffb181aef"}]},"branch":"refs/heads/master"},"6dc1f981a446d52831606e54465cf5b32cda71e9":{"kind":"REWORK","_number":2,"created":"2026-06-15 07:57:59.000000000","uploader":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"ref":"refs/changes/06/993106/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/placement","ref":"refs/changes/06/993106/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/placement refs/changes/06/993106/2"}}},"commit":{"parents":[{"commit":"3cba66c70ce49e31e582c8d03e945017f38fcf11","subject":"Merge \"Update python versions\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/3cba66c70ce49e31e582c8d03e945017f38fcf11"}]}],"author":{"name":"Ashish Gupta","email":"ashigupt@redhat.com","date":"2026-06-12 12:49:12.000000000","tz":330},"committer":{"name":"Ashish Gupta","email":"ashigupt@redhat.com","date":"2026-06-15 07:49:24.000000000","tz":330},"subject":"tests: Add connection parameter to Database and PlacementFixture","message":"tests: Add connection parameter to Database and PlacementFixture\n\nAllow callers to specify a custom database connection URL when creating\nDatabase and PlacementFixture instances, rather than forcing in-memory\nSQLite.\n\nThe Database fixture accepts an optional connection parameter used\nto configure the placement_database group. When not provided, it\ndefaults to sqlite://. For in-memory sqlite://, AdHocDbFixture\nbehavior is unchanged.\n\nPlacementFixture similarly accepts an optional `db_connection` parameter\nwhich is forwarded to the Database fixture when self.db is True.\n\nCallers that pass the same file-backed URL across multiple tests in\none process (for example Nova functional threading tests, where\nplacement.db_api.configure() is run_once) need the provisioned\nengine to survive between tests. AdHocDbFixture assigns a random\nident per test and tears down oslo.db resources on cleanup, which\ncauses KeyError: \u0027_db_\u003cident\u003e\u0027 on the second and later tests.\n\nFor file-backed URLs, use a stable ident derived from the connection\nstring and skip AdHocDbFixture per-test resource teardown so the\nprovisioned engine is reused across tests in the same worker.\n\nThis enables Nova\u0027s functional tests running in native threading mode to\nuse a shared file-backed SQLite database with WAL for Placement, avoiding\n\"cannot start a transaction within a transaction\" errors that occur when\nmultiple service threads concurrently access in-memory SQLite. Without\nthis change, Nova would need to monkey-patch Database.setUp at runtime,\nwhich is fragile and reaches into placement internals.\n\nWith this change, Nova can simply pass db_connection\u003d\u0027sqlite:///path\u0027\nto PlacementFixture instead of runtime patching.\n\nChange-Id: I2bc6f54a34b364bdf1e9e40fc344a889a0b0ae23\nSigned-off-by: Ashish Gupta \u003cashigupt@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/6dc1f981a446d52831606e54465cf5b32cda71e9"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/6dc1f981a446d52831606e54465cf5b32cda71e9"}]},"branch":"refs/heads/master"},"dea57c5ace1e1cbad87d4bba82552eb6516a3c1b":{"kind":"REWORK","_number":3,"created":"2026-06-17 15:32:15.000000000","uploader":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"ref":"refs/changes/06/993106/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/placement","ref":"refs/changes/06/993106/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/placement refs/changes/06/993106/3"}}},"commit":{"parents":[{"commit":"3cba66c70ce49e31e582c8d03e945017f38fcf11","subject":"Merge \"Update python versions\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/3cba66c70ce49e31e582c8d03e945017f38fcf11"}]}],"author":{"name":"Ashish Gupta","email":"ashigupt@redhat.com","date":"2026-06-12 12:49:12.000000000","tz":330},"committer":{"name":"Ashish Gupta","email":"ashigupt@redhat.com","date":"2026-06-17 15:29:05.000000000","tz":330},"subject":"tests: Support shared file-backed SQLite in placement fixtures","message":"tests: Support shared file-backed SQLite in placement fixtures\n\nAllow placement test fixtures to use a caller-supplied database URL\ninstead of always provisioning in-memory sqlite://\n\nPlacementFixture accepts an optional db_connection parameter and\nforwards it to the placement Database fixture when self.db is True.\nNova functional threading tests pass a shared file-backed SQLite URL\n(with WAL) via PlacementFixture rather than monkey-patching placement\ninternals at runtime.\n\nFor in-memory sqlite://, behavior is unchanged.\n\nWhen the same file-backed URL is reused across tests in one process\n(for example a stestr worker, where placement.db_api.configure() is\nrun_once), the Database fixture uses a stable oslo.db ident derived\nfrom the connection string and skips AdHocDbFixture per-test resource\nteardown so the provisioned engine survives between tests. Without a\nstable ident, AdHocDbFixture\u0027s random ident causes KeyError:\n\u0027_db_\u003cident\u003e\u0027 on the second and later tests.\n\nClear cached oslo.db provision state in Database._setUp() before each\ntest so a fresh engine is created without stale references after\nfixture teardown (avoids \"unable to open database file\"). Because the\nsqlite file persists across tests, drop all placement tables in\ngenerate_schema_create_all() before create_schema so each test starts\nwith an empty database, matching the isolation AdHocDbFixture teardown\nprovides for in-memory sqlite://.\n\nThis avoids \"cannot start a transaction within a transaction\" errors\nwhen multiple service threads concurrently access in-memory SQLite\nduring Nova functional tests in native threading mode.\n\nChange-Id: I2bc6f54a34b364bdf1e9e40fc344a889a0b0ae23\nSigned-off-by: Ashish Gupta \u003cashigupt@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/dea57c5ace1e1cbad87d4bba82552eb6516a3c1b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/dea57c5ace1e1cbad87d4bba82552eb6516a3c1b"}]},"branch":"refs/heads/master"},"139b62ba6629211b1b6e31077f0a66aabf3b1fdc":{"kind":"REWORK","_number":4,"created":"2026-07-02 07:17:24.000000000","uploader":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"ref":"refs/changes/06/993106/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/placement","ref":"refs/changes/06/993106/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/placement refs/changes/06/993106/4"}}},"commit":{"parents":[{"commit":"7ad9ef078b490423ac6605e805fad2b75c8f2107","subject":"Merge \"Update policy scope enforcement testing\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/7ad9ef078b490423ac6605e805fad2b75c8f2107"}]}],"author":{"name":"Ashish Gupta","email":"ashigupt@redhat.com","date":"2026-06-12 12:49:12.000000000","tz":330},"committer":{"name":"Ashish Gupta","email":"ashigupt@redhat.com","date":"2026-07-02 07:15:03.000000000","tz":330},"subject":"tests: Support shared file-backed SQLite in placement fixtures","message":"tests: Support shared file-backed SQLite in placement fixtures\n\nAllow placement test fixtures to use a caller-supplied database URL\ninstead of always provisioning in-memory sqlite://\n\nPlacementFixture accepts an optional db_connection parameter and\nforwards it to the placement Database fixture when self.db is True.\nNova functional threading tests pass a shared file-backed SQLite URL\n(with WAL) via PlacementFixture rather than monkey-patching placement\ninternals at runtime.\n\nFor in-memory sqlite://, behavior is unchanged.\n\nWhen the same file-backed URL is reused across tests in one process\n(for example a stestr worker, where placement.db_api.configure() is\nrun_once), the Database fixture uses a stable oslo.db ident derived\nfrom the connection string and skips AdHocDbFixture per-test resource\nteardown so the provisioned engine survives between tests. Without a\nstable ident, AdHocDbFixture\u0027s random ident causes KeyError:\n\u0027_db_\u003cident\u003e\u0027 on the second and later tests.\n\nClear cached oslo.db provision state in Database._setUp() before each\ntest so a fresh engine is created without stale references after\nfixture teardown (avoids \"unable to open database file\"). Because the\nsqlite file persists across tests, drop all placement tables in\ngenerate_schema_create_all() before create_schema so each test starts\nwith an empty database, matching the isolation AdHocDbFixture teardown\nprovides for in-memory sqlite://.\n\nThis avoids \"cannot start a transaction within a transaction\" errors\nwhen multiple service threads concurrently access in-memory SQLite\nduring Nova functional tests in native threading mode.\n\nChange-Id: I2bc6f54a34b364bdf1e9e40fc344a889a0b0ae23\nSigned-off-by: Ashish Gupta \u003cashigupt@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/139b62ba6629211b1b6e31077f0a66aabf3b1fdc"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/139b62ba6629211b1b6e31077f0a66aabf3b1fdc"}]},"branch":"refs/heads/master"},"91d0d97f96922c59c27b186a0d2d83404357908d":{"kind":"REWORK","_number":5,"created":"2026-07-03 11:42:32.000000000","uploader":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"ref":"refs/changes/06/993106/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/placement","ref":"refs/changes/06/993106/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/placement refs/changes/06/993106/5"}}},"commit":{"parents":[{"commit":"7ad9ef078b490423ac6605e805fad2b75c8f2107","subject":"Merge \"Update policy scope enforcement testing\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/7ad9ef078b490423ac6605e805fad2b75c8f2107"}]}],"author":{"name":"Ashish Gupta","email":"ashigupt@redhat.com","date":"2026-06-12 12:49:12.000000000","tz":330},"committer":{"name":"Ashish Gupta","email":"ashigupt@redhat.com","date":"2026-07-03 11:36:46.000000000","tz":330},"subject":"tests: Support shared file-backed SQLite in placement fixtures","message":"tests: Support shared file-backed SQLite in placement fixtures\n\nAllow placement test fixtures to use a caller-supplied database URL\ninstead of always provisioning in-memory sqlite://\n\nThe Database fixture registers placement_database.connection when\nset_config is True (defaulting to sqlite://) then initializes\nAdHocDbFixture via super().__init__(url\u003dconf.placement_database.connection)\nso the fixture and placement_db.configure() use the same engine.\n\nPlacementFixture adds a _configure_placement_database() hook so callers\nsuch as Nova can set placement_database.connection on conf before the\nDatabase fixture is created, without a db_connection constructor\nparameter or a separate connection\u003d argument on Database.\n\nFor in-memory sqlite://, behavior is unchanged.\n\nWhen the same file-backed URL is reused across tests in one process\n(for example a stestr worker, where placement.db_api.configure() is\nrun_once), the Database fixture uses a stable oslo.db ident derived\nfrom the connection string and skips AdHocDbFixture per-test resource\nteardown so the provisioned engine survives between tests. Without a\nstable ident, AdHocDbFixture\u0027s random ident causes KeyError:\n\u0027_db_\u003cident\u003e\u0027 on the second and later tests.\n\nClear cached oslo.db provision state in Database._setUp() before each\ntest so a fresh engine is created without stale references after\nfixture teardown (avoids \"unable to open database file\"). Because the\nsqlite file persists across tests, drop all placement tables in\ngenerate_schema_create_all() before create_schema so each test starts\nwith an empty database, matching the isolation AdHocDbFixture teardown\nprovides for in-memory sqlite://.\n\nThis avoids \"cannot start a transaction within a transaction\" errors\nwhen multiple service threads concurrently access in-memory SQLite\nduring Nova functional tests in native threading mode.\n\nChange-Id: I2bc6f54a34b364bdf1e9e40fc344a889a0b0ae23\nSigned-off-by: Ashish Gupta \u003cashigupt@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/91d0d97f96922c59c27b186a0d2d83404357908d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/91d0d97f96922c59c27b186a0d2d83404357908d"}]},"branch":"refs/heads/master"},"7a53b288535e00cfe65f3af42dd2cb200780f826":{"kind":"REWORK","_number":6,"created":"2026-07-03 12:06:12.000000000","uploader":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"ref":"refs/changes/06/993106/6","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/placement","ref":"refs/changes/06/993106/6","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/6 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/6 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/6 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/placement refs/changes/06/993106/6"}}},"commit":{"parents":[{"commit":"7ad9ef078b490423ac6605e805fad2b75c8f2107","subject":"Merge \"Update policy scope enforcement testing\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/7ad9ef078b490423ac6605e805fad2b75c8f2107"}]}],"author":{"name":"Ashish Gupta","email":"ashigupt@redhat.com","date":"2026-06-12 12:49:12.000000000","tz":330},"committer":{"name":"Ashish Gupta","email":"ashigupt@redhat.com","date":"2026-07-03 12:05:53.000000000","tz":330},"subject":"tests: Support shared file-backed SQLite in placement fixtures","message":"tests: Support shared file-backed SQLite in placement fixtures\n\nAllow placement test fixtures to use a caller-supplied database URL\ninstead of always provisioning in-memory sqlite://\n\nThe Database fixture registers placement_database.connection when\nset_config is True (defaulting to sqlite://) then initializes\nAdHocDbFixture via super().__init__(url\u003dconf.placement_database.connection)\nso the fixture and placement_db.configure() use the same engine.\n\nPlacementFixture adds a _configure_placement_database() hook so callers\nsuch as Nova can set placement_database.connection on conf before the\nDatabase fixture is created, without a db_connection constructor\nparameter or a separate connection\u003d argument on Database.\n\nFor in-memory sqlite://, behavior is unchanged.\n\nWhen the same file-backed URL is reused across tests in one process\n(for example a stestr worker, where placement.db_api.configure() is\nrun_once), the Database fixture uses a stable oslo.db ident derived\nfrom the connection string and skips AdHocDbFixture per-test resource\nteardown so the provisioned engine survives between tests. Without a\nstable ident, AdHocDbFixture\u0027s random ident causes KeyError:\n\u0027_db_\u003cident\u003e\u0027 on the second and later tests.\n\nClear cached oslo.db provision state in Database._setUp() before each\ntest so a fresh engine is created without stale references after\nfixture teardown (avoids \"unable to open database file\"). Because the\nsqlite file persists across tests, drop all placement tables in\ngenerate_schema_create_all() before create_schema so each test starts\nwith an empty database, matching the isolation AdHocDbFixture teardown\nprovides for in-memory sqlite://.\n\nThis avoids \"cannot start a transaction within a transaction\" errors\nwhen multiple service threads concurrently access in-memory SQLite\nduring Nova functional tests in native threading mode.\n\nChange-Id: I2bc6f54a34b364bdf1e9e40fc344a889a0b0ae23\nSigned-off-by: Ashish Gupta \u003cashigupt@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/7a53b288535e00cfe65f3af42dd2cb200780f826"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/7a53b288535e00cfe65f3af42dd2cb200780f826"}]},"branch":"refs/heads/master"},"995e1e6ea4e9101ca0a58f29d9896fceb7c276b9":{"kind":"REWORK","_number":7,"created":"2026-07-08 12:06:26.000000000","uploader":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"ref":"refs/changes/06/993106/7","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/placement","ref":"refs/changes/06/993106/7","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/7 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/7 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/7 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/placement refs/changes/06/993106/7"}}},"commit":{"parents":[{"commit":"7ad9ef078b490423ac6605e805fad2b75c8f2107","subject":"Merge \"Update policy scope enforcement testing\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/7ad9ef078b490423ac6605e805fad2b75c8f2107"}]}],"author":{"name":"Ashish Gupta","email":"ashigupt@redhat.com","date":"2026-06-12 12:49:12.000000000","tz":330},"committer":{"name":"Ashish Gupta","email":"ashigupt@redhat.com","date":"2026-07-08 12:03:12.000000000","tz":330},"subject":"tests: Support file-backed SQLite URL in placement fixtures","message":"tests: Support file-backed SQLite URL in placement fixtures\n\nAllow placement test fixtures to use a caller-supplied database URL\ninstead of always provisioning in-memory sqlite://.\n\nThe Database fixture registers placement_database.connection when\nset_config is True (defaulting to sqlite://) then initializes\nAdHocDbFixture via super().__init__(url\u003dconf.placement_database.connection)\nso the fixture and placement_db.configure() use the same engine.\n\nPlacementFixture adds a _configure_placement_database() hook so callers\nsuch as Nova can set placement_database.connection on conf before the\nDatabase fixture is created, without a db_connection constructor\nparameter or a separate connection\u003d argument on Database.\n\nFor in-memory sqlite://, behavior is unchanged.\n\nThis avoids \"cannot start a transaction within a transaction\" errors\nwhen multiple service threads concurrently access in-memory SQLite\nduring Nova functional tests in native threading mode.\n\nChange-Id: I2bc6f54a34b364bdf1e9e40fc344a889a0b0ae23\nSigned-off-by: Ashish Gupta \u003cashigupt@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/995e1e6ea4e9101ca0a58f29d9896fceb7c276b9"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/995e1e6ea4e9101ca0a58f29d9896fceb7c276b9"}]},"branch":"refs/heads/master"},"d47c5c71a1ec38672671384294d493e07f2a31f7":{"kind":"REWORK","_number":8,"created":"2026-07-09 11:52:59.000000000","uploader":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"ref":"refs/changes/06/993106/8","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/placement","ref":"refs/changes/06/993106/8","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/8 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/8 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/8 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/placement refs/changes/06/993106/8"}}},"commit":{"parents":[{"commit":"7ad9ef078b490423ac6605e805fad2b75c8f2107","subject":"Merge \"Update policy scope enforcement testing\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/7ad9ef078b490423ac6605e805fad2b75c8f2107"}]}],"author":{"name":"Ashish Gupta","email":"ashigupt@redhat.com","date":"2026-06-12 12:49:12.000000000","tz":330},"committer":{"name":"Ashish Gupta","email":"ashigupt@redhat.com","date":"2026-07-09 11:52:43.000000000","tz":330},"subject":"tests: Support file-backed SQLite URL in placement fixtures","message":"tests: Support file-backed SQLite URL in placement fixtures\n\nAllow placement test fixtures to use a caller-supplied database URL\ninstead of always provisioning in-memory sqlite://.\n\nThe Database fixture registers placement_database.connection when\nset_config is True (defaulting to sqlite://) then initializes\nAdHocDbFixture via super().__init__(url\u003dconf.placement_database.connection)\nso the fixture and placement_db.configure() use the same engine.\n\nPlacementFixture adds a _configure_placement_database() hook so callers\nsuch as Nova can set placement_database.connection on conf before the\nDatabase fixture is created, without a db_connection constructor\nparameter or a separate connection\u003d argument on Database.\n\nFor in-memory sqlite://, behavior is unchanged.\n\nThis avoids \"cannot start a transaction within a transaction\" errors\nwhen multiple service threads concurrently access in-memory SQLite\nduring Nova functional tests in native threading mode.\n\nChange-Id: I2bc6f54a34b364bdf1e9e40fc344a889a0b0ae23\nSigned-off-by: Ashish Gupta \u003cashigupt@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/d47c5c71a1ec38672671384294d493e07f2a31f7"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/d47c5c71a1ec38672671384294d493e07f2a31f7"}]},"branch":"refs/heads/master"},"10c4d910a399290f4d0298d735c7a46a8511eebd":{"kind":"REWORK","_number":9,"created":"2026-07-09 16:32:14.000000000","uploader":{"_account_id":35153,"name":"Ashish Gupta","email":"ashigupt@redhat.com","username":"ashigupt","status":"Redhat"},"ref":"refs/changes/06/993106/9","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/placement","ref":"refs/changes/06/993106/9","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/9 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/9 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/placement refs/changes/06/993106/9 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/placement refs/changes/06/993106/9"}}},"commit":{"parents":[{"commit":"7ad9ef078b490423ac6605e805fad2b75c8f2107","subject":"Merge \"Update policy scope enforcement testing\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/7ad9ef078b490423ac6605e805fad2b75c8f2107"}]}],"author":{"name":"Ashish Gupta","email":"ashigupt@redhat.com","date":"2026-06-12 12:49:12.000000000","tz":330},"committer":{"name":"Ashish Gupta","email":"ashigupt@redhat.com","date":"2026-07-09 16:30:33.000000000","tz":330},"subject":"tests: Support file-backed SQLite URL in placement fixtures","message":"tests: Support file-backed SQLite URL in placement fixtures\n\nAllow placement test fixtures to use a caller-supplied database URL\ninstead of always provisioning in-memory sqlite://.\n\nThe Database fixture registers placement_database.connection when\nset_config is True, defaulting to sqlite:// only if the connection is\nnot already set. That lets subclass hooks (e.g. Nova functional tests\nconfiguring file-backed SQLite for threading mode) set the URL before\nthe Database fixture is created without being overwritten.\n\nAdHocDbFixture is initialised via\nsuper().__init__(url\u003dconf.placement_database.connection)\nso the fixture and placement_db.configure() use the same engine.\n\nPlacementFixture adds a _configure_placement_database() hook so callers\nsuch as Nova can set placement_database.connection on conf before the\nDatabase fixture is created, without a db_connection constructor\nparameter or a separate connection\u003d argument on Database.\n\nFor in-memory sqlite://, behavior is unchanged.\n\nThis avoids \"cannot start a transaction within a transaction\" errors\nwhen multiple service threads concurrently access in-memory SQLite\nduring Nova functional tests in native threading mode.\n\nChange-Id: I2bc6f54a34b364bdf1e9e40fc344a889a0b0ae23\nSigned-off-by: Ashish Gupta \u003cashigupt@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/10c4d910a399290f4d0298d735c7a46a8511eebd"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/placement/commit/10c4d910a399290f4d0298d735c7a46a8511eebd"}]},"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":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"}},{"label":"Review-Priority","status":"MAY"}]}],"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":"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":"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":""}}}]}
