)]}'
{"id":"openstack%2Fswift~723609","triplet_id":"openstack%2Fswift~feature%2Flosf~Ic69cbbbe8f59ef9f85e8ffa939f443b5085a0daa","project":"openstack/swift","branch":"feature/losf","topic":"feature/losf_new_kv_obj_format","hashtags":[],"change_id":"Ic69cbbbe8f59ef9f85e8ffa939f443b5085a0daa","subject":"New key format for objects in the index-server","status":"ABANDONED","created":"2020-04-27 16:39:13.000000000","updated":"2021-10-30 05:19:09.000000000","total_comment_count":5,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"0fd60545157a8b12a3797b87c1475b91e4004e4d","_number":723609,"virtual_id_number":723609,"owner":{"_account_id":25251,"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","username":"alecuyer"},"actions":{},"labels":{"Verified":{"disliked":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"_account_id":25251,"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","username":"alecuyer"},{"tag":"autogenerated:zuul:check","value":-1,"date":"2020-05-26 18:51:09.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","value":-1,"default_value":0,"optional":true},"Code-Review":{"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":25251,"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","username":"alecuyer"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":0},"_account_id":25251,"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","username":"alecuyer"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":25251,"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","username":"alecuyer"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2020-05-26 18:51:09.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"}],"messages":[{"id":"a0f44169a8a763ea8b86455e8e5330ebe6378940","author":{"_account_id":25251,"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","username":"alecuyer"},"date":"2020-04-27 16:39:13.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"0479c2d46ab87c15db4e5922eaac3c9179cee664","author":{"_account_id":25251,"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","username":"alecuyer"},"date":"2020-04-27 16:50:30.000000000","message":"Patch Set 1: Code-Review-1","accounts_in_message":[],"_revision_number":1},{"id":"50548cd879e8601ec64cc78c994e95b0f8112d95","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-04-27 20:56:15.000000000","message":"Patch Set 1: Verified-1\n\n(3 comments)\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\n\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/ffc3f2a7b14548d4b17ec9858e03e914 : SUCCESS in 10m 28s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/00ec8552a2a64ce48861d0026b0f0789 : SUCCESS in 13m 25s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/29bb341e29454928b0b29e432d950162 : SUCCESS in 12m 36s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/5cedbe98fb884da49e174f5e8542361b : FAILURE in 14m 38s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/3fcbe01d55de4561a1351898a027e4eb : FAILURE in 15m 28s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/5504e8b7a3904f628c88b17f6a393e44 : FAILURE in 18m 29s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/edce733252374df289a3c32748169995 : FAILURE in 15m 02s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/a7559465798d46c297cf9a8a0a6909aa : SUCCESS in 12m 03s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/1e5946a2c2f044be825e6c0e8344b947 : SUCCESS in 17m 12s\n- swift-tox-func-domain-remap-staticweb-py27 https://zuul.opendev.org/t/openstack/build/284a56f5fb5d48e0868858d13c74402d : SUCCESS in 17m 00s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/4f884a58de344f25b7dae96752f2a7f8 : SUCCESS in 15m 35s\n- swift-tox-func-s3api-py27 https://zuul.opendev.org/t/openstack/build/74b5b939c791477eb0ec5fe984526ede : SUCCESS in 23m 19s\n- swift-tox-func-losf-py27 https://zuul.opendev.org/t/openstack/build/2916806621ae4f1b8baf6a76730223df : RETRY_LIMIT in 6m 06s (non-voting)\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/c4c86112308f42f5aec20377f862429e : SUCCESS in 14m 02s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/79842e3fd701420a9c4a02e33680fa4e : SUCCESS in 32m 18s\n- swift-tox-func-domain-remap-staticweb-py37 https://zuul.opendev.org/t/openstack/build/7245eef3dae34a24b22c02998134f5a8 : SUCCESS in 16m 05s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/7ad81cd007294750bfa44cea208872d2 : SUCCESS in 17m 32s\n- swift-tox-func-s3api-py37 https://zuul.opendev.org/t/openstack/build/12b9ffef84124bcfbdfa30702d5d27b3 : SUCCESS in 20m 58s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/6389e2a6424c4196bcbf5e8667aab5b4 : SUCCESS in 32m 17s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/306ea5ef77574f4794710fa1a49d226c : SUCCESS in 49m 43s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/882d76d3071e43fe81be71736a34f8ca : SUCCESS in 30m 42s\n- swift-dsvm-functional-py3 https://zuul.opendev.org/t/openstack/build/f6152d5676d5460ea285f80f10dd238c : SUCCESS in 33m 46s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/5c685d42b329419a88d3c07ecb97eec9 : SUCCESS in 33m 42s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/a289c84877f84358ab8f62c1ff402c36 : FAILURE in 13m 16s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/43409f2c1ccb4e40973a39007e3f5779 : FAILURE in 7m 54s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/5a890778bbb741deb3193c1a75466bf9 : SUCCESS in 29m 07s","accounts_in_message":[],"_revision_number":1},{"id":"f3cd259743f8b4a4a3e8e09105a6ad272da1f901","author":{"_account_id":25251,"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","username":"alecuyer"},"date":"2020-05-26 17:58:50.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"ff055dec45ef78e7488cb44ab337ff3919e68495","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-05-26 18:51:09.000000000","message":"Patch Set 2: Verified-1\n\n(2 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- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d8dc2d2dc1734bdf974e99431ef4f5e4 : SUCCESS in 10m 40s\n- swift-build-image https://zuul.opendev.org/t/openstack/build/3b7e2a7114ab486485050e00b4997280 : SUCCESS in 11m 22s (non-voting)\n- swift-build-image-py3 https://zuul.opendev.org/t/openstack/build/564e3665d00b43409c40bbe9e5655085 : SUCCESS in 13m 08s (non-voting)\n- swift-tox-py27 https://zuul.opendev.org/t/openstack/build/b3ecd2c6417b4a6b84f43848071babbe : FAILURE in 17m 55s\n- swift-tox-py36 https://zuul.opendev.org/t/openstack/build/afa454a4f528437fa43ab41cd0a70d7f : FAILURE in 16m 05s\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/28760b33de984087840fcf8b41ac39ae : FAILURE in 21m 50s\n- swift-tox-py38 https://zuul.opendev.org/t/openstack/build/a77e75c8123c4794819c45aaa7a20f84 : FAILURE in 22m 23s\n- swift-tox-func-py27 https://zuul.opendev.org/t/openstack/build/23fb6a4cdc674526a57844306205d06c : SUCCESS in 14m 04s\n- swift-tox-func-encryption-py27 https://zuul.opendev.org/t/openstack/build/e72163d197a64aa6b6715fb5c284d7e0 : SUCCESS in 16m 21s\n- swift-tox-func-domain-remap-staticweb-py27 https://zuul.opendev.org/t/openstack/build/0e0ce0e2dc894a3b9ad05b15c7334719 : SUCCESS in 13m 45s\n- swift-tox-func-ec-py27 https://zuul.opendev.org/t/openstack/build/af2ab0db512846a595b01fb11a8ca739 : SUCCESS in 21m 17s\n- swift-tox-func-s3api-py27 https://zuul.opendev.org/t/openstack/build/987f20cf88d24ec5ad62a0111fbc669d : SUCCESS in 22m 09s\n- swift-tox-func-losf-py27 https://zuul.opendev.org/t/openstack/build/b51a0eb7079d439ab97d2a2e1b512239 : RETRY_LIMIT in 6m 28s (non-voting)\n- swift-tox-func-py37 https://zuul.opendev.org/t/openstack/build/7a62266a5c1b4794863a745ad91b761f : SUCCESS in 16m 02s\n- swift-tox-func-encryption-py37 https://zuul.opendev.org/t/openstack/build/4113547397834d76b8694e61268c765c : SUCCESS in 18m 32s\n- swift-tox-func-domain-remap-staticweb-py37 https://zuul.opendev.org/t/openstack/build/776d9d13063d42b3acf8719e828822f0 : SUCCESS in 19m 11s\n- swift-tox-func-ec-py37 https://zuul.opendev.org/t/openstack/build/b222e01e801047bc9c5cda6c179e1cbe : SUCCESS in 15m 00s\n- swift-tox-func-s3api-py37 https://zuul.opendev.org/t/openstack/build/a4b25a91d54a42f788c345d818704126 : SUCCESS in 17m 20s\n- swift-tox-func-s3api-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/70e233772fd74a329f9393c53f5c2326 : SUCCESS in 25m 27s (non-voting)\n- swift-probetests-centos-7 https://zuul.opendev.org/t/openstack/build/821ea4ed7c644d74ac89a85a18f75f1a : SUCCESS in 45m 39s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/ff4ed0aa93a24403a3ec5761cd95a6b3 : SUCCESS in 40m 57s\n- swift-dsvm-functional-py3 https://zuul.opendev.org/t/openstack/build/f34eba48a91647498a1101d79e4bb2fa : SUCCESS in 48m 20s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/5ceb082af08b478d8abc04b61e64c02c : SUCCESS in 37m 36s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/7f39778be88547be9aaa4afe1469acf8 : FAILURE in 15m 34s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/0c3829609a294229847dad8168669224 : FAILURE in 7m 14s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/7ed71b835afd4abfab372b80cb104d86 : FAILURE in 12m 56s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"0fd60545157a8b12a3797b87c1475b91e4004e4d","tag":"autogenerated:gerrit:abandon","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2021-10-30 05:19:09.000000000","message":"Abandoned\n\nClosing out feature/losf","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"260001323e7393ce0ec47a029acc5bc19d856df4","revisions":{"c8534f701da4ee8a98a9cd5a72a00a01d664213d":{"kind":"REWORK","_number":1,"created":"2020-04-27 16:39:13.000000000","uploader":{"_account_id":25251,"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","username":"alecuyer"},"ref":"refs/changes/09/723609/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/09/723609/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/09/723609/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/09/723609/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/09/723609/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/09/723609/1"}}},"commit":{"parents":[{"commit":"c8dac46c4614f1afffdfee495455c2dd9d758027","subject":"Merge \"Merge remote-tracking branch \u0027remotes/origin/master\u0027 into merge-master\" into feature/losf","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c8dac46c4614f1afffdfee495455c2dd9d758027"}]}],"author":{"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","date":"2020-04-10 16:33:23.000000000","tz":120},"committer":{"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","date":"2020-04-27 16:36:15.000000000","tz":120},"subject":"New key format for objects in the index-server","message":"New key format for objects in the index-server\n\nThe new format sorts keys in the same order as they would be in the\nregular diskfile directory tree. It makes listdir() faster, especially\nat the suffix level. It also simplifies the code.\n\nThe space cost is minimal, leveldb being good at deduplicating common\nkey prefixes. However, it means we now store the partition of an object,\nand will have to support the relinker.\n\nDifferences:\n  - old key: ohash + filename\n  - new key: partition + suffix + ohash + filename\n\nthe partition is a uint32, bigendian encoded, to preserve ordering\nthe suffix is stored as ascii\nthe ohash is 16 bytes hex\nthe filename is stored as is\n\nTODO:\n  - the volume check tool\n  - the quarantine listing\n  - list objects by volume\n  - some unit tests, both for golang and python\n\nChange-Id: Ic69cbbbe8f59ef9f85e8ffa939f443b5085a0daa\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c8534f701da4ee8a98a9cd5a72a00a01d664213d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c8534f701da4ee8a98a9cd5a72a00a01d664213d"}]},"branch":"refs/heads/feature/losf"},"260001323e7393ce0ec47a029acc5bc19d856df4":{"kind":"REWORK","_number":2,"created":"2020-05-26 17:58:50.000000000","uploader":{"_account_id":25251,"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","username":"alecuyer"},"ref":"refs/changes/09/723609/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/09/723609/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/09/723609/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/09/723609/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/09/723609/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/09/723609/2"}}},"commit":{"parents":[{"commit":"c8dac46c4614f1afffdfee495455c2dd9d758027","subject":"Merge \"Merge remote-tracking branch \u0027remotes/origin/master\u0027 into merge-master\" into feature/losf","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c8dac46c4614f1afffdfee495455c2dd9d758027"}]}],"author":{"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","date":"2020-04-10 16:33:23.000000000","tz":120},"committer":{"name":"Alexandre Lécuyer","email":"alexandre.lecuyer@corp.ovh.com","date":"2020-05-26 17:58:33.000000000","tz":120},"subject":"New key format for objects in the index-server","message":"New key format for objects in the index-server\n\nThe new format sorts keys in the same order as they would be in the\nregular diskfile directory tree. It makes listdir() faster, especially\nat the suffix level. It also simplifies the code.\n\nThe space cost is minimal, leveldb being good at deduplicating common\nkey prefixes. However, it means we now store the partition of an object,\nand will have to support the relinker.\n\nDifferences:\n  - old key: ohash + filename\n  - new key: partition + suffix + ohash + filename\n\nthe partition is a uint32, bigendian encoded, to preserve ordering\nthe suffix is stored as ascii\nthe ohash is 16 bytes hex\nthe filename is stored as is\n\nTODO:\n  - the volume check tool\n  - the quarantine listing\n  - list objects by volume\n  - some unit tests, both for golang and python\n\nChange-Id: Ic69cbbbe8f59ef9f85e8ffa939f443b5085a0daa\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/260001323e7393ce0ec47a029acc5bc19d856df4"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/260001323e7393ce0ec47a029acc5bc19d856df4"}]},"branch":"refs/heads/feature/losf"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
