)]}'
{"id":"openstack%2Fswift~706653","triplet_id":"openstack%2Fswift~master~I1be1faec53b2cdfaabf927598f1460e23c206b0a","project":"openstack/swift","branch":"master","topic":"auditor_212824_alt","hashtags":[],"change_id":"I1be1faec53b2cdfaabf927598f1460e23c206b0a","subject":"Let developers/operators add watchers to object audit","status":"MERGED","created":"2020-02-08 04:32:48.000000000","updated":"2021-01-05 06:12:08.000000000","submitted":"2021-01-05 06:08:57.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":164,"unresolved_comment_count":7,"has_review_started":true,"submission_id":"706653-auditor_212824_alt","meta_rev_id":"ca933c3a48c1b47af6dd3af3a291974804f67d56","_number":706653,"virtual_id_number":706653,"owner":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"value":0,"_account_id":25251,"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","username":"alecuyer"},{"value":0,"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},{"value":0,"_account_id":28182,"name":"Jiaping LI","email":"lijiaping@yovole.com","username":"lijiaping"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2021-01-05 06:08:56.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":13852,"name":"Romain LE DISEZ","email":"romain.le-disez@corp.ovh.com","username":"rledisez"},{"value":0,"_account_id":32029,"name":"likui","email":"likui@yovole.com","username":"likui"},{"value":0,"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},{"value":0,"_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"},{"value":0,"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"all":[{"value":2,"date":"2021-01-05 05:04:38.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"value":0,"_account_id":25251,"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","username":"alecuyer"},{"value":2,"date":"2020-12-26 23:35:26.000000000","_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},{"value":1,"date":"2020-12-27 10:44:58.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":28182,"name":"Jiaping LI","email":"lijiaping@yovole.com","username":"lijiaping"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":13852,"name":"Romain LE DISEZ","email":"romain.le-disez@corp.ovh.com","username":"rledisez"},{"value":1,"date":"2020-12-27 03:14:24.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":32029,"name":"likui","email":"likui@yovole.com","username":"likui"},{"value":0,"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},{"value":0,"_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"},{"value":2,"date":"2020-12-29 19:59:11.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}],"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":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"all":[{"value":1,"date":"2021-01-05 05:04:38.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"value":0,"_account_id":25251,"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","username":"alecuyer"},{"value":0,"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},{"value":0,"_account_id":28182,"name":"Jiaping LI","email":"lijiaping@yovole.com","username":"lijiaping"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":13852,"name":"Romain LE DISEZ","email":"romain.le-disez@corp.ovh.com","username":"rledisez"},{"value":0,"_account_id":32029,"name":"likui","email":"likui@yovole.com","username":"likui"},{"value":0,"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},{"value":0,"_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"},{"value":0,"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},{"_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"},{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"_account_id":13852,"name":"Romain LE DISEZ","email":"romain.le-disez@corp.ovh.com","username":"rledisez"},{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":25251,"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","username":"alecuyer"},{"_account_id":28182,"name":"Jiaping LI","email":"lijiaping@yovole.com","username":"lijiaping"},{"_account_id":32029,"name":"likui","email":"likui@yovole.com","username":"likui"}],"CC":[{"_account_id":23279,"name":"Seongsoo Cho","display_name":"Seongsoo Cho","email":"ppiyakk2@printf.kr","username":"seongsoo.cho"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2020-02-08 04:32:48.000000000","updated_by":{"_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"},"reviewer":{"_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"},"state":"REVIEWER"},{"updated":"2020-03-06 18:15:13.000000000","updated_by":{"_account_id":13852,"name":"Romain LE DISEZ","email":"romain.le-disez@corp.ovh.com","username":"rledisez"},"reviewer":{"_account_id":13852,"name":"Romain LE DISEZ","email":"romain.le-disez@corp.ovh.com","username":"rledisez"},"state":"REVIEWER"},{"updated":"2020-04-09 16:26:09.000000000","updated_by":{"_account_id":25251,"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","username":"alecuyer"},"reviewer":{"_account_id":25251,"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","username":"alecuyer"},"state":"REVIEWER"},{"updated":"2020-10-12 12:34:18.000000000","updated_by":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"reviewer":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"state":"REVIEWER"},{"updated":"2020-10-27 06:18:13.000000000","updated_by":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"reviewer":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"state":"REVIEWER"},{"updated":"2020-11-05 22:03:27.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":"REVIEWER"},{"updated":"2020-11-05 23:05:53.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-12-16 21:25:34.000000000","updated_by":{"_account_id":23279,"name":"Seongsoo Cho","display_name":"Seongsoo Cho","email":"ppiyakk2@printf.kr","username":"seongsoo.cho"},"reviewer":{"_account_id":23279,"name":"Seongsoo Cho","display_name":"Seongsoo Cho","email":"ppiyakk2@printf.kr","username":"seongsoo.cho"},"state":"CC"},{"updated":"2020-12-27 03:14:24.000000000","updated_by":{"_account_id":32029,"name":"likui","email":"likui@yovole.com","username":"likui"},"reviewer":{"_account_id":32029,"name":"likui","email":"likui@yovole.com","username":"likui"},"state":"REVIEWER"},{"updated":"2020-12-27 10:44:58.000000000","updated_by":{"_account_id":28182,"name":"Jiaping LI","email":"lijiaping@yovole.com","username":"lijiaping"},"reviewer":{"_account_id":28182,"name":"Jiaping LI","email":"lijiaping@yovole.com","username":"lijiaping"},"state":"REVIEWER"}],"messages":[{"id":"8c01b9cbd9f45ed6b7cd59f63c6d9be9d4f16ce9","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-02-08 04:32:48.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"398e4bcce6096db93ec5e15118d6f68db7d3b5a3","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-02-08 05:38:55.000000000","message":"Patch Set 1: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/9c58eaea1c514400a64e4fc13d6cd42d : SUCCESS in 3m 08s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/56fb3023bf484b949b8eae99162e61e5 : SUCCESS in 7m 50s\n- grenade-py3 https://zuul.opendev.org/t/openstack/build/ace52db6a45d4396ac30d438e8d3a4fd : SUCCESS in 53m 33s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/890c7749ec7a4af1abe560fcc46ddeef : SUCCESS in 54m 14s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/367cb699beaf4d07a1d4ce85927431ca : SUCCESS in 9m 05s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/5441d1af54ea4ea08900e7690bb7186c : SUCCESS in 9m 45s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/4dd540df431f47ffad0d910a7828e18e : FAILURE in 16m 24s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/e4c7a39ed27a41a7973cf70ae7dd3575 : FAILURE in 14m 48s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/43ca06434dd3422c9516e92ba0700452 : FAILURE in 16m 21s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/162b2d37d89548b987a158702f4104a5 : FAILURE in 15m 19s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/1122d0f4b75c48a49786d0dfde4dc828 : SUCCESS in 14m 19s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/008711f49d5140f1ab55786ddeaab4e2 : SUCCESS in 14m 54s\n- swift-tox-func-domain-remap-staticweb-py27 https://zuul.opendev.org/t/openstack/build/966ab83007364443ad4e1ffc2c391aeb : SUCCESS in 12m 26s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/b3b9467b379344ff8e63513162d4f44b : SUCCESS in 12m 30s\n- swift-tox-func-s3api-py27 https://zuul.opendev.org/t/openstack/build/0344af41d86c450ebde3c12213f97126 : SUCCESS in 14m 55s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/dc469d2e6a7f4b01bc782fd37c15cf04 : SUCCESS in 12m 30s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/0931a62171bd47499e07279594bdeaac : SUCCESS in 15m 07s\n- swift-tox-func-domain-remap-staticweb-py37 https://zuul.opendev.org/t/openstack/build/123aea5ca1884a5abff50f391305add6 : SUCCESS in 12m 32s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/6c3a83d1d70f4523b67cb8d7e95bebbb : SUCCESS in 14m 13s\n- swift-tox-func-s3api-py37 https://zuul.opendev.org/t/openstack/build/182e7183d3dd4e4ca2fea6dc0f3e05e8 : SUCCESS in 18m 41s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/5e7e21868e134264b11570a9cd9ff029 : SUCCESS in 24m 01s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/82b6a4a98f134eb3a56573fc2a8999d1 : SUCCESS in 47m 48s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/bb75be93d9f049e29ac29e26e199436e : SUCCESS in 29m 00s\n- swift-dsvm-functional-py3 https://zuul.opendev.org/t/openstack/build/00d8d40aa208404781fc9fa87b38580a : SUCCESS in 28m 30s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/fb567b183ea747b5a37495aebd1a6636 : SUCCESS in 31m 42s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/f2ae51ee0a3544948eba1e1f8837c650 : FAILURE in 14m 42s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/14063158946d4cdb9d752f952982b15e : FAILURE in 7m 06s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/6325391ce8824902a3b3ccd962c21d68 : FAILURE in 7m 02s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/e6178bf0210f45a7b9dbff4e65235c44 : SUCCESS in 1h 05m 10s","accounts_in_message":[],"_revision_number":1},{"id":"358c66ae5a565fa5006b52907aa2a1b897c23bbe","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-02-09 02:41:00.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"b620949f80fd4a3ff24c6d25a3ce9c98c1850442","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-02-09 03:45:46.000000000","message":"Patch Set 2: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/9756fd4cb23249f2bb4811d2c1be0248 : SUCCESS in 3m 15s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/036b3b55fd62409099c180dd832fb052 : SUCCESS in 7m 37s\n- grenade-py3 https://zuul.opendev.org/t/openstack/build/11536ad3af684c90b05ce580d9a7c722 : SUCCESS in 56m 55s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/c76d4c3764ed4817955122e068669b6e : SUCCESS in 52m 15s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/196aa0fc494941c8807a1ac3807eb59a : SUCCESS in 8m 40s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/4b80cb3143d0424ca02b35e4692fb741 : SUCCESS in 8m 38s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/406eb39a739f401fbe48298844242a3f : SUCCESS in 14m 36s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/d98ac88894cc43838ceded51bdf2465d : SUCCESS in 11m 26s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/5c1eacb3d50349fe8c5e0da9f3f5ea03 : SUCCESS in 11m 38s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/232a378af98348ad914877873d70509f : SUCCESS in 14m 13s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/224debb88c1841149f693c53a35bb099 : SUCCESS in 9m 20s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/5c471be223f2432da77149c035a02d1e : SUCCESS in 27m 12s\n- swift-tox-func-domain-remap-staticweb-py27 https://zuul.opendev.org/t/openstack/build/a2907c0583954007833b946de8fa6a4f : SUCCESS in 10m 00s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/08f8c7143c7340c78ffe32a3f3e0200a : SUCCESS in 10m 51s\n- swift-tox-func-s3api-py27 https://zuul.opendev.org/t/openstack/build/9f40212eaf2d4370b3825726542f5673 : SUCCESS in 14m 35s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/0bfee8d9bcfc43c79369cd6052ae1e20 : SUCCESS in 10m 22s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/0410d83adaea42f180a1f9e622a0eb84 : SUCCESS in 12m 42s\n- swift-tox-func-domain-remap-staticweb-py37 https://zuul.opendev.org/t/openstack/build/5bced7c750144c4b9f579a6471452ee5 : SUCCESS in 12m 13s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/ec6f302af66d411b9aae2a775d48a782 : SUCCESS in 10m 44s\n- swift-tox-func-s3api-py37 https://zuul.opendev.org/t/openstack/build/f22639a2726e4fd0b8a11324ef54f8d1 : SUCCESS in 15m 00s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/cffa3c2e45374e4d8241a55920d7ec27 : SUCCESS in 29m 47s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/b5024b4dbe9042e7aab779796fa392c6 : SUCCESS in 50m 23s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/92aca792e2a847b692cac0b19caf34c7 : SUCCESS in 32m 01s\n- swift-dsvm-functional-py3 https://zuul.opendev.org/t/openstack/build/f7a65466f52340898f5ed9a721ea58ce : SUCCESS in 23m 30s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/7bd0536aae814dd7b6040bf823a7c3bd : SUCCESS in 31m 34s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/d2a588c45cec4e6eba6318bd3c69f3db : SUCCESS in 18m 33s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/2a6caecde1c7416cb9f4498293f32bc8 : FAILURE in 5m 04s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/2c676244297b48ffadaad9f2fbe8331f : FAILURE in 6m 46s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/1c7d318b3156455283e9f505236f2c01 : SUCCESS in 1h 03m 12s","accounts_in_message":[],"_revision_number":2},{"id":"017f9479229cb5295b6864c13d188ff96695a925","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-02-10 01:13:47.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"068e16af31d97a078bfc1bb971f9ef14beebd817","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-02-10 01:23:49.000000000","message":"Patch Set 3:\n\nOriginal branch:\n https://review.opendev.org/212824","accounts_in_message":[],"_revision_number":3},{"id":"7e6506fd900cd83322511308b64b690f59e2d448","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-02-10 02:23:13.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/81b62ec0c0b74ea7aceff7e7095a01e8 : SUCCESS in 3m 10s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/4498e592e2be4c2cb889737bc227812d : SUCCESS in 8m 53s\n- grenade-py3 https://zuul.opendev.org/t/openstack/build/eebca9f75525498db22f3deb94f21c64 : SUCCESS in 58m 05s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/7e849a408cf24a25b3557cf390451662 : SUCCESS in 44m 20s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/45b17b38fd794efdafc42902d109d155 : SUCCESS in 8m 38s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/026f1b32e73f44c98c776ccbfb634df6 : SUCCESS in 8m 21s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/789520fdaebe4369874616702a82fc6c : SUCCESS in 21m 01s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/1ea3b177c6dc4a40bee4c45a94457284 : SUCCESS in 15m 47s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/5013e0497a7a4d05a5a1f2bd64a9e9d1 : SUCCESS in 17m 38s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/cbc3534b2f4141f0ab0c908fd632462a : SUCCESS in 12m 04s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/eda6342cf6ea4622b601717d03112a76 : SUCCESS in 15m 22s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/f1cbafa7ac814ce6ad849baa2182048a : SUCCESS in 19m 04s\n- swift-tox-func-domain-remap-staticweb-py27 https://zuul.opendev.org/t/openstack/build/c88c7ab7692d4f509096cd848e86b79d : SUCCESS in 16m 14s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/a11c162903294812a271a7810ae31a00 : SUCCESS in 17m 07s\n- swift-tox-func-s3api-py27 https://zuul.opendev.org/t/openstack/build/20d19276901f4c3bba92409545c5b1cb : SUCCESS in 26m 14s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/63d345a02d9b4c42b0fc78e314725ff4 : SUCCESS in 18m 40s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/ff4806917aba4550b900289dba0c73b1 : SUCCESS in 23m 14s\n- swift-tox-func-domain-remap-staticweb-py37 https://zuul.opendev.org/t/openstack/build/720dcaf1e5814a8da0264d19dedb3242 : SUCCESS in 18m 53s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/69cb3d73965f4034bca4425193b01eb4 : SUCCESS in 19m 32s\n- swift-tox-func-s3api-py37 https://zuul.opendev.org/t/openstack/build/7406fea753664c08b51b41da701cfae2 : SUCCESS in 27m 06s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/0eb454d5ddd04e188c5e8db038a26835 : SUCCESS in 31m 32s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/956e49b10b784be09bc41bcb39f65c89 : SUCCESS in 49m 15s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/d86931e272e749de898cc7245e492d2d : SUCCESS in 36m 15s\n- swift-dsvm-functional-py3 https://zuul.opendev.org/t/openstack/build/2bd6b3285a2945f2a45a883e9351a000 : SUCCESS in 36m 11s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/f230f9b3284541a7bd9aadc1133cf4a2 : SUCCESS in 36m 47s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/55022fcf8e954805bd6d2cd74294287d : SUCCESS in 19m 26s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/be9f9865949b4dd68178d47d51819bf8 : SUCCESS in 6m 59s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/ffb479b5ad504f3fb0d78ed69f30b293 : SUCCESS in 36m 26s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/f3898090d452472ebe85cd1d031dd3f9 : SUCCESS in 58m 54s","accounts_in_message":[],"_revision_number":3},{"id":"a0adab66f30531517b530f48aecf95b3d654d431","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-02-15 03:10:46.000000000","message":"Uploaded patch set 4.","accounts_in_message":[],"_revision_number":4},{"id":"ca06e6b15b2a9728017d5b484d2ec3769afc6f0c","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-02-15 04:30:47.000000000","message":"Patch Set 4: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/2b37fac26fe24679a417336314312262 : SUCCESS in 4m 12s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/46fd082d867e4413a5de157d8199300b : SUCCESS in 12m 53s\n- grenade-py3 https://zuul.opendev.org/t/openstack/build/ed367b9c9ba441d78cc94520d87f3d38 : SUCCESS in 53m 29s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/f66b43c4ddcf4a30a53236058d9fe2db : SUCCESS in 1h 11m 34s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/6b76ed815bb14868a62e417b6ab18e40 : SUCCESS in 11m 48s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/32fa3de30a9e47e2a37ce306613837c0 : SUCCESS in 11m 51s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/0af58f0af1244d99b5b45ba25367e3bb : SUCCESS in 21m 35s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/f0283892874c4cdb85f64892f1d02501 : SUCCESS in 14m 25s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/312b308a3cd04718ac5641a805dc3cbb : SUCCESS in 21m 41s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/8538487357a345f7b6dcf19015ac4892 : SUCCESS in 17m 56s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/a63ace927da244679d9289ffbd70a87a : SUCCESS in 13m 05s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/5086a6d7684c4c7da19caf5a2cd0ef1f : SUCCESS in 18m 14s\n- swift-tox-func-domain-remap-staticweb-py27 https://zuul.opendev.org/t/openstack/build/7e7d2c4d319e441999b716058c666639 : SUCCESS in 19m 15s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/0bcf1a2e393947079c601313d14a4713 : SUCCESS in 15m 52s\n- swift-tox-func-s3api-py27 https://zuul.opendev.org/t/openstack/build/de31c922d33a43019546a055031380b3 : SUCCESS in 23m 53s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/e72a37808f504fd686c8782164e321b7 : SUCCESS in 13m 26s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/8fe7f746ced14a2891d24bc6d0457b69 : SUCCESS in 15m 23s\n- swift-tox-func-domain-remap-staticweb-py37 https://zuul.opendev.org/t/openstack/build/c9c110b424c948e59950dc3cf80a4882 : SUCCESS in 11m 17s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/6873529067634e91b72052e8fcf2f940 : SUCCESS in 20m 32s\n- swift-tox-func-s3api-py37 https://zuul.opendev.org/t/openstack/build/5d8ca9972a4744f784ccd9ee79bb6394 : SUCCESS in 15m 34s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/08eca12328b04cf99c75bdf59cdc8b91 : SUCCESS in 30m 40s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/b211a61cdeb542e5a352461b863f3e73 : FAILURE in 46m 59s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/6137fe2828cb4d9bbc870fc3ad7748d8 : SUCCESS in 28m 58s\n- swift-dsvm-functional-py3 https://zuul.opendev.org/t/openstack/build/95a59147e1ae458ab3170e2bbe346962 : SUCCESS in 32m 29s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/1a767529adf241c5822ac0631706113a : SUCCESS in 32m 36s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/fcdf860942524b3aa2131b329a667436 : SUCCESS in 13m 46s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/0696ce38cf2e4201be783d8fbff35f93 : SUCCESS in 7m 42s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/13c5e8ac19864c1ebfb1955b92b9df5b : SUCCESS in 30m 54s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/e18c6fe851df45d9b4d454ea7297c360 : SUCCESS in 50m 13s","accounts_in_message":[],"_revision_number":4},{"id":"0db1b634bb5ca57066165d2efe30cf04bb6918c6","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2020-02-19 18:20:47.000000000","message":"Patch Set 4:\n\nrecheck","accounts_in_message":[],"_revision_number":4},{"id":"5a99485c7f39e22ec01a036c67657b1ccacc062f","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-02-19 21:58:06.000000000","message":"Patch Set 4: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/9a33a8a60f6c41b4acd59c467afca18e : SUCCESS in 4m 14s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d63b041bc51c4ed5837e0106d8bde96f : SUCCESS in 11m 33s\n- grenade-py3 https://zuul.opendev.org/t/openstack/build/0115cfaff19743b88f0c2fd7d082c48e : SUCCESS in 1h 02m 10s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/20104eaabe914114be2bcbcef2dcdf9e : SUCCESS in 54m 20s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/df09e1c279bc46f8b58ddce494b20199 : SUCCESS in 14m 32s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/83014e10e20748818179fbfa2662839f : SUCCESS in 11m 16s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/e7c3243d139748d982bfcef72d0c3382 : SUCCESS in 13m 40s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/1487737230934d3b878bf9da25b2644e : SUCCESS in 15m 18s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/e3a64c9001204621b9f3d364baea68a3 : SUCCESS in 21m 33s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/6d8d7e8aa27e44cc8ae687b75b45ef43 : SUCCESS in 20m 29s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/7e07668688cb44329d0f32012720451c : SUCCESS in 13m 53s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/abed8e704b16439f92af75e85d6ac327 : SUCCESS in 14m 31s\n- swift-tox-func-domain-remap-staticweb-py27 https://zuul.opendev.org/t/openstack/build/5b4ada66ec204a7e9c6db26ee5b0741d : SUCCESS in 15m 55s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/2e383177fc854522bafb80449ad3defd : SUCCESS in 11m 59s\n- swift-tox-func-s3api-py27 https://zuul.opendev.org/t/openstack/build/1fc738eadb5447e7916b541d92982fa3 : SUCCESS in 18m 03s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/4150ed36e2cd471baeb00294dcb72078 : SUCCESS in 11m 18s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/a452af3ae818480f9150a0a912b871c1 : SUCCESS in 17m 51s\n- swift-tox-func-domain-remap-staticweb-py37 https://zuul.opendev.org/t/openstack/build/499e8a1bc5a349f1ad427521f2ef9977 : SUCCESS in 13m 39s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/d74b7457ea7247a798d9b929b1850104 : SUCCESS in 18m 38s\n- swift-tox-func-s3api-py37 https://zuul.opendev.org/t/openstack/build/cdae33ef2993468394565ca16053803d : SUCCESS in 20m 52s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/4c1736e76c5844b9b2cbec2252698313 : SUCCESS in 25m 10s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/853d44902f354f3bba8c69c08bdcb8de : SUCCESS in 50m 44s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/51ba164bd9514e0097ab9e0c33896a96 : SUCCESS in 32m 16s\n- swift-dsvm-functional-py3 https://zuul.opendev.org/t/openstack/build/ba1895921d8244c48ddf10f6a133e0cd : SUCCESS in 40m 23s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/816591fa6064431aa1521168058a023a : SUCCESS in 39m 37s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/8648bcdd94554d7da2aebb892897877b : SUCCESS in 16m 54s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/a1251077928a45e0b86734b0dcd6fe3f : SUCCESS in 7m 34s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/467c19dae11e4477a7b50315972cadda : SUCCESS in 31m 45s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/15846179ccf34204b6e3fff19d0d675d : SUCCESS in 58m 36s","accounts_in_message":[],"_revision_number":4},{"id":"162f4dbefde8049552121b09ccfb4ec8bccd8337","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-03-05 16:03:10.000000000","message":"Uploaded patch set 5.","accounts_in_message":[],"_revision_number":5},{"id":"38848b98638b1002f5e442bfb18ed60dd565c44f","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-03-05 16:24:53.000000000","message":"Uploaded patch set 6.","accounts_in_message":[],"_revision_number":6},{"id":"1ba60a7423318a32998a7c3e043f370f1d9b7518","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-03-05 18:34:25.000000000","message":"Patch Set 6: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/793c91a7eba745f3996e43b115b75107 : SUCCESS in 3m 09s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/8a727f8c18f84deba533b02c82c4108a : SUCCESS in 8m 33s\n- grenade-py3 https://zuul.opendev.org/t/openstack/build/83552040af5f47f89860df0bc95688b2 : SUCCESS in 1h 00m 22s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/7371eb7a10e6467ebc20a080f8459255 : SUCCESS in 52m 36s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/96230d00f74b4d4e9b54bfcc9640f66a : SUCCESS in 9m 36s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/39040691183e4d5db986fc9c9be008a0 : SUCCESS in 10m 02s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/171b8d903050446ab0980ee2542a7c71 : SUCCESS in 12m 43s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/4dee0d97910440229352aca68d4b5f35 : SUCCESS in 16m 45s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/ee0d290c32c343afa7538c14aa135e9e : SUCCESS in 12m 32s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/a58ccaa790de481181da8c7813e842db : SUCCESS in 17m 28s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/dc3d7eeda9f24203832b32b94d2739fe : SUCCESS in 17m 11s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/474ee066e2644aafa8f6abe1d488d99a : SUCCESS in 20m 29s\n- swift-tox-func-domain-remap-staticweb-py27 https://zuul.opendev.org/t/openstack/build/108913d3c548480cb83890172278e36d : SUCCESS in 18m 13s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/fd6117b4e1cc4e93a8663d83ae039804 : SUCCESS in 10m 53s\n- swift-tox-func-s3api-py27 https://zuul.opendev.org/t/openstack/build/ce5400f4caa24154884549e82905a2c8 : SUCCESS in 14m 56s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/1a534ff0016b4d9f86f26272804e78da : SUCCESS in 11m 01s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/44366451ba424bd890c171c0daf09a2c : SUCCESS in 14m 02s\n- swift-tox-func-domain-remap-staticweb-py37 https://zuul.opendev.org/t/openstack/build/567c0d3f17444ff9b6a0c1922e823048 : SUCCESS in 14m 46s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/7899b719b0ea45678b298bc283decc47 : SUCCESS in 15m 40s\n- swift-tox-func-s3api-py37 https://zuul.opendev.org/t/openstack/build/c7c79fa31ae34676819f74726e951a60 : SUCCESS in 14m 53s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/3a1dccfdc91b458c977788fa48fb85cb : SUCCESS in 27m 48s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/0675528af0b445de8778e55ec39c39a6 : SUCCESS in 48m 45s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/acab48ab24b4484da4fdd1d0c8d44cb2 : SUCCESS in 36m 02s\n- swift-dsvm-functional-py3 https://zuul.opendev.org/t/openstack/build/0d11ec316d4146c88d07da6d2b8a06c4 : SUCCESS in 30m 23s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/62235ba2ca924c68a920513de6f4a831 : SUCCESS in 30m 27s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/a829a1d054ff4ad58d292f35677c2d04 : SUCCESS in 15m 36s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/20b15ab1bd3a4c419c04526be09da00b : FAILURE in 7m 09s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/71cec7bffb3c494b999b066048ddfae1 : SUCCESS in 21m 37s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/8d0f8e39f4eb474cb48fb1f8a781b1c5 : SUCCESS in 57m 39s","accounts_in_message":[],"_revision_number":6},{"id":"ea0bf201a32deb0173ac4a39705b98d728b83605","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-03-06 00:45:54.000000000","message":"Patch Set 6:\n\n(3 comments)","accounts_in_message":[],"_revision_number":6},{"id":"a619d00daf844809877431f67da548a763d83188","author":{"_account_id":13852,"name":"Romain LE DISEZ","email":"romain.le-disez@corp.ovh.com","username":"rledisez"},"date":"2020-03-06 18:15:13.000000000","message":"Patch Set 6:\n\n(5 comments)\n\nThe watcher thing looks okay, but I\u0027m not a big fan of including the dark_data_watcher with it. I understand there is a need for it but it does not look reliable enough to me in an eventually consistent cluster. I\u0027m afraid it could lead an operator to delete data he should not delete.\n\nThis watcher could be in a separate repo. Do we have a list of tools that are not officialy supported but might be useful?\n\nWhats were the other usecases for watcher feature?","accounts_in_message":[],"_revision_number":6},{"id":"0de39a324a94eb9b1f693ba832ee1200aa4e45c3","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-03-09 23:56:07.000000000","message":"Patch Set 6:\n\n(5 comments)","accounts_in_message":[],"_revision_number":6},{"id":"ce167d74f63ceebb5d68ef85b25dca5d0df9a6a0","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-03-10 03:13:10.000000000","message":"Uploaded patch set 7.","accounts_in_message":[],"_revision_number":7},{"id":"01b1b79c88cfd93760e6b41ce89a933eab220424","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-03-10 04:27:30.000000000","message":"Patch Set 7: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/fb2214aaf4044592879182856e1962b6 : SUCCESS in 2m 28s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/04a7536239f0410d93b7ac1626fb96fe : SUCCESS in 7m 30s\n- grenade-py3 https://zuul.opendev.org/t/openstack/build/4ba7b00ec64644d490fde83636da11bb : SUCCESS in 1h 01m 15s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/b3ddfb0896b7497daaf9dcec79a8df9e : SUCCESS in 58m 21s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/6f63a31819bd4ac3950d01cdb7b14b85 : SUCCESS in 8m 48s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/1cef169d8e714ba8a42515b1dcc213d1 : SUCCESS in 9m 19s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/36ee004750ee4e9d8207542f7a363a48 : SUCCESS in 12m 51s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/709d9d6e28744f2e9e29f326e127ce28 : SUCCESS in 14m 57s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/d5aadfcebd0545168a2c0fddc1ceb0a7 : SUCCESS in 11m 25s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/ab807fa5d190499692fabc36a326785d : SUCCESS in 15m 42s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/dec6e6bd6e264b739c3e0edec7d6c27a : SUCCESS in 9m 25s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/e67119efd44e4b7ba04f0914bce77d9c : SUCCESS in 15m 33s\n- swift-tox-func-domain-remap-staticweb-py27 https://zuul.opendev.org/t/openstack/build/9ff1be4836954de5ab739101f65498ec : SUCCESS in 10m 36s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/eed75ca607bf4b7fa92840698cf58d1e : SUCCESS in 10m 09s\n- swift-tox-func-s3api-py27 https://zuul.opendev.org/t/openstack/build/3e38aace65494f4a9d8d5f0bab6d6d30 : SUCCESS in 17m 22s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/ec062e7507594fbd89583eaa7f7e40bd : SUCCESS in 9m 46s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/cadc0935a1ad41dbab7b2da137e5d3bd : SUCCESS in 12m 53s\n- swift-tox-func-domain-remap-staticweb-py37 https://zuul.opendev.org/t/openstack/build/bc54c577c9cf4e1192fb62f7a2496f54 : SUCCESS in 13m 12s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/704a5e2e8d2d4eb9af0cfd701e60173b : SUCCESS in 10m 51s\n- swift-tox-func-s3api-py37 https://zuul.opendev.org/t/openstack/build/b22a1ff17f554ea69316a3201ee1c608 : SUCCESS in 15m 42s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/6adb44b3d7b149f3986d84048119c694 : SUCCESS in 18m 51s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/7b9e7122da594c998b8892a3e1aa1481 : SUCCESS in 48m 34s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/8ddc17fce1f2489b8333b5b7df1d2657 : SUCCESS in 30m 03s\n- swift-dsvm-functional-py3 https://zuul.opendev.org/t/openstack/build/f4db44cddf5444b59db095a0663b0b35 : SUCCESS in 29m 06s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/9adca3d464b742db9a545b4378e59a9a : SUCCESS in 34m 14s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/766f1deeaf484e64919762d0dcbfcb8f : SUCCESS in 13m 27s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/3f7aaa2e1ef6483e816530506a71a1f5 : SUCCESS in 6m 12s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/3954a9023a5e42d5bba2fc6b25b2b4b3 : SUCCESS in 25m 15s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/289df6f6d68548c8b6ad00c789f072af : SUCCESS in 1h 08m 49s","accounts_in_message":[],"_revision_number":7},{"id":"2215f5d2258215d6b5dc1d9ff247e545b5fa5fb7","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-03-11 17:49:53.000000000","message":"Patch Set 7: Workflow-1\n\nWoops, I managed to kill David\u0027s contribution with the latest upload.","accounts_in_message":[],"_revision_number":7},{"id":"31c77267aaa754849ffd5754ba6045c430097dcc","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-03-17 00:00:21.000000000","message":"Uploaded patch set 8.","accounts_in_message":[],"_revision_number":8},{"id":"8fc79963d1d79504540c07b985729779794a86a0","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-03-17 00:04:33.000000000","message":"Patch Set 6:\n\n(1 comment)","accounts_in_message":[],"_revision_number":6},{"id":"92cab6b43d92cc79307d0437ca3b61bb4b6f5048","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-03-17 00:04:46.000000000","message":"Patch Set 8: Workflow-1","accounts_in_message":[],"_revision_number":8},{"id":"067d2c5f83e0072667b30d77233242459e751f25","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-03-17 00:48:38.000000000","message":"Uploaded patch set 9.","accounts_in_message":[],"_revision_number":9},{"id":"49f4000309af3bbdec3ff859ee6cf397df183e06","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-03-17 01:57:50.000000000","message":"Patch Set 9: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/bd4ef2bf397343e7b9c4c518fc72ef01 : SUCCESS in 2m 32s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/bacb173736694c97a254ad83a1eca985 : SUCCESS in 7m 42s\n- grenade-py3 https://zuul.opendev.org/t/openstack/build/1d8c33a440f84b29b404a2cb0d43d7c0 : SUCCESS in 1h 08m 04s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/1cb6059a547941488d8d81b015a38971 : SUCCESS in 57m 48s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/05c6a6bba25245828acc6555d7d1562f : SUCCESS in 8m 58s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/73fea337eb964e82b1cb42b7ed7b1cfb : SUCCESS in 10m 04s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/8b602567b96a4cdea6093cc47e61d811 : SUCCESS in 11m 42s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/a11a866aad8f403b91b41e2e9cf13135 : SUCCESS in 12m 00s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/0268cca4222841bb933c8ddc2161ca15 : SUCCESS in 13m 25s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/02eda88a84394ce29f247892f098e77f : SUCCESS in 14m 14s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/141e33e119364977b79f52be3dd76aed : SUCCESS in 9m 28s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/78c2141767a44117a8d8a54c1a957875 : SUCCESS in 15m 01s\n- swift-tox-func-domain-remap-staticweb-py27 https://zuul.opendev.org/t/openstack/build/649b5f7832fa4426aa8b21488caed6b6 : SUCCESS in 10m 25s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/f03ac1928ce141959e7b15fc6cc819dd : SUCCESS in 10m 34s\n- swift-tox-func-s3api-py27 https://zuul.opendev.org/t/openstack/build/87eb5466e6b848bdafcdb71b6309b640 : SUCCESS in 18m 20s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/e417889faff14254a5291a84df6efc2a : SUCCESS in 9m 51s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/0430a31d60f14d31acb77c22146ef722 : SUCCESS in 12m 50s\n- swift-tox-func-domain-remap-staticweb-py37 https://zuul.opendev.org/t/openstack/build/6d0a5deef096486ba77c4b7928f272ba : SUCCESS in 11m 50s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/992636a9966f45658988da33fb1b72bc : SUCCESS in 10m 45s\n- swift-tox-func-s3api-py37 https://zuul.opendev.org/t/openstack/build/0754cc8cc276456d814f856cdefcb94a : SUCCESS in 15m 12s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/5c4df11ab77e43f7a4021226b1f41469 : SUCCESS in 20m 03s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/c84f31eec12a4343889ddbcfb7df54be : SUCCESS in 47m 47s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/b5c98e1c6d6b4d30aa1c4a55c2b2438f : SUCCESS in 29m 41s\n- swift-dsvm-functional-py3 https://zuul.opendev.org/t/openstack/build/569ef15d07e8444a8b1dd6cca8aca783 : SUCCESS in 28m 49s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/8fbcd400e669451eb666f9abb68c60cb : SUCCESS in 36m 36s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/dc7b73bfddef471080685980d46809c2 : SUCCESS in 11m 48s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/f81d6007b32c40f98a5ae70c22f54e33 : SUCCESS in 6m 43s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/e355e7da47d14b94bcdb0087ca665e31 : SUCCESS in 30m 20s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/90db360e82cc4e2bbec1297742dcf141 : SUCCESS in 59m 55s","accounts_in_message":[],"_revision_number":9},{"id":"89200a507adb1b9e2d92b7a870aae1ca501933fb","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-03-17 03:55:41.000000000","message":"Uploaded patch set 10.","accounts_in_message":[],"_revision_number":10},{"id":"f673cdd2656365e6963283b888926bc346c3c550","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-03-17 04:07:49.000000000","message":"Patch Set 9:\n\n\u003e The watcher thing looks okay, but I\u0027m not a big fan of including\n \u003e the dark_data_watcher with it. I understand there is a need for it\n \u003e but it does not look reliable enough to me in an eventually\n \u003e consistent cluster. I\u0027m afraid it could lead an operator to delete\n \u003e data he should not delete.\n\nThe dark data watcher is disabled by default. And, if it\u0027s\nenabled, it\u0027s not going to be set to delete by default\n(currently it does not ever delete anything).\n\nThe worst case of dark data that I saw had something like\n10,000 objects. I managed to cobble together a list using\njust shell, and then delete them. It can be done. What this\nwatcher brings to the table is a possibility where I tell\ncustomers how to enable it. There\u0027s no way to tell them\nto run some very ad-hock scripts, hand-edited to suit.\n\n \u003e This watcher could be in a separate repo. Do we have a list of\n \u003e tools that are not officialy supported but might be useful?\n\nThree used to be some, a very long time ago. Notmyname maintained\nthat list, I think.\n\nGenerally I\u0027m against putting things into separate repositories.\nThis is how we ended with swift3 that bounced under Tomo\u0027s successors\nuntil we re-incorporated it. If it were up to me, I would\u0027ve pulled\nthe swauth into the main repository too.\n\n \u003e Whats were the other usecases for watcher feature?\n\nOnly what Sam put into the changelog: additional checking against\npatterns and on-the-fly conversions of the data formats or layouts.\nThe dark data was something that came up in my personal practice at\nRed Hat. If you have a use for this, by all means we can add any\nnecessary extensions in the API.\n\nNote that all those were in Sam\u0027s head and DD watcher exists.\nI think we ought to have some kind of a reference user for\nany internal API.","accounts_in_message":[],"_revision_number":9},{"id":"b35e84d4802b4a33e8c25b823a2b545b709f3528","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-03-17 05:08:06.000000000","message":"Patch Set 10: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/8a42419d66de4394a7ff41e242cd0461 : SUCCESS in 2m 35s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/9fdcabc97f1840f892dc84c5173dca2b : SUCCESS in 8m 26s\n- grenade-py3 https://zuul.opendev.org/t/openstack/build/80cd011097c4431ba99c5676d8deedbd : SUCCESS in 58m 08s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/233cfb5dcd054feb89dd3f7e4c4cdc22 : SUCCESS in 56m 24s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/8516936f2ba3460fbdfc1cd2a52c1c31 : SUCCESS in 9m 00s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/c587f97156634b2faad1c68443963617 : SUCCESS in 10m 40s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/b7346c4ce8e84b4693ce6044bef7be11 : FAILURE in 21m 23s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/e4af5689617d4415b678a8ace6a4c873 : FAILURE in 13m 28s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/929c807057c4464c8c25da619c09506b : FAILURE in 21m 09s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/21ce11a546f143c59b9756a110c58b9e : FAILURE in 18m 16s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/29773ef408764983ad8289491f8d4109 : SUCCESS in 18m 59s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/a7e6b593348c48e5b1910e7954adeef7 : SUCCESS in 20m 54s\n- swift-tox-func-domain-remap-staticweb-py27 https://zuul.opendev.org/t/openstack/build/c28699b9b6054cf98f7509196f2b9280 : FAILURE in 19m 20s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/8462b4e9b6094488b800e36adc2253e2 : SUCCESS in 17m 29s\n- swift-tox-func-s3api-py27 https://zuul.opendev.org/t/openstack/build/1b90ca0c2b124e018411a7ffefeeb094 : SUCCESS in 20m 18s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/9fd4562d31034cb88c1701a784b9d5a3 : SUCCESS in 17m 38s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/da3cbddf45e14ce699fbc78804419106 : SUCCESS in 23m 32s\n- swift-tox-func-domain-remap-staticweb-py37 https://zuul.opendev.org/t/openstack/build/c6c8e1e68e684cd5b2408239e4518d24 : SUCCESS in 10m 08s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/23fae7d78da14fd89760c0ce2304c80c : SUCCESS in 19m 35s\n- swift-tox-func-s3api-py37 https://zuul.opendev.org/t/openstack/build/16e016fe314b4a96b9478ba79a21f73e : SUCCESS in 24m 59s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/add4a0cadb194aa095dcdf25d4d7e854 : SUCCESS in 41m 33s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/43ef720d4d5840799b4c05e907ee45d8 : FAILURE in 1h 00m 51s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/9dadff8b155e48ebbf27ae2505ff832a : SUCCESS in 34m 12s\n- swift-dsvm-functional-py3 https://zuul.opendev.org/t/openstack/build/732ceed8f5c640fc820d418b0f1e4296 : SUCCESS in 34m 41s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/b7e8cc642e75452a9f0ff8a2365bd45f : SUCCESS in 39m 03s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/34621909be1546128db819db7fd982ef : FAILURE in 11m 03s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/d42cd1fe451e44a3bec35c3bb1d250b2 : SUCCESS in 5m 53s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/23f3b13b0b2a46b9a80cf923f3295a3a : SUCCESS in 34m 56s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/fa8b1a4527b447d2891a8a21d8849300 : SUCCESS in 55m 35s","accounts_in_message":[],"_revision_number":10},{"id":"6e3bc8ccf8cf37e510b81fabec3fdf881230eeb6","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-03-19 02:45:52.000000000","message":"Uploaded patch set 11.","accounts_in_message":[],"_revision_number":11},{"id":"51d7fe9ed150cf9c2e102aaf80e1869dc1ef586d","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-03-19 03:47:46.000000000","message":"Patch Set 11: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/a12c9a494e6c4bf9904aed416553f871 : SUCCESS in 2m 36s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/b336f664609347fe99148c360ea966b5 : SUCCESS in 9m 25s\n- grenade-py3 https://zuul.opendev.org/t/openstack/build/23326b4fd9734f7ba6fdd01e6a784754 : SUCCESS in 57m 23s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/35209ae9d21747e593b815d77ad1c42a : SUCCESS in 51m 16s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/3e576598db30481aa0e1847b13625c48 : SUCCESS in 9m 27s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/c68333768fa7479bba98a9e0900edcfb : SUCCESS in 9m 32s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/6adb725185034d9eb703f22f6f990699 : SUCCESS in 12m 19s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/77936a09fb864c89818ba2da1cf967ed : SUCCESS in 12m 45s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/8eec90fea61847c4bd4d4768f00bed9f : SUCCESS in 12m 24s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/51debb5b205f4d2f9d773dffb3ab56dc : SUCCESS in 22m 34s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/caedd421c5024b0bb4036bcf672587b6 : SUCCESS in 9m 55s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/fada044ca47140ad882589abc56a8b2b : SUCCESS in 12m 35s\n- swift-tox-func-domain-remap-staticweb-py27 https://zuul.opendev.org/t/openstack/build/48902fdc8f634787919cb234c3c3d9d4 : SUCCESS in 10m 17s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/f742d6e20dc04a33a68523015ba1df0a : SUCCESS in 10m 31s\n- swift-tox-func-s3api-py27 https://zuul.opendev.org/t/openstack/build/bb051b6278344faf93fe0ce42ebdd1b5 : SUCCESS in 19m 18s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/a7cb16ff675743358d35eca33acf36f6 : SUCCESS in 11m 51s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/ff0b8a88aeff42799db78bdc34787b38 : SUCCESS in 12m 21s\n- swift-tox-func-domain-remap-staticweb-py37 https://zuul.opendev.org/t/openstack/build/ae4a48b98283421c8e6901b5b38ff962 : SUCCESS in 10m 35s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/c43a5352188843e5aa29192f1a4903c8 : SUCCESS in 11m 18s\n- swift-tox-func-s3api-py37 https://zuul.opendev.org/t/openstack/build/9c58080b7a764430bc38c03d5f060b2c : SUCCESS in 15m 20s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/5279fe2f05414873bdd6d0d19e63795b : SUCCESS in 18m 35s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/334a21920e7847e0b9d2d07c55939dfa : FAILURE in 48m 28s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/057284130764424387ca8f6ed0dd1b74 : SUCCESS in 30m 30s\n- swift-dsvm-functional-py3 https://zuul.opendev.org/t/openstack/build/21fd10cdea574dcfafc6f5a63dffb587 : SUCCESS in 29m 27s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/bbf8b92f577a4d43b1a4edf81e7a3149 : SUCCESS in 30m 11s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/0e67530e063747ee9cfe3ab0c103b7ed : SUCCESS in 11m 30s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/14a00243592c42a08ce1769310f31276 : SUCCESS in 5m 54s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/526c06867fc042c5adcade925aa69fe3 : SUCCESS in 21m 15s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/259dba94f1ae45639485e30d5603af47 : SUCCESS in 56m 48s","accounts_in_message":[],"_revision_number":11},{"id":"31ac26ded7f9a4dc50be8fbb6e1512a25022dd0c","author":{"_account_id":25251,"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","username":"alecuyer"},"date":"2020-04-01 16:27:45.000000000","message":"Patch Set 6:\n\nI think Romain\u0027s concern is that you may remove objects that are not \"dark data\", but info is in async_pending files. Maybe having a mode that just reports objects rather than removing them immediately would help? Otherwise I like the idea and I can see how that could be useful.","accounts_in_message":[],"_revision_number":6},{"id":"822caa1a40d8e0e8a2613797233438356db208d8","author":{"_account_id":25251,"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","username":"alecuyer"},"date":"2020-04-09 16:26:09.000000000","message":"Patch Set 11: Code-Review+1\n\nUh, and it does only log.. sorry about the previous comment. I think it\u0027s a good and simple example to use an auditor plugin. Tried it on SAIO and it works fine when adding the provided sample config to the auditor section","accounts_in_message":[],"_revision_number":11},{"id":"b50eef7c87aa3f6f7ea818ff13a03bb97d579e39","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-05-20 15:03:50.000000000","message":"Uploaded patch set 12.","accounts_in_message":[],"_revision_number":12},{"id":"873a59e441ce717ee13271595e23ffd24cceb915","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-05-20 18:14:50.000000000","message":"Patch Set 12: Verified-1\n\n(24 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\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/4de40c560a924e5ea4ff51d80bedbc30 : SUCCESS in 5m 58s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/8f3bbd9453df44709b02261e8a30cfb3 : SUCCESS in 9m 38s\n- grenade https://zuul.opendev.org/t/openstack/build/a37938fec1294d448afd7e09108bf8ab : SUCCESS in 1h 06m 02s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/1fd181bdf7dd49ff8bbbb88d57894999 : SUCCESS in 46m 30s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/819db3c844a84fed9bea42b43cb45508 : SUCCESS in 10m 55s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/e96423cdc6674befa9acf056352ef57b : SUCCESS in 13m 55s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/bc60a55df10e4801bc515bcbcd25f716 : FAILURE in 20m 12s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/7da3293605ec4ca6a5ecc310f1c43fcc : SUCCESS in 21m 25s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/1320642a14a14607b4628d73b4b15aae : SUCCESS in 15m 20s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/76dc7ed80fc74807bfe860dfcda56943 : SUCCESS in 16m 39s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/384229c802e244a4b37b566f14fc1b77 : SUCCESS in 16m 40s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/663a3fbc919e4fb69a2183d56dc1da9d : SUCCESS in 14m 08s\n- swift-tox-func-domain-remap-staticweb-py27 https://zuul.opendev.org/t/openstack/build/6f5ef73cdb324d6982aefd230b939c2d : SUCCESS in 19m 55s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/fb28c1c43cc64aaab35f6e2bf921b245 : SUCCESS in 15m 15s\n- swift-tox-func-s3api-py27 https://zuul.opendev.org/t/openstack/build/b0726883687744e391cb471abf20b2b7 : SUCCESS in 23m 53s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/d00ce758eb4c40d2ac7bc8a60977964f : SUCCESS in 14m 54s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/55773f9f34bd4288bf4833e05097d30f : SUCCESS in 15m 29s\n- swift-tox-func-domain-remap-staticweb-py37 https://zuul.opendev.org/t/openstack/build/6e3f434df7fd45f382da5f37f21cb21a : SUCCESS in 19m 04s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/12644c8d2d3d43e6a44c69627c4d450c : SUCCESS in 15m 35s\n- swift-tox-func-s3api-py37 https://zuul.opendev.org/t/openstack/build/f89ecc6c3d1b4921ab3b9393d5530ca7 : SUCCESS in 18m 50s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/31552d44c89146809bf9a273e9b648af : SUCCESS in 26m 19s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/3edf07f6e82047038e3ffc118dbc773c : FAILURE in 24m 08s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/3595276a948846c882643880952bdfe6 : TIMED_OUT in 50m 32s\n- swift-dsvm-functional-py3 https://zuul.opendev.org/t/openstack/build/06c6033781f44fd6a8c2390a0a504321 : SUCCESS in 47m 34s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/0c0438cff024421bbe573ddb22c05ea6 : TIMED_OUT in 48m 40s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/51e531675c8b409c9a05e583e67a757f : SUCCESS in 19m 58s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/3c10d0ddaa9545a195ccecdb8aa3806c : FAILURE in 9m 30s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/6868042afeae4cae913af2adb547bc9a : FAILURE in 15m 55s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/29f9c71bd5df476aa1a3430c50b42c0b : SUCCESS in 1h 03m 52s","accounts_in_message":[],"_revision_number":12},{"id":"b3d51117a69c8b6eef140baa3e09d31f4a679e44","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2020-05-30 05:28:06.000000000","message":"Patch Set 12:\n\n(2 comments)\n\nGetting this loaded into my head a bit for next week.","accounts_in_message":[],"_revision_number":12},{"id":"c505b8cde7cc7981a5130ffe89e2e8ffbe5d811a","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-06-01 14:06:32.000000000","message":"Patch Set 12:\n\nThanks a lot, Tim. Will address your comments :-)","accounts_in_message":[],"_revision_number":12},{"id":"270c19f834f3f0147ec43dbe3a27ac29003e0966","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2020-06-01 19:45:58.000000000","message":"Patch Set 12:\n\n(10 comments)\n\nI threw some code up in https://review.opendev.org/#/c/732441/, feel free to squash in some, all, or none of it. Highlights:\n\n* Use direct_client to query containers\n* Put some error-handling in the WatcherWrapper, offering a little more isolation between watchers\n* Add a PrefixLoggerAdapter so watcher logs can be distinguished more easily","accounts_in_message":[],"_revision_number":12},{"id":"fe63efcb225328184b8aaa8583411811ffd0caa5","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-06-06 05:16:07.000000000","message":"Uploaded patch set 13.","accounts_in_message":[],"_revision_number":13},{"id":"3e54ea1574b09d71d48bdf9ff9ff6d45b100eb3b","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-06-06 05:19:53.000000000","message":"Patch Set 13:\n\nSquashed Tim\u0027s changes, they all were good to me. Will abandon the 732441.\n\nWIP:\n - Tim\u0027s comments about some of Sam\u0027s tests: multiple watchers,\n   crash isolation between them.\n - A couple of XXX, in particular container_nodes non-empty.\n - Implement quarantine/log/remove/repair selector like was\n   in old David\u0027s patch.","accounts_in_message":[],"_revision_number":13},{"id":"ecd75597e60bd6fcb50fdefc09b236d51e3a8ccb","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-06-06 06:40:06.000000000","message":"Patch Set 13: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/6998d90be6064341be1bc88f2096c9ce : SUCCESS in 2m 23s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/15b224f02fe143e2b5e8c1331207b0e9 : SUCCESS in 10m 45s\n- grenade https://zuul.opendev.org/t/openstack/build/de67c071424c4e32b16562c07828731a : SUCCESS in 56m 17s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/523e70ce1ea24e62b6dc30ae11062fd5 : SUCCESS in 52m 38s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/112235393fb2452d8a498b93f2b1521c : SUCCESS in 8m 14s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/80143abfb9bf4c058a2f80eaae63ce4a : SUCCESS in 10m 07s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/5d258b1709dd4415a5627e16d0d9bd68 : SUCCESS in 10m 17s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/9bd57f182a7f450580f7fed3d480253a : SUCCESS in 12m 40s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/9c3897c01e3c4b278e3240396c9ec037 : FAILURE in 40m 31s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/ce9dec64a6984f6cbe5e17a96325d6d3 : SUCCESS in 26m 36s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/1d5a9b2aa9d945af92d0f3f8c1902279 : SUCCESS in 32m 56s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/d96a1e8858ab41aaa2d6aa8aa7b2df63 : SUCCESS in 14m 57s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/a52301e23b8d4cb0a3cecffe5f35a314 : TIMED_OUT in 1h 02m 17s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/4099327e12914b26b183c88edf21ca0a : SUCCESS in 32m 55s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/f0ab2e2925e34527bda84e57e9ac95ce : SUCCESS in 18m 41s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/395ccd8a704449d5aff8645367f7af96 : TIMED_OUT in 1h 02m 23s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/f6532c3ccc0d4628b9e259cadd80866c : SUCCESS in 18m 59s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/b969a673509b429caaba5c7e6da556e4 : SUCCESS in 50m 01s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/a89e03ed41c443b5877c569b502eb8c2 : TIMED_OUT in 1h 05m 41s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/64fbd10eb025458abbc2e7d5c25a58e5 : TIMED_OUT in 1h 05m 22s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/d4297b6f77824f789ab5e86beeda0dbd : SUCCESS in 12m 24s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/f1d8c98dce7742c6bd2acc623f0b13dc : SUCCESS in 7m 29s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/7bd580fe6be84f58bd5df89e81ab984d : FAILURE in 7m 00s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/5265ea679074429ab25c405ea3029529 : SUCCESS in 1h 22m 19s","accounts_in_message":[],"_revision_number":13},{"id":"810a986522645609cdf8d93ec4a701c986d3ad77","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-06-10 14:04:17.000000000","message":"Uploaded patch set 14.","accounts_in_message":[],"_revision_number":14},{"id":"12cbbb6d687ed4df8ab125e51383adc2c5fb0ee8","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-06-10 14:08:11.000000000","message":"Patch Set 14:\n\n(3 comments)","accounts_in_message":[],"_revision_number":14},{"id":"fb5bdbdefc9a4e64617e559a9cc92b395e0abeba","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-06-10 14:38:33.000000000","message":"Patch Set 14: Code-Review-1\n\nHold on a second, seems like my changes were lost. Please always merge before \"git review\". I\u0027ll restore them real quick.","accounts_in_message":[],"_revision_number":14},{"id":"7b767be179782397471d494f58c6e7f587cf10cf","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-06-10 14:55:31.000000000","message":"Uploaded patch set 15.","accounts_in_message":[],"_revision_number":15},{"id":"216d7232a7f03126b5f59265a0f3423410b01a7a","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-06-10 14:57:44.000000000","message":"Patch Set 15:\n\n@Pete, sorry. Restored them. Will resubmit changes on the top.","accounts_in_message":[],"_revision_number":15},{"id":"6f119d4487c504d64ff3a1b2abe88d7b3343254b","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-06-10 15:15:05.000000000","message":"Patch Set 14:\n\n(1 comment)","accounts_in_message":[],"_revision_number":14},{"id":"c1d8d6f2de3141f2c5120c7ba228e56d5ae8bc97","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-06-10 15:20:04.000000000","message":"Patch Set 14:\n\n\u003e @Pete, sorry. Restored them. Will resubmit changes on the top.\n\nI think you didn\u0027t restore them, actually. The #15 still says \"unknown 2 ok 0 \" and uses FakeRing, not FakeRing1. But it\u0027s not a big deal, I have all of them saved on local branches. Just do your thing and I\u0027ll fix it all up once you\u0027re done for the day. Let\u0027s use time zones to our advantage.","accounts_in_message":[],"_revision_number":14},{"id":"a9bbfe92b232164bd4b6cf87562117d42677f53b","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-06-10 16:36:38.000000000","message":"Patch Set 15: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/d22f6669eb0b4eb2be6e23f276c7fb92 : SUCCESS in 3m 41s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/278c224b8be6420fbe16bb13a363c943 : SUCCESS in 9m 33s\n- grenade https://zuul.opendev.org/t/openstack/build/3bf57dec72b446969c37b04de08f810a : SUCCESS in 1h 07m 38s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/995ee5e24b8943db8f5a8e573f861e5f : SUCCESS in 45m 21s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/eb9e9908dff24331ac2c059f5c37e210 : FAILURE in 9m 07s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/1a911b22b54c4e9bb37b4818e76887a5 : SUCCESS in 10m 10s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/6d26c29722bb43a69cf0f1fad4478633 : SUCCESS in 14m 09s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/83aac7713d4f4cd58303c31f7503615b : SUCCESS in 17m 25s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/47ff3b34518a42d5b99941c50277ca09 : SUCCESS in 16m 25s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/c6d583dc301042a0b343ad4367be5954 : SUCCESS in 28m 46s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/69e4e71f8c04439fbff825cd32a274f6 : SUCCESS in 16m 40s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/559c1ca11a484645b2eff4c51b9a2e78 : SUCCESS in 16m 27s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/ea07f5e1b7fe49d0aac82b01ae1e6ee8 : SUCCESS in 18m 41s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/49d9709312df4445b6fed14db46c0b7d : SUCCESS in 22m 43s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/cdb4819939894c1fa83226d9e9db2f20 : SUCCESS in 22m 24s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/1ac9d83f29734713852840f8d3170388 : SUCCESS in 22m 57s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/164ad2c1ee3249348f57251d30a87694 : SUCCESS in 23m 24s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/5b01949f2b784b619db762dde8821064 : FAILURE in 48m 52s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/f6db30502bd9410a8c4e4e1959167825 : SUCCESS in 39m 45s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/a45d212d998a427eb1787bfba497756d : SUCCESS in 49m 09s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/9447015885414749a8a7869227c22801 : SUCCESS in 13m 16s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/886bf74b4bb548389f327fbe773f70d5 : SUCCESS in 8m 25s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/cdbb67cb157a435ea264be1c83889882 : FAILURE in 8m 44s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/67f9f2b0733d4b1fab1a2499963b3497 : SUCCESS in 54m 55s","accounts_in_message":[],"_revision_number":15},{"id":"687c23303e24b55f077dd72165523e1761a99012","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-06-11 02:10:41.000000000","message":"Uploaded patch set 16.","accounts_in_message":[],"_revision_number":16},{"id":"544d33314397da1181b08e96fdde171766a73107","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-06-11 02:13:18.000000000","message":"Patch Set 16:\n\nThis should sync me and David, including Tim\u0027s request to\ndrop redundant _watcher suffix and some commented-out stubs.\n\nNow we only have this left:\n - Add add log/quarantine/remove/repair\n - Add a test for watcher interference and multiple watcher syntax","accounts_in_message":[],"_revision_number":16},{"id":"bd3417e5b29da8c7362a23380890fc3d8bdf29c7","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-06-11 03:17:30.000000000","message":"Patch Set 16: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/7a6fed8cc11d4cd28f5be368086a8a12 : SUCCESS in 3m 44s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/ddbcb14034a84335983469e26b57155c : SUCCESS in 11m 45s\n- grenade https://zuul.opendev.org/t/openstack/build/7f752a7c904f45bcb5b5ad401c479df9 : SUCCESS in 1h 04m 20s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/05a0a625ed2c4a61a61057c611d179cf : SUCCESS in 43m 49s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/8fde825189834fdb882718149744ae60 : SUCCESS in 11m 00s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/e97632da87314bdc977568cd8f1babe9 : SUCCESS in 9m 09s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/83e75521e374423396ebac5b7bb83898 : SUCCESS in 25m 26s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/ffa6e03f7f5a4cfa933d478fff24fa65 : SUCCESS in 25m 07s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/e12ad72c33ba42158ad8d588ddd068aa : SUCCESS in 25m 46s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/241371e10ab64fb2aa379c99f50d9d5b : SUCCESS in 25m 42s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/ce5ec38a0ce84f8f889a066faf33efbf : SUCCESS in 50m 50s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/2b33e697107b4a588b01cacba17942ee : SUCCESS in 51m 56s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/88dffb70685248b4bf32bfcb2d384ae9 : SUCCESS in 52m 56s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/cdb446e1fe17400e948570a9c4e01d03 : SUCCESS in 52m 37s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/cdeff04ce69a44739cc695bc9c124d46 : SUCCESS in 52m 42s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/f94ec3c65f5642349cc2dba4ebb8bd59 : SUCCESS in 53m 25s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/3fda84b53aa04a638dcd8138b7f3663e : SUCCESS in 41m 42s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/7f0c37e3305e4b7b9cfee7eca7c38800 : TIMED_OUT in 1h 01m 07s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/2e7d88dc2bc0449481fb3d869345973e : TIMED_OUT in 1h 03m 42s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/f305214673c645b5a5988dce1a6a2850 : TIMED_OUT in 1h 03m 29s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/30f4b0bba8054a648da7c1a3bea1850d : SUCCESS in 10m 26s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/01f00df5805c49cfae1441c5584415ff : SUCCESS in 8m 37s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/d2ff327f6aa24026ad241933d0afb1aa : FAILURE in 8m 11s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/18655f4b22544782a0bcd74ac94dc83e : SUCCESS in 1h 05m 05s","accounts_in_message":[],"_revision_number":16},{"id":"b238a998fecd6b26977e7f473f3bca97c718cc22","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-06-23 14:08:47.000000000","message":"Uploaded patch set 17.","accounts_in_message":[],"_revision_number":17},{"id":"e3e9262158d02a56f6b8f5baf1555331a01e3664","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-06-23 19:10:52.000000000","message":"Patch Set 17: Verified-1\n\n(12 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\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/e9be5374a9e846a9821a1f65efb6538b : SUCCESS in 3m 30s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/6d057eb0dffb4281a783c460183ea4ae : SUCCESS in 9m 50s\n- grenade https://zuul.opendev.org/t/openstack/build/6eb6842cb68746ecbd19fd36c3447a57 : SUCCESS in 1h 01m 16s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/700253b4f36c419883eb668bf90d1c0f : SUCCESS in 46m 42s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/70301c495b114f498923f8f6db3ccb68 : SUCCESS in 10m 18s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/b69e2c032aee4301a4b66b89f5624697 : SUCCESS in 10m 50s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/c7262b26c9cc49879a90ecbad8132797 : FAILURE in 20m 12s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/7f8d4d24b816489599c484aea1c60200 : FAILURE in 13m 49s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/c635d929e6e84e6ab0c82474e0011217 : FAILURE in 16m 20s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/d03092aa0d3f4f9494709313f6db04a5 : FAILURE in 17m 19s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/d24a31dfde354c64aca5516943f8e0fa : SUCCESS in 14m 33s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/0c528980cec7463d9801232894b69085 : SUCCESS in 19m 08s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/20d361c9076440ebb77d269cfc5c416b : SUCCESS in 20m 04s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/c6d8da4adeea43d79c7265746f8e1339 : SUCCESS in 19m 57s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/8f0834fffe46411d8faefe48354f06de : SUCCESS in 17m 51s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/46cf83c8361f4c8e9a68569952b13fd5 : SUCCESS in 22m 14s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/5d4ef87904204651bcb5ad7950487b98 : SUCCESS in 24m 41s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/0b5b109f02a54a9fb2166ffea22bc6a8 : FAILURE in 49m 16s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/443153a499774376ac38193a755fe1cd : SUCCESS in 33m 03s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/34123d3367524cfd8d9a3a58832f03a0 : SUCCESS in 47m 01s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/8ba67b2a21244f1b9452f40bd9ee30b0 : FAILURE in 11m 53s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/0428583db2204c499aec1c4a4f73a374 : FAILURE in 9m 50s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/24ef1d90d0c3490cb5fe7ce4661e6cdb : FAILURE in 14m 42s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/729c8271f7db4535a02d2dc473c0458b : SUCCESS in 58m 05s","accounts_in_message":[],"_revision_number":17},{"id":"b1bf30a0825fe13848f73949b472fd671879d426","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-06-24 16:34:15.000000000","message":"Patch Set 17: Code-Review-1\n\n(5 comments)\n\nSee what happens if we put implementation down. David identified an issue that Sam thought about (by adding kwargs) but did nothing to implement, that is per-watcher configuration. I didn\u0027t think about it at all. I\u0027ll do something to address it. Thanks, David!\n\nP.S. I think we better keep it pep8-clean even if it\u0027s unfinished like this.","accounts_in_message":[],"_revision_number":17},{"id":"2ac81cb750a4ae28086957120b94607604c149c2","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-06-26 02:56:32.000000000","message":"Uploaded patch set 18.","accounts_in_message":[],"_revision_number":18},{"id":"f0dec7f250e382e9c1a3efbfdf337f84f197bf1d","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-06-26 03:58:40.000000000","message":"Patch Set 18: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/6a9ef595dae6459ba717869de83faa92 : SUCCESS in 3m 21s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/dbb40d77236b442899e7c1bfb9448792 : SUCCESS in 8m 21s\n- grenade https://zuul.opendev.org/t/openstack/build/7aed9ac7d4ab4bf992ba0dab40d8acf5 : SUCCESS in 1h 00m 45s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/7ec67a2b9727418b887bb219c64697cf : SUCCESS in 47m 19s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/00d3b36381c2452da7d639808f3ad7a7 : SUCCESS in 8m 28s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/7566c844d63140b49da2765c66037830 : SUCCESS in 9m 51s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/1707fbf3e8b4402b8ab0f444c5370d31 : FAILURE in 13m 48s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/406656a6189948ddafa2c31d4692e0bd : FAILURE in 12m 54s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/a0a3c44e98674a63abe49a8c5a4c710d : FAILURE in 22m 16s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/e11a0d0e62514d90a3532f7dbe6997bf : FAILURE in 13m 03s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/d4da63b0553d464d8e746db2d4e20992 : SUCCESS in 16m 33s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/55c1aaf4d6d54ce3a33f7e7ee8ee383a : SUCCESS in 14m 24s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/b1b13936d05849618064341866eccb9d : SUCCESS in 16m 38s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/9f5a0016138148e7aa1136602b87e775 : SUCCESS in 15m 47s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/42d085f39f0b4529a5cea8d10a618065 : SUCCESS in 15m 16s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/a027cd0833aa4aedb839255a70ff8280 : SUCCESS in 17m 38s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/346b246a68d1410e88015b528fcc3552 : SUCCESS in 19m 51s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/af8da0a525704f529b8f96c7f08a5f74 : FAILURE in 38m 45s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/3fb572721a9142b6adb5c7789272f3cd : SUCCESS in 44m 27s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/f8f6d815d0894219be5427db892ed7af : SUCCESS in 40m 44s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/b9242344c0414688b30b6863e5c1b227 : FAILURE in 15m 00s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/39a896a5edc64b639543f1adfd61926b : SUCCESS in 5m 51s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/21335f48b5b04340b09ec1b94d632465 : FAILURE in 8m 04s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/33287d597d3d42aca1355418add85e43 : SUCCESS in 56m 32s","accounts_in_message":[],"_revision_number":18},{"id":"81fde4384b276dfb0f0849e700631efeaf1204fe","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-07-08 20:54:34.000000000","message":"Uploaded patch set 19.","accounts_in_message":[],"_revision_number":19},{"id":"ea81f41b5dc5ed731d072d07e2e06a97fb8c6697","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-07-08 23:41:51.000000000","message":"Patch Set 19: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/189c7badae8c4b848bda8df0f957bad1 : SUCCESS in 4m 01s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d0d3889d7f00493086e7aa3bc74d8c13 : SUCCESS in 10m 39s\n- grenade https://zuul.opendev.org/t/openstack/build/618c288c3f654ceeb9513b1c6a85beb8 : SUCCESS in 57m 04s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/f589efc2060641bdba2b91ca2e712f0c : SUCCESS in 44m 46s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/5b34a7b89eb4488b84d9f71db0890c6b : SUCCESS in 13m 20s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/2ac23a1ef6be448e9d6babd8a501e53f : SUCCESS in 11m 34s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/c1c75cb243ff45f2abd7a70a7c088bc9 : FAILURE in 16m 02s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/6c547210a06c4cbfad7b7c854f113a3e : FAILURE in 12m 28s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/c4b1b9c571b84ca9a2cefaa6a16a8d0c : FAILURE in 20m 09s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/e0c9081a379549c4ba250920b79314cd : FAILURE in 17m 55s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/f3d215d5fe6c4dc4a075ac4f41d74741 : SUCCESS in 25m 13s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/17d05db68d2841efb7761e0ccdb16146 : SUCCESS in 21m 00s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/de8640c65968477b90928bf9e6a6e2ec : SUCCESS in 19m 25s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/b77c3a8ba1dd484ca4843584a31e3607 : SUCCESS in 27m 44s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/24f2abec96fb4a16871625856403773a : SUCCESS in 28m 19s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/b0378aefa396466ea4f92eaf922c0a62 : SUCCESS in 26m 19s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/3bb40ec39a194566ac4d4d89fd90c012 : SUCCESS in 27m 31s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/81c6e9a7653042379ab984f60561b5d0 : FAILURE in 50m 12s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/c584c66906dc4aa3ae20b9401d3cf91e : SUCCESS in 45m 23s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/ef5c29b3c56a4cef96f8b9d3cfa6c43f : SUCCESS in 49m 55s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/9243f039c583441b94bb6531130764df : FAILURE in 15m 34s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/5f68e204daf84a779f74ee98e263d78b : SUCCESS in 7m 09s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/c16fbfdc52c64405b6411d6544c305e7 : FAILURE in 10m 23s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/e115e6bd22e34aa5a92bd17586b1671b : SUCCESS in 57m 56s","accounts_in_message":[],"_revision_number":19},{"id":"4eed8f7695a39d1f5275e6f2d705d165e12ca1be","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-07-09 15:11:26.000000000","message":"Uploaded patch set 20.","accounts_in_message":[],"_revision_number":20},{"id":"955d7dd46bd3d6b707864f69cc70d3e7634220fe","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-07-09 15:25:39.000000000","message":"Uploaded patch set 21.","accounts_in_message":[],"_revision_number":21},{"id":"336b927aa307a61fac7d99d1db13392b0cb90884","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-07-09 17:58:19.000000000","message":"Patch Set 21:\n\n(2 comments)","accounts_in_message":[],"_revision_number":21},{"id":"b726a439d67f9155acb2f8e1db967ac846ec0081","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-07-09 19:58:14.000000000","message":"Patch Set 21: Code-Review-1\n\n(2 comments)","accounts_in_message":[],"_revision_number":21},{"id":"6918e98df97019858bd5b228f35ae148872e3238","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-07-09 20:01:48.000000000","message":"Patch Set 22: Published edit on patch set 21.","accounts_in_message":[],"_revision_number":22},{"id":"1af0d5f29fd5dd1b0aab4ba4c6726a1daa6b3c9f","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-07-09 20:02:20.000000000","message":"Patch Set 22: Code-Review-1\n\n(see #21)","accounts_in_message":[],"_revision_number":22},{"id":"e139d23f37ce88be104d7185aef697470f305bcc","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-07-09 22:03:29.000000000","message":"Patch Set 22: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/738e515b169749819492cb8d91f0a761 : SUCCESS in 4m 03s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/96b45919309a40f2898b8fa668f7ff19 : SUCCESS in 8m 07s\n- grenade https://zuul.opendev.org/t/openstack/build/0648d5a6a4f847429ee48a0b42d1052f : SUCCESS in 1h 00m 46s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/a64f995fb13644fabff61310215e6cc1 : SUCCESS in 35m 24s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/f4bfa7df7ccd4e28af0a276075437a35 : SUCCESS in 9m 36s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/4e00cf9b8d134e78a4362c07b055001b : SUCCESS in 9m 57s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/3502a4a673c44dd4b061cf2fa91fedb8 : FAILURE in 22m 57s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/5e43a9f800314ab09e8254f2a7cd02b7 : FAILURE in 22m 50s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/96d9850d1bc04b9887ea336b7fe9660d : FAILURE in 23m 51s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/580f5a954a1f49e49825b2cefc4de997 : FAILURE in 15m 30s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/2ea96dcf83624e4faf9f3b1249bb4114 : SUCCESS in 41m 50s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/eaa523b926ea4837926947573a6edea7 : SUCCESS in 32m 43s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/cc1d149789474aeeb108a200631f219d : SUCCESS in 23m 12s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/e7135e214b064d128501e1e0d36d5bc2 : SUCCESS in 47m 14s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/94bff247d8ff4e60b2b67b8d0e555ed0 : SUCCESS in 32m 33s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/be67864f86a64e18af5414d43a69d576 : FAILURE in 24m 20s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/e7d40e3eb0f84b7ba9442952bd7ad143 : SUCCESS in 24m 51s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/eaf2bfda50bd44aeab289c3667012b60 : FAILURE in 45m 55s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/83f135aaae7d456d8d90097f93ea9ce7 : SUCCESS in 1h 02m 42s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/d421533cb7d94a31aec38635a8a4e5bd : SUCCESS in 41m 20s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/fd31aa1aaa76499f809f33dda042bc22 : FAILURE in 15m 03s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/a4860fc8357d49318fea10e8dfd31e59 : SUCCESS in 7m 03s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/06a2475fd2394e21a149ba4e1a8bf32a : FAILURE in 8m 50s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/989d060732fd4807a8094b2451c299ca : SUCCESS in 55m 34s","accounts_in_message":[],"_revision_number":22},{"id":"549d6229727a84b3cd4946aaa5d6d56d28b45c18","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-07-10 00:07:07.000000000","message":"Patch Set 22:\n\nI have fixes for what Zuul uncovered, but I need to step out for a couple of hours.","accounts_in_message":[],"_revision_number":22},{"id":"4a9b03f79a163d3c7b282913f7d5e293e9f5428b","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-07-10 04:17:51.000000000","message":"Uploaded patch set 23.","accounts_in_message":[],"_revision_number":23},{"id":"60d04d2f1b8b0196e9c5aad6bb9055b52aa34beb","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-07-10 05:07:08.000000000","message":"Patch Set 23: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/dd8232b7d60143dcb4348687c6f75337 : SUCCESS in 3m 12s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/be5081a11bf347dca417a21acf03efe4 : SUCCESS in 7m 05s\n- grenade https://zuul.opendev.org/t/openstack/build/7a840c2d4a814350bb607a3a2e026864 : SUCCESS in 42m 06s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/4d2a10ff25cc406a92edf9a8c282c51b : SUCCESS in 32m 00s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/f754abc8d86d43c5a0900edff3974652 : SUCCESS in 7m 13s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/1e9ea0c41d9948e0bb28a4e642cf04f5 : SUCCESS in 7m 59s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/43a21c30f0104ebbbb09466558109d66 : SUCCESS in 10m 47s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/d903e66fe4a94c729f1fb76717569a97 : SUCCESS in 11m 49s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/e528cbe361b6452abe97509b6d7aa3c9 : SUCCESS in 12m 13s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/64b9849220fa40789eb6e2a3702c7343 : SUCCESS in 10m 50s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/08486f975a2a49699b8e01aa5f6120a3 : SUCCESS in 14m 52s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/9e847e61048e41feb0b7373710f8e087 : SUCCESS in 14m 43s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/61c8f8f3953e4f5398fbc500e6d591ad : SUCCESS in 15m 31s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/eea74b855da643179b1ee854d7b9ae23 : SUCCESS in 14m 45s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/cb063efb41814403a08404eb4a8ed31b : SUCCESS in 15m 38s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/a136d66dd3b0479d8246b3ebbaabc875 : SUCCESS in 17m 03s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/4fb0e22c869545aab53284d6050926a4 : SUCCESS in 21m 02s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/02ea23c6ca354a078e54f493ce48f516 : FAILURE in 38m 19s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/1e4cd05de7574ec18ca92789f7838bd6 : SUCCESS in 41m 01s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/c8f8d07ba80e42af8f26c1ecb17a6f13 : SUCCESS in 44m 12s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/47ceb9d409954e7aaf2882a1383c4717 : SUCCESS in 13m 00s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/1a0c28df9e774b6090349ec053c1ec73 : SUCCESS in 6m 06s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/f7318307a91244a3a10bd8109c037ccf : FAILURE in 8m 48s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/6d284922e0fa4b4fbe4bd7a4f34a6b76 : SUCCESS in 35m 39s","accounts_in_message":[],"_revision_number":23},{"id":"32b4135973cad2476bee27044468e33cda83bc69","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-07-21 23:40:00.000000000","message":"Uploaded patch set 24.","accounts_in_message":[],"_revision_number":24},{"id":"ca7bee3f0ad14fa243fc295ce99e0101bfee0212","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-07-21 23:40:40.000000000","message":"Patch Set 23:\n\n(1 comment)\n\nand fixed swift-probetests-centos-7","accounts_in_message":[],"_revision_number":23},{"id":"499c6eaddc7a220440892dedcb6119356a48ded7","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-07-21 23:41:42.000000000","message":"Uploaded patch set 25: Patch Set 24 was rebased.","accounts_in_message":[],"_revision_number":25},{"id":"14f6b88785b97fae046e4d1df23e623c74ae50d4","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-07-22 03:32:13.000000000","message":"Patch Set 25: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/4c9025840cdf471fad0fbcc4268f7b15 : SUCCESS in 3m 43s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/340899887f584afea11214c5910970ab : SUCCESS in 8m 52s\n- grenade https://zuul.opendev.org/t/openstack/build/02ccbc87aa2b430f966f29c48c80840a : SUCCESS in 1h 05m 34s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/3a3d8255b9994ebdae82ee75f87690be : SUCCESS in 47m 30s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/2aed5ec5756e40c48e7ef8a7b1d37044 : SUCCESS in 10m 20s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/8f6970868d994505b8a1ba6bee1dbc0d : SUCCESS in 9m 25s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/96dadcb33a594850b538f17f1acdf806 : SUCCESS in 15m 04s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/d69d8406d6af4b149f64bbbc1c43624c : SUCCESS in 15m 06s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/32e73c729cc948068baf23b044c62f56 : SUCCESS in 14m 53s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/957ce3c2a90f43db83a1c807e0a1a90d : SUCCESS in 14m 00s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/840bdd3c2e4f4d439dfe2132ff9a47b9 : SUCCESS in 17m 19s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/68bead2ba5604ec7b2eeb60f8eed2459 : SUCCESS in 25m 41s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/56fa74380dfe4676be1190b56611b0d3 : SUCCESS in 18m 35s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/c057e5f5b5f648a59df7b25f22183bca : SUCCESS in 18m 02s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/8a5541f4618349ee936f5c79023baa8c : SUCCESS in 22m 35s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/e99a6440a5ea4ba9a24dbe1946f98065 : SUCCESS in 22m 11s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/986abd6fd27442a69398187fa1b67be8 : SUCCESS in 25m 22s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/c2eb83d793d74c298baceb9c8ff8afae : FAILURE in 49m 18s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/a8d48d36d42c47ce973c77895f83a3fb : SUCCESS in 49m 58s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/c9516cf220ae4f458fae3ea93cf55e04 : SUCCESS in 41m 35s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/0111f7a0a00f4511a7fa064266a77ae0 : SUCCESS in 16m 19s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/2daf6909019842f5af025fd18c7f9a52 : SUCCESS in 7m 24s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/86398997d8a047c196024bb61d9b9311 : FAILURE in 9m 11s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/ae39bd027b7c4b268fde2f8cc42378c2 : SUCCESS in 56m 09s","accounts_in_message":[],"_revision_number":25},{"id":"b2096828ad8178950c110da1cbc2ee4aaec7f575","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-07-22 10:35:31.000000000","message":"Uploaded patch set 26.","accounts_in_message":[],"_revision_number":26},{"id":"6f9bd191e14b66594f37a0bf0ff6526972ceb3dd","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-07-22 12:05:48.000000000","message":"Patch Set 26: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/35e3f54336e64c20be7a2f74c50c4ea2 : SUCCESS in 3m 55s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/b97fc7dfd8414d828a414fe2d54547ad : SUCCESS in 12m 01s\n- grenade https://zuul.opendev.org/t/openstack/build/e3fd212950b2474a994ae577bc81e4b1 : SUCCESS in 1h 06m 48s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/b16d510b0a4848c2a4fb090d5f9929a0 : SUCCESS in 31m 35s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/95e7e79b3f554220ab3c61640128febe : SUCCESS in 10m 39s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/3376073df6544208a31bec4cae6a7ee6 : SUCCESS in 11m 01s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/b4ff65b4dabb44eeacd41cd4998ba310 : SUCCESS in 15m 49s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/117e58431e13439f800dc147fccc868d : SUCCESS in 17m 44s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/137589275ba54eb0ab2bb6bcba0f5b82 : SUCCESS in 12m 51s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/524a10b29d7f43ce9afcb698c2b1de13 : SUCCESS in 13m 14s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/641e41f0670948d7a0d01980040bd29c : SUCCESS in 20m 39s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/083f80b669f4499ea377cb62748a2c43 : SUCCESS in 21m 29s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/58f5c81791d244928228e56aff2a837d : SUCCESS in 21m 55s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/fb3f093882c5485192a07fcba300eaaa : SUCCESS in 19m 38s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/7440ad9f909d421d9aa0737167f906cb : SUCCESS in 20m 56s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/a6012517fdbc495eb2b64fd5e33feb23 : SUCCESS in 19m 54s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/8307be5553d941cdbda4aa33c2483e54 : SUCCESS in 23m 13s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/143d9b569cd546cc8d90f53f1bdb7fc0 : FAILURE in 39m 51s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/9352bb0174e6451fb96d7ef9bbb3ea99 : SUCCESS in 43m 18s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/ad247d3771aa49baac22ec815adadc1a : SUCCESS in 46m 52s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/1ec26bd0bb354804827629a3e0889dd9 : SUCCESS in 16m 22s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/685ac32e99ef4299ad4c3e652977ab49 : SUCCESS in 6m 27s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/a94964a399ee452bbd171866423a0375 : FAILURE in 8m 10s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/80ab15606e4b46e78cf94c7fc4684656 : SUCCESS in 59m 38s","accounts_in_message":[],"_revision_number":26},{"id":"c1eb4e9de05b3493ab0e06d710570ec919442445","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-07-22 13:57:33.000000000","message":"Uploaded patch set 27.","accounts_in_message":[],"_revision_number":27},{"id":"410ff3c44c554e4c0367eae33ade0673b0f4bc4f","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-07-22 14:18:19.000000000","message":"Uploaded patch set 28.","accounts_in_message":[],"_revision_number":28},{"id":"f04e194ef87680f8ee37dc3aed9dd4efcf763e20","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-07-22 18:57:08.000000000","message":"Patch Set 28: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/420d32b3b4ca4fa394b9d609cd441bee : SUCCESS in 3m 20s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/ab1e914f1c9d4c79a8d348020bd6a14b : SUCCESS in 10m 41s\n- grenade https://zuul.opendev.org/t/openstack/build/8b8a8e4a85aa4167b7aa056f44185027 : SUCCESS in 1h 00m 26s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/9ec290a008364bc5b96415eff9fdb1bd : SUCCESS in 48m 31s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/5c708d34f39945a08f60cc164cbe5022 : SUCCESS in 7m 44s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/619a1a008bec4d0485a304f9236b319e : SUCCESS in 10m 54s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/8743f722c1a7481e800004fc210eff74 : SUCCESS in 16m 06s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/7239fdf5763c41ac88e658d765dbb9a8 : SUCCESS in 14m 48s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/95446ad3f47945498d766116c422ec9e : SUCCESS in 13m 58s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/b4e1c6f7d8c9457d85058b5b7507fd3d : SUCCESS in 14m 31s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/c5100a19ecbb4def83314e81a60d185a : SUCCESS in 19m 23s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/9f155fbfbd9a4a3a9eb2228f8e45efa3 : SUCCESS in 16m 08s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/9ce7134e35b54a559aed5d749e653fc4 : SUCCESS in 32m 55s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/59154f69326845f1b566470635567a79 : SUCCESS in 17m 32s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/d66ab143ac4a4e3fa7745489af5b2077 : SUCCESS in 17m 18s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/5f20cf96ba0a4d62a43885f5f8333cd5 : SUCCESS in 22m 42s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/ae11b96696934c3cb599602b4f1d8809 : SUCCESS in 21m 13s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/82a1decbbc684c19abb52dc2d8630a2d : SUCCESS in 55m 08s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/1034401a5c5049ec88c1976be33eb265 : SUCCESS in 44m 31s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/4fe3bdaec07b4cdabae86b2401e56993 : SUCCESS in 48m 32s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/b4c93cf8d84c432cb3cc8bdd179d0944 : SUCCESS in 14m 02s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/5cc4cafd69774b7f891df0856bea906f : SUCCESS in 6m 52s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/c84c1649ab0240c8bacf4159e4d0c56b : FAILURE in 9m 23s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/865ee23312114d6f901f9bf4ccb41435 : SUCCESS in 2h 10m 34s","accounts_in_message":[],"_revision_number":28},{"id":"7a90fa88fcf64f7b026ea4f4ebde3b63580a954b","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-07-22 20:19:04.000000000","message":"Patch Set 28:\n\n(2 comments)\n\nThis looks good. I think the enums didn\u0027t buy us anything and added obfuscation in this case. Sorry to cut them but let\u0027s be ruthless.\nWe now only need to pad out the action clauses, it seems to me.","accounts_in_message":[],"_revision_number":28},{"id":"acdf5a1b205e60776f384437742a1f10fcc24ae4","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2020-07-30 23:21:23.000000000","message":"Patch Set 28:\n\n(2 comments)\n\nI started playing around with another watcher that might be useful: https://review.opendev.org/744078","accounts_in_message":[],"_revision_number":28},{"id":"cf0078cbf2da260333fd0c5ac2b869036535bf07","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-08-10 14:17:59.000000000","message":"Uploaded patch set 29.","accounts_in_message":[],"_revision_number":29},{"id":"736fea8e45c65dede8626402dbb640a25cf37042","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-08-10 14:22:31.000000000","message":"Patch Set 29:\n\n(1 comment)","accounts_in_message":[],"_revision_number":29},{"id":"5c63ad10ec3372bcef55519498fe2276b9fbc30f","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-08-10 17:53:27.000000000","message":"Patch Set 29: Verified-1\n\n(5 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\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/3fb1d281e9bb4d5e934fc09e34042869 : SUCCESS in 3m 54s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/a6f3b9eb0aff4bd0983d88825a145bfe : SUCCESS in 9m 28s\n- grenade https://zuul.opendev.org/t/openstack/build/5f6fde2634c94be39fb9226839320191 : SUCCESS in 56m 53s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/3a5b72ad56ce4eadb012346b26a1e1ba : SUCCESS in 50m 57s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/55243b30abf94eb2a12def92c07a0372 : SUCCESS in 9m 14s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/9be38ef069804267b66cb398abbffed5 : SUCCESS in 11m 05s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/72b17986c7e0435f9c2e675b07a293bf : SUCCESS in 24m 32s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/88a511abdf9c4ef5b9d67f451f616ad8 : SUCCESS in 13m 46s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/d9abecf00e4346f89c54cb61a0800b71 : SUCCESS in 14m 25s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/16961bb826cf4ea8b07c22bc532a931d : SUCCESS in 14m 12s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/0b0f1d5c2dd04ce4be776d866df90d73 : SUCCESS in 16m 43s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/801ec0d55d074136ae3bcba980be8c39 : SUCCESS in 19m 03s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/c3f41e65adaf4ccba377b87b8774467a : SUCCESS in 42m 46s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/fb7b2a797a694f5282244b2fadde82ac : SUCCESS in 41m 55s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/bc57fb05059449a4b7b8d6e014e32b76 : SUCCESS in 23m 14s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/18af502b137f4cb1a3495dc440a76667 : SUCCESS in 18m 16s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/949e2261eaca43b7a0eaa70f75ea1725 : SUCCESS in 44m 07s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/a1bd59cc1c3c4259af5d955e95841e83 : TIMED_OUT in 1h 31m 34s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/a11edc8ab9df4ea38009c8fa4768e42a : SUCCESS in 40m 05s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/6395a2e23e87466fbc01450f57781c70 : SUCCESS in 32m 55s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/53d3b7c181e24f17a8737b1abb3ed1f2 : SUCCESS in 14m 04s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/9a625676b35c443faa0026197692e227 : FAILURE in 6m 58s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/c7b0f29e511e454e87fdbe8dba34eba9 : FAILURE in 10m 29s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/0efb344078714ea391fc11c4482c9c9c : SUCCESS in 1h 00m 06s","accounts_in_message":[],"_revision_number":29},{"id":"d660deff3cc58fe8f8736b846b9fca1fc3a54705","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-08-12 01:37:24.000000000","message":"Patch Set 29: Code-Review-1\n\n(2 comments)\n\nCouple of notes, see inline.\n\nAlso, please keep commits pep8-clean.","accounts_in_message":[],"_revision_number":29},{"id":"87bd8ad3abd50daf7b323bdd06abafb63642b66d","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-09-07 15:22:12.000000000","message":"Uploaded patch set 30.","accounts_in_message":[],"_revision_number":30},{"id":"0d0112e7580030848a4fb27f472a898bc77b5de7","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-07 16:36:37.000000000","message":"Patch Set 30: Verified-1\n\n(16 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\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/a60358fad68046519d951046f9f60ca4 : SUCCESS in 3m 44s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/07dee8b5513749009f344bcbb3b2f541 : SUCCESS in 9m 21s\n- grenade https://zuul.opendev.org/t/openstack/build/a9d0b75cc7ca4a9697e2c1455e039ac3 : SUCCESS in 1h 08m 09s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/27a4555a6fc0449b879a69b91fd510b6 : SUCCESS in 45m 56s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/d5ad89d9580844488d053be94011d74e : SUCCESS in 9m 27s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/12284820f04e43009216ad309a771bf8 : SUCCESS in 9m 41s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/1a680a0636ce43afa4befe47eb9e8848 : FAILURE in 12m 42s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/a4db524f7df146c39709355cea4ff0d4 : FAILURE in 39m 34s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/a5a664ed48d847d98703ef7e22b06575 : FAILURE in 13m 48s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/70fc1864ff424e45901764d9d61d8986 : FAILURE in 13m 50s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/262ceab584c64b2eb535b94df3a8cdf6 : SUCCESS in 22m 10s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/f1921b7ca3134ea1b0699823402b9a39 : SUCCESS in 22m 24s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/770ff2c43a4d4022a8ddb096694f23db : SUCCESS in 22m 37s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/8d65a99a861b4588a8bb091b052d7e03 : SUCCESS in 21m 01s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/9b3d2200040e4d679ff17e537001b050 : SUCCESS in 19m 37s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/d284d8e2db554a51872c5fee48b8fb56 : SUCCESS in 19m 17s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/844f7177bd8946419d2b6aa06cb6cc3f : SUCCESS in 20m 55s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/b9e281d544284beea16ef430e3fff673 : SUCCESS in 41m 30s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/7ea4361590df4ed784d98d31e0943b67 : SUCCESS in 34m 47s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/3f60c913a817423cbaabbd5992a57b09 : SUCCESS in 37m 27s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/3a225ee529b54d25a79d2371c8dfa3b1 : FAILURE in 12m 28s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/dc210a7cc2424a28b69f32be3de00d24 : FAILURE in 7m 32s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/b3035f46bc8b48ab9723e084a9b5119a : FAILURE in 12m 37s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/83576f3c968149c3b44cec4217cc7f2e : SUCCESS in 47m 20s","accounts_in_message":[],"_revision_number":30},{"id":"5aad49f7b23be42675a45a127d679240c1dd9c22","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-09-07 19:46:09.000000000","message":"Patch Set 30: Code-Review-1\n\n(2 comments)\n\nThanks for uploading this, it\u0027s okay even if it\u0027s unfinished.\n\nAs I mentioned in comments, I\u0027m okay with adding the df argument. However, in cases where it is unnecessary, I would prefer not to re-open it yet again. In particular, \"log\" only uses information from the metadata, which is passed to see_object(), and thus can be used without re-opening df.\n\nPlease clean this up and re-upload and I take a look.","accounts_in_message":[],"_revision_number":30},{"id":"c097479a99531a7f28ebcbd69462d9dab901b638","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-10-02 14:12:16.000000000","message":"Uploaded patch set 31.","accounts_in_message":[],"_revision_number":31},{"id":"b29f80b008a0da5e8fadf0307246e4724ed68abc","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-10-02 14:13:02.000000000","message":"Uploaded patch set 32: Patch Set 31 was rebased.","accounts_in_message":[],"_revision_number":32},{"id":"d05526a1c8d5dc877907f953e5af52e07c50dd98","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-10-02 19:02:20.000000000","message":"Patch Set 32: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/b49b058164564bbb88e49f4ea3332673 : SUCCESS in 5m 27s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d578425b719a429ab0108903346442eb : SUCCESS in 12m 03s\n- grenade https://zuul.opendev.org/t/openstack/build/6cbb2a5bb5304618ad411106d5175437 : SUCCESS in 1h 05m 15s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/0e9693d5bcf5455a9d9cf778ce014dce : SUCCESS in 45m 11s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/8034c85bf66e43b08ea70f16be7e37bd : SUCCESS in 11m 36s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/b8f475144a2446d7bc296594ff10237e : SUCCESS in 10m 14s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/17504e02ce2342018d3522c83fd55283 : FAILURE in 15m 45s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/f5d9706464984c5f9abde919479b1189 : FAILURE in 13m 17s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/1dffaf1f41834908ae847e8e3d0981bf : FAILURE in 15m 50s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/467381c4a79b4313a311e49b9cc01276 : FAILURE in 13m 44s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/43724577f197496aa64e9b75361625ff : SUCCESS in 17m 21s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/6c2f3a87d2824ef1a9ddda9085630ac1 : SUCCESS in 16m 49s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/5efad41e2f1a4852a8dfbe4c8fc55f67 : SUCCESS in 18m 49s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/4f09a530b1354381831f48b86a37f80f : FAILURE in 19m 51s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/22307a40804d49dfa9b29746228fcf19 : SUCCESS in 26m 26s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/0575c0b4c6234baaa637b5370b1b5866 : SUCCESS in 21m 31s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/c2fc33e770024c4994dfc9326fee6e92 : SUCCESS in 24m 48s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/65f6343671854d0c8ff99752e7016047 : FAILURE in 47m 37s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/3a4e47f05cb545b6a781bb5318e68b44 : SUCCESS in 48m 03s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/3f1f8272c3264b4e93f740f3b451f8db : SUCCESS in 39m 28s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/4e3944e6ba3347258169b39815af0c9a : FAILURE in 29m 05s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/5b2aec5e9d4a492abe4a318d138f23b3 : SUCCESS in 6m 02s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/ace043ead2fc408290fb3d88cc16b723 : SUCCESS in 27m 50s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/152e4d8ea4b64ef98c5a22491645c386 : SUCCESS in 48m 27s","accounts_in_message":[],"_revision_number":32},{"id":"4a9e745f0fc3a8e8215718bf24b850e2b7461d63","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-10-03 19:08:16.000000000","message":"Patch Set 32:\n\nrecheck","accounts_in_message":[],"_revision_number":32},{"id":"37ceb3003da5b8ab95c2778f841e0fea2582a888","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-10-03 20:15:07.000000000","message":"Patch Set 32:\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- test-release-openstack https://zuul.opendev.org/t/openstack/build/cc5be7b0088b49daa518d3e296e23bd3 : SUCCESS in 4m 01s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/158aad1f88bc42e08609718812fd6322 : SUCCESS in 7m 51s\n- grenade https://zuul.opendev.org/t/openstack/build/74ae95a2fa644cd989e67376a77f808f : SUCCESS in 53m 41s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/dff8e9c346fb48f681e1193bb2079e49 : SUCCESS in 44m 55s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/b29ffc36f9dd4a70aeac932e6e26a180 : SUCCESS in 9m 05s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/930e8d631a69496498969946d9f31b4a : SUCCESS in 9m 35s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/8753c207cc0e4ee787f80525df5b84e7 : FAILURE in 13m 05s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/351801f4869f47d38009daa280ab1861 : FAILURE in 14m 38s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/f07af2dc88f245398231c8e64c699e4e : FAILURE in 13m 18s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/d39f5ff7c6a04759ba1ec6d34626beb1 : FAILURE in 13m 00s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/ada01338d1a14c36afc4d924815ad177 : SUCCESS in 17m 12s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/f5cdaf2b9e42400597bcea953837c3e3 : SUCCESS in 23m 25s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/780fe3ade5b042b8b56991c5d4c267a5 : FAILURE in 18m 41s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/550e27d450204d8aaea34dc146289a07 : SUCCESS in 20m 25s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/546f349d5f4242c3beb3f3e2c3fe2da6 : SUCCESS in 20m 28s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/d468c8df402244d784c975ade1924f0e : SUCCESS in 18m 28s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/647fc348766b43b3ae520fe4b33684a5 : SUCCESS in 25m 08s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/161c978753f849e2978f31d283f510f7 : FAILURE in 42m 38s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/89fadab902d84e54a91df2dc6d347ebd : SUCCESS in 40m 23s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/e8ef8697132b40b19b8f632e5e5609c6 : SUCCESS in 38m 24s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/671023b8bc5b471a96e3d1c0ba38a75a : FAILURE in 12m 36s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/e0c03088b21348739118893b1f00c4c5 : SUCCESS in 5m 58s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/5f8b1438af614784bb2b76bee4be49d5 : SUCCESS in 24m 55s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/53155fe2e3e84787abd03a8c83caf78b : SUCCESS in 1h 00m 45s","accounts_in_message":[],"_revision_number":32},{"id":"5673ece062bcff2c5d9e521ea87a670ba4965928","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-10-04 11:27:34.000000000","message":"Uploaded patch set 33.","accounts_in_message":[],"_revision_number":33},{"id":"f257204a07013c3c4022026cd9b9481277c88715","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-10-04 12:20:44.000000000","message":"Patch Set 33: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/0a4dd716b6fb46699568a7a02a61e2c5 : SUCCESS in 3m 08s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/1aa01817553b4a8f8db5e97e3ff2f4bb : SUCCESS in 8m 29s\n- grenade https://zuul.opendev.org/t/openstack/build/6745689348834714a5b71517ea37df77 : SUCCESS in 44m 18s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/6f3480a785e1444cae61cc8b15a060db : SUCCESS in 47m 17s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/ab5ebae7cdc6425ca32bde12c00b6e36 : SUCCESS in 7m 31s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/96a20c5e450b40c689efd84c17856ed5 : SUCCESS in 8m 52s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/4e6356e077a340e3ba6dfba341f05e76 : FAILURE in 16m 36s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/66c4d790187a4fdca02e4bc4a4b934c3 : FAILURE in 15m 27s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/73021e8466634962912c5ec2841e859e : FAILURE in 15m 57s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/cc540df31fb743a5abbe5915d7d3b410 : FAILURE in 12m 41s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/462d413d01844e3b8498d11c542514aa : SUCCESS in 19m 43s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/9ee1938fbda24a8aabcb7900ec772006 : SUCCESS in 20m 14s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/63f62a74d0894e50be171be2682f2f40 : SUCCESS in 21m 26s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/bb349103aaaf4f79a8c6b10a7b75b575 : SUCCESS in 20m 45s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/2545266b486b4ec0ae0bd3e925ebfbae : SUCCESS in 15m 18s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/075b38a6679941a9bb69a740858f7b1b : SUCCESS in 22m 06s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/abf988b1aa834648954ca28951aa5665 : SUCCESS in 20m 58s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/1c9605eaf30d4708883a3a2e26b48e6f : SUCCESS in 50m 53s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/ac6e095d87034a3bb715a460773f9f88 : SUCCESS in 40m 05s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/ba7b5497fdf843d8a8a4e43e1b53bef8 : SUCCESS in 39m 03s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/b78049eff13c4a6094df5a0f2c38e092 : FAILURE in 12m 12s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/b12cf5248f4c41f98050c4656dce7932 : SUCCESS in 5m 53s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/e94a60f60aa74ff8ab0dfb5720c87217 : SUCCESS in 22m 36s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/eef9bb31273b4e2ea1e3664bb1c8a9cd : SUCCESS in 45m 52s","accounts_in_message":[],"_revision_number":33},{"id":"74f89c84f1fabf10e0006826c26f54b2bfd7fa42","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-10-04 14:33:46.000000000","message":"Uploaded patch set 34.","accounts_in_message":[],"_revision_number":34},{"id":"2ff55d5c5d9bc9a6ee6e30b9851c85297161690f","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-10-04 16:06:15.000000000","message":"Patch Set 34: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/de8528c4f25f400a9b603f70548eabe6 : SUCCESS in 3m 37s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/0c8034aa6c2d42019f470c88e93d5b27 : SUCCESS in 7m 03s\n- grenade https://zuul.opendev.org/t/openstack/build/c98d051fa5504ad08864f9ac4d0526ea : SUCCESS in 58m 01s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/6b78607b8d264039aefd0ef0c0d49b18 : SUCCESS in 36m 33s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/2ff32af36dfe44ff9534d6c8f0430325 : SUCCESS in 7m 57s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/e40c0c19cf744f6bbcdde01f59382708 : SUCCESS in 7m 50s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/218d8c5ed4f64dcdb997ee8ba06d49f5 : FAILURE in 15m 27s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/027adfd83b5c4feb851d4d4f891cb070 : FAILURE in 22m 28s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/6507b1efed6544a09161cd2dddda79a7 : FAILURE in 16m 00s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/418b84a5fdc94e83ae415e2372bee26e : FAILURE in 11m 15s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/03bdefd99d10480a870112fef87330cf : SUCCESS in 18m 33s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/ea71aea003d34c888c47eb09340d9d60 : SUCCESS in 30m 31s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/a1bf93bd4eef4f75b829dbb3ec47c0a1 : SUCCESS in 21m 20s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/b53b2ed4c178475b9b6878b5d6e93498 : SUCCESS in 17m 16s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/67ae151048dc47c2ac12c5d49346e280 : SUCCESS in 22m 16s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/0259e4c875804da8ab574fd639d75e74 : SUCCESS in 32m 11s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/99ad78a584be4a3eade574eadc67c5e6 : SUCCESS in 23m 55s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/4c50f12e4343419c9d2fc3210bcd5ef0 : TIMED_OUT in 1h 31m 07s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/efa663750efe432ea62311322c09cef5 : SUCCESS in 46m 36s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/4c3df4bc72464144bd8a6f721a5d97ac : TIMED_OUT in 1h 02m 44s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/e15f3b64e9294d1c961133c8b78ca2cc : FAILURE in 13m 28s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/0e5d0cfdba1d424da02e896d65c81c30 : SUCCESS in 5m 49s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/b15b36a6609e47ca9f9594cedb5bbd3a : SUCCESS in 27m 13s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/3e078e67ed924596a063e925633fb3a6 : SUCCESS in 44m 10s","accounts_in_message":[],"_revision_number":34},{"id":"1fd2e14978c4ee6de6f1cca91fb0f0a05fd71054","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-10-04 16:24:48.000000000","message":"Uploaded patch set 35.","accounts_in_message":[],"_revision_number":35},{"id":"417985f8dfcff0546b04c58d65ff95854eba19b1","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-10-04 17:46:52.000000000","message":"Patch Set 35: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/12740a0006ff4d50901dfa821aeadb8c : SUCCESS in 2m 37s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/ff4a4ee650f64c54ae7ae3cb26ab8e35 : SUCCESS in 10m 25s\n- grenade https://zuul.opendev.org/t/openstack/build/53552d1b4bb745d9a95d6fc0dcd0be8d : SUCCESS in 52m 18s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/16353f3788ed4c279f1f6ab5e6a2d2a3 : SUCCESS in 46m 15s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/57fe0d6332ae4a00bedc89ef26147fd2 : SUCCESS in 8m 15s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/9b39a8b4ec5d43fc9673e97fab39feb7 : SUCCESS in 8m 50s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/fd9404e9314d4cf5b95d6e470fd944ed : SUCCESS in 12m 00s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/f1bc8341c8fd4978b0020ca38fc58036 : SUCCESS in 12m 37s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/289878f1e1414f778107baa5cca13dd1 : SUCCESS in 11m 38s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/d4bc9be24c444e0db8fbca0e433b6320 : TIMED_OUT in 1h 01m 15s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/1406dfe455344e11a9dba0c511979e29 : SUCCESS in 16m 24s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/103969dcd6974e8db220747548095779 : SUCCESS in 16m 56s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/add01d8a94d8441e8c1f7eaec0d21586 : SUCCESS in 17m 01s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/aaf10faf05104fc390395cd5a90474b7 : SUCCESS in 17m 22s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/42548975f5c3490cbcbcac2b67e1c5b7 : SUCCESS in 17m 01s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/eff3c07b632a48f0b9020aef2c50d83a : SUCCESS in 18m 33s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/a31f2d4ce7d6467790294e3cb152d00a : SUCCESS in 20m 31s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/c7cc745d726b43869d612a1755085f2f : FAILURE in 1h 09m 14s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/0b707e5525214299a1a093547946f549 : SUCCESS in 41m 54s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/a095109ffc4b454ea588a3d52ead186c : SUCCESS in 39m 14s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/b2c92a86ca09454db2d74767cb6dc94e : SUCCESS in 11m 54s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/3ce56079bcdb4979a0150727d9cf4e33 : SUCCESS in 5m 03s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/8c849350d2f34a1199c733f803f733d4 : SUCCESS in 26m 26s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/3c3fd5b707924e9787db3207893b6207 : SUCCESS in 44m 14s","accounts_in_message":[],"_revision_number":35},{"id":"df1d36affff84c7520a799e8df10b7ba5ba5eca9","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-10-12 12:29:16.000000000","message":"Uploaded patch set 36.","accounts_in_message":[],"_revision_number":36},{"id":"20a7ba07bd72ac610b1fdc93695616e969ffa7e1","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-10-12 12:34:18.000000000","message":"Patch Set 35:\n\n(1 comment)\n\nsquashing https://review.opendev.org/#/c/756163/1 (756163 to be abandoned manually - https://gerrit-review.googlesource.com/Documentation/user-changeid.html)","accounts_in_message":[],"_revision_number":35},{"id":"a50378223a77a74306363f94202f26a85daab4e0","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-10-13 00:20:15.000000000","message":"Patch Set 36: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/8f4eb89b54c8431aa48793022cc277e1 : SUCCESS in 3m 14s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/f0b123dabef841f0ba4511f8660f7aae : SUCCESS in 8m 29s\n- grenade https://zuul.opendev.org/t/openstack/build/aced85a7fdfe44f9888349e3fea5f755 : SUCCESS in 1h 01m 50s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/954125a8212b484e97bc24c1b61cf006 : SUCCESS in 54m 42s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/02946b52f8dc41b191b6810a751bb4a3 : SUCCESS in 9m 04s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/4bf9c447f17c4c258e533c990493e7d2 : SUCCESS in 8m 36s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/fe2ad1aa3a4b4783aba19ad74d62622e : SUCCESS in 12m 00s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/47fd2ee555914d2a9dd55a0e9d9c3753 : SUCCESS in 14m 27s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/06868a2dc76445c083b0453a8d690312 : SUCCESS in 13m 33s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/23e0e905e9214ef0a57172eb2fb1fa3e : SUCCESS in 14m 05s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/9b40c9dc5ccb4262b649aacdc056a224 : SUCCESS in 27m 51s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/8ef29bd73d084111b53b9141ed694170 : SUCCESS in 26m 39s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/ff80393e7971477998a6acd44fb8e063 : SUCCESS in 25m 05s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/96dbdb72ee8346ca918830d6f0f53aaa : SUCCESS in 22m 04s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/0ded4b157a0a44f6aee047f7fec797a9 : SUCCESS in 23m 19s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/3c1ab3e104724f61b45ac26594268a5f : SUCCESS in 22m 58s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/7e20f321b574416e9d2f55b2d51ba134 : SUCCESS in 25m 06s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/e4b728b0c7c34b7e9535bbdb63548f25 : SUCCESS in 47m 32s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/b29e5ca1f2ab49369a09dac2d4b8c0fa : SUCCESS in 49m 14s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/eea7bfed5dcc456aafb62bbff42c856c : SUCCESS in 44m 07s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/889e9fdd678c4231a99f61a927efd368 : SUCCESS in 13m 44s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/7bf2ed814b2846c8a03261b44f60de6a : SUCCESS in 6m 42s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/dd93c92c8e524f1f94f8e7bbf42a4195 : SUCCESS in 20m 21s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/a3440ce2dc76419d8e53d38f24bc4417 : SUCCESS in 1h 04m 59s","accounts_in_message":[],"_revision_number":36},{"id":"2fd5d9828fb507a06a1d9f0b50e3864d0c804910","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-10-14 00:45:17.000000000","message":"Patch Set 36: Code-Review-1\n\n(2 comments)\n\ngimme a moment...","accounts_in_message":[],"_revision_number":36},{"id":"fe9a8d70709c6c45774d37246ca1b1f1089d82c9","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-10-14 01:08:50.000000000","message":"Uploaded patch set 37.","accounts_in_message":[],"_revision_number":37},{"id":"b939009183646c5751142e16ab765beded1fc026","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-10-14 01:09:40.000000000","message":"Patch Set 37: Code-Review+2","accounts_in_message":[],"_revision_number":37},{"id":"074b70d8a8ebf78117720563790e65ffec6b1c2b","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-10-14 02:17:42.000000000","message":"Patch Set 37: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/e28cc286960944e9851e158bd4264a14 : SUCCESS in 4m 10s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/7d76db43cc6542c09ffe2cce3dac0b23 : SUCCESS in 8m 53s\n- grenade https://zuul.opendev.org/t/openstack/build/4473b24012314e269e64086b670a12ff : SUCCESS in 56m 56s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/7811e776922d44cabea94a509164eff2 : SUCCESS in 42m 35s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/76320bf02fe54061b9d8318214e251fc : SUCCESS in 9m 09s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/e547725ebdd54963999f77a1cd2a5a9c : SUCCESS in 10m 43s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/14166d47d8534f8782f0c822d646916b : SUCCESS in 12m 25s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/46c2c529d9cf4305b169bcaf422aacb7 : SUCCESS in 14m 50s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/cb3f04cf0f134affac6a1b1e67c66607 : SUCCESS in 12m 49s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/98c3f5d4a75b40368d2df684aac45e57 : SUCCESS in 11m 50s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/7a59e2dc7b58473e816619da6725eb04 : SUCCESS in 23m 53s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/36c0c3a80238413d8d42e6063c3647c1 : SUCCESS in 24m 19s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/541e0f1138e741a882e5fa3517153e3a : SUCCESS in 25m 00s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/09bdadb0f27a43dfa2ec47704bec77ca : SUCCESS in 25m 58s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/ce3c589f2a5f40e5b500f240a946c52b : SUCCESS in 23m 33s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/eccfe5e448114e00884f8920251c1963 : SUCCESS in 23m 28s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/8a6af7b97c484f39ba366ec32a0ce93c : SUCCESS in 24m 26s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/afe15ba1903a49aaa094140dc05db438 : FAILURE in 50m 53s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/2f84c35db57f4f9b8ce63b8e7b355b25 : SUCCESS in 37m 09s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/bda96814ad72431490dc8e7abef8500b : SUCCESS in 43m 06s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/f8f69269b3b94d21b97a7960d1fe71bc : SUCCESS in 12m 55s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/e4da7e1aa410485cb22ec11b09778a6b : SUCCESS in 5m 50s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/66d6d333b265437fbad3408a14222754 : SUCCESS in 56m 14s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/68d0951d23004de8a0f0573a524d9c18 : SUCCESS in 1h 02m 34s","accounts_in_message":[],"_revision_number":37},{"id":"7bcbdb172bde22b2b5299dd41acaf3564edfa800","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2020-10-27 06:18:13.000000000","message":"Patch Set 37:\n\n(2 comments)\n\nOnly part way through the reivew.. kinda got side tracked with bad news today.. Plan to get back too this once my brain starts functioning again.","accounts_in_message":[],"_revision_number":37},{"id":"334b1cf7e56eae7796ececf10dfa55625d84269f","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2020-10-27 18:07:51.000000000","message":"Patch Set 37:\n\n(10 comments)\n\nI\u0027m not quite sold on the manager change as-is, and I think the metadata loggig might be a bit much. On the whole, though, I like it!","accounts_in_message":[],"_revision_number":37},{"id":"576c1c0795afff4a8d9b3610d983bb275f9042b0","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-10-28 03:50:48.000000000","message":"Patch Set 37: -Code-Review\n\n(9 comments)","accounts_in_message":[],"_revision_number":37},{"id":"9aa01cd29ab5b74df0abe0b4543d5aaa04146485","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-10-28 19:43:20.000000000","message":"Uploaded patch set 38.","accounts_in_message":[],"_revision_number":38},{"id":"4e755799e6c0617d739ff4997ea7b682a87e40c8","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-10-29 02:19:57.000000000","message":"Patch Set 38: Code-Review+2\n\nI addressed all the comments. But I\u0027m not sure if I didn\u0027t break the probe test.","accounts_in_message":[],"_revision_number":38},{"id":"870fd09693c2945530ed54351046a7459baffdf3","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-10-29 04:12:42.000000000","message":"Patch Set 38: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/3cce198431ae4a4eb9580177ccc85ab0 : SUCCESS in 3m 01s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d02bad35edb441db8215f59f1b76e63b : SUCCESS in 9m 41s\n- grenade https://zuul.opendev.org/t/openstack/build/3e2af066c32a48d5b7c83fc65288152a : SUCCESS in 1h 07m 40s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/1ea7a71118ac47bb94100badba2732b0 : SUCCESS in 48m 07s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/5370a6a4284e4807a793be2354fd3530 : SUCCESS in 9m 13s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/97a6c558d9bf4c61bf14bc85c08c5092 : SUCCESS in 9m 00s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/b94481d112454482a3c5c03704eff9af : FAILURE in 12m 36s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/c22611b90c00477c8e18a6eccd56559c : SUCCESS in 13m 41s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/36b77c5eb7b34d2a92e266b1daa4a3bc : SUCCESS in 14m 36s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/4fb5d2806eff44f383f03946abd72fef : SUCCESS in 12m 35s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/afa5fab967414322862faa22b4bd55a1 : SUCCESS in 27m 37s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/646da93ac6304c139c2811a3f0401d75 : SUCCESS in 33m 27s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/6ff5c3b01d984f5fbf2fdf746a089632 : SUCCESS in 17m 46s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/ac49f0102ee34636b65c47576c8517b7 : SUCCESS in 20m 51s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/079d4f8ee0d94dd0b7dd2771b98c237e : SUCCESS in 25m 40s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/a7fc5308d78f4d6999766bd30bf54d32 : SUCCESS in 18m 13s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/a1713684ad8848a4a8adc9fccf17e2d6 : SUCCESS in 25m 57s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/530c8123372e4f829e6a1f849344e997 : FAILURE in 46m 40s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/a3a17aaf0aa74746a17b0d004e96054d : SUCCESS in 41m 43s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/53be22be2f0241539e4c16adf24632fc : SUCCESS in 43m 07s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/d0744d557e124967b31ea6bbe3d3479c : FAILURE in 12m 53s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/4083c133601b4640bcb8e9b519778963 : SUCCESS in 5m 59s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/a596699ac415474db8b5c700a4d3162e : SUCCESS in 21m 07s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/21948181af38424984623d9aab9df2ef : SUCCESS in 1h 10m 32s","accounts_in_message":[],"_revision_number":38},{"id":"c4c05ec17767ed95e94ad6ffd72e05240461d28a","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2020-11-05 00:51:07.000000000","message":"Patch Set 38: Code-Review-1\n\nProbe test fails with\n\n ImportError: No module named watchers.dark_data\n\nI think we just need a __init__.py in the watchers dir.","accounts_in_message":[],"_revision_number":38},{"id":"677b7c4e91dd4dcb063edb72737b9230a1adb73a","author":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"date":"2020-11-05 01:22:59.000000000","message":"Uploaded patch set 39: Patch Set 38 was rebased.","accounts_in_message":[],"_revision_number":39},{"id":"f5c92fc3480cb7213f054b107e5e9322e01006cd","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-11-05 03:07:27.000000000","message":"Patch Set 39: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/2e00712aa91b4aa8a01f7904760b7580 : SUCCESS in 2m 52s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/61d066ee02ef4a2f9dfe66620fe2adf7 : SUCCESS in 12m 15s\n- grenade https://zuul.opendev.org/t/openstack/build/9b3b9726066a4d6aa98c5a527a8c4a8e : SUCCESS in 59m 39s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/5fc0f64a8c734ff99ef745bbfc18884c : SUCCESS in 1h 33m 24s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/6c24ab8896ca4874a4aed38be3ec663a : SUCCESS in 8m 14s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/6c3f0f277f7d48a3a1fe4218eb9c8b43 : SUCCESS in 9m 12s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/f12c0b9d77b04a5f8be9fff07a19be29 : FAILURE in 12m 21s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/e09f4f23de804b01a18d156111d08332 : SUCCESS in 12m 25s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/53bda0c703444764bb92eeda55b3a682 : SUCCESS in 12m 19s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/fd24594ec4ea4b27a3e8fc491992ec31 : SUCCESS in 12m 35s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/e6551035f42644f0be8cbeafa1fc7ece : SUCCESS in 16m 28s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/fe8172a6e5ea440ab19c1d21d4f5f9c2 : SUCCESS in 16m 28s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/f374c2ced7a64ddfb696186c96ca767e : SUCCESS in 16m 47s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/2da4a3868dbe4cb7af12b8e8228ce3d0 : SUCCESS in 17m 33s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/07b17a1afc934bbfa6afed993b0d4c50 : SUCCESS in 17m 56s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/4cd4bd075bc649cbb0c3b9232f8ad686 : SUCCESS in 18m 29s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/4b378915d75c444b9b31b9eccddeac0a : SUCCESS in 19m 00s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/86bab1687d5c4fa1b14b41656adca19d : FAILURE in 46m 37s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/d2ef82d847f441898af7777744bb8ce3 : SUCCESS in 39m 22s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/858e61e91c194ff5b21a28e5214c9ff2 : SUCCESS in 43m 06s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/a082286fb4494f00b3f3682a18a35fa6 : FAILURE in 12m 50s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/8a5f2934d6a940edab47a543a0f322b0 : SUCCESS in 5m 48s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/3fc3e4105d5c48e28b760c9db69c1b35 : SUCCESS in 19m 47s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/2359daa24ebf4de9bc4ab7b937dda8b5 : SUCCESS in 48m 33s","accounts_in_message":[],"_revision_number":39},{"id":"f40e596ea79d6ae8dc3bb365fc769b122c258868","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-11-05 18:04:37.000000000","message":"Uploaded patch set 40.","accounts_in_message":[],"_revision_number":40},{"id":"0a0bd71f738f2ad1c72f3b16ccca05c1c5410972","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-11-05 18:09:26.000000000","message":"Patch Set 40: Code-Review-2\n\nwait","accounts_in_message":[],"_revision_number":40},{"id":"2782385b0ed652132f507b5d9a1c97d9fb4b62a5","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-11-05 18:58:59.000000000","message":"Patch Set 40: Code-Review+2","accounts_in_message":[],"_revision_number":40},{"id":"aad99f46f2c474738f9dcc3af86495005505be4a","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-11-05 21:28:53.000000000","message":"Patch Set 40: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/ac693bdb1aa041bea3ba485ec2762fcd : SUCCESS in 3m 11s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/ef6265015b3944f0859b152d34518fcd : SUCCESS in 11m 41s\n- grenade https://zuul.opendev.org/t/openstack/build/9c028df6ec0d4af1963c1c053990c2c3 : SUCCESS in 1h 40m 23s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/bf10f948ddf74757a41881a3d18cbc33 : SUCCESS in 59m 28s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/fb795445583a4af1a85b514d364c744d : SUCCESS in 8m 40s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/9533d4576f56409a867f4c8f6739e885 : SUCCESS in 8m 33s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/24504b44643c478483297c90c82f7f2b : SUCCESS in 15m 44s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/1b965f04ae4c4be29645d43750558938 : SUCCESS in 30m 21s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/2d5d57d1f8f44a42952c98ca6ae71c64 : SUCCESS in 13m 30s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/e2e23aa09d2a484596e162742afaade9 : SUCCESS in 12m 24s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/6c9e13c6c5f24173bbb2a5b1ee1ff9eb : SUCCESS in 34m 50s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/4805f2103ec34b1a8cc9f7fcef0c3faf : SUCCESS in 16m 02s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/e5926ba2d01d40a798805bf4f67926cb : SUCCESS in 16m 55s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/2d934f19dea549cb840ea1841fe38c90 : SUCCESS in 21m 33s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/2aa8a06bff694484ba89884ce07d46bc : SUCCESS in 19m 05s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/28048acb58c54c5e84cc4a6fc0ed0216 : SUCCESS in 23m 38s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/bdfe62d89d2c48aa9a29cb0549eb9550 : SUCCESS in 26m 25s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/4ac81956b52b43aa9fbd2e7860e5e578 : FAILURE in 47m 27s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/01a4950398534cd287c0cd3424fb14bd : SUCCESS in 42m 10s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/74944b1466334a4e984d25754a6f2ca6 : SUCCESS in 43m 41s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/a7f0d2f9733b4d8d9240548feb443c2f : SUCCESS in 14m 34s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/62e054e5bb0d496f8bf0600d39c7d1bf : SUCCESS in 6m 47s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/fe133af98ff841d682f6bb808dac85bf : SUCCESS in 22m 02s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/3fba1d0bec924003b215a43966229c51 : SUCCESS in 1h 06m 16s","accounts_in_message":[],"_revision_number":40},{"id":"59b4e884b42044606a11ac3230b27f2d749e3872","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-11-05 21:57:06.000000000","message":"Patch Set 40:\n\nrecheck\n\n2 of 3 probe tests failures in resetswift with\n\"AssertionError: Cleanup with \u0027resetswift\u0027 failed: stdout: No container-updater running\"","accounts_in_message":[],"_revision_number":40},{"id":"af1fd762b3c672d0e96774587b6656a5465bc57f","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2020-11-05 22:03:27.000000000","message":"Patch Set 40:\n\nI\u0027m surprised we\u0027re still seeing\n\n umount: /mnt/sdb1: target is busy.\n\nnow that https://review.opendev.org/#/c/761439/ landed :-/","accounts_in_message":[],"_revision_number":40},{"id":"f2b03c9bbc93f794cfaa4872bb84e23b619fec24","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-11-05 23:05:53.000000000","message":"Patch Set 40: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/88ed18379e13409da93d118c20b4bbfa : SUCCESS in 2m 54s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/6fbf7a5a10bc412aa5f568ab7f447789 : SUCCESS in 11m 41s\n- grenade https://zuul.opendev.org/t/openstack/build/5f9108389a51499d8d0bb5a931b08fb3 : SUCCESS in 1h 02m 47s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/d4d7451824094669936e7c5b45db2c28 : SUCCESS in 53m 24s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/b6aecf76d5e4453ca59a05e47d29f732 : SUCCESS in 8m 42s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/2282f224dc484f4685edf53931ee001f : SUCCESS in 8m 26s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/47d202233a95401e98b62133e6cb50de : SUCCESS in 12m 21s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/80b066e44a6d4140a76cc9b422c61295 : SUCCESS in 13m 41s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/e68cd4487fad4709957a7f3184a1cf9b : SUCCESS in 12m 58s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/8717cf45fde841cf80cd13eb66e7344f : SUCCESS in 13m 16s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/caaa44e1b7b3496ba111c15c2af43902 : SUCCESS in 30m 29s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/c6d746b40f864a4ead9c97cb4e1399b0 : SUCCESS in 18m 10s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/7e09f7af5b7149c59277c3e3c1d71548 : SUCCESS in 31m 31s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/86ad1e3fe0274bb9a2ab1a5b779bed19 : SUCCESS in 19m 32s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/6c42272e932e425488d82d6b11602162 : SUCCESS in 18m 43s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/f5bd98e6521c482a8a42fb37713c4c54 : SUCCESS in 23m 10s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/5c7654b1bcd14047b89b621117bc0c24 : SUCCESS in 19m 10s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/27bb05acfb844ef7a78041f4b3e5329f : SUCCESS in 45m 49s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/3a1459a1e8a644549e3c4857413886ae : SUCCESS in 40m 48s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/43963fb9058f46a49bc72cb14728da7f : SUCCESS in 48m 54s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/e3492840c3384a5488a0a39dda9c2773 : SUCCESS in 12m 32s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/f2478790706b4d5e86856158342a3db3 : SUCCESS in 7m 53s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/08626c482ff048aa81889c7e39e9b628 : SUCCESS in 24m 16s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/4f2505efeef5497f8e1cb7c0bc2b629e : SUCCESS in 59m 59s","accounts_in_message":[],"_revision_number":40},{"id":"0b1869e0936b55107133129be8e8f31b7f79bf38","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2020-11-26 08:54:27.000000000","message":"Patch Set 40: Code-Review-1\n\n(4 comments)\n\nCommit message code sample is incorrect.","accounts_in_message":[],"_revision_number":40},{"id":"022e3c118e8c4229bd1ce582927c3598f090dcf3","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-11-26 20:16:06.000000000","message":"Patch Set 40: Code-Review-1\n\n(4 comments)\n\ncertainly","accounts_in_message":[],"_revision_number":40},{"id":"23990cac80add1a147acf97b9aaff69a41e64bd4","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-11-26 20:16:29.000000000","message":"Uploaded patch set 41: Commit message was updated.","accounts_in_message":[],"_revision_number":41},{"id":"321245e2ddd5a28a74fc343888b8ae67317dffdd","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-11-26 20:17:07.000000000","message":"Patch Set 41: Code-Review+2","accounts_in_message":[],"_revision_number":41},{"id":"ce43c6f327bdd30a20d2c6f379e67af7b89f2de3","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-11-26 21:13:06.000000000","message":"Patch Set 41: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/de1e087d3f8f4c7ba798cc75459804f3 : SUCCESS in 2m 55s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/2030f62fe5ea47d69f4308a1f222761e : SUCCESS in 8m 04s\n- grenade https://zuul.opendev.org/t/openstack/build/b65592fa4bc740169ed33c851f7ce0a3 : SUCCESS in 55m 08s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/6911692e57774a7fb5dfb3ada960b8d7 : SUCCESS in 40m 28s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/add645167e954dcdbf5c1fa93aef3d73 : SUCCESS in 7m 48s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/2f2a812d79234ca4b860392d3dd7ab8c : SUCCESS in 8m 32s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/2fb432956133439eb08a1119181de352 : SUCCESS in 15m 11s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/73033e457a374b3e9a0cabdf31a75bc2 : SUCCESS in 14m 15s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/5283d229fea84f788e8d473cf8b00c46 : SUCCESS in 15m 16s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/36f3baaacf5046d4a874bd6fd61cbf8b : SUCCESS in 13m 54s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/6eeb692aa9f8437bbfe7569b0b38fed4 : SUCCESS in 16m 26s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/12dacf9c60b9430eb08316e20612c0d0 : SUCCESS in 23m 50s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/16369a043ba84b1189bee57b4b9419db : SUCCESS in 17m 38s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/bbf329acc127405eb3a04f64bfed2a04 : SUCCESS in 15m 48s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/5d52fc2eb4754c4cb9000d74420db82e : SUCCESS in 17m 00s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/f8c2dbf288974aba9cc83c3e10018ddf : SUCCESS in 34m 01s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/09868bff9d504485b8279677c433ad9d : SUCCESS in 23m 07s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/d1a53fdb1efb44c78c8ded772fcad93d : SUCCESS in 42m 57s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/f0213d3055be4ab28712ba3e11d76f8f : SUCCESS in 38m 57s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/c734501f218f4ba2886b08d7b4c0398a : SUCCESS in 34m 03s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/d3ae249a6ab94a1aa09a1f2ba3a5075e : SUCCESS in 12m 37s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/32b39f76df334f658d2b7ebbfe972220 : SUCCESS in 6m 20s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/b52aa309132c43ec933ea38187764101 : SUCCESS in 23m 14s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/dd01da416ba34ab5b12fd29406f22618 : SUCCESS in 54m 12s","accounts_in_message":[],"_revision_number":41},{"id":"f782dd637936ca4acd29b3ac905c8a6e453ea538","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2020-12-02 09:20:45.000000000","message":"Patch Set 41:\n\n(2 comments)\n\nI was about to +2 this, but thought I\u0027d better take a look at the dark data example code. But there seems to be some comments that probably should be removed.\n\nThis has been around a while, so happy to just land it and fix it up in a follow up. Thoughts?","accounts_in_message":[],"_revision_number":41},{"id":"f674a78dcad3290057fc7cb9b215bfaa992be5d6","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2020-12-02 10:33:28.000000000","message":"Patch Set 41: Code-Review-1\n\n(2 comments)\n\nSorry came back to this, admitably after some scotch and thought I\u0027d read through the tests again because I only skimmed the first time.","accounts_in_message":[],"_revision_number":41},{"id":"38157d98b0247fb9496abc84e31a157fba490a31","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-12-03 04:36:57.000000000","message":"Patch Set 41: -Code-Review\n\n(4 comments)","accounts_in_message":[],"_revision_number":41},{"id":"76945eafe9f82ec623cb86069c8e21f5a3956d5c","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-12-03 05:00:05.000000000","message":"Uploaded patch set 42.","accounts_in_message":[],"_revision_number":42},{"id":"78c040c0ea84907b62892dcb46bdedf8c0c81c39","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-12-03 05:58:01.000000000","message":"Patch Set 42: Code-Review+2","accounts_in_message":[],"_revision_number":42},{"id":"7fc03cf8e37b6946a61906624b2e82468dd70e8e","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-12-03 06:19:59.000000000","message":"Patch Set 42: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/e5d3a7d5ce2445f8bb747eb720160bf7 : SUCCESS in 2m 13s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/9698e4f428cd493bacf197c1b63518fb : SUCCESS in 8m 13s\n- grenade https://zuul.opendev.org/t/openstack/build/e3a5617eb161440b97cb18c0df732379 : SUCCESS in 1h 01m 51s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/30ed17c0c54741a3abc20886d055bd5f : SUCCESS in 49m 39s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/91c861caa4ae4065ba2013c7a2a4598c : SUCCESS in 8m 02s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/7f4d4fa856724166bc9a823c2b400934 : SUCCESS in 9m 17s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/afd07c42ca354e049d16983210e71116 : FAILURE in 13m 23s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/93185c31278f4d69b9f9b1ea6708acbd : SUCCESS in 13m 16s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/3b0c18d78a29481a8ca3ee1ac65c7e20 : SUCCESS in 18m 05s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/ac5b98a6fe8b470b9aa2feb4f0677af2 : SUCCESS in 30m 55s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/32e197696a1c4539828827295a870914 : SUCCESS in 27m 08s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/f8117ca5ad5944aabbb868ab0125ca2c : FAILURE in 17m 05s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/1e477c3d33254db0b63914303ab9f908 : SUCCESS in 16m 22s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/032894d1776c4699b7a76737d7b2b4f7 : FAILURE in 17m 14s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/d87f6099effc4e69957c52502306098d : SUCCESS in 16m 45s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/d6086f46bf144fc0bdebeb71ab5bcdd3 : SUCCESS in 18m 49s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/941e586e0ae24556b4f8ccabb616b836 : FAILURE in 23m 42s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/da24739ea2b54b9c9e72046409e379ed : SUCCESS in 49m 35s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/ac7dfd13e3fa46ff8bc7c3800eb2ea08 : SUCCESS in 45m 12s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/22f844647e154d3493232c00e5975490 : SUCCESS in 45m 11s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/a18ffc14a5ca4153b9efabb4a9b802fb : FAILURE in 5m 14s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/b927bcf7debe4888a9a3866072afc467 : SUCCESS in 7m 24s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/b4b2105aa61342a9b33e708e7dc21d7e : SUCCESS in 21m 20s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/cc5eb88c57e349dc9ec4d6ba2478676b : SUCCESS in 1h 06m 00s","accounts_in_message":[],"_revision_number":42},{"id":"1e49d641151c2f600e09f2f9066f9d4f9d3fa699","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-12-03 15:10:02.000000000","message":"Patch Set 42:\n\nrecheck\n\nJust one failure, in test_ratelimit_max_rate_multiple_acc. Looks random to me.","accounts_in_message":[],"_revision_number":42},{"id":"17f83f149c3a9747ca2434189f28ff8955cb2089","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-12-04 00:16:33.000000000","message":"Patch Set 42:\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- test-release-openstack https://zuul.opendev.org/t/openstack/build/31c2a0d1b8ee41b69ff0cdb1b1611923 : SUCCESS in 2m 06s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/a062f40315934dd99bd2d091e48818a6 : SUCCESS in 22m 18s\n- grenade https://zuul.opendev.org/t/openstack/build/694a472e999d4e9c8377f89b8b4ba145 : SUCCESS in 1h 04m 42s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/b02ee1f62b9d4c56b63bbb49a0481346 : SUCCESS in 51m 47s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/754d861779cd46cc97f26afaffe2e8b4 : SUCCESS in 8m 30s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/de5f42d3ad5a471db92f366859406af1 : SUCCESS in 8m 56s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/c486d36023a547a484070687b5ebdf6a : SUCCESS in 14m 16s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/f7b1ec521d67466db528bd252a5e614f : SUCCESS in 13m 13s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/8e6e957289554824977d64e82bec0e36 : SUCCESS in 13m 10s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/c7ab2bbf1c58405997124a478a974737 : SUCCESS in 12m 42s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/0e7be4588f8b4d60aef5fd42e147442d : SUCCESS in 16m 32s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/31ebd2d51c8e4c88bea0eacb0046fd74 : SUCCESS in 22m 27s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/c6f9d6128ff74700929414be777ae31d : SUCCESS in 16m 23s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/769af7e837354ba7bad61661a66c4f80 : SUCCESS in 15m 30s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/d9838a0e12ac4cdda61c21f9d42115c4 : SUCCESS in 16m 52s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/f35820c6b40a42ad86249d37232e8ce8 : SUCCESS in 16m 18s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/abe82ccda4e441409e8c0eb2fb294ea0 : SUCCESS in 21m 38s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/9c30fa9eed4f412abe292898a22c3dd7 : SUCCESS in 47m 00s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/b60c20fc692944f5b06aa2e4f9d196a4 : SUCCESS in 53m 44s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/26509cd7517d492aacd32cfb8a41d2b9 : SUCCESS in 39m 03s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/39106dac35204413a67b9df521355a5e : FAILURE in 5m 13s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/4d5e0cddc3314c9db455835df370907d : SUCCESS in 6m 23s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/9d289e4b453545c68fb0344b8da1d4ce : SUCCESS in 23m 30s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/eb67094cf8a9419fa30770f95d2b2333 : SUCCESS in 58m 33s","accounts_in_message":[],"_revision_number":42},{"id":"d568fc840fffc104052218078c3eabe6815bd83d","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2020-12-09 00:07:02.000000000","message":"Patch Set 42:\n\nrecheck","accounts_in_message":[],"_revision_number":42},{"id":"562fd29c91583c16d448b22d982bf9d3fe89d655","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-12-09 01:18:19.000000000","message":"Patch Set 42: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/60512e6ba32c4f1fbae78205b4ff49f5 : SUCCESS in 2m 18s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/4c79e31fc7544250a367613a1bcc4cca : SUCCESS in 7m 56s\n- grenade https://zuul.opendev.org/t/openstack/build/a67a8233b89443d18ef9d98cfa6d0343 : SUCCESS in 1h 05m 11s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/8270a1eb5ec34d219088533993262b2b : SUCCESS in 38m 28s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/d1ec108e673741c98384b877305dab26 : SUCCESS in 8m 43s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/78d5c6eb39e44f3ea3f7aea300ce084d : SUCCESS in 8m 58s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/39b804c8062b4da3b109aa276d5f6e81 : SUCCESS in 12m 54s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/15595e12d27c4d2c8e2f479a8efe41e9 : SUCCESS in 12m 22s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/0a63c39b51ee40ea8eba06c2b6e6d184 : SUCCESS in 12m 52s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/71d1a426b5994fd69dd49efe61dc4085 : SUCCESS in 12m 31s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/89f4f0c97fd54d68a94db16cccf6ff2b : SUCCESS in 15m 49s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/120280970df742d689be5fa3a6395a63 : SUCCESS in 15m 39s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/b1774e7c41214a6f99850ad171153dcc : SUCCESS in 16m 25s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/c489bb98bb5047f286a4f8f6ce170759 : SUCCESS in 17m 00s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/831643281d35482ca77b4a09c5d2d84e : SUCCESS in 16m 50s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/11b18861b01e4410b546252f32b84a9e : SUCCESS in 18m 10s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/5678deeea53b4b56be22d2fca6559fef : POST_FAILURE in 6m 35s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/dc75e01e43df408eb84a22588381e9e6 : SUCCESS in 43m 38s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/275f10307a52447a970c1f84c0645124 : SUCCESS in 39m 04s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/12a4e164a42d41b1982ed58efb1a1086 : SUCCESS in 46m 24s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/1f9081e68e914f6fa31c489ac99e9a69 : SUCCESS in 12m 35s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/4eff3e46c10b4cc39cc0385ec58ed800 : SUCCESS in 6m 26s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/afd48fac1b014d08a8a35ff0739f9b17 : FAILURE in 10m 06s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/29a6e8684cae4bfba7c34f154a422cc4 : SUCCESS in 1h 04m 20s","accounts_in_message":[],"_revision_number":42},{"id":"f47dedb67147c29f73b7bc8bc16b4b324761d2f2","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2020-12-09 09:05:01.000000000","message":"Patch Set 42: Code-Review+2\n\n(2 comments)\n\nNice work Pete and David. This looks great, and in any case is a great start. It unlocks a bunch of cool new features. And hey if we need better sandboxing, we can always add it later.\n\nSome comments inline, but I don\u0027t think they\u0027re major blockers. Any doc changes we can add as a follow up, I might even volunteer to do it in the future. But for now I wont commit as am using my unemployment state to spend extra time with the fam :) \n\nOnly not pressing the +A.. yet, as Tim said he wanted to review and we have the swift meeting in the morning, so figure I could always press it then :)","accounts_in_message":[],"_revision_number":42},{"id":"6da71cc6b10df80f26ccfaf5d8f8aac84cb91959","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-12-10 02:10:04.000000000","message":"Patch Set 42:\n\n(1 comment)\n\nCheck this out, the promised doc:\n https://review.opendev.org/c/openstack/swift/+/766378","accounts_in_message":[],"_revision_number":42},{"id":"117fef8e03b47c814875567cffd64738064e7e9b","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2020-12-10 06:35:00.000000000","message":"Patch Set 42:\n\n(5 comments)","accounts_in_message":[],"_revision_number":42},{"id":"994cc075c5e25fca3aee2ca7cb220326c04bde58","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-12-10 16:31:59.000000000","message":"Patch Set 42: -Code-Review\n\n(5 comments)\n\nI\u0027m going to talk to David about the df.","accounts_in_message":[],"_revision_number":42},{"id":"d8e33565bdf866e33debab872f66d64facefdd89","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2020-12-10 21:02:28.000000000","message":"Patch Set 42:\n\n(3 comments)\n\nSince I\u0027m the one with the funky setup, I figure it\u0027s on me to help refactor the probe test to accommodate it 😉 -- see https://review.opendev.org/c/openstack/swift/+/766549\n\nGonna play with some options for that see_object() signature next... but OTOH, we\u0027ve got working code *now* -- feel free to push back, I don\u0027t want the perfect to be the enemy of the good.","accounts_in_message":[],"_revision_number":42},{"id":"a9b06dcd905fdcedd97f07b553e7759fed0b25bb","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2020-12-10 23:21:53.000000000","message":"Patch Set 42:\n\n(1 comment)\n\nPassing the .data path seems not bad: https://review.opendev.org/c/openstack/swift/+/766612\n\nI\u0027m also playing with another stat-gatherer that would let operators collect something of a histogram of object counts and bytes used binned by object/fragment size. On the whole I really like the increased visibility watchers are going to afford us! I keep finding new questions I\u0027d like to ask my cluster 😊\n\nBut, it also made me realize that aggregating and making sense of those stats across nodes will be a little tricky -- especially if you run with multiple audit workers per node.","accounts_in_message":[],"_revision_number":42},{"id":"7e1e7a78c4d5dbecd6f5217c8acfdd06bc17c65e","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-12-11 18:59:03.000000000","message":"Uploaded patch set 43.","accounts_in_message":[],"_revision_number":43},{"id":"4ad3bfb072e6bc7baf3421fc86e19f7673b3dec5","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-12-11 20:48:55.000000000","message":"Patch Set 43: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/f0f3f670b4b14ce1b3e644a543237852 : SUCCESS in 2m 23s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/1d471f5aeed44e67bb4ffc47896afb09 : SUCCESS in 8m 55s\n- grenade https://zuul.opendev.org/t/openstack/build/532b1b10c61d4c39b77b20246141ebaa : SUCCESS in 1h 01m 51s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/d73cc549aa38457ebcc84f9497fc7234 : SUCCESS in 59m 23s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/fbe13b0209a94dd2b1eb20b20d884326 : SUCCESS in 9m 32s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/c0d69a90ec8c4530ad35d7b61070a4a3 : SUCCESS in 8m 12s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/9a5c2fa86bfb4785899b3adb327372fe : SUCCESS in 12m 12s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/fd67025afa1a4fcbbac8b46ee723c4eb : SUCCESS in 12m 26s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/93a3d477795d48a9bd5102e0973ab76c : SUCCESS in 13m 13s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/28a2f4b724504217ab830b52642261e9 : SUCCESS in 56m 37s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/b695f3afc8014da58f82b40133c331a8 : SUCCESS in 17m 05s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/ce4ac775b0a54c569c83dc601c5d1ee3 : FAILURE in 23m 30s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/793a948f03a2482281e10f5271857e29 : SUCCESS in 18m 00s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/a0e020f9cb4c4f53a37d88ac53885d41 : SUCCESS in 15m 44s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/8ff2c07fc2834a028ca429c6efe52572 : SUCCESS in 18m 38s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/14dad2cae4c74751b5933801cc4e075c : TIMED_OUT in 1h 31m 03s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/5f53e862514c4ecab64ae6378779bbe7 : POST_FAILURE in 5m 58s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/e67296db13564d60bed85d9d2df56598 : SUCCESS in 45m 40s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/fa25efa9881542fa9e15c18747a953e6 : SUCCESS in 41m 30s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/3f799cf2cdbe4b26a20131c56ec23938 : SUCCESS in 40m 52s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/4dc4a725685f4fc2ac2ab7c9e7d6a660 : TIMED_OUT in 41m 08s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/c6e9968012c84db9a09c66e30e519829 : SUCCESS in 5m 52s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/4953aabe4e854d94aff8493275f785e4 : FAILURE in 7m 33s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/21f2081209a443c7bea7000ad4b3fa7a : SUCCESS in 1h 04m 16s","accounts_in_message":[],"_revision_number":43},{"id":"77f15281afce3a424700dd9a406aad4e9b373224","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-12-12 01:37:59.000000000","message":"Uploaded patch set 44.","accounts_in_message":[],"_revision_number":44},{"id":"13b33d9531e7eb5c7897bed436e8aefed8d16d8e","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-12-12 02:30:08.000000000","message":"Patch Set 44: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/f05ce1713d634b0fb2e3baf9272ada28 : SUCCESS in 2m 45s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/05035e32934146468f9344c5fe3a3ba9 : SUCCESS in 8m 26s\n- grenade https://zuul.opendev.org/t/openstack/build/ad0fdefb4e5340da91a9d235f485842b : SUCCESS in 49m 21s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/14aa34794ec5422da01f0d9f5987897e : FAILURE in 37m 30s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/5229b0a0c38d45eea5c8c11a4d9036f4 : SUCCESS in 8m 56s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/732d9611d86f43a4b8ff4525d6490df8 : SUCCESS in 9m 07s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/3d1d70895cdc4a94a6db7550db80bca5 : SUCCESS in 12m 45s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/8918e55cc838420c99cc9dc204d593d6 : SUCCESS in 15m 02s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/622238e0b02642db9cc81bcd06114a90 : SUCCESS in 11m 51s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/49de3a232e0b4da7aafbbb65f8b312cc : SUCCESS in 15m 04s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/cc3be55b1f914227b6147c9094c69208 : SUCCESS in 15m 23s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/3fe1af1b8912480c819b499b32465cbc : SUCCESS in 25m 46s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/c672e2f5320f4628a71753a30c1b72fb : SUCCESS in 15m 41s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/40410529d5ad4a058055b23ec94361ad : SUCCESS in 16m 09s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/d330e6f5ce3e4e2bbd58fcf0855ddf0a : FAILURE in 26m 23s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/96b9962b48d347cabe5d8d2622fe1963 : SUCCESS in 19m 45s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/a3529c17729c45e5a319ea0f0f54da36 : POST_FAILURE in 4m 23s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/72f61a2d398c41b3a74c63ea7803a99e : SUCCESS in 43m 36s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/149802cc3fbb4f85884c57b8a2e7ce0c : SUCCESS in 49m 23s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/19ea6477532a4bb9be76cc80ec5d5c20 : SUCCESS in 46m 49s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/8d46781005b441b79df1415a2558f59e : SUCCESS in 17m 22s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/becaa67b12174040a5f62177095053f0 : SUCCESS in 5m 27s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/a151c59a17924dda8fddb089c47153f0 : FAILURE in 6m 57s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/17e2cb72d5d9458e8fc1aa4b5df6f9b8 : SUCCESS in 49m 23s","accounts_in_message":[],"_revision_number":44},{"id":"2c7bdfabc314b5f6612309e244aed77de0482334","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-12-15 22:03:12.000000000","message":"Patch Set 44:\n\nrecheck","accounts_in_message":[],"_revision_number":44},{"id":"a38ac18d52ca0353b900695d57272e624a823952","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-12-16 16:48:02.000000000","message":"Patch Set 44:\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- test-release-openstack https://zuul.opendev.org/t/openstack/build/71cd866c53a34cb2ae6fd6a6ddf2f89c : SUCCESS in 2m 40s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/9a6706b38f9b4e488d9e54c1b1345d60 : SUCCESS in 6m 51s\n- grenade https://zuul.opendev.org/t/openstack/build/e1c9e6cd2f974e66942f7374bf8c8b49 : SUCCESS in 1h 04m 26s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/ae817e7cb0994818ab45d51b258c8734 : SUCCESS in 37m 44s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/cf3096f93ab04cd98cc2c9ee209a9b06 : SUCCESS in 10m 42s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/6b69da1954e04bb5b6c1cb4dbe5bc9cb : SUCCESS in 10m 58s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/6987d9926b8048828ca93226c57a64d6 : SUCCESS in 11m 57s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/8c8427f7b0264d518905520ed3053978 : SUCCESS in 11m 47s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/2a7cf26416f7424a971ac9e2ea8b7c67 : SUCCESS in 20m 51s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/124b24fb991d4c83a6eb2ef8d1b8d37d : SUCCESS in 14m 00s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/8b88a2112b6f41d29245dbcfdfc89bcc : SUCCESS in 15m 10s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/37da336cfd2748baadfa0d797eb67849 : SUCCESS in 27m 49s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/45190cc616d54f029942fdcc35fd60e8 : FAILURE in 1h 05m 34s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/f515c32e1b04489c979a621951e35e4b : SUCCESS in 37m 29s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/c62ec23ded4344a5b21ecf3dd2b2921f : SUCCESS in 23m 17s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/435d1e9eee974324b9bc6b7cbc12e6f9 : SUCCESS in 21m 32s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/97228833fcfb42938e3ae2a332f61934 : POST_FAILURE in 5m 03s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/c2ec3c16e6a5456eb30c22088543b3f2 : SUCCESS in 44m 15s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/5341684f09c84435943b77d53326af7c : SUCCESS in 51m 41s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/c61320f975c04f5782ca4258c58df8c2 : SUCCESS in 47m 44s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/e847d65298fa46da8f328408012f8ccf : SUCCESS in 12m 10s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/3f3c1bd684824b7290e1b7d371ace23b : SUCCESS in 5m 45s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/81551a47e3d9425eaaab0c0e2d847386 : FAILURE in 9m 46s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/d0bb00065bb8490e90a84dece1e9f096 : SUCCESS in 55m 58s","accounts_in_message":[],"_revision_number":44},{"id":"9119ef1cdc6f75bbd1a47ce8f90471e6d76e5cc7","author":{"_account_id":23279,"name":"Seongsoo Cho","display_name":"Seongsoo Cho","email":"ppiyakk2@printf.kr","username":"seongsoo.cho"},"date":"2020-12-16 21:25:34.000000000","message":"Patch Set 44:\n\nHow about add a definition of \"Dark Data\" in development_watchers.rst? There is no definition of \"Dark Data\" in all docs in swift, So, those who are not familiar with storage may not know what it is.","accounts_in_message":[],"_revision_number":44},{"id":"997a019f459bc499596217cfbe09f153a6b26e40","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-12-16 22:44:12.000000000","message":"Uploaded patch set 45.","accounts_in_message":[],"_revision_number":45},{"id":"ae28da0878144c58f5f684a35342f1f90ed5fb15","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-12-16 22:45:18.000000000","message":"Patch Set 45:\n\n\u003e Patch Set 44:\n\u003e \n\u003e How about add a definition of \"Dark Data\" in development_watchers.rst? There is no definition of \"Dark Data\" in all docs in swift, So, those who are not familiar with storage may not know what it is.\n\nDone","accounts_in_message":[],"_revision_number":45},{"id":"f053ed4b5d19eb46523c0e4e7d3560091481db40","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-12-17 05:00:54.000000000","message":"Patch Set 45: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/a8de1c36f9684e25928b0ecda7c6c945 : SUCCESS in 2m 58s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/ceef414b4d40466a8cbbf741db8cfe9e : SUCCESS in 8m 02s\n- grenade https://zuul.opendev.org/t/openstack/build/ded101bdfc464b369452f9892f8ab10a : SUCCESS in 58m 54s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/3e2eb97b414a496abc4126ab54dd821b : SUCCESS in 45m 27s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/086a5730be7c427db9c544bb48595355 : SUCCESS in 9m 04s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/379d8bf2181f4e7db7839a6a30ba32d9 : SUCCESS in 7m 42s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/c77acd5ab0dc460894f9752f7d9182e8 : SUCCESS in 14m 48s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/700e38b830b041ec9353e71a0d34eeb8 : SUCCESS in 12m 01s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/06057013711b4f838081014aea0d9557 : SUCCESS in 12m 23s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/708adb55efc94089bd9ea2ca8a6e05a1 : SUCCESS in 12m 25s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/c41a97e815be49faa8f8a23a1aa50039 : SUCCESS in 15m 41s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/4b3bf3f5b11e4770b03a11f0784edd82 : SUCCESS in 20m 39s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/a4699e6eabd8408eb67cfa3d687e6cb5 : SUCCESS in 17m 41s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/77e21cefbe2042d981d07bc58ca0d6c0 : FAILURE in 18m 56s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/db59b13f7c02489798298ee4ba442f2f : SUCCESS in 16m 23s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/68876399e3604421be4f26e23d891ba4 : SUCCESS in 17m 52s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/a59f5ef515514343aad65f25f2e6bac4 : POST_FAILURE in 6m 22s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/7b52d24485c140e0bb52f7ceb4dd40f0 : SUCCESS in 51m 24s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/58ff261e609f41c4af3c21b7806a9a3c : SUCCESS in 52m 20s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/45344f90b90f486696dcb496b461a3e1 : SUCCESS in 46m 40s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/c36365a719f440259184055df0bd6b38 : SUCCESS in 12m 20s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/0ff9a630a2324a0a888f22de48f0d329 : SUCCESS in 5m 04s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/e93a7242c57b4a31a97614055d316a0b : FAILURE in 8m 05s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/86f4fe148ff8439daffd004189b90ec9 : SUCCESS in 1h 03m 07s","accounts_in_message":[],"_revision_number":45},{"id":"a83b7c513177ae4e07529d4f706b8e10ea8aea81","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2020-12-24 06:11:13.000000000","message":"Uploaded patch set 46.","accounts_in_message":[],"_revision_number":46},{"id":"4eb1cf7d5a11cc3c5e107bd70a569e31a2b9b4a7","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2020-12-24 06:36:30.000000000","message":"Patch Set 46:\n\n(1 comment)\n\nRebased to resolve a simple conflict with the md5/fips patch. I\u0027m getting more comfortable with keeping the end() signature even with multiple workers (see ec-stat patch), but I wonder if it may be worth bringing attention to the issue in docs... Eh, could probably be a follow-up patch.\n\nThe see_object() signature still seems a bit redundant -- and we haven\u0027t actually come up with any watcher that wants policy_index or partition yet, have we? What if we just drop them? If we later realize we have a reason to want those, we can add some helpers to parse the provided path (which is then the single source of truth).\n\nAs someone trying to code against this new API, I don\u0027t really want to have to think about how to handle the auditor handing me a partition that doesn\u0027t match what\u0027s embedded in the path (or would I want to think of it as a path with an embedded partition that doesn\u0027t match the provided partition?)... yet that state is still expressible in the API.","accounts_in_message":[],"_revision_number":46},{"id":"c27cbe95b2d2f503a6a7a27cc58091b8498cfd65","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-12-24 08:02:22.000000000","message":"Patch Set 46: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/dbcf6675943244eba8afedb70cd839b7 : SUCCESS in 2m 19s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d84cbbde52ed45ed8361538bc7ce4747 : SUCCESS in 8m 44s\n- grenade https://zuul.opendev.org/t/openstack/build/ea182c7b62c140c1ae6867d265f8ebc9 : SUCCESS in 53m 19s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/cbb0b9a507c7429bace9811a8ee7bf15 : SUCCESS in 1h 10m 34s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/dd60696cfd3f4a3f84fc0cc49dd71ff5 : SUCCESS in 11m 43s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/d96dbaad057d4565aa10df13ec7a9fba : SUCCESS in 11m 03s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/2452ddaabb4249d791f7b19d523daeff : SUCCESS in 15m 03s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/d0b5447d8e574517bdf46e15dd6fb443 : SUCCESS in 14m 38s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/f0c3a88fab924fb59c60d20d2c8f5b4e : SUCCESS in 14m 01s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/dca2535c482c4209beae87e146f4b64e : SUCCESS in 18m 30s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/3be3623e2e5a4540a4ebbb800af03a10 : SUCCESS in 15m 04s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/cbacfd1255084b71a22d2855121d4c33 : SUCCESS in 15m 59s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/79c14fc1873a4cc6a045ad9c6b5ef0dc : SUCCESS in 17m 04s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/689f75901aba4add9fbc937bfabf95fa : SUCCESS in 16m 18s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/7d1365c1d0414bb6810bf1e3f8a4055a : SUCCESS in 18m 55s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/bff32ec3af5c41428e9df951c9ee0ce8 : SUCCESS in 20m 43s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/b5f532621cab49a68a3c3fef8e03ff96 : FAILURE in 7m 06s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/5a066746c7e048d38d78361ba12582e4 : SUCCESS in 40m 11s\n- swift-probetests-centos-8 https://zuul.opendev.org/t/openstack/build/df6b695f07754383b6d84248510918a6 : SUCCESS in 49m 40s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/13f6470d035e4ac8b8237037728e4227 : SUCCESS in 35m 29s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/f03b351ecdf44c68b0dc3afffbef6621 : SUCCESS in 36m 57s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/cfca233b08e04882ab6532c57933f032 : SUCCESS in 13m 13s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/f9610534aa47471eaa0ed4842c5f0808 : SUCCESS in 6m 10s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/373000842d4c41d0b812a625e89f281d : FAILURE in 8m 21s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/e86f48f079114e56a0e4f1bdcc7ba489 : SUCCESS in 1h 05m 01s","accounts_in_message":[],"_revision_number":46},{"id":"9395f80b7e47d84f10df5024fefe41c3dba08e3f","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-12-26 05:55:27.000000000","message":"Patch Set 46:\n\n\u003e Patch Set 46:\n\n\u003e The see_object() signature still seems a bit redundant -- and we haven\u0027t actually come up with any watcher that wants policy_index or partition yet, have we? What if we just drop them? If we later realize we have a reason to want those, we can add some helpers to parse the provided path (which is then the single source of truth).\n\nI don\u0027t mind dropping these arguments for this submission. Remember that it\u0027s very easy to add them later, but to remove them may be difficult.","accounts_in_message":[],"_revision_number":46},{"id":"e51dab9d7882485200a50077d039739ec6da6bdf","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-12-26 21:02:22.000000000","message":"Uploaded patch set 47.","accounts_in_message":[],"_revision_number":47},{"id":"6cbbef0274c0a9c94cd51cd4b048cf8a660c7b72","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-12-26 21:56:37.000000000","message":"Patch Set 47: 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- test-release-openstack https://zuul.opendev.org/t/openstack/build/b388d8d308404dcfa43eb8e579efc317 : SUCCESS in 1m 50s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/2db7f323d3ab484ea0f65abda87cc359 : SUCCESS in 7m 12s\n- grenade https://zuul.opendev.org/t/openstack/build/cc860473b384477686351abc673e2705 : SUCCESS in 43m 43s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/8d9049a7634c413eb12d016c3866da19 : SUCCESS in 48m 15s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/7b4fe5ea4450410bb150a6c1fda7539e : SUCCESS in 7m 48s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/bfcc73a0830f45e883531337dbae041e : SUCCESS in 8m 36s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/157bf52d9a3442829b6c70cf173db940 : FAILURE in 15m 10s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/fd9d1143bff442139aa02f9568891a02 : FAILURE in 13m 09s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/f1aa38d2161c4cd1ac6ccaac93ff771d : FAILURE in 11m 04s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/2671fe2346f64dc285618a1fb05fe138 : FAILURE in 12m 35s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/3c1fb13844e44643b6ea25d9fa8d0a93 : SUCCESS in 16m 10s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/dbed532cb9f14290b1d21c8d853d3f3a : SUCCESS in 16m 41s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/b3c1ab5e03de40178d021cc4e8a1286a : SUCCESS in 18m 50s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/a9ac033096fe4594905a64130c7d2383 : SUCCESS in 15m 42s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/ff8166f2598e439a93c98a0763bb26e1 : SUCCESS in 17m 30s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/14b2dc9069994dfc94d0152c04a57cf0 : SUCCESS in 16m 38s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/39fa8b37b2d74129bec0cdd17bea19f4 : FAILURE in 20m 53s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/51532b3b5f0e43e9b26cb0affb7f5d87 : SUCCESS in 49m 02s\n- swift-probetests-centos-8 https://zuul.opendev.org/t/openstack/build/6650bf47dc8d42988efe77e54d9f87f9 : SUCCESS in 45m 11s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/393e64a95d3a47289cbbff985ca45f8a : SUCCESS in 32m 28s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/5917894ad6bc4890aacc700fa32c7c00 : SUCCESS in 41m 47s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/efc85fbaa6aa4278914ae4a07f2e3ee6 : FAILURE in 12m 41s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/d8bb3009d12a4e34ae96a9450eb07b86 : SUCCESS in 5m 02s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/cdd31052d52242a9990265891e191af0 : FAILURE in 7m 26s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/db53d726f40346678e116a91046ccdb6 : SUCCESS in 46m 15s","accounts_in_message":[],"_revision_number":47},{"id":"4db76ff308c7251cab74140173296911c47a1b5f","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2020-12-26 23:22:54.000000000","message":"Uploaded patch set 48.","accounts_in_message":[],"_revision_number":48},{"id":"7e571ffa209c58f86fa9630bc9645005c39240a1","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2020-12-26 23:24:23.000000000","message":"Patch Set 48: Code-Review+2","accounts_in_message":[],"_revision_number":48},{"id":"915d6e1e91f1182fa5e4dd223c0d270d9dfccc31","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-12-26 23:25:40.000000000","message":"Uploaded patch set 49.","accounts_in_message":[],"_revision_number":49},{"id":"b6f8ece8b0aa4e54c3b800392942e6a6337d6470","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2020-12-26 23:35:26.000000000","message":"Patch Set 49: Code-Review+2\n\nI checked the diff between #48 and #49 and it\u0027s strictly whitespace. Oh well.","accounts_in_message":[],"_revision_number":49},{"id":"58b640a60430ebf26c778c3a7e35a492c2cb72f3","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-12-27 00:20:15.000000000","message":"Patch Set 49: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/b0f35f8bbd804cab98e8f9b5b10fb5a4 : SUCCESS in 1m 34s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/e20034f026ef47c5ab8dca7313483f76 : SUCCESS in 7m 18s\n- grenade https://zuul.opendev.org/t/openstack/build/6d9fb1d3c69c463f91f002c9de1bc9ca : SUCCESS in 52m 56s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/83cc8a8c844c4dd3acbd8656edf3c6ce : SUCCESS in 42m 50s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/6d6cfa4a95ba433887b2dff41eee9033 : SUCCESS in 7m 03s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/030b44dba42e4444a5d55b32cd5e4c0b : SUCCESS in 7m 53s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/cf4a6fcf6b6b45ddabc5942fb871aba9 : SUCCESS in 12m 31s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/6850f69512ba4f608c5cf54b7630699e : SUCCESS in 14m 02s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/7df9c217711749c09202c3a26214d6c1 : SUCCESS in 11m 54s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/c3b2f618344c48ff8e83d2469849b5d6 : SUCCESS in 17m 24s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/9190c4dc747b4602a9161f25b2ff265f : SUCCESS in 15m 18s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/b6797c07129c4c37bb64824fc7f4cb85 : SUCCESS in 20m 23s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/703920577b314f3f94aa94505e2a81ae : SUCCESS in 21m 07s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/0b02e4fb554941c3a5807f32c77e6274 : SUCCESS in 18m 05s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/6ca5c5348d4a4b6eb59afa6ffd865213 : SUCCESS in 16m 16s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/7a175a99b6744b15bb06a8adc0ae13aa : SUCCESS in 17m 33s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/94f04ccea18444179f510e2b2190e0a8 : FAILURE in 19m 51s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/31ac0dd84097443d83325af5175816e1 : SUCCESS in 39m 42s\n- swift-probetests-centos-8 https://zuul.opendev.org/t/openstack/build/a144fe88a2764408af86e5c31b8e16dd : SUCCESS in 39m 57s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/ed1686afe50d4cfca4fc1b9c7f94b825 : SUCCESS in 30m 34s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/0479638525bb4100870a25ef2debddf5 : SUCCESS in 31m 52s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/2c824d7be419485f9f09d7419aef4568 : SUCCESS in 14m 58s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/d0c102fedd24418c8a9352f3073229d2 : SUCCESS in 5m 02s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/e61aab7a876e4acb96538f0bd00dd090 : FAILURE in 6m 43s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/b72bb73c39d94f8d9a26a8ca364289ea : SUCCESS in 51m 26s","accounts_in_message":[],"_revision_number":49},{"id":"c8c51e61737675b042a9fdd07e8819bda2d75639","author":{"_account_id":32029,"name":"likui","email":"likui@yovole.com","username":"likui"},"date":"2020-12-27 03:14:24.000000000","message":"Patch Set 49: Code-Review+1","accounts_in_message":[],"_revision_number":49},{"id":"64234171af687b4551ddacd0e672a368672dd7a9","author":{"_account_id":28182,"name":"Jiaping LI","email":"lijiaping@yovole.com","username":"lijiaping"},"date":"2020-12-27 10:44:58.000000000","message":"Patch Set 49: Code-Review+1","accounts_in_message":[],"_revision_number":49},{"id":"0bb26787a93a484487233818a4cbabfa9925b731","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2020-12-29 19:59:11.000000000","message":"Patch Set 49: Code-Review+2","accounts_in_message":[],"_revision_number":49},{"id":"83057943ab65f54f691ae54b08a40552f600f88b","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2021-01-05 05:04:38.000000000","message":"Patch Set 49: Code-Review+2 Workflow+1\n\nGreat work! Let\u0027s finally get this in!","accounts_in_message":[],"_revision_number":49},{"id":"6fa045c0fb469ae606912007b216d50d01d4c5a4","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-01-05 05:04:52.000000000","message":"Patch Set 49: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":49},{"id":"2f2669076971df9af9b8b894db6ce4955e1f0283","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-01-05 06:08:56.000000000","message":"Patch Set 49: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/cac379e4e78f49cb9aecd2af099dd631 : SUCCESS in 1m 48s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/cd44ed9fd3ef4228ad57a4b5ec447dfd : SUCCESS in 8m 24s\n- grenade https://zuul.opendev.org/t/openstack/build/f78307819b0f42e2abe7d7d104d89ade : SUCCESS in 1h 00m 27s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/96acaec13cc84a5d883729c971ef51b1 : SUCCESS in 44m 31s\n- swift-upload-image https://zuul.opendev.org/t/openstack/build/5e536ba05ce74df2a47e7c67f6a408c6 : SUCCESS in 8m 14s (non-voting)\n- swift-upload-image-py3 https://zuul.opendev.org/t/openstack/build/f6b06b5c44064d69a5b57166c15bfba1 : SUCCESS in 9m 32s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/306a5fdcaa5e425cb94fb77f724bfb66 : SUCCESS in 12m 28s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/a137205d808d4f75b3aa2436a1a039ed : SUCCESS in 12m 45s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/421c036d76d34cc39a2a948b132d86a2 : SUCCESS in 12m 27s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/5934fe6a6d0843a3bd5e351b07b9f9fc : SUCCESS in 12m 40s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/dbae6aa95f20447880871d05d4370710 : SUCCESS in 15m 06s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/34b3706a523e448faf4e4c5fd93c43b5 : SUCCESS in 15m 36s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/00c3187bf4894356af0788d6aaa92982 : SUCCESS in 15m 50s\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/0fbad5fce11948b7abc7d0989c7ff743 : SUCCESS in 16m 02s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/b4b252e7674e4006a8b7c04ecbc4a8cf : SUCCESS in 15m 55s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/b4d21960fd3d4113b26d05e1e6b23183 : SUCCESS in 16m 42s\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/9d2098e02a9d4fffbda2a803f102bd5b : SUCCESS in 53m 03s\n- swift-probetests-centos-8 https://zuul.opendev.org/t/openstack/build/3fc27840da4c40fd9bfabdcc1d950249 : SUCCESS in 48m 27s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/a5abf4a964254ac39cb6b591804201cf : SUCCESS in 41m 10s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/3ede673d436844c7964b95bf83cde45e : SUCCESS in 42m 26s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/d65945203b36460f899291ab52b7b9c6 : SUCCESS in 18m 48s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/6e9d255044ec4f878fc42666a93633b3 : SUCCESS in 5m 12s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/c28b3e2988d545cdbe8d0e347575e8b5 : SUCCESS in 59m 02s","accounts_in_message":[],"_revision_number":49},{"id":"780f9ea2dca423d2ff3c51c38dc42b0c51d50ec6","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-01-05 06:08:57.000000000","message":"Change has been successfully merged by Zuul","accounts_in_message":[],"_revision_number":49},{"id":"ca933c3a48c1b47af6dd3af3a291974804f67d56","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2021-01-05 06:12:08.000000000","message":"Patch Set 49:\n\nBuild succeeded (promote pipeline).\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/29925b3947334df982e09eb163c664f6 : SUCCESS in 2m 24s\n- swift-promote-image https://zuul.opendev.org/t/openstack/build/42ec333301724cb4adcf3a4cd78060aa : SUCCESS in 1m 58s (non-voting)\n- swift-promote-image-py3 https://zuul.opendev.org/t/openstack/build/1ddb8ea3cedb415b80e2cdb881e54974 : SUCCESS in 1m 38s (non-voting)","accounts_in_message":[],"_revision_number":49}],"current_revision_number":49,"current_revision":"b97128090726db8818fccfc0de559c23d871c9fa","revisions":{"1e2071db74d4d0bc193f0a58d0256c79b56b4549":{"kind":"REWORK","_number":1,"created":"2020-02-08 04:32:48.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/1"}}},"commit":{"parents":[{"commit":"5b26b749b58f93ee37bbca26ed3f6a13d9a31bc1","subject":"Drop use of unittest2","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/5b26b749b58f93ee37bbca26ed3f6a13d9a31bc1"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-02-08 04:31:18.000000000","tz":-360},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, policy_index, object_metadata,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/1e2071db74d4d0bc193f0a58d0256c79b56b4549"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/1e2071db74d4d0bc193f0a58d0256c79b56b4549"}]},"branch":"refs/heads/master"},"fede08a106be90e23de49fd44887bb8caa3af6ca":{"kind":"REWORK","_number":2,"created":"2020-02-09 02:41:00.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/2"}}},"commit":{"parents":[{"commit":"5b26b749b58f93ee37bbca26ed3f6a13d9a31bc1","subject":"Drop use of unittest2","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/5b26b749b58f93ee37bbca26ed3f6a13d9a31bc1"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-02-09 02:40:54.000000000","tz":-360},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, policy_index, object_metadata,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/fede08a106be90e23de49fd44887bb8caa3af6ca"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/fede08a106be90e23de49fd44887bb8caa3af6ca"}]},"branch":"refs/heads/master"},"f9765bcf5efe0494617015f386eb9af6fc3487c1":{"kind":"REWORK","_number":3,"created":"2020-02-10 01:13:47.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/3"}}},"commit":{"parents":[{"commit":"5b26b749b58f93ee37bbca26ed3f6a13d9a31bc1","subject":"Drop use of unittest2","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/5b26b749b58f93ee37bbca26ed3f6a13d9a31bc1"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-02-10 01:12:47.000000000","tz":-360},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, policy_index, object_metadata,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/f9765bcf5efe0494617015f386eb9af6fc3487c1"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/f9765bcf5efe0494617015f386eb9af6fc3487c1"}]},"branch":"refs/heads/master"},"f03e8e06e850b8c3c45d5a1270b9ce75d651b40c":{"kind":"REWORK","_number":4,"created":"2020-02-15 03:10:46.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/4"}}},"commit":{"parents":[{"commit":"baaa5c57e18da5e7d4baa79e1b5420621c7adf0b","subject":"Remove reno from test-requirements","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/baaa5c57e18da5e7d4baa79e1b5420621c7adf0b"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-02-15 03:10:39.000000000","tz":-360},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, policy_index, object_metadata,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/f03e8e06e850b8c3c45d5a1270b9ce75d651b40c"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/f03e8e06e850b8c3c45d5a1270b9ce75d651b40c"}]},"branch":"refs/heads/master"},"91b596c377e9211baa55332aa8eed8a63f52bdf3":{"kind":"REWORK","_number":5,"created":"2020-03-05 16:03:10.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/5"}}},"commit":{"parents":[{"commit":"71cc3681798d7e66fcb9c1ebd56f47849773eab8","subject":"Merge \"sharding: filter shards based on prefix param when listing\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/71cc3681798d7e66fcb9c1ebd56f47849773eab8"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-03-05 16:00:31.000000000","tz":120},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, policy_index, object_metadata,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/91b596c377e9211baa55332aa8eed8a63f52bdf3"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/91b596c377e9211baa55332aa8eed8a63f52bdf3"}]},"branch":"refs/heads/master"},"4c8e48c91cc476e83c5e606062bb9327b3ef7e3a":{"kind":"REWORK","_number":6,"created":"2020-03-05 16:24:53.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/6","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/6","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/6 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/6 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/6 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/6"}}},"commit":{"parents":[{"commit":"71cc3681798d7e66fcb9c1ebd56f47849773eab8","subject":"Merge \"sharding: filter shards based on prefix param when listing\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/71cc3681798d7e66fcb9c1ebd56f47849773eab8"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-03-05 16:24:08.000000000","tz":120},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, policy_index, object_metadata,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4c8e48c91cc476e83c5e606062bb9327b3ef7e3a"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4c8e48c91cc476e83c5e606062bb9327b3ef7e3a"}]},"branch":"refs/heads/master"},"5c58a1b6d097713c6ec7c8bb699968d9bd843d21":{"kind":"REWORK","_number":7,"created":"2020-03-10 03:13:10.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/7","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/7","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/7 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/7 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/7 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/7"}}},"commit":{"parents":[{"commit":"baaa5c57e18da5e7d4baa79e1b5420621c7adf0b","subject":"Remove reno from test-requirements","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/baaa5c57e18da5e7d4baa79e1b5420621c7adf0b"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-03-10 03:12:57.000000000","tz":-300},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, policy_index, object_metadata,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/5c58a1b6d097713c6ec7c8bb699968d9bd843d21"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/5c58a1b6d097713c6ec7c8bb699968d9bd843d21"}]},"branch":"refs/heads/master"},"3e7b5454dd923d768b29af456e2652743deecf71":{"kind":"REWORK","_number":8,"created":"2020-03-17 00:00:21.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/8","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/8","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/8 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/8 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/8 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/8"}}},"commit":{"parents":[{"commit":"baaa5c57e18da5e7d4baa79e1b5420621c7adf0b","subject":"Remove reno from test-requirements","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/baaa5c57e18da5e7d4baa79e1b5420621c7adf0b"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-03-16 23:59:16.000000000","tz":-300},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, policy_index, object_metadata,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/3e7b5454dd923d768b29af456e2652743deecf71"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/3e7b5454dd923d768b29af456e2652743deecf71"}]},"branch":"refs/heads/master"},"57050f9fbd909403c3f06927b2f2dc3a9f7f0664":{"kind":"REWORK","_number":9,"created":"2020-03-17 00:48:38.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/9","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/9","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/9 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/9 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/9 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/9"}}},"commit":{"parents":[{"commit":"baaa5c57e18da5e7d4baa79e1b5420621c7adf0b","subject":"Remove reno from test-requirements","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/baaa5c57e18da5e7d4baa79e1b5420621c7adf0b"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-03-17 00:48:06.000000000","tz":-300},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, policy_index, object_metadata,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/57050f9fbd909403c3f06927b2f2dc3a9f7f0664"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/57050f9fbd909403c3f06927b2f2dc3a9f7f0664"}]},"branch":"refs/heads/master"},"d7c56c01082f03eb0727c7af3b3c233c6ed4a054":{"kind":"REWORK","_number":10,"created":"2020-03-17 03:55:41.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/10","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/10","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/10 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/10 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/10 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/10"}}},"commit":{"parents":[{"commit":"baaa5c57e18da5e7d4baa79e1b5420621c7adf0b","subject":"Remove reno from test-requirements","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/baaa5c57e18da5e7d4baa79e1b5420621c7adf0b"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-03-17 03:54:33.000000000","tz":-300},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, policy_index, object_metadata,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/d7c56c01082f03eb0727c7af3b3c233c6ed4a054"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/d7c56c01082f03eb0727c7af3b3c233c6ed4a054"}]},"branch":"refs/heads/master"},"277b18101162798709392ea02ae486e5ccada9d4":{"kind":"REWORK","_number":11,"created":"2020-03-19 02:45:52.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/11","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/11","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/11 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/11 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/11 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/11"}}},"commit":{"parents":[{"commit":"baaa5c57e18da5e7d4baa79e1b5420621c7adf0b","subject":"Remove reno from test-requirements","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/baaa5c57e18da5e7d4baa79e1b5420621c7adf0b"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-03-19 02:45:41.000000000","tz":-300},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, policy_index, object_metadata,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/277b18101162798709392ea02ae486e5ccada9d4"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/277b18101162798709392ea02ae486e5ccada9d4"}]},"branch":"refs/heads/master"},"4a72c1b19ee6eb2c754e8c02bb987c103b200aa6":{"kind":"REWORK","_number":12,"created":"2020-05-20 15:03:50.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/12","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/12","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/12 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/12 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/12 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/12"}}},"commit":{"parents":[{"commit":"70dede1ae9b714f0eed3804022b49517a562bdd6","subject":"Merge \"versioning: Use CONTAINER_LISTING_LIMIT when doing container listings\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/70dede1ae9b714f0eed3804022b49517a562bdd6"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-05-20 15:03:36.000000000","tz":180},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, policy_index, object_metadata,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4a72c1b19ee6eb2c754e8c02bb987c103b200aa6"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4a72c1b19ee6eb2c754e8c02bb987c103b200aa6"}]},"branch":"refs/heads/master"},"7f240a5a9af8fbe156ea40e6c16eccc9139a464d":{"kind":"REWORK","_number":13,"created":"2020-06-06 05:16:07.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/13","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/13","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/13 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/13 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/13 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/13"}}},"commit":{"parents":[{"commit":"baaa5c57e18da5e7d4baa79e1b5420621c7adf0b","subject":"Remove reno from test-requirements","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/baaa5c57e18da5e7d4baa79e1b5420621c7adf0b"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-06-06 05:15:56.000000000","tz":-300},"subject":"WIP: Let developers/operators add watchers to object audit (simplified)","message":"WIP: Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/7f240a5a9af8fbe156ea40e6c16eccc9139a464d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/7f240a5a9af8fbe156ea40e6c16eccc9139a464d"}]},"branch":"refs/heads/master"},"3f901587a6be135e374bfc49f59c1e59e567c66c":{"kind":"REWORK","_number":14,"created":"2020-06-10 14:04:17.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/14","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/14","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/14 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/14 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/14 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/14"}}},"commit":{"parents":[{"commit":"0b86f681f5e225854b6e66f3e5f2295e9ff3107e","subject":"Merge \"swift-get-nodes: Allow users to specify either quoted or unquoted paths\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/0b86f681f5e225854b6e66f3e5f2295e9ff3107e"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-06-10 14:03:57.000000000","tz":180},"subject":"WIP: Let developers/operators add watchers to object audit (simplified)","message":"WIP: Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/3f901587a6be135e374bfc49f59c1e59e567c66c"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/3f901587a6be135e374bfc49f59c1e59e567c66c"}]},"branch":"refs/heads/master"},"dc9c67a26ce6f10002906202ad7ea524ce40bed2":{"kind":"REWORK","_number":15,"created":"2020-06-10 14:55:31.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/15","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/15","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/15 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/15 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/15 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/15"}}},"commit":{"parents":[{"commit":"0b86f681f5e225854b6e66f3e5f2295e9ff3107e","subject":"Merge \"swift-get-nodes: Allow users to specify either quoted or unquoted paths\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/0b86f681f5e225854b6e66f3e5f2295e9ff3107e"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-06-10 14:55:27.000000000","tz":180},"subject":"WIP: Let developers/operators add watchers to object audit (simplified)","message":"WIP: Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/dc9c67a26ce6f10002906202ad7ea524ce40bed2"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/dc9c67a26ce6f10002906202ad7ea524ce40bed2"}]},"branch":"refs/heads/master"},"009c17a93478099a6a091af102a1b58782292d90":{"kind":"REWORK","_number":16,"created":"2020-06-11 02:10:41.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/16","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/16","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/16 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/16 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/16 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/16"}}},"commit":{"parents":[{"commit":"0b86f681f5e225854b6e66f3e5f2295e9ff3107e","subject":"Merge \"swift-get-nodes: Allow users to specify either quoted or unquoted paths\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/0b86f681f5e225854b6e66f3e5f2295e9ff3107e"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-06-11 02:10:18.000000000","tz":-300},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/009c17a93478099a6a091af102a1b58782292d90"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/009c17a93478099a6a091af102a1b58782292d90"}]},"branch":"refs/heads/master"},"10f6e15e789b0bd69497642f13a587b0075dc03e":{"kind":"REWORK","_number":17,"created":"2020-06-23 14:08:47.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/17","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/17","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/17 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/17 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/17 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/17"}}},"commit":{"parents":[{"commit":"51a587ed8dd5700b558ad26d70dcb7facc0f91e4","subject":"Use ensure-pip role","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/51a587ed8dd5700b558ad26d70dcb7facc0f91e4"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-06-23 14:08:44.000000000","tz":180},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/10f6e15e789b0bd69497642f13a587b0075dc03e"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/10f6e15e789b0bd69497642f13a587b0075dc03e"}]},"branch":"refs/heads/master"},"b62e64f4845040d3d7ec2f95f6b79d2b239fecf2":{"kind":"REWORK","_number":18,"created":"2020-06-26 02:56:32.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/18","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/18","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/18 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/18 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/18 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/18"}}},"commit":{"parents":[{"commit":"d75d479cb84b745c8bbd28728b754aac41d55a8b","subject":"Merge \"Bump up probe test timeout\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/d75d479cb84b745c8bbd28728b754aac41d55a8b"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-06-26 02:53:26.000000000","tz":-300},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b62e64f4845040d3d7ec2f95f6b79d2b239fecf2"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b62e64f4845040d3d7ec2f95f6b79d2b239fecf2"}]},"branch":"refs/heads/master"},"05faa6530f12d3adcb51c1e662d5c14bfce6e966":{"kind":"REWORK","_number":19,"created":"2020-07-08 20:54:34.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/19","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/19","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/19 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/19 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/19 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/19"}}},"commit":{"parents":[{"commit":"2e001431fd0907c97d44b81dd1f3d2d14ae1208b","subject":"s3api: Don\u0027t do naive HEAD request for auth","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/2e001431fd0907c97d44b81dd1f3d2d14ae1208b"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-07-08 20:54:08.000000000","tz":180},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/05faa6530f12d3adcb51c1e662d5c14bfce6e966"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/05faa6530f12d3adcb51c1e662d5c14bfce6e966"}]},"branch":"refs/heads/master"},"d4ed4f23ff3cc7af2707036d9a8c5324aff39a96":{"kind":"REWORK","_number":20,"created":"2020-07-09 15:11:26.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/20","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/20","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/20 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/20 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/20 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/20"}}},"commit":{"parents":[{"commit":"2e001431fd0907c97d44b81dd1f3d2d14ae1208b","subject":"s3api: Don\u0027t do naive HEAD request for auth","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/2e001431fd0907c97d44b81dd1f3d2d14ae1208b"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-07-09 15:10:32.000000000","tz":180},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/d4ed4f23ff3cc7af2707036d9a8c5324aff39a96"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/d4ed4f23ff3cc7af2707036d9a8c5324aff39a96"}]},"branch":"refs/heads/master"},"a4ab7d873eef67a03b10174462b38701467fc38b":{"kind":"REWORK","_number":21,"created":"2020-07-09 15:25:39.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/21","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/21","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/21 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/21 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/21 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/21"}}},"commit":{"parents":[{"commit":"2e001431fd0907c97d44b81dd1f3d2d14ae1208b","subject":"s3api: Don\u0027t do naive HEAD request for auth","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/2e001431fd0907c97d44b81dd1f3d2d14ae1208b"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-07-09 15:25:29.000000000","tz":180},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/a4ab7d873eef67a03b10174462b38701467fc38b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/a4ab7d873eef67a03b10174462b38701467fc38b"}]},"branch":"refs/heads/master"},"8725750d7efb5a83def3a4b5f350c83fc7bfc731":{"kind":"REWORK","_number":22,"created":"2020-07-09 20:01:48.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/22","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/22","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/22 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/22 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/22 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/22"}}},"commit":{"parents":[{"commit":"2e001431fd0907c97d44b81dd1f3d2d14ae1208b","subject":"s3api: Don\u0027t do naive HEAD request for auth","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/2e001431fd0907c97d44b81dd1f3d2d14ae1208b"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-07-09 20:01:05.000000000","tz":0},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/8725750d7efb5a83def3a4b5f350c83fc7bfc731"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/8725750d7efb5a83def3a4b5f350c83fc7bfc731"}]},"branch":"refs/heads/master"},"685aee57611a78f59c11a9a8bb2542bb3d28df5c":{"kind":"REWORK","_number":23,"created":"2020-07-10 04:17:51.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/23","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/23","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/23 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/23 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/23 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/23"}}},"commit":{"parents":[{"commit":"2e001431fd0907c97d44b81dd1f3d2d14ae1208b","subject":"s3api: Don\u0027t do naive HEAD request for auth","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/2e001431fd0907c97d44b81dd1f3d2d14ae1208b"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-07-10 04:17:44.000000000","tz":-300},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/685aee57611a78f59c11a9a8bb2542bb3d28df5c"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/685aee57611a78f59c11a9a8bb2542bb3d28df5c"}]},"branch":"refs/heads/master"},"06e4eec82a1f4a4ab9302236f82292119fe1beac":{"kind":"REWORK","_number":24,"created":"2020-07-21 23:40:00.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/24","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/24","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/24 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/24 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/24 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/24"}}},"commit":{"parents":[{"commit":"d287854c8a2765b64d37dcb6431204af59b503c6","subject":"Merge \"Get rid of memcache attr on proxy-server app\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/d287854c8a2765b64d37dcb6431204af59b503c6"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-07-21 23:39:36.000000000","tz":180},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/06e4eec82a1f4a4ab9302236f82292119fe1beac"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/06e4eec82a1f4a4ab9302236f82292119fe1beac"}]},"branch":"refs/heads/master"},"0f8dfacf8a5e117e3679ee2e745d44dc29bc5071":{"kind":"TRIVIAL_REBASE","_number":25,"created":"2020-07-21 23:41:42.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/25","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/25","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/25 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/25 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/25 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/25"}}},"commit":{"parents":[{"commit":"1c91547643f9c85f152d1d8c15431fec8334e214","subject":"Use latest pip in gate jobs","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/1c91547643f9c85f152d1d8c15431fec8334e214"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-07-21 23:41:24.000000000","tz":180},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/0f8dfacf8a5e117e3679ee2e745d44dc29bc5071"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/0f8dfacf8a5e117e3679ee2e745d44dc29bc5071"}]},"branch":"refs/heads/master"},"dbe4c09f40f5c0db0ca8863c9eec6fc5558d7543":{"kind":"REWORK","_number":26,"created":"2020-07-22 10:35:31.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/26","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/26","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/26 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/26 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/26 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/26"}}},"commit":{"parents":[{"commit":"b1f38728963febfa409a803e5d44ff17a3e2226f","subject":"Merge \"py3: Stop munging RAW_PATH_INFO\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b1f38728963febfa409a803e5d44ff17a3e2226f"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-07-22 10:34:53.000000000","tz":180},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/dbe4c09f40f5c0db0ca8863c9eec6fc5558d7543"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/dbe4c09f40f5c0db0ca8863c9eec6fc5558d7543"}]},"branch":"refs/heads/master"},"dd46912cda8225341dbb99c450dfc75ea33b3a1a":{"kind":"REWORK","_number":27,"created":"2020-07-22 13:57:33.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/27","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/27","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/27 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/27 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/27 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/27"}}},"commit":{"parents":[{"commit":"b1f38728963febfa409a803e5d44ff17a3e2226f","subject":"Merge \"py3: Stop munging RAW_PATH_INFO\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b1f38728963febfa409a803e5d44ff17a3e2226f"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-07-22 13:56:44.000000000","tz":180},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/dd46912cda8225341dbb99c450dfc75ea33b3a1a"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/dd46912cda8225341dbb99c450dfc75ea33b3a1a"}]},"branch":"refs/heads/master"},"97d22ac51c32b275f80ea1fc371de33026615837":{"kind":"REWORK","_number":28,"created":"2020-07-22 14:18:19.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/28","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/28","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/28 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/28 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/28 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/28"}}},"commit":{"parents":[{"commit":"b1f38728963febfa409a803e5d44ff17a3e2226f","subject":"Merge \"py3: Stop munging RAW_PATH_INFO\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b1f38728963febfa409a803e5d44ff17a3e2226f"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-07-22 14:17:55.000000000","tz":180},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/97d22ac51c32b275f80ea1fc371de33026615837"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/97d22ac51c32b275f80ea1fc371de33026615837"}]},"branch":"refs/heads/master"},"9938facccebc45fa41c5ce62163e6fe208025e6c":{"kind":"REWORK","_number":29,"created":"2020-08-10 14:17:59.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/29","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/29","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/29 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/29 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/29 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/29"}}},"commit":{"parents":[{"commit":"b1f38728963febfa409a803e5d44ff17a3e2226f","subject":"Merge \"py3: Stop munging RAW_PATH_INFO\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b1f38728963febfa409a803e5d44ff17a3e2226f"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-08-10 14:16:07.000000000","tz":180},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/9938facccebc45fa41c5ce62163e6fe208025e6c"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/9938facccebc45fa41c5ce62163e6fe208025e6c"}]},"branch":"refs/heads/master"},"2eb4f0fc63528cb3ea8ac576da7068103cb9ab4b":{"kind":"REWORK","_number":30,"created":"2020-09-07 15:22:12.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/30","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/30","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/30 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/30 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/30 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/30"}}},"commit":{"parents":[{"commit":"b1f38728963febfa409a803e5d44ff17a3e2226f","subject":"Merge \"py3: Stop munging RAW_PATH_INFO\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b1f38728963febfa409a803e5d44ff17a3e2226f"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-09-07 15:21:55.000000000","tz":180},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/2eb4f0fc63528cb3ea8ac576da7068103cb9ab4b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/2eb4f0fc63528cb3ea8ac576da7068103cb9ab4b"}]},"branch":"refs/heads/master"},"187bcaa57161cd955924ac42d455fd6c8bb94f7f":{"kind":"REWORK","_number":31,"created":"2020-10-02 14:12:16.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/31","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/31","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/31 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/31 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/31 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/31"}}},"commit":{"parents":[{"commit":"b1f38728963febfa409a803e5d44ff17a3e2226f","subject":"Merge \"py3: Stop munging RAW_PATH_INFO\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b1f38728963febfa409a803e5d44ff17a3e2226f"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-10-02 14:12:02.000000000","tz":180},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/187bcaa57161cd955924ac42d455fd6c8bb94f7f"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/187bcaa57161cd955924ac42d455fd6c8bb94f7f"}]},"branch":"refs/heads/master"},"8290867021cdd864a549acdee0cd6ef809851840":{"kind":"TRIVIAL_REBASE","_number":32,"created":"2020-10-02 14:13:02.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/32","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/32","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/32 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/32 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/32 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/32"}}},"commit":{"parents":[{"commit":"454fceea1855ad2a6417a8c5829c9d28221372b5","subject":"Merge \"Update master for stable/victoria\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/454fceea1855ad2a6417a8c5829c9d28221372b5"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-10-02 14:12:52.000000000","tz":180},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/8290867021cdd864a549acdee0cd6ef809851840"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/8290867021cdd864a549acdee0cd6ef809851840"}]},"branch":"refs/heads/master"},"456b16564288a7e908f498ac5a274313ceccd8ac":{"kind":"REWORK","_number":33,"created":"2020-10-04 11:27:34.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/33","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/33","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/33 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/33 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/33 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/33"}}},"commit":{"parents":[{"commit":"4236a6efa34f6f8196a747d40911f2d37c3c4036","subject":"Merge \"Use bigger GreenPool for concurrent EC\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4236a6efa34f6f8196a747d40911f2d37c3c4036"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-10-04 11:27:21.000000000","tz":180},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/456b16564288a7e908f498ac5a274313ceccd8ac"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/456b16564288a7e908f498ac5a274313ceccd8ac"}]},"branch":"refs/heads/master"},"712a8bea6950fc0513c78431978f3e6a00fac101":{"kind":"REWORK","_number":34,"created":"2020-10-04 14:33:46.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/34","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/34","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/34 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/34 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/34 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/34"}}},"commit":{"parents":[{"commit":"4236a6efa34f6f8196a747d40911f2d37c3c4036","subject":"Merge \"Use bigger GreenPool for concurrent EC\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4236a6efa34f6f8196a747d40911f2d37c3c4036"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-10-04 14:33:16.000000000","tz":180},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/712a8bea6950fc0513c78431978f3e6a00fac101"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/712a8bea6950fc0513c78431978f3e6a00fac101"}]},"branch":"refs/heads/master"},"cd7fbdf36c74de4246ee1fbec64d8dbce266aba4":{"kind":"REWORK","_number":35,"created":"2020-10-04 16:24:48.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/35","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/35","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/35 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/35 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/35 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/35"}}},"commit":{"parents":[{"commit":"4236a6efa34f6f8196a747d40911f2d37c3c4036","subject":"Merge \"Use bigger GreenPool for concurrent EC\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4236a6efa34f6f8196a747d40911f2d37c3c4036"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-10-04 16:24:24.000000000","tz":180},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/cd7fbdf36c74de4246ee1fbec64d8dbce266aba4"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/cd7fbdf36c74de4246ee1fbec64d8dbce266aba4"}]},"branch":"refs/heads/master"},"a01047624da1ea440f29e5089cee98c05cf08aa4":{"kind":"REWORK","_number":36,"created":"2020-10-12 12:29:16.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/36","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/36","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/36 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/36 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/36 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/36"}}},"commit":{"parents":[{"commit":"055e7b93a557360e1e47b4624e36610a8203faf7","subject":"Imported Translations from Zanata","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/055e7b93a557360e1e47b4624e36610a8203faf7"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-10-12 12:28:53.000000000","tz":180},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/a01047624da1ea440f29e5089cee98c05cf08aa4"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/a01047624da1ea440f29e5089cee98c05cf08aa4"}]},"branch":"refs/heads/master"},"15f7f3880fbd94182b5b0414ea0c33de093fb250":{"kind":"REWORK","_number":37,"created":"2020-10-14 01:08:50.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/37","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/37","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/37 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/37 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/37 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/37"}}},"commit":{"parents":[{"commit":"055e7b93a557360e1e47b4624e36610a8203faf7","subject":"Imported Translations from Zanata","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/055e7b93a557360e1e47b4624e36610a8203faf7"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-10-14 01:04:06.000000000","tz":-300},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API, as a help to plugin writers.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/15f7f3880fbd94182b5b0414ea0c33de093fb250"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/15f7f3880fbd94182b5b0414ea0c33de093fb250"}]},"branch":"refs/heads/master"},"c4e1906ace36326924b2ca967510da90b4ae7256":{"kind":"REWORK","_number":38,"created":"2020-10-28 19:43:20.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/38","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/38","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/38 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/38 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/38 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/38"}}},"commit":{"parents":[{"commit":"6b7eecab5de70b454fa836515183432e1a97359c","subject":"Get unit tests passing on py39","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/6b7eecab5de70b454fa836515183432e1a97359c"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-10-28 19:27:06.000000000","tz":-300},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API, as a help to plugin writers.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c4e1906ace36326924b2ca967510da90b4ae7256"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c4e1906ace36326924b2ca967510da90b4ae7256"}]},"branch":"refs/heads/master"},"69ec8930adddea666e026ca883f238368e7ff365":{"kind":"TRIVIAL_REBASE","_number":39,"created":"2020-11-05 01:22:59.000000000","uploader":{"_account_id":18142,"name":"David Sariel","email":"dsariel@redhat.com","username":"dsariel"},"ref":"refs/changes/53/706653/39","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/39","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/39 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/39 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/39 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/39"}}},"commit":{"parents":[{"commit":"e47b854181622d4bb742843e3e1692c6d29a2a26","subject":"Merge \"saio: Stop processes more forcefully in resetswift\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/e47b854181622d4bb742843e3e1692c6d29a2a26"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"dsariel","email":"dsariel@redhat.com","date":"2020-11-05 01:21:11.000000000","tz":120},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to scan for objects with\nparticular MD5 checksums and take actions based on that (e.g. pirated\nmovies). Other operators may want to locate old DLO manifests and\nconvert them to SLO manifests. This can be used after a cluster fills\nup to locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API, as a help to plugin writers.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/69ec8930adddea666e026ca883f238368e7ff365"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/69ec8930adddea666e026ca883f238368e7ff365"}]},"branch":"refs/heads/master"},"46a22c5e024a60162c223c9059e13635126a0d13":{"kind":"REWORK","_number":40,"created":"2020-11-05 18:04:37.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/40","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/40","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/40 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/40 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/40 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/40"}}},"commit":{"parents":[{"commit":"e47b854181622d4bb742843e3e1692c6d29a2a26","subject":"Merge \"saio: Stop processes more forcefully in resetswift\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/e47b854181622d4bb742843e3e1692c6d29a2a26"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-11-05 18:04:15.000000000","tz":-360},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to ensure a semantic\nconsistency with all SLO segments accounted in their manifests,\nor locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, sequence_number, object_metadata, policy_index,\n              partition, **kwargs)\n\n   end(self, final_sequence_number, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API, as a help to plugin writers.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/46a22c5e024a60162c223c9059e13635126a0d13"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/46a22c5e024a60162c223c9059e13635126a0d13"}]},"branch":"refs/heads/master"},"a463427fb631a76917c1b7f3dfddda1eab99b847":{"kind":"NO_CODE_CHANGE","_number":41,"created":"2020-11-26 20:16:29.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/41","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/41","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/41 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/41 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/41 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/41"}}},"commit":{"parents":[{"commit":"e47b854181622d4bb742843e3e1692c6d29a2a26","subject":"Merge \"saio: Stop processes more forcefully in resetswift\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/e47b854181622d4bb742843e3e1692c6d29a2a26"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-11-26 20:09:00.000000000","tz":-360},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to ensure a semantic\nconsistency with all SLO segments accounted in their manifests,\nor locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, object_metadata, policy_index, partition,\n              **kwargs)\n\n   end(self, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API, as a help to plugin writers.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/a463427fb631a76917c1b7f3dfddda1eab99b847"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/a463427fb631a76917c1b7f3dfddda1eab99b847"}]},"branch":"refs/heads/master"},"c981baefae6e6be50d8642cbb430437789373742":{"kind":"REWORK","_number":42,"created":"2020-12-03 05:00:05.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/42","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/42","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/42 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/42 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/42 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/42"}}},"commit":{"parents":[{"commit":"e47b854181622d4bb742843e3e1692c6d29a2a26","subject":"Merge \"saio: Stop processes more forcefully in resetswift\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/e47b854181622d4bb742843e3e1692c6d29a2a26"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-12-03 04:52:33.000000000","tz":-360},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to ensure a semantic\nconsistency with all SLO segments accounted in their manifests,\nor locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, object_metadata, policy_index, partition, df,\n              **kwargs)\n\n   end(self, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hand, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API, as a help to plugin writers.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c981baefae6e6be50d8642cbb430437789373742"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c981baefae6e6be50d8642cbb430437789373742"}]},"branch":"refs/heads/master"},"b85a2fabdfbfbf0ceaf41fd031cb254930d92e9c":{"kind":"TRIVIAL_REBASE_WITH_MESSAGE_UPDATE","_number":43,"created":"2020-12-11 18:59:03.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/43","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/43","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/43 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/43 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/43 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/43"}}},"commit":{"parents":[{"commit":"442d7e22bb8fb045c3db7f87559e392010d3ccbb","subject":"Merge \"ssync: Tolerate more hang-ups\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/442d7e22bb8fb045c3db7f87559e392010d3ccbb"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-12-10 16:17:24.000000000","tz":-360},"subject":"Let developers/operators add watchers to object audit (simplified)","message":"Let developers/operators add watchers to object audit (simplified)\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to ensure a semantic\nconsistency with all SLO segments accounted in their manifests,\nor locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, object_metadata, policy_index, partition, df,\n              **kwargs)\n\n   end(self, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hang, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API, as a help to plugin writers.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b85a2fabdfbfbf0ceaf41fd031cb254930d92e9c"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b85a2fabdfbfbf0ceaf41fd031cb254930d92e9c"}]},"branch":"refs/heads/master"},"cd99803fd5d13e22dfd572533b1e440ba637ae9a":{"kind":"REWORK","_number":44,"created":"2020-12-12 01:37:59.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/44","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/44","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/44 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/44 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/44 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/44"}}},"commit":{"parents":[{"commit":"442d7e22bb8fb045c3db7f87559e392010d3ccbb","subject":"Merge \"ssync: Tolerate more hang-ups\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/442d7e22bb8fb045c3db7f87559e392010d3ccbb"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-12-12 01:19:27.000000000","tz":-360},"subject":"Let developers/operators add watchers to object audit","message":"Let developers/operators add watchers to object audit\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to ensure a semantic\nconsistency with all SLO segments accounted in their manifests,\nor locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, object_metadata, policy_index, partition,\n              data_file_path, **kwargs)\n\n   end(self, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hang, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API, as a help to plugin writers.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/cd99803fd5d13e22dfd572533b1e440ba637ae9a"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/cd99803fd5d13e22dfd572533b1e440ba637ae9a"}]},"branch":"refs/heads/master"},"227cf528276e2fccb839455af0282c331a05a470":{"kind":"REWORK","_number":45,"created":"2020-12-16 22:44:12.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/45","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/45","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/45 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/45 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/45 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/45"}}},"commit":{"parents":[{"commit":"6e9e84a5c2be7a5e0a8b5ef123ac3cbb272c3ebc","subject":"Merge \"Run DSVM func tests under py3\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/6e9e84a5c2be7a5e0a8b5ef123ac3cbb272c3ebc"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-12-16 22:44:07.000000000","tz":-360},"subject":"Let developers/operators add watchers to object audit","message":"Let developers/operators add watchers to object audit\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to ensure a semantic\nconsistency with all SLO segments accounted in their manifests,\nor locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, object_metadata, policy_index, partition,\n              data_file_path, **kwargs)\n\n   end(self, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hang, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API, as a help to plugin writers.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/227cf528276e2fccb839455af0282c331a05a470"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/227cf528276e2fccb839455af0282c331a05a470"}]},"branch":"refs/heads/master"},"8fccb088e403dfa280d0f5130469432abccc8f62":{"kind":"REWORK","_number":46,"created":"2020-12-24 06:11:13.000000000","uploader":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"ref":"refs/changes/53/706653/46","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/46","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/46 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/46 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/46 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/46"}}},"commit":{"parents":[{"commit":"e0d46d77fa740768f1dd5b989a63be85ff1fec20","subject":"Merge \"Fix up some log message grammar\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/e0d46d77fa740768f1dd5b989a63be85ff1fec20"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2020-12-24 04:04:22.000000000","tz":-480},"subject":"Let developers/operators add watchers to object audit","message":"Let developers/operators add watchers to object audit\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to ensure a semantic\nconsistency with all SLO segments accounted in their manifests,\nor locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, object_metadata, policy_index, partition,\n              data_file_path, **kwargs)\n\n   end(self, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hang, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API, as a help to plugin writers.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/8fccb088e403dfa280d0f5130469432abccc8f62"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/8fccb088e403dfa280d0f5130469432abccc8f62"}]},"branch":"refs/heads/master"},"1bbd7bd83a3f0ea82083db7db34160485759d578":{"kind":"REWORK","_number":47,"created":"2020-12-26 21:02:22.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/47","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/47","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/47 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/47 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/47 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/47"}}},"commit":{"parents":[{"commit":"e0d46d77fa740768f1dd5b989a63be85ff1fec20","subject":"Merge \"Fix up some log message grammar\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/e0d46d77fa740768f1dd5b989a63be85ff1fec20"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-12-26 21:01:40.000000000","tz":-360},"subject":"Let developers/operators add watchers to object audit","message":"Let developers/operators add watchers to object audit\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to ensure a semantic\nconsistency with all SLO segments accounted in their manifests,\nor locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, object_metadata, data_file_path, **kwargs)\n\n   end(self, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hang, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API, as a help to plugin writers.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/1bbd7bd83a3f0ea82083db7db34160485759d578"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/1bbd7bd83a3f0ea82083db7db34160485759d578"}]},"branch":"refs/heads/master"},"9748a99647b3914eeab08e3057ff728dcf7bbcbc":{"kind":"REWORK","_number":48,"created":"2020-12-26 23:22:54.000000000","uploader":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"ref":"refs/changes/53/706653/48","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/48","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/48 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/48 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/48 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/48"}}},"commit":{"parents":[{"commit":"e0d46d77fa740768f1dd5b989a63be85ff1fec20","subject":"Merge \"Fix up some log message grammar\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/e0d46d77fa740768f1dd5b989a63be85ff1fec20"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2020-12-26 23:20:17.000000000","tz":-480},"subject":"Let developers/operators add watchers to object audit","message":"Let developers/operators add watchers to object audit\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to ensure a semantic\nconsistency with all SLO segments accounted in their manifests,\nor locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, object_metadata, data_file_path, **kwargs)\n\n   end(self, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hang, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API, as a help to plugin writers.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/9748a99647b3914eeab08e3057ff728dcf7bbcbc"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/9748a99647b3914eeab08e3057ff728dcf7bbcbc"}]},"branch":"refs/heads/master"},"b97128090726db8818fccfc0de559c23d871c9fa":{"kind":"REWORK","_number":49,"created":"2020-12-26 23:25:40.000000000","uploader":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"ref":"refs/changes/53/706653/49","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/53/706653/49","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/49 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/49 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/53/706653/49 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/53/706653/49"}}},"commit":{"parents":[{"commit":"e0d46d77fa740768f1dd5b989a63be85ff1fec20","subject":"Merge \"Fix up some log message grammar\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/e0d46d77fa740768f1dd5b989a63be85ff1fec20"}]}],"author":{"name":"Samuel Merritt","email":"sam@swiftstack.com","date":"2015-08-13 22:05:25.000000000","tz":-300},"committer":{"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","date":"2020-12-26 23:16:14.000000000","tz":-360},"subject":"Let developers/operators add watchers to object audit","message":"Let developers/operators add watchers to object audit\n\nSwift operators may find it useful to operate on each object in their\ncluster in some way. This commit provides them a way to hook into the\nobject auditor with a simple, clearly-defined boundary so that they\ncan iterate over their objects without additional disk IO.\n\nFor example, a cluster operator may want to ensure a semantic\nconsistency with all SLO segments accounted in their manifests,\nor locate objects that aren\u0027t in container listings. Now that Swift\nhas encryption support, this could be used to locate unencrypted\nobjects. The list goes on.\n\nThis commit makes the auditor locate, via entry points, the watchers\nnamed in its config file.\n\nA watcher is a class with at least these four methods:\n\n   __init__(self, conf, logger, **kwargs)\n\n   start(self, audit_type, **kwargs)\n\n   see_object(self, object_metadata, data_file_path, **kwargs)\n\n   end(self, **kwargs)\n\nThe auditor will call watcher.start(audit_type) at the start of an\naudit pass, watcher.see_object(...) for each object audited, and\nwatcher.end() at the end of an audit pass. All method arguments are\npassed as keyword args.\n\nThis version of the API is implemented on the context of the\nauditor itself, without spawning any additional processes.\nIf the plugins are not working well -- hang, crash, or leak --\nit\u0027s easier to debug them when there\u0027s no additional complication\nof processes that run by themselves.\n\nIn addition, we include a reference implementation of plugin for\nthe watcher API, as a help to plugin writers.\n\nChange-Id: I1be1faec53b2cdfaabf927598f1460e23c206b0a\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b97128090726db8818fccfc0de559c23d871c9fa"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b97128090726db8818fccfc0de559c23d871c9fa"}]},"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":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"}},{"label":"Workflow","status":"OK","applied_by":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"}}]}],"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":{}}}]}
