)]}'
{"id":"openstack%2Fswift~792397","triplet_id":"openstack%2Fswift~master~I5c398b6008716b64c668737e4201ba3b6ab3320b","project":"openstack/swift","branch":"master","topic":"bug/1929083","hashtags":[],"change_id":"I5c398b6008716b64c668737e4201ba3b6ab3320b","subject":"tempurl: Fix PUT upload to temp url on py3","status":"MERGED","created":"2021-05-20 15:11:05.000000000","updated":"2021-05-21 07:32:15.000000000","submitted":"2021-05-20 23:32:15.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"792397-bug/1929083","meta_rev_id":"2357314a751c786a189193a6c786089d4f87d543","_number":792397,"virtual_id_number":792397,"owner":{"_account_id":31241,"name":"wdoekes","email":"walter+ubuntu@wjd.nu","username":"wdoekes"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:gate","value":2,"date":"2021-05-20 23:32:15.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":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":2,"date":"2021-05-20 18:54:12.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":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":1,"date":"2021-05-20 22:23:18.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":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-05-20 16:05:05.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-05-20 18:51:23.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"}],"messages":[{"id":"b792d5230c06f07f43a4d638b190ec9bf78ca8ed","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":31241,"name":"wdoekes","email":"walter+ubuntu@wjd.nu","username":"wdoekes"},"date":"2021-05-20 15:11:05.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"0a9f132126c944faf4fe885c281b45cab0828934","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-05-20 16:05:05.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/2bc258b0a8a641d2be1dfe12ed8403d1 : SUCCESS in 11m 44s\n- grenade https://zuul.opendev.org/t/openstack/build/ec432e7eb2cd429f8c9db44de40b2461 : SUCCESS in 51m 58s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/b708604d101c41fc809a741aea115b8d : SUCCESS in 29m 41s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/4d26d5de7dab4ce1a42701197a5c9bec : SUCCESS in 8m 02s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/4a736153647747e094c9ee96288dec2e : SUCCESS in 6m 18s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/c4434a6880424ecc819be95f3437a86b : SUCCESS in 12m 16s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/415f9a3f401248e5a58fcb4756a44f9f : SUCCESS in 12m 59s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/4ba4aac13bc3455faa45e1a4cde24c11 : SUCCESS in 13m 22s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/4d37fcee5acc485682d918550982dbb5 : SUCCESS in 11m 18s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/e4044316c2684712b1d15be2f65a03cb : SUCCESS in 14m 18s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/564d93f08705441685831e407496d747 : SUCCESS in 12m 59s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/9140904a226242b3aab92cd1c9bce10f : SUCCESS in 13m 40s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/6dac4391923441d7902758c7aa03b33c : SUCCESS in 13m 33s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/80221312f22a4c848239e074c86e2a08 : SUCCESS in 13m 59s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/7a3bc269af52467d85b2a065690cc9b8 : SUCCESS in 13m 50s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/20d3acf6bddf4a27b34d7216e5f08dc6 : SUCCESS in 16m 49s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/29066964506b42a08251142d3610af18 : SUCCESS in 6m 35s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/02ae57ae698c48df8f65f2ac39fc4625 : FAILURE in 32m 07s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/3e0418390d6c40618bf7fd9ed94e9f65 : SUCCESS in 44m 57s\n- swift-probetests-centos-8 https://zuul.opendev.org/t/openstack/build/66227314fade4303867f59f84f532ded : SUCCESS in 44m 11s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/f6cbf8a5c284450a89c1bcc38922dd96 : SUCCESS in 40m 51s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/323a4dcf61b34eadbd3c3dde755e5f10 : SUCCESS in 29m 41s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/1dd31a61be184f9e99e5f574a7e7b8a5 : SUCCESS in 18m 06s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/0f0007d76cfa41e1b79b98ffe62f90cd : SUCCESS in 6m 20s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/e5e64b40aeed4d0cac46171bad4cf03a : SUCCESS in 28m 52s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/67c22940b4c84c2d8dd2cc1e1e179761 : SUCCESS in 46m 05s","accounts_in_message":[],"_revision_number":1},{"id":"1af92f6130890aee4976ae408edf650110773297","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2021-05-20 18:51:23.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"d1be21d9a15a421fecf2b12dcf463972aa86cd22","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2021-05-20 18:54:12.000000000","message":"Patch Set 2: Code-Review+2\n\nGood fix, thanks! I\u0027m a little surprised our func test at https://github.com/openstack/swift/blob/2.25.1/test/functional/test_tempurl.py#L201 didn\u0027t catch it, but I suppose different proxy pipelines may prevent it from being a problem. Out of curiosity, what\u0027s your pipeline look like?\n\nHope you don\u0027t mind me pushing a new patchset; just including a test to make sure we don\u0027t regress.","accounts_in_message":[],"_revision_number":2},{"id":"137691e243fba0ddf987f573289df1d1c227fd54","author":{"_account_id":31241,"name":"wdoekes","email":"walter+ubuntu@wjd.nu","username":"wdoekes"},"date":"2021-05-20 19:27:36.000000000","message":"Patch Set 2:\n\n\u003e Good fix, thanks! I\u0027m a little surprised our func test at https://github.com/openstack/swift/blob/2.25.1/test/functional/test_tempurl.py#L201 didn\u0027t catch it, but I suppose different proxy pipelines may prevent it from being a problem. Out of curiosity, what\u0027s your pipeline look like?\n\n    [pipeline:main]\n    pipeline \u003d catch_errors healthcheck cache listing_formats tempurl formpost authtoken s3api s3token keystoneauth staticweb copy slo dlo keymaster encryption proxy-logging proxy-server\n\nI don\u0027t know why that test doesn\u0027t trap it. I assume that the catch_errors middleware is not loaded? Or that the code takes another path, not reaching the .append().\n\nIn the ticket I did mention at least one other case of .items() that may cause issues, but is not related to the tempurl-PUT. There might be more.\n \n\u003e Hope you don\u0027t mind me pushing a new patchset; just including a test to make sure we don\u0027t regress.\n\nOf course I don\u0027t mind 😊\nTests FTW","accounts_in_message":[],"_revision_number":2},{"id":"b8b9f640dd2995c56668184e341c174efa4094f3","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-05-20 20:01:52.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/580a5ce77ed94581966e59b1ced49a9c : SUCCESS in 9m 14s\n- grenade https://zuul.opendev.org/t/openstack/build/37e8422d9a3e49459f7987715460de75 : SUCCESS in 1h 04m 49s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/7b07520071484100943b31af4f18a0cb : SUCCESS in 41m 03s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/266cabd449ff4b52b17b2401aa4504dc : SUCCESS in 8m 37s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/17da360e78514511adc5a1e8fcd52a65 : SUCCESS in 6m 28s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/38b7a154b777474b857fb7eb76052961 : SUCCESS in 26m 55s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/e4fac13e54d24379ae2e0a1f791c5d88 : SUCCESS in 16m 52s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/dcc39345eebf45bda37d8f24c2030fe9 : SUCCESS in 16m 49s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/d1906df797414c4e87ea09792f76851f : SUCCESS in 16m 41s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/eac48561f4b24fc18dd7249894783646 : SUCCESS in 16m 10s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/3b9f280a666644398493dfef0c9cab0d : SUCCESS in 16m 45s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/c0849306f306429a9f5796292bafa041 : SUCCESS in 16m 08s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/239e08db2f75485a95e711a2b179889d : SUCCESS in 19m 15s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/0b91c25681804738977c2a4effdd7c91 : SUCCESS in 17m 45s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/eae0ac050d5a47c0b6ea674717177906 : SUCCESS in 18m 12s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/cc4b66e3be0249beb6cddf0b2fbd752b : SUCCESS in 19m 17s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/b39954feb4b1431f9d5fbdbb91212598 : SUCCESS in 6m 33s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/0c4fde3c8c1e446e9c36d1b8d2491e69 : SUCCESS in 21m 05s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/b7eb0374abfa4b8a97ec92654bec8663 : SUCCESS in 58m 59s\n- swift-probetests-centos-8 https://zuul.opendev.org/t/openstack/build/758064ea6e1a43eea3e6f25d045693f7 : SUCCESS in 49m 31s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/1e48f6996e614af3a5dc35d8e59d59fd : SUCCESS in 41m 12s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/a8f02b6c06d44633bec3eef4b7aef394 : SUCCESS in 48m 00s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/e964d04ac5c6484cae54fc66f180c852 : SUCCESS in 14m 07s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/0ec862e28db147089ef7ae24375c608e : SUCCESS in 6m 29s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/c29a9222887345b5a8784f148d0bd02e : SUCCESS in 22m 50s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/6ba48af15dd14361bf715356a7c0ae7c : SUCCESS in 47m 28s","accounts_in_message":[],"_revision_number":2},{"id":"d3f1f374a24d476489200601cdd634e59045aaf0","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2021-05-20 22:23:18.000000000","message":"Patch Set 2: Workflow+1\n\nInteresting -- we usually recommend doubled-up proxy-logging, with one copy early in the pipeline (given yours, I\u0027d probably put it between healthcheck and cache) so you can get the best picture you can of what the client sent, and the other late (just as you have it) to better see subrequests.","accounts_in_message":[],"_revision_number":2},{"id":"ec7aa369fc67a57708df3697f064883166816877","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-05-20 22:23:39.000000000","message":"Patch Set 2: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":2},{"id":"478bc57fe40a4e2cf0b6d216ab8530934659ec2e","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-05-20 23:32:15.000000000","message":"Patch Set 2: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/f334ff5e658945b3a2f6750ba5b04ea5 : SUCCESS in 9m 01s\n- grenade https://zuul.opendev.org/t/openstack/build/888131115a8c4ec48def3cc913f6b7ba : SUCCESS in 1h 04m 50s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/d0af26e23a874fa39285ec816aa4c61b : SUCCESS in 51m 01s\n- swift-upload-image https://zuul.opendev.org/t/openstack/build/f9cf2810214c4758b8dead0c0a56ba68 : SUCCESS in 9m 33s (non-voting)\n- swift-upload-image-py3 https://zuul.opendev.org/t/openstack/build/7f1fedc7ab504d7b85597ed0c93d3f80 : SUCCESS in 8m 58s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/7fd44c1c0d8e4c86a1583199f97651f9 : SUCCESS in 16m 05s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/57dee2b59179490d98cb008cdb5bb8f2 : SUCCESS in 16m 42s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/bf1bcd4a511d44648f47513385ea9306 : SUCCESS in 16m 44s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/14adbf7bf3ad448c8bdf3a1059107a73 : SUCCESS in 16m 37s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/535c1cd04bda4207be4b6241bf837c04 : SUCCESS in 16m 31s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/85fc72500a08471683862ca5a0a8bbee : SUCCESS in 16m 43s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/eac12b05fba3425aa4a9b8ce9d51b36a : SUCCESS in 17m 40s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/74a0e7ff42fa4ac7ba09350f3ca5c2f1 : SUCCESS in 18m 21s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/67e1cdf76e13439f842c33b1137fefe3 : SUCCESS in 17m 40s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/10c3f71ca97045a495edaf6375ac6084 : SUCCESS in 18m 22s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/43b4d43df04141b187ad2e021d84fa28 : SUCCESS in 19m 23s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/9ca7b2caf7ab4aa4b81230c0a09c5ae9 : SUCCESS in 6m 48s\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/94ef61d6cd024ac89226360844db681e : SUCCESS in 52m 23s\n- swift-probetests-centos-8 https://zuul.opendev.org/t/openstack/build/d0ca9f23ba0b4a6c99a1efbf389e449a : SUCCESS in 46m 57s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/5e031f75ee0b404e88a36a4cc9f8c469 : SUCCESS in 42m 18s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/fc70786e1c2b477daa0736a734ff34b4 : SUCCESS in 47m 13s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/acac85395b0741c59bca1fa638aee9f5 : SUCCESS in 17m 29s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/4ae33b2d66284a6bbc27816809d866bd : SUCCESS in 6m 13s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/6eaff6ea4ed2488c92408dd062959430 : SUCCESS in 22m 49s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/b12d3bccdad34be9acdf5122965619f2 : SUCCESS in 52m 08s","accounts_in_message":[],"_revision_number":2},{"id":"f837d451f08cfdebf9f8d272396f0cec7ad3c6da","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-05-20 23:32:15.000000000","message":"Change has been successfully merged by Zuul","accounts_in_message":[],"_revision_number":2},{"id":"8822b9e2a86aa3f8b2a0d846e8a5724ffdf80b5e","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-05-20 23:34:32.000000000","message":"Patch Set 2:\n\nBuild succeeded (promote pipeline).\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/fef4714dac204b15a4ca6c1e6bf9eb51 : SUCCESS in 1m 58s\n- swift-promote-image https://zuul.opendev.org/t/openstack/build/a8c4bb8ab63e420f815f433644839638 : FAILURE in 41s (non-voting)\n- swift-promote-image-py3 https://zuul.opendev.org/t/openstack/build/779a1bdd594641c198c954cb3fdcca20 : SUCCESS in 45s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"2357314a751c786a189193a6c786089d4f87d543","author":{"_account_id":31241,"name":"wdoekes","email":"walter+ubuntu@wjd.nu","username":"wdoekes"},"date":"2021-05-21 07:32:15.000000000","message":"Patch Set 2:\n\n\u003e Interesting -- we usually recommend doubled-up proxy-logging, with one copy early in the pipeline (given yours, I\u0027d probably put it between healthcheck and cache) so you can get the best picture you can of what the client sent, and the other late (just as you have it) to better see subrequests.\n\nHm.. I think this pipeline may have organically grown. Thanks for the suggestion!\n\nShould I cherry-pick this to victoria and ussuri?","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"77530136f13f1fc0d8625d43e1689427d4ee2fad","revisions":{"50ea49239d7b3b94a9a1003310e560957bc0c7f0":{"kind":"REWORK","_number":1,"created":"2021-05-20 15:11:05.000000000","uploader":{"_account_id":31241,"name":"wdoekes","email":"walter+ubuntu@wjd.nu","username":"wdoekes"},"ref":"refs/changes/97/792397/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/97/792397/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/97/792397/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/97/792397/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/97/792397/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/97/792397/1"}}},"commit":{"parents":[{"commit":"0a58574109e0e329ddb6ee78b7ed82b3a9c42c61","subject":"Merge \"sharder: report perfectly overlapping shard ranges\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/0a58574109e0e329ddb6ee78b7ed82b3a9c42c61"}]}],"author":{"name":"Walter Doekes","email":"walter+github@wjd.nu","date":"2021-05-20 15:06:25.000000000","tz":120},"committer":{"name":"Walter Doekes","email":"walter+github@wjd.nu","date":"2021-05-20 15:06:25.000000000","tz":120},"subject":"tempurl: Fix PUT upload to temp url","message":"tempurl: Fix PUT upload to temp url\n\nWithout this change, the self._response_headers gets a dict_items() type\non PUT. But the rest of the code assumes that it is a list.\n\nBug manifestation:\n\n    File \"swift/common/middleware/catch_errors.py\", line 120,\n        in handle_request\n      self._response_headers.append((\u0027X-Trans-Id\u0027, trans_id))\n  AttributeError: \u0027dict_items\u0027 object has no attribute \u0027append\u0027\n\nCloses-Bug: #1929083\nChange-Id: I5c398b6008716b64c668737e4201ba3b6ab3320b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/50ea49239d7b3b94a9a1003310e560957bc0c7f0"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/50ea49239d7b3b94a9a1003310e560957bc0c7f0"}]},"branch":"refs/heads/master"},"77530136f13f1fc0d8625d43e1689427d4ee2fad":{"kind":"REWORK","_number":2,"created":"2021-05-20 18:51:23.000000000","uploader":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"ref":"refs/changes/97/792397/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/97/792397/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/97/792397/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/97/792397/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/97/792397/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/97/792397/2"}}},"commit":{"parents":[{"commit":"0a58574109e0e329ddb6ee78b7ed82b3a9c42c61","subject":"Merge \"sharder: report perfectly overlapping shard ranges\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/0a58574109e0e329ddb6ee78b7ed82b3a9c42c61"}]}],"author":{"name":"Walter Doekes","email":"walter+github@wjd.nu","date":"2021-05-20 15:06:25.000000000","tz":120},"committer":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2021-05-20 18:44:11.000000000","tz":-420},"subject":"tempurl: Fix PUT upload to temp url on py3","message":"tempurl: Fix PUT upload to temp url on py3\n\nWithout this change, the self._response_headers gets a dict_items() type\non PUT. But the rest of the code assumes that it is a list.\n\nBug manifestation:\n\n    File \"swift/common/middleware/catch_errors.py\", line 120,\n        in handle_request\n      self._response_headers.append((\u0027X-Trans-Id\u0027, trans_id))\n  AttributeError: \u0027dict_items\u0027 object has no attribute \u0027append\u0027\n\nCloses-Bug: #1929083\nChange-Id: I5c398b6008716b64c668737e4201ba3b6ab3320b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/77530136f13f1fc0d8625d43e1689427d4ee2fad"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/77530136f13f1fc0d8625d43e1689427d4ee2fad"}]},"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":{}}}]}
