)]}'
{"id":"openstack%2Fswift~998625","triplet_id":"openstack%2Fswift~master~I93e28a1e024300bacd421578fc988a7fb6594c80","project":"openstack/swift","branch":"master","topic":"p-unknown-resource-label","attention_set":{},"removed_from_attention_set":{"7847":{"account":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"last_update":"2026-07-31 17:40:21.000000000","reason":"Change was submitted"},"6968":{"account":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"last_update":"2026-07-31 15:06:05.000000000","reason":"\u003cGERRIT_ACCOUNT_6968\u003e replied on the change","reason_account":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"}},"1179":{"account":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"last_update":"2026-07-31 17:40:21.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"I93e28a1e024300bacd421578fc988a7fb6594c80","subject":"proxy_logging: use empty string for unknown resource label","status":"MERGED","created":"2026-07-24 14:24:07.000000000","updated":"2026-07-31 17:41:25.000000000","submitted":"2026-07-31 17:40:21.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":27,"unresolved_comment_count":7,"has_review_started":true,"submission_id":"998625-p-unknown-resource-label","meta_rev_id":"6f7e09383a1c32ff9d4a5265cb1ac99d2e71dae5","_number":998625,"virtual_id_number":998625,"owner":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},{"value":0,"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-07-31 17:40:21.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":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"all":[{"value":2,"date":"2026-07-31 15:06:05.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},{"value":0,"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"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":1,"date":"2026-07-31 15:06:05.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},{"value":0,"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"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":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"CC":[{"_account_id":36606,"name":"Yan Xiao","display_name":"Yan","email":"yanxiao@nvidia.com","username":"yanxiao"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-07-24 15:07:03.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":"CC"},{"updated":"2026-07-24 15:34:47.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-07-27 16:16:59.000000000","updated_by":{"_account_id":36606,"name":"Yan Xiao","display_name":"Yan","email":"yanxiao@nvidia.com","username":"yanxiao"},"reviewer":{"_account_id":36606,"name":"Yan Xiao","display_name":"Yan","email":"yanxiao@nvidia.com","username":"yanxiao"},"state":"CC"},{"updated":"2026-07-27 19:48:28.000000000","updated_by":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"reviewer":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"state":"REVIEWER"},{"updated":"2026-07-31 14:32:29.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":"611e73f8dfad62e2502a324c58dd3258cee4a35f","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-07-24 14:24:07.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"27f28da60a15f1fadd51ee773c79d1fa17223bda","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-07-24 14:26:10.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"c56688e890c12c489a013ba9f9da3c5cff1a25bf","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-24 15:07:03.000000000","message":"Patch Set 1:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/42e0c925b5634315a05674a3cfe24221\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/fef74fecaeaa4e2b83845f28a71f6469 : SUCCESS in 40m 36s","accounts_in_message":[],"_revision_number":1},{"id":"18eada7a3b0d2336f8cdfb798447da68561588e8","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-24 15:34:47.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/53a80cfd07ae4aca914f6bbfdc2140af\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/ff4e2211849342d7801b93509045fd97 : SUCCESS in 9m 55s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/8e37572588e44edfbab8cdafd82f59fb : SUCCESS in 9m 07s\n- grenade https://zuul.opendev.org/t/openstack/build/55494d45ef5649fe979c8f58d2456ce5 : SUCCESS in 1h 04m 38s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/25dce5153aa9485aa17895062b740d93 : SUCCESS in 1h 03m 12s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/06e0c285bbfb4087af308c5493a1f35e : SUCCESS in 53m 34s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/af7aa0d0381b482eba46693d79973284 : SUCCESS in 1h 02m 11s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/3d075d4aeb3a4fcdb8fe8ddf994bb981 : SUCCESS in 22m 22s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/a7a51a1ab17d4c049d78903576d6ce7a : SUCCESS in 22m 21s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/dc54ecf5e90044889360f584ed947f35 : SUCCESS in 21m 43s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/aeade2b35ac542f8bb36ba31e9695bd5 : SUCCESS in 6m 44s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/dfb79dfbac6d410cacab2922efa492c0 : SUCCESS in 22m 30s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/1e3a0c9bf58a4a25a41ff7d02aa503da : SUCCESS in 22m 42s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/36dfc8023c65414eb91ac6c2fc0aa904 : SUCCESS in 29m 12s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/72793cd525064acb9dc6aa4af823ba3e : SUCCESS in 16m 00s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/3f4f30e5bf094008b32cd8b76ab0f0a1 : SUCCESS in 16m 14s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/adc2aca599a04d0fb8243d9d232a9471 : SUCCESS in 14m 35s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/be099ca856184e049d40153cf23662f3 : SUCCESS in 15m 44s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/99247516103a440493220b45e6a5be04 : SUCCESS in 16m 39s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/41f3fe8222ca4bdd8634d388c46171df : SUCCESS in 6m 52s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/88f52c9fdf05458c90b2aab9ba9d1267 : FAILURE in 7m 41s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/d1a8838f5f8446638bf0e7c8a8dec31f : SUCCESS in 9m 20s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/6042df3acaf24af18f632d35c5d5dab1 : SUCCESS in 1h 03m 45s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/a2abe3892f41433cbdbef43b1f6930a5 : SUCCESS in 54m 01s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/1c598285f3e3401a9d9a6e32cccefabc : SUCCESS in 42m 40s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/1128feed4f6f41d7af011a9567ef631b : SUCCESS in 27m 12s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/ca41f7de36684756adce0044750d875d : SUCCESS in 4m 20s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/dc396c54813841dab65924a690337ca8 : SUCCESS in 18m 35s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/6c51bfbae45945f9a8cc7f50baef3aa1 : SUCCESS in 55m 53s\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":1},{"id":"16bb8a57dcb667bac4677c4cd74d232b5a65966b","author":{"_account_id":36606,"name":"Yan Xiao","display_name":"Yan","email":"yanxiao@nvidia.com","username":"yanxiao"},"date":"2026-07-27 16:16:59.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"aa06e99a34f6663a741a4e79cd1ddc1e65bc8763","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2026-07-27 19:48:28.000000000","message":"Patch Set 1: Code-Review+2\n\n(10 comments)","accounts_in_message":[],"_revision_number":1},{"id":"196489186156efe542351c7a8eb88b9c4ac1c680","author":{"_account_id":36606,"name":"Yan Xiao","display_name":"Yan","email":"yanxiao@nvidia.com","username":"yanxiao"},"date":"2026-07-27 21:25:50.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"2834b7a218ccfcf19f1c483009104fd2f481206d","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-07-28 12:19:32.000000000","message":"Patch Set 1:\n\n(8 comments)","accounts_in_message":[],"_revision_number":1},{"id":"7ddf47965a40c874cc823e2b09b973a58ebf4bdc","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-07-31 14:32:29.000000000","message":"Patch Set 1: Code-Review+1\n\n(3 comments)","accounts_in_message":[],"_revision_number":1},{"id":"fe244fbbe9ab88142943d5beb31495ed4ad82352","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-07-31 14:55:49.000000000","message":"Patch Set 1:\n\n(2 comments)","accounts_in_message":[],"_revision_number":1},{"id":"6e12b60952c9818aee54d3a3a75415b66570163b","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-07-31 14:59:19.000000000","message":"Patch Set 2: Commit message was updated.\n\nOutdated Votes:\n* Code-Review+1, Code-Review+2 (copy condition: \"changekind:TRIVIAL_REBASE OR is:MIN\")\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":2},{"id":"09f3867ecb4376af7a1025809e8d0e5e0ae529b7","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-07-31 15:02:22.000000000","message":"Patch Set 3: Published edit on patch set 2.","accounts_in_message":[],"_revision_number":3},{"id":"020ef76c24d572a6de9037c58b2a105f2518356a","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-07-31 15:03:47.000000000","message":"Patch Set 4: Commit message was updated.","accounts_in_message":[],"_revision_number":4},{"id":"0c19122eba978ac4bc3a77167ce4b8f493ac1861","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-07-31 15:06:05.000000000","message":"Patch Set 4: Code-Review+2 Workflow+1\n\n(1 comment)","accounts_in_message":[],"_revision_number":4},{"id":"6d4f316af5bc7fe31645f264d969fd6c3b891c5b","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-31 16:17:42.000000000","message":"Patch Set 4: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/3f12d908dacd401288503793e1e09645\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/16d0342138164f40aeb3f1d7bb79c4cc : SUCCESS in 10m 31s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/e0b2c65c9af84799bc2251a6b2627877 : SUCCESS in 8m 04s\n- grenade https://zuul.opendev.org/t/openstack/build/2da04e4efbfb41838fe31d0f96cedab8 : SUCCESS in 1h 02m 51s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/2fd48568ab3740779635eca7b468cc08 : SUCCESS in 1h 02m 11s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/5564160358d84e75a9861fe8c0bde65c : SUCCESS in 45m 48s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/6940f2646768466c9007a5aef92bed15 : SUCCESS in 1h 01m 28s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/394335371f7d4c6391b6c3ffa916bfd1 : SUCCESS in 18m 38s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/39c43836e0d7475898e317e9c2296ca1 : SUCCESS in 19m 45s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/c0cb67a7dd174d74a5032e7bbae7e0d1 : SUCCESS in 20m 32s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/85ff7c84f0ba4007acc88effb4063efb : SUCCESS in 8m 44s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/8c54aff7ff454fe8931ec23598e7e757 : SUCCESS in 24m 57s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/d27ffcc3db0e42febc91c9446fd7d9b9 : SUCCESS in 23m 28s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/1f9990334c6244979ff259f3ac439d53 : SUCCESS in 27m 23s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/e704514b2e3a496c9881909d63b749e2 : SUCCESS in 16m 41s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/4377f2795276492fa147a6b2ca7e8907 : SUCCESS in 12m 21s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/b693753d40f9464d8b7fd7fe82d0bf59 : SUCCESS in 15m 59s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/0e62819fc96843f586ef3c09d52f07ea : SUCCESS in 16m 15s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/46db5195545742fab0e8f9dc93f506b8 : SUCCESS in 17m 32s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/fe57385ae8b241edab1885c4d9ce6f8e : SUCCESS in 7m 03s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/b35ba16f8efa460d87e26a2374833572 : FAILURE in 7m 39s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/e9854d54dd7b4c5ba654b479a5799217 : SUCCESS in 11m 05s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/b5dec04d9dea4098b6d8bf664e22c793 : SUCCESS in 1h 05m 17s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/064aeed763c842a7b0cc61bbbfb6b8e1 : SUCCESS in 29m 29s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/9a1999dd726a4bf7aa770a86624d8acc : SUCCESS in 54m 29s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/657ca1ef013a42b9a1ffc676e41a3b44 : SUCCESS in 24m 36s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/31fbce8fde854f5aa07d588216313b6a : SUCCESS in 3m 12s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/d4f70e3f1d6747c4877d4c620b6c8a01 : SUCCESS in 15m 57s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/e7b15aba7e81415b9913e42ed19b4882 : SUCCESS in 51m 34s\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-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.\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":4},{"id":"9feeac0d19ecc280b21b4ea7e0a3a65e0931f603","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-31 16:18:28.000000000","message":"Patch Set 4: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":4},{"id":"31abb53b69327db5c9e74c67caf7b90b7f9ba860","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-31 16:24:34.000000000","message":"Patch Set 4:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/d96fc343db6648b283712c2fb4be2991\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/28db9dcd7d364e5189ee464b02f56248 : SUCCESS in 1h 12m 12s","accounts_in_message":[],"_revision_number":4},{"id":"cff0c831c2c6fe57626aabcceeb61aa1f0c31be2","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-31 17:40:21.000000000","message":"Patch Set 4: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/8c01ea7b413f49ea9a23e490081bf55d\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/be591faace0b4cb192d356b686cf90eb : SUCCESS in 10m 55s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/231a8bff51d74083a41b9f208cbfe990 : SUCCESS in 6m 23s\n- grenade https://zuul.opendev.org/t/openstack/build/47a732ddee3549d98a95ad37a09ec180 : SUCCESS in 1h 04m 51s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/7e9b6e8efaa9486cb324e98c65852110 : SUCCESS in 1h 06m 43s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/2ceead32ed0540f29147fb238fdf6b51 : SUCCESS in 42m 29s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/789c28cc89ed497fa9d4248aac17a3dd : SUCCESS in 30m 29s\n- swift-upload-image https://zuul.opendev.org/t/openstack/build/52f4f3a0312e4290b4b9eb570e7c1c77 : SUCCESS in 4m 43s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/191427c4a8804b3b9aa291217ba5860a : SUCCESS in 25m 03s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/4182e0be05ce4db5800c35d4ecbbe42a : SUCCESS in 22m 35s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/c333c2a2b7864f03be627777d9686740 : SUCCESS in 25m 42s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/e301857a74884b38af83b28def05b81c : SUCCESS in 10m 45s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/2a9f7b3a75904877b1ac0012d1a09d2a : SUCCESS in 8m 53s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/f60f406dce1047748d0e9d0116ca14f6 : SUCCESS in 14m 50s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/615c3b27388d48f99740c044065ffa47 : SUCCESS in 15m 14s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/447d0e4be8e34c4a99e10d7436b6dd13 : SUCCESS in 3m 29s\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/26308ac02bd84fa8b00c1f64cc19d692 : SUCCESS in 7m 36s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/9d517173b47b4fbab8826657f970bd22 : SUCCESS in 56m 00s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/35cafe5f90a1493cbac0c62a3336c5d4 : SUCCESS in 34m 59s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/4172677535864352a84570017424db39 : SUCCESS in 27m 42s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/e057a1aa0b9b4f9cace437114c52c7f1 : SUCCESS in 20m 09s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/977e6996a17a42ac97ca09b4809f4655 : SUCCESS in 5m 26s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/6e28a753b13a463b9aff2002c2ee108e : SUCCESS in 8m 56s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/9a77024fd2574c128f6dc945be67d87f : SUCCESS in 55m 08s","accounts_in_message":[],"_revision_number":4},{"id":"cf0024580f5a97f229c14447421affa79e8a6efc","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-31 17:40:21.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":4},{"id":"6f7e09383a1c32ff9d4a5265cb1ac99d2e71dae5","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-31 17:41:25.000000000","message":"Patch Set 4:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/f76447b0ea0543d0a2653fff771aaa3b\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/9b9ca9ee7c1f4bdca718ae8fdc68341c : SUCCESS in 51s\n- swift-promote-image https://zuul.opendev.org/t/openstack/build/1cb0d92352074e9bbfcd603b8c884acf : SUCCESS in 44s (non-voting)","accounts_in_message":[],"_revision_number":4}],"current_revision_number":4,"current_revision":"909458063fac77c14f3f19a3612d27d046429078","revisions":{"edbe8bdf86e83c02a4e238b238d119767ebe7ab8":{"kind":"REWORK","_number":1,"created":"2026-07-24 14:24:07.000000000","uploader":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"ref":"refs/changes/25/998625/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/25/998625/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/25/998625/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/25/998625/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/25/998625/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/25/998625/1"}}},"commit":{"parents":[{"commit":"b0f92bd978266f30c20cfc9b37c63f3df81a22a2","subject":"statsd: send None label values as an empty string","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b0f92bd978266f30c20cfc9b37c63f3df81a22a2"}]}],"author":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-07-24 13:49:45.000000000","tz":60},"committer":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-07-24 14:23:42.000000000","tz":60},"subject":"proxy_logging: use empty string for unknown resource label","message":"proxy_logging: use empty string for unknown resource label\n\nProxy_logging emits labeled statsd metrics that include a label key\n\u0027resource\u0027, which is typically \u0027account\u0027, \u0027container\u0027, \u0027object\u0027.\n\nWhen the resource type cannot be determined, the \u0027resource\u0027 label\nvalue would previously have had the value \u0027UNKNOWN\u0027. We\u0027d like all\n\u0027unknown\u0027 label values to be represented by the empty string when sent\nby the statsd client.\n\nThis patch therefore changes the default \u0027resource\u0027 value to the\nliteral None in the base_labels dict. Note that, since the\nRelated-Change, label dict values that are None will be represented by\nan empty string when sent by a LabeledStatsdClient.\n\n\u0027UNKNOWN\u0027 is still used to construct the *name* of legacy un-labeled\nmetrics when the resource type is not known.\n\nUpgradeImpact\nThe statsd \u0027resource\u0027 label value is changed from \u0027UNKNOWN\u0027 to the\nempty string when the resource type cannot be determined.\n\nDrive-by:\nFix test_update_swift_base_labels_s3_request: the alternate\nv4 auth header case was being overridden by v2 headers set in the\nhelper method.\n\nRelated-Change: I251836f1171888343e8556570dcb2e86e2543c06\nChange-Id: I93e28a1e024300bacd421578fc988a7fb6594c80\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/edbe8bdf86e83c02a4e238b238d119767ebe7ab8"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/edbe8bdf86e83c02a4e238b238d119767ebe7ab8"}]},"branch":"refs/heads/master"},"456d01ab4aee831db7cb8fb1f96aefc0fd6699e9":{"kind":"NO_CODE_CHANGE","_number":2,"created":"2026-07-31 14:59:19.000000000","uploader":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"ref":"refs/changes/25/998625/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/25/998625/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/25/998625/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/25/998625/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/25/998625/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/25/998625/2"}}},"commit":{"parents":[{"commit":"b0f92bd978266f30c20cfc9b37c63f3df81a22a2","subject":"statsd: send None label values as an empty string","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b0f92bd978266f30c20cfc9b37c63f3df81a22a2"}]}],"author":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-07-24 13:49:45.000000000","tz":60},"committer":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-07-31 14:59:19.000000000","tz":0},"subject":"proxy_logging: use empty string for unknown resource label","message":"proxy_logging: use empty string for unknown resource label\n\nProxy_logging emits labeled statsd metrics that include a label key\n\u0027resource\u0027, which is typically \u0027account\u0027, \u0027container\u0027, \u0027object\u0027.\n\nWhen the resource type cannot be determined, the \u0027resource\u0027 label\nvalue would previously have had the value \u0027UNKNOWN\u0027. We\u0027d like all\n\u0027unknown\u0027 label values to be represented by the empty string when sent\nby the statsd client.\n\nThis patch therefore changes the default \u0027resource\u0027 value to the\nliteral None in the base_labels dict. Note that, since the\nRelated-Change, label dict values that are None will be represented by\nan empty string when sent by a LabeledStatsdClient.\n\n\u0027UNKNOWN\u0027 is still used to construct the *name* of legacy un-labeled\nmetrics when the resource type is not known.\n\nNote: This patch only addresses uses of \u0027UNKNOWN\u0027 in proxy_logging middleware statsd labels. \u0027UNKNOWN\u0027 and \u0027unknown\u0027 are still used as label values in s3api middleware, which should be fixed by a follow-on patch.\n\nUpgradeImpact\nThe statsd \u0027resource\u0027 label value is changed from \u0027UNKNOWN\u0027 to the\nempty string when the resource type cannot be determined.\n\nDrive-by:\nFix test_update_swift_base_labels_s3_request: the alternate\nv4 auth header case was being overridden by v2 headers set in the\nhelper method.\n\nRelated-Change: I251836f1171888343e8556570dcb2e86e2543c06\nChange-Id: I93e28a1e024300bacd421578fc988a7fb6594c80\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/456d01ab4aee831db7cb8fb1f96aefc0fd6699e9"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/456d01ab4aee831db7cb8fb1f96aefc0fd6699e9"}]},"branch":"refs/heads/master","description":"Edit commit message"},"c71016b093c11a5042e6faccc858f51ceae76cfd":{"kind":"REWORK","_number":3,"created":"2026-07-31 15:02:22.000000000","uploader":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"ref":"refs/changes/25/998625/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/25/998625/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/25/998625/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/25/998625/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/25/998625/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/25/998625/3"}}},"commit":{"parents":[{"commit":"b0f92bd978266f30c20cfc9b37c63f3df81a22a2","subject":"statsd: send None label values as an empty string","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b0f92bd978266f30c20cfc9b37c63f3df81a22a2"}]}],"author":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-07-24 13:49:45.000000000","tz":60},"committer":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-07-31 15:02:22.000000000","tz":0},"subject":"proxy_logging: use empty string for unknown resource label","message":"proxy_logging: use empty string for unknown resource label\n\nProxy_logging emits labeled statsd metrics that include a label key\n\u0027resource\u0027, which is typically \u0027account\u0027, \u0027container\u0027, \u0027object\u0027.\n\nWhen the resource type cannot be determined, the \u0027resource\u0027 label\nvalue would previously have had the value \u0027UNKNOWN\u0027. We\u0027d like all\n\u0027unknown\u0027 label values to be represented by the empty string when sent\nby the statsd client.\n\nThis patch therefore changes the default \u0027resource\u0027 value to the\nliteral None in the base_labels dict. Note that, since the\nRelated-Change, label dict values that are None will be represented by\nan empty string when sent by a LabeledStatsdClient.\n\n\u0027UNKNOWN\u0027 is still used to construct the *name* of legacy un-labeled\nmetrics when the resource type is not known.\n\nNote: This patch only addresses uses of \u0027UNKNOWN\u0027 in proxy_logging middleware statsd labels. \u0027UNKNOWN\u0027 and \u0027unknown\u0027 are still used as label values in s3api middleware, which should be fixed by a follow-on patch.\n\nUpgradeImpact\nThe statsd \u0027resource\u0027 label value is changed from \u0027UNKNOWN\u0027 to the\nempty string when the resource type cannot be determined.\n\nDrive-by:\nFix test_update_swift_base_labels_s3_request: the alternate\nv4 auth header case was being overridden by v2 headers set in the\nhelper method.\n\nRelated-Change: I251836f1171888343e8556570dcb2e86e2543c06\nChange-Id: I93e28a1e024300bacd421578fc988a7fb6594c80\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/c71016b093c11a5042e6faccc858f51ceae76cfd"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c71016b093c11a5042e6faccc858f51ceae76cfd"}]},"branch":"refs/heads/master"},"909458063fac77c14f3f19a3612d27d046429078":{"kind":"NO_CODE_CHANGE","_number":4,"created":"2026-07-31 15:03:47.000000000","uploader":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"ref":"refs/changes/25/998625/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/25/998625/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/25/998625/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/25/998625/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/25/998625/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/25/998625/4"}}},"commit":{"parents":[{"commit":"b0f92bd978266f30c20cfc9b37c63f3df81a22a2","subject":"statsd: send None label values as an empty string","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b0f92bd978266f30c20cfc9b37c63f3df81a22a2"}]}],"author":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-07-24 13:49:45.000000000","tz":60},"committer":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-07-31 15:03:29.000000000","tz":0},"subject":"proxy_logging: use empty string for unknown resource label","message":"proxy_logging: use empty string for unknown resource label\n\nProxy_logging emits labeled statsd metrics that include a label key\n\u0027resource\u0027, which is typically \u0027account\u0027, \u0027container\u0027, \u0027object\u0027.\n\nWhen the resource type cannot be determined, the \u0027resource\u0027 label\nvalue would previously have had the value \u0027UNKNOWN\u0027. We\u0027d like all\n\u0027unknown\u0027 label values to be represented by the empty string when sent\nby the statsd client.\n\nThis patch therefore changes the default \u0027resource\u0027 value to the\nliteral None in the base_labels dict. Note that, since the\nRelated-Change, label dict values that are None will be represented by\nan empty string when sent by a LabeledStatsdClient.\n\n\u0027UNKNOWN\u0027 is still used to construct the *name* of legacy un-labeled\nmetrics when the resource type is not known.\n\nNote: This patch only addresses uses of \u0027UNKNOWN\u0027 in proxy_logging\nmiddleware statsd labels. \u0027UNKNOWN\u0027 and \u0027unknown\u0027 are still used as\nlabel values in s3api middleware, which should be fixed by a\nfollow-on patch.\n\nUpgradeImpact\nThe statsd \u0027resource\u0027 label value is changed from \u0027UNKNOWN\u0027 to the\nempty string when the resource type cannot be determined.\n\nDrive-by:\nFix test_update_swift_base_labels_s3_request: the alternate\nv4 auth header case was being overridden by v2 headers set in the\nhelper method.\n\nRelated-Change: I251836f1171888343e8556570dcb2e86e2543c06\nChange-Id: I93e28a1e024300bacd421578fc988a7fb6594c80\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/909458063fac77c14f3f19a3612d27d046429078"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/909458063fac77c14f3f19a3612d27d046429078"}]},"branch":"refs/heads/master","description":"Edit commit message"}},"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":""}}}]}
