)]}'
{"id":"openstack%2Fswift~729093","triplet_id":"openstack%2Fswift~master~If04c083ccc9f63696b1f53ac13edc932740a0654","project":"openstack/swift","branch":"master","topic":"s3api-429","hashtags":[],"change_id":"If04c083ccc9f63696b1f53ac13edc932740a0654","subject":"s3api: Add config option to return 429s on ratelimit","status":"MERGED","created":"2020-05-19 02:36:36.000000000","updated":"2021-04-13 01:45:45.000000000","submitted":"2021-04-13 01:42:12.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":2,"unresolved_comment_count":2,"has_review_started":true,"submission_id":"729093-s3api-429","meta_rev_id":"0373dcb7fae988233112750622f38e44b63423bb","_number":729093,"virtual_id_number":729093,"owner":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2021-04-13 01:42:11.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":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"all":[{"value":2,"date":"2021-04-12 15:00:04.000000000","permitted_voting_range":{"min":2,"max":2},"_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":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"all":[{"value":1,"date":"2021-04-12 15:00:04.000000000","permitted_voting_range":{"min":1,"max":1},"_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":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2020-05-26 23:47:28.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":"2020-10-27 17:39:57.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"}],"messages":[{"id":"d922dbadbdcb9aee07158126192cf0aed9b55993","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2020-05-19 02:36:36.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"fa8d94f9d2a0306b4c7b4fe0ce7bdc86723a63d1","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-05-19 03:37:25.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/71fd3869bb7e4ac1a0e958f01ed10cc1 : SUCCESS in 7m 16s\n- grenade https://zuul.opendev.org/t/openstack/build/74836262af2049f4aaa2b62e6ae0285c : SUCCESS in 55m 52s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/a11683b5a48d45e389ad55f3cf616df9 : SUCCESS in 44m 50s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/10bd52ea4557440ab4b7f8fb3853d59a : SUCCESS in 8m 53s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/50743fc75aa84c45aa0fa2192542c955 : SUCCESS in 9m 25s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/b76c9a2fdd904e149b3e0b4f493c9ff2 : SUCCESS in 28m 07s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/a7806105bd2f4143953b2d568b403e7a : SUCCESS in 14m 56s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/7fdbecbce08a4147bf70693631c86422 : SUCCESS in 17m 09s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/710460e694294cf78a14a36e574572d7 : SUCCESS in 27m 10s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/a7391c0931df41618a0ae2c25f3ab87f : SUCCESS in 24m 30s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/322e78f51aaa41dbaeb27a7169d6b97d : SUCCESS in 27m 16s\n- swift-tox-func-domain-remap-staticweb-py27 https://zuul.opendev.org/t/openstack/build/7817df13cba94d14998e918a167a4aec : SUCCESS in 21m 03s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/4960b62e70c645a29a35bc8184330ac7 : SUCCESS in 10m 37s\n- swift-tox-func-s3api-py27 https://zuul.opendev.org/t/openstack/build/2e70a7a3d80a48098756d119a5ecf853 : SUCCESS in 15m 05s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/084e19dfe2e64baaa634e9958802a353 : SUCCESS in 23m 29s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/36c3eddecf2c4c3886cfc8e72e79037c : SUCCESS in 23m 56s\n- swift-tox-func-domain-remap-staticweb-py37 https://zuul.opendev.org/t/openstack/build/60b06b772b584557a6c4408204aba16f : SUCCESS in 12m 52s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/25da4780846e463581202d1f7ae71c3e : SUCCESS in 14m 03s\n- swift-tox-func-s3api-py37 https://zuul.opendev.org/t/openstack/build/0bbdd8f686ef4aa39ce75821b027065e : SUCCESS in 30m 52s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/ff0016583ff14a588542ae08c054e5e9 : SUCCESS in 27m 44s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/07fb42a0fdbb405584bbd464f62069f8 : SUCCESS in 51m 34s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/bc9d01e599844a2c8e3ed523abe8b85a : SUCCESS in 41m 05s\n- swift-dsvm-functional-py3 https://zuul.opendev.org/t/openstack/build/927cb1e2434744729860ca1f0005d12a : SUCCESS in 32m 21s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/b1ae149b6b5a4f809c7c97ac67c87444 : SUCCESS in 35m 21s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/deaac2a006c44b8694b712471d8bf87c : SUCCESS in 12m 43s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/59f3dd54d62a4564a1904f6022fe8cc6 : SUCCESS in 5m 33s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/b27ae9ff764142b2b347d99a9a744862 : FAILURE in 7m 25s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/d55826c9628e49a0b787bf9a2a93f2b6 : SUCCESS in 58m 36s","accounts_in_message":[],"_revision_number":1},{"id":"c6482211fda416ad593f193bd5715c6804566318","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2020-05-26 22:39:10.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"06651da12d10dbf0d2f0b2f18aef601a8e07195f","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-05-26 23:47:28.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/88d6b731470b490bb34ff1d6785ff28d : SUCCESS in 9m 39s\n- grenade https://zuul.opendev.org/t/openstack/build/53bf07edef354b7e954b801ca3e8a9ac : SUCCESS in 1h 06m 18s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/80984402f1294c72815b055eaa24f391 : SUCCESS in 45m 52s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/8e131ebdec5d4a3785f5c06bd72f1e3e : SUCCESS in 10m 23s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/7f482391b0d74d379d5c8cacf0d2347b : SUCCESS in 10m 25s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/a884a7007eb4416db0c03a950b1e193c : SUCCESS in 31m 56s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/ee159974926345fdba386279c4a76228 : SUCCESS in 25m 03s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/e436267a74814344ab7901a16b10d83d : SUCCESS in 32m 34s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/335df42c4e644fb2a460a43eb6ecdca9 : SUCCESS in 32m 48s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/38ea106f09644e0f99afdfb33a13a3f8 : SUCCESS in 22m 18s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/6056dea846d74e12b3616d77e1c04da8 : SUCCESS in 33m 59s\n- swift-tox-func-domain-remap-staticweb-py27 https://zuul.opendev.org/t/openstack/build/8b96140fff4b4b93a431d05403566927 : SUCCESS in 30m 57s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/b7c25258121b49f8ad9a3096f39be7e9 : SUCCESS in 31m 14s\n- swift-tox-func-s3api-py27 https://zuul.opendev.org/t/openstack/build/9cb13c6efbf14380a623e1b81e0beddc : SUCCESS in 35m 29s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/567151dec4af4eb4828da47739385680 : SUCCESS in 30m 59s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/976417ac5a04487099083a6f9f822990 : SUCCESS in 14m 45s\n- swift-tox-func-domain-remap-staticweb-py37 https://zuul.opendev.org/t/openstack/build/d13466d72d0041bbb224b27a3994e848 : SUCCESS in 11m 15s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/5a2419bb7ea540a7a17c550c0a3641ab : SUCCESS in 32m 15s\n- swift-tox-func-s3api-py37 https://zuul.opendev.org/t/openstack/build/4b824f344c6a434f8c4c52cd143dd261 : SUCCESS in 16m 53s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/dae02e9a04304a76b3fff71b18f1238a : SUCCESS in 18m 14s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/a868ded1fa4e4c488ffe708fed4afaa2 : SUCCESS in 43m 46s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/4d783493b0a242b4b7d351a296fc2af0 : SUCCESS in 34m 09s\n- swift-dsvm-functional-py3 https://zuul.opendev.org/t/openstack/build/099e071f49424d5bb04165fd114d7358 : SUCCESS in 40m 56s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/2a922cef287a461e80d50d995e6015ca : SUCCESS in 35m 45s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/49cf9376aea54fdd8f01000708c2f909 : SUCCESS in 12m 43s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/a7d91ecd84ce4f158858057f97b891c8 : SUCCESS in 6m 11s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/be1bec3075c04657b0088aabebcb8165 : FAILURE in 8m 31s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/4e3fbca7855349618ff3fcbc86c0794a : SUCCESS in 55m 12s","accounts_in_message":[],"_revision_number":2},{"id":"bbc41ba2739541f119a8fed2710cb168cecbff40","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2020-10-27 17:39:57.000000000","message":"Patch Set 2:\n\nit would be super awesome if all ratelimit responses were updated to emit stats from proxy-logging for a 429 status [1] but still sent a \"503 Slow Down\" response to clients like the existing ratelimit middleware and aws [2]\n\nin proxy-logging this would correspond to a \"status\" of 429 with a \"wire_stats\" of 503\n\nThe above plan would work for both swift and s3api responses clients - bonus points if we started doing retry-after or ratelimit headers!\n\n1. https://tools.ietf.org/html/rfc6585#section-4\n2. https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList","accounts_in_message":[],"_revision_number":2},{"id":"22b5e4430d95d6a8da21fff18b4cd812f5d8cd9f","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2021-03-11 22:46:31.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"0b014284829c68dd3ef02cfe7eee12d9957c5c00","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-03-11 23:56:21.000000000","message":"Patch Set 3: 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\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/a9be1f15ef1249ee8fa76a6f4a86961c : SUCCESS in 8m 19s\n- grenade https://zuul.opendev.org/t/openstack/build/d60d6610729b498d9ad4255b0ef4c479 : SUCCESS in 53m 44s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/036371e16ae543e0b1c7f2b12d00be76 : SUCCESS in 35m 23s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/cb3ca38ce83f4ad5be49e6b5b309ab77 : SUCCESS in 8m 48s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/7d17a0373c59486a908745c1069fe9e7 : SUCCESS in 7m 34s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/4971189b13c141a0a32b6db626685b68 : SUCCESS in 13m 21s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/962602a244fc434286970b0c4e4dfc26 : SUCCESS in 12m 52s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/387f66d2c13d4c0aacb543f1acb075ed : SUCCESS in 14m 21s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/829a90d5078649679f715e376578e35e : SUCCESS in 14m 17s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/8122138ff9e14933a60ae4c1be8cb2ba : SUCCESS in 12m 50s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/2d5c9b66d0f744cebf8a1db02763eb8e : SUCCESS in 15m 53s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/1751927961e4486b9c96119e07ca3cf0 : FAILURE in 19m 01s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/552dee4a4d464ca5927d330deb710ac0 : SUCCESS in 25m 39s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/215c50a9898c4d4cbb9bc685a452415e : SUCCESS in 18m 44s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/238dda0b816d489fb8d6124a471c6b8c : SUCCESS in 26m 51s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/d7eb7257aacd432491188c1a297468e0 : SUCCESS in 20m 18s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/76c4f07c168347358e1cf91d8cc0a252 : SUCCESS in 7m 11s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/dd01185a2fb741cc935deb84be6c067f : FAILURE in 1h 00m 22s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/61ffee650104438cb52cb0b078adc0bd : SUCCESS in 49m 55s\n- swift-probetests-centos-8 https://zuul.opendev.org/t/openstack/build/8e14c8da1d5c4f359a9f75f4df7df855 : SUCCESS in 51m 54s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/98eb3c149ecd4944b6f6cc363e9a1cd1 : SUCCESS in 45m 47s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/7ba811f1a1d5470fa35dfdf49dc669d4 : SUCCESS in 42m 12s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/7dcda6bc8dc249489e7b410c1a7fe6de : SUCCESS in 15m 37s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/31a6498f83144a7992162fbda2405c80 : SUCCESS in 5m 53s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/1dc5c79586334cd5b5af55c8eea01857 : FAILURE in 10m 48s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/4383b3590acd4b7b93a245ca511d0e8d : SUCCESS in 1h 03m 48s","accounts_in_message":[],"_revision_number":3},{"id":"64eb0920bb2d417ddbdb9ced1ebfa124c805275e","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2021-03-12 17:05:30.000000000","message":"Patch Set 3:\n\nrecheck","accounts_in_message":[],"_revision_number":3},{"id":"87da0844f594c3772a20ddd0a8f493c419f79258","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-03-12 18:57:17.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/2d3cfdaf7bfb43dcac7a8e5029bcd935 : SUCCESS in 9m 38s\n- grenade https://zuul.opendev.org/t/openstack/build/c4c11978cc0d415180ca1b3733d2d17e : SUCCESS in 1h 02m 29s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/8b48efad1d3446a8bc8c46f8233d66ab : SUCCESS in 52m 38s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/a136e73c4dd34b46b1b751de4c89fa56 : SUCCESS in 8m 46s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/ba39c5f78b254614804eaf790f170873 : SUCCESS in 7m 34s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/c04b6b8be80849bba0b4220001482278 : SUCCESS in 15m 03s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/207f4699db2341b6a8007a88b1da6b2a : SUCCESS in 15m 37s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/0d3e928032a7447488d670bb7cc7e57c : SUCCESS in 15m 52s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/117f9e67c65e452c83c75d4f777aaf75 : SUCCESS in 15m 42s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/87cb1495050d4fc58bf1a020d3c16fbe : SUCCESS in 14m 47s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/385509dd977e4917adf981197bc428a5 : SUCCESS in 18m 47s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/ff7fb5d27ec6466ea242fd44925c3df5 : SUCCESS in 19m 01s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/35bc1b41d1384837b07a1267e8db840f : SUCCESS in 26m 27s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/0827a49b13f7452fbeb2311c92a6e3ca : SUCCESS in 22m 25s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/51fc9ae81fa54b119ba9c34fd4946fb5 : SUCCESS in 26m 08s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/21471b95594c4ec2b13b3121d70cde4b : SUCCESS in 27m 27s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/1fb393b4ce3142c0845ef99e0cc1bcd9 : SUCCESS in 7m 27s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/fd5f8b38bc0a431dbf3e2d863b86fbe9 : FAILURE in 28m 50s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/8d7748e0c7da46568e88fc5e866460e5 : SUCCESS in 54m 05s\n- swift-probetests-centos-8 https://zuul.opendev.org/t/openstack/build/897da4ee36bf49918ec36c6174325953 : SUCCESS in 44m 21s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/e3ab22b2d75b480b950b661204829b77 : SUCCESS in 50m 14s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/0cfc20b378914c1e8f761543d10c44a6 : SUCCESS in 43m 09s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/4fc15e5631044ac6a81b7c752c4acb00 : SUCCESS in 19m 25s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/be1e31a6738b4b1daa9586624e2ea6de : SUCCESS in 6m 18s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/e02377cef3c04366892e38b6c73f5f20 : FAILURE in 11m 12s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/931683167c8846a2aa2b74ad6f7209a7 : SUCCESS in 1h 10m 13s","accounts_in_message":[],"_revision_number":3},{"id":"ea8098aa50e1399fb4e75486278ab18e94bc99de","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2021-03-17 18:00:50.000000000","message":"Uploaded patch set 4.","accounts_in_message":[],"_revision_number":4},{"id":"04d6f5586ea6caf720127e59499940c164138b93","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-03-17 19:15:29.000000000","message":"Patch Set 4: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/1766b505b0d94d0985b6a16b1185829e : SUCCESS in 8m 16s\n- grenade https://zuul.opendev.org/t/openstack/build/eb3491a987424f6e8c0b92ed24383cd2 : SUCCESS in 1h 01m 39s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/2bb3610d3ce14cf0a2ea05921c9c7bc7 : SUCCESS in 47m 47s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/38c81b2c4535496b82c237424f1bca0f : SUCCESS in 11m 39s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/87e7d6bba1674e068a4f5aa69a219137 : SUCCESS in 7m 37s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/06953d2a14be46bc8c3df70f27d7f7d2 : SUCCESS in 16m 55s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/632e2852c9864eb89bbdcbafe2922477 : SUCCESS in 33m 30s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/b5d3ce8671c44258a0ef588302650e93 : SUCCESS in 17m 27s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/2e13a88806a54e4281d712c5f3115b33 : SUCCESS in 34m 14s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/249b030ba22f4999b8ed9b00b3d9f6d3 : SUCCESS in 33m 22s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/edf6f7d3389947f19f89387fce118f38 : SUCCESS in 29m 57s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/de39480aef4f4c8da1c7563775664283 : SUCCESS in 25m 48s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/2d351d1e9ee74ea79733b1f3a7d2e3b7 : SUCCESS in 23m 14s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/797c1aed2c4f4b719b8c892ec2eab887 : SUCCESS in 19m 54s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/16353220b57d485b9a1c2b6211e58888 : SUCCESS in 39m 21s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/90aef21d06bb458b90f2f274df251e05 : SUCCESS in 23m 43s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/8c4b75c3e3374c308bde0331fc678a1f : SUCCESS in 6m 38s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/212c7d5335e2476a9797573298d7307e : SUCCESS in 32m 30s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/81f69bead5734b348fc583cb1dc047bf : SUCCESS in 1h 06m 06s\n- swift-probetests-centos-8 https://zuul.opendev.org/t/openstack/build/677c0a8650544954b0ed01e0d3050df1 : SUCCESS in 1h 11m 32s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/10b2704f15b84b2981d531c1361217cf : SUCCESS in 43m 56s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/0685f4c903cb48fdba405be3d488f784 : SUCCESS in 40m 57s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/2fa6e504a2144998a04bc3c426b74710 : SUCCESS in 14m 49s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/f49643a52e3c448ea5b823196cfd230e : SUCCESS in 5m 38s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/bbc59bcc39294623bc689b4b7fbd1e0e : FAILURE in 10m 04s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/04af7f22459c44d6a4ae507aee7a0704 : SUCCESS in 1h 01m 58s","accounts_in_message":[],"_revision_number":4},{"id":"4618d156159ac66c7065784774ffbbadecf8d5a2","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2021-04-05 18:03:03.000000000","message":"Patch Set 4: Code-Review+1\n\n(2 comments)\n\nI think we can fix \"s3api slow down logged as server error\" w/o the new config option:\n\nhttps://review.opendev.org/c/openstack/swift/+/784808\n\n... but maybe the option is useful regardless if some services really DO want to *return* 429 instead of 503 to clients","accounts_in_message":[],"_revision_number":4},{"id":"036c7ccaebe797dcb5b00987553ad26f2c2ab172","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2021-04-12 15:00:04.000000000","message":"Patch Set 4: Code-Review+2 Workflow+1\n\nTurns out we really DO want to return 429 instead of 503 to our s3api clients (because we already return 429 from a global ratelimit middleware that sits in front of s3api - so clients MUST to be robust to \"429 Slow Down\" somewhat regardless)\n\nMostly it\u0027s defensible because RFCs say 429 is what servers should do.  We\u0027re not trying to be \"more holy than the pope\" - we\u0027re just trying to get some consistency for our clients, stats, and logs.","accounts_in_message":[],"_revision_number":4},{"id":"7a7ee73e90ab1538e6b09b47af915f870a0c8516","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-04-12 15:00:31.000000000","message":"Patch Set 4: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":4},{"id":"8fee5f4c20419bf3c25e1c09b4f3602f09c03373","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-04-13 01:42:11.000000000","message":"Patch Set 4: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/b9efdd273f4249cab2b9fb455487ce5b : SUCCESS in 9m 30s\n- grenade https://zuul.opendev.org/t/openstack/build/e63fade025ed4777a77fa7ec0710f03e : SUCCESS in 43m 29s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/b062d895d24f42f88aab51a1a67748d9 : SUCCESS in 33m 42s\n- swift-upload-image https://zuul.opendev.org/t/openstack/build/c70575ef207048b7963801ea12b68bb3 : SUCCESS in 8m 52s (non-voting)\n- swift-upload-image-py3 https://zuul.opendev.org/t/openstack/build/d505ba801270483a9873b13bb918a0a1 : SUCCESS in 7m 44s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/d94647ca2298418bb06d67a98c484c55 : SUCCESS in 14m 34s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/afbf7b8b327643e88a4b0809ed41b5ed : SUCCESS in 18m 30s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/0e947abcec0c40d48060c046ab7db9e2 : SUCCESS in 14m 34s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/86d9629cbd554eb49e4f9288fba2be38 : SUCCESS in 16m 30s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/6e67a84739cf4dd7a4b8064391002c97 : SUCCESS in 16m 20s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/cf0f9a03e7844e039c4996ae12cb4385 : SUCCESS in 19m 49s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/58f36bf0be8e4e60b39e9e5885af9de5 : SUCCESS in 16m 44s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/9a0ef2a2a3ed42f4bbc8b2afaf770e39 : SUCCESS in 15m 43s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/75b4cd2d94294cc2ae42f78687c19563 : SUCCESS in 20m 58s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/75c67567c45448398f7435827acccd1c : SUCCESS in 17m 41s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/4a360c756ee44a99a1b363b44c27cb54 : SUCCESS in 27m 39s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/d95c4735983648b4bc7160077bf6a0a5 : SUCCESS in 7m 14s\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/b0a9448be8af4a91915e37c9054bd312 : SUCCESS in 42m 38s\n- swift-probetests-centos-8 https://zuul.opendev.org/t/openstack/build/b89c5c3245854fb6a0f3d9f153411139 : SUCCESS in 44m 06s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/75a5f98b506c46749b3aa6842a5dd291 : SUCCESS in 40m 40s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/2802fbd1521f4cd0b333541718c7351e : SUCCESS in 37m 37s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/674b2ab0227f4e1bb3d7e6c42e72ac06 : SUCCESS in 14m 32s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/9cc6afe6c3b54dc6b2c604420e48b1da : SUCCESS in 7m 49s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/c64a8d32c7de4b97bda536b5db4eeff6 : SUCCESS in 28m 55s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/ad8206adcaec400abc3f8c863908c869 : SUCCESS in 51m 17s","accounts_in_message":[],"_revision_number":4},{"id":"41c0a55e987ccc42e94c573133c76aefde34b152","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-04-13 01:42:12.000000000","message":"Change has been successfully merged by Zuul","accounts_in_message":[],"_revision_number":4},{"id":"0373dcb7fae988233112750622f38e44b63423bb","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-04-13 01:45:45.000000000","message":"Patch Set 4:\n\nBuild succeeded (promote pipeline).\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/fc823c14787c4c808c6d6978b61a3f50 : SUCCESS in 1m 18s\n- swift-promote-image https://zuul.opendev.org/t/openstack/build/e9874e9149e640a29afc46ea0bd6961a : SUCCESS in 40s (non-voting)\n- swift-promote-image-py3 https://zuul.opendev.org/t/openstack/build/8190f26f33fd4c69af80ce42f008fc51 : SUCCESS in 46s (non-voting)","accounts_in_message":[],"_revision_number":4}],"current_revision_number":4,"current_revision":"e35365df512bade4ff03360e2f2c69ffc4b326be","revisions":{"26fb1044e5d97389d93312531655226bb5f212ac":{"kind":"REWORK","_number":1,"created":"2020-05-19 02:36:36.000000000","uploader":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"ref":"refs/changes/93/729093/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/93/729093/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/93/729093/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/93/729093/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/93/729093/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/93/729093/1"}}},"commit":{"parents":[{"commit":"6cf97e687aa35a7e8aca5e40ce4fb474a3b31b3c","subject":"s3api: Log ratelimited requests as 498s","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/6cf97e687aa35a7e8aca5e40ce4fb474a3b31b3c"}]}],"author":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2020-05-19 02:36:25.000000000","tz":-420},"committer":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2020-05-19 02:36:25.000000000","tz":-420},"subject":"s3api: Add config option to return 429s on ratelimit","message":"s3api: Add config option to return 429s on ratelimit\n\nChange-Id: If04c083ccc9f63696b1f53ac13edc932740a0654\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/26fb1044e5d97389d93312531655226bb5f212ac"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/26fb1044e5d97389d93312531655226bb5f212ac"}]},"branch":"refs/heads/master"},"3b0036a1fe41d86a52ec548ac8804d70a047a8bb":{"kind":"REWORK","_number":2,"created":"2020-05-26 22:39:10.000000000","uploader":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"ref":"refs/changes/93/729093/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/93/729093/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/93/729093/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/93/729093/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/93/729093/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/93/729093/2"}}},"commit":{"parents":[{"commit":"9ff51f59141b41d28a97b81729239c8d580819e0","subject":"prefactor: Pass s3api Config to S3Requests","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/9ff51f59141b41d28a97b81729239c8d580819e0"}]}],"author":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2020-05-19 02:36:25.000000000","tz":-420},"committer":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2020-05-26 22:38:55.000000000","tz":-420},"subject":"s3api: Add config option to return 429s on ratelimit","message":"s3api: Add config option to return 429s on ratelimit\n\nChange-Id: If04c083ccc9f63696b1f53ac13edc932740a0654\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/3b0036a1fe41d86a52ec548ac8804d70a047a8bb"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/3b0036a1fe41d86a52ec548ac8804d70a047a8bb"}]},"branch":"refs/heads/master"},"a3c0c01ee5843dd58588f38b8c6c97c8ef9fb909":{"kind":"REWORK","_number":3,"created":"2021-03-11 22:46:31.000000000","uploader":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"ref":"refs/changes/93/729093/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/93/729093/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/93/729093/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/93/729093/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/93/729093/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/93/729093/3"}}},"commit":{"parents":[{"commit":"c2f619129c7f1f714229a1be31303dd7520c040f","subject":"Merge \"Add unit test for diskfile.relink_paths\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c2f619129c7f1f714229a1be31303dd7520c040f"}]}],"author":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2020-05-19 02:36:25.000000000","tz":-420},"committer":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2021-03-11 22:45:49.000000000","tz":-480},"subject":"s3api: Add config option to return 429s on ratelimit","message":"s3api: Add config option to return 429s on ratelimit\n\nChange-Id: If04c083ccc9f63696b1f53ac13edc932740a0654\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/a3c0c01ee5843dd58588f38b8c6c97c8ef9fb909"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/a3c0c01ee5843dd58588f38b8c6c97c8ef9fb909"}]},"branch":"refs/heads/master"},"e35365df512bade4ff03360e2f2c69ffc4b326be":{"kind":"REWORK","_number":4,"created":"2021-03-17 18:00:50.000000000","uploader":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"ref":"refs/changes/93/729093/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/93/729093/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/93/729093/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/93/729093/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/93/729093/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/93/729093/4"}}},"commit":{"parents":[{"commit":"c6a64036651e18f3d7d0715c5d4876257aaa0e6f","subject":"AUTHORS/CHANGELOG for 2.27.0","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c6a64036651e18f3d7d0715c5d4876257aaa0e6f"}]}],"author":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2020-05-19 02:36:25.000000000","tz":-420},"committer":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2021-03-17 17:58:58.000000000","tz":-420},"subject":"s3api: Add config option to return 429s on ratelimit","message":"s3api: Add config option to return 429s on ratelimit\n\nChange-Id: If04c083ccc9f63696b1f53ac13edc932740a0654\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/e35365df512bade4ff03360e2f2c69ffc4b326be"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/e35365df512bade4ff03360e2f2c69ffc4b326be"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"status":"CLOSED","labels":[{"label":"Verified","status":"OK","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"OK","applied_by":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"}},{"label":"Workflow","status":"OK","applied_by":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"}}]}],"submit_requirements":[{"name":"Verified","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Verified\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dCustom-Rule"],"failing_atoms":[],"atom_explanations":{}}},{"name":"Workflow","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Workflow\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Workflow\u003dCustom-Rule"],"failing_atoms":[],"atom_explanations":{}}},{"name":"Code-Review","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Code-Review\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dCustom-Rule"],"failing_atoms":[],"atom_explanations":{}}}]}
