summaryrefslogtreecommitdiffstats
path: root/searchlib/src/tests/memoryindex/field_index/field_index_test.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'searchlib/src/tests/memoryindex/field_index/field_index_test.cpp')
-rw-r--r--searchlib/src/tests/memoryindex/field_index/field_index_test.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/searchlib/src/tests/memoryindex/field_index/field_index_test.cpp b/searchlib/src/tests/memoryindex/field_index/field_index_test.cpp
index ca30fe2d35e..fb779f26bfe 100644
--- a/searchlib/src/tests/memoryindex/field_index/field_index_test.cpp
+++ b/searchlib/src/tests/memoryindex/field_index/field_index_test.cpp
@@ -478,14 +478,20 @@ getFeatureStoreMemStats(const FieldIndexCollection &fieldIndexes)
void
myCommit(FieldIndexCollection &fieldIndexes, ISequencedTaskExecutor &pushThreads)
{
+ vespalib::Gate gate;
+ auto gate_callback = std::make_shared<vespalib::GateCallback>(gate);
uint32_t fieldId = 0;
for (auto &fieldIndex : fieldIndexes.getFieldIndexes()) {
pushThreads.execute(fieldId,
- [fieldIndex(fieldIndex.get())]()
- { fieldIndex->commit(); });
+ [fieldIndex(fieldIndex.get()), gate_callback]()
+ {
+ (void) gate_callback;
+ fieldIndex->commit();
+ });
++fieldId;
}
- pushThreads.sync_all();
+ gate_callback.reset();
+ gate.await();
}
void