)]}'
{"id":"openstack%2Fswift~974015","triplet_id":"openstack%2Fswift~master~Ib4dfa0930e8a100fc25689d3e571a16c9ec481c6","project":"openstack/swift","branch":"master","topic":"close-s3api-408","attention_set":{},"removed_from_attention_set":{"1179":{"account":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"last_update":"2026-06-25 11:02:35.000000000","reason":"Change was submitted"},"15343":{"account":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"last_update":"2026-06-25 11:02:35.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"Ib4dfa0930e8a100fc25689d3e571a16c9ec481c6","subject":"s3api: Ask client to close on RequestTimeout","status":"MERGED","created":"2026-01-20 22:13:01.000000000","updated":"2026-06-25 11:04:03.000000000","submitted":"2026-06-25 11:02:35.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":14,"unresolved_comment_count":3,"has_review_started":true,"submission_id":"974015-close-s3api-408","meta_rev_id":"50923aeda423e893df001b945e46df8ddebe693d","_number":974015,"virtual_id_number":974015,"owner":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"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"},{"value":0,"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-06-25 11:02:35.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":"","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":"2026-03-25 20:42:19.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"value":2,"date":"2026-06-25 09:42:16.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},{"value":0,"_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":{"approved":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"all":[{"value":0,"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"value":1,"date":"2026-06-25 09:42:16.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},{"value":0,"_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":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"CC":[{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-01-20 23:18:20.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-03-24 15:59:43.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":"CC"},{"updated":"2026-03-25 05:20:54.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"},{"updated":"2026-06-25 09:42:16.000000000","updated_by":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"reviewer":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"state":"REVIEWER"}],"messages":[{"id":"8265f463cec62a1814608dff0338e2bab9ebf9df","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2026-01-20 22:13:01.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"87737c6fc411141bac348d2635ef09a35ce93d37","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-01-20 23:18:20.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/455adfa9308f44b2934243c0513fb997\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/7a22a8ac3c4c492fa1d6a77d827dc245 : SUCCESS in 8m 33s\n- grenade https://zuul.opendev.org/t/openstack/build/16964f8437c34a1182ebf9222bc764ad : SUCCESS in 29m 37s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/743d6002101a4a999703e7c2f2ab56c4 : SUCCESS in 1h 00m 15s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/c9b5988fcc6e41ce8e57f0a0f2bd2b56 : SUCCESS in 53m 10s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/3f9e1d24d35440469ba689d9a5a27d05 : SUCCESS in 49m 24s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/6093834ac68946c7840655afe66d8547 : SUCCESS in 19m 10s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/9e5e07b2cda4455582ae4c28d00f4973 : SUCCESS in 20m 24s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/f11ac87d24cc4a36ad9b8e6625eadf3f : SUCCESS in 11m 43s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/64197da236e04ca8b946fb86f4d48c1d : SUCCESS in 4m 33s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/424bc456fc364f06a167a650a4f2ca1e : SUCCESS in 11m 35s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/6533bdf8d5894a119da6f6f29044f92b : SUCCESS in 9m 14s\n- swift-tox-py312 https://zuul.opendev.org/t/openstack/build/e078492f9e964bc292606e60e3919170 : SUCCESS in 28m 51s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/8e4507ce01824a5c8e4fbb03db666b15 : SUCCESS in 24m 50s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/266480a1a4b44230ac64f1a005949daa : SUCCESS in 15m 33s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/c855b9526ac34e4f98f8c4a1a59c5fc3 : SUCCESS in 16m 27s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/c1f46b59f8cb4642ac720edfa3a027a0 : SUCCESS in 8m 15s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/dc335aa35a1d47448e74c44122b1e666 : SUCCESS in 8m 19s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/df72f7d4752344a9896688dd5020cc40 : SUCCESS in 15m 09s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/7b5ab9d1ab294433bf6d3848b8c6c587 : SUCCESS in 8m 11s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/f6938fd11ed041cea94c11389f381288 : SUCCESS in 56m 11s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/357c9d11531d4008b6033351c50bc7ca : SUCCESS in 33m 28s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/1a4cf37aa88a466b939d731427fa2207 : SUCCESS in 50m 24s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/55f3d348223c4e4bb68ae82f216a0a92 : SUCCESS in 21m 23s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/6b623ba91bd4427dbf2bf8ae655b8007 : SUCCESS in 4m 06s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/b54f2f0ace6b4650ba27bee10a3ac655 : SUCCESS in 16m 48s\n- tempest-integrated-object-storage-ubuntu-jammy https://zuul.opendev.org/t/openstack/build/955bafece89b44b9bbf619a403968357 : SUCCESS in 33m 58s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/a988a8c20afa4bf29d5dd48664311084 : SUCCESS in 44m 00s","accounts_in_message":[],"_revision_number":1},{"id":"ca2693b4d50d8acf4d298e0eda2ee9292778cd7a","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-01-20 23:23:03.000000000","message":"Patch Set 1:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/187e07372f4a43299f6484a04c23a8e8\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/7db65c28b70344eeb9f455b107185311 : SUCCESS in 1h 07m 47s","accounts_in_message":[],"_revision_number":1},{"id":"527cfb3341734541d21a8f1f9b8221f18a824088","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2026-03-13 19:32:32.000000000","message":"Uploaded patch set 2.\n\nOutdated Votes:\n* Verified+1\n","accounts_in_message":[],"_revision_number":2},{"id":"8264bd44a34639ac57738d614f37649f18c4a4b4","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-13 20:01:36.000000000","message":"Patch Set 2:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/fa187449688647c4b4119bc3fc35189b\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/e474460e062e4b4eb9b581e146e645f5 : SUCCESS in 27m 35s","accounts_in_message":[],"_revision_number":2},{"id":"f224b6dd253a7255a3be3f453a6072782a31856a","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2026-03-13 20:21:41.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"4a743a9d5a00b43a2de91ca06b479902dfa9205c","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-13 20:56:37.000000000","message":"Patch Set 3:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/a858f1d5a5f64c9c8911e2a9f5e59b52\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/0601bc7f13ca4eae95d05cb652a49298 : SUCCESS in 33m 26s","accounts_in_message":[],"_revision_number":3},{"id":"ddb9df6694064bb2dfcb2951fe2812166a04180c","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-13 21:25:24.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/1a1aa9ae666142b09076a76da3ecce20\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/1fbadf60def9487f96c61b1e7f0fda8d : SUCCESS in 10m 43s\n- grenade https://zuul.opendev.org/t/openstack/build/175782e9df794e9599f4b38027573483 : SUCCESS in 50m 21s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/ede9a20b3b5e4016a60165938e019857 : SUCCESS in 45m 52s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/0f99240e64b14bd583fc0e64b3dd8ec8 : SUCCESS in 58m 48s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/8dc609c2d5bc4620866378dd4deb2cff : SUCCESS in 53m 22s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/54bada081b4542cba723deaa618d887c : SUCCESS in 19m 14s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/94d749497d744105bc6d6bbdd17a0684 : SUCCESS in 20m 51s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/ad9ff2ae16f84710918eb4d68d3bed1a : SUCCESS in 22m 17s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/dc80ebd7e9d8455eb2c9f719fbd0f440 : SUCCESS in 4m 36s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/c4ae9164e53045f2adf06c26bf6dc132 : SUCCESS in 24m 19s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/56d3a6ade63244d09d0609e4b5f91552 : SUCCESS in 14m 23s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/02018f889aa844f5b10c4b7f747ce1b2 : SUCCESS in 29m 15s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/f6adb7a45a324aebae11f57a2cce5a72 : SUCCESS in 19m 27s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/0b90ec4a5c1c4fc7adf4bd26036a17b7 : SUCCESS in 15m 25s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/2ee5d453fabf4243812d594564b68c0a : SUCCESS in 8m 53s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/5e0ebc3d08f740d0b24e96fcb54a5357 : SUCCESS in 9m 15s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/e89612a9b9b54de3916afa75d93a6344 : SUCCESS in 6m 16s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/9afd11e1759542fdaaac7f03e198d22a : SUCCESS in 22m 03s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/734fc719fd0542bca709841b368da52b : SUCCESS in 4m 49s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/bef2290aa4ca4b64ae347649b39e8d2d : SUCCESS in 51m 08s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/988f009cc90845f181297ca785834712 : SUCCESS in 25m 32s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/2b190cf9f8124642b5e3a9a10b01da74 : SUCCESS in 25m 20s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/5d69f162ed044bd18cd34bdc5ce1a31c : SUCCESS in 28m 52s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/e5586077fc414cb19e37bb15cbf9d82b : SUCCESS in 3m 42s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/3f06fcbddd514a06914bb5ef55730696 : SUCCESS in 18m 58s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/eb294f1609e04748998da88b8052e635 : SUCCESS in 32m 31s","accounts_in_message":[],"_revision_number":3},{"id":"b5e1c1204c3ec076df7bce9fd8de50b4f49333e9","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2026-03-24 15:59:43.000000000","message":"Patch Set 3:\n\n(3 comments)","accounts_in_message":[],"_revision_number":3},{"id":"6ee854f3b6b766be6275a48a3a288ce8d4bee7af","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2026-03-24 23:03:16.000000000","message":"Uploaded patch set 4.\n\nOutdated Votes:\n* Verified+1\n","accounts_in_message":[],"_revision_number":4},{"id":"4185fd684c80df825743fd6a3ad74ae4391cbff4","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2026-03-24 23:05:56.000000000","message":"Patch Set 4:\n\n(4 comments)","accounts_in_message":[],"_revision_number":4},{"id":"614b7d879d33531dab70236d1ca4b703fe706f3d","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-24 23:37:28.000000000","message":"Patch Set 4:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/c95f4f3e1d9249d6865917c593e6cf7c\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/31831d7b460e4633b386cbd834c7809d : SUCCESS in 31m 49s","accounts_in_message":[],"_revision_number":4},{"id":"a9039d2f440c6b59ed1c884e860f368d88bd87d6","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-25 00:12:24.000000000","message":"Patch Set 4: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/17518b16362947609b675d6624579e13\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/e21ff2cc795d4232a79e276f51cd25f4 : SUCCESS in 10m 14s\n- grenade https://zuul.opendev.org/t/openstack/build/6a316b6476054268bb1dcdf085ee98a5 : SUCCESS in 34m 22s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/52ef2e297a4d4699b8adc31d2b1225b9 : SUCCESS in 1h 03m 33s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/b5db61397e204585aeaea97659c3237c : SUCCESS in 1h 00m 13s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/05a765080b9849fa93aecee9f9d77856 : SUCCESS in 59m 02s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/ea9cbb592d3244f790d595c37471ee9c : SUCCESS in 24m 22s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/231f8f7f7cf4461cb94f05ed556663bd : SUCCESS in 18m 44s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/7f96f23cd18a4144afcc652fbe1c00d2 : SUCCESS in 17m 57s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/ba68c6d553424ccaa39e295cae6aecaa : SUCCESS in 6m 14s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/bda5bda028e048779b6df8c9c0094c65 : SUCCESS in 26m 52s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/c8552c65b7e04bc4b3d1b78a1ebe6e2e : SUCCESS in 16m 32s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/f1728dd7bd104c5b8d8af614261a1b01 : SUCCESS in 19m 58s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/6567d7106576431b8f20a1c9ac99fd2c : SUCCESS in 20m 26s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/d4ef9ed59300425c887df107c8d53a86 : SUCCESS in 14m 16s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/a79f5cdf1dae46069f0c5f6036410679 : SUCCESS in 8m 40s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/1001a5bea89e4af69a7142e3de250f93 : SUCCESS in 14m 47s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/b210376c0ad643ccacab73912ba8244f : SUCCESS in 6m 30s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/fb48651fc92a42f8888d4d0463e47c0b : SUCCESS in 14m 28s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/09974ae0135f4a9390a167ba09a046d3 : SUCCESS in 4m 37s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/b9222449c0d241bc9b23308d29a12ca3 : SUCCESS in 34m 15s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/0b1fda15d7e04e7fab82a3919eef2d60 : SUCCESS in 21m 05s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/b5d658aeceef472f80f9171237f04df9 : SUCCESS in 32m 25s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/b6d84e2a8ef04f858295824c643f799e : SUCCESS in 31m 15s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/e73316caa0ea4618b28d02223cb9d0c4 : SUCCESS in 3m 53s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/16b9ebc4e0bb4d708c80a3572904d615 : SUCCESS in 8m 40s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/c408b7b8886244c58e18c8f6e4ab28a2 : SUCCESS in 43m 19s","accounts_in_message":[],"_revision_number":4},{"id":"38599885d1603fa1726ab2cccb3f2d3c66e0b761","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2026-03-25 05:20:54.000000000","message":"Patch Set 4: Code-Review-1\n\n(2 comments)\n\nSeems logical to me. There seems to be a client timeout, let\u0027s try and hint to them to disconnect if they are still there.\n\nTest ShortFileLike seems a little brittle to me, works in the one test.. and maybe boto means it\u0027ll always be 4. But might be nice to make it configurable in case we decide to use it in other tests or even one day move it out of s3api for other shortread tests?","accounts_in_message":[],"_revision_number":4},{"id":"4c0af73642442b17e0796cb34036356ac21ec4fa","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2026-03-25 20:42:19.000000000","message":"Patch Set 4: Code-Review+2\n\n(1 comment)","accounts_in_message":[],"_revision_number":4},{"id":"25c5b09f0e027786574b6b3fdc1f6fec4edf5456","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2026-06-10 18:15:12.000000000","message":"Patch Set 4:\n\n(1 comment)","accounts_in_message":[],"_revision_number":4},{"id":"dc5d77cf81e7749731efa3fb2d523c64e303744b","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2026-06-22 20:22:36.000000000","message":"Patch Set 4:\n\n(1 comment)","accounts_in_message":[],"_revision_number":4},{"id":"e3eaf94721ef6d64a59816d27cd4cd92c4d6be47","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-06-25 09:42:16.000000000","message":"Patch Set 4: Code-Review+2 Workflow+1\n\n(2 comments)","accounts_in_message":[],"_revision_number":4},{"id":"45c49b0c3179a5aee5e932857a850afda3281266","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-25 09:42:51.000000000","message":"Patch Set 4: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":4},{"id":"f0b711dd3446aee5804f7f7fc51f23047784c044","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-25 11:02:35.000000000","message":"Patch Set 4: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/35f4bbc797f54bbcb56b55bcd7aee8d9\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/2929464ab3c24b09af2121cfef9ce29c : SUCCESS in 11m 19s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/044da614bf774e61a63f0862434cd098 : SUCCESS in 10m 01s\n- grenade https://zuul.opendev.org/t/openstack/build/c3138f3d353f41f7af8bd26cd58c79d5 : SUCCESS in 1h 08m 30s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/7540b6c2f9434d92b86a5f8ae38b23ef : SUCCESS in 52m 15s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/753aead153a54639990595d7bd941a5e : SUCCESS in 45m 10s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/9c70a3af918345718ef0564ae0eaa5db : SUCCESS in 1h 04m 11s\n- swift-upload-image https://zuul.opendev.org/t/openstack/build/2d6e49290ffc4695824cd23a2e444ed9 : SUCCESS in 6m 57s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/eb7d9dfaa3dc4398b4025b13202608d1 : SUCCESS in 13m 06s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/e84f6ce6763e4862b32c452c79a4efe7 : SUCCESS in 19m 04s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/9c0a9aa7c8bf4269abf52ca75826cd89 : SUCCESS in 30m 26s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/d39c477429f74ddfabfa8a91f533aa07 : SUCCESS in 11m 20s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/66f82c5b24c94f8a93e1a8317e3f8a20 : SUCCESS in 17m 02s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/ab8bdbd371114ce9a4fe7fb125a53487 : SUCCESS in 17m 34s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/4690da13c43c4f239418b4a7f4b91597 : SUCCESS in 17m 01s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/8f925b74b7334b3ca2a3fbf88f5de47a : SUCCESS in 6m 56s\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/c935858ccf4a44f3bdc4cc606532ed37 : SUCCESS in 9m 35s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/86e945a9a34b463587ca798346e76fa1 : SUCCESS in 55m 20s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/5529cf57812b4f25837e783129874d47 : SUCCESS in 52m 18s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/bc6a88b5ed4c4014b545c0920dc9cc6c : SUCCESS in 53m 38s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/fb945b41fbea4aa3b392560e5fca9de3 : SUCCESS in 27m 43s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/694d75560e434962adecb7ab54f4df5f : SUCCESS in 4m 29s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/2fc6e7ad6d6b461497a4a09c877c2082 : SUCCESS in 20m 33s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/1def021f371046a3a51841f161058e25 : SUCCESS in 1h 00m 50s","accounts_in_message":[],"_revision_number":4},{"id":"7c4303087456d3edcfb289d0434443a1069435e3","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-25 11:02:35.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":4},{"id":"50923aeda423e893df001b945e46df8ddebe693d","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-25 11:04:03.000000000","message":"Patch Set 4:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/7e0e7411024c4e069621e3a2823232da\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/4adaa9e5ad6048508ccf66b8b9d4f298 : SUCCESS in 46s\n- swift-promote-image https://zuul.opendev.org/t/openstack/build/eb97894ef82a43c1bafdea1a523d0a33 : SUCCESS in 43s (non-voting)","accounts_in_message":[],"_revision_number":4}],"current_revision_number":4,"current_revision":"aa3d4b45a8b7648b1477df3c966829efe22386ea","revisions":{"9417327c440c2bb40588a9068c3bda6b120179c7":{"kind":"REWORK","_number":1,"created":"2026-01-20 22:13:01.000000000","uploader":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"ref":"refs/changes/15/974015/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/15/974015/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/15/974015/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/15/974015/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/15/974015/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/15/974015/1"}}},"commit":{"parents":[{"commit":"22fe124ebf7fa8d87f64352cf47064c5294f6623","subject":"Merge \"CI: clean up old swift-*-image-py3 jobs\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/22fe124ebf7fa8d87f64352cf47064c5294f6623"}]}],"author":{"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","date":"2026-01-20 22:12:42.000000000","tz":-360},"committer":{"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","date":"2026-01-20 22:12:54.000000000","tz":-360},"subject":"wip: s3api should ask client to close on RequestTimeout","message":"wip: s3api should ask client to close on RequestTimeout\n\nChange-Id: Ib4dfa0930e8a100fc25689d3e571a16c9ec481c6\nSigned-off-by: Clay Gerrard \u003cclay.gerrard@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/9417327c440c2bb40588a9068c3bda6b120179c7"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/9417327c440c2bb40588a9068c3bda6b120179c7"}]},"branch":"refs/heads/master"},"651e8f430d2b486799b2d577090e685beca69828":{"kind":"REWORK","_number":2,"created":"2026-03-13 19:32:32.000000000","uploader":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"ref":"refs/changes/15/974015/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/15/974015/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/15/974015/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/15/974015/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/15/974015/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/15/974015/2"}}},"commit":{"parents":[{"commit":"22fe124ebf7fa8d87f64352cf47064c5294f6623","subject":"Merge \"CI: clean up old swift-*-image-py3 jobs\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/22fe124ebf7fa8d87f64352cf47064c5294f6623"}]}],"author":{"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","date":"2026-01-20 22:12:42.000000000","tz":-360},"committer":{"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","date":"2026-03-13 19:30:05.000000000","tz":-300},"subject":"Ask client to close on RequestTimeout","message":"Ask client to close on RequestTimeout\n\nIt\u0027s possible on ChunkReadTimeout that the client has simply gotten\nconfused about the size of the body we\u0027re expecting and thinks it\u0027s\nalready waiting on a server reply; we handle this failure with a Timeout\n- we won\u0027t wait on the client to send the bytes we expect forever.\n\nHowever, if the client actually gets this reponse, they may realize they\ncan retry (e.g. boto does) and if they try to do so on the same http\nconnection framing will get all mixed up as the next request will be\ndiscarded as part of the original request body.\n\nSince we can\u0027t reliably ask our http server to close connections on\nRequestTimeout errors we\u0027ll ask the client to do it for us - it\u0027s got a\nbetter shot at working out than not!\n\nChange-Id: Ib4dfa0930e8a100fc25689d3e571a16c9ec481c6\nSigned-off-by: Clay Gerrard \u003cclay.gerrard@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/651e8f430d2b486799b2d577090e685beca69828"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/651e8f430d2b486799b2d577090e685beca69828"}]},"branch":"refs/heads/master"},"71c40bb08645c8316af276dc0069ec2d9480fe2d":{"kind":"REWORK","_number":3,"created":"2026-03-13 20:21:41.000000000","uploader":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"ref":"refs/changes/15/974015/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/15/974015/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/15/974015/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/15/974015/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/15/974015/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/15/974015/3"}}},"commit":{"parents":[{"commit":"22fe124ebf7fa8d87f64352cf47064c5294f6623","subject":"Merge \"CI: clean up old swift-*-image-py3 jobs\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/22fe124ebf7fa8d87f64352cf47064c5294f6623"}]}],"author":{"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","date":"2026-01-20 22:12:42.000000000","tz":-360},"committer":{"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","date":"2026-03-13 20:21:35.000000000","tz":-300},"subject":"Ask client to close on RequestTimeout","message":"Ask client to close on RequestTimeout\n\nIt\u0027s possible on ChunkReadTimeout that the client has simply gotten\nconfused about the size of the body we\u0027re expecting and thinks it\u0027s\nalready waiting on a server reply; we handle this failure with a Timeout\n- we won\u0027t wait on the client to send the bytes we expect forever.\n\nHowever, if the client actually gets this reponse, they may realize they\ncan retry (e.g. boto does) and if they try to do so on the same http\nconnection framing will get all mixed up as the next request will be\ndiscarded as part of the original request body.\n\nSince we can\u0027t reliably ask our http server to close connections on\nRequestTimeout errors we\u0027ll ask the client to do it for us - it\u0027s got a\nbetter shot at working out than not!\n\nChange-Id: Ib4dfa0930e8a100fc25689d3e571a16c9ec481c6\nSigned-off-by: Clay Gerrard \u003cclay.gerrard@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/71c40bb08645c8316af276dc0069ec2d9480fe2d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/71c40bb08645c8316af276dc0069ec2d9480fe2d"}]},"branch":"refs/heads/master"},"aa3d4b45a8b7648b1477df3c966829efe22386ea":{"kind":"REWORK","_number":4,"created":"2026-03-24 23:03:16.000000000","uploader":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"ref":"refs/changes/15/974015/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/15/974015/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/15/974015/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/15/974015/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/15/974015/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/15/974015/4"}}},"commit":{"parents":[{"commit":"22fe124ebf7fa8d87f64352cf47064c5294f6623","subject":"Merge \"CI: clean up old swift-*-image-py3 jobs\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/22fe124ebf7fa8d87f64352cf47064c5294f6623"}]}],"author":{"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","date":"2026-01-20 22:12:42.000000000","tz":-360},"committer":{"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","date":"2026-03-24 23:02:37.000000000","tz":-300},"subject":"s3api: Ask client to close on RequestTimeout","message":"s3api: Ask client to close on RequestTimeout\n\nWe send a real 400-series response down to the WSGI server if we hit a\nChunkReadTimeout while reading a client\u0027s wsgi input, while it\u0027s\ncertainly possible this is just because of a slow tcp connection and the\nclient may never see, it\u0027s also possible the client has some how gotten\nconfused about the size of the request body we\u0027re expecting (e.g.\nincomplete read from their underlying file system abstraction?) and\nthinks it\u0027s already waiting on the server for a reply.  Because we can\u0027t\nknow, we handle this failure regardless with a Timeout - we won\u0027t wait\non the client to send the bytes we expect forever.\n\nHowever, if the client actually gets this reponse, they may consider it\nretriable (e.g. boto3 has explicit support to retry when reciving an\ns3api 400 RequestTimeout) and if they try to do try to do another PUT so\non the same HTTP connection the WSGI server is going to do everything it\ncan to maintain HTTP framing as long as the tcp connection seems viable\nand will attempt to discard the subsequent request as part of the\nprevious request body after which framing gets all mixed all mixed up\nand we eventually return a 400 Bad Request.\n\nSince PEP-3333 says WSGI applications aren\u0027t really supposed to be\nresponsible for client connections and the associated headers we can\u0027t\nreliably ask our WSGI server to close connections on RequestTimeout\nerrors.  But eventlet at least seems to let us send `Connection: close`\nin some cases if we\u0027re explicit about it, so we\u0027ll ask the client nicely\nto not re-use the connection - it\u0027s got a better shot at working out\nthan not!\n\nChange-Id: Ib4dfa0930e8a100fc25689d3e571a16c9ec481c6\nSigned-off-by: Clay Gerrard \u003cclay.gerrard@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/aa3d4b45a8b7648b1477df3c966829efe22386ea"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/aa3d4b45a8b7648b1477df3c966829efe22386ea"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"CLOSED","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY","applied_by":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"}}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dMAX"],"failing_atoms":["label:Verified\u003dMIN"],"atom_explanations":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dMAX"],"failing_atoms":["label:Code-Review\u003dMIN"],"atom_explanations":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Workflow\u003dMAX"],"failing_atoms":["label:Workflow\u003dMIN"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
