From fd0ef49a70dbe925d4c9d9cfc05419f9dee5cfeb Mon Sep 17 00:00:00 2001 From: wangshaoyi Date: Mon, 8 Apr 2024 11:56:46 +0800 Subject: [PATCH] Revert "fix version compare error in ZSetsScoreKeyComparatorImpl (#2339)" This reverts commit e787effc3b665fe0d042d29ea32bd96ea6b9b69a. --- src/storage/src/custom_comparator.h | 16 ++++------------ src/storage/tests/custom_comparator_test.cc | 7 ------- 2 files changed, 4 insertions(+), 19 deletions(-) diff --git a/src/storage/src/custom_comparator.h b/src/storage/src/custom_comparator.h index f0ea9dc04..07648ef8d 100644 --- a/src/storage/src/custom_comparator.h +++ b/src/storage/src/custom_comparator.h @@ -99,23 +99,15 @@ class ZSetsScoreKeyComparatorImpl : public rocksdb::Comparator { auto b_size = static_cast(b.size()); int32_t key_a_len = DecodeFixed32(ptr_a); int32_t key_b_len = DecodeFixed32(ptr_b); - rocksdb::Slice key_a_prefix(ptr_a, key_a_len + sizeof(int32_t)); - rocksdb::Slice key_b_prefix(ptr_b, key_b_len + sizeof(int32_t)); - ptr_a += key_a_len + sizeof(int32_t); - ptr_b += key_b_len + sizeof(int32_t); + rocksdb::Slice key_a_prefix(ptr_a, key_a_len + 2 * sizeof(int32_t)); + rocksdb::Slice key_b_prefix(ptr_b, key_b_len + 2 * sizeof(int32_t)); + ptr_a += key_a_len + 2 * sizeof(int32_t); + ptr_b += key_b_len + 2 * sizeof(int32_t); int ret = key_a_prefix.compare(key_b_prefix); if (ret) { return ret; } - int32_t version_a = DecodeFixed32(ptr_a); - int32_t version_b = DecodeFixed32(ptr_b); - if (version_a != version_b) { - return version_a < version_b ? -1 : 1; - } - ptr_a += sizeof(int32_t); - ptr_b += sizeof(int32_t); - uint64_t a_i = DecodeFixed64(ptr_a); uint64_t b_i = DecodeFixed64(ptr_b); const void* ptr_a_score = reinterpret_cast(&a_i); diff --git a/src/storage/tests/custom_comparator_test.cc b/src/storage/tests/custom_comparator_test.cc index 05b472e73..9661d2619 100644 --- a/src/storage/tests/custom_comparator_test.cc +++ b/src/storage/tests/custom_comparator_test.cc @@ -143,13 +143,6 @@ TEST(ZSetScoreKeyComparator, FindShortestSeparatorTest) { // printf("**********************************************************************\n"); ASSERT_TRUE(impl.Compare(change_start_9, start_9) >= 0); ASSERT_TRUE(impl.Compare(change_start_9, limit_9) < 0); - - // ***************** Group 10 Test ***************** - ZSetsScoreKey zsets_score_key_start_10("Axlgrep", 1557212502, 3.1415, "abc"); - ZSetsScoreKey zsets_score_key_limit_10("Axlgrep", 1557212752, 3.1415, "abc"); - std::string start_10 = zsets_score_key_start_10.Encode().ToString(); - std::string limit_10 = zsets_score_key_limit_10.Encode().ToString(); - ASSERT_TRUE(impl.Compare(start_10, limit_10) < 0); } int main(int argc, char** argv) {