You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Remove stdlib log filter (boltTxClosedFilter / suppressBoltNoise): it
redirected the global stdlib logger which is the wrong scope. raft-boltdb
uses log.Printf directly with no Logger option, so the "tx closed" noise
is now accepted as-is from stderr.
- Wire hashicorp/raft's internal hclog output through zerolog: set
raft.Config.Logger to an hclog.Logger backed by the zerolog writer so
all raft-internal messages appear in the structured log stream under
component=raft-hashicorp.
- Remove ShutdownTimeout from public config: it was a second "how long to
wait" knob that confused operators. ShutdownTimeout is now computed
internally as 5 × SendTimeout at the initRaftNode call site.
- Delete TestRaftRetrieverStopClearsApplyCallback: tested an implementation
detail (Stop clears the apply callback pointer) rather than observable
behaviour. The stubRaftNode helper it defined is moved to syncer_test.go
where it is still needed.
- Rename TestNewNode_SnapshotConfigApplied → TestBuildRaftConfig_SnapshotConfigApplied
to reflect that it tests buildRaftConfig, not NewNode.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Peersstring`mapstructure:"peers" yaml:"peers" comment:"Comma-separated list of peer Raft addresses (nodeID@host:port)"`
413
410
SnapCountuint64`mapstructure:"snap_count" yaml:"snap_count" comment:"Number of snapshot files to retain on disk"`
414
411
SendTimeout time.Duration`mapstructure:"send_timeout" yaml:"send_timeout" comment:"Max duration to wait for a message to be sent to a peer"`
415
-
ShutdownTimeout time.Duration`mapstructure:"shutdown_timeout" yaml:"shutdown_timeout" comment:"Max duration to wait for committed raft logs to be applied on graceful shutdown"`
416
412
HeartbeatTimeout time.Duration`mapstructure:"heartbeat_timeout" yaml:"heartbeat_timeout" comment:"Time between leader heartbeats to followers"`
417
413
LeaderLeaseTimeout time.Duration`mapstructure:"leader_lease_timeout" yaml:"leader_lease_timeout" comment:"Duration of the leader lease"`
418
414
ElectionTimeout time.Duration`mapstructure:"election_timeout" yaml:"election_timeout" comment:"Time a candidate waits for votes before restarting election; must be >= heartbeat_timeout"`
cmd.Flags().String(FlagRaftPeers, def.Raft.Peers, "comma-separated list of peer Raft addresses (nodeID@host:port)")
673
665
cmd.Flags().Uint64(FlagRaftSnapCount, def.Raft.SnapCount, "number of snapshot files to retain on disk")
674
666
cmd.Flags().Duration(FlagRaftSendTimeout, def.Raft.SendTimeout, "max duration to wait for a message to be sent to a peer")
675
-
cmd.Flags().Duration(FlagRaftShutdownTimeout, def.Raft.ShutdownTimeout, "max duration to wait for committed raft logs to be applied on graceful shutdown")
676
667
cmd.Flags().Duration(FlagRaftHeartbeatTimeout, def.Raft.HeartbeatTimeout, "time between leader heartbeats to followers")
677
668
cmd.Flags().Duration(FlagRaftLeaderLeaseTimeout, def.Raft.LeaderLeaseTimeout, "duration of the leader lease")
678
669
cmd.Flags().Duration(FlagRaftElectionTimeout, def.Raft.ElectionTimeout, "time a candidate waits for votes before restarting election")
0 commit comments