summaryrefslogtreecommitdiffstats
path: root/searchlib/src/tests/attribute/reference_attribute
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@broadpark.no>2019-08-15 12:30:15 +0200
committerTor Egge <Tor.Egge@broadpark.no>2019-08-15 12:46:53 +0200
commit4f8faeef83a649be7ccdf61bf13d4d09cd7d622b (patch)
tree291beb09ee5de775d461bcb488c6a734c53564cd /searchlib/src/tests/attribute/reference_attribute
parent92c0a9870987c6b41905e13513912c84ed698f45 (diff)
Add separate allocator for strings in unique store.
Diffstat (limited to 'searchlib/src/tests/attribute/reference_attribute')
-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;