From bd1164656ebb3af3e5e5bfb6ed3c71531c12d5dd Mon Sep 17 00:00:00 2001 From: Tor Egge Date: Wed, 14 Apr 2021 15:24:27 +0200 Subject: Add explicit unit test for compact_worst_shard(). --- .../datastore/sharded_hash_map/sharded_hash_map_test.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'vespalib/src/tests/datastore/sharded_hash_map/sharded_hash_map_test.cpp') diff --git a/vespalib/src/tests/datastore/sharded_hash_map/sharded_hash_map_test.cpp b/vespalib/src/tests/datastore/sharded_hash_map/sharded_hash_map_test.cpp index da9bc1284fa..67195ecd8dd 100644 --- a/vespalib/src/tests/datastore/sharded_hash_map/sharded_hash_map_test.cpp +++ b/vespalib/src/tests/datastore/sharded_hash_map/sharded_hash_map_test.cpp @@ -277,4 +277,17 @@ TEST_F(DataStoreShardedHashTest, normalize_values_works) } } +TEST_F(DataStoreShardedHashTest, compact_worst_shard_works) +{ + populate_sample_data(); + for (uint32_t i = 10; i < 50; ++i) { + remove(i); + } + commit(); + auto usage_before = _hash_map.get_memory_usage(); + _hash_map.compact_worst_shard(); + auto usage_after = _hash_map.get_memory_usage(); + EXPECT_GT(usage_before.deadBytes(), usage_after.deadBytes()); +} + GTEST_MAIN_RUN_ALL_TESTS() -- cgit v1.2.3