aboutsummaryrefslogtreecommitdiff
path: root/bolt_linux.go
diff options
context:
space:
mode:
authorBen Johnson <benbjohnson@yahoo.com>2014-05-23 11:40:05 -0600
committerBen Johnson <benbjohnson@yahoo.com>2014-05-23 11:40:05 -0600
commitbfccbb2cb5f6eb25981b8693ba8acc5e885c7cce (patch)
tree4aa0e72ebbcef5018fd77dc1e9e4d66f2fd6da41 /bolt_linux.go
parentMerge pull request #169 from benbjohnson/allocation (diff)
downloaddedo-bfccbb2cb5f6eb25981b8693ba8acc5e885c7cce.tar.gz
dedo-bfccbb2cb5f6eb25981b8693ba8acc5e885c7cce.tar.xz
Avoid trashing page cache on Tx.Copy().
This commit change the database copy to use O_DIRECT so that the Linux page cache is not trashed during a backup. This is only available on Linux.
Diffstat (limited to 'bolt_linux.go')
-rw-r--r--bolt_linux.go2
1 files changed, 2 insertions, 0 deletions
diff --git a/bolt_linux.go b/bolt_linux.go
index 351b65a..4351db5 100644
--- a/bolt_linux.go
+++ b/bolt_linux.go
@@ -5,6 +5,8 @@ import (
"syscall"
)
+var odirect = syscall.O_DIRECT
+
func fdatasync(f *os.File) error {
return syscall.Fdatasync(int(f.Fd()))
}