Skip to content

Commit

Permalink
add ut
Browse files Browse the repository at this point in the history
Signed-off-by: sevev <[email protected]>
  • Loading branch information
sevev committed Jan 20, 2025
1 parent fbfdcc3 commit e76d84a
Showing 1 changed file with 28 additions and 0 deletions.
28 changes: 28 additions & 0 deletions be/test/storage/lake/lake_persistent_index_test.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -356,4 +356,32 @@ TEST_F(LakePersistentIndexTest, test_insert_delete) {
config::l0_max_mem_usage = l0_max_mem_usage;
}

TEST_F(LakePersistentIndexTest, test_memtable_full) {
auto tablet_id = _tablet_metadata->id();
auto index = std::make_unique<LakePersistentIndex>(_tablet_mgr.get(), tablet_id);
ASSERT_OK(index->init(_tablet_metadata->sstable_meta()));

size_t old_l0_max_mem_usage = config::l0_max_mem_usage;
config::l0_max_mem_usage = 1073741824;
using Key = uint64_t;
vector<Key> keys;
vector<Slice> key_slices;
vector<IndexValue> values;
const int N = 10000;
keys.reserve(N);
key_slices.reserve(N);
for (int i = 0; i < N; i++) {
keys.emplace_back(i);
key_slices.emplace_back((uint8_t*)(&keys[i]), sizeof(Key));
values.emplace_back(i * 2);
}
ASSERT_OK(index->insert(N, key_slices.data(), values.data(), 0));

ASSERT_FALSE(index->is_memtable_full());
config::l0_max_mem_usage = index->memory_usage() + 1;
ASSERT_FALSE(index->is_memtable_full());
config::l0_max_mem_usage = index->memory_usage();
ASSERT_TRUE(index->is_memtable_full());
}

} // namespace starrocks::lake

0 comments on commit e76d84a

Please sign in to comment.