summaryrefslogtreecommitdiffstats
path: root/searchlib
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2020-09-26 20:44:32 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2020-09-26 20:44:32 +0000
commit5992b83214f95dd353932fdc46b5a5123ae63802 (patch)
tree51d8e1835d389458bcba5d21fd25bdb094e09cb0 /searchlib
parentec864947f2d63fa36c906c25a71a8fca74b17575 (diff)
Ensure that contexts have the proper lifetime.
Diffstat (limited to 'searchlib')
-rw-r--r--searchlib/src/vespa/searchlib/config/translogserver.def2
-rw-r--r--searchlib/src/vespa/searchlib/transactionlog/translogserver.cpp7
2 files changed, 6 insertions, 3 deletions
diff --git a/searchlib/src/vespa/searchlib/config/translogserver.def b/searchlib/src/vespa/searchlib/config/translogserver.def
index 540895b2404..defce8c3421 100644
--- a/searchlib/src/vespa/searchlib/config/translogserver.def
+++ b/searchlib/src/vespa/searchlib/config/translogserver.def
@@ -15,7 +15,7 @@ basedir string default="tmp" restart
## Use fsync after each commit.
## If not the below interval is used.
-usefsync bool default=false restart
+usefsync bool default=false
##Number of threads available for visiting/subscription.
maxthreads int default=4 restart
diff --git a/searchlib/src/vespa/searchlib/transactionlog/translogserver.cpp b/searchlib/src/vespa/searchlib/transactionlog/translogserver.cpp
index 7be3dd708a5..0c0c9186e12 100644
--- a/searchlib/src/vespa/searchlib/transactionlog/translogserver.cpp
+++ b/searchlib/src/vespa/searchlib/transactionlog/translogserver.cpp
@@ -572,8 +572,11 @@ TransLogServer::domainCommit(FRT_RPCRequest *req)
Packet packet(params[1]._data._buf, params[1]._data._len);
try {
vespalib::Gate gate;
- domain->append(packet, make_shared<GateCallback>(gate));
- auto keep = domain->startCommit(make_shared<IgnoreCallback>());
+ {
+ // Need to scope in order to drain out all the callbacks.
+ domain->append(packet, make_shared<GateCallback>(gate));
+ auto keep = domain->startCommit(make_shared<IgnoreCallback>());
+ }
gate.await();
ret.AddInt32(0);
ret.AddString("ok");