diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2020-09-26 20:44:32 +0000 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2020-09-26 20:44:32 +0000 |
commit | 5992b83214f95dd353932fdc46b5a5123ae63802 (patch) | |
tree | 51d8e1835d389458bcba5d21fd25bdb094e09cb0 /searchlib | |
parent | ec864947f2d63fa36c906c25a71a8fca74b17575 (diff) |
Ensure that contexts have the proper lifetime.
Diffstat (limited to 'searchlib')
-rw-r--r-- | searchlib/src/vespa/searchlib/config/translogserver.def | 2 | ||||
-rw-r--r-- | searchlib/src/vespa/searchlib/transactionlog/translogserver.cpp | 7 |
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"); |