)]}'
{"id":"openstack%2Fswift~809317","triplet_id":"openstack%2Fswift~master~Id8ce5630718895a27ecfaff02e3ba3e20d3eb421","project":"openstack/swift","branch":"master","topic":"fix-update-shard-spi-simple","hashtags":[],"change_id":"Id8ce5630718895a27ecfaff02e3ba3e20d3eb421","subject":"sharder: update shard SPI when roots changes","status":"NEW","created":"2021-09-16 06:46:23.000000000","updated":"2021-09-24 14:40:38.000000000","submit_type":"MERGE_IF_NECESSARY","mergeable":false,"submittable":false,"total_comment_count":12,"unresolved_comment_count":11,"has_review_started":true,"meta_rev_id":"e74f1a678ad6f12e9312c14541cff21faec97a8a","_number":809317,"virtual_id_number":809317,"owner":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"tag":"autogenerated:zuul:check","value":1,"date":"2021-09-20 08:58:23.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":-2,"max":2},"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"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":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"_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}},"removable_reviewers":[],"reviewers":{"CC":[{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"}],"REVIEWER":[{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2021-09-16 08:04:24.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":"2021-09-16 21:11:40.000000000","updated_by":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"reviewer":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"state":"REVIEWER"},{"updated":"2021-09-23 13:47:54.000000000","updated_by":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"reviewer":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"state":"CC"}],"messages":[{"id":"b74faa3ba86a540e86195fe35252f5f4fe7780b3","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2021-09-16 06:46:23.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"4e7f0c465d08ddc016de18d3f964663b5fa40e70","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-09-16 08:04:24.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\n\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/dae0fde43132425ba069c57ec6386212 : SUCCESS in 11m 12s\n- grenade https://zuul.opendev.org/t/openstack/build/fd6675c1b94a4414ad4c25ddd48cbcd8 : SUCCESS in 1h 03m 18s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/9292e04a3b8c4a2d8736db8d8518e70c : SUCCESS in 51m 11s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/826b5c52e50a4f76bd088bea1504f78b : SUCCESS in 10m 33s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/582acda8700b4d0ea82867b51f947f59 : SUCCESS in 11m 12s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/135622934ea143cabda21e202faa8928 : SUCCESS in 18m 27s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/8b73436ab876456c945bea721f066f06 : SUCCESS in 16m 36s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/98809c717d7245b4a8a274f5aeb5e3d8 : SUCCESS in 23m 59s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/da5c3b6997a54b67a114a512cf29bc13 : SUCCESS in 24m 01s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/52526306b6c742d3ae1bacd0054ea8cf : SUCCESS in 22m 37s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/797ad808d7a644388aa9043b5936939c : SUCCESS in 19m 36s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/a2662e1c17ed49ea8091478eb6f9c0fc : SUCCESS in 18m 31s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/22a63de2fa344128b340e59b40e4c47f : SUCCESS in 17m 56s\n- swift-tox-func-py38 https://zuul.opendev.org/t/openstack/build/3957f286518e4da7985e7d76c72f17cc : SUCCESS in 18m 16s\n- swift-tox-func-encryption-py38 https://zuul.opendev.org/t/openstack/build/41819beede83424ba580301c2d4cab8a : SUCCESS in 25m 07s\n- swift-tox-func-ec-py38 https://zuul.opendev.org/t/openstack/build/5bea56627aa744788e0d441d0c1a6d16 : SUCCESS in 24m 41s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/569df20a292647e4b1c91c18c252c090 : SUCCESS in 9m 06s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/94875322d40049c5b198960acc71c620 : SUCCESS in 20m 59s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/563bd2bdc08d4dc69122bc3847540605 : FAILURE in 49m 58s\n- swift-probetests-centos-8 https://zuul.opendev.org/t/openstack/build/9c32259c39f3467cb43d33e2cf23ad6c : FAILURE in 1h 01m 15s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/7a0099aa1e2d4e37bbb48496c974b361 : SUCCESS in 43m 30s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/1617bd9c6c84404a81285f68d5e14c6a : SUCCESS in 42m 42s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/4997d8e81e35453d99116f0278aca6c7 : SUCCESS in 20m 48s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/ed1ade51347b4259af09d6a5994e8a76 : SUCCESS in 7m 20s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/cd1c184395c442dabe5962c5b415c8eb : SUCCESS in 30m 11s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/46950303f755403e9365312c1cd80949 : SUCCESS in 44m 52s","accounts_in_message":[],"_revision_number":1},{"id":"858eaffed8699b5f051c1330d1d0df09a90420f2","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-09-16 08:46:14.000000000","message":"Patch Set 1:\n\nBuild succeeded (ARM64 pipeline).\n\n- swift-tox-py38-arm64 https://zuul.opendev.org/t/openstack/build/ba28b912a48046ec8b27c25e8fea0daa : SUCCESS in 33m 53s (non-voting)\n- swift-tox-py39-arm64 https://zuul.opendev.org/t/openstack/build/dff0478af3044183b79ceb6661f0a23a : SUCCESS in 44m 44s (non-voting)\n- swift-probetests-centos-8-arm64 https://zuul.opendev.org/t/openstack/build/153fcad105a149a6b68743de5f3ef51e : FAILURE in 1h 41m 51s (non-voting)\n- swift-tox-func-encryption-py38-arm64 https://zuul.opendev.org/t/openstack/build/a421a7ec3776495faba3edd17cd06112 : SUCCESS in 38m 10s (non-voting)\n- swift-tox-func-py38-arm64 https://zuul.opendev.org/t/openstack/build/fe95583cfa9d4533bef642f5072099b3 : SUCCESS in 38m 02s (non-voting)","accounts_in_message":[],"_revision_number":1},{"id":"c01f94af314d3018e4e345ae414aee80a25cde70","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2021-09-16 21:11:40.000000000","message":"Patch Set 1: Code-Review-1\n\n(3 comments)\n\nI love keeping the change small and targeted, that is a good strategy - but the tactics here don\u0027t work\n\nmaybe squash in:\n\nhttps://review.opendev.org/c/openstack/swift/+/809482","accounts_in_message":[],"_revision_number":1},{"id":"69acddf030ef3b3cd6443f90abaa0179a35e6b37","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2021-09-16 23:45:40.000000000","message":"Patch Set 1:\n\n(1 comment)\n\nThanks Clay, will take a look at your follow up now, and potentually sqaush it in 😊","accounts_in_message":[],"_revision_number":1},{"id":"ceac5e33b909f7fadc201dab3a35c3e6762eb9bf","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2021-09-17 04:09:03.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"90b65feeceb45074d59ea3d6b65792fa733e5c98","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-09-17 05:22:33.000000000","message":"Patch Set 2: 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\n\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/2f642b835aa44657bbec9d22c2ad59c5 : SUCCESS in 8m 49s\n- grenade https://zuul.opendev.org/t/openstack/build/37368983bb274f61910ac2063f2bce8b : SUCCESS in 1h 07m 59s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/378b677597804fc3b9823e2c8be254dd : SUCCESS in 47m 01s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/d106b1e8afd94a5ebdc5a0be25239597 : SUCCESS in 8m 06s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/f931ee8fbb934cc5a756d4b30edae2cf : SUCCESS in 8m 49s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/7dc716579630492c9716388b61ce48f5 : SUCCESS in 16m 49s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/d01607e839aa4207a2c8ca6148f5fb07 : SUCCESS in 17m 08s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/0ef8be69f0df4614a98987ff5f7a3bbf : SUCCESS in 18m 12s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/1c6aad16ad7e45aab1ed14b29e6e0d3b : SUCCESS in 16m 15s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/11f2cfb5dc5148848a7bc0cb2f634a61 : SUCCESS in 15m 57s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/d4ab48ea3c8a4f76abcf4eb268eefaf1 : SUCCESS in 18m 19s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/f16fca30b846471cab792db60d718b94 : SUCCESS in 22m 07s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/01339c917c884c80bc85456d6b54cfb9 : SUCCESS in 19m 06s\n- swift-tox-func-py38 https://zuul.opendev.org/t/openstack/build/6accebbe5a964115be2d88473627fd14 : SUCCESS in 16m 32s\n- swift-tox-func-encryption-py38 https://zuul.opendev.org/t/openstack/build/7954af373d4c4a03bbfe596b94da29d4 : SUCCESS in 16m 21s\n- swift-tox-func-ec-py38 https://zuul.opendev.org/t/openstack/build/9886f991985f453eb5e1716ef5787f17 : SUCCESS in 17m 05s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/35cb5a1fde694ad7b381b2b595fd1963 : SUCCESS in 5m 57s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/2717f8365ba1422089254ee0a915be9e : SUCCESS in 19m 24s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/5b7471df8b2940e78c4f0657e72b5c6f : FAILURE in 52m 53s\n- swift-probetests-centos-8 https://zuul.opendev.org/t/openstack/build/7eafb576ad984b618a25843f4dfe15ea : FAILURE in 59m 30s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/eb73c034417144a0b685ccec7fcd2a50 : SUCCESS in 37m 29s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/75eed6861d5b40e49d51760b44c88422 : SUCCESS in 40m 56s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/c8aa3bed57a84c2a89c536f47542cd8c : SUCCESS in 17m 11s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/b033ed4f55d847e8b7b99ed21ddc399c : SUCCESS in 5m 57s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/6e6a5dfe3ea147419596cef7cc414fde : SUCCESS in 22m 14s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/733d758c421d4fdba7f017a260bb8a69 : SUCCESS in 49m 12s","accounts_in_message":[],"_revision_number":2},{"id":"b9093c68bddeae98d59fb6d55146bbcfb3e01a0b","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-09-17 06:13:31.000000000","message":"Patch Set 2:\n\nBuild succeeded (ARM64 pipeline).\n\n- swift-tox-py38-arm64 https://zuul.opendev.org/t/openstack/build/876731cb30f74e4293eb5b13e8623193 : SUCCESS in 46m 49s (non-voting)\n- swift-tox-py39-arm64 https://zuul.opendev.org/t/openstack/build/52f0994630d7451ea2cdd10823fd2e6f : SUCCESS in 56m 22s (non-voting)\n- swift-probetests-centos-8-arm64 https://zuul.opendev.org/t/openstack/build/31551491d124434ca183fcd35b96f892 : TIMED_OUT in 2h 01m 33s (non-voting)\n- swift-tox-func-encryption-py38-arm64 https://zuul.opendev.org/t/openstack/build/f1ef66b48de14bfbbfc191e5a057c7fb : SUCCESS in 56m 38s (non-voting)\n- swift-tox-func-py38-arm64 https://zuul.opendev.org/t/openstack/build/6d4e958aa1964f7a89fb1cad61396c0a : SUCCESS in 47m 58s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"5e4fe3a989000f6c538730353764e2a6afc9d7fc","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2021-09-17 06:53:01.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"9b635c84942cd2f28bfa08af4bbf104158d94400","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-09-17 08:27:09.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/178b7e43eb8245ecbc3b0226b698bb61 : SUCCESS in 9m 08s\n- grenade https://zuul.opendev.org/t/openstack/build/351e1b07efbb445abf1bf0189f4bac74 : SUCCESS in 1h 08m 25s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/b67dbeaac0884596b65d0b5db43ee2de : SUCCESS in 47m 43s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/1666047a95094f7fb01538f1b2e82ab9 : SUCCESS in 12m 42s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/809d0188b78040a287098bf104cb4552 : SUCCESS in 9m 35s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/0f05ea1c059b46bdb4b1fada6a4ba101 : SUCCESS in 14m 19s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/eb2091de18e94526b98b838645323e0c : SUCCESS in 14m 56s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/aca36eba37884582a281c782951acfd3 : SUCCESS in 15m 07s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/0af4572e0c144255a2b578a9d7e1c1b7 : SUCCESS in 20m 10s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/5b203f43ae9c4f20b45fef0c58e364ce : SUCCESS in 20m 40s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/e39cf2ae51014165af35cf6e9b7314d0 : SUCCESS in 17m 04s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/8923b7ebb6974b4f98547c086db282d1 : SUCCESS in 18m 20s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/5508dd5e55a2469d8c0fc9133a6bb940 : SUCCESS in 18m 58s\n- swift-tox-func-py38 https://zuul.opendev.org/t/openstack/build/60d1a1c6f6c54f99aa889732a79587a4 : SUCCESS in 16m 37s\n- swift-tox-func-encryption-py38 https://zuul.opendev.org/t/openstack/build/bcb25bae63014a07953b2adae442c673 : SUCCESS in 17m 08s\n- swift-tox-func-ec-py38 https://zuul.opendev.org/t/openstack/build/4f32f4742ae445c2961e096583024c51 : SUCCESS in 18m 26s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/616acaa936e046e2acde1471bc92b71e : SUCCESS in 8m 40s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/fa370ed6b1424bf58f54d1eeb6ade7d9 : SUCCESS in 25m 18s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/924b92392c0f4c50b933e6033fbc1e36 : SUCCESS in 56m 05s\n- swift-probetests-centos-8 https://zuul.opendev.org/t/openstack/build/6f18fb4d932245879a15f6438d8559af : SUCCESS in 58m 14s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/7c46b354850944ec818ca48c90ffa722 : SUCCESS in 42m 54s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/a057d7efdc734f6bab02991e6d0db2d0 : SUCCESS in 46m 26s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/edd6cb9f325d4ec1901743336dc2d5fe : SUCCESS in 19m 13s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/d5be6895a1d04723951471a6078fe983 : SUCCESS in 10m 29s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/4b994b382e114e0e963c7d30727d6cde : SUCCESS in 31m 06s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/60c8ce2ca6514c1991a24735cc28638e : SUCCESS in 53m 30s","accounts_in_message":[],"_revision_number":3},{"id":"7e167b2408203ca24723351ece1cfd217df4e8d3","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-09-17 08:57:56.000000000","message":"Patch Set 3:\n\nBuild succeeded (ARM64 pipeline).\n\n- swift-tox-py38-arm64 https://zuul.opendev.org/t/openstack/build/61a0f241539c44e4a89e9db36630bc4c : SUCCESS in 35m 20s (non-voting)\n- swift-tox-py39-arm64 https://zuul.opendev.org/t/openstack/build/055fc85e557344e2b148e0416d758c10 : SUCCESS in 1h 02m 30s (non-voting)\n- swift-probetests-centos-8-arm64 https://zuul.opendev.org/t/openstack/build/c25e1fa448fe43e7bbe8058a8a2e3eac : TIMED_OUT in 2h 01m 39s (non-voting)\n- swift-tox-func-encryption-py38-arm64 https://zuul.opendev.org/t/openstack/build/1687095a42b44f738138e9f9168de3f5 : SUCCESS in 53m 23s (non-voting)\n- swift-tox-func-py38-arm64 https://zuul.opendev.org/t/openstack/build/8563bd39a2de4a2fb2ad9893b337b2e2 : SUCCESS in 49m 51s (non-voting)","accounts_in_message":[],"_revision_number":3},{"id":"672093cb7f9e0bd157189a06b99339dd3733b964","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2021-09-17 15:56:46.000000000","message":"Patch Set 3: Code-Review+1\n\n(4 comments)\n\nI think this change needs polish [1, 2], but is functionally correct.\n\n1. commit message is out of date with code\n2. needs more unittesting: https://review.opendev.org/c/openstack/swift/+/805389","accounts_in_message":[],"_revision_number":3},{"id":"f4c02d0be51cf005b2ae2a6ee7690b82ce14fdf5","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2021-09-20 06:36:02.000000000","message":"Uploaded patch set 4.","accounts_in_message":[],"_revision_number":4},{"id":"1491c5cbda13bfbed5c79bd85b9bdf9e0fab7ee9","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-09-20 08:21:12.000000000","message":"Patch Set 4:\n\nBuild succeeded (ARM64 pipeline).\n\n- swift-tox-py38-arm64 https://zuul.opendev.org/t/openstack/build/9ea44e4f7d8f4ce484b0e8d5a03c2442 : SUCCESS in 42m 29s (non-voting)\n- swift-tox-py39-arm64 https://zuul.opendev.org/t/openstack/build/6d906a7fef8b4885b3d33c564ee8e94c : SUCCESS in 40m 38s (non-voting)\n- swift-probetests-centos-8-arm64 https://zuul.opendev.org/t/openstack/build/c49b91567b034da9b5111cddf40cf469 : SUCCESS in 1h 38m 51s (non-voting)\n- swift-tox-func-encryption-py38-arm64 https://zuul.opendev.org/t/openstack/build/32e54b09cacc484182ecc03433cbbbe4 : SUCCESS in 46m 41s (non-voting)\n- swift-tox-func-py38-arm64 https://zuul.opendev.org/t/openstack/build/c5f98859539f4f8e9381808bd22f5fb8 : SUCCESS in 47m 04s (non-voting)","accounts_in_message":[],"_revision_number":4},{"id":"e040729fb00ce89a11f96b53a6a9b99bf29a0eae","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-09-20 08:58:23.000000000","message":"Patch Set 4: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/1387f689585b4a2696fc2442e46d6901 : SUCCESS in 11m 07s\n- grenade https://zuul.opendev.org/t/openstack/build/548d7b73a33044ab8f08912ade4f2b8f : SUCCESS in 1h 05m 00s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/46fc5e1e91df4723a092acb2219fe50d : SUCCESS in 51m 33s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/13ff693138ee4518be336b6ace12a10e : SUCCESS in 11m 59s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/c2eb83d729014c1787fde328fc793e9d : SUCCESS in 11m 53s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/b66b3a4561db41df9978f016562cac17 : SUCCESS in 17m 31s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/cdd3f267a5d94740bfd9236fa9da81f8 : SUCCESS in 18m 20s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/a02aa256557140c79b373d85e7212770 : SUCCESS in 17m 28s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/fe787eaa67db43b192936dd8284ef202 : SUCCESS in 21m 16s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/7334baaf53484a33907e9f264b205a2c : SUCCESS in 22m 03s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/e783d85468ad4789a10eee2a4501306f : SUCCESS in 17m 59s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/6a5fa262a07447f686cc29f1316e2db0 : SUCCESS in 18m 22s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/f63f36ff8fb24580922d0cabeff0e368 : SUCCESS in 23m 25s\n- swift-tox-func-py38 https://zuul.opendev.org/t/openstack/build/0f689fa001114da9b35c485587f01e5e : SUCCESS in 22m 54s\n- swift-tox-func-encryption-py38 https://zuul.opendev.org/t/openstack/build/7a26924f2fe54c6f8b8de8a86b35fd1f : SUCCESS in 22m 30s\n- swift-tox-func-ec-py38 https://zuul.opendev.org/t/openstack/build/5c0c9c5252a142fa92c83be103e07e2c : SUCCESS in 20m 35s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/169d6d2f275d4ca6aa78cfa2659be5b9 : SUCCESS in 10m 52s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/028f7f25c70a452cbe1a1929e9ba736f : SUCCESS in 25m 44s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/9215ba60b6f540438c0005e6d7d81121 : SUCCESS in 54m 49s\n- swift-probetests-centos-8 https://zuul.opendev.org/t/openstack/build/c5df99e879804cf0b740ca7478a338f4 : SUCCESS in 57m 36s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/757b38e1f3a9409495c2c83cbfada5b3 : SUCCESS in 39m 21s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/3cd719894a3542d68556e4f88c0ba47e : SUCCESS in 38m 42s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/7fc57b4ca61b467d991d63c0e4d7f9e1 : SUCCESS in 18m 06s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/dbbde9fd6a854bbf97815342380e466b : SUCCESS in 7m 11s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/82ef3533180d42eba40b608719708d55 : SUCCESS in 25m 31s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/4d0e4ca7b28943deb8afe85f9f0bd890 : SUCCESS in 48m 11s","accounts_in_message":[],"_revision_number":4},{"id":"9fcc24919dbdca2b81bdcd21a6963932279448e6","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2021-09-23 13:47:54.000000000","message":"Patch Set 4:\n\n(4 comments)\n\nThis is not a full review. So far I feel OK with this direction. It would help to squash the extra tests and have the commit message updated to explain what the change is and why.\n\nSee inline comment - I suspect we may have uncovered (and partly fixed in this patch) a different bug in SPI replication that we should actually fix first. (I may be wrong of course).\n\nI wonder if it would be clearer to have a broker merge_storage_policy_index(info, remote_info) method that encapsulates (a) checking for incorrect_policy_index and (b) set_storage_policy_index if required. We almost always do (b) conditional on (a), and I wonder if, with the change to set_storage_policy_index, it should *only* be called conditional on incorrect_policy_index.","accounts_in_message":[],"_revision_number":4},{"id":"e74f1a678ad6f12e9312c14541cff21faec97a8a","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2021-09-24 14:40:38.000000000","message":"Patch Set 4:\n\nFurther to my previous comments, this may be the parent patch we need to separate out fixing peer-peer replication from fixing root-shard consistency https://review.opendev.org/c/openstack/swift/+/810928","accounts_in_message":[],"_revision_number":4}],"current_revision_number":4,"current_revision":"a6a92b66232254b923ab0fb6563a74bc01bcad8d","revisions":{"bae6aa04118edef5becf1215a16386fb5c8c694c":{"kind":"REWORK","_number":1,"created":"2021-09-16 06:46:23.000000000","uploader":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"ref":"refs/changes/17/809317/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/17/809317/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/809317/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/809317/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/809317/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/17/809317/1"}}},"commit":{"parents":[{"commit":"3cca6a11be695a2b8fa393fad638674203a157f3","subject":"Merge \"Add a project scope read-only role to keystoneauth\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/3cca6a11be695a2b8fa393fad638674203a157f3"}]}],"author":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2021-07-14 06:20:00.000000000","tz":600},"committer":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2021-09-16 06:45:58.000000000","tz":600},"subject":"sharder: update shard storage_policy_index if roots changes - Simple","message":"sharder: update shard storage_policy_index if roots changes - Simple\n\nIf there is a change to the root container\u0027s storage_policy_index (e.g.\nafter it\u0027s deleted and recreated), the reconciler will kick in and\nmigrate objects (or tombstone rows) to the new/correct storage policy.\n\nTo ensure this works correctly on sharded containers, we must propagate\na policy_index change on the root to it\u0027s shards.\n\nThis version greatly simplifies the root \u003c--\u003e shard logic when it comes\nto SPI. Shards are \"extensions\" for a root. They\u0027re a fragment of a root\ncontainer\u0027s metadata that will keep in sync with other replicas of that\nsame fragment.\nBecause they come and go (as things shrink or cleave again) I\u0027m not sure\nhow well locking the root put and delete TS to the shards would really\nplay out.\nSo this patch goes the other way, which simiplies the whole thing.\nWe already have landed a patch that in essence makes the shards storage\nfor whatever objects the root puts in at whatever policy the root supplies.\nSo the question becomes how would be enqueue the wrong objects to the\nreconciler?\n\nThis makes a shard\u0027s SPI flexible, it\u0027ll update it\u0027s SPI with that of the\nroot it\u0027s talking too. This might not be as bad as it sounds as currently\nwhen grabbing the root in a shard audit we already use X-Newest.\nThis way enqueue will happen during the shard/fragment replication (as now).\n\nThis does add the possibility of some flapping if shards SPIs are out of\nsync.. but they should all colalease in the end.\nFurther in previous discussions, we\u0027ve shown how out of character a SPI\nis and If we end up enqueue-ing a bunch of objects (incorrectly) and then\nflap back then the reconciler will just noop them in the queue right?\n\nChange-Id: Id8ce5630718895a27ecfaff02e3ba3e20d3eb421\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/bae6aa04118edef5becf1215a16386fb5c8c694c"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/bae6aa04118edef5becf1215a16386fb5c8c694c"}]},"branch":"refs/heads/master"},"2eed8f58fe2241cfac06faf8016e61e35f15d71a":{"kind":"REWORK","_number":2,"created":"2021-09-17 04:09:03.000000000","uploader":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"ref":"refs/changes/17/809317/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/17/809317/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/809317/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/809317/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/809317/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/17/809317/2"}}},"commit":{"parents":[{"commit":"3cca6a11be695a2b8fa393fad638674203a157f3","subject":"Merge \"Add a project scope read-only role to keystoneauth\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/3cca6a11be695a2b8fa393fad638674203a157f3"}]}],"author":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2021-07-14 06:20:00.000000000","tz":600},"committer":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2021-09-17 04:08:38.000000000","tz":600},"subject":"sharder: update shard storage_policy_index if roots changes - Simple","message":"sharder: update shard storage_policy_index if roots changes - Simple\n\nIf there is a change to the root container\u0027s storage_policy_index (e.g.\nafter it\u0027s deleted and recreated), the reconciler will kick in and\nmigrate objects (or tombstone rows) to the new/correct storage policy.\n\nTo ensure this works correctly on sharded containers, we must propagate\na policy_index change on the root to it\u0027s shards.\n\nThis version greatly simplifies the root \u003c--\u003e shard logic when it comes\nto SPI. Shards are \"extensions\" for a root. They\u0027re a fragment of a root\ncontainer\u0027s metadata that will keep in sync with other replicas of that\nsame fragment.\nBecause they come and go (as things shrink or cleave again) I\u0027m not sure\nhow well locking the root put and delete TS to the shards would really\nplay out.\nSo this patch goes the other way, which simiplies the whole thing.\nWe already have landed a patch that in essence makes the shards storage\nfor whatever objects the root puts in at whatever policy the root supplies.\nSo the question becomes how would be enqueue the wrong objects to the\nreconciler?\n\nThis makes a shard\u0027s SPI flexible, it\u0027ll update it\u0027s SPI with that of the\nroot it\u0027s talking too. This might not be as bad as it sounds as currently\nwhen grabbing the root in a shard audit we already use X-Newest.\nThis way enqueue will happen during the shard/fragment replication (as now).\n\nThis does add the possibility of some flapping if shards SPIs are out of\nsync.. but they should all colalease in the end.\nFurther in previous discussions, we\u0027ve shown how out of character a SPI\nis and If we end up enqueue-ing a bunch of objects (incorrectly) and then\nflap back then the reconciler will just noop them in the queue right?\n\nChange-Id: Id8ce5630718895a27ecfaff02e3ba3e20d3eb421\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/2eed8f58fe2241cfac06faf8016e61e35f15d71a"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/2eed8f58fe2241cfac06faf8016e61e35f15d71a"}]},"branch":"refs/heads/master"},"b1c3b8976884d22aa18f98956a4f8b6a9d6bb48f":{"kind":"REWORK","_number":3,"created":"2021-09-17 06:53:01.000000000","uploader":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"ref":"refs/changes/17/809317/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/17/809317/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/809317/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/809317/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/809317/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/17/809317/3"}}},"commit":{"parents":[{"commit":"3cca6a11be695a2b8fa393fad638674203a157f3","subject":"Merge \"Add a project scope read-only role to keystoneauth\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/3cca6a11be695a2b8fa393fad638674203a157f3"}]}],"author":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2021-07-14 06:20:00.000000000","tz":600},"committer":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2021-09-17 06:52:49.000000000","tz":600},"subject":"sharder: update shard storage_policy_index if roots changes - Simple","message":"sharder: update shard storage_policy_index if roots changes - Simple\n\nIf there is a change to the root container\u0027s storage_policy_index (e.g.\nafter it\u0027s deleted and recreated), the reconciler will kick in and\nmigrate objects (or tombstone rows) to the new/correct storage policy.\n\nTo ensure this works correctly on sharded containers, we must propagate\na policy_index change on the root to it\u0027s shards.\n\nThis version greatly simplifies the root \u003c--\u003e shard logic when it comes\nto SPI. Shards are \"extensions\" for a root. They\u0027re a fragment of a root\ncontainer\u0027s metadata that will keep in sync with other replicas of that\nsame fragment.\nBecause they come and go (as things shrink or cleave again) I\u0027m not sure\nhow well locking the root put and delete TS to the shards would really\nplay out.\nSo this patch goes the other way, which simiplies the whole thing.\nWe already have landed a patch that in essence makes the shards storage\nfor whatever objects the root puts in at whatever policy the root supplies.\nSo the question becomes how would be enqueue the wrong objects to the\nreconciler?\n\nThis makes a shard\u0027s SPI flexible, it\u0027ll update it\u0027s SPI with that of the\nroot it\u0027s talking too. This might not be as bad as it sounds as currently\nwhen grabbing the root in a shard audit we already use X-Newest.\nThis way enqueue will happen during the shard/fragment replication (as now).\n\nThis does add the possibility of some flapping if shards SPIs are out of\nsync.. but they should all colalease in the end.\nFurther in previous discussions, we\u0027ve shown how out of character a SPI\nis and If we end up enqueue-ing a bunch of objects (incorrectly) and then\nflap back then the reconciler will just noop them in the queue right?\n\nChange-Id: Id8ce5630718895a27ecfaff02e3ba3e20d3eb421\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b1c3b8976884d22aa18f98956a4f8b6a9d6bb48f"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b1c3b8976884d22aa18f98956a4f8b6a9d6bb48f"}]},"branch":"refs/heads/master"},"a6a92b66232254b923ab0fb6563a74bc01bcad8d":{"kind":"REWORK","_number":4,"created":"2021-09-20 06:36:02.000000000","uploader":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"ref":"refs/changes/17/809317/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/17/809317/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/809317/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/809317/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/809317/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/17/809317/4"}}},"commit":{"parents":[{"commit":"3cca6a11be695a2b8fa393fad638674203a157f3","subject":"Merge \"Add a project scope read-only role to keystoneauth\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/3cca6a11be695a2b8fa393fad638674203a157f3"}]}],"author":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2021-07-14 06:20:00.000000000","tz":600},"committer":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2021-09-20 06:26:07.000000000","tz":600},"subject":"sharder: update shard SPI when roots changes","message":"sharder: update shard SPI when roots changes\n\nIf there is a change to the root container\u0027s storage_policy_index (e.g.\nafter it\u0027s deleted and recreated), the reconciler will kick in and\nmigrate objects (or tombstone rows) to the new/correct storage policy.\n\nTo ensure this works correctly on sharded containers, we must propagate\na policy_index change on the root to it\u0027s shards.\n\nShards are \"extensions\" for a root. They\u0027re a fragment of a root\ncontainer\u0027s metadata that will keep in sync with other replicas of that\nsame fragment. They tend to come and go (as things shrink or cleave again)\nduring the life of a root container.\n\nWe already have landed a patch that in essence makes the shards storage\nfor whatever objects the root puts in at whatever policy the root supplies.\nSo the question becomes how would be enqueue the wrong objects to the\nreconciler?\n\nThis makes a shard\u0027s SPI flexible, it\u0027ll update it\u0027s SPI with that of the\nroot it\u0027s talking too, using the same decision code that the reconciler uses\nto decide if a nornal or root container needs to change SPI.\n\nBecause we are using the reconciler\u0027s decision making code and already\nuse X-Newest when finding the right root replica to talk too, this\nshould limited any flapping that may occur if SPIs of differnt replicas\nare out of sync.\nThis also means the way we enqueue objects to the reconciler queue doesn\u0027t\nchange and will happen during the shard/fragment replication (as now).\n\nFurther in previous discussions, we\u0027ve shown how out of character a SPI\nis and If we end up enqueue-ing a bunch of objects (incorrectly) and then\nflap back then the reconciler will just noop them in the queue right?\n\nChange-Id: Id8ce5630718895a27ecfaff02e3ba3e20d3eb421\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/a6a92b66232254b923ab0fb6563a74bc01bcad8d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/a6a92b66232254b923ab0fb6563a74bc01bcad8d"}]},"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"}]}],"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":"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":""}}}]}
