summaryrefslogtreecommitdiffstats
path: root/searchlib/src/tests/attribute/reference_attribute/reference_attribute_test.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'searchlib/src/tests/attribute/reference_attribute/reference_attribute_test.cpp')
-rw-r--r--searchlib/src/tests/attribute/reference_attribute/reference_attribute_test.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/searchlib/src/tests/attribute/reference_attribute/reference_attribute_test.cpp b/searchlib/src/tests/attribute/reference_attribute/reference_attribute_test.cpp
index d7428f02ba5..07786b2096f 100644
--- a/searchlib/src/tests/attribute/reference_attribute/reference_attribute_test.cpp
+++ b/searchlib/src/tests/attribute/reference_attribute/reference_attribute_test.cpp
@@ -45,6 +45,8 @@ vespalib::string doc1("id:test:music::1");
vespalib::string doc2("id:test:music::2");
vespalib::string doc3("id:test:music::3");
+constexpr size_t DEAD_BYTES_SLACK = 0x10000u;
+
}
struct MyGidToLidMapperFactory : public search::attribute::test::MockGidToLidMapperFactory {
@@ -175,9 +177,14 @@ struct ReferenceAttributeTest : public ::testing::Test {
search::attribute::Status oldStatus = getStatus();
search::attribute::Status newStatus = oldStatus;
uint64_t iter = 0;
+ AttributeGuard guard(_attr);
+ uint64_t dropCount = DEAD_BYTES_SLACK / sizeof(Reference);
for (; iter < iterLimit; ++iter) {
clear(2);
set(2, toGid(doc2));
+ if (iter == dropCount) {
+ guard = AttributeGuard();
+ }
newStatus = getStatus();
if (newStatus.getUsed() < oldStatus.getUsed()) {
break;