)]}'
{"id":"openstack%2Fswift~1002659","triplet_id":"openstack%2Fswift~master~I35245f57cdc32613fad3f8bc0fde4db94223e5ed","project":"openstack/swift","branch":"master","topic":"s3-checksum-persistence","attention_set":{},"removed_from_attention_set":{"7847":{"account":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"last_update":"2026-08-28 08:46:41.000000000","reason":"Change was abandoned"}},"hashtags":[],"change_id":"I35245f57cdc32613fad3f8bc0fde4db94223e5ed","subject":"sq? always persist mpu part checksum sysmeta when available","status":"ABANDONED","created":"2026-08-27 15:07:48.000000000","updated":"2026-08-28 08:46:41.000000000","total_comment_count":2,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"542fa49f73a26ff4bd3e3be8ad31c53c2b174f1a","_number":1002659,"virtual_id_number":1002659,"owner":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"actions":{},"labels":{"Verified":{"disliked":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"},{"tag":"autogenerated:zuul:check","value":-1,"date":"2026-08-27 16:23:39.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":{"recommended":{"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"},"all":[{"value":1,"date":"2026-08-27 18:57:03.000000000","permitted_voting_range":{"min":-1,"max":1},"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"},{"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":"","value":1,"default_value":0,"optional":true},"Workflow":{"all":[{"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"},{"_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"]},{"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-08-27 16:23:39.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2026-08-27 18:57:03.000000000","updated_by":{"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"},"reviewer":{"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"},"state":"REVIEWER"}],"messages":[{"id":"323c85f1b6a2f5aa1a3f68cd2f98277d534492af","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-08-27 15:07:48.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"c9c8974fa00f6e1894c78d61a4649500fd61a860","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-27 16:23:39.000000000","message":"Patch Set 1: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\nand https://docs.openstack.org/project-team-guide/testing.html#how-to-handle-test-failures\n\nhttps://zuul.opendev.org/t/openstack/buildset/c3202d1a3ef54debbad4081f319f54e3\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/57b67fd346a3488a9ff4301ca186043f : SUCCESS in 10m 23s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/544e7ae72a15480f8c3805c5385179a9 : SUCCESS in 10m 14s\n- grenade https://zuul.opendev.org/t/openstack/build/cf2beb204d984196b94b519ae9934a24 : SUCCESS in 54m 48s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/108158eb39ea4355bf153a0be4af3165 : SUCCESS in 1h 02m 43s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/b0a492f37aff4ee8bc40d7bb22331ae3 : SUCCESS in 55m 09s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/e2859c1c39214af591d44e73e10ad98b : SUCCESS in 32m 23s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/689c41c16ebf4d7f935cf4c74cba2151 : SUCCESS in 20m 09s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/f021af6d743f47caabd8ae1a359a6b85 : SUCCESS in 18m 55s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/2b6410a1e85a4e8b9f892b91e47cd410 : SUCCESS in 22m 53s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/ed75998907a7474c91850f639582f043 : SUCCESS in 5m 58s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/c80385601f194784b7eda86c84e44681 : FAILURE in 24m 07s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/c5d1cb03a41c4ad080ac0658f99b7c1a : FAILURE in 11m 08s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/efea16f1fede42d4ab74f427aea42f13 : FAILURE in 31m 53s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/d1ec3513166f465ebdb71f7182400c71 : FAILURE in 10m 29s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/b4d7ab4672b64361bc102432c9319e60 : SUCCESS in 19m 39s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/a7ac175e1729482782421535486f8119 : SUCCESS in 14m 23s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/5aa240d2e42d4613be671ef70803af69 : SUCCESS in 17m 10s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/fcb2a2bf76154d1dab40d4435e2492c3 : SUCCESS in 19m 14s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/3b0181ac1b304b7e8469e7b55ad55b76 : SUCCESS in 10m 37s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/d4684f1fdfff4135845eb76e9899e3ec : FAILURE in 5m 48s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/db6bd02262b14422a81c3bcccd5deff0 : SUCCESS in 9m 22s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/2ed7704bd89348a5bad0453e15a11352 : SUCCESS in 37m 14s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/374b7e7b792149a8b35aa7e128991bec : SUCCESS in 29m 41s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/fa6eb167a22545dca0228532906a6cf5 : SUCCESS in 30m 05s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/e20b64ff6d41478ba3815f00170de039 : FAILURE in 29m 04s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/036e0064943f4e86a710ed81a29b0883 : SUCCESS in 3m 32s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/4064dc1c6ff0479f8c74aa5e19aee8b2 : SUCCESS in 24m 19s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/59c451699de64b85a6d21143db009247 : SUCCESS in 54m 00s\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-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.\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.","accounts_in_message":[],"_revision_number":1},{"id":"29f2ed7500f65893cb07e65571ce5134f94cac7e","author":{"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"},"date":"2026-08-27 18:57:03.000000000","message":"Patch Set 1: Code-Review+1\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"33fa2c2343f9c55e55dc67a064654c1a8bf42709","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-27 19:41:37.000000000","message":"Patch Set 1:\n\nBuild failed (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/5a4d3e9c526d4defa786d451d215911a\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/413a426174404870b3cbb0b49ef43da9 : FAILURE in 1h 14m 34s","accounts_in_message":[],"_revision_number":1},{"id":"e3bbe59c496817be072319b3d6b8bec36fc0bec8","author":{"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"},"date":"2026-08-27 22:04:48.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"542fa49f73a26ff4bd3e3be8ad31c53c2b174f1a","tag":"autogenerated:gerrit:abandon","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-08-28 08:46:41.000000000","message":"Abandoned\n\nsquashed","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"065495207ea42c570a58dd422b22b34a645d83c4","revisions":{"065495207ea42c570a58dd422b22b34a645d83c4":{"kind":"REWORK","_number":1,"created":"2026-08-27 15:07:48.000000000","uploader":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"ref":"refs/changes/59/1002659/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/59/1002659/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/59/1002659/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/59/1002659/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/59/1002659/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/59/1002659/1"}}},"commit":{"parents":[{"commit":"ee1fb6a2baae7eef45327fac8a6ddf0f158296c8","subject":"s3api: Checksum Persistence on CompleteMultipartUpload","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/ee1fb6a2baae7eef45327fac8a6ddf0f158296c8"}]}],"author":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-08-27 14:54:52.000000000","tz":60},"committer":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-08-27 15:06:49.000000000","tz":60},"subject":"sq? always persist mpu part checksum sysmeta when available","message":"sq? always persist mpu part checksum sysmeta when available\n\nKISS: even if the mpu has not specified a checksum, persist any\nchecksum metadata we have for uploaded parts because it makes the code\nand on-disk sysmeta expectations simpler and more uniform.\n\n* All objects, regular or parts, uploaded with a checksum have\nchecksum sysmeta on disk.\n\n* There\u0027s only one way to synthesise PUT response checksum headers,\nwhich is by translating the PUT request sysmeta footers (which are now\nalways sent).\n\n* CompleteMultipartUpload doesn\u0027t care: if it wasn\u0027t expecting parts\n  to have checksums it doesn\u0027t look at the sysmeta.\n\nChange-Id: I35245f57cdc32613fad3f8bc0fde4db94223e5ed\nSigned-off-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/065495207ea42c570a58dd422b22b34a645d83c4"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/065495207ea42c570a58dd422b22b34a645d83c4"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"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":""}}}]}
