)]}'
{"id":"openstack%2Fswift~828069","triplet_id":"openstack%2Fswift~master~I58063c3830fb7b01c26fe1fa5aaec6353ff555c6","project":"openstack/swift","branch":"master","topic":"add_device_to_db_id","attention_set":{},"removed_from_attention_set":{"7233":{"account":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"last_update":"2022-04-21 06:11:42.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"I58063c3830fb7b01c26fe1fa5aaec6353ff555c6","subject":"DB: Encode the device to the DB id","status":"MERGED","created":"2022-02-07 04:12:18.000000000","updated":"2022-04-21 06:13:01.000000000","submitted":"2022-04-21 06:11:42.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":3,"unresolved_comment_count":1,"has_review_started":true,"submission_id":"828069-add_device_to_db_id","meta_rev_id":"dec20b07df9c8cd8775d464afc84666d1dab8d2c","_number":828069,"virtual_id_number":828069,"owner":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:gate","value":2,"date":"2022-04-21 06:11:42.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"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":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":2,"date":"2022-04-05 13:32:49.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":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":1,"date":"2022-04-21 04:51:40.000000000","permitted_voting_range":{"min":1,"max":1},"_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":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2022-02-07 05:10:37.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":"2022-04-05 13:32:49.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"}],"messages":[{"id":"3e2cfeaa4cfba8882807595b688e1c8cb0c91834","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2022-02-07 04:12:18.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"9a7c047eea2a312f52834d7205e82ff25637c2ff","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2022-02-07 04:14:25.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"dc562076c5f44fc3ad6fbca9c197e305b50bde00","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-02-07 05:10:37.000000000","message":"Patch Set 1: Verified-1\n\n(1 comment)\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\n\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/a19e29a5c2cc489cb01a93dbb26c583d : SUCCESS in 8m 26s\n- grenade https://zuul.opendev.org/t/openstack/build/50bedbe4eb774e6f860b73e860523601 : SUCCESS in 53m 51s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/a710648286be4f83ab013d6f1753fadd : SUCCESS in 46m 32s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/b06992d1cfb9432890cc593d028d00a4 : SUCCESS in 35m 15s\n- swift-tox-func-py36-centos-8-stream-fips https://zuul.opendev.org/t/openstack/build/68439abb044c4297b749b50d63e9d492 : SUCCESS in 17m 36s (non-voting)\n- swift-tox-func-encryption-py36-centos-8-stream-fips https://zuul.opendev.org/t/openstack/build/6b2b348b83914f988ad8be741f602b47 : SUCCESS in 17m 12s (non-voting)\n- swift-tox-func-ec-py36-centos-8-stream-fips https://zuul.opendev.org/t/openstack/build/2dedd614f9fb4d478d1490347c164500 : SUCCESS in 18m 43s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/6226bed762d9448396dd912ce2fcf1cc : SUCCESS in 7m 12s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/fd8890ff87f343caad5e361170f86574 : SUCCESS in 5m 53s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/33bc0e7f6f5342c88544503e5541cdd7 : SUCCESS in 17m 17s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/3358575cd6874ab5b6260a7301317a08 : SUCCESS in 17m 44s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/2c1fb8a167414adabe266685ff4d7556 : SUCCESS in 14m 47s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/2694b5abdfa64ca5abe599f4575c39a8 : SUCCESS in 14m 05s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/0464809fb21243f3acf59f93dc5107b3 : SUCCESS in 18m 02s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/474282ecf5a146b68d1f82250d685109 : SUCCESS in 16m 57s\n- swift-tox-func-py38 https://zuul.opendev.org/t/openstack/build/1aee648a38af4d29b256e4ea72e17dd2 : SUCCESS in 14m 17s\n- swift-tox-func-encryption-py38 https://zuul.opendev.org/t/openstack/build/6f5443f5b4b748a58fd446c9bd24d12b : SUCCESS in 12m 35s\n- swift-tox-func-ec-py38 https://zuul.opendev.org/t/openstack/build/0049f553c454416ea45823acac555af0 : SUCCESS in 14m 58s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/f436818d25824d1ca38e455c4747de7b : SUCCESS in 5m 59s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/bd2e7654bad44ba09fc5183ca6716c88 : SUCCESS in 18m 52s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/7a705989174b4523915ae5a6d8b53a58 : SUCCESS in 46m 44s\n- swift-probetests-centos-8-stream https://zuul.opendev.org/t/openstack/build/e6367332b44f43c588dad5a755e0c999 : SUCCESS in 50m 47s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/844c3db9208d40248b5797141aeca827 : SUCCESS in 37m 51s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/9587eb60bf2e49cca3be29fe24ce8c51 : SUCCESS in 37m 22s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/2f2090b0af274ab8b698f74198cbf985 : SUCCESS in 16m 07s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/27cc6b3cc5cf4f3d88875e279f502a41 : FAILURE in 5m 28s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/b50c1bce5c2f4ad0b80f9db26944565a : SUCCESS in 16m 28s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/bd25d1f1dd0445a68b778ac7007cb500 : SUCCESS in 49m 18s","accounts_in_message":[],"_revision_number":1},{"id":"25542ff3a67c5e0f327cfaab19d46aabaa6cb8de","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2022-02-07 06:05:39.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"9ab685ff3612a6bed5210a280d1d6503716d2785","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-02-07 07:01:02.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/eaad4776935a4b5fbbad9412e11e8c81 : SUCCESS in 9m 11s\n- grenade https://zuul.opendev.org/t/openstack/build/bffd396b1d054675aea5bc3c06d67395 : SUCCESS in 41m 00s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/51101953c8954873ab9280041d2d345d : SUCCESS in 35m 15s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/a1a6b6c0951044f3b3af799658b4c922 : SUCCESS in 35m 43s\n- swift-tox-func-py36-centos-8-stream-fips https://zuul.opendev.org/t/openstack/build/fae59c48deb041028e5eacf9cef19fa5 : SUCCESS in 15m 27s (non-voting)\n- swift-tox-func-encryption-py36-centos-8-stream-fips https://zuul.opendev.org/t/openstack/build/5a1f4e81299e4e5086455b521c917dbf : SUCCESS in 16m 28s (non-voting)\n- swift-tox-func-ec-py36-centos-8-stream-fips https://zuul.opendev.org/t/openstack/build/1a153bb377054fb0bfea6f57e48f2982 : SUCCESS in 21m 58s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/b511331fb13c4fbe9a88f363559b4374 : SUCCESS in 7m 07s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/1379769ebf734552a033402b213b108a : SUCCESS in 5m 16s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/27e750e0fbb24807a9858d299e5f443d : SUCCESS in 18m 35s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/d45e4c9dde4d48b19e1df6b9e9c48302 : SUCCESS in 19m 00s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/8c7b59e7c5254a5f8dd2bfafaec35a81 : SUCCESS in 12m 03s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/e086b7ef5ee345048336c71b63443f33 : SUCCESS in 22m 11s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/be75184d5ddd4e039f6fbb7cc9fa4264 : SUCCESS in 19m 22s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/366e8fa9135f47a3b6ca36d306acee27 : SUCCESS in 14m 34s\n- swift-tox-func-py38 https://zuul.opendev.org/t/openstack/build/6f46ef5bae804961b2b2f5ca18be7a11 : SUCCESS in 20m 16s\n- swift-tox-func-encryption-py38 https://zuul.opendev.org/t/openstack/build/1a7ed368eed24a3a8e4354551ea87d9a : SUCCESS in 12m 52s\n- swift-tox-func-ec-py38 https://zuul.opendev.org/t/openstack/build/586b4dcc14584511b99e523d5600c698 : SUCCESS in 20m 39s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/30ae9c4c2067438daf67b59d0108d495 : SUCCESS in 8m 21s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/ca7eafe292e24ab5a5900967d1fb2e75 : SUCCESS in 17m 04s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/9e15e64f14664e609922d8ba4a137f83 : SUCCESS in 53m 53s\n- swift-probetests-centos-8-stream https://zuul.opendev.org/t/openstack/build/7a40c3342d464a488f87748240a56df9 : SUCCESS in 51m 58s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/4a6048d755134d94acd039235ce8372f : SUCCESS in 38m 02s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/80f9e04d3c104964b224231112bb8ae8 : SUCCESS in 46m 32s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/ebad8f93e99b489381b488c602ee5614 : SUCCESS in 12m 55s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/2fea9a8b34de4c3c9c03c5d6e5a30e31 : SUCCESS in 4m 58s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/b365cdb98f20452b89bd3576ddb94b4f : SUCCESS in 24m 36s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/cf37fb831b8c423badf7f9e917fc96eb : SUCCESS in 46m 26s","accounts_in_message":[],"_revision_number":2},{"id":"791d15373b8e8ca22d5a1575dcce5eb0e08c4aee","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-02-07 09:09:40.000000000","message":"Patch Set 2:\n\nBuild failed (ARM64 pipeline).\n\n- swift-tox-py38-arm64 https://zuul.opendev.org/t/openstack/build/35f7682e8c8647e889b8908b14174d34 : SUCCESS in 53m 18s\n- swift-tox-py39-arm64 https://zuul.opendev.org/t/openstack/build/583624fe094e454d87a447997f7d3aa8 : SUCCESS in 1h 03m 00s\n- swift-probetests-centos-8-stream-arm64 https://zuul.opendev.org/t/openstack/build/b170b1072b144b6bada2a9b7358adf2d : TIMED_OUT in 3h 01m 20s\n- swift-tox-func-encryption-py38-arm64 https://zuul.opendev.org/t/openstack/build/15e1484b91e741e18eacf4319898fb5f : SUCCESS in 54m 32s\n- swift-tox-func-py38-arm64 https://zuul.opendev.org/t/openstack/build/a03543d401514b539bdce6914e3658af : SUCCESS in 1h 15m 39s","accounts_in_message":[],"_revision_number":2},{"id":"2623272f1803e9371f18ccd60dbc8a51131e0098","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2022-04-05 13:32:49.000000000","message":"Patch Set 2: Code-Review+2\n\n(2 comments)","accounts_in_message":[],"_revision_number":2},{"id":"d5e8926da3d0787c3c6586bf8e728c17579c3b93","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2022-04-21 04:51:40.000000000","message":"Patch Set 2: Workflow+1","accounts_in_message":[],"_revision_number":2},{"id":"1f1b382b737006fe72ef624981b8cd8682bfc72b","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-04-21 04:52:31.000000000","message":"Patch Set 2: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":2},{"id":"3870256ef1bc4297a5d065680b560cd39b9a179c","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-04-21 06:11:42.000000000","message":"Patch Set 2: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/e50ef89041ed4f0786b694c81b8a6954 : SUCCESS in 9m 08s\n- grenade https://zuul.opendev.org/t/openstack/build/9573ad915452461a8d06fd51790a97cf : SUCCESS in 1h 19m 02s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/c6c72a3fbf844eb6acc80cd90eb09839 : SUCCESS in 1h 03m 02s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/dff65425cc3b4a0390c780759e70b5e6 : SUCCESS in 48m 15s\n- swift-upload-image https://zuul.opendev.org/t/openstack/build/0d6b94c81d09458fa684342b09a46579 : SUCCESS in 7m 53s (non-voting)\n- swift-upload-image-py3 https://zuul.opendev.org/t/openstack/build/5fcc4c7c012648c59fbf01351481b11a : SUCCESS in 6m 29s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/7c99affdc41c4187b9bde94819b34f16 : SUCCESS in 16m 54s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/cf6e5123a4404e1da03eddbe92b085c5 : SUCCESS in 22m 12s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/c5fbdc99753b40e38d69d39f9d5378bc : SUCCESS in 17m 12s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/e9efc2b1846c44e7818d853bb071be4d : SUCCESS in 17m 20s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/48736027879f43e380f23685b0f840f8 : SUCCESS in 18m 31s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/c725bef1a1b644379c85f4efc3382261 : SUCCESS in 18m 36s\n- swift-tox-func-py38 https://zuul.opendev.org/t/openstack/build/4ee3ac22b53142ebb836b71d5e4c1e1f : SUCCESS in 17m 58s\n- swift-tox-func-encryption-py38 https://zuul.opendev.org/t/openstack/build/2c444c7d79ef4794aea35f648afb42f0 : SUCCESS in 17m 35s\n- swift-tox-func-ec-py38 https://zuul.opendev.org/t/openstack/build/e982e4e27bf941d8ae9c600f123a1314 : SUCCESS in 17m 51s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/6a57ea24cc5c49e29360383028903fa9 : SUCCESS in 7m 20s\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/d4132e80342f424794c71b37d77e51d3 : SUCCESS in 50m 27s\n- swift-probetests-centos-8-stream https://zuul.opendev.org/t/openstack/build/942599149f044b83977850dd57225877 : SUCCESS in 1h 12m 41s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/93a88be4651d415096424ddc072a4af5 : SUCCESS in 39m 50s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/de2ce24431944c07bb88e47c749155a4 : SUCCESS in 41m 06s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/9fcfc14d9a9b44398323a939650c1b1a : SUCCESS in 13m 42s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/c602baf8849d43b3be397c508d5e87a3 : SUCCESS in 6m 27s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/c19b672d33bb4b7aad8d2c840e566d42 : SUCCESS in 26m 36s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/324522f0ec044a4d97d08b2e119da598 : SUCCESS in 54m 17s","accounts_in_message":[],"_revision_number":2},{"id":"5a4891bb0206fe3473e0080bea87dd2a1a74caf1","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-04-21 06:11:42.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":2},{"id":"dec20b07df9c8cd8775d464afc84666d1dab8d2c","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-04-21 06:13:01.000000000","message":"Patch Set 2:\n\nBuild succeeded (promote pipeline).\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/96873d8aed964269b3cb0a9ec0a29902 : SUCCESS in 59s\n- swift-promote-image https://zuul.opendev.org/t/openstack/build/36cd95c091e94e71a85d4ac54589a8d3 : SUCCESS in 49s (non-voting)\n- swift-promote-image-py3 https://zuul.opendev.org/t/openstack/build/797db67931734345b26f02de68fcf9b2 : SUCCESS in 51s (non-voting)","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"08da83c193126f480e6690a83c41695f6f40fcbf","revisions":{"df7845690b31307ace40e3269454b1f75cb1cc9e":{"kind":"REWORK","_number":1,"created":"2022-02-07 04:12:18.000000000","uploader":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"ref":"refs/changes/69/828069/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/69/828069/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/69/828069/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/69/828069/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/69/828069/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/69/828069/1"}}},"commit":{"parents":[{"commit":"a669a7598703691fc7b2ff7c2ce0d90b92787adb","subject":"Merge \"proxy-server: add stats for backend shard_listing requests\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/a669a7598703691fc7b2ff7c2ce0d90b92787adb"}]}],"author":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2022-02-07 03:51:42.000000000","tz":660},"committer":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2022-02-07 03:51:42.000000000","tz":660},"subject":"DB: Encode the device to the DB id","message":"DB: Encode the device to the DB id\n\nCurrently the DB ids, used to identify a database broker, is a uuid\n(uuid4). This is a great unique identifier, however we don\u0027t tend to\ntrack DB ids.\nWhen we replicate to other primaries or nodes. We track which brokers we\nreplicate with or replicate with us via the incoming_sync and\noutgoing_sync tables. These contain the DB id of the broker in question\nand a timestamp.\nThese tables entries do get reclaimed over time, so gives us a nice\nsnapshot of whose been replicating with us.\n\nUnfortuantly however, as we don\u0027t track these UUIDs to a broker or node\nwhen we want to go look at these tables in search for replication problems\nwe tend to be at a loss.\n\nThis patch helps to identify the source by adding the device to the DB\nid:\n\n   \u003cuuid4\u003e-\u003cdevice\u003e\n\nThe patch uses the device as written in the path of the broker. Now when\nwe look into the sync tables we can look up in the ring and know exactly\nwhich node it came from (or talking to). Although this only helps if you\nuse unique device names across the cluster.\n\nAn ID is generated when an account or container is first initialised.\nBut also after an rsync or rsyn_then_merge on the RPC (new location) side.\nSo as things replicate we\u0027ll get updated device\u0027s in the ID, which will also\nshow up in syncs in the future as the new node starts to replicate.\n\nWhen applied to an existing cluster, there will be a mix of \u003cuuid4\u003e and\n\u003cuuid4 + device\u003e IDs. But these ids are just text, and they will slowly\nchange as things get replicated/rebalanced around.\n\nChange-Id: I58063c3830fb7b01c26fe1fa5aaec6353ff555c6\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/df7845690b31307ace40e3269454b1f75cb1cc9e"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/df7845690b31307ace40e3269454b1f75cb1cc9e"}]},"branch":"refs/heads/master"},"08da83c193126f480e6690a83c41695f6f40fcbf":{"kind":"REWORK","_number":2,"created":"2022-02-07 06:05:39.000000000","uploader":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"ref":"refs/changes/69/828069/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/69/828069/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/69/828069/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/69/828069/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/69/828069/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/69/828069/2"}}},"commit":{"parents":[{"commit":"a669a7598703691fc7b2ff7c2ce0d90b92787adb","subject":"Merge \"proxy-server: add stats for backend shard_listing requests\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/a669a7598703691fc7b2ff7c2ce0d90b92787adb"}]}],"author":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2022-02-07 03:51:42.000000000","tz":660},"committer":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2022-02-07 06:05:26.000000000","tz":660},"subject":"DB: Encode the device to the DB id","message":"DB: Encode the device to the DB id\n\nCurrently the DB ids, used to identify a database broker, is a uuid\n(uuid4). This is a great unique identifier, however we don\u0027t tend to\ntrack DB ids.\nWhen we replicate to other primaries or nodes. We track which brokers we\nreplicate with or replicate with us via the incoming_sync and\noutgoing_sync tables. These contain the DB id of the broker in question\nand a timestamp.\nThese tables entries do get reclaimed over time, so gives us a nice\nsnapshot of whose been replicating with us.\n\nUnfortuantly however, as we don\u0027t track these UUIDs to a broker or node\nwhen we want to go look at these tables in search for replication problems\nwe tend to be at a loss.\n\nThis patch helps to identify the source by adding the device to the DB\nid:\n\n   \u003cuuid4\u003e-\u003cdevice\u003e\n\nThe patch uses the device as written in the path of the broker. Now when\nwe look into the sync tables we can look up in the ring and know exactly\nwhich node it came from (or talking to). Although this only helps if you\nuse unique device names across the cluster.\n\nAn ID is generated when an account or container is first initialised.\nBut also after an rsync or rsyn_then_merge on the RPC (new location) side.\nSo as things replicate we\u0027ll get updated device\u0027s in the ID, which will also\nshow up in syncs in the future as the new node starts to replicate.\n\nWhen applied to an existing cluster, there will be a mix of \u003cuuid4\u003e and\n\u003cuuid4 + device\u003e IDs. But these ids are just text, and they will slowly\nchange as things get replicated/rebalanced around.\n\nChange-Id: I58063c3830fb7b01c26fe1fa5aaec6353ff555c6\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/08da83c193126f480e6690a83c41695f6f40fcbf"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/08da83c193126f480e6690a83c41695f6f40fcbf"}]},"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":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}},{"label":"Workflow","status":"OK","applied_by":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}}]}],"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":{}}}]}
