diff --git a/etcd/etcd.go b/etcd/etcd.go index 458004441..1bda8eedc 100644 --- a/etcd/etcd.go +++ b/etcd/etcd.go @@ -103,11 +103,6 @@ func (e *Etcd) Run() { log.Warnf("All cached configuration is now ignored. The file %s can be removed.", info) } - // Set NOCOW for data directory in btrfs - if btrfs.IsBtrfs(e.Config.DataDir) { - btrfs.SetNOCOWDir(e.Config.DataDir) - } - var mbName string if e.Config.Trace() { mbName = e.Config.MetricsBucketName() diff --git a/server/peer_server.go b/server/peer_server.go index e7acdc000..b1c1ca4db 100644 --- a/server/peer_server.go +++ b/server/peer_server.go @@ -19,6 +19,7 @@ import ( etcdErr "github.com/coreos/etcd/error" "github.com/coreos/etcd/log" "github.com/coreos/etcd/metrics" + "github.com/coreos/etcd/pkg/btrfs" "github.com/coreos/etcd/store" ) @@ -291,6 +292,11 @@ func (s *PeerServer) Start(snapshot bool, discoverURL string, peers []string) er s.raftServer.Init() + // Set NOCOW for data directory in btrfs + if btrfs.IsBtrfs(s.raftServer.LogPath()) { + btrfs.SetNOCOW(s.raftServer.LogPath()) + } + s.findCluster(discoverURL, peers) s.closeChan = make(chan bool)