summaryrefslogtreecommitdiffstats
path: root/searchcore
diff options
context:
space:
mode:
authorHåvard Pettersen <havardpe@oath.com>2022-03-21 12:36:39 +0000
committerHåvard Pettersen <havardpe@oath.com>2022-03-21 12:36:39 +0000
commit51185187afa3b4e5eebb8a150b1af7f8d0bc7e34 (patch)
tree538b04f4ed4f87e5a8143792fedf3137f4bac599 /searchcore
parentbff04b8c35e618e4fdcd43743c7865bf5a046344 (diff)
fix tsan warning in flush test
Diffstat (limited to 'searchcore')
-rw-r--r--searchcore/src/tests/proton/flushengine/flushengine_test.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/searchcore/src/tests/proton/flushengine/flushengine_test.cpp b/searchcore/src/tests/proton/flushengine/flushengine_test.cpp
index 506313527eb..4595ce12229 100644
--- a/searchcore/src/tests/proton/flushengine/flushengine_test.cpp
+++ b/searchcore/src/tests/proton/flushengine/flushengine_test.cpp
@@ -196,7 +196,7 @@ void WrappedFlushTask::run()
}
class SimpleTask : public searchcorespi::FlushTask {
- search::SerialNum &_flushedSerial;
+ std::atomic<search::SerialNum> &_flushedSerial;
search::SerialNum &_currentSerial;
public:
vespalib::Gate &_start;
@@ -207,7 +207,7 @@ public:
SimpleTask(vespalib::Gate &start,
vespalib::Gate &done,
vespalib::Gate *proceed,
- search::SerialNum &flushedSerial,
+ std::atomic<search::SerialNum> &flushedSerial,
search::SerialNum &currentSerial)
: _flushedSerial(flushedSerial), _currentSerial(currentSerial),
_start(start), _done(done), _proceed(proceed)
@@ -218,7 +218,7 @@ public:
if (_proceed != nullptr) {
_proceed->await();
}
- _flushedSerial = _currentSerial;
+ _flushedSerial.store(_currentSerial, std::memory_order_relaxed);
_done.countDown();
}
@@ -227,7 +227,7 @@ public:
class SimpleTarget : public test::DummyFlushTarget {
public:
- search::SerialNum _flushedSerial;
+ std::atomic<search::SerialNum> _flushedSerial;
search::SerialNum _currentSerial;
vespalib::Gate _proceed;
vespalib::Gate _initDone;
@@ -276,8 +276,8 @@ public:
Time getLastFlushTime() const override { return vespalib::system_clock::now(); }
SerialNum getFlushedSerialNum() const override {
- LOG(info, "SimpleTarget(%s)::getFlushedSerialNum() = %" PRIu64, getName().c_str(), _flushedSerial);
- return _flushedSerial;
+ LOG(info, "SimpleTarget(%s)::getFlushedSerialNum() = %" PRIu64, getName().c_str(), _flushedSerial.load(std::memory_order_relaxed));
+ return _flushedSerial.load(std::memory_order_relaxed);
}
Task::UP initFlush(SerialNum currentSerial, std::shared_ptr<search::IFlushToken>) override {