)]}'
{"id":"openstack%2Fswift~874721","triplet_id":"openstack%2Fswift~master~I8728adb10a9a5484147a7ca8f3441ffda4bd409d","project":"openstack/swift","branch":"master","topic":"object_updater_with_memcache","attention_set":{"7233":{"account":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"last_update":"2023-02-22 06:28:50.000000000","reason":"A robot voted negatively on a label"}},"removed_from_attention_set":{},"hashtags":[],"change_id":"I8728adb10a9a5484147a7ca8f3441ffda4bd409d","subject":"updater: add memcache shard update lookup support","status":"NEW","created":"2023-02-22 05:20:57.000000000","updated":"2023-04-21 18:22:33.000000000","submit_type":"MERGE_IF_NECESSARY","mergeable":false,"submittable":false,"total_comment_count":2,"unresolved_comment_count":1,"has_review_started":true,"meta_rev_id":"9a646ab2920a4ec6b54f0d56098a06c26151b224","_number":874721,"virtual_id_number":874721,"owner":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"actions":{},"labels":{"Verified":{"all":[{"value":0,"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":{"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"all":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"CC":[{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"}],"REVIEWER":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2023-02-22 05:42:27.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":"2023-02-22 06:28:50.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2023-04-21 18:22:33.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":"CC"}],"messages":[{"id":"c61cdf6c4edf35f41017ed3a0a5c217957423fdb","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2023-02-22 05:20:57.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"ee93910627e19c55d3201e59c6629e2808f633c7","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-02-22 05:42:27.000000000","message":"Patch Set 1:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/cbd4393dc9ee444da3e7a837ae0c758c\n\n- swift-tox-py38-arm64 https://zuul.opendev.org/t/openstack/build/eda34916943d4616a8f29d0d208a6a6b : SUCCESS in 14m 42s\n- swift-tox-py39-arm64 https://zuul.opendev.org/t/openstack/build/51cf3d2aaf124eb0ae9156ec4dca367e : SUCCESS in 16m 05s\n- swift-tox-func-encryption-py38-arm64 https://zuul.opendev.org/t/openstack/build/137df8588ae64855a2699408c1a619a5 : SUCCESS in 17m 29s\n- swift-tox-func-py38-arm64 https://zuul.opendev.org/t/openstack/build/c1c163ad9056449a89ee4ccfe48b86e5 : SUCCESS in 20m 13s","accounts_in_message":[],"_revision_number":1},{"id":"25e74ec04b506be3870ef8ab8cab24776cb942d1","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-02-22 06:28:50.000000000","message":"Patch Set 1: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\n\nhttps://zuul.opendev.org/t/openstack/buildset/53c21cc34d5a46968ad76671f0c94c4f\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/11be8851b27545a1ba8cdc12d9f42dd0 : SUCCESS in 7m 41s\n- grenade https://zuul.opendev.org/t/openstack/build/9d70b460de8d44bf9f300c19bc3780bf : FAILURE in 32m 08s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/c701e6e51745481eab6b875ee9a066ec : SUCCESS in 39m 31s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/99dda4f238e4471997ca39b9ca3a8629 : SUCCESS in 53m 55s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/bceec8002ee84d60866edc5027c3bd3a : SUCCESS in 19m 01s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/95703493e2e84c6e83d76453c1d6a287 : SUCCESS in 21m 21s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/9ebcb7a417f84ecda1982a37820d4ec2 : SUCCESS in 19m 04s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/cbef4c16bee84b62aece8da6cb8c4944 : SUCCESS in 7m 39s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/55ea59d39811414894139d1a768566db : SUCCESS in 5m 12s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/bcb183235db0412cb237eb59db79df75 : SUCCESS in 17m 41s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/582604b77f824c3d9fed925b8aa17188 : SUCCESS in 16m 34s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/d52a67ddd6d4489cae1b713d1b7a0fe1 : SUCCESS in 14m 03s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/aefbdd8fe2b84568802e9bf3f13c9b6f : SUCCESS in 13m 58s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/4277c4c3faf44dcb9b49f17047a3d629 : SUCCESS in 16m 45s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/73dfa4fe8fca4940b607d1c9e145f4cb : SUCCESS in 22m 57s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/4429856a949647f9925d01ce20906116 : SUCCESS in 20m 45s\n- swift-tox-func-py38 https://zuul.opendev.org/t/openstack/build/0271bb0628df49768dca350938103b79 : SUCCESS in 20m 22s\n- swift-tox-func-encryption-py38 https://zuul.opendev.org/t/openstack/build/6c31c580aa7b43c09e96a386a6bb991b : SUCCESS in 15m 00s\n- swift-tox-func-ec-py38 https://zuul.opendev.org/t/openstack/build/1e30a413675a4aa5ab67bef7c22ccb28 : SUCCESS in 17m 22s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/e3b00debce3f4845817e9c0a561d53a9 : SUCCESS in 8m 06s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/6a734cfea8c14c79a212c0da19bc1ae7 : SUCCESS in 16m 56s (non-voting)\n- swift-tox-func-s3api-tests-tempauth https://zuul.opendev.org/t/openstack/build/1d541b5be7444c3e9d1b2e783a0105eb : SUCCESS in 7m 11s\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/36d6c28307e54289b025a75218ca1a62 : SUCCESS in 55m 23s\n- swift-probetests-centos-8-stream https://zuul.opendev.org/t/openstack/build/7b882e930ad14cb1b6f83086a2c083ba : SUCCESS in 58m 31s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/44c68bb20fa947869e488809f4e7ff0f : SUCCESS in 46m 17s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/f2123267d29c4bf3a773ed0647a76da7 : SUCCESS in 51m 51s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/116b9a1a4b9e4af8af171b27dd9dd6ad : SUCCESS in 16m 17s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/ff3773d470914146b627cc99459bd346 : SUCCESS in 6m 14s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/f4f01625a88d46f18de423acd83dea21 : SUCCESS in 19m 18s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/83b2129e3a924a4cae2c48bf87859e50 : SUCCESS in 1h 00m 09s","accounts_in_message":[],"_revision_number":1},{"id":"6c2847e78a7d0c60de214d260aff1064b83d5a4a","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2023-03-01 03:50:58.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"b245aaa06f97701b0045fb4a49213a5ecc22fb6c","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-03-01 04:15:37.000000000","message":"Patch Set 2:\n\nBuild failed (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/a62f996eba484a5b986af91a104f1def\n\n- swift-tox-py38-arm64 https://zuul.opendev.org/t/openstack/build/f9dd0af5063440468f3bcad7c7ddcef3 : FAILURE in 14m 49s\n- swift-tox-py39-arm64 https://zuul.opendev.org/t/openstack/build/0ee797f2dfcb4f41b30b868fd5749a34 : FAILURE in 14m 12s\n- swift-tox-func-encryption-py38-arm64 https://zuul.opendev.org/t/openstack/build/15761f5e792542fdb64994b42c9e77a1 : SUCCESS in 23m 21s\n- swift-tox-func-py38-arm64 https://zuul.opendev.org/t/openstack/build/104ab3f54c6e4fe89265aa2fdbf4c35c : SUCCESS in 17m 27s","accounts_in_message":[],"_revision_number":2},{"id":"6ef5080f6c897f73ed18caa33aaf51112583375c","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-03-01 05:22:20.000000000","message":"Patch Set 2: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\n\nhttps://zuul.opendev.org/t/openstack/buildset/9f8177a7f7c34858aa7b42b1ba7da7e2\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/4f3694a2fab94910b6ee587a814dc76a : SUCCESS in 9m 32s\n- grenade https://zuul.opendev.org/t/openstack/build/ba88749b24cf434bb8b8bf7f5bfca207 : SUCCESS in 50m 29s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/16f11c7ef0974faa8173cb8713bf6d37 : SUCCESS in 37m 28s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/329fb90e8a314221b1f4e48dcad5295f : SUCCESS in 55m 26s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/25a2e9cff96f45879086042f7a2cb30b : SUCCESS in 19m 13s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/b456c1e4d10e4fba95a07fdc24477a0e : SUCCESS in 19m 01s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/b6bd7fc3be1a4539b66c0d9ace8369f6 : SUCCESS in 18m 42s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/9b353dd438c44f53b71e24de2ccefa7f : SUCCESS in 9m 55s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/f09a130efb7a42ffa2b99373a4d102a5 : SUCCESS in 6m 26s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/fa9c5f7b39f3466ab15d13ad9544efcc : FAILURE in 16m 10s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/43f043968048452d82401996f07e20b8 : FAILURE in 19m 37s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/7de61bac8148404299664f31f18cedd7 : FAILURE in 14m 58s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/ae03c05931aa4a569d7b1467cb78611f : FAILURE in 14m 46s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/cd67062c52174d7a819440282f0df73c : SUCCESS in 16m 04s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/9c941f35de344adfad611a41af725b02 : SUCCESS in 18m 00s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/7f875c59e78745e1bc45b2110370f31e : SUCCESS in 18m 40s\n- swift-tox-func-py38 https://zuul.opendev.org/t/openstack/build/992f5be6b7584804b4fd657ce6e46504 : SUCCESS in 13m 59s\n- swift-tox-func-encryption-py38 https://zuul.opendev.org/t/openstack/build/4120fb5c03c743389841d24ba94b6c3e : SUCCESS in 17m 23s\n- swift-tox-func-ec-py38 https://zuul.opendev.org/t/openstack/build/dde6e08ff1c84148b5d7a456c2c67771 : SUCCESS in 15m 11s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/661d891b1db447f7af42ea9375c3c802 : SUCCESS in 6m 08s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/bb25f65d7f5f44048488ed41fb93f1ea : SUCCESS in 16m 58s (non-voting)\n- swift-tox-func-s3api-tests-tempauth https://zuul.opendev.org/t/openstack/build/91a4f628a5a04db5bda4f32134b7a788 : SUCCESS in 6m 36s\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/41e71eefd49c4069a83c2a159e19173e : SUCCESS in 58m 13s\n- swift-probetests-centos-8-stream https://zuul.opendev.org/t/openstack/build/dabc27c5954c4a8595d897643e0c47b1 : SUCCESS in 57m 47s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/f379041fa0a84c6c9f7586a82191f1ef : SUCCESS in 1h 03m 41s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/eefeaf54ae5441f8abfa2b99d467e49c : SUCCESS in 47m 14s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/8a80d9ee552d4187ac8344ed37855b02 : FAILURE in 15m 34s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/44bfccca7d664eff888fe372a75ac6c2 : SUCCESS in 4m 49s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/8b69e1d715f94952863d3cf36331e490 : SUCCESS in 19m 33s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/46d53cd4834b4f9fab80665f83460fb4 : SUCCESS in 1h 01m 03s","accounts_in_message":[],"_revision_number":2},{"id":"0b094446c8d2bdb9b22f533409c95e78bcd4d7a9","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2023-03-01 05:32:37.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"ef2e018f6ceb20d8f3257699527e2f24d0bf157d","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-03-01 06:44:48.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/b206f21b2bf84fd2aa9f1e42be54f265\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/66bbcdf7bebf4214a2e27fcea035b14e : SUCCESS in 7m 28s\n- grenade https://zuul.opendev.org/t/openstack/build/e76dc03ee9ec405c85ffd98fe9335033 : SUCCESS in 1h 04m 19s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/cd45b55b117641cea9702b68172ef752 : SUCCESS in 30m 18s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/79e40131d8bf4fd59e2217a037453daf : SUCCESS in 1h 00m 08s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/ed4137093a9449a1b3e123cf82b5f34e : SUCCESS in 18m 59s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/d09f88cf5b8a4ec6ad8615e39cfa5849 : SUCCESS in 16m 21s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/820de283e88a4212b87355f173d0267d : SUCCESS in 23m 00s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/05e26d6d07df42de8c2029705b47bff5 : SUCCESS in 8m 26s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/7c569e9835d5405ab48d3468b24d8abd : SUCCESS in 6m 13s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/537ae4d07a2749e68f8f28ee42f42f1f : SUCCESS in 15m 40s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/7ecf02e4d72d4048ae257f1364ec45ee : SUCCESS in 18m 31s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/1fdcc092f12c4eada10346994bc141cc : SUCCESS in 11m 37s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/1894865612504797b3ef6755bda42e85 : SUCCESS in 15m 22s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/c2af36244cd74e9d863493856509f524 : SUCCESS in 18m 02s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/7fe22ff3dce94939847ff200923ade10 : SUCCESS in 16m 11s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/60ec0ced40ae4c178a114f13d719306b : SUCCESS in 15m 58s\n- swift-tox-func-py38 https://zuul.opendev.org/t/openstack/build/a6e547d093f44f6594e8ac9b946913e5 : SUCCESS in 13m 03s\n- swift-tox-func-encryption-py38 https://zuul.opendev.org/t/openstack/build/39e67c6987674fcc9cd52dc48c4171e6 : SUCCESS in 13m 04s\n- swift-tox-func-ec-py38 https://zuul.opendev.org/t/openstack/build/eae49c9c30e541838ecc06a1bb6b87c2 : SUCCESS in 16m 10s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/bb81d0a6357b4b3f99376a7f280e3870 : SUCCESS in 12m 47s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/9e9adfa45d6046f5a89edc1e4f4bb62b : SUCCESS in 17m 16s (non-voting)\n- swift-tox-func-s3api-tests-tempauth https://zuul.opendev.org/t/openstack/build/1970eab53b194beea636a0b1d242510f : SUCCESS in 9m 42s\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/776004599eb844edbac826a71b26f164 : SUCCESS in 56m 18s\n- swift-probetests-centos-8-stream https://zuul.opendev.org/t/openstack/build/9064441ffce3424d8db35bc7c22f9119 : SUCCESS in 1h 03m 08s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/932cf506b2fd49fb86795162f74bb259 : SUCCESS in 36m 54s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/e360d12bad784bcaa52635ce0865ee54 : SUCCESS in 57m 55s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/091eee58ade248f1b039e6edd7e40fb1 : SUCCESS in 17m 02s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/194b7839c43946d7b8a135038228c816 : SUCCESS in 5m 03s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/a3ed71f5236d4aa8acf81cf130fa1b05 : SUCCESS in 19m 39s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/4c2ed73af73740eb973a012e8af3b27a : SUCCESS in 35m 02s","accounts_in_message":[],"_revision_number":3},{"id":"b6bd31007b963768d32fe95bd00f9758f08d2a26","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-03-01 07:01:26.000000000","message":"Patch Set 3:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/191633a2b7e644c5a37a4d80f7c5ba89\n\n- swift-tox-py38-arm64 https://zuul.opendev.org/t/openstack/build/98f2b03aef2d4346aef80fd49a6088c3 : SUCCESS in 1h 07m 48s\n- swift-tox-py39-arm64 https://zuul.opendev.org/t/openstack/build/0e11bbbddc434aed8a12d1af4caf2ffb : SUCCESS in 1h 21m 39s\n- swift-tox-func-encryption-py38-arm64 https://zuul.opendev.org/t/openstack/build/d2827034228a4976ac840c9ddc116b7c : SUCCESS in 1h 26m 45s\n- swift-tox-func-py38-arm64 https://zuul.opendev.org/t/openstack/build/1cbcd6e7992c468c8360b9b3e755cb29 : SUCCESS in 1h 07m 01s","accounts_in_message":[],"_revision_number":3},{"id":"d9af45df5dea4cb33c3aa7444e66c749b11c5d22","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2023-03-06 08:45:00.000000000","message":"Uploaded patch set 4.","accounts_in_message":[],"_revision_number":4},{"id":"1c8f34fc323ea079b4e95c60757c60c0a0fdf811","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-03-06 09:09:20.000000000","message":"Patch Set 4:\n\nBuild failed (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/b690ed0058d6492eb7bd4739fa2362ac\n\n- swift-tox-py38-arm64 https://zuul.opendev.org/t/openstack/build/f91e4a50457e473ea0c6aa88440cc0f4 : FAILURE in 16m 48s\n- swift-tox-py39-arm64 https://zuul.opendev.org/t/openstack/build/1c619d2e0bf74f219bdf5880a2696498 : FAILURE in 15m 53s\n- swift-tox-func-encryption-py38-arm64 https://zuul.opendev.org/t/openstack/build/4787bee6f7264422973db8e833411fd2 : SUCCESS in 22m 25s\n- swift-tox-func-py38-arm64 https://zuul.opendev.org/t/openstack/build/37fae9528f294567bd51324d79170ce0 : SUCCESS in 19m 36s","accounts_in_message":[],"_revision_number":4},{"id":"9b5997f835ebb2e31c0d4d5963af37f352c554ff","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-03-06 10:00:26.000000000","message":"Patch Set 4: Verified-1\n\n(3 comments)\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\n\nhttps://zuul.opendev.org/t/openstack/buildset/33015b09c95b4c9b853d825c7a35cfb6\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/fb932527fa0243a693f8f703e16fcb18 : SUCCESS in 8m 35s\n- grenade https://zuul.opendev.org/t/openstack/build/89f9b6499cd742458d8a5a39d4c251c8 : SUCCESS in 1h 09m 31s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/d79bfbd65210401381280192997d4145 : SUCCESS in 53m 44s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/3d7c0f09e7ad487c937d077b1406369c : SUCCESS in 1h 01m 15s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/f55ade71bf16410f9c593f2614f1101a : SUCCESS in 14m 22s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/e8d939c997974572a67ced884662ce87 : SUCCESS in 19m 05s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/90eebebaf0a84ea2af8c3b83f43c7b76 : SUCCESS in 18m 36s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/0559397e4699423c9d8193345f645a9b : SUCCESS in 8m 33s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/807f5bb166054b51a38ab9f4774f6ff8 : SUCCESS in 4m 38s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/7b103d0980394e89a6bdd6c6292edb37 : FAILURE in 17m 18s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/67787377f7fb48b9b58c6d42eb1987cb : FAILURE in 16m 17s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/ba0fcba8b28c4ee0815679631d14f0f1 : FAILURE in 15m 22s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/5f0261ccc988425990e0556e91728fbe : FAILURE in 11m 30s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/828abe87ead84226b0f9196fc94a18cb : SUCCESS in 18m 49s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/6469c673f34c47c2805eb68287655f66 : SUCCESS in 16m 14s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/e08a05cb4cf94ce3aabfb2f20940becc : SUCCESS in 18m 07s\n- swift-tox-func-py38 https://zuul.opendev.org/t/openstack/build/615e4b3b5659446db51118e16483652c : SUCCESS in 15m 41s\n- swift-tox-func-encryption-py38 https://zuul.opendev.org/t/openstack/build/a8bbd876705d4deab8970faf0f6bb22f : SUCCESS in 14m 28s\n- swift-tox-func-ec-py38 https://zuul.opendev.org/t/openstack/build/c34ee86950a3455aab1fc462819d0c54 : SUCCESS in 14m 22s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/c760df1f958d40659744c3970f0e29e0 : SUCCESS in 7m 49s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/681e57b8312a4e53b7270d65c010b51d : SUCCESS in 13m 27s (non-voting)\n- swift-tox-func-s3api-tests-tempauth https://zuul.opendev.org/t/openstack/build/9764771b1b84487988e29f42be3d4717 : SUCCESS in 7m 18s\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/4c18a9ccf5244cc5b4336ce2b0814057 : SUCCESS in 57m 47s\n- swift-probetests-centos-8-stream https://zuul.opendev.org/t/openstack/build/48b58243f6044d02a7ee63e5cda0aeff : SUCCESS in 57m 41s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/9ad1baeda446470ea33b81ff9d2619fd : SUCCESS in 48m 00s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/385fcf471faa4e86bf1669e100ed1227 : SUCCESS in 1h 01m 36s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/5cf4acc2a5ec4d4ba96292de1f28490c : TIMED_OUT in 40m 53s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/5ec069b4929648c687ad8e847afc8b1d : FAILURE in 4m 32s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/901b6488f51d424990a1ae4c53c4fcad : SUCCESS in 21m 55s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/35eb612840bf415883eabce9d87bec62 : SUCCESS in 57m 00s","accounts_in_message":[],"_revision_number":4},{"id":"925d4d93f061697ac07b8040d220a6d7176496ee","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2023-03-08 01:35:10.000000000","message":"Uploaded patch set 5.","accounts_in_message":[],"_revision_number":5},{"id":"9a646ab2920a4ec6b54f0d56098a06c26151b224","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2023-04-21 18:22:33.000000000","message":"Patch Set 5:\n\n(2 comments)","accounts_in_message":[],"_revision_number":5}],"current_revision_number":5,"current_revision":"6862a5a9389c16a6f4b0c1ab4b24ba780be7dac7","revisions":{"d7bf7cf8d043b61ca50f21aab2bdc11c26c18454":{"kind":"REWORK","_number":1,"created":"2023-02-22 05:20:57.000000000","uploader":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"ref":"refs/changes/21/874721/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/21/874721/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/21/874721/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/21/874721/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/21/874721/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/21/874721/1"}}},"commit":{"parents":[{"commit":"2edd3e65dadcdc4e39d127ac9f6495473512cb29","subject":"docs: Add memcache.conf config doc","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/2edd3e65dadcdc4e39d127ac9f6495473512cb29"}]}],"author":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2023-02-22 03:31:06.000000000","tz":660},"committer":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2023-02-22 05:18:47.000000000","tz":660},"subject":"updater: add memcache shard update lookup support","message":"updater: add memcache shard update lookup support\n\nWhen a root container gets under high load, the proxy can fail to get\nthe list of update shards and thereby writes the root account and\ncontainer as the destination for a container-update. However, this just\nmagnifies the load on the container, as once the obj is written the\nobject server will then go and attempt to update the container, which\nwill also fail, writing down the root container as the destination in\nthe written async pending.\nThe object-updater then picks it up and keeps trying to hit the root. We\nbasically start ddosing ourselves.\n\nThis patch plumbs in the swift memcache client into the object-updater.\nAnd when enabled in config:\n\n  use_memcache \u003d True\n\nThe updater, when the target is a root container will first attempt to\nlook up the updating shards for the container in memcache. If found we\ncan bypass talking to the root container completely.\nIf the memcache list is outdated, at least we\u0027re talking to a shard and\nit can give us a 301 redirect to the correct shard.\n\nThis assumes under heavy load to a particular container that a request\nfinally manages to update the updating shardranges in memcache, but\nif that fails allows SRE to manually insert the update shard ranges into\nthe cache an eliviate much of the issues.\n\nTo accomplish this `get_cache_key` has been moved from\nproxy/controller/base.py and into common/utils.py.\n\nChange-Id: I8728adb10a9a5484147a7ca8f3441ffda4bd409d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/d7bf7cf8d043b61ca50f21aab2bdc11c26c18454"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/d7bf7cf8d043b61ca50f21aab2bdc11c26c18454"}]},"branch":"refs/heads/master"},"9f34790f4c6d55c9ae8d57819af94d86639c5178":{"kind":"REWORK","_number":2,"created":"2023-03-01 03:50:58.000000000","uploader":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"ref":"refs/changes/21/874721/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/21/874721/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/21/874721/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/21/874721/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/21/874721/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/21/874721/2"}}},"commit":{"parents":[{"commit":"45bd6794b4bf72a057a6bd3353cef0876533c1ca","subject":"Proxy: restructure cached updating shard ranges","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/45bd6794b4bf72a057a6bd3353cef0876533c1ca"}]}],"author":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2023-02-22 03:31:06.000000000","tz":660},"committer":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2023-03-01 03:49:53.000000000","tz":660},"subject":"updater: add memcache shard update lookup support","message":"updater: add memcache shard update lookup support\n\nWhen a root container gets under high load, the proxy can fail to get\nthe list of update shards and thereby writes the root account and\ncontainer as the destination for a container-update. However, this just\nmagnifies the load on the container, as once the obj is written the\nobject server will then go and attempt to update the container, which\nwill also fail, writing down the root container as the destination in\nthe written async pending.\nThe object-updater then picks it up and keeps trying to hit the root. We\nbasically start ddosing ourselves.\n\nThis patch plumbs in the swift memcache client into the object-updater.\nAnd when enabled in config:\n\n  use_memcache \u003d True\n\nThe updater, when the target is a root container will first attempt to\nlook up the updating shards for the container in memcache. If found we\ncan bypass talking to the root container completely.\nIf the memcache list is outdated, at least we\u0027re talking to a shard and\nit can give us a 301 redirect to the correct shard.\n\nThis assumes under heavy load to a particular container that a request\nfinally manages to update the updating shardranges in memcache, but\nif that fails allows SRE to manually insert the update shard ranges into\nthe cache an eliviate much of the issues.\n\nTo accomplish this `get_cache_key` has been moved from\nproxy/controller/base.py and into common/utils.py.\n\nChange-Id: I8728adb10a9a5484147a7ca8f3441ffda4bd409d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/9f34790f4c6d55c9ae8d57819af94d86639c5178"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/9f34790f4c6d55c9ae8d57819af94d86639c5178"}]},"branch":"refs/heads/master"},"6ede2f3e364aadd9d2a7cea27112687872b0c01d":{"kind":"REWORK","_number":3,"created":"2023-03-01 05:32:37.000000000","uploader":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"ref":"refs/changes/21/874721/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/21/874721/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/21/874721/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/21/874721/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/21/874721/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/21/874721/3"}}},"commit":{"parents":[{"commit":"45bd6794b4bf72a057a6bd3353cef0876533c1ca","subject":"Proxy: restructure cached updating shard ranges","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/45bd6794b4bf72a057a6bd3353cef0876533c1ca"}]}],"author":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2023-02-22 03:31:06.000000000","tz":660},"committer":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2023-03-01 05:30:12.000000000","tz":660},"subject":"updater: add memcache shard update lookup support","message":"updater: add memcache shard update lookup support\n\nWhen a root container gets under high load, the proxy can fail to get\nthe list of update shards and thereby writes the root account and\ncontainer as the destination for a container-update. However, this just\nmagnifies the load on the container, as once the obj is written the\nobject server will then go and attempt to update the container, which\nwill also fail, writing down the root container as the destination in\nthe written async pending.\nThe object-updater then picks it up and keeps trying to hit the root. We\nbasically start ddosing ourselves.\n\nThis patch plumbs in the swift memcache client into the object-updater.\nAnd when enabled in config:\n\n  use_memcache \u003d True\n\nThe updater, when the target is a root container will first attempt to\nlook up the updating shards for the container in memcache. If found we\ncan bypass talking to the root container completely.\nIf the memcache list is outdated, at least we\u0027re talking to a shard and\nit can give us a 301 redirect to the correct shard.\n\nThis assumes under heavy load to a particular container that a request\nfinally manages to update the updating shardranges in memcache, but\nif that fails allows SRE to manually insert the update shard ranges into\nthe cache an eliviate much of the issues.\n\nTo accomplish this `get_cache_key` has been moved from\nproxy/controller/base.py and into common/utils.py.\n\nChange-Id: I8728adb10a9a5484147a7ca8f3441ffda4bd409d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/6ede2f3e364aadd9d2a7cea27112687872b0c01d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/6ede2f3e364aadd9d2a7cea27112687872b0c01d"}]},"branch":"refs/heads/master"},"cdc66d846c53f8eb1bc24424831af74f2f84cef3":{"kind":"REWORK","_number":4,"created":"2023-03-06 08:45:00.000000000","uploader":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"ref":"refs/changes/21/874721/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/21/874721/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/21/874721/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/21/874721/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/21/874721/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/21/874721/4"}}},"commit":{"parents":[{"commit":"45bd6794b4bf72a057a6bd3353cef0876533c1ca","subject":"Proxy: restructure cached updating shard ranges","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/45bd6794b4bf72a057a6bd3353cef0876533c1ca"}]}],"author":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2023-02-22 03:31:06.000000000","tz":660},"committer":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2023-03-06 08:41:10.000000000","tz":660},"subject":"updater: add memcache shard update lookup support","message":"updater: add memcache shard update lookup support\n\nWhen a root container gets under high load, the proxy can fail to get\nthe list of update shards and thereby writes the root account and\ncontainer as the destination for a container-update. However, this just\nmagnifies the load on the container, as once the obj is written the\nobject server will then go and attempt to update the container, which\nwill also fail, writing down the root container as the destination in\nthe written async pending.\nThe object-updater then picks it up and keeps trying to hit the root. We\nbasically start ddosing ourselves.\n\nThis patch plumbs in the swift memcache client into the object-updater.\nAnd when enabled in config:\n\n  use_memcache \u003d True\n\nThe updater, when the target is a root container will first attempt to\nlook up the updating shards for the container in memcache. If found we\ncan bypass talking to the root container completely.\nIf the memcache list is outdated, at least we\u0027re talking to a shard and\nit can give us a 301 redirect to the correct shard.\n\nThis assumes under heavy load to a particular container that a request\nfinally manages to update the updating shardranges in memcache, but\nif that fails allows SRE to manually insert the update shard ranges into\nthe cache an eliviate much of the issues.\n\nTo accomplish this `get_cache_key` has been moved from\nproxy/controller/base.py and into common/utils.py.\n\nFurther, db_state is now passed to the container-update and serialized\ninto async_pendings. This allows us behave differently if it\u0027s a sharded\nor unsharded container.\n\nChange-Id: I8728adb10a9a5484147a7ca8f3441ffda4bd409d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/cdc66d846c53f8eb1bc24424831af74f2f84cef3"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/cdc66d846c53f8eb1bc24424831af74f2f84cef3"}]},"branch":"refs/heads/master"},"6862a5a9389c16a6f4b0c1ab4b24ba780be7dac7":{"kind":"TRIVIAL_REBASE_WITH_MESSAGE_UPDATE","_number":5,"created":"2023-03-08 01:35:10.000000000","uploader":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"ref":"refs/changes/21/874721/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/21/874721/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/21/874721/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/21/874721/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/21/874721/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/21/874721/5"}}},"commit":{"parents":[{"commit":"0c5f4d3ea5e5293ecb418efbcb053aaecdc1a86c","subject":"Pass db_state to container-update and async_pending","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/0c5f4d3ea5e5293ecb418efbcb053aaecdc1a86c"}]}],"author":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2023-03-08 01:33:25.000000000","tz":660},"committer":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2023-03-08 01:33:25.000000000","tz":660},"subject":"updater: add memcache shard update lookup support","message":"updater: add memcache shard update lookup support\n\nWhen a root container gets under high load, the proxy can fail to get\nthe list of update shards and thereby writes the root account and\ncontainer as the destination for a container-update. However, this just\nmagnifies the load on the container, as once the obj is written the\nobject server will then go and attempt to update the container, which\nwill also fail, writing down the root container as the destination in\nthe written async pending.\nThe object-updater then picks it up and keeps trying to hit the root. We\nbasically start ddosing ourselves.\n\nThis patch plumbs in the swift memcache client into the object-updater.\nAnd when enabled in config:\n\n  use_memcache \u003d True\n\nThe updater, when the target is a root container will first attempt to\nlook up the updating shards for the container in memcache. If found we\ncan bypass talking to the root container completely.\nIf the memcache list is outdated, at least we\u0027re talking to a shard and\nit can give us a 301 redirect to the correct shard.\n\nThis assumes under heavy load to a particular container that a request\nfinally manages to update the updating shardranges in memcache, but\nif that fails allows SRE to manually insert the update shard ranges into\nthe cache an eliviate much of the issues.\n\nChange-Id: I8728adb10a9a5484147a7ca8f3441ffda4bd409d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/6862a5a9389c16a6f4b0c1ab4b24ba780be7dac7"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/6862a5a9389c16a6f4b0c1ab4b24ba780be7dac7"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"OK","labels":[{"label":"Verified","status":"MAY"},{"label":"Code-Review","status":"MAY"},{"label":"Workflow","status":"MAY"}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Verified\u003dMAX","label:Verified\u003dMIN"],"atom_explanations":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Code-Review\u003dMAX","label:Code-Review\u003dMIN"],"atom_explanations":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Workflow\u003dMAX","label:Workflow\u003dMIN"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
