)]}'
{"id":"openstack%2Fswift~1006491","triplet_id":"openstack%2Fswift~master~I51400ee11a2c6bcceaaf31000f2e07090563a519","project":"openstack/swift","branch":"master","attention_set":{"38368":{"account":{"_account_id":38368,"name":"Christian Ohanaja","display_name":"Christian Ohanaja","email":"cohanaja@nvidia.com","username":"cohanaja"},"last_update":"2026-09-21 12:06:50.000000000","reason":"A robot voted negatively on a label"}},"removed_from_attention_set":{},"hashtags":[],"change_id":"I51400ee11a2c6bcceaaf31000f2e07090563a519","subject":"sharder: use sync points in rsync then merge","status":"NEW","created":"2026-09-21 10:41:38.000000000","updated":"2026-09-22 17:04:36.000000000","submit_type":"MERGE_IF_NECESSARY","mergeable":true,"submittable":false,"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"010718809e21f3b733a5c502861db44801480fb0","_number":1006491,"virtual_id_number":1006491,"owner":{"_account_id":38368,"name":"Christian Ohanaja","display_name":"Christian Ohanaja","email":"cohanaja@nvidia.com","username":"cohanaja"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:check","value":1,"date":"2026-09-22 17:04:36.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","value":1,"default_value":0,"optional":true},"Code-Review":{"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"all":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-09-21 12:06:50.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"}],"messages":[{"id":"e4775f89e596cea680c9fb594c2f5b4bb43bd83e","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":38368,"name":"Christian Ohanaja","display_name":"Christian Ohanaja","email":"cohanaja@nvidia.com","username":"cohanaja"},"date":"2026-09-21 10:41:38.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"d1d9b0b5e447559561a92b52be47e5742d1ff6d3","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":38368,"name":"Christian Ohanaja","display_name":"Christian Ohanaja","email":"cohanaja@nvidia.com","username":"cohanaja"},"date":"2026-09-21 10:45:58.000000000","message":"Uploaded patch set 2: Commit message was updated.","accounts_in_message":[],"_revision_number":2},{"id":"c3665457455614bb857d0bb5ca1bf09d9fae9538","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-21 12:06:50.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\nand https://docs.openstack.org/project-team-guide/testing.html#how-to-handle-test-failures\n\nhttps://zuul.opendev.org/t/openstack/buildset/f56d1d755c1046ad9677444ea7e39849\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/a0a29b9060d443b0ba00bbf7e6dad9c2 : SUCCESS in 11m 18s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/b27832647cae48d288f15a1c4f11f4c6 : SUCCESS in 9m 42s\n- grenade https://zuul.opendev.org/t/openstack/build/6ce4fd21bfcd4f3582871d29c2e77417 : SUCCESS in 1h 07m 27s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/4e4466e2960e434595ceca10c9b4b7b2 : SUCCESS in 1h 06m 07s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/0680a6d424b24caaa6f83dcf0502c84c : SUCCESS in 1h 02m 26s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/9d36143e925644119b9d92ec6426e9f6 : SUCCESS in 1h 01m 27s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/0e180715eb4d468e8b5034b343fdd6ed : SUCCESS in 22m 43s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/b231630dc89f44aba79a78ee100aa03f : SUCCESS in 21m 27s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/678b9fb2e2834950ae02a971ab32bd3a : SUCCESS in 17m 54s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/a14c0596922d451e984eea58e4b418ec : SUCCESS in 7m 53s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/f53de1ea9b4e4a1eafee9622b76a5042 : FAILURE in 24m 16s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/bc470948e4dc40d18b9d7ed94cac033e : FAILURE in 16m 44s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/49a640382dd04159898de0a71d524e6c : FAILURE in 23m 23s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/04ff9eb30aef4602974795d8a72defc0 : FAILURE in 10m 47s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/974df94b7138454b942b19298367ce64 : SUCCESS in 14m 22s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/d2e5b745f652406285360ee6fd2f8daa : SUCCESS in 20m 06s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/c04770f745c64323af8a08081ccddf0d : SUCCESS in 18m 27s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/255f9cd322fa431e9244dca9ea04b6b5 : SUCCESS in 18m 24s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/bd1c4b526b314d24b74713613cd94970 : SUCCESS in 7m 40s\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/15b1381c508e42999d0324448f2fa66c : SUCCESS in 8m 48s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/6287562db24f41c399d931a50efa29ea : SUCCESS in 1h 02m 41s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/41682af2a82e4224bca95874ea8d81b6 : SUCCESS in 56m 19s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/46dcc76b6af44094a054c11d3ce82278 : SUCCESS in 38m 39s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/05ed0955ede342f28697369d138c5297 : FAILURE in 30m 12s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/01e4aaad7c7d4c81908771403b9942d9 : SUCCESS in 4m 54s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/fe848336a8294792b360910eeefa064c : SUCCESS in 10m 57s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/3a9c4729ab254dd1b537603d1d715220 : SUCCESS in 59m 24s\n\nWarning:\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/zuul/zuul-jobs/playbooks/unittests/post.yaml for job swift-tox-func-ec-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml for job swift-tox-func-ec-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml for job swift-tox-func-ec-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml for job swift-tox-func-ec-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/zuul/zuul-jobs/playbooks/unittests/post.yaml for job swift-tox-func-encryption-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml for job swift-tox-func-encryption-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml for job swift-tox-func-encryption-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml for job swift-tox-func-encryption-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/zuul/zuul-jobs/playbooks/unittests/post.yaml for job swift-tox-func-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml for job swift-tox-func-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml for job swift-tox-func-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml for job swift-tox-func-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.","accounts_in_message":[],"_revision_number":2},{"id":"414fbdc389e8e8a2aa7f5328d15ea4788754f3aa","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-21 12:18:09.000000000","message":"Patch Set 2:\n\nBuild failed (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/51e0520a67e14bc8911f80fcbf6f8cc9\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/5055b78c366449f08e6a01f7a46df1a8 : FAILURE in 1h 01m 01s","accounts_in_message":[],"_revision_number":2},{"id":"d099dbabcaf92dc4bb290d0734feed5bc951ef41","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":38368,"name":"Christian Ohanaja","display_name":"Christian Ohanaja","email":"cohanaja@nvidia.com","username":"cohanaja"},"date":"2026-09-22 15:55:16.000000000","message":"Uploaded patch set 3.\n\nOutdated Votes:\n* Verified-1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":3},{"id":"e1d825286dc2b2a2229315528c34c4e33593e35d","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-22 16:54:33.000000000","message":"Patch Set 3:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/ab22d85d7bef4db9ad4fcd6605ab49ba\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/dd8722873aca4386920ada4c8a5cafd4 : SUCCESS in 57m 12s","accounts_in_message":[],"_revision_number":3},{"id":"010718809e21f3b733a5c502861db44801480fb0","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-22 17:04:36.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/8bc770b5e2184c15b5e1afaea59de267\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/fee12ac43a0248cd93e6985f30c11eb4 : SUCCESS in 6m 24s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/943077675b874014966f8670ba174754 : SUCCESS in 5m 07s\n- grenade https://zuul.opendev.org/t/openstack/build/07a68985299e423583921bf69d0b2fe9 : SUCCESS in 31m 42s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/59c9530fdbef45cea50260851308aa47 : SUCCESS in 52m 14s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/e48c82b707eb4e92b94a032e998baaae : SUCCESS in 29m 11s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/71be21bbab0347f7a8e35ead898b0c4d : SUCCESS in 43m 55s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/691adf92aa9d4d828cba30cbc71dd575 : SUCCESS in 19m 47s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/15a992fcc20f455c832f9569fdb4bc25 : SUCCESS in 21m 45s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/e033759f453b405dba8471747e02d792 : SUCCESS in 19m 54s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/c52b50f0ee374c1497581b2d84d7dfae : SUCCESS in 4m 49s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/404061b6c5d640828a714f25d574be3c : SUCCESS in 11m 48s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/7ff4432d2b8a4f61bdbb90d88100b202 : SUCCESS in 10m 16s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/57ae8aaeea4f4122bfbd0ce88be6c151 : SUCCESS in 22m 26s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/e95730997d2644c5b1f390be6a9a7f77 : SUCCESS in 21m 29s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/46dcb6daa707476884d172379c84b940 : SUCCESS in 16m 19s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/1267361b590e4a2393caf3bfaef5cdfb : SUCCESS in 15m 26s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/d14d7e33fd65495f913e453f4ee55493 : SUCCESS in 15m 46s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/24fcc4c8dd8c4a4fb087ce38ba0474c5 : SUCCESS in 15m 35s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/1c1828b495d945869041a8d6784e5573 : SUCCESS in 4m 23s\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/e17b253e3e7d4fb98ac058a02b082e83 : SUCCESS in 8m 49s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/0f2f9110c17b4aaeb5fb01a753cb3585 : SUCCESS in 39m 21s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/170cb247481e47ccb348142ea54a0e95 : SUCCESS in 51m 25s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/ce797859a4a742ecb70107eaf00d51a8 : SUCCESS in 56m 23s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/2893b537e30648ac91ab5bf1c3a5b62f : SUCCESS in 37m 11s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/abba08fd815b418ca3bf76803272da81 : SUCCESS in 3m 30s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/baca73c684124abf93123d0bfea5e5c9 : SUCCESS in 22m 39s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/96f5fc8469cd4ebaa0a646433a74e524 : SUCCESS in 1h 03m 01s\n\nWarning:\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/zuul/zuul-jobs/playbooks/unittests/post.yaml for job swift-tox-func-ec-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml for job swift-tox-func-ec-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml for job swift-tox-func-ec-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml for job swift-tox-func-ec-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/zuul/zuul-jobs/playbooks/unittests/post.yaml for job swift-tox-func-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml for job swift-tox-func-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml for job swift-tox-func-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml for job swift-tox-func-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/zuul/zuul-jobs/playbooks/unittests/post.yaml for job swift-tox-func-encryption-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml for job swift-tox-func-encryption-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml for job swift-tox-func-encryption-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml for job swift-tox-func-encryption-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.","accounts_in_message":[],"_revision_number":3}],"current_revision_number":3,"current_revision":"c24c3c8ab4e0a8997bc7f1dac79ff34b8a00c667","revisions":{"e8241961737085a05d2167269f4bcbb39ca4718d":{"kind":"REWORK","_number":1,"created":"2026-09-21 10:41:38.000000000","uploader":{"_account_id":38368,"name":"Christian Ohanaja","display_name":"Christian Ohanaja","email":"cohanaja@nvidia.com","username":"cohanaja"},"ref":"refs/changes/91/1006491/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/91/1006491/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/91/1006491/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/91/1006491/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/91/1006491/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/91/1006491/1"}}},"commit":{"parents":[{"commit":"caf11b1e93047eb09b97dc025a33fe4d5f7f7a8d","subject":"Merge \"relinker: Add audit step to quarantine stale hash directories\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/caf11b1e93047eb09b97dc025a33fe4d5f7f7a8d"}]}],"author":{"name":"Christian Ohanaja","email":"cohanaja@nvidia.com","date":"2026-09-21 10:40:04.000000000","tz":-420},"committer":{"name":"Christian Ohanaja","email":"cohanaja@nvidia.com","date":"2026-09-21 10:40:04.000000000","tz":-420},"subject":"sharder: use sync points in rsync then merge","message":"sharder: use sync points in rsync then merge\n\nWhen the sharder uses rsync_then_merge, currently when retrieving objects from\nthe retiring db and merging them into the new one, it starts from the beginning\nof all of the retiring db\u0027s rows. Since the new db is based on the old one,\nroughly what we should want are the rows that have been added from the old one,\nso instead of starting from -1 we can probably start from the newest sync\npoint.\n\nWhen a follower container is far behind the leader at the start of sharding,\nthis reduces the volume of rows merged into each fresh shard db, which can\nhappen if a container hasn\u0027t had rows replicated to it in a while.\n\nChange-Id: I23a3a1c2608eafff71a78d951ace88025e6d11f2\n\nChange-Id: I51400ee11a2c6bcceaaf31000f2e07090563a519\nSigned-off-by: Christian Ohanaja \u003ccohanaja@nvidia.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/e8241961737085a05d2167269f4bcbb39ca4718d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/e8241961737085a05d2167269f4bcbb39ca4718d"}]},"branch":"refs/heads/master"},"100a434d8134d2e43b775f795b2c62b1038358f6":{"kind":"NO_CODE_CHANGE","_number":2,"created":"2026-09-21 10:45:58.000000000","uploader":{"_account_id":38368,"name":"Christian Ohanaja","display_name":"Christian Ohanaja","email":"cohanaja@nvidia.com","username":"cohanaja"},"ref":"refs/changes/91/1006491/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/91/1006491/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/91/1006491/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/91/1006491/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/91/1006491/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/91/1006491/2"}}},"commit":{"parents":[{"commit":"caf11b1e93047eb09b97dc025a33fe4d5f7f7a8d","subject":"Merge \"relinker: Add audit step to quarantine stale hash directories\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/caf11b1e93047eb09b97dc025a33fe4d5f7f7a8d"}]}],"author":{"name":"Christian Ohanaja","email":"cohanaja@nvidia.com","date":"2026-09-21 10:40:04.000000000","tz":-420},"committer":{"name":"Christian Ohanaja","email":"cohanaja@nvidia.com","date":"2026-09-21 10:45:43.000000000","tz":-420},"subject":"sharder: use sync points in rsync then merge","message":"sharder: use sync points in rsync then merge\n\nWhen the sharder uses rsync_then_merge, currently when retrieving\nobjects from the retiring db and merging them into the new one, it\nstarts from the beginning of all of the retiring db\u0027s rows. Since\nthe new db is based on the old one, roughly what we should want are\nthe rows that have been added from the old one, so instead of\nstarting from -1 we can probably start from the newest sync point.\n\nWhen a follower container is far behind the leader at the start of\nsharding, this reduces the volume of rows merged into each fresh\nshard db, which can happen if a container hasn\u0027t had rows replicated\nto it in a while.\n\nSigned-off-by: Christian Ohanaja \u003ccohanaja@nvidia.com\u003e\nChange-Id: I51400ee11a2c6bcceaaf31000f2e07090563a519\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/100a434d8134d2e43b775f795b2c62b1038358f6"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/100a434d8134d2e43b775f795b2c62b1038358f6"}]},"branch":"refs/heads/master"},"c24c3c8ab4e0a8997bc7f1dac79ff34b8a00c667":{"kind":"REWORK","_number":3,"created":"2026-09-22 15:55:16.000000000","uploader":{"_account_id":38368,"name":"Christian Ohanaja","display_name":"Christian Ohanaja","email":"cohanaja@nvidia.com","username":"cohanaja"},"ref":"refs/changes/91/1006491/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/91/1006491/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/91/1006491/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/91/1006491/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/91/1006491/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/91/1006491/3"}}},"commit":{"parents":[{"commit":"caf11b1e93047eb09b97dc025a33fe4d5f7f7a8d","subject":"Merge \"relinker: Add audit step to quarantine stale hash directories\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/caf11b1e93047eb09b97dc025a33fe4d5f7f7a8d"}]}],"author":{"name":"Christian Ohanaja","email":"cohanaja@nvidia.com","date":"2026-09-21 10:40:04.000000000","tz":-420},"committer":{"name":"Christian Ohanaja","email":"cohanaja@nvidia.com","date":"2026-09-22 15:54:47.000000000","tz":-420},"subject":"sharder: use sync points in rsync then merge","message":"sharder: use sync points in rsync then merge\n\nWhen the sharder uses rsync_then_merge, currently when retrieving\nobjects from the retiring db and merging them into the new one, it\nstarts from the beginning of all of the retiring db\u0027s rows. Since\nthe new db is based on the old one, roughly what we should want are\nthe rows that have been added from the old one, so instead of\nstarting from -1 we can probably start from the newest sync point.\n\nWhen a follower container is far behind the leader at the start of\nsharding, this reduces the volume of rows merged into each fresh\nshard db, which can happen if a container hasn\u0027t had rows replicated\nto it in a while.\n\nSigned-off-by: Christian Ohanaja \u003ccohanaja@nvidia.com\u003e\nChange-Id: I51400ee11a2c6bcceaaf31000f2e07090563a519\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c24c3c8ab4e0a8997bc7f1dac79ff34b8a00c667"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c24c3c8ab4e0a8997bc7f1dac79ff34b8a00c667"}]},"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":""}}}]}
