aboutsummaryrefslogtreecommitdiffstats
path: root/searchcore
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@broadpark.no>2018-08-01 15:32:17 +0200
committerTor Egge <Tor.Egge@oath.com>2018-08-02 10:08:27 +0000
commitf450c9c1302a6fbc93cd0cfaf524b1137b8eca07 (patch)
tree21bc63c94ff99d23553cc6078e8d3780efb7610d /searchcore
parent553aa395b40c5fb49abef5a10efb86bbb084fea0 (diff)
Add fsync calls to reduce probability of unexpected state after a crash.
Diffstat (limited to 'searchcore')
-rw-r--r--searchcore/src/vespa/searchcore/proton/server/proton_disk_layout.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/searchcore/src/vespa/searchcore/proton/server/proton_disk_layout.cpp b/searchcore/src/vespa/searchcore/proton/server/proton_disk_layout.cpp
index ab4a0576ab0..31fd44eec5e 100644
--- a/searchcore/src/vespa/searchcore/proton/server/proton_disk_layout.cpp
+++ b/searchcore/src/vespa/searchcore/proton/server/proton_disk_layout.cpp
@@ -84,12 +84,14 @@ ProtonDiskLayout::remove(const DocTypeName &docTypeName)
vespalib::string normalDir(documentsDir + "/" + name);
vespalib::string removedDir(documentsDir + "/" + getRemovedName(name));
vespalib::rename(normalDir, removedDir, false, false);
+ vespalib::File::sync(documentsDir);
TransLogClient tlc(_tlsSpec);
if (!tlc.remove(name)) {
LOG(fatal, "Failed to remove tls domain %s", name.c_str());
LOG_ABORT("Failed to remove tls domain");
}
vespalib::rmdir(removedDir, true);
+ vespalib::File::sync(documentsDir);
}
void