)]}'
{"id":"openstack%2Fswift~821532","triplet_id":"openstack%2Fswift~master~Ic64e20e634936ce03dd17ace5c119a0a671a363a","project":"openstack/swift","branch":"master","topic":"bucket-ratelimiter","attention_set":{},"removed_from_attention_set":{"7233":{"account":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"last_update":"2021-12-14 22:48:28.000000000","reason":"Matthew Oliver replied on the change"},"15343":{"account":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"last_update":"2021-12-15 22:28:42.000000000","reason":"Change was abandoned"}},"hashtags":[],"change_id":"Ic64e20e634936ce03dd17ace5c119a0a671a363a","subject":"Updater: Allow derrfered updates to sleep","status":"ABANDONED","created":"2021-12-13 06:35:28.000000000","updated":"2021-12-15 22:28:42.000000000","total_comment_count":2,"unresolved_comment_count":1,"has_review_started":true,"meta_rev_id":"f0288085d188e7dfd3a4b6a4ff9d0e6905412d12","_number":821532,"virtual_id_number":821532,"owner":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"actions":{},"labels":{"Verified":{"disliked":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:check","value":-1,"date":"2021-12-13 07:27:20.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","value":-1,"default_value":0,"optional":true},"Code-Review":{"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":{"REVIEWER":[{"_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":"2021-12-13 07:27: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":"2021-12-13 23:40:26.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"}],"messages":[{"id":"2624f9692fbe6c479a73478db6b7e1df6b900020","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2021-12-13 06:35:28.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"9f970a3338dce11b2bda2968e4d4de817c2270e4","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-12-13 07:27:20.000000000","message":"Patch Set 1: Verified-1\n\n(1 comment)\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\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/2ad212f3686648e2b3f8f9deb985aa5a : SUCCESS in 8m 01s\n- grenade https://zuul.opendev.org/t/openstack/build/39547d2ea2544e6196e9284f6fe01aeb : SUCCESS in 43m 44s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/f2fb055893664dd49986b909acefea68 : SUCCESS in 34m 21s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/3d96e959f1864796bdf842d81d51f3b5 : SUCCESS in 41m 47s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/2287acea54184f7ebb76fcd50420b257 : SUCCESS in 7m 10s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/aa92b9f107cc435e84f5afc93d9ec6df : SUCCESS in 7m 39s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/ec7ae24ed80f4cb1862c8cef858ede5e : SUCCESS in 21m 47s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/ca1f546c463b4fa1b94cc0ac3f1b6523 : SUCCESS in 15m 35s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/883fe840e2de4da9b226596a9640dac4 : SUCCESS in 13m 53s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/df41594a9bac4467931869d9ec23143a : SUCCESS in 20m 28s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/11eb176b107145638b162df1632af28f : SUCCESS in 15m 06s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/678daa6f823940fca8cb094a1c675039 : SUCCESS in 23m 46s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/ba80675d9ffc4cf59d2e006d4cf87fbb : SUCCESS in 16m 22s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/43aa0a868e8e443db57b3eff851ac8a4 : SUCCESS in 18m 23s\n- swift-tox-func-py38 https://zuul.opendev.org/t/openstack/build/93d09e0c6e5f4041aec76e73703acd14 : SUCCESS in 22m 23s\n- swift-tox-func-encryption-py38 https://zuul.opendev.org/t/openstack/build/35d0e469825e410c875e4fbb08666c2b : SUCCESS in 22m 19s\n- swift-tox-func-ec-py38 https://zuul.opendev.org/t/openstack/build/971d8e1c1f81461c8a03daef8af2cda2 : SUCCESS in 14m 49s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/c2838935e1634b6a9e30f982e5190c1d : SUCCESS in 7m 17s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/86c6e748be4148ccba673f6b6e65e95e : SUCCESS in 17m 03s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/d7d8878b3dbd4065b7fa90c9392c0173 : SUCCESS in 39m 58s\n- swift-probetests-centos-8 https://zuul.opendev.org/t/openstack/build/6b9cf84340f94ce8a0f83a0fa125b859 : SUCCESS in 50m 10s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/c8f8cd0f64c943d8aeddd16ea00a8f03 : SUCCESS in 29m 22s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/c93f5108a0e1457eb108a68c76e38453 : SUCCESS in 28m 59s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/d28ead1bd31a48339fbdd4d0d701f171 : SUCCESS in 20m 12s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/00035c2cd660414eb602c31b09a68497 : FAILURE in 5m 08s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/55cddbbb48aa4e1daf618529ae1c704f : SUCCESS in 27m 21s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/a6c1d2185d874207b8c0efe4df9bf041 : SUCCESS in 36m 51s","accounts_in_message":[],"_revision_number":1},{"id":"4ce23103144e2fd1b22573059b4a845b2f031069","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-12-13 09:25:47.000000000","message":"Patch Set 1:\n\nBuild failed (ARM64 pipeline).\n\n- swift-tox-py38-arm64 https://zuul.opendev.org/t/openstack/build/ce6dd63cbaaa4b3aacce6126641b44e4 : TIMED_OUT in 1h 31m 26s\n- swift-tox-py39-arm64 https://zuul.opendev.org/t/openstack/build/cbcfab277058422a94c8543e2593069a : SUCCESS in 45m 23s\n- swift-probetests-centos-8-arm64 https://zuul.opendev.org/t/openstack/build/13a3bc18e5fc484084b49fcb3dbad08f : FAILURE in 2h 47m 29s\n- swift-tox-func-encryption-py38-arm64 https://zuul.opendev.org/t/openstack/build/7439d0af7b7446b797eda0bd7c6598bd : SUCCESS in 32m 57s\n- swift-tox-func-py38-arm64 https://zuul.opendev.org/t/openstack/build/086bebd85a3f4778909054412a574e03 : SUCCESS in 51m 28s","accounts_in_message":[],"_revision_number":1},{"id":"064279f3cccd6f0fda71ebef4f2006bf764a8553","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2021-12-13 23:40:26.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"b3d12ac8db0959953752140fc73c868a6f1cdb50","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2021-12-14 22:48:28.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"f0288085d188e7dfd3a4b6a4ff9d0e6905412d12","tag":"autogenerated:gerrit:abandon","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2021-12-15 22:28:42.000000000","message":"Abandoned\n\nThere is a better approach that merge all our ideas :) https://review.opendev.org/c/openstack/swift/+/821736","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"8191d85d9db39b4e4a3963dc1349ed99692ceed5","revisions":{"8191d85d9db39b4e4a3963dc1349ed99692ceed5":{"kind":"REWORK","_number":1,"created":"2021-12-13 06:35:28.000000000","uploader":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"ref":"refs/changes/32/821532/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/32/821532/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/32/821532/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/32/821532/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/32/821532/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/32/821532/1"}}},"commit":{"parents":[{"commit":"6edac846f407f7297909e46d9ba9514281940e59","subject":"Deferer most recently parsed updates","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/6edac846f407f7297909e46d9ba9514281940e59"}]}],"author":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2021-12-13 06:23:07.000000000","tz":660},"committer":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2021-12-13 06:23:07.000000000","tz":660},"subject":"Updater: Allow derrfered updates to sleep","message":"Updater: Allow derrfered updates to sleep\n\nItems that are skipped are placed on a deferred queue. But if everything\nin that queue is waiting then we want to sleep the minimum amount of\ntime.\n\nThis patch replaces the deque with a priority queue. The updates are\nadded (next_action, put_time, update). The priority queue will sort\ntheses by the next_action. Which means when we get an update off the\ndeferred queue. If the next_action is \u003e time.now() we need to sleep for\nthat long.\n\nThere is a chance there are a bunch of updates set at the same\nnext_action time, those following will be dropped and requeued on the\ndeferred queue and the next_action time for that container.\n\nBecause the updates are now prioritised, popping the front wont\nneccessarly be the oldest update. So this patch reverts back to stop\nfilling the queue once it\u0027s full. Having said that, I have now had to\nadd a put timestamp, so this could probably reinstate to pop the oldest\nupdate again.\n\nThe put_time timestamp is the time it was added to the deferred\nqueue. This was added later in the game because a heap can\u0027t compare\ndicts, so when were are a bunch of updates at the same next_action the\nheap can fail, as it then compares the next value in the tuple. Fixing\nthis was either moving to an update class (so we can __lt__). Or adding\nthe put timestamp to keep each unique. The latter, not only is less code,\nbut also means in a future patchset we can use it to pop the oldest\nwaiting update from the queue.\n\nChange-Id: Ic64e20e634936ce03dd17ace5c119a0a671a363a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/8191d85d9db39b4e4a3963dc1349ed99692ceed5"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/8191d85d9db39b4e4a3963dc1349ed99692ceed5"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
