Adding a ReconcileInterval config

This commit is contained in:
Armon Dadgar 2014-01-09 15:44:25 -08:00
parent a82a606221
commit e1692fb0a0
1 changed files with 14 additions and 6 deletions

View File

@ -7,6 +7,7 @@ import (
"io"
"net"
"os"
"time"
)
const (
@ -54,6 +55,12 @@ type Config struct {
// SerfWANConfig is the configuration for the cross-dc serf
SerfWANConfig *serf.Config
// ReconcileInterval controls how often we reconcile the strongly
// consistent store with the Serf info. This is used to handle nodes
// that are force removed, as well as intermittent unavailability during
// leader election.
ReconcileInterval time.Duration
// LogOutput is the location to write logs to. If this is not set,
// logs will go to stderr.
LogOutput io.Writer
@ -67,12 +74,13 @@ func DefaultConfig() *Config {
}
conf := &Config{
Datacenter: DefaultDC,
NodeName: hostname,
RPCAddr: DefaultRPCAddr,
RaftConfig: raft.DefaultConfig(),
SerfLANConfig: serf.DefaultConfig(),
SerfWANConfig: serf.DefaultConfig(),
Datacenter: DefaultDC,
NodeName: hostname,
RPCAddr: DefaultRPCAddr,
RaftConfig: raft.DefaultConfig(),
SerfLANConfig: serf.DefaultConfig(),
SerfWANConfig: serf.DefaultConfig(),
ReconcileInterval: 60 * time.Second,
}
// WAN Serf should use the WAN timing, since we are using it