)]}'
{"id":"openstack%2Fswift~777819","triplet_id":"openstack%2Fswift~master~Ia87ab6feaf5172d91f1c60c2e0f72e03182e3c9b","project":"openstack/swift","branch":"master","topic":"p-sharder-compact-to-root","hashtags":[],"change_id":"Ia87ab6feaf5172d91f1c60c2e0f72e03182e3c9b","subject":"sharder: fix loop in find_compactible_shard_sequences","status":"MERGED","created":"2021-02-26 20:29:34.000000000","updated":"2021-03-02 01:52:27.000000000","submitted":"2021-03-02 01:50:58.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":10,"unresolved_comment_count":7,"has_review_started":true,"submission_id":"777819-p-sharder-compact-to-root","meta_rev_id":"93445beeb53336d9a26b0fb4dbe7e90539cf98ef","_number":777819,"virtual_id_number":777819,"owner":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2021-03-02 01:50:57.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}],"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":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"all":[{"value":2,"date":"2021-03-01 02:14:21.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":2,"date":"2021-03-02 00:08:30.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}],"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":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"all":[{"value":0,"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":1,"date":"2021-03-02 00:08:30.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2021-02-26 21:35:31.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-02-26 23:41:24.000000000","updated_by":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"reviewer":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"state":"REVIEWER"},{"updated":"2021-03-01 02:14:21.000000000","updated_by":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"reviewer":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"state":"REVIEWER"}],"messages":[{"id":"de02b8358acc372cf01324fe662ea103f63d8219","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2021-02-26 20:29:34.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"c1c969088c1af21bb288480ce54d6bbf4712d1c8","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2021-02-26 20:36:25.000000000","message":"Patch Set 1:\n\nNote: We ought to check that merge size \u003e shrink threshold in s-m-s-r and other configs etc but for now I have just (hopefully) made the core code tolerate it in order to get a fix.","accounts_in_message":[],"_revision_number":1},{"id":"e58f348410a9ac1cc71b99b49793c48cb1020460","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-02-26 21:35:31.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/442a6b08a6dd46c1a50e024ff2acc8c4 : SUCCESS in 8m 52s\n- grenade https://zuul.opendev.org/t/openstack/build/49f0ee86327b492aad670e7b493beeac : SUCCESS in 1h 01m 47s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/a85d975b9966461daa204dd9ce215f65 : SUCCESS in 45m 01s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/e59c5ff36d904d119b48b3625bf1c2c4 : SUCCESS in 8m 50s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/4f77226f5342425b8325e3e60f9be99e : SUCCESS in 8m 21s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/7846c2914d4f4c628b12d6260db1b492 : SUCCESS in 15m 21s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/8cdb41304eb04026a19906cc621257dc : SUCCESS in 17m 22s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/d411b5c4d991447fb75fd06467cdfc7d : SUCCESS in 15m 17s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/d1d3f54e4ac74a14a9ca6f6c35a96248 : SUCCESS in 16m 03s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/ae76557dfba5421fbf24914af1c3cba7 : SUCCESS in 15m 13s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/46f95aa030c94f549a95527810a1fe97 : SUCCESS in 19m 46s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/9d2cc922829243779d10d68db1a23677 : SUCCESS in 21m 12s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/a7284e761a6742fc9e9731fb46d3f8e3 : SUCCESS in 16m 07s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/84219bd7826749e9a79647772cef2426 : SUCCESS in 21m 22s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/3dd99ca10c7e4a8786cb1deaa60e6e93 : SUCCESS in 19m 21s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/270e79a8d756494bba7e58e7c12feed1 : SUCCESS in 19m 45s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/2038d15e912b4c56b216a779fb42c90b : SUCCESS in 19m 37s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/ea4329cd7fb742bf82516ab8a302828d : SUCCESS in 48m 17s\n- swift-probetests-centos-8 https://zuul.opendev.org/t/openstack/build/b006f8a471164422be522936b9e2d3f3 : SUCCESS in 1h 00m 28s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/e4e4b71c025f419c838d29e5d7f3ceaa : SUCCESS in 37m 08s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/1fc0a3a51c0048708b3ef3867bdb4253 : SUCCESS in 50m 58s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/8208189f08f947099f90af9f83edd826 : SUCCESS in 14m 19s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/b5a206e266394b9dbe71418e83b9e1d2 : SUCCESS in 5m 55s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/e68be809a4424af4b276a16166e2d70a : FAILURE in 10m 18s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/f4d0a1afc8534e2488f44b6b3b6ee1b7 : SUCCESS in 56m 55s","accounts_in_message":[],"_revision_number":1},{"id":"68b650554edaeb1fd95aed0624f113ecd8b81d63","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2021-02-26 23:41:24.000000000","message":"Patch Set 1: Code-Review+2\n\n(4 comments)\n\nYeah, that loop looks way better now.","accounts_in_message":[],"_revision_number":1},{"id":"8f5177b2626e8a469ab053badeec489b1f910b76","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2021-02-28 15:47:43.000000000","message":"Patch Set 1:\n\n(5 comments)","accounts_in_message":[],"_revision_number":1},{"id":"82df4c6f655240233464491eb6885ad37998f38c","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2021-02-28 16:01:03.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"c071d1058e2c4ff6c38e6c42348c98bd017db655","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-02-28 17:11:02.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d2897b1bbc6d401ab280770de6e39fc7 : SUCCESS in 8m 46s\n- grenade https://zuul.opendev.org/t/openstack/build/bec8b99d8bde4131aa6d143e9a0046a6 : SUCCESS in 1h 09m 09s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/ad5057f0552f490f81eafe4f444ffa8f : SUCCESS in 51m 47s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/e342690660054666b3c8789fb0ecdb8d : SUCCESS in 8m 49s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/caf39bf7144d437bb6f1b2f9a7d349cf : SUCCESS in 5m 58s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/d95943b2f7944d219dace1c1fb582c28 : SUCCESS in 14m 13s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/5276e82c97ac4613a5d5a937f7967179 : SUCCESS in 14m 19s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/f71525d6affb46fbba48004f2c92e87a : SUCCESS in 14m 42s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/1c6ded94cd5c43668261eabef08ee7be : SUCCESS in 13m 38s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/537eda8c501b4481844754458c16f03b : SUCCESS in 14m 45s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/ab3fd74f8e8d41908be8ad5481e0d85b : SUCCESS in 16m 04s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/e838ec2bd01449e5bb8b1460bb7098a0 : SUCCESS in 16m 56s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/0e6d7de03e574e8a99865a027f4d567a : SUCCESS in 17m 46s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/abef35dc7eb4410298472630df858f05 : SUCCESS in 16m 36s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/f1ee8a7217e240e1820de7b540a77bee : SUCCESS in 17m 27s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/45b94fe4b3ac4c0b85a9ca7037f16c8b : SUCCESS in 18m 01s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/5192a700d2f04a56b3ec7aa5da18b16e : SUCCESS in 20m 39s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/09a5f72d67414d28b8af7457d0597010 : SUCCESS in 49m 43s\n- swift-probetests-centos-8 https://zuul.opendev.org/t/openstack/build/e190c4cda2c6495191ce8fa34614e972 : SUCCESS in 44m 22s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/72ddc6d7dff8435fbd7b5a01d26ccb4f : SUCCESS in 39m 47s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/68265b08a7fb40db8d9aac650c89e81e : SUCCESS in 37m 31s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/2b9c224e535d478cb17915b5a4fded18 : SUCCESS in 13m 23s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/e54bbceb0eb74f6e8c839c4ce35f2943 : SUCCESS in 5m 34s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/e4ba610e0f654b6093d18abfeb8a6fe0 : FAILURE in 10m 00s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/60f8257f9d46454c8e054b87682a2a20 : SUCCESS in 1h 03m 24s","accounts_in_message":[],"_revision_number":2},{"id":"9d0a964f98ebc3034c66416b0e65dcf216e56552","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2021-03-01 02:14:21.000000000","message":"Patch Set 2: Code-Review+2\n\n(1 comment)\n\nYeah, gone over it quite a few times. Seem similar and much cleaner!","accounts_in_message":[],"_revision_number":2},{"id":"2bfc77ba7263da509f0cbde9bd8159e287675631","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2021-03-02 00:08:30.000000000","message":"Patch Set 2: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":2},{"id":"c52353d1ff8a172bcf41e6dcb6b0d86174cdf41c","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-03-02 00:08:55.000000000","message":"Patch Set 2: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":2},{"id":"716298c2f25e19ef92957d18fb4691b80ed1bede","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-03-02 01:50:57.000000000","message":"Patch Set 2: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/31f1de8b09da497f97c4a55b4ad82b12 : SUCCESS in 12m 59s\n- grenade https://zuul.opendev.org/t/openstack/build/e8f5c777118549ee8ed47b99dce35738 : SUCCESS in 52m 07s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/32a60c31b9a44c5382eecb1a13fb8879 : SUCCESS in 42m 53s\n- swift-upload-image https://zuul.opendev.org/t/openstack/build/969c1a9086874a1f9c33fb545d40daa5 : SUCCESS in 10m 05s (non-voting)\n- swift-upload-image-py3 https://zuul.opendev.org/t/openstack/build/db408e5bf91842919d4869495c431950 : SUCCESS in 6m 41s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/9ef725bdf762483680586a9b8cbacbb5 : SUCCESS in 18m 14s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/323121c84e8a4cef95f3fa6a9cc1f314 : SUCCESS in 14m 18s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/1f54b60531d545e091d5797123a029d6 : SUCCESS in 13m 23s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/dea0d137282542138a7c1f66dd682a7f : SUCCESS in 15m 26s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/83c6fb19e8f342cab80785761a6c358c : SUCCESS in 15m 38s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/54d98776a8454486a99cdc37c739ebad : SUCCESS in 17m 46s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/f7658fe29cfa47ac84babe3884a9d963 : SUCCESS in 15m 44s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/c80bd2ed4d0d4a50bd476fd3344f41f9 : SUCCESS in 17m 00s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/dcf3f493ba7743fba7a6def9387ae14a : SUCCESS in 28m 59s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/6b834d070c9a48e498ec492c5dd97b94 : SUCCESS in 19m 11s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/8916ea2b54af4e2a883f10bfa44eaccd : SUCCESS in 32m 35s\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/c50d4fd4f73f45caa14b3da25010a668 : SUCCESS in 47m 04s\n- swift-probetests-centos-8 https://zuul.opendev.org/t/openstack/build/dda47ee184ba456eb1dea5e330f39f97 : SUCCESS in 54m 31s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/99817c9ade5a46d882d9ac9a12874136 : SUCCESS in 40m 39s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/e9d71c6b66d84237997974574ddfc2ae : SUCCESS in 54m 17s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/3e7351c46ae544da9a439b7ff2bbadfd : SUCCESS in 14m 40s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/36e957adf87048cbbaa60a4ddcdb7387 : SUCCESS in 5m 56s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/dbc89342222b44f9b925bf771e2512ce : SUCCESS in 50m 43s","accounts_in_message":[],"_revision_number":2},{"id":"e9491c4d16e1edd998363ca861885866be6725e9","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-03-02 01:50:58.000000000","message":"Change has been successfully merged by Zuul","accounts_in_message":[],"_revision_number":2},{"id":"93445beeb53336d9a26b0fb4dbe7e90539cf98ef","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-03-02 01:52:27.000000000","message":"Patch Set 2:\n\nBuild succeeded (promote pipeline).\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/b9e990ececcf4dc38a64289f01f2c09a : SUCCESS in 1m 03s\n- swift-promote-image https://zuul.opendev.org/t/openstack/build/0112695d2e02479d9709f1b91e4ab45d : SUCCESS in 37s (non-voting)\n- swift-promote-image-py3 https://zuul.opendev.org/t/openstack/build/6d64fc32563140c1922a6cd589cac5c3 : SUCCESS in 42s (non-voting)","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"41f85f3969d854dceb1a0f6f22c377d62e7e6477","revisions":{"c7c50b2b9d73122005c24cf6589ec85bc3c579d4":{"kind":"REWORK","_number":1,"created":"2021-02-26 20:29:34.000000000","uploader":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"ref":"refs/changes/19/777819/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/19/777819/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/19/777819/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/19/777819/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/19/777819/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/19/777819/1"}}},"commit":{"parents":[{"commit":"e2f5249271dad3a9f11e37e0285e3e162bd2f137","subject":"Merge \"Add unit test coverage for CleavingContext.done()\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/e2f5249271dad3a9f11e37e0285e3e162bd2f137"}]}],"author":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2021-02-26 19:21:59.000000000","tz":0},"committer":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2021-02-26 20:15:42.000000000","tz":0},"subject":"sharder: fix loop in find_compactible_shard_sequences","message":"sharder: fix loop in find_compactible_shard_sequences\n\nThe sharder find_compactible_shard_sequences function was vulnerable\nto looping with some combinations of shrink_threshold and merge_size\nparameters. The inner loop might not consume a shard range, resulting\nin the same shard range being submitted to the inner loop again.\n\nThis patch simplifies the function in an attempt to make it more\nobvious that the loops are always making progress towards termination\nby consuming shard ranges from the list.\n\nChange-Id: Ia87ab6feaf5172d91f1c60c2e0f72e03182e3c9b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c7c50b2b9d73122005c24cf6589ec85bc3c579d4"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c7c50b2b9d73122005c24cf6589ec85bc3c579d4"}]},"branch":"refs/heads/master"},"41f85f3969d854dceb1a0f6f22c377d62e7e6477":{"kind":"REWORK","_number":2,"created":"2021-02-28 16:01:03.000000000","uploader":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"ref":"refs/changes/19/777819/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/19/777819/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/19/777819/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/19/777819/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/19/777819/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/19/777819/2"}}},"commit":{"parents":[{"commit":"e2f5249271dad3a9f11e37e0285e3e162bd2f137","subject":"Merge \"Add unit test coverage for CleavingContext.done()\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/e2f5249271dad3a9f11e37e0285e3e162bd2f137"}]}],"author":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2021-02-26 19:21:59.000000000","tz":0},"committer":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2021-02-28 15:45:19.000000000","tz":0},"subject":"sharder: fix loop in find_compactible_shard_sequences","message":"sharder: fix loop in find_compactible_shard_sequences\n\nThe sharder find_compactible_shard_sequences function was vulnerable\nto looping with some combinations of shrink_threshold and merge_size\nparameters. The inner loop might not consume a shard range, resulting\nin the same shard range being submitted to the inner loop again.\n\nThis patch simplifies the function in an attempt to make it more\nobvious that the loops are always making progress towards termination\nby consuming shard ranges from the list.\n\nChange-Id: Ia87ab6feaf5172d91f1c60c2e0f72e03182e3c9b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/41f85f3969d854dceb1a0f6f22c377d62e7e6477"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/41f85f3969d854dceb1a0f6f22c377d62e7e6477"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"status":"CLOSED","labels":[{"label":"Verified","status":"OK","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"OK","applied_by":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}},{"label":"Workflow","status":"OK","applied_by":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}}]}],"submit_requirements":[{"name":"Verified","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Verified\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dCustom-Rule"],"failing_atoms":[],"atom_explanations":{}}},{"name":"Workflow","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Workflow\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Workflow\u003dCustom-Rule"],"failing_atoms":[],"atom_explanations":{}}},{"name":"Code-Review","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Code-Review\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dCustom-Rule"],"failing_atoms":[],"atom_explanations":{}}}]}
