Diff of the two buildlogs:

--
--- b1/build.log	2025-03-05 14:23:33.991956863 +0000
+++ b2/build.log	2025-03-05 14:30:46.120534573 +0000
@@ -1,6 +1,7 @@
+W: cgroups are not available on the host, not using them.
 I: pbuilder: network access will be disabled during build
-I: Current time: Tue Apr  7 08:40:30 -12 2026
-I: pbuilder-time-stamp: 1775594430
+I: Current time: Thu Mar  6 04:23:43 +14 2025
+I: pbuilder-time-stamp: 1741184623
 I: Building the build Environment
 I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz]
 I: copying local configuration
@@ -42,52 +43,83 @@
 dpkg-source: info: applying 0019-Fix-tests-compatibility-with-go-1.24.patch
 I: Not using root during the build.
 I: Installing the build-deps
-I: user script /srv/workspace/pbuilder/2432627/tmp/hooks/D02_print_environment starting
+I: user script /srv/workspace/pbuilder/2853062/tmp/hooks/D01_modify_environment starting
+debug: Running on codethink04-arm64.
+I: Changing host+domainname to test build reproducibility
+I: Adding a custom variable just for the fun of it...
+I: Changing /bin/sh to bash
+'/bin/sh' -> '/bin/bash'
+lrwxrwxrwx 1 root root 9 Mar  5 14:23 /bin/sh -> /bin/bash
+I: Setting pbuilder2's login shell to /bin/bash
+I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other
+I: user script /srv/workspace/pbuilder/2853062/tmp/hooks/D01_modify_environment finished
+I: user script /srv/workspace/pbuilder/2853062/tmp/hooks/D02_print_environment starting
 I: set
-  BUILDDIR='/build/reproducible-path'
-  BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other'
-  BUILDUSERNAME='pbuilder1'
-  BUILD_ARCH='arm64'
-  DEBIAN_FRONTEND='noninteractive'
+  BASH=/bin/sh
+  BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath
+  BASH_ALIASES=()
+  BASH_ARGC=()
+  BASH_ARGV=()
+  BASH_CMDS=()
+  BASH_LINENO=([0]="12" [1]="0")
+  BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:.
+  BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment")
+  BASH_VERSINFO=([0]="5" [1]="2" [2]="37" [3]="1" [4]="release" [5]="aarch64-unknown-linux-gnu")
+  BASH_VERSION='5.2.37(1)-release'
+  BUILDDIR=/build/reproducible-path
+  BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other'
+  BUILDUSERNAME=pbuilder2
+  BUILD_ARCH=arm64
+  DEBIAN_FRONTEND=noninteractive
   DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=12 '
-  DISTRIBUTION='unstable'
-  HOME='/root'
-  HOST_ARCH='arm64'
+  DIRSTACK=()
+  DISTRIBUTION=unstable
+  EUID=0
+  FUNCNAME=([0]="Echo" [1]="main")
+  GROUPS=()
+  HOME=/root
+  HOSTNAME=i-capture-the-hostname
+  HOSTTYPE=aarch64
+  HOST_ARCH=arm64
   IFS=' 	
   '
-  INVOCATION_ID='2225a732db4e4819ab9747b9d5507f5f'
-  LANG='C'
-  LANGUAGE='en_US:en'
-  LC_ALL='C'
-  MAIL='/var/mail/root'
-  OPTIND='1'
-  PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games'
-  PBCURRENTCOMMANDLINEOPERATION='build'
-  PBUILDER_OPERATION='build'
-  PBUILDER_PKGDATADIR='/usr/share/pbuilder'
-  PBUILDER_PKGLIBDIR='/usr/lib/pbuilder'
-  PBUILDER_SYSCONFDIR='/etc'
-  PPID='2432627'
-  PS1='# '
-  PS2='> '
+  LANG=C
+  LANGUAGE=nl_BE:nl
+  LC_ALL=C
+  MACHTYPE=aarch64-unknown-linux-gnu
+  MAIL=/var/mail/root
+  OPTERR=1
+  OPTIND=1
+  OSTYPE=linux-gnu
+  PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path
+  PBCURRENTCOMMANDLINEOPERATION=build
+  PBUILDER_OPERATION=build
+  PBUILDER_PKGDATADIR=/usr/share/pbuilder
+  PBUILDER_PKGLIBDIR=/usr/lib/pbuilder
+  PBUILDER_SYSCONFDIR=/etc
+  PIPESTATUS=([0]="0")
+  POSIXLY_CORRECT=y
+  PPID=2853062
   PS4='+ '
-  PWD='/'
-  SHELL='/bin/bash'
-  SHLVL='2'
-  SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.VEPa7u9G/pbuilderrc_tEfa --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.VEPa7u9G/b1 --logfile b1/build.log etcd_3.5.16-4.dsc'
-  SUDO_GID='109'
-  SUDO_UID='104'
-  SUDO_USER='jenkins'
-  TERM='unknown'
-  TZ='/usr/share/zoneinfo/Etc/GMT+12'
-  USER='root'
-  _='/usr/bin/systemd-run'
-  http_proxy='http://192.168.101.4:3128'
+  PWD=/
+  SHELL=/bin/bash
+  SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix
+  SHLVL=3
+  SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.VEPa7u9G/pbuilderrc_tG0X --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.VEPa7u9G/b2 --logfile b2/build.log etcd_3.5.16-4.dsc'
+  SUDO_GID=109
+  SUDO_UID=104
+  SUDO_USER=jenkins
+  TERM=unknown
+  TZ=/usr/share/zoneinfo/Etc/GMT-14
+  UID=0
+  USER=root
+  _='I: set'
+  http_proxy=http://192.168.101.4:3128
 I: uname -a
-  Linux codethink03-arm64 6.1.0-31-cloud-arm64 #1 SMP Debian 6.1.128-1 (2025-02-07) aarch64 GNU/Linux
+  Linux i-capture-the-hostname 6.1.0-31-cloud-arm64 #1 SMP Debian 6.1.128-1 (2025-02-07) aarch64 GNU/Linux
 I: ls -l /bin
-  lrwxrwxrwx 1 root root 7 Mar  4  2025 /bin -> usr/bin
-I: user script /srv/workspace/pbuilder/2432627/tmp/hooks/D02_print_environment finished
+  lrwxrwxrwx 1 root root 7 Mar  4 11:20 /bin -> usr/bin
+I: user script /srv/workspace/pbuilder/2853062/tmp/hooks/D02_print_environment finished
  -> Attempting to satisfy build-dependencies
  -> Creating pbuilder-satisfydepends-dummy package
 Package: pbuilder-satisfydepends-dummy
@@ -423,7 +455,7 @@
 Get: 210 http://deb.debian.org/debian unstable/main arm64 libprotoc32t64 arm64 3.21.12-10+b6 [790 kB]
 Get: 211 http://deb.debian.org/debian unstable/main arm64 protobuf-compiler arm64 3.21.12-10+b6 [84.9 kB]
 Get: 212 http://deb.debian.org/debian unstable/main arm64 protoc-gen-go-1-5 arm64 1.5.4-1 [1235 kB]
-Fetched 207 MB in 1s (160 MB/s)
+Fetched 207 MB in 2s (126 MB/s)
 Preconfiguring packages ...
 Selecting previously unselected package golang-golang-x-sys-dev.
 (Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 19897 files and directories currently installed.)
@@ -1116,8 +1148,8 @@
 Setting up tzdata (2025a-2) ...
 
 Current default time zone: 'Etc/UTC'
-Local time is now:      Tue Apr  7 20:41:07 UTC 2026.
-Universal Time is now:  Tue Apr  7 20:41:07 UTC 2026.
+Local time is now:      Wed Mar  5 14:24:33 UTC 2025.
+Universal Time is now:  Wed Mar  5 14:24:33 UTC 2025.
 Run 'dpkg-reconfigure tzdata' if you wish to change it.
 
 Setting up golang-github-coreos-go-semver-dev (0.3.0-1) ...
@@ -1292,7 +1324,11 @@
 Building tag database...
  -> Finished parsing the build-deps
 I: Building the package
-I: Running cd /build/reproducible-path/etcd-3.5.16/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S  > ../etcd_3.5.16-4_source.changes
+I: user script /srv/workspace/pbuilder/2853062/tmp/hooks/A99_set_merged_usr starting
+Not re-configuring usrmerge for unstable
+I: user script /srv/workspace/pbuilder/2853062/tmp/hooks/A99_set_merged_usr finished
+hostname: Name or service not known
+I: Running cd /build/reproducible-path/etcd-3.5.16/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S  > ../etcd_3.5.16-4_source.changes
 dpkg-buildpackage: info: source package etcd
 dpkg-buildpackage: info: source version 3.5.16-4
 dpkg-buildpackage: info: source distribution unstable
@@ -2271,130 +2307,126 @@
 	cd _build && go install -trimpath -v -p 12 go.etcd.io/etcd go.etcd.io/etcd/api/authpb go.etcd.io/etcd/api/etcdserverpb go.etcd.io/etcd/api/etcdserverpb/gw go.etcd.io/etcd/api/membershippb go.etcd.io/etcd/api/mvccpb go.etcd.io/etcd/api/v3rpc/rpctypes go.etcd.io/etcd/api/version go.etcd.io/etcd/client/pkg/fileutil go.etcd.io/etcd/client/pkg/logutil go.etcd.io/etcd/client/pkg/pathutil go.etcd.io/etcd/client/pkg/srv go.etcd.io/etcd/client/pkg/systemd go.etcd.io/etcd/client/pkg/testutil go.etcd.io/etcd/client/pkg/tlsutil go.etcd.io/etcd/client/pkg/transport go.etcd.io/etcd/client/pkg/types go.etcd.io/etcd/client/v2 go.etcd.io/etcd/client/v3 go.etcd.io/etcd/client/v3/clientv3util go.etcd.io/etcd/client/v3/concurrency go.etcd.io/etcd/client/v3/credentials go.etcd.io/etcd/client/v3/experimental/recipes go.etcd.io/etcd/client/v3/internal/endpoint go.etcd.io/etcd/client/v3/internal/resolver go.etcd.io/etcd/client/v3/kubernetes go.etcd.io/etcd/client/v3/leasing go.etcd.io/etcd/client/v3/mirror go.etcd.io/etcd/client/v3/mock/mockserver go.etcd.io/etcd/client/v3/namespace go.etcd.io/etcd/client/v3/naming go.etcd.io/etcd/client/v3/naming/endpoints go.etcd.io/etcd/client/v3/naming/endpoints/internal go.etcd.io/etcd/client/v3/naming/resolver go.etcd.io/etcd/client/v3/ordering go.etcd.io/etcd/client/v3/snapshot go.etcd.io/etcd/client/v3/yaml go.etcd.io/etcd/etcdctl go.etcd.io/etcd/etcdctl/ctlv2 go.etcd.io/etcd/etcdctl/ctlv2/command go.etcd.io/etcd/etcdctl/ctlv3 go.etcd.io/etcd/etcdctl/ctlv3/command go.etcd.io/etcd/etcdutl go.etcd.io/etcd/etcdutl/etcdutl go.etcd.io/etcd/etcdutl/snapshot go.etcd.io/etcd/pkg/adt go.etcd.io/etcd/pkg/cobrautl go.etcd.io/etcd/pkg/contention go.etcd.io/etcd/pkg/cpuutil go.etcd.io/etcd/pkg/crc go.etcd.io/etcd/pkg/debugutil go.etcd.io/etcd/pkg/expect go.etcd.io/etcd/pkg/flags go.etcd.io/etcd/pkg/grpc_testing go.etcd.io/etcd/pkg/httputil go.etcd.io/etcd/pkg/idutil go.etcd.io/etcd/pkg/ioutil go.etcd.io/etcd/pkg/netutil go.etcd.io/etcd/pkg/osutil go.etcd.io/etcd/pkg/pbutil go.etcd.io/etcd/pkg/proxy go.etcd.io/etcd/pkg/report go.etcd.io/etcd/pkg/runtime go.etcd.io/etcd/pkg/schedule go.etcd.io/etcd/pkg/stringutil go.etcd.io/etcd/pkg/traceutil go.etcd.io/etcd/pkg/wait go.etcd.io/etcd/raft go.etcd.io/etcd/raft/confchange go.etcd.io/etcd/raft/quorum go.etcd.io/etcd/raft/raftpb go.etcd.io/etcd/raft/rafttest go.etcd.io/etcd/raft/tracker go.etcd.io/etcd/server go.etcd.io/etcd/server/auth go.etcd.io/etcd/server/config go.etcd.io/etcd/server/datadir go.etcd.io/etcd/server/embed go.etcd.io/etcd/server/etcdmain go.etcd.io/etcd/server/etcdserver go.etcd.io/etcd/server/etcdserver/api go.etcd.io/etcd/server/etcdserver/api/etcdhttp go.etcd.io/etcd/server/etcdserver/api/membership go.etcd.io/etcd/server/etcdserver/api/rafthttp go.etcd.io/etcd/server/etcdserver/api/snap go.etcd.io/etcd/server/etcdserver/api/snap/snappb go.etcd.io/etcd/server/etcdserver/api/v2auth go.etcd.io/etcd/server/etcdserver/api/v2discovery go.etcd.io/etcd/server/etcdserver/api/v2error go.etcd.io/etcd/server/etcdserver/api/v2http go.etcd.io/etcd/server/etcdserver/api/v2http/httptypes go.etcd.io/etcd/server/etcdserver/api/v2stats go.etcd.io/etcd/server/etcdserver/api/v2store go.etcd.io/etcd/server/etcdserver/api/v2v3 go.etcd.io/etcd/server/etcdserver/api/v3alarm go.etcd.io/etcd/server/etcdserver/api/v3client go.etcd.io/etcd/server/etcdserver/api/v3compactor go.etcd.io/etcd/server/etcdserver/api/v3election go.etcd.io/etcd/server/etcdserver/api/v3election/v3electionpb go.etcd.io/etcd/server/etcdserver/api/v3election/v3electionpb/gw go.etcd.io/etcd/server/etcdserver/api/v3lock go.etcd.io/etcd/server/etcdserver/api/v3lock/v3lockpb go.etcd.io/etcd/server/etcdserver/api/v3lock/v3lockpb/gw go.etcd.io/etcd/server/etcdserver/api/v3rpc go.etcd.io/etcd/server/etcdserver/cindex go.etcd.io/etcd/server/lease go.etcd.io/etcd/server/lease/leasehttp go.etcd.io/etcd/server/lease/leasepb go.etcd.io/etcd/server/mock/mockstorage go.etcd.io/etcd/server/mock/mockstore go.etcd.io/etcd/server/mock/mockwait go.etcd.io/etcd/server/mvcc go.etcd.io/etcd/server/mvcc/backend go.etcd.io/etcd/server/mvcc/backend/testing go.etcd.io/etcd/server/mvcc/buckets go.etcd.io/etcd/server/proxy/grpcproxy go.etcd.io/etcd/server/proxy/grpcproxy/adapter go.etcd.io/etcd/server/proxy/grpcproxy/cache go.etcd.io/etcd/server/proxy/httpproxy go.etcd.io/etcd/server/proxy/tcpproxy go.etcd.io/etcd/server/storage/mvcc/testutil go.etcd.io/etcd/server/verify go.etcd.io/etcd/server/wal go.etcd.io/etcd/server/wal/walpb go.etcd.io/etcd/tests/e2e go.etcd.io/etcd/tests/framework/e2e go.etcd.io/etcd/tests/framework/testutils go.etcd.io/etcd/tests/functional/agent go.etcd.io/etcd/tests/functional/rpcpb go.etcd.io/etcd/tests/functional/runner go.etcd.io/etcd/tests/functional/tester go.etcd.io/etcd/tests/integration go.etcd.io/etcd/tests/integration/client go.etcd.io/etcd/tests/integration/clientv3 go.etcd.io/etcd/tests/integration/clientv3/connectivity go.etcd.io/etcd/tests/integration/clientv3/lease go.etcd.io/etcd/tests/testutils
 internal/goarch
 internal/asan
-internal/profilerecord
 internal/msan
-internal/goos
-internal/goexperiment
 internal/unsafeheader
-internal/byteorder
-internal/coverage/rtcov
-internal/runtime/syscall
-internal/cpu
 internal/godebugs
+internal/goos
+internal/profilerecord
+internal/runtime/math
 internal/abi
-math/bits
 sync/atomic
-internal/runtime/math
-unicode/utf8
+math/bits
+internal/runtime/syscall
+internal/byteorder
+internal/coverage/rtcov
 unicode
+unicode/utf8
 internal/itoa
+internal/cpu
+internal/goexperiment
 cmp
 encoding
+internal/chacha8rand
 unicode/utf16
 log/internal
-internal/chacha8rand
 internal/nettrace
 container/list
 crypto/internal/fips140/alias
 crypto/internal/fips140deps/byteorder
-math
 crypto/internal/boring/sig
+math
 vendor/golang.org/x/crypto/cryptobyte/asn1
 vendor/golang.org/x/crypto/internal/alias
-crypto/internal/fips140/subtle
+github.com/rivo/uniseg
 google.golang.org/protobuf/internal/flags
 internal/bytealg
-github.com/rivo/uniseg
 internal/runtime/atomic
 internal/runtime/sys
 crypto/internal/fips140deps/cpu
+crypto/internal/fips140/subtle
 google.golang.org/protobuf/internal/set
 google.golang.org/grpc/serviceconfig
 log/slog/internal
 go.opentelemetry.io/otel/metric/embedded
 go.opentelemetry.io/otel/trace/embedded
 github.com/klauspost/compress/internal/le
+internal/runtime/exithook
 go.opentelemetry.io/otel/sdk/instrumentation
 go.opentelemetry.io/otel/sdk
-go.etcd.io/etcd/client/v3/naming/endpoints/internal
 go.etcd.io/etcd/client/v3/naming
+go.etcd.io/etcd/client/v3/naming/endpoints/internal
 github.com/golang/groupcache/lru
 go.etcd.io/etcd/tests/integration/client
 go.etcd.io/etcd/tests/integration/clientv3/connectivity
 go.etcd.io/etcd/tests/integration/clientv3/lease
-internal/runtime/exithook
 internal/stringslite
 internal/race
-internal/sync
 internal/runtime/maps
-github.com/klauspost/compress
+internal/sync
 go.opentelemetry.io/otel/internal
+github.com/klauspost/compress
 runtime
 internal/reflectlite
+sync
 iter
 weak
 crypto/subtle
 runtime/metrics
-sync
-maps
 slices
+maps
 errors
 sort
 internal/oserror
-path
-vendor/golang.org/x/net/dns/dnsmessage
 strconv
+path
 math/rand/v2
+vendor/golang.org/x/net/dns/dnsmessage
+go.etcd.io/etcd/client/pkg/pathutil
 io
 internal/bisect
-unique
 internal/testlog
 internal/singleflight
-syscall
-go.etcd.io/etcd/client/pkg/pathutil
-runtime/cgo
+unique
 google.golang.org/protobuf/internal/pragma
 google.golang.org/grpc/internal/buffer
-internal/godebug
+syscall
 go.uber.org/zap/internal/pool
+runtime/cgo
 log/slog/internal/buffer
+github.com/beorn7/perks/quantile
+container/heap
 bytes
 strings
 hash
 crypto/internal/randutil
 hash/crc32
 hash/fnv
-github.com/beorn7/perks/quantile
-container/heap
+internal/godebug
 reflect
-math/rand
 net/netip
-regexp/syntax
 crypto
+regexp/syntax
 bufio
-html
+go.etcd.io/etcd/pkg/crc
 crypto/internal/impl
 vendor/golang.org/x/text/transform
-net/http/internal/ascii
+math/rand
 crypto/internal/fips140deps/godebug
-google.golang.org/grpc/internal/grpcrand
+net/http/internal/ascii
+html
 golang.org/x/text/transform
 github.com/munnerz/goautoneg
-go.etcd.io/etcd/pkg/crc
-net/http/internal/testcert
 golang.org/x/crypto/blowfish
 crypto/internal/fips140
+net/http/internal/testcert
+regexp
 crypto/internal/fips140/sha256
 crypto/internal/fips140/sha3
 crypto/internal/fips140/sha512
 crypto/tls/internal/fips140tls
-crypto/sha3
-regexp
-time
-internal/syscall/execenv
-internal/syscall/unix
-crypto/internal/fips140hash
+google.golang.org/grpc/internal/grpcrand
 crypto/internal/fips140/hmac
+crypto/sha3
 crypto/internal/fips140/check
 crypto/internal/fips140/aes
 crypto/internal/fips140/nistec/fiat
@@ -2402,95 +2434,96 @@
 crypto/internal/fips140/bigmod
 crypto/internal/fips140/hkdf
 crypto/internal/fips140/tls12
+crypto/internal/fips140hash
 crypto/internal/fips140/tls13
 crypto/internal/fips140/edwards25519
-context
+time
+internal/syscall/unix
+internal/syscall/execenv
 io/fs
+internal/poll
 google.golang.org/grpc/backoff
 google.golang.org/grpc/keepalive
 go.uber.org/zap/buffer
-go.etcd.io/etcd/pkg/stringutil
-internal/poll
 go.etcd.io/etcd/pkg/contention
 go.etcd.io/etcd/pkg/idutil
+context
 github.com/jonboulle/clockwork
+go.etcd.io/etcd/pkg/stringutil
+crypto/internal/fips140/nistec
 go.uber.org/zap/internal/bufferpool
+go.uber.org/zap/internal/stacktrace
+internal/filepathlite
+embed
 google.golang.org/grpc/internal/backoff
 google.golang.org/grpc/internal/grpcsync
-go.opentelemetry.io/otel/internal/baggage
 go.etcd.io/etcd/pkg/schedule
 github.com/cenkalti/backoff
-internal/filepathlite
-embed
-go.uber.org/zap/internal/stacktrace
-google.golang.org/protobuf/internal/editiondefaults
-crypto/internal/fips140/nistec
+go.opentelemetry.io/otel/internal/baggage
 encoding/binary
-github.com/modern-go/reflect2
 internal/fmtsort
+github.com/modern-go/reflect2
+google.golang.org/protobuf/internal/editiondefaults
 go.opentelemetry.io/otel/internal/attribute
 os
+encoding/base64
 vendor/golang.org/x/crypto/internal/poly1305
-golang.org/x/sys/unix
-go.etcd.io/etcd/pkg/cpuutil
 github.com/cespare/xxhash
-encoding/base64
+go.etcd.io/etcd/pkg/cpuutil
 github.com/klauspost/compress/internal/snapref
+golang.org/x/sys/unix
 encoding/pem
+fmt
 io/ioutil
+net
+crypto/internal/sysrand
+path/filepath
 os/signal
+github.com/mattn/go-runewidth
 google.golang.org/protobuf/internal/detrand
 google.golang.org/grpc/internal/envconfig
 go.uber.org/zap/internal/exit
-github.com/mattn/go-runewidth
-crypto/internal/sysrand
-fmt
-path/filepath
 github.com/prometheus/procfs/internal/util
 go.etcd.io/etcd/pkg/runtime
 internal/sysinfo
-crypto/internal/entropy
 go.opentelemetry.io/otel/sdk/internal/x
+crypto/internal/entropy
 crypto/internal/fips140/drbg
-net
 go.etcd.io/etcd/server/datadir
 os/exec
-crypto/internal/fips140only
-crypto/internal/fips140/mlkem
 crypto/internal/fips140/aes/gcm
+crypto/internal/fips140only
 crypto/internal/fips140/ecdh
 crypto/internal/fips140/ecdsa
-crypto/internal/fips140/rsa
 crypto/internal/fips140/ed25519
+crypto/internal/fips140/mlkem
+crypto/internal/fips140/rsa
 crypto/md5
 crypto/rc4
-crypto/cipher
 github.com/creack/pty
-encoding/json
-log
-github.com/coreos/go-semver/semver
-net/url
-math/big
-compress/flate
-runtime/debug
-encoding/hex
-vendor/golang.org/x/text/unicode/norm
+crypto/cipher
 crypto/internal/boring
-go.etcd.io/etcd/api/version
 crypto/des
+vendor/golang.org/x/crypto/chacha20
 crypto/aes
 crypto/ecdh
 crypto/sha512
 crypto/hmac
-vendor/golang.org/x/crypto/chacha20
 crypto/sha1
-github.com/modern-go/concurrent
 crypto/sha256
-vendor/golang.org/x/text/unicode/bidi
+vendor/golang.org/x/crypto/chacha20poly1305
+encoding/json
+log
+runtime/debug
+math/big
+github.com/coreos/go-semver/semver
+net/url
+compress/flate
+encoding/hex
+vendor/golang.org/x/text/unicode/norm
 vendor/golang.org/x/net/http2/hpack
+go.etcd.io/etcd/api/version
 mime
-compress/gzip
-vendor/golang.org/x/crypto/chacha20poly1305
 mime/quotedprintable
 net/http/internal
 github.com/bgentry/speakeasy
@@ -2498,356 +2531,359 @@
 flag
 text/template/parse
 google.golang.org/protobuf/internal/errors
-vendor/golang.org/x/text/secure/bidirule
 go/token
+compress/gzip
+github.com/modern-go/concurrent
+vendor/golang.org/x/text/unicode/bidi
+github.com/olekukonko/tablewriter
 google.golang.org/protobuf/encoding/protowire
 google.golang.org/protobuf/internal/version
-github.com/olekukonko/tablewriter
-golang.org/x/net/internal/timeseries
 google.golang.org/protobuf/reflect/protoreflect
+golang.org/x/net/internal/timeseries
 text/tabwriter
 google.golang.org/grpc/internal/grpclog
 google.golang.org/grpc/attributes
-vendor/golang.org/x/net/idna
 google.golang.org/grpc/internal/idle
 golang.org/x/text/unicode/bidi
 golang.org/x/text/unicode/norm
 golang.org/x/net/http2/hpack
+vendor/golang.org/x/text/secure/bidirule
 go.uber.org/zap/internal/color
+vendor/golang.org/x/net/idna
 go.etcd.io/bbolt
 go.etcd.io/etcd/raft/quorum
-go.opentelemetry.io/otel/baggage
 text/template
+go.opentelemetry.io/otel/baggage
 github.com/prometheus/procfs/internal/fs
 go.etcd.io/etcd/pkg/pbutil
 go.etcd.io/etcd/pkg/wait
 go.etcd.io/etcd/pkg/adt
 golang.org/x/time/rate
-golang.org/x/text/secure/bidirule
 github.com/google/btree
-crypto/rand
-github.com/json-iterator/go
-crypto/elliptic
-crypto/internal/boring/bbig
-encoding/asn1
-crypto/ed25519
-crypto/internal/hpke
-crypto/rsa
-crypto/dsa
-github.com/dustin/go-humanize
+golang.org/x/text/secure/bidirule
+go.etcd.io/etcd/pkg/report
+gopkg.in/cheggaaa/pb.v1
 github.com/gogo/protobuf/proto
+google.golang.org/grpc/grpclog
+go.uber.org/atomic
 google.golang.org/protobuf/internal/encoding/messageset
 google.golang.org/protobuf/internal/strs
 google.golang.org/protobuf/internal/genid
 google.golang.org/protobuf/internal/order
-google.golang.org/protobuf/internal/encoding/text
 google.golang.org/protobuf/reflect/protoregistry
 google.golang.org/protobuf/runtime/protoiface
+google.golang.org/protobuf/internal/encoding/text
 google.golang.org/protobuf/internal/descfmt
 google.golang.org/protobuf/internal/descopts
-vendor/golang.org/x/crypto/cryptobyte
-crypto/x509/pkix
 google.golang.org/protobuf/internal/protolazy
-google.golang.org/grpc/grpclog
+google.golang.org/grpc/connectivity
 google.golang.org/protobuf/internal/encoding/json
-golang.org/x/net/idna
 google.golang.org/protobuf/proto
-html/template
-go.uber.org/atomic
+go.uber.org/multierr
 go.opentelemetry.io/otel/attribute
+go.uber.org/zap/zapcore
+github.com/json-iterator/go
+crypto/rand
+crypto/elliptic
+crypto/internal/boring/bbig
+encoding/asn1
+crypto/ed25519
+crypto/internal/hpke
+crypto/dsa
+crypto/rsa
+github.com/dustin/go-humanize
+google.golang.org/protobuf/encoding/prototext
 google.golang.org/protobuf/internal/encoding/defval
-google.golang.org/grpc/connectivity
-log/slog
-crypto/ecdsa
-go.opentelemetry.io/otel/codes
-golang.org/x/crypto/bcrypt
-go.etcd.io/etcd/pkg/report
-go.uber.org/multierr
-gopkg.in/cheggaaa/pb.v1
-runtime/trace
-github.com/grpc-ecosystem/grpc-gateway/utilities
+html/template
 go.opentelemetry.io/otel/semconv/v1.17.0
-google.golang.org/protobuf/encoding/prototext
+golang.org/x/net/idna
 google.golang.org/protobuf/internal/filedesc
-go.uber.org/zap/zapcore
+log/slog
+go.opentelemetry.io/otel/codes
 go.opentelemetry.io/otel/metric
 go.opentelemetry.io/otel/trace
-google.golang.org/protobuf/encoding/protodelim
+vendor/golang.org/x/crypto/cryptobyte
+crypto/x509/pkix
 github.com/go-logr/logr
-testing
+go.opentelemetry.io/otel/metric/noop
+google.golang.org/protobuf/encoding/protodelim
+crypto/ecdsa
 go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc/internal
-github.com/grpc-ecosystem/grpc-gateway/internal/httprule
-github.com/sirupsen/logrus
+golang.org/x/crypto/bcrypt
+runtime/trace
 github.com/go-logr/logr/funcr
+github.com/grpc-ecosystem/grpc-gateway/utilities
+testing
+github.com/sirupsen/logrus
 internal/profile
-go.opentelemetry.io/otel/metric/noop
+github.com/grpc-ecosystem/grpc-gateway/internal/httprule
+go.uber.org/zap/internal
 runtime/pprof
 github.com/klauspost/compress/fse
 database/sql/driver
 github.com/go-logr/stdr
-github.com/klauspost/compress/huff0
 go.opentelemetry.io/otel/semconv/v1.26.0
-go.uber.org/zap/internal
 os/user
+github.com/klauspost/compress/huff0
+google.golang.org/protobuf/internal/encoding/tag
+google.golang.org/protobuf/encoding/protojson
+google.golang.org/protobuf/internal/impl
 go.opentelemetry.io/otel/trace/noop
 go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc/internal
 go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc/internal/retry
 gopkg.in/natefinch/lumberjack.v2
 sigs.k8s.io/yaml/goyaml.v2
-google.golang.org/protobuf/internal/encoding/tag
-google.golang.org/protobuf/encoding/protojson
 go.uber.org/zap/internal/ztest
-google.golang.org/protobuf/internal/impl
+github.com/klauspost/compress/zstd
 github.com/russross/blackfriday/v2
 go.etcd.io/etcd/pkg/expect
-github.com/klauspost/compress/zstd
-github.com/davecgh/go-spew/spew
 github.com/pmezard/go-difflib/difflib
+github.com/davecgh/go-spew/spew
 gopkg.in/yaml.v3
 golang.org/x/sync/errgroup
 gopkg.in/yaml.v2
 github.com/cockroachdb/datadriven
 github.com/cpuguy83/go-md2man/v2/md2man
 github.com/urfave/cli
-sigs.k8s.io/yaml
-github.com/stretchr/testify/assert/yaml
-github.com/gogo/protobuf/protoc-gen-gogo/descriptor
 go.etcd.io/etcd/client/pkg/types
-net/textproto
-github.com/spf13/pflag
-go.etcd.io/etcd/client/pkg/systemd
 crypto/x509
+net/textproto
 vendor/golang.org/x/net/http/httpproxy
 google.golang.org/grpc/internal
+github.com/spf13/pflag
+vendor/golang.org/x/net/http/httpguts
+mime/multipart
+golang.org/x/net/http/httpguts
 google.golang.org/grpc/internal/syscall
+google.golang.org/grpc/metadata
+google.golang.org/grpc/codes
+go.etcd.io/etcd/client/pkg/srv
 google.golang.org/grpc/internal/resolver/dns/internal
 github.com/coreos/go-systemd/journal
+go.etcd.io/etcd/client/pkg/systemd
 go.etcd.io/etcd/client/v3/internal/endpoint
 github.com/prometheus/procfs
 github.com/google/uuid
-github.com/coreos/go-systemd/daemon
-go.etcd.io/etcd/client/pkg/srv
-google.golang.org/grpc/metadata
-google.golang.org/grpc/codes
-vendor/golang.org/x/net/http/httpguts
-mime/multipart
-golang.org/x/net/http/httpguts
 google.golang.org/grpc/internal/grpcutil
 google.golang.org/grpc/internal/balancerload
 google.golang.org/grpc/stats
 google.golang.org/grpc/tap
-github.com/gogo/protobuf/gogoproto
+sigs.k8s.io/yaml
+github.com/coreos/go-systemd/daemon
 google.golang.org/grpc/encoding
 google.golang.org/grpc/encoding/gzip
-github.com/spf13/cobra
+github.com/stretchr/testify/assert/yaml
+github.com/gogo/protobuf/protoc-gen-gogo/descriptor
 github.com/golang-jwt/jwt
 crypto/tls
+github.com/spf13/cobra
+go.etcd.io/etcd/pkg/cobrautl
+github.com/gogo/protobuf/gogoproto
 google.golang.org/protobuf/internal/filetype
 google.golang.org/protobuf/runtime/protoimpl
 google.golang.org/protobuf/types/descriptorpb
 google.golang.org/protobuf/protoadapt
 google.golang.org/protobuf/types/known/durationpb
 google.golang.org/protobuf/types/known/timestamppb
+google.golang.org/protobuf/types/known/anypb
 google.golang.org/grpc/interop/grpc_testing/core
 google.golang.org/protobuf/types/known/fieldmaskpb
 google.golang.org/protobuf/types/known/structpb
-google.golang.org/protobuf/types/known/anypb
 google.golang.org/protobuf/types/known/wrapperspb
+go.opentelemetry.io/proto/otlp/common/v1
 google.golang.org/grpc/encoding/proto
 google.golang.org/grpc/internal/pretty
-github.com/golang/protobuf/ptypes/duration
-github.com/golang/protobuf/ptypes/timestamp
 google.golang.org/genproto/googleapis/rpc/status
+github.com/golang/protobuf/ptypes/timestamp
 github.com/prometheus/client_model/go
 google.golang.org/genproto/googleapis/api/httpbody
-go.opentelemetry.io/proto/otlp/common/v1
+google.golang.org/grpc/internal/status
+github.com/golang/protobuf/ptypes/duration
 google.golang.org/genproto/googleapis/rpc/errdetails
-go.etcd.io/etcd/pkg/cobrautl
+google.golang.org/grpc/status
 google.golang.org/grpc/binarylog/grpc_binarylog_v1
-google.golang.org/grpc/internal/status
-go.opentelemetry.io/proto/otlp/resource/v1
 github.com/prometheus/common/model
-google.golang.org/grpc/status
-go.opentelemetry.io/proto/otlp/trace/v1
-github.com/grpc-ecosystem/go-grpc-prometheus/packages/grpcstatus
+go.opentelemetry.io/proto/otlp/resource/v1
 go.etcd.io/etcd/api/v3rpc/rpctypes
-google.golang.org/grpc/internal/binarylog
+github.com/grpc-ecosystem/go-grpc-prometheus/packages/grpcstatus
+go.opentelemetry.io/proto/otlp/trace/v1
 google.golang.org/protobuf/internal/editionssupport
 google.golang.org/protobuf/types/gofeaturespb
 google.golang.org/genproto/googleapis/api/annotations
-google.golang.org/protobuf/reflect/protodesc
-github.com/prometheus/client_golang/prometheus/internal
-github.com/golang/protobuf/proto
-go.etcd.io/etcd/api/authpb
-go.etcd.io/etcd/api/membershippb
-go.etcd.io/etcd/api/mvccpb
-go.etcd.io/etcd/raft/raftpb
-go.etcd.io/etcd/server/etcdserver/api/snap/snappb
+google.golang.org/grpc/internal/binarylog
 net/http/httptrace
 google.golang.org/grpc/internal/credentials
 go.etcd.io/etcd/client/pkg/tlsutil
-net/http
 google.golang.org/grpc/credentials
-google.golang.org/grpc/credentials/insecure
-go.etcd.io/etcd/client/v3/credentials
+net/http
+google.golang.org/protobuf/reflect/protodesc
+github.com/prometheus/client_golang/prometheus/internal
+google.golang.org/grpc/internal/channelz
 google.golang.org/grpc/resolver
+google.golang.org/grpc/credentials/insecure
 google.golang.org/grpc/peer
-google.golang.org/grpc/internal/channelz
-go.etcd.io/etcd/raft/tracker
-go.etcd.io/etcd/server/wal/walpb
+go.etcd.io/etcd/client/v3/credentials
 google.golang.org/grpc/internal/metadata
-google.golang.org/grpc/internal/transport/networktype
 google.golang.org/grpc/internal/resolver/passthrough
+google.golang.org/grpc/internal/transport/networktype
 google.golang.org/grpc/balancer/grpclb/state
 google.golang.org/grpc/resolver/manual
 google.golang.org/grpc/internal/resolver/unix
-google.golang.org/grpc/internal/resolver/dns
-go.etcd.io/etcd/raft/confchange
 go.etcd.io/etcd/client/v3/internal/resolver
-google.golang.org/grpc/channelz
+google.golang.org/grpc/internal/resolver/dns
 google.golang.org/grpc/resolver/dns
-go.etcd.io/etcd/raft
+google.golang.org/grpc/channelz
 google.golang.org/grpc/balancer
 google.golang.org/grpc/balancer/base
 google.golang.org/grpc/internal/serviceconfig
+github.com/golang/protobuf/proto
 google.golang.org/grpc/internal/resolver
 google.golang.org/grpc/balancer/roundrobin
 google.golang.org/grpc/internal/balancer/gracefulswitch
+go.etcd.io/etcd/api/authpb
+go.etcd.io/etcd/api/membershippb
+go.etcd.io/etcd/api/mvccpb
+go.etcd.io/etcd/raft/raftpb
+go.etcd.io/etcd/server/etcdserver/api/snap/snappb
+go.etcd.io/etcd/raft/tracker
+go.etcd.io/etcd/server/wal/walpb
+go.etcd.io/etcd/raft/confchange
+go.etcd.io/etcd/raft
 go.etcd.io/etcd/raft/rafttest
-golang.org/x/net/trace
 go.etcd.io/etcd/client/v2
+golang.org/x/net/trace
+golang.org/x/net/http2
+net/http/httputil
+go.uber.org/zap
+go.opentelemetry.io/otel/propagation
 expvar
+github.com/prometheus/common/expfmt
 go.etcd.io/etcd/server/etcdserver/api/v2error
 github.com/xiang90/probing
 go.etcd.io/etcd/pkg/httputil
-github.com/prometheus/common/expfmt
 go.etcd.io/etcd/server/etcdserver/api/v2http/httptypes
-net/http/httputil
-go.uber.org/zap
-go.opentelemetry.io/otel/propagation
-golang.org/x/net/http2
 go.etcd.io/etcd/client/pkg/testutil
+go.opentelemetry.io/otel/internal/global
 github.com/gorilla/websocket
 net/http/pprof
-go.opentelemetry.io/otel/internal/global
 github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil/header
 github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil
 go.opentelemetry.io/otel/semconv/internal
-go.etcd.io/etcd/pkg/debugutil
 net/http/httptest
 go.etcd.io/etcd/server/mock/mockstorage
 go.etcd.io/etcd/server/mock/mockwait
 go.etcd.io/etcd/tests/framework/testutils
-go.opentelemetry.io/otel/semconv/v1.4.0
 go.etcd.io/etcd/tests/testutils
-github.com/prometheus/client_golang/prometheus
-github.com/tmc/grpc-websocket-proxy/wsproxy
-github.com/stretchr/testify/assert
+go.opentelemetry.io/otel/semconv/v1.4.0
 go.opentelemetry.io/otel
 go.opentelemetry.io/otel/sdk/internal/env
 go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc/internal/envconfig
+github.com/tmc/grpc-websocket-proxy/wsproxy
+go.etcd.io/etcd/pkg/debugutil
+github.com/prometheus/client_golang/prometheus
 go.opentelemetry.io/otel/sdk/resource
+github.com/stretchr/testify/assert
+go.opentelemetry.io/otel/sdk/trace
+go.opentelemetry.io/otel/exporters/otlp/otlptrace/internal/tracetransform
+go.opentelemetry.io/otel/exporters/otlp/otlptrace
+go.etcd.io/etcd/server/storage/mvcc/testutil
 go.etcd.io/etcd/client/pkg/logutil
 go.uber.org/zap/zapgrpc
 go.etcd.io/etcd/pkg/netutil
 go.etcd.io/etcd/pkg/traceutil
-go.etcd.io/etcd/client/pkg/fileutil
 go.etcd.io/etcd/server/etcdserver/api/v2stats
 go.etcd.io/etcd/pkg/flags
 go.uber.org/zap/zaptest
 go.etcd.io/etcd/pkg/osutil
 go.etcd.io/etcd/server/proxy/tcpproxy
-go.opentelemetry.io/otel/sdk/trace
+go.etcd.io/etcd/client/pkg/fileutil
+go.etcd.io/etcd/server/mvcc/backend
+go.etcd.io/etcd/server/etcdserver/api/v2store
+github.com/prometheus/client_golang/prometheus/promhttp
 go.etcd.io/etcd/client/pkg/transport
 go.etcd.io/etcd/pkg/ioutil
-go.etcd.io/etcd/server/storage/mvcc/testutil
-go.opentelemetry.io/otel/exporters/otlp/otlptrace/internal/tracetransform
-go.etcd.io/etcd/server/etcdserver/api/v2discovery
-go.etcd.io/etcd/pkg/proxy
-go.opentelemetry.io/otel/exporters/otlp/otlptrace
 go.etcd.io/etcd/server/etcdserver/api/snap
-github.com/prometheus/client_golang/prometheus/promhttp
-go.etcd.io/etcd/server/mvcc/backend
 go.etcd.io/etcd/server/wal
-go.etcd.io/etcd/server/etcdserver/api/v2store
 github.com/soheilhy/cmux
-google.golang.org/grpc/internal/transport
 go.etcd.io/etcd/server/proxy/httpproxy
-go.etcd.io/etcd/server/etcdserver/api/rafthttp
 go.etcd.io/etcd/server/mock/mockstore
-go.etcd.io/etcd/server/mvcc/buckets
+google.golang.org/grpc/internal/transport
 go.etcd.io/etcd/server/mvcc/backend/testing
+go.etcd.io/etcd/server/mvcc/buckets
 go.etcd.io/etcd/server/etcdserver/api/membership
 go.etcd.io/etcd/server/etcdserver/cindex
 go.etcd.io/etcd/server/verify
+go.etcd.io/etcd/server/etcdserver/api/v2discovery
+go.etcd.io/etcd/pkg/proxy
+go.etcd.io/etcd/server/etcdserver/api/rafthttp
 go.etcd.io/etcd/server/etcdserver/api
 google.golang.org/grpc
-google.golang.org/grpc/health/grpc_health_v1
-go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
-github.com/grpc-ecosystem/go-grpc-prometheus
-go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc/internal/otlpconfig
 go.etcd.io/etcd/api/etcdserverpb
 google.golang.org/grpc/interop/grpc_testing
+github.com/grpc-ecosystem/go-grpc-prometheus
+go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
+google.golang.org/grpc/health/grpc_health_v1
+go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc/internal/otlpconfig
 github.com/grpc-ecosystem/grpc-gateway/runtime
 google.golang.org/grpc/health
 go.etcd.io/etcd/server/config
 go.opentelemetry.io/proto/otlp/collector/trace/v1
-go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc
 go.etcd.io/etcd/pkg/grpc_testing
+go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc
+go.etcd.io/etcd/client/v3
 go.etcd.io/etcd/server/etcdserver/api/v3alarm
-go.etcd.io/etcd/server/lease/leasepb
 go.etcd.io/etcd/server/auth
+go.etcd.io/etcd/server/lease/leasepb
+go.etcd.io/etcd/api/etcdserverpb/gw
 go.etcd.io/etcd/server/etcdserver/api/v3election/v3electionpb
-go.etcd.io/etcd/server/proxy/grpcproxy/cache
-go.etcd.io/etcd/client/v3/mock/mockserver
 go.etcd.io/etcd/server/etcdserver/api/v3lock/v3lockpb
-go.etcd.io/etcd/client/v3
-go.etcd.io/etcd/api/etcdserverpb/gw
+go.etcd.io/etcd/client/v3/mock/mockserver
+go.etcd.io/etcd/server/proxy/grpcproxy/cache
 go.etcd.io/etcd/server/lease
+go.etcd.io/etcd/server/lease/leasehttp
 go.etcd.io/etcd/server/etcdserver/api/v3lock/v3lockpb/gw
-go.etcd.io/etcd/server/etcdserver/api/v3election/v3electionpb/gw
 go.etcd.io/etcd/server/proxy/grpcproxy/adapter
-go.etcd.io/etcd/server/lease/leasehttp
+go.etcd.io/etcd/server/etcdserver/api/v3election/v3electionpb/gw
 go.etcd.io/etcd/client/v3/concurrency
 go.etcd.io/etcd/client/v3/mirror
 go.etcd.io/etcd/client/v3/snapshot
+go.etcd.io/etcd/server/mvcc
 go.etcd.io/etcd/client/v3/clientv3util
-go.etcd.io/etcd/client/v3/naming/endpoints
+go.etcd.io/etcd/client/v3/kubernetes
 go.etcd.io/etcd/client/v3/namespace
+go.etcd.io/etcd/client/v3/naming/endpoints
 go.etcd.io/etcd/client/v3/ordering
 go.etcd.io/etcd/client/v3/yaml
 go.etcd.io/etcd/tests/integration/clientv3
-go.etcd.io/etcd/client/v3/kubernetes
-go.etcd.io/etcd/server/mvcc
 go.etcd.io/etcd/client/v3/naming/resolver
 go.etcd.io/etcd/server/etcdserver/api/v3election
 go.etcd.io/etcd/server/etcdserver/api/v3lock
-go.etcd.io/etcd/tests/functional/runner
-go.etcd.io/etcd/client/v3/leasing
 go.etcd.io/etcd/client/v3/experimental/recipes
+go.etcd.io/etcd/client/v3/leasing
+go.etcd.io/etcd/tests/functional/runner
 go.etcd.io/etcd/server/etcdserver/api/v3compactor
 go.etcd.io/etcd/server/etcdserver
 go.etcd.io/etcd/etcdutl/snapshot
-go.etcd.io/etcd/server/etcdserver/api/v2auth
 go.etcd.io/etcd/server/etcdserver/api/etcdhttp
+go.etcd.io/etcd/server/etcdserver/api/v2auth
 go.etcd.io/etcd/server/etcdserver/api/v2v3
 go.etcd.io/etcd/server/etcdserver/api/v3rpc
 go.etcd.io/etcd/etcdutl/etcdutl
 go.etcd.io/etcd/tests/functional/rpcpb
 go.etcd.io/etcd/server/etcdserver/api/v2http
+go.etcd.io/etcd/etcdctl/ctlv3/command
+go.etcd.io/etcd/etcdctl/ctlv2/command
+go.etcd.io/etcd/etcdutl
 go.etcd.io/etcd/server/etcdserver/api/v3client
 go.etcd.io/etcd/server/proxy/grpcproxy
-go.etcd.io/etcd/etcdutl
-go.etcd.io/etcd/etcdctl/ctlv2/command
-go.etcd.io/etcd/etcdctl/ctlv3/command
+go.etcd.io/etcd/tests/functional/tester
 go.etcd.io/etcd/server/embed
 go.etcd.io/etcd/etcdctl/ctlv2
-go.etcd.io/etcd/tests/functional/tester
 go.etcd.io/etcd/etcdctl/ctlv3
 go.etcd.io/etcd/etcdctl
 go.etcd.io/etcd/tests/integration
-go.etcd.io/etcd/tests/functional/agent
 go.etcd.io/etcd/server/etcdmain
+go.etcd.io/etcd/tests/functional/agent
 go.etcd.io/etcd/server
 go.etcd.io/etcd
 go.etcd.io/etcd/tests/framework/e2e
@@ -2876,14 +2912,14 @@
 === RUN   TestInvalidGoTypeIntPanic
 --- PASS: TestInvalidGoTypeIntPanic (0.00s)
 PASS
-ok  	go.etcd.io/etcd/api/etcdserverpb	0.024s
+ok  	go.etcd.io/etcd/api/etcdserverpb	0.065s
 ?   	go.etcd.io/etcd/api/etcdserverpb/gw	[no test files]
 ?   	go.etcd.io/etcd/api/membershippb	[no test files]
 ?   	go.etcd.io/etcd/api/mvccpb	[no test files]
 === RUN   TestConvert
 --- PASS: TestConvert (0.00s)
 PASS
-ok  	go.etcd.io/etcd/api/v3rpc/rpctypes	0.010s
+ok  	go.etcd.io/etcd/api/v3rpc/rpctypes	0.020s
 ?   	go.etcd.io/etcd/api/version	[no test files]
 === RUN   TestFileBufReader
 --- PASS: TestFileBufReader (0.00s)
@@ -2900,7 +2936,7 @@
 === RUN   TestDirPermission
 --- PASS: TestDirPermission (0.00s)
 === RUN   TestRemoveMatchFile
-    logger.go:130: 2026-04-07T08:42:51.956-1200	ERROR	remove file failed	{"file": "/tmp/TestRemoveMatchFile718696460/001/tmp1553674429", "error": "remove /tmp/TestRemoveMatchFile718696460/001/tmp1553674429: no such file or directory"}
+    logger.go:130: 2025-03-06T04:27:19.078+1400	ERROR	remove file failed	{"file": "/tmp/TestRemoveMatchFile1452505295/001/tmp583601212", "error": "remove /tmp/TestRemoveMatchFile1452505295/001/tmp583601212: no such file or directory"}
 --- PASS: TestRemoveMatchFile (0.00s)
 === RUN   TestLockAndUnlockSyscallFlock
 --- PASS: TestLockAndUnlockSyscallFlock (0.10s)
@@ -2913,48 +2949,42 @@
 === RUN   TestPreallocateFixed
 --- PASS: TestPreallocateFixed (0.00s)
 === RUN   TestPurgeFile
-{"level":"info","msg":"started to purge file","dir":"/tmp/purgefile2642383089","suffix":"test","max":3,"interval":"1ms"}
-{"level":"info","msg":"purged","path":"/tmp/purgefile2642383089/0.test"}
-{"level":"info","msg":"purged","path":"/tmp/purgefile2642383089/1.test"}
-{"level":"info","msg":"purged","path":"/tmp/purgefile2642383089/2.test"}
-{"level":"info","msg":"purged","path":"/tmp/purgefile2642383089/4.test"}
-{"level":"info","msg":"purged","path":"/tmp/purgefile2642383089/5.test"}
-{"level":"info","msg":"purged","path":"/tmp/purgefile2642383089/6.test"}
---- PASS: TestPurgeFile (0.02s)
+{"level":"info","msg":"started to purge file","dir":"/tmp/purgefile1607251573","suffix":"test","max":3,"interval":"1ms"}
+{"level":"info","msg":"purged","path":"/tmp/purgefile1607251573/0.test"}
+{"level":"info","msg":"purged","path":"/tmp/purgefile1607251573/1.test"}
+{"level":"info","msg":"purged","path":"/tmp/purgefile1607251573/2.test"}
+{"level":"info","msg":"purged","path":"/tmp/purgefile1607251573/4.test"}
+{"level":"info","msg":"purged","path":"/tmp/purgefile1607251573/5.test"}
+{"level":"info","msg":"purged","path":"/tmp/purgefile1607251573/6.test"}
+--- PASS: TestPurgeFile (0.03s)
 === RUN   TestPurgeFileHoldingLockFile
-{"level":"info","msg":"started to purge file","dir":"/tmp/purgefile747524810","suffix":"test","max":3,"interval":"1ms"}
-{"level":"info","msg":"purged","path":"/tmp/purgefile747524810/0.test"}
-{"level":"info","msg":"purged","path":"/tmp/purgefile747524810/1.test"}
-{"level":"info","msg":"purged","path":"/tmp/purgefile747524810/2.test"}
-{"level":"info","msg":"purged","path":"/tmp/purgefile747524810/3.test"}
-{"level":"info","msg":"purged","path":"/tmp/purgefile747524810/4.test"}
-{"level":"warn","msg":"failed to lock file","path":"/tmp/purgefile747524810/5.test","error":"fileutil: file already locked"}
-{"level":"warn","msg":"failed to lock file","path":"/tmp/purgefile747524810/5.test","error":"fileutil: file already locked"}
-{"level":"warn","msg":"failed to lock file","path":"/tmp/purgefile747524810/5.test","error":"fileutil: file already locked"}
-{"level":"warn","msg":"failed to lock file","path":"/tmp/purgefile747524810/5.test","error":"fileutil: file already locked"}
-{"level":"warn","msg":"failed to lock file","path":"/tmp/purgefile747524810/5.test","error":"fileutil: file already locked"}
-{"level":"warn","msg":"failed to lock file","path":"/tmp/purgefile747524810/5.test","error":"fileutil: file already locked"}
-{"level":"warn","msg":"failed to lock file","path":"/tmp/purgefile747524810/5.test","error":"fileutil: file already locked"}
-{"level":"warn","msg":"failed to lock file","path":"/tmp/purgefile747524810/5.test","error":"fileutil: file already locked"}
-{"level":"warn","msg":"failed to lock file","path":"/tmp/purgefile747524810/5.test","error":"fileutil: file already locked"}
-{"level":"info","msg":"purged","path":"/tmp/purgefile747524810/5.test"}
-{"level":"info","msg":"purged","path":"/tmp/purgefile747524810/6.test"}
+{"level":"info","msg":"started to purge file","dir":"/tmp/purgefile3118809682","suffix":"test","max":3,"interval":"1ms"}
+{"level":"info","msg":"purged","path":"/tmp/purgefile3118809682/0.test"}
+{"level":"info","msg":"purged","path":"/tmp/purgefile3118809682/1.test"}
+{"level":"info","msg":"purged","path":"/tmp/purgefile3118809682/2.test"}
+{"level":"info","msg":"purged","path":"/tmp/purgefile3118809682/3.test"}
+{"level":"info","msg":"purged","path":"/tmp/purgefile3118809682/4.test"}
+{"level":"warn","msg":"failed to lock file","path":"/tmp/purgefile3118809682/5.test","error":"fileutil: file already locked"}
+{"level":"warn","msg":"failed to lock file","path":"/tmp/purgefile3118809682/5.test","error":"fileutil: file already locked"}
+{"level":"warn","msg":"failed to lock file","path":"/tmp/purgefile3118809682/5.test","error":"fileutil: file already locked"}
+{"level":"info","msg":"purged","path":"/tmp/purgefile3118809682/5.test"}
+{"level":"info","msg":"purged","path":"/tmp/purgefile3118809682/6.test"}
 --- PASS: TestPurgeFileHoldingLockFile (0.02s)
 === RUN   TestReadDir
 --- PASS: TestReadDir (0.00s)
 PASS
-ok  	go.etcd.io/etcd/client/pkg/fileutil	0.263s
+ok  	go.etcd.io/etcd/client/pkg/fileutil	0.283s
 === RUN   TestNewJournalWriter
     zap_journal_test.go:32: dial unixgram /run/systemd/journal/socket: connect: no such file or directory
 --- SKIP: TestNewJournalWriter (0.00s)
 === RUN   TestEncodeTimePrecisionToMicroSeconds
 --- PASS: TestEncodeTimePrecisionToMicroSeconds (0.00s)
 PASS
-ok  	go.etcd.io/etcd/client/pkg/logutil	0.012s
+ok  	go.etcd.io/etcd/client/pkg/logutil	0.033s
 === RUN   TestCanonicalURLPath
 --- PASS: TestCanonicalURLPath (0.00s)
 PASS
-ok  	go.etcd.io/etcd/client/pkg/pathutil	0.005s
+ok  	go.etcd.io/etcd/client/pkg/pathutil	0.022s
 === RUN   TestSRVGetCluster
 --- PASS: TestSRVGetCluster (0.00s)
 === RUN   TestSRVDiscover
@@ -2962,13 +2992,13 @@
 === RUN   TestGetSRVService
 --- PASS: TestGetSRVService (0.00s)
 PASS
-ok  	go.etcd.io/etcd/client/pkg/srv	0.010s
+ok  	go.etcd.io/etcd/client/pkg/srv	0.025s
 ?   	go.etcd.io/etcd/client/pkg/systemd	[no test files]
 === RUN   TestSample
     leak_test.go:37: Counting leaked routines is disabled in --short tests
 --- SKIP: TestSample (0.00s)
 PASS
-ok  	go.etcd.io/etcd/client/pkg/testutil	0.013s
+ok  	go.etcd.io/etcd/client/pkg/testutil	0.034s
 === RUN   TestGetCipherSuite_not_existing
 --- PASS: TestGetCipherSuite_not_existing (0.00s)
 === RUN   TestGetCipherSuite_success
@@ -2986,121 +3016,121 @@
     --- PASS: TestGetVersion/Empty_version (0.00s)
     --- PASS: TestGetVersion/Converting_invalid_version_string_to_TLS_version (0.00s)
 PASS
-ok  	go.etcd.io/etcd/client/pkg/tlsutil	0.012s
+ok  	go.etcd.io/etcd/client/pkg/tlsutil	0.020s
 === RUN   TestNewKeepAliveListener
-{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2027-04-07T08:42:58.220-1200"}
-{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-2126982895/cert.pem"}
-{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-2126982895/key.pem"}
---- PASS: TestNewKeepAliveListener (0.05s)
+{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2026-03-06T04:27:25.195+1400"}
+{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-2388528062/cert.pem"}
+{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-2388528062/key.pem"}
+--- PASS: TestNewKeepAliveListener (0.03s)
 === RUN   TestNewKeepAliveListenerTLSEmptyConfig
 --- PASS: TestNewKeepAliveListenerTLSEmptyConfig (0.00s)
 === RUN   TestNewListenerTLSInfo
-{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2027-04-07T08:42:58.269-1200"}
-{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-2496802553/cert.pem"}
-{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-2496802553/key.pem"}
---- PASS: TestNewListenerTLSInfo (0.04s)
+{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2026-03-06T04:27:25.222+1400"}
+{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-178482267/cert.pem"}
+{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-178482267/key.pem"}
+--- PASS: TestNewListenerTLSInfo (0.02s)
 === RUN   TestNewListenerWithOpts
-{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2027-04-07T08:42:58.312-1200"}
-{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-1101813899/cert.pem"}
-{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-1101813899/key.pem"}
-=== RUN   TestNewListenerWithOpts/https_scheme_with_TLSInfo_and_skip_check
+{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2026-03-06T04:27:25.241+1400"}
+{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-1996596456/cert.pem"}
+{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-1996596456/key.pem"}
 === RUN   TestNewListenerWithOpts/https_scheme_no_TLSInfo
 === RUN   TestNewListenerWithOpts/https_scheme_no_TLSInfo_with_skip_check
 === RUN   TestNewListenerWithOpts/https_scheme_empty_TLSInfo_with_skip_check
 === RUN   TestNewListenerWithOpts/https_scheme_empty_TLSInfo_no_skip_check
---- PASS: TestNewListenerWithOpts (0.02s)
-    --- PASS: TestNewListenerWithOpts/https_scheme_with_TLSInfo_and_skip_check (0.01s)
+=== RUN   TestNewListenerWithOpts/https_scheme_with_TLSInfo_and_skip_check
+--- PASS: TestNewListenerWithOpts (0.01s)
     --- PASS: TestNewListenerWithOpts/https_scheme_no_TLSInfo (0.00s)
     --- PASS: TestNewListenerWithOpts/https_scheme_no_TLSInfo_with_skip_check (0.00s)
     --- PASS: TestNewListenerWithOpts/https_scheme_empty_TLSInfo_with_skip_check (0.00s)
     --- PASS: TestNewListenerWithOpts/https_scheme_empty_TLSInfo_no_skip_check (0.00s)
+    --- PASS: TestNewListenerWithOpts/https_scheme_with_TLSInfo_and_skip_check (0.00s)
 === RUN   TestNewListenerWithSocketOpts
-{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2027-04-07T08:42:58.335-1200"}
-{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-3168688157/cert.pem"}
-{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-3168688157/key.pem"}
-=== RUN   TestNewListenerWithSocketOpts/reuse_port_with_https_scheme_and_no_TLSInfo_skip_check
-=== RUN   TestNewListenerWithSocketOpts/reuse_port
-=== RUN   TestNewListenerWithSocketOpts/reuse_address_with_TLS
-=== RUN   TestNewListenerWithSocketOpts/reuse_address_and_port
-=== RUN   TestNewListenerWithSocketOpts/nil_socketopts
+{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2026-03-06T04:27:25.255+1400"}
+{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-1040284803/cert.pem"}
+{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-1040284803/key.pem"}
 === RUN   TestNewListenerWithSocketOpts/empty_socketopts
 === RUN   TestNewListenerWithSocketOpts/reuse_address
+=== RUN   TestNewListenerWithSocketOpts/nil_socketopts
+=== RUN   TestNewListenerWithSocketOpts/reuse_address_with_TLS
+=== RUN   TestNewListenerWithSocketOpts/reuse_address_and_port
 === RUN   TestNewListenerWithSocketOpts/reuse_address_and_port_with_TLS
 === RUN   TestNewListenerWithSocketOpts/reuse_port_with_TLS_and_timeout
---- PASS: TestNewListenerWithSocketOpts (0.04s)
-    --- PASS: TestNewListenerWithSocketOpts/reuse_port_with_https_scheme_and_no_TLSInfo_skip_check (0.00s)
-    --- PASS: TestNewListenerWithSocketOpts/reuse_port (0.00s)
-    --- PASS: TestNewListenerWithSocketOpts/reuse_address_with_TLS (0.01s)
-    --- PASS: TestNewListenerWithSocketOpts/reuse_address_and_port (0.00s)
-    --- PASS: TestNewListenerWithSocketOpts/nil_socketopts (0.00s)
+=== RUN   TestNewListenerWithSocketOpts/reuse_port_with_https_scheme_and_no_TLSInfo_skip_check
+=== RUN   TestNewListenerWithSocketOpts/reuse_port
+--- PASS: TestNewListenerWithSocketOpts (0.02s)
     --- PASS: TestNewListenerWithSocketOpts/empty_socketopts (0.00s)
     --- PASS: TestNewListenerWithSocketOpts/reuse_address (0.00s)
-    --- PASS: TestNewListenerWithSocketOpts/reuse_address_and_port_with_TLS (0.01s)
-    --- PASS: TestNewListenerWithSocketOpts/reuse_port_with_TLS_and_timeout (0.01s)
+    --- PASS: TestNewListenerWithSocketOpts/nil_socketopts (0.00s)
+    --- PASS: TestNewListenerWithSocketOpts/reuse_address_with_TLS (0.00s)
+    --- PASS: TestNewListenerWithSocketOpts/reuse_address_and_port (0.00s)
+    --- PASS: TestNewListenerWithSocketOpts/reuse_address_and_port_with_TLS (0.00s)
+    --- PASS: TestNewListenerWithSocketOpts/reuse_port_with_TLS_and_timeout (0.00s)
+    --- PASS: TestNewListenerWithSocketOpts/reuse_port_with_https_scheme_and_no_TLSInfo_skip_check (0.00s)
+    --- PASS: TestNewListenerWithSocketOpts/reuse_port (0.00s)
 === RUN   TestNewListenerTLSInfoSkipClientSANVerify
-{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2027-04-07T08:42:58.379-1200"}
-{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-1839966259/cert.pem"}
-{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-1839966259/key.pem"}
-{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2027-04-07T08:42:58.396-1200"}
-{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-351427463/cert.pem"}
-{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-351427463/key.pem"}
-{"level":"info","msg":"Loading cert pool","cs":["/tmp/etcd-test-tls-351427463/cert.pem"],"tlsinfo":"cert = /tmp/etcd-test-tls-1839966259/cert.pem, key = /tmp/etcd-test-tls-1839966259/key.pem, client-cert=/tmp/etcd-test-tls-1839966259/cert.pem, client-key=/tmp/etcd-test-tls-1839966259/key.pem, trusted-ca = /tmp/etcd-test-tls-351427463/cert.pem, client-cert-auth = false, crl-file = "}
-{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2027-04-07T08:42:58.456-1200"}
-{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-3913833950/cert.pem"}
-{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-3913833950/key.pem"}
-{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2027-04-07T08:42:58.473-1200"}
-{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-1619992579/cert.pem"}
-{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-1619992579/key.pem"}
-{"level":"info","msg":"Loading cert pool","cs":["/tmp/etcd-test-tls-1619992579/cert.pem"],"tlsinfo":"cert = /tmp/etcd-test-tls-3913833950/cert.pem, key = /tmp/etcd-test-tls-3913833950/key.pem, client-cert=/tmp/etcd-test-tls-3913833950/cert.pem, client-key=/tmp/etcd-test-tls-3913833950/key.pem, trusted-ca = /tmp/etcd-test-tls-1619992579/cert.pem, client-cert-auth = false, crl-file = "}
-{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2027-04-07T08:42:58.533-1200"}
-{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-4142949596/cert.pem"}
-{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-4142949596/key.pem"}
-{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2027-04-07T08:42:58.550-1200"}
-{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-2573818654/cert.pem"}
-{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-2573818654/key.pem"}
-{"level":"info","msg":"Loading cert pool","cs":["/tmp/etcd-test-tls-2573818654/cert.pem"],"tlsinfo":"cert = /tmp/etcd-test-tls-4142949596/cert.pem, key = /tmp/etcd-test-tls-4142949596/key.pem, client-cert=/tmp/etcd-test-tls-4142949596/cert.pem, client-key=/tmp/etcd-test-tls-4142949596/key.pem, trusted-ca = /tmp/etcd-test-tls-2573818654/cert.pem, client-cert-auth = false, crl-file = "}
-{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2027-04-07T08:42:58.610-1200"}
-{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-1078437454/cert.pem"}
-{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-1078437454/key.pem"}
-{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2027-04-07T08:42:58.628-1200"}
-{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-2562380089/cert.pem"}
-{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-2562380089/key.pem"}
-{"level":"info","msg":"Loading cert pool","cs":["/tmp/etcd-test-tls-2562380089/cert.pem"],"tlsinfo":"cert = /tmp/etcd-test-tls-1078437454/cert.pem, key = /tmp/etcd-test-tls-1078437454/key.pem, client-cert=/tmp/etcd-test-tls-1078437454/cert.pem, client-key=/tmp/etcd-test-tls-1078437454/key.pem, trusted-ca = /tmp/etcd-test-tls-2562380089/cert.pem, client-cert-auth = false, crl-file = "}
---- PASS: TestNewListenerTLSInfoSkipClientSANVerify (0.31s)
+{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2026-03-06T04:27:25.272+1400"}
+{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-1663104312/cert.pem"}
+{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-1663104312/key.pem"}
+{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2026-03-06T04:27:25.278+1400"}
+{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-215504882/cert.pem"}
+{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-215504882/key.pem"}
+{"level":"info","msg":"Loading cert pool","cs":["/tmp/etcd-test-tls-215504882/cert.pem"],"tlsinfo":"cert = /tmp/etcd-test-tls-1663104312/cert.pem, key = /tmp/etcd-test-tls-1663104312/key.pem, client-cert=/tmp/etcd-test-tls-1663104312/cert.pem, client-key=/tmp/etcd-test-tls-1663104312/key.pem, trusted-ca = /tmp/etcd-test-tls-215504882/cert.pem, client-cert-auth = false, crl-file = "}
+{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2026-03-06T04:27:25.301+1400"}
+{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-417527928/cert.pem"}
+{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-417527928/key.pem"}
+{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2026-03-06T04:27:25.308+1400"}
+{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-1056814405/cert.pem"}
+{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-1056814405/key.pem"}
+{"level":"info","msg":"Loading cert pool","cs":["/tmp/etcd-test-tls-1056814405/cert.pem"],"tlsinfo":"cert = /tmp/etcd-test-tls-417527928/cert.pem, key = /tmp/etcd-test-tls-417527928/key.pem, client-cert=/tmp/etcd-test-tls-417527928/cert.pem, client-key=/tmp/etcd-test-tls-417527928/key.pem, trusted-ca = /tmp/etcd-test-tls-1056814405/cert.pem, client-cert-auth = false, crl-file = "}
+{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2026-03-06T04:27:25.330+1400"}
+{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-664201950/cert.pem"}
+{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-664201950/key.pem"}
+{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2026-03-06T04:27:25.337+1400"}
+{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-2667192331/cert.pem"}
+{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-2667192331/key.pem"}
+{"level":"info","msg":"Loading cert pool","cs":["/tmp/etcd-test-tls-2667192331/cert.pem"],"tlsinfo":"cert = /tmp/etcd-test-tls-664201950/cert.pem, key = /tmp/etcd-test-tls-664201950/key.pem, client-cert=/tmp/etcd-test-tls-664201950/cert.pem, client-key=/tmp/etcd-test-tls-664201950/key.pem, trusted-ca = /tmp/etcd-test-tls-2667192331/cert.pem, client-cert-auth = false, crl-file = "}
+{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2026-03-06T04:27:25.359+1400"}
+{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-3912967681/cert.pem"}
+{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-3912967681/key.pem"}
+{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2026-03-06T04:27:25.366+1400"}
+{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-4074102437/cert.pem"}
+{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-4074102437/key.pem"}
+{"level":"info","msg":"Loading cert pool","cs":["/tmp/etcd-test-tls-4074102437/cert.pem"],"tlsinfo":"cert = /tmp/etcd-test-tls-3912967681/cert.pem, key = /tmp/etcd-test-tls-3912967681/key.pem, client-cert=/tmp/etcd-test-tls-3912967681/cert.pem, client-key=/tmp/etcd-test-tls-3912967681/key.pem, trusted-ca = /tmp/etcd-test-tls-4074102437/cert.pem, client-cert-auth = false, crl-file = "}
+--- PASS: TestNewListenerTLSInfoSkipClientSANVerify (0.12s)
 === RUN   TestNewListenerTLSEmptyInfo
 --- PASS: TestNewListenerTLSEmptyInfo (0.00s)
 === RUN   TestNewTransportTLSInfo
-{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2027-04-07T08:42:58.687-1200"}
-{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-3152348215/cert.pem"}
-{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-3152348215/key.pem"}
---- PASS: TestNewTransportTLSInfo (0.02s)
+{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2026-03-06T04:27:25.389+1400"}
+{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-2691334000/cert.pem"}
+{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-2691334000/key.pem"}
+--- PASS: TestNewTransportTLSInfo (0.01s)
 === RUN   TestTLSInfoNonexist
 --- PASS: TestTLSInfoNonexist (0.00s)
 === RUN   TestTLSInfoEmpty
 --- PASS: TestTLSInfoEmpty (0.00s)
 === RUN   TestTLSInfoMissingFields
-{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2027-04-07T08:42:58.705-1200"}
-{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-1496534950/cert.pem"}
-{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-1496534950/key.pem"}
---- PASS: TestTLSInfoMissingFields (0.02s)
+{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2026-03-06T04:27:25.395+1400"}
+{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-2584718815/cert.pem"}
+{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-2584718815/key.pem"}
+--- PASS: TestTLSInfoMissingFields (0.01s)
 === RUN   TestTLSInfoParseFuncError
-{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2027-04-07T08:42:58.723-1200"}
-{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-1996485910/cert.pem"}
-{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-1996485910/key.pem"}
---- PASS: TestTLSInfoParseFuncError (0.02s)
+{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2026-03-06T04:27:25.402+1400"}
+{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-3424016458/cert.pem"}
+{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-3424016458/key.pem"}
+--- PASS: TestTLSInfoParseFuncError (0.01s)
 === RUN   TestTLSInfoConfigFuncs
-{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2027-04-07T08:42:58.742-1200"}
-{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-3299501837/cert.pem"}
-{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-3299501837/key.pem"}
-    logger.go:130: 2026-04-07T08:42:58.759-1200	INFO	Loading cert pool	{"cs": ["/tmp/etcd-test-tls-3299501837/cert.pem"], "tlsinfo": "cert = /tmp/etcd-test-tls-3299501837/cert.pem, key = /tmp/etcd-test-tls-3299501837/key.pem, client-cert=, client-key=, trusted-ca = /tmp/etcd-test-tls-3299501837/cert.pem, client-cert-auth = false, crl-file = "}
---- PASS: TestTLSInfoConfigFuncs (0.02s)
+{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2026-03-06T04:27:25.408+1400"}
+{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-1381708516/cert.pem"}
+{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-1381708516/key.pem"}
+    logger.go:130: 2025-03-06T04:27:25.416+1400	INFO	Loading cert pool	{"cs": ["/tmp/etcd-test-tls-1381708516/cert.pem"], "tlsinfo": "cert = /tmp/etcd-test-tls-1381708516/cert.pem, key = /tmp/etcd-test-tls-1381708516/key.pem, client-cert=, client-key=, trusted-ca = /tmp/etcd-test-tls-1381708516/cert.pem, client-cert-auth = false, crl-file = "}
+--- PASS: TestTLSInfoConfigFuncs (0.01s)
 === RUN   TestNewListenerUnixSocket
 --- PASS: TestNewListenerUnixSocket (0.00s)
 === RUN   TestNewListenerTLSInfoSelfCert
-{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2027-04-07T08:42:58.760-1200"}
-{"level":"info","msg":"created cert file","path":"/tmp/tlsdir3082737891/cert.pem"}
-{"level":"info","msg":"created key file","path":"/tmp/tlsdir3082737891/key.pem"}
---- PASS: TestNewListenerTLSInfoSelfCert (0.04s)
+{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2026-03-06T04:27:25.416+1400"}
+{"level":"info","msg":"created cert file","path":"/tmp/tlsdir2240693483/cert.pem"}
+{"level":"info","msg":"created key file","path":"/tmp/tlsdir2240693483/key.pem"}
+--- PASS: TestNewListenerTLSInfoSelfCert (0.02s)
 === RUN   TestIsClosedConnError
 --- PASS: TestIsClosedConnError (0.00s)
 === RUN   TestSocktOptsEmpty
@@ -3114,27 +3144,27 @@
     timeout_listener_test.go:41: flaky test
 --- SKIP: TestWriteReadTimeoutListener (0.00s)
 === RUN   TestNewTimeoutTransport
---- PASS: TestNewTimeoutTransport (0.00s)
+--- PASS: TestNewTimeoutTransport (0.01s)
 === RUN   TestValidateSecureEndpoints
-{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2027-04-07T08:42:58.805-1200"}
-{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-3334747358/cert.pem"}
-{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-3334747358/key.pem"}
-=== RUN   TestValidateSecureEndpoints/secureEndPoints
-=== RUN   TestValidateSecureEndpoints/mixEndPoints
+{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2026-03-06T04:27:25.441+1400"}
+{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-1562515757/cert.pem"}
+{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-1562515757/key.pem"}
 === RUN   TestValidateSecureEndpoints/invalidEndPoints
 === RUN   TestValidateSecureEndpoints/insecureEndpoints
---- PASS: TestValidateSecureEndpoints (0.04s)
+=== RUN   TestValidateSecureEndpoints/secureEndPoints
+=== RUN   TestValidateSecureEndpoints/mixEndPoints
+--- PASS: TestValidateSecureEndpoints (0.03s)
+    --- PASS: TestValidateSecureEndpoints/invalidEndPoints (0.01s)
+    --- PASS: TestValidateSecureEndpoints/insecureEndpoints (0.00s)
     --- PASS: TestValidateSecureEndpoints/secureEndPoints (0.01s)
     --- PASS: TestValidateSecureEndpoints/mixEndPoints (0.00s)
-    --- PASS: TestValidateSecureEndpoints/invalidEndPoints (0.00s)
-    --- PASS: TestValidateSecureEndpoints/insecureEndpoints (0.00s)
 === RUN   TestNewTransportTLSInvalidCipherSuitesTLS12
-{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2027-04-07T08:42:58.842-1200"}
-{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-2968023819/cert.pem"}
-{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-2968023819/key.pem"}
---- PASS: TestNewTransportTLSInvalidCipherSuitesTLS12 (0.03s)
+{"level":"warn","msg":"automatically generate certificates","certificate-validity-bound-not-after":"2026-03-06T04:27:25.472+1400"}
+{"level":"info","msg":"created cert file","path":"/tmp/etcd-test-tls-4197386202/cert.pem"}
+{"level":"info","msg":"created key file","path":"/tmp/etcd-test-tls-4197386202/key.pem"}
+--- PASS: TestNewTransportTLSInvalidCipherSuitesTLS12 (0.01s)
 PASS
-ok  	go.etcd.io/etcd/client/pkg/transport	0.669s
+ok  	go.etcd.io/etcd/client/pkg/transport	0.312s
 === RUN   TestIDString
 --- PASS: TestIDString (0.00s)
 === RUN   TestIDFromString
@@ -3176,7 +3206,7 @@
 === RUN   TestNewURLsMapFromStringMapNormal
 --- PASS: TestNewURLsMapFromStringMapNormal (0.00s)
 PASS
-ok  	go.etcd.io/etcd/client/pkg/types	0.012s
+ok  	go.etcd.io/etcd/client/pkg/types	0.028s
 === RUN   TestSimpleHTTPClientDoSuccess
 --- PASS: TestSimpleHTTPClientDoSuccess (0.00s)
 === RUN   TestSimpleHTTPClientDoError
@@ -3224,7 +3254,7 @@
 === RUN   TestHTTPClusterClientResetFail
 --- PASS: TestHTTPClusterClientResetFail (0.00s)
 === RUN   TestHTTPClusterClientResetPinRandom
---- PASS: TestHTTPClusterClientResetPinRandom (0.07s)
+--- PASS: TestHTTPClusterClientResetPinRandom (0.11s)
 === RUN   TestV2KeysURLHelper
 --- PASS: TestV2KeysURLHelper (0.00s)
 === RUN   TestGetAction
@@ -3314,13 +3344,13 @@
 === RUN   TestHTTPMembersAPILeaderError
 --- PASS: TestHTTPMembersAPILeaderError (0.00s)
 PASS
-ok  	go.etcd.io/etcd/client/v2	0.110s
+ok  	go.etcd.io/etcd/client/v2	0.216s
 === RUN   TestDialCancel
-    logger.go:130: 2026-04-07T08:43:03.382-1200	DEBUG	retrying of unary invoker	{"target": "etcd-endpoints://0x4000258b40/dialcancel:12345", "attempt": 0}
-    logger.go:130: 2026-04-07T08:43:03.482-1200	WARN	retrying of unary invoker failed	{"target": "etcd-endpoints://0x4000258b40/dialcancel:12345", "attempt": 0, "error": "rpc error: code = Canceled desc = latest balancer error: last connection error: connection error: desc = \"transport: Error while dialing: dial tcp 254.0.0.1:12345: connect: network is unreachable\""}
---- PASS: TestDialCancel (0.11s)
+    logger.go:130: 2025-03-06T04:27:30.986+1400	DEBUG	retrying of unary invoker	{"target": "etcd-endpoints://0x40003365a0/dialcancel:12345", "attempt": 0}
+    logger.go:130: 2025-03-06T04:27:31.089+1400	WARN	retrying of unary invoker failed	{"target": "etcd-endpoints://0x40003365a0/dialcancel:12345", "attempt": 0, "error": "rpc error: code = Canceled desc = latest balancer error: last connection error: connection error: desc = \"transport: Error while dialing: dial tcp 254.0.0.1:12345: connect: network is unreachable\""}
+--- PASS: TestDialCancel (0.17s)
 === RUN   TestDialTimeout
---- PASS: TestDialTimeout (3.01s)
+--- PASS: TestDialTimeout (3.07s)
 === RUN   TestDialNoTimeout
 --- PASS: TestDialNoTimeout (0.00s)
 === RUN   TestMaxUnaryRetries
@@ -3338,7 +3368,7 @@
 === RUN   TestZapWithLogger
 --- PASS: TestZapWithLogger (0.00s)
 === RUN   TestAuthTokenBundleNoOverwrite
-    logger.go:130: 2026-04-07T08:43:06.498-1200	DEBUG	retrying of unary invoker	{"target": "etcd-endpoints://0x40002e8780/etcd-auth-test:0", "attempt": 0}
+    logger.go:130: 2025-03-06T04:27:34.229+1400	DEBUG	retrying of unary invoker	{"target": "etcd-endpoints://0x40001d7c20/etcd-auth-test:0", "attempt": 0}
 --- PASS: TestAuthTokenBundleNoOverwrite (0.00s)
 === RUN   TestSyncFiltersMembers
 --- PASS: TestSyncFiltersMembers (0.00s)
@@ -3347,7 +3377,7 @@
 === RUN   TestClientRejectOldCluster/all_new_versions_with_different_values
 === RUN   TestClientRejectOldCluster/all_old_versions_with_different_values
 === RUN   TestClientRejectOldCluster/all_old_versions_with_the_same_value
---- PASS: TestClientRejectOldCluster (0.00s)
+--- PASS: TestClientRejectOldCluster (0.01s)
     --- PASS: TestClientRejectOldCluster/all_new_versions_with_the_same_value (0.00s)
     --- PASS: TestClientRejectOldCluster/all_new_versions_with_different_values (0.00s)
     --- PASS: TestClientRejectOldCluster/all_old_versions_with_different_values (0.00s)
@@ -3383,7 +3413,7 @@
     --- PASS: TestClientShouldRefreshToken/Other_error_and_retryAuth (0.00s)
     --- PASS: TestClientShouldRefreshToken/Other_error_and_!retryAuth (0.00s)
 === RUN   TestTxnPanics
---- PASS: TestTxnPanics (0.00s)
+--- PASS: TestTxnPanics (0.01s)
 === RUN   TestEvent
 --- PASS: TestEvent (0.00s)
 === RUN   TestStreamKeyFromCtx
@@ -3397,13 +3427,13 @@
     --- PASS: TestStreamKeyFromCtx/only_one_key (0.00s)
     --- PASS: TestStreamKeyFromCtx/no_metadata (0.00s)
 PASS
-ok  	go.etcd.io/etcd/client/v3	3.161s
+ok  	go.etcd.io/etcd/client/v3	3.328s
 testing: warning: no tests to run
 PASS
-ok  	go.etcd.io/etcd/client/v3/clientv3util	0.024s [no tests to run]
+ok  	go.etcd.io/etcd/client/v3/clientv3util	0.040s [no tests to run]
 testing: warning: no tests to run
 PASS
-ok  	go.etcd.io/etcd/client/v3/concurrency	0.029s [no tests to run]
+ok  	go.etcd.io/etcd/client/v3/concurrency	0.030s [no tests to run]
 ?   	go.etcd.io/etcd/client/v3/credentials	[no test files]
 ?   	go.etcd.io/etcd/client/v3/experimental/recipes	[no test files]
 === RUN   Test_interpret
@@ -3527,7 +3557,7 @@
     --- PASS: Test_extractHostFromHostPort/[2001:db8:1f70::999:de8:7648:6e8] (0.00s)
     --- PASS: Test_extractHostFromHostPort/[2001:db8:1f70::999:de8:7648:6e8]:100 (0.00s)
 PASS
-ok  	go.etcd.io/etcd/client/v3/internal/endpoint	0.011s
+ok  	go.etcd.io/etcd/client/v3/internal/endpoint	0.038s
 ?   	go.etcd.io/etcd/client/v3/internal/resolver	[no test files]
 ?   	go.etcd.io/etcd/client/v3/kubernetes	[no test files]
 ?   	go.etcd.io/etcd/client/v3/leasing	[no test files]
@@ -3536,7 +3566,7 @@
 === RUN   TestPrefixInterval
 --- PASS: TestPrefixInterval (0.00s)
 PASS
-ok  	go.etcd.io/etcd/client/v3/namespace	0.025s
+ok  	go.etcd.io/etcd/client/v3/namespace	0.059s
 ?   	go.etcd.io/etcd/client/v3/naming	[no test files]
 ?   	go.etcd.io/etcd/client/v3/naming/endpoints	[no test files]
 ?   	go.etcd.io/etcd/client/v3/naming/endpoints/internal	[no test files]
@@ -3546,24 +3576,24 @@
 === RUN   TestTxnOrdering
 --- PASS: TestTxnOrdering (0.00s)
 PASS
-ok  	go.etcd.io/etcd/client/v3/ordering	0.027s
+ok  	go.etcd.io/etcd/client/v3/ordering	0.068s
 ?   	go.etcd.io/etcd/client/v3/snapshot	[no test files]
 === RUN   TestConfigFromFile
---- PASS: TestConfigFromFile (0.01s)
+--- PASS: TestConfigFromFile (0.00s)
 PASS
-ok  	go.etcd.io/etcd/client/v3/yaml	0.033s
-ok  	go.etcd.io/etcd/etcdctl	0.039s
+ok  	go.etcd.io/etcd/client/v3/yaml	0.071s
+ok  	go.etcd.io/etcd/etcdctl	0.138s
 ?   	go.etcd.io/etcd/etcdctl/ctlv2	[no test files]
 === RUN   TestArgOrStdin
 --- PASS: TestArgOrStdin (0.00s)
 PASS
-ok  	go.etcd.io/etcd/etcdctl/ctlv2/command	0.037s
+ok  	go.etcd.io/etcd/etcdctl/ctlv2/command	0.030s
 ?   	go.etcd.io/etcd/etcdctl/ctlv3	[no test files]
 === RUN   Test_parseWatchArgs
 --- PASS: Test_parseWatchArgs (0.00s)
 PASS
-ok  	go.etcd.io/etcd/etcdctl/ctlv3/command	0.038s
-ok  	go.etcd.io/etcd/etcdutl	0.039s
+ok  	go.etcd.io/etcd/etcdctl/ctlv3/command	0.030s
+ok  	go.etcd.io/etcd/etcdutl	0.026s
 ?   	go.etcd.io/etcd/etcdutl/etcdutl	[no test files]
 ?   	go.etcd.io/etcd/etcdutl/snapshot	[no test files]
 === RUN   TestIntervalTreeInsert
@@ -3579,7 +3609,7 @@
 === RUN   TestIntervalTreeStab
 --- PASS: TestIntervalTreeStab (0.00s)
 === RUN   TestIntervalTreeRandom
---- PASS: TestIntervalTreeRandom (0.00s)
+--- PASS: TestIntervalTreeRandom (0.02s)
 === RUN   TestIntervalTreeSortedVisit
 --- PASS: TestIntervalTreeSortedVisit (0.00s)
 === RUN   TestIntervalTreeVisitExit
@@ -3587,14 +3617,14 @@
 === RUN   TestIntervalTreeContains
 --- PASS: TestIntervalTreeContains (0.00s)
 PASS
-ok  	go.etcd.io/etcd/pkg/adt	0.006s
+ok  	go.etcd.io/etcd/pkg/adt	0.021s
 ?   	go.etcd.io/etcd/pkg/cobrautl	[no test files]
 ?   	go.etcd.io/etcd/pkg/contention	[no test files]
 ?   	go.etcd.io/etcd/pkg/cpuutil	[no test files]
 === RUN   TestHash32
 --- PASS: TestHash32 (0.00s)
 PASS
-ok  	go.etcd.io/etcd/pkg/crc	0.005s
+ok  	go.etcd.io/etcd/pkg/crc	0.004s
 ?   	go.etcd.io/etcd/pkg/debugutil	[no test files]
 === RUN   TestExpectFunc
 --- PASS: TestExpectFunc (0.10s)
@@ -3607,7 +3637,7 @@
 === RUN   TestSignal
 --- PASS: TestSignal (0.00s)
 PASS
-ok  	go.etcd.io/etcd/pkg/expect	0.412s
+ok  	go.etcd.io/etcd/pkg/expect	0.416s
 === RUN   TestSetFlagsFromEnv
 {"level":"info","msg":"recognized and used environment variable","variable-name":"ETCD_A","variable-value":"foo"}
 --- PASS: TestSetFlagsFromEnv (0.00s)
@@ -3653,12 +3683,12 @@
 === RUN   TestNewURLsValue
 --- PASS: TestNewURLsValue (0.00s)
 PASS
-ok  	go.etcd.io/etcd/pkg/flags	0.011s
+ok  	go.etcd.io/etcd/pkg/flags	0.012s
 ?   	go.etcd.io/etcd/pkg/grpc_testing	[no test files]
 === RUN   TestGetHostname
 --- PASS: TestGetHostname (0.00s)
 PASS
-ok  	go.etcd.io/etcd/pkg/httputil	0.019s
+ok  	go.etcd.io/etcd/pkg/httputil	0.008s
 === RUN   TestNewGenerator
 --- PASS: TestNewGenerator (0.00s)
 === RUN   TestNewGeneratorUnique
@@ -3666,7 +3696,7 @@
 === RUN   TestNext
 --- PASS: TestNext (0.00s)
 PASS
-ok  	go.etcd.io/etcd/pkg/idutil	0.006s
+ok  	go.etcd.io/etcd/pkg/idutil	0.004s
 === RUN   TestPageWriterRandom
     pagewriter_test.go:25: flaky test
 --- SKIP: TestPageWriterRandom (0.00s)
@@ -3689,7 +3719,7 @@
 === RUN   TestLimitedBufferReaderRead
 --- PASS: TestLimitedBufferReaderRead (0.00s)
 PASS
-ok  	go.etcd.io/etcd/pkg/ioutil	0.054s
+ok  	go.etcd.io/etcd/pkg/ioutil	0.010s
 === RUN   TestResolveTCPAddrs
 {"level":"info","msg":"resolved URL Host","url":"http://127.0.0.1:4001","host":"127.0.0.1:4001","resolved-addr":"127.0.0.1:4001"}
 {"level":"info","msg":"resolved URL Host","url":"http://127.0.0.1:2379","host":"127.0.0.1:2379","resolved-addr":"127.0.0.1:2379"}
@@ -3761,7 +3791,7 @@
     routes_linux_test.go:32: Skip test that fails in some environments
 --- SKIP: TestGetDefaultHost (0.00s)
 PASS
-ok  	go.etcd.io/etcd/pkg/netutil	1.011s
+ok  	go.etcd.io/etcd/pkg/netutil	1.014s
 === RUN   TestUnsetenv
 --- PASS: TestUnsetenv (0.00s)
 === RUN   TestHandleInterrupts
@@ -3769,7 +3799,7 @@
 {"level":"info","msg":"received signal; shutting down","signal":"terminated"}
 --- PASS: TestHandleInterrupts (0.00s)
 PASS
-ok  	go.etcd.io/etcd/pkg/osutil	0.013s
+ok  	go.etcd.io/etcd/pkg/osutil	0.010s
 === RUN   TestMarshaler
 --- PASS: TestMarshaler (0.00s)
 === RUN   TestMarshalerPanic
@@ -3781,305 +3811,300 @@
 === RUN   TestGetBool
 --- PASS: TestGetBool (0.00s)
 PASS
-ok  	go.etcd.io/etcd/pkg/pbutil	0.005s
+ok  	go.etcd.io/etcd/pkg/pbutil	0.004s
 === RUN   TestServer_Unix_Insecure
-    logger.go:130: 2026-04-07T08:43:33.645-1200	INFO	started proxying	{"from": "unix://18A42DE4C3654F806AB.unix-conn", "to": "unix://18A42DE4C365CBE02603.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.645-1200	INFO	proxy is listening on	{"from": "unix://18A42DE4C3654F806AB.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.645-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://18A42DE4C3654F806AB.unix-conn", "to": "unix://18A42DE4C365CBE02603.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.645-1200	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://18A42DE4C3654F806AB.unix-conn", "to": "unix://18A42DE4C365CBE02603.unix-conn"}
-    server_test.go:102: took 11.98348ms with no latency
-    logger.go:130: 2026-04-07T08:43:33.660-1200	DEBUG	modified tx	{"data-received": "8 B", "data-modified": "8 B", "from": "unix://18A42DE4C3654F806AB.unix-conn", "to": "unix://18A42DE4C365CBE02603.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.660-1200	DEBUG	transmitted	{"data-size": "8 B", "from": "unix://18A42DE4C3654F806AB.unix-conn", "to": "unix://18A42DE4C365CBE02603.unix-conn"}
-    server_test.go:119: took 2.4614ms with no latency
-    logger.go:130: 2026-04-07T08:43:33.660-1200	INFO	closed proxy listener	{"from": "unix://18A42DE4C3654F806AB.unix-conn", "to": "unix://18A42DE4C365CBE02603.unix-conn"}
---- PASS: TestServer_Unix_Insecure (0.02s)
+    logger.go:130: 2025-03-06T04:27:59.509+1400	INFO	started proxying	{"from": "unix://1829EE6C3766F3AF7872.unix-conn", "to": "unix://1829EE6C3767910716E1.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.509+1400	INFO	proxy is listening on	{"from": "unix://1829EE6C3766F3AF7872.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.509+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://1829EE6C3766F3AF7872.unix-conn", "to": "unix://1829EE6C3767910716E1.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.510+1400	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://1829EE6C3766F3AF7872.unix-conn", "to": "unix://1829EE6C3767910716E1.unix-conn"}
+    server_test.go:102: took 615.724µs with no latency
+    logger.go:130: 2025-03-06T04:27:59.510+1400	DEBUG	modified tx	{"data-received": "8 B", "data-modified": "8 B", "from": "unix://1829EE6C3766F3AF7872.unix-conn", "to": "unix://1829EE6C3767910716E1.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.510+1400	DEBUG	transmitted	{"data-size": "8 B", "from": "unix://1829EE6C3766F3AF7872.unix-conn", "to": "unix://1829EE6C3767910716E1.unix-conn"}
+    server_test.go:119: took 117.24µs with no latency
+    logger.go:130: 2025-03-06T04:27:59.510+1400	INFO	closed proxy listener	{"from": "unix://1829EE6C3766F3AF7872.unix-conn", "to": "unix://1829EE6C3767910716E1.unix-conn"}
+--- PASS: TestServer_Unix_Insecure (0.00s)
 === RUN   TestServer_TCP_Insecure
-    logger.go:130: 2026-04-07T08:43:33.660-1200	INFO	started proxying	{"from": "tcp://127.0.0.1:45455", "to": "tcp://127.0.0.1:45303"}
-    logger.go:130: 2026-04-07T08:43:33.660-1200	INFO	proxy is listening on	{"from": "tcp://127.0.0.1:45455"}
-    logger.go:130: 2026-04-07T08:43:33.660-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "tcp://127.0.0.1:45455", "to": "tcp://127.0.0.1:45303"}
-    logger.go:130: 2026-04-07T08:43:33.660-1200	DEBUG	transmitted	{"data-size": "12 B", "from": "tcp://127.0.0.1:45455", "to": "tcp://127.0.0.1:45303"}
-    server_test.go:102: took 324.64µs with no latency
-    logger.go:130: 2026-04-07T08:43:33.661-1200	DEBUG	modified tx	{"data-received": "8 B", "data-modified": "8 B", "from": "tcp://127.0.0.1:45455", "to": "tcp://127.0.0.1:45303"}
-    logger.go:130: 2026-04-07T08:43:33.661-1200	DEBUG	transmitted	{"data-size": "8 B", "from": "tcp://127.0.0.1:45455", "to": "tcp://127.0.0.1:45303"}
-    server_test.go:119: took 329.8µs with no latency
-    logger.go:130: 2026-04-07T08:43:33.661-1200	INFO	closed proxy listener	{"from": "tcp://127.0.0.1:45455", "to": "tcp://127.0.0.1:45303"}
+    logger.go:130: 2025-03-06T04:27:59.510+1400	INFO	started proxying	{"from": "tcp://127.0.0.1:35999", "to": "tcp://127.0.0.1:34895"}
+    logger.go:130: 2025-03-06T04:27:59.510+1400	INFO	proxy is listening on	{"from": "tcp://127.0.0.1:35999"}
+    logger.go:130: 2025-03-06T04:27:59.511+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "tcp://127.0.0.1:35999", "to": "tcp://127.0.0.1:34895"}
+    logger.go:130: 2025-03-06T04:27:59.511+1400	DEBUG	transmitted	{"data-size": "12 B", "from": "tcp://127.0.0.1:35999", "to": "tcp://127.0.0.1:34895"}
+    server_test.go:102: took 358.602µs with no latency
+    logger.go:130: 2025-03-06T04:27:59.511+1400	DEBUG	modified tx	{"data-received": "8 B", "data-modified": "8 B", "from": "tcp://127.0.0.1:35999", "to": "tcp://127.0.0.1:34895"}
+    logger.go:130: 2025-03-06T04:27:59.511+1400	DEBUG	transmitted	{"data-size": "8 B", "from": "tcp://127.0.0.1:35999", "to": "tcp://127.0.0.1:34895"}
+    server_test.go:119: took 889.246µs with no latency
+    logger.go:130: 2025-03-06T04:27:59.512+1400	INFO	closed proxy listener	{"from": "tcp://127.0.0.1:35999", "to": "tcp://127.0.0.1:34895"}
 --- PASS: TestServer_TCP_Insecure (0.00s)
 === RUN   TestServer_Unix_Secure
-    logger.go:130: 2026-04-07T08:43:33.661-1200	INFO	started proxying	{"from": "unix://18A42DE4C463BF4847F7.unix-conn", "to": "unix://18A42DE4C46415386CED.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.661-1200	INFO	proxy is listening on	{"from": "unix://18A42DE4C463BF4847F7.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.662-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://18A42DE4C463BF4847F7.unix-conn", "to": "unix://18A42DE4C46415386CED.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.662-1200	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://18A42DE4C463BF4847F7.unix-conn", "to": "unix://18A42DE4C46415386CED.unix-conn"}
-    server_test.go:102: took 406.92µs with no latency
-    logger.go:130: 2026-04-07T08:43:33.663-1200	DEBUG	modified tx	{"data-received": "8 B", "data-modified": "8 B", "from": "unix://18A42DE4C463BF4847F7.unix-conn", "to": "unix://18A42DE4C46415386CED.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.663-1200	DEBUG	transmitted	{"data-size": "8 B", "from": "unix://18A42DE4C463BF4847F7.unix-conn", "to": "unix://18A42DE4C46415386CED.unix-conn"}
-    server_test.go:119: took 634.16µs with no latency
-    logger.go:130: 2026-04-07T08:43:33.663-1200	INFO	closed proxy listener	{"from": "unix://18A42DE4C463BF4847F7.unix-conn", "to": "unix://18A42DE4C46415386CED.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.512+1400	INFO	started proxying	{"from": "unix://1829EE6C379A8F556B0C.unix-conn", "to": "unix://1829EE6C379AF58550ED.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.512+1400	INFO	proxy is listening on	{"from": "unix://1829EE6C379A8F556B0C.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.513+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://1829EE6C379A8F556B0C.unix-conn", "to": "unix://1829EE6C379AF58550ED.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.513+1400	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://1829EE6C379A8F556B0C.unix-conn", "to": "unix://1829EE6C379AF58550ED.unix-conn"}
+    server_test.go:102: took 779.805µs with no latency
+    logger.go:130: 2025-03-06T04:27:59.514+1400	DEBUG	modified tx	{"data-received": "8 B", "data-modified": "8 B", "from": "unix://1829EE6C379A8F556B0C.unix-conn", "to": "unix://1829EE6C379AF58550ED.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.514+1400	DEBUG	transmitted	{"data-size": "8 B", "from": "unix://1829EE6C379A8F556B0C.unix-conn", "to": "unix://1829EE6C379AF58550ED.unix-conn"}
+    server_test.go:119: took 1.005446ms with no latency
+    logger.go:130: 2025-03-06T04:27:59.515+1400	INFO	closed proxy listener	{"from": "unix://1829EE6C379A8F556B0C.unix-conn", "to": "unix://1829EE6C379AF58550ED.unix-conn"}
 --- PASS: TestServer_Unix_Secure (0.00s)
 === RUN   TestServer_TCP_Secure
-    logger.go:130: 2026-04-07T08:43:33.663-1200	INFO	started proxying	{"from": "tcp://127.0.0.1:42135", "to": "tcp://127.0.0.1:40617"}
-    logger.go:130: 2026-04-07T08:43:33.663-1200	INFO	proxy is listening on	{"from": "tcp://127.0.0.1:42135"}
-    logger.go:130: 2026-04-07T08:43:33.664-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "tcp://127.0.0.1:42135", "to": "tcp://127.0.0.1:40617"}
-    logger.go:130: 2026-04-07T08:43:33.664-1200	DEBUG	transmitted	{"data-size": "12 B", "from": "tcp://127.0.0.1:42135", "to": "tcp://127.0.0.1:40617"}
-    server_test.go:102: took 823.96µs with no latency
-    logger.go:130: 2026-04-07T08:43:33.666-1200	DEBUG	modified tx	{"data-received": "8 B", "data-modified": "8 B", "from": "tcp://127.0.0.1:42135", "to": "tcp://127.0.0.1:40617"}
-    logger.go:130: 2026-04-07T08:43:33.666-1200	DEBUG	transmitted	{"data-size": "8 B", "from": "tcp://127.0.0.1:42135", "to": "tcp://127.0.0.1:40617"}
-    server_test.go:119: took 1.5846ms with no latency
-    logger.go:130: 2026-04-07T08:43:33.666-1200	INFO	closed proxy listener	{"from": "tcp://127.0.0.1:42135", "to": "tcp://127.0.0.1:40617"}
+    logger.go:130: 2025-03-06T04:27:59.515+1400	INFO	started proxying	{"from": "tcp://127.0.0.1:42645", "to": "tcp://127.0.0.1:45589"}
+    logger.go:130: 2025-03-06T04:27:59.515+1400	INFO	proxy is listening on	{"from": "tcp://127.0.0.1:42645"}
+    logger.go:130: 2025-03-06T04:27:59.516+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "tcp://127.0.0.1:42645", "to": "tcp://127.0.0.1:45589"}
+    logger.go:130: 2025-03-06T04:27:59.516+1400	DEBUG	transmitted	{"data-size": "12 B", "from": "tcp://127.0.0.1:42645", "to": "tcp://127.0.0.1:45589"}
+    server_test.go:102: took 592.924µs with no latency
+    logger.go:130: 2025-03-06T04:27:59.517+1400	DEBUG	modified tx	{"data-received": "8 B", "data-modified": "8 B", "from": "tcp://127.0.0.1:42645", "to": "tcp://127.0.0.1:45589"}
+    logger.go:130: 2025-03-06T04:27:59.517+1400	DEBUG	transmitted	{"data-size": "8 B", "from": "tcp://127.0.0.1:42645", "to": "tcp://127.0.0.1:45589"}
+    server_test.go:119: took 844.165µs with no latency
+    logger.go:130: 2025-03-06T04:27:59.517+1400	INFO	closed proxy listener	{"from": "tcp://127.0.0.1:42645", "to": "tcp://127.0.0.1:45589"}
 --- PASS: TestServer_TCP_Secure (0.00s)
 === RUN   TestServer_Unix_Insecure_DelayTx
-    logger.go:130: 2026-04-07T08:43:33.666-1200	INFO	started proxying	{"from": "unix://18A42DE4C4B380786156.unix-conn", "to": "unix://18A42DE4C4B3E1806B11.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.666-1200	INFO	proxy is listening on	{"from": "unix://18A42DE4C4B380786156.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.666-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://18A42DE4C4B380786156.unix-conn", "to": "unix://18A42DE4C4B3E1806B11.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.666-1200	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://18A42DE4C4B380786156.unix-conn", "to": "unix://18A42DE4C4B3E1806B11.unix-conn"}
-    server_test.go:102: took 107.2µs with no latency
-    logger.go:130: 2026-04-07T08:43:33.667-1200	INFO	set transmit latency	{"latency": "52.406136ms", "given-latency": "50ms", "given-latency-random-variable": "5ms", "from": "unix://18A42DE4C4B380786156.unix-conn", "to": "unix://18A42DE4C4B3E1806B11.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.667-1200	DEBUG	modified tx	{"data-received": "8 B", "data-modified": "8 B", "from": "unix://18A42DE4C4B380786156.unix-conn", "to": "unix://18A42DE4C4B3E1806B11.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.721-1200	DEBUG	transmitted	{"data-size": "8 B", "from": "unix://18A42DE4C4B380786156.unix-conn", "to": "unix://18A42DE4C4B3E1806B11.unix-conn"}
-    server_test.go:117: took 54.85092ms with latency 50ms+-5ms
-    logger.go:130: 2026-04-07T08:43:33.721-1200	INFO	removed transmit latency	{"latency": "52.406136ms", "from": "unix://18A42DE4C4B380786156.unix-conn", "to": "unix://18A42DE4C4B3E1806B11.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.721-1200	INFO	closed proxy listener	{"from": "unix://18A42DE4C4B380786156.unix-conn", "to": "unix://18A42DE4C4B3E1806B11.unix-conn"}
---- PASS: TestServer_Unix_Insecure_DelayTx (0.06s)
+    logger.go:130: 2025-03-06T04:27:59.517+1400	INFO	started proxying	{"from": "unix://1829EE6C37E991668EA.unix-conn", "to": "unix://1829EE6C37E9EB66F34.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.517+1400	INFO	proxy is listening on	{"from": "unix://1829EE6C37E991668EA.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.517+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://1829EE6C37E991668EA.unix-conn", "to": "unix://1829EE6C37E9EB66F34.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.517+1400	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://1829EE6C37E991668EA.unix-conn", "to": "unix://1829EE6C37E9EB66F34.unix-conn"}
+    server_test.go:102: took 117.081µs with no latency
+    logger.go:130: 2025-03-06T04:27:59.517+1400	INFO	set transmit latency	{"latency": "52.315307ms", "given-latency": "50ms", "given-latency-random-variable": "5ms", "from": "unix://1829EE6C37E991668EA.unix-conn", "to": "unix://1829EE6C37E9EB66F34.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.517+1400	DEBUG	modified tx	{"data-received": "8 B", "data-modified": "8 B", "from": "unix://1829EE6C37E991668EA.unix-conn", "to": "unix://1829EE6C37E9EB66F34.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.570+1400	DEBUG	transmitted	{"data-size": "8 B", "from": "unix://1829EE6C37E991668EA.unix-conn", "to": "unix://1829EE6C37E9EB66F34.unix-conn"}
+    server_test.go:117: took 52.973578ms with latency 50ms+-5ms
+    logger.go:130: 2025-03-06T04:27:59.570+1400	INFO	removed transmit latency	{"latency": "52.315307ms", "from": "unix://1829EE6C37E991668EA.unix-conn", "to": "unix://1829EE6C37E9EB66F34.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.570+1400	INFO	closed proxy listener	{"from": "unix://1829EE6C37E991668EA.unix-conn", "to": "unix://1829EE6C37E9EB66F34.unix-conn"}
+--- PASS: TestServer_Unix_Insecure_DelayTx (0.05s)
 === RUN   TestServer_TCP_Insecure_DelayTx
-    logger.go:130: 2026-04-07T08:43:33.722-1200	INFO	started proxying	{"from": "tcp://127.0.0.1:41547", "to": "tcp://127.0.0.1:34679"}
-    logger.go:130: 2026-04-07T08:43:33.722-1200	INFO	proxy is listening on	{"from": "tcp://127.0.0.1:41547"}
-    logger.go:130: 2026-04-07T08:43:33.722-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "tcp://127.0.0.1:41547", "to": "tcp://127.0.0.1:34679"}
-    logger.go:130: 2026-04-07T08:43:33.722-1200	DEBUG	transmitted	{"data-size": "12 B", "from": "tcp://127.0.0.1:41547", "to": "tcp://127.0.0.1:34679"}
-    server_test.go:102: took 215.12µs with no latency
-    logger.go:130: 2026-04-07T08:43:33.722-1200	INFO	set transmit latency	{"latency": "52.181872ms", "given-latency": "50ms", "given-latency-random-variable": "5ms", "from": "tcp://127.0.0.1:41547", "to": "tcp://127.0.0.1:34679"}
-    logger.go:130: 2026-04-07T08:43:33.722-1200	DEBUG	modified tx	{"data-received": "8 B", "data-modified": "8 B", "from": "tcp://127.0.0.1:41547", "to": "tcp://127.0.0.1:34679"}
-    logger.go:130: 2026-04-07T08:43:33.777-1200	DEBUG	transmitted	{"data-size": "8 B", "from": "tcp://127.0.0.1:41547", "to": "tcp://127.0.0.1:34679"}
-    server_test.go:117: took 55.28872ms with latency 50ms+-5ms
-    logger.go:130: 2026-04-07T08:43:33.777-1200	INFO	removed transmit latency	{"latency": "52.181872ms", "from": "tcp://127.0.0.1:41547", "to": "tcp://127.0.0.1:34679"}
-    logger.go:130: 2026-04-07T08:43:33.777-1200	INFO	closed proxy listener	{"from": "tcp://127.0.0.1:41547", "to": "tcp://127.0.0.1:34679"}
+    logger.go:130: 2025-03-06T04:27:59.570+1400	INFO	started proxying	{"from": "tcp://127.0.0.1:42455", "to": "tcp://127.0.0.1:38111"}
+    logger.go:130: 2025-03-06T04:27:59.571+1400	INFO	proxy is listening on	{"from": "tcp://127.0.0.1:42455"}
+    logger.go:130: 2025-03-06T04:27:59.571+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "tcp://127.0.0.1:42455", "to": "tcp://127.0.0.1:38111"}
+    logger.go:130: 2025-03-06T04:27:59.571+1400	DEBUG	transmitted	{"data-size": "12 B", "from": "tcp://127.0.0.1:42455", "to": "tcp://127.0.0.1:38111"}
+    server_test.go:102: took 1.099727ms with no latency
+    logger.go:130: 2025-03-06T04:27:59.572+1400	INFO	set transmit latency	{"latency": "54.420453ms", "given-latency": "50ms", "given-latency-random-variable": "5ms", "from": "tcp://127.0.0.1:42455", "to": "tcp://127.0.0.1:38111"}
+    logger.go:130: 2025-03-06T04:27:59.572+1400	DEBUG	modified tx	{"data-received": "8 B", "data-modified": "8 B", "from": "tcp://127.0.0.1:42455", "to": "tcp://127.0.0.1:38111"}
+    logger.go:130: 2025-03-06T04:27:59.627+1400	DEBUG	transmitted	{"data-size": "8 B", "from": "tcp://127.0.0.1:42455", "to": "tcp://127.0.0.1:38111"}
+    server_test.go:117: took 55.442514ms with latency 50ms+-5ms
+    logger.go:130: 2025-03-06T04:27:59.627+1400	INFO	removed transmit latency	{"latency": "54.420453ms", "from": "tcp://127.0.0.1:42455", "to": "tcp://127.0.0.1:38111"}
+    logger.go:130: 2025-03-06T04:27:59.627+1400	INFO	closed proxy listener	{"from": "tcp://127.0.0.1:42455", "to": "tcp://127.0.0.1:38111"}
 --- PASS: TestServer_TCP_Insecure_DelayTx (0.06s)
 === RUN   TestServer_Unix_Secure_DelayTx
-    logger.go:130: 2026-04-07T08:43:33.778-1200	INFO	started proxying	{"from": "unix://18A42DE4CB5555281F8C.unix-conn", "to": "unix://18A42DE4CB55B2E81379.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.778-1200	INFO	proxy is listening on	{"from": "unix://18A42DE4CB5555281F8C.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.779-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://18A42DE4CB5555281F8C.unix-conn", "to": "unix://18A42DE4CB55B2E81379.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.779-1200	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://18A42DE4CB5555281F8C.unix-conn", "to": "unix://18A42DE4CB55B2E81379.unix-conn"}
-    server_test.go:102: took 1.11028ms with no latency
-    logger.go:130: 2026-04-07T08:43:33.779-1200	INFO	set transmit latency	{"latency": "53.701505ms", "given-latency": "50ms", "given-latency-random-variable": "5ms", "from": "unix://18A42DE4CB5555281F8C.unix-conn", "to": "unix://18A42DE4CB55B2E81379.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.781-1200	DEBUG	modified tx	{"data-received": "8 B", "data-modified": "8 B", "from": "unix://18A42DE4CB5555281F8C.unix-conn", "to": "unix://18A42DE4CB55B2E81379.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.837-1200	DEBUG	transmitted	{"data-size": "8 B", "from": "unix://18A42DE4CB5555281F8C.unix-conn", "to": "unix://18A42DE4CB55B2E81379.unix-conn"}
-    server_test.go:117: took 58.28548ms with latency 50ms+-5ms
-    logger.go:130: 2026-04-07T08:43:33.837-1200	INFO	removed transmit latency	{"latency": "53.701505ms", "from": "unix://18A42DE4CB5555281F8C.unix-conn", "to": "unix://18A42DE4CB55B2E81379.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.838-1200	INFO	closed proxy listener	{"from": "unix://18A42DE4CB5555281F8C.unix-conn", "to": "unix://18A42DE4CB55B2E81379.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.628+1400	INFO	started proxying	{"from": "unix://1829EE6C3E8218F0516B.unix-conn", "to": "unix://1829EE6C3E8297D04C25.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.628+1400	INFO	proxy is listening on	{"from": "unix://1829EE6C3E8218F0516B.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.629+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://1829EE6C3E8218F0516B.unix-conn", "to": "unix://1829EE6C3E8297D04C25.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.629+1400	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://1829EE6C3E8218F0516B.unix-conn", "to": "unix://1829EE6C3E8297D04C25.unix-conn"}
+    server_test.go:102: took 1.015407ms with no latency
+    logger.go:130: 2025-03-06T04:27:59.629+1400	INFO	set transmit latency	{"latency": "52.685275ms", "given-latency": "50ms", "given-latency-random-variable": "5ms", "from": "unix://1829EE6C3E8218F0516B.unix-conn", "to": "unix://1829EE6C3E8297D04C25.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.630+1400	DEBUG	modified tx	{"data-received": "8 B", "data-modified": "8 B", "from": "unix://1829EE6C3E8218F0516B.unix-conn", "to": "unix://1829EE6C3E8297D04C25.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.684+1400	DEBUG	transmitted	{"data-size": "8 B", "from": "unix://1829EE6C3E8218F0516B.unix-conn", "to": "unix://1829EE6C3E8297D04C25.unix-conn"}
+    server_test.go:117: took 55.166032ms with latency 50ms+-5ms
+    logger.go:130: 2025-03-06T04:27:59.684+1400	INFO	removed transmit latency	{"latency": "52.685275ms", "from": "unix://1829EE6C3E8218F0516B.unix-conn", "to": "unix://1829EE6C3E8297D04C25.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.685+1400	INFO	closed proxy listener	{"from": "unix://1829EE6C3E8218F0516B.unix-conn", "to": "unix://1829EE6C3E8297D04C25.unix-conn"}
 --- PASS: TestServer_Unix_Secure_DelayTx (0.06s)
 === RUN   TestServer_TCP_Secure_DelayTx
-    logger.go:130: 2026-04-07T08:43:33.838-1200	INFO	started proxying	{"from": "tcp://127.0.0.1:39333", "to": "tcp://127.0.0.1:33141"}
-    logger.go:130: 2026-04-07T08:43:33.838-1200	INFO	proxy is listening on	{"from": "tcp://127.0.0.1:39333"}
-    logger.go:130: 2026-04-07T08:43:33.839-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "tcp://127.0.0.1:39333", "to": "tcp://127.0.0.1:33141"}
-    logger.go:130: 2026-04-07T08:43:33.839-1200	DEBUG	transmitted	{"data-size": "12 B", "from": "tcp://127.0.0.1:39333", "to": "tcp://127.0.0.1:33141"}
-    server_test.go:102: took 572.56µs with no latency
-    logger.go:130: 2026-04-07T08:43:33.839-1200	INFO	set transmit latency	{"latency": "51.026947ms", "given-latency": "50ms", "given-latency-random-variable": "5ms", "from": "tcp://127.0.0.1:39333", "to": "tcp://127.0.0.1:33141"}
-    logger.go:130: 2026-04-07T08:43:33.840-1200	DEBUG	modified tx	{"data-received": "8 B", "data-modified": "8 B", "from": "tcp://127.0.0.1:39333", "to": "tcp://127.0.0.1:33141"}
-    logger.go:130: 2026-04-07T08:43:33.893-1200	DEBUG	transmitted	{"data-size": "8 B", "from": "tcp://127.0.0.1:39333", "to": "tcp://127.0.0.1:33141"}
-    server_test.go:117: took 58.32672ms with latency 50ms+-5ms
-    logger.go:130: 2026-04-07T08:43:33.897-1200	INFO	removed transmit latency	{"latency": "51.026947ms", "from": "tcp://127.0.0.1:39333", "to": "tcp://127.0.0.1:33141"}
-    logger.go:130: 2026-04-07T08:43:33.897-1200	INFO	closed proxy listener	{"from": "tcp://127.0.0.1:39333", "to": "tcp://127.0.0.1:33141"}
+    logger.go:130: 2025-03-06T04:27:59.685+1400	INFO	started proxying	{"from": "tcp://127.0.0.1:41389", "to": "tcp://127.0.0.1:37937"}
+    logger.go:130: 2025-03-06T04:27:59.685+1400	INFO	proxy is listening on	{"from": "tcp://127.0.0.1:41389"}
+    logger.go:130: 2025-03-06T04:27:59.687+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "tcp://127.0.0.1:41389", "to": "tcp://127.0.0.1:37937"}
+    logger.go:130: 2025-03-06T04:27:59.687+1400	DEBUG	transmitted	{"data-size": "12 B", "from": "tcp://127.0.0.1:41389", "to": "tcp://127.0.0.1:37937"}
+    server_test.go:102: took 910.526µs with no latency
+    logger.go:130: 2025-03-06T04:27:59.688+1400	INFO	set transmit latency	{"latency": "50.417966ms", "given-latency": "50ms", "given-latency-random-variable": "5ms", "from": "tcp://127.0.0.1:41389", "to": "tcp://127.0.0.1:37937"}
+    logger.go:130: 2025-03-06T04:27:59.689+1400	DEBUG	modified tx	{"data-received": "8 B", "data-modified": "8 B", "from": "tcp://127.0.0.1:41389", "to": "tcp://127.0.0.1:37937"}
+    logger.go:130: 2025-03-06T04:27:59.740+1400	DEBUG	transmitted	{"data-size": "8 B", "from": "tcp://127.0.0.1:41389", "to": "tcp://127.0.0.1:37937"}
+    server_test.go:117: took 52.978738ms with latency 50ms+-5ms
+    logger.go:130: 2025-03-06T04:27:59.741+1400	INFO	removed transmit latency	{"latency": "50.417966ms", "from": "tcp://127.0.0.1:41389", "to": "tcp://127.0.0.1:37937"}
+    logger.go:130: 2025-03-06T04:27:59.741+1400	INFO	closed proxy listener	{"from": "tcp://127.0.0.1:41389", "to": "tcp://127.0.0.1:37937"}
 --- PASS: TestServer_TCP_Secure_DelayTx (0.06s)
 === RUN   TestServer_Unix_Insecure_DelayAccept
-    logger.go:130: 2026-04-07T08:43:33.898-1200	INFO	started proxying	{"from": "unix://18A42DE4D27CBF084E6D.unix-conn", "to": "unix://18A42DE4D27D21282446.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.898-1200	INFO	proxy is listening on	{"from": "unix://18A42DE4D27CBF084E6D.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.898-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://18A42DE4D27CBF084E6D.unix-conn", "to": "unix://18A42DE4D27D21282446.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.898-1200	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://18A42DE4D27CBF084E6D.unix-conn", "to": "unix://18A42DE4D27D21282446.unix-conn"}
-    server_test.go:207: took 138.16µs with no latency
-    logger.go:130: 2026-04-07T08:43:33.898-1200	INFO	set accept latency	{"latency": "703.232639ms", "given-latency": "700ms", "given-latency-random-variable": "10ms", "from": "unix://18A42DE4D27CBF084E6D.unix-conn", "to": "unix://18A42DE4D27D21282446.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.898-1200	DEBUG	listener accept error	{"error": "accept unix 18A42DE4D27CBF084E6D.unix-conn: use of closed network connection"}
-    logger.go:130: 2026-04-07T08:43:33.898-1200	INFO	reset listener on	{"from": "unix://18A42DE4D27CBF084E6D.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.909-1200	DEBUG	listener is closed; retry listening on	{"from": "unix://18A42DE4D27CBF084E6D.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:33.909-1200	INFO	reset listener on	{"from": "unix://18A42DE4D27CBF084E6D.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:34.615-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://18A42DE4D27CBF084E6D.unix-conn", "to": "unix://18A42DE4D27D21282446.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:34.615-1200	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://18A42DE4D27CBF084E6D.unix-conn", "to": "unix://18A42DE4D27D21282446.unix-conn"}
-    server_test.go:223: took 513.47164ms with latency 700ms±10ms
-    logger.go:130: 2026-04-07T08:43:34.615-1200	INFO	removed accept latency	{"latency": "703.232639ms", "from": "unix://18A42DE4D27CBF084E6D.unix-conn", "to": "unix://18A42DE4D27D21282446.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:34.615-1200	INFO	closed proxy listener	{"from": "unix://18A42DE4D27CBF084E6D.unix-conn", "to": "unix://18A42DE4D27D21282446.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.741+1400	INFO	started proxying	{"from": "unix://1829EE6C4543E44C6294.unix-conn", "to": "unix://1829EE6C45448E746666.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.741+1400	INFO	proxy is listening on	{"from": "unix://1829EE6C4543E44C6294.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.741+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://1829EE6C4543E44C6294.unix-conn", "to": "unix://1829EE6C45448E746666.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.741+1400	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://1829EE6C4543E44C6294.unix-conn", "to": "unix://1829EE6C45448E746666.unix-conn"}
+    server_test.go:207: took 257.642µs with no latency
+    logger.go:130: 2025-03-06T04:27:59.741+1400	INFO	set accept latency	{"latency": "705.441313ms", "given-latency": "700ms", "given-latency-random-variable": "10ms", "from": "unix://1829EE6C4543E44C6294.unix-conn", "to": "unix://1829EE6C45448E746666.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.741+1400	DEBUG	listener accept error	{"error": "accept unix 1829EE6C4543E44C6294.unix-conn: use of closed network connection"}
+    logger.go:130: 2025-03-06T04:27:59.742+1400	INFO	reset listener on	{"from": "unix://1829EE6C4543E44C6294.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.753+1400	DEBUG	listener is closed; retry listening on	{"from": "unix://1829EE6C4543E44C6294.unix-conn"}
+    logger.go:130: 2025-03-06T04:27:59.753+1400	INFO	reset listener on	{"from": "unix://1829EE6C4543E44C6294.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:00.459+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://1829EE6C4543E44C6294.unix-conn", "to": "unix://1829EE6C45448E746666.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:00.459+1400	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://1829EE6C4543E44C6294.unix-conn", "to": "unix://1829EE6C45448E746666.unix-conn"}
+    server_test.go:223: took 517.480503ms with latency 700ms±10ms
+    logger.go:130: 2025-03-06T04:28:00.459+1400	INFO	removed accept latency	{"latency": "705.441313ms", "from": "unix://1829EE6C4543E44C6294.unix-conn", "to": "unix://1829EE6C45448E746666.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:00.459+1400	INFO	closed proxy listener	{"from": "unix://1829EE6C4543E44C6294.unix-conn", "to": "unix://1829EE6C45448E746666.unix-conn"}
 --- PASS: TestServer_Unix_Insecure_DelayAccept (0.72s)
 === RUN   TestServer_Unix_Secure_DelayAccept
-    logger.go:130: 2026-04-07T08:43:34.615-1200	INFO	started proxying	{"from": "unix://18A42DE4FD3DDCE02C19.unix-conn", "to": "unix://18A42DE4FD3E1D686F1F.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:34.615-1200	INFO	proxy is listening on	{"from": "unix://18A42DE4FD3DDCE02C19.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:34.616-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://18A42DE4FD3DDCE02C19.unix-conn", "to": "unix://18A42DE4FD3E1D686F1F.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:34.616-1200	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://18A42DE4FD3DDCE02C19.unix-conn", "to": "unix://18A42DE4FD3E1D686F1F.unix-conn"}
-    server_test.go:207: took 752.96µs with no latency
-    logger.go:130: 2026-04-07T08:43:34.616-1200	INFO	set accept latency	{"latency": "694.484549ms", "given-latency": "700ms", "given-latency-random-variable": "10ms", "from": "unix://18A42DE4FD3DDCE02C19.unix-conn", "to": "unix://18A42DE4FD3E1D686F1F.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:34.616-1200	DEBUG	listener accept error	{"error": "accept unix 18A42DE4FD3DDCE02C19.unix-conn: use of closed network connection"}
-    logger.go:130: 2026-04-07T08:43:34.616-1200	INFO	reset listener on	{"from": "unix://18A42DE4FD3DDCE02C19.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:34.629-1200	DEBUG	listener is closed; retry listening on	{"from": "unix://18A42DE4FD3DDCE02C19.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:34.629-1200	INFO	reset listener on	{"from": "unix://18A42DE4FD3DDCE02C19.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.326-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://18A42DE4FD3DDCE02C19.unix-conn", "to": "unix://18A42DE4FD3E1D686F1F.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.326-1200	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://18A42DE4FD3DDCE02C19.unix-conn", "to": "unix://18A42DE4FD3E1D686F1F.unix-conn"}
-    server_test.go:223: took 507.33192ms with latency 700ms±10ms
-    logger.go:130: 2026-04-07T08:43:35.326-1200	INFO	removed accept latency	{"latency": "694.484549ms", "from": "unix://18A42DE4FD3DDCE02C19.unix-conn", "to": "unix://18A42DE4FD3E1D686F1F.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.326-1200	INFO	closed proxy listener	{"from": "unix://18A42DE4FD3DDCE02C19.unix-conn", "to": "unix://18A42DE4FD3E1D686F1F.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:00.460+1400	INFO	started proxying	{"from": "unix://1829EE6C70184C5F6A42.unix-conn", "to": "unix://1829EE6C7018F5E748C6.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:00.460+1400	INFO	proxy is listening on	{"from": "unix://1829EE6C70184C5F6A42.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:00.461+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://1829EE6C70184C5F6A42.unix-conn", "to": "unix://1829EE6C7018F5E748C6.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:00.461+1400	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://1829EE6C70184C5F6A42.unix-conn", "to": "unix://1829EE6C7018F5E748C6.unix-conn"}
+    server_test.go:207: took 1.765771ms with no latency
+    logger.go:130: 2025-03-06T04:28:00.462+1400	INFO	set accept latency	{"latency": "690.586926ms", "given-latency": "700ms", "given-latency-random-variable": "10ms", "from": "unix://1829EE6C70184C5F6A42.unix-conn", "to": "unix://1829EE6C7018F5E748C6.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:00.462+1400	DEBUG	listener accept error	{"error": "accept unix 1829EE6C70184C5F6A42.unix-conn: use of closed network connection"}
+    logger.go:130: 2025-03-06T04:28:00.462+1400	INFO	reset listener on	{"from": "unix://1829EE6C70184C5F6A42.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:00.472+1400	DEBUG	listener is closed; retry listening on	{"from": "unix://1829EE6C70184C5F6A42.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:00.472+1400	INFO	reset listener on	{"from": "unix://1829EE6C70184C5F6A42.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.165+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://1829EE6C70184C5F6A42.unix-conn", "to": "unix://1829EE6C7018F5E748C6.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.165+1400	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://1829EE6C70184C5F6A42.unix-conn", "to": "unix://1829EE6C7018F5E748C6.unix-conn"}
+    server_test.go:223: took 499.570629ms with latency 700ms±10ms
+    logger.go:130: 2025-03-06T04:28:01.165+1400	INFO	removed accept latency	{"latency": "690.586926ms", "from": "unix://1829EE6C70184C5F6A42.unix-conn", "to": "unix://1829EE6C7018F5E748C6.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.165+1400	INFO	closed proxy listener	{"from": "unix://1829EE6C70184C5F6A42.unix-conn", "to": "unix://1829EE6C7018F5E748C6.unix-conn"}
 --- PASS: TestServer_Unix_Secure_DelayAccept (0.71s)
 === RUN   TestServer_PauseTx
-    logger.go:130: 2026-04-07T08:43:35.326-1200	INFO	started proxying	{"from": "unix://18A42DE5279FA4783AA0.unix-conn", "to": "unix://18A42DE5279FE690497A.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.326-1200	INFO	proxy is listening on	{"from": "unix://18A42DE5279FA4783AA0.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.326-1200	INFO	paused tx	{"from": "unix://18A42DE5279FA4783AA0.unix-conn", "to": "unix://18A42DE5279FE690497A.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.326-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://18A42DE5279FA4783AA0.unix-conn", "to": "unix://18A42DE5279FE690497A.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.529-1200	INFO	unpaused tx	{"from": "unix://18A42DE5279FA4783AA0.unix-conn", "to": "unix://18A42DE5279FE690497A.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.529-1200	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://18A42DE5279FA4783AA0.unix-conn", "to": "unix://18A42DE5279FE690497A.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.529-1200	INFO	closed proxy listener	{"from": "unix://18A42DE5279FA4783AA0.unix-conn", "to": "unix://18A42DE5279FE690497A.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.165+1400	INFO	started proxying	{"from": "unix://1829EE6C9A29AF482667.unix-conn", "to": "unix://1829EE6C9A2A5CB97567.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.165+1400	INFO	proxy is listening on	{"from": "unix://1829EE6C9A29AF482667.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.166+1400	INFO	paused tx	{"from": "unix://1829EE6C9A29AF482667.unix-conn", "to": "unix://1829EE6C9A2A5CB97567.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.166+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://1829EE6C9A29AF482667.unix-conn", "to": "unix://1829EE6C9A2A5CB97567.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.366+1400	INFO	unpaused tx	{"from": "unix://1829EE6C9A29AF482667.unix-conn", "to": "unix://1829EE6C9A2A5CB97567.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.366+1400	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://1829EE6C9A29AF482667.unix-conn", "to": "unix://1829EE6C9A2A5CB97567.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.366+1400	INFO	closed proxy listener	{"from": "unix://1829EE6C9A29AF482667.unix-conn", "to": "unix://1829EE6C9A2A5CB97567.unix-conn"}
 --- PASS: TestServer_PauseTx (0.20s)
 === RUN   TestServer_ModifyTx_corrupt
-    logger.go:130: 2026-04-07T08:43:35.530-1200	INFO	started proxying	{"from": "unix://18A42DE533C1E2984F70.unix-conn", "to": "unix://18A42DE533C22410304D.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.530-1200	INFO	proxy is listening on	{"from": "unix://18A42DE533C1E2984F70.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.530-1200	INFO	modifying tx	{"from": "unix://18A42DE533C1E2984F70.unix-conn", "to": "unix://18A42DE533C22410304D.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.530-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://18A42DE533C1E2984F70.unix-conn", "to": "unix://18A42DE533C22410304D.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.530-1200	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://18A42DE533C1E2984F70.unix-conn", "to": "unix://18A42DE533C22410304D.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.530-1200	INFO	unmodifyed tx	{"from": "unix://18A42DE533C1E2984F70.unix-conn", "to": "unix://18A42DE533C22410304D.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.530-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://18A42DE533C1E2984F70.unix-conn", "to": "unix://18A42DE533C22410304D.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.530-1200	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://18A42DE533C1E2984F70.unix-conn", "to": "unix://18A42DE533C22410304D.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.530-1200	INFO	closed proxy listener	{"from": "unix://18A42DE533C1E2984F70.unix-conn", "to": "unix://18A42DE533C22410304D.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.366+1400	INFO	started proxying	{"from": "unix://1829EE6CA62625DC80D6.unix-conn", "to": "unix://1829EE6CA62686BC1392.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.366+1400	INFO	proxy is listening on	{"from": "unix://1829EE6CA62625DC80D6.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.366+1400	INFO	modifying tx	{"from": "unix://1829EE6CA62625DC80D6.unix-conn", "to": "unix://1829EE6CA62686BC1392.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.367+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://1829EE6CA62625DC80D6.unix-conn", "to": "unix://1829EE6CA62686BC1392.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.367+1400	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://1829EE6CA62625DC80D6.unix-conn", "to": "unix://1829EE6CA62686BC1392.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.367+1400	INFO	unmodifyed tx	{"from": "unix://1829EE6CA62625DC80D6.unix-conn", "to": "unix://1829EE6CA62686BC1392.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.367+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://1829EE6CA62625DC80D6.unix-conn", "to": "unix://1829EE6CA62686BC1392.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.367+1400	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://1829EE6CA62625DC80D6.unix-conn", "to": "unix://1829EE6CA62686BC1392.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.367+1400	INFO	closed proxy listener	{"from": "unix://1829EE6CA62625DC80D6.unix-conn", "to": "unix://1829EE6CA62686BC1392.unix-conn"}
 --- PASS: TestServer_ModifyTx_corrupt (0.00s)
 === RUN   TestServer_ModifyTx_packet_loss
-    logger.go:130: 2026-04-07T08:43:35.530-1200	INFO	started proxying	{"from": "unix://18A42DE533C818E8465F.unix-conn", "to": "unix://18A42DE533C852E01D0C.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.530-1200	INFO	proxy is listening on	{"from": "unix://18A42DE533C818E8465F.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.530-1200	INFO	modifying tx	{"from": "unix://18A42DE533C818E8465F.unix-conn", "to": "unix://18A42DE533C852E01D0C.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.530-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "6 B", "from": "unix://18A42DE533C818E8465F.unix-conn", "to": "unix://18A42DE533C852E01D0C.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.530-1200	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://18A42DE533C818E8465F.unix-conn", "to": "unix://18A42DE533C852E01D0C.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.530-1200	INFO	unmodifyed tx	{"from": "unix://18A42DE533C818E8465F.unix-conn", "to": "unix://18A42DE533C852E01D0C.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.530-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://18A42DE533C818E8465F.unix-conn", "to": "unix://18A42DE533C852E01D0C.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.530-1200	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://18A42DE533C818E8465F.unix-conn", "to": "unix://18A42DE533C852E01D0C.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.530-1200	INFO	closed proxy listener	{"from": "unix://18A42DE533C818E8465F.unix-conn", "to": "unix://18A42DE533C852E01D0C.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.368+1400	INFO	started proxying	{"from": "unix://1829EE6CA636519329F0.unix-conn", "to": "unix://1829EE6CA637978329E.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.368+1400	INFO	proxy is listening on	{"from": "unix://1829EE6CA636519329F0.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.368+1400	INFO	modifying tx	{"from": "unix://1829EE6CA636519329F0.unix-conn", "to": "unix://1829EE6CA637978329E.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.368+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "6 B", "from": "unix://1829EE6CA636519329F0.unix-conn", "to": "unix://1829EE6CA637978329E.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.369+1400	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://1829EE6CA636519329F0.unix-conn", "to": "unix://1829EE6CA637978329E.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.370+1400	INFO	unmodifyed tx	{"from": "unix://1829EE6CA636519329F0.unix-conn", "to": "unix://1829EE6CA637978329E.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.370+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://1829EE6CA636519329F0.unix-conn", "to": "unix://1829EE6CA637978329E.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.370+1400	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://1829EE6CA636519329F0.unix-conn", "to": "unix://1829EE6CA637978329E.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.370+1400	INFO	closed proxy listener	{"from": "unix://1829EE6CA636519329F0.unix-conn", "to": "unix://1829EE6CA637978329E.unix-conn"}
 --- PASS: TestServer_ModifyTx_packet_loss (0.00s)
 === RUN   TestServer_BlackholeTx
-    logger.go:130: 2026-04-07T08:43:35.530-1200	INFO	started proxying	{"from": "unix://18A42DE533CD808073EF.unix-conn", "to": "unix://18A42DE533CDC2E83692.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.530-1200	INFO	proxy is listening on	{"from": "unix://18A42DE533CD808073EF.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.530-1200	INFO	modifying tx	{"from": "unix://18A42DE533CD808073EF.unix-conn", "to": "unix://18A42DE533CDC2E83692.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.530-1200	INFO	blackholed tx	{"from": "unix://18A42DE533CD808073EF.unix-conn", "to": "unix://18A42DE533CDC2E83692.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.530-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "0 B", "from": "unix://18A42DE533CD808073EF.unix-conn", "to": "unix://18A42DE533CDC2E83692.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.733-1200	INFO	unmodifyed tx	{"from": "unix://18A42DE533CD808073EF.unix-conn", "to": "unix://18A42DE533CDC2E83692.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.733-1200	INFO	unblackholed tx	{"from": "unix://18A42DE533CD808073EF.unix-conn", "to": "unix://18A42DE533CDC2E83692.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.733-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://18A42DE533CD808073EF.unix-conn", "to": "unix://18A42DE533CDC2E83692.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.733-1200	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://18A42DE533CD808073EF.unix-conn", "to": "unix://18A42DE533CDC2E83692.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.733-1200	INFO	closed proxy listener	{"from": "unix://18A42DE533CD808073EF.unix-conn", "to": "unix://18A42DE533CDC2E83692.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.371+1400	INFO	started proxying	{"from": "unix://1829EE6CA66380D66AC3.unix-conn", "to": "unix://1829EE6CA66427DE3373.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.371+1400	INFO	proxy is listening on	{"from": "unix://1829EE6CA66380D66AC3.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.371+1400	INFO	modifying tx	{"from": "unix://1829EE6CA66380D66AC3.unix-conn", "to": "unix://1829EE6CA66427DE3373.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.371+1400	INFO	blackholed tx	{"from": "unix://1829EE6CA66380D66AC3.unix-conn", "to": "unix://1829EE6CA66427DE3373.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.372+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "0 B", "from": "unix://1829EE6CA66380D66AC3.unix-conn", "to": "unix://1829EE6CA66427DE3373.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.571+1400	INFO	unmodifyed tx	{"from": "unix://1829EE6CA66380D66AC3.unix-conn", "to": "unix://1829EE6CA66427DE3373.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.571+1400	INFO	unblackholed tx	{"from": "unix://1829EE6CA66380D66AC3.unix-conn", "to": "unix://1829EE6CA66427DE3373.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.571+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://1829EE6CA66380D66AC3.unix-conn", "to": "unix://1829EE6CA66427DE3373.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.571+1400	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://1829EE6CA66380D66AC3.unix-conn", "to": "unix://1829EE6CA66427DE3373.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.571+1400	INFO	closed proxy listener	{"from": "unix://1829EE6CA66380D66AC3.unix-conn", "to": "unix://1829EE6CA66427DE3373.unix-conn"}
 --- PASS: TestServer_BlackholeTx (0.20s)
 === RUN   TestServer_Shutdown
-    logger.go:130: 2026-04-07T08:43:35.734-1200	INFO	started proxying	{"from": "unix://18A42DE53FECB0E86DAC.unix-conn", "to": "unix://18A42DE53FECF3506B6B.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.734-1200	INFO	proxy is listening on	{"from": "unix://18A42DE53FECB0E86DAC.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.734-1200	DEBUG	listener accept error	{"error": "accept unix 18A42DE53FECB0E86DAC.unix-conn: use of closed network connection"}
-    logger.go:130: 2026-04-07T08:43:35.745-1200	DEBUG	listener is closed; retry listening on	{"from": "unix://18A42DE53FECB0E86DAC.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.745-1200	INFO	reset listener on	{"from": "unix://18A42DE53FECB0E86DAC.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.937-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://18A42DE53FECB0E86DAC.unix-conn", "to": "unix://18A42DE53FECF3506B6B.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.937-1200	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://18A42DE53FECB0E86DAC.unix-conn", "to": "unix://18A42DE53FECF3506B6B.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.937-1200	INFO	closed proxy listener	{"from": "unix://18A42DE53FECB0E86DAC.unix-conn", "to": "unix://18A42DE53FECF3506B6B.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.572+1400	INFO	started proxying	{"from": "unix://1829EE6CB261C31A150.unix-conn", "to": "unix://1829EE6CB2626ED250A.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.572+1400	INFO	proxy is listening on	{"from": "unix://1829EE6CB261C31A150.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.572+1400	DEBUG	listener accept error	{"error": "accept unix 1829EE6CB261C31A150.unix-conn: use of closed network connection"}
+    logger.go:130: 2025-03-06T04:28:01.582+1400	DEBUG	listener is closed; retry listening on	{"from": "unix://1829EE6CB261C31A150.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.582+1400	INFO	reset listener on	{"from": "unix://1829EE6CB261C31A150.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.773+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://1829EE6CB261C31A150.unix-conn", "to": "unix://1829EE6CB2626ED250A.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.773+1400	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://1829EE6CB261C31A150.unix-conn", "to": "unix://1829EE6CB2626ED250A.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.773+1400	INFO	closed proxy listener	{"from": "unix://1829EE6CB261C31A150.unix-conn", "to": "unix://1829EE6CB2626ED250A.unix-conn"}
 --- PASS: TestServer_Shutdown (0.20s)
 === RUN   TestServer_ShutdownListener
-    logger.go:130: 2026-04-07T08:43:35.938-1200	INFO	started proxying	{"from": "unix://18A42DE54C14CB584D8A.unix-conn", "to": "unix://18A42DE54C150FF06115.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:35.938-1200	INFO	proxy is listening on	{"from": "unix://18A42DE54C14CB584D8A.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:36.139-1200	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://18A42DE54C14CB584D8A.unix-conn", "to": "unix://18A42DE54C150FF06115.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:36.139-1200	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://18A42DE54C14CB584D8A.unix-conn", "to": "unix://18A42DE54C150FF06115.unix-conn"}
-    logger.go:130: 2026-04-07T08:43:36.140-1200	INFO	closed proxy listener	{"from": "unix://18A42DE54C14CB584D8A.unix-conn", "to": "unix://18A42DE54C150FF06115.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.774+1400	INFO	started proxying	{"from": "unix://1829EE6CBE6A75938D7.unix-conn", "to": "unix://1829EE6CBE6B37A38085.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.774+1400	INFO	proxy is listening on	{"from": "unix://1829EE6CBE6A75938D7.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.978+1400	DEBUG	modified tx	{"data-received": "12 B", "data-modified": "12 B", "from": "unix://1829EE6CBE6A75938D7.unix-conn", "to": "unix://1829EE6CBE6B37A38085.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.978+1400	DEBUG	transmitted	{"data-size": "12 B", "from": "unix://1829EE6CBE6A75938D7.unix-conn", "to": "unix://1829EE6CBE6B37A38085.unix-conn"}
+    logger.go:130: 2025-03-06T04:28:01.978+1400	INFO	closed proxy listener	{"from": "unix://1829EE6CBE6A75938D7.unix-conn", "to": "unix://1829EE6CBE6B37A38085.unix-conn"}
 --- PASS: TestServer_ShutdownListener (0.20s)
 === RUN   TestServerHTTP_Insecure_DelayTx
-    logger.go:130: 2026-04-07T08:43:36.341-1200	INFO	started proxying	{"from": "tcp://127.0.0.1:38863", "to": "tcp://127.0.0.1:38551"}
-    logger.go:130: 2026-04-07T08:43:36.341-1200	INFO	proxy is listening on	{"from": "tcp://127.0.0.1:38863"}
-    logger.go:130: 2026-04-07T08:43:36.342-1200	DEBUG	modified tx	{"data-received": "150 B", "data-modified": "150 B", "from": "tcp://127.0.0.1:38863", "to": "tcp://127.0.0.1:38551"}
-    logger.go:130: 2026-04-07T08:43:36.342-1200	DEBUG	transmitted	{"data-size": "150 B", "from": "tcp://127.0.0.1:38863", "to": "tcp://127.0.0.1:38551"}
-    logger.go:130: 2026-04-07T08:43:36.342-1200	DEBUG	modified rx	{"data-received": "142 B", "data-modified": "142 B", "from": "tcp://127.0.0.1:38551", "to": "tcp://127.0.0.1:38863"}
-    logger.go:130: 2026-04-07T08:43:36.342-1200	DEBUG	received	{"data-size": "142 B", "from": "tcp://127.0.0.1:38551", "to": "tcp://127.0.0.1:38863"}
-    server_test.go:557: took 1.65756ms with no latency
-    logger.go:130: 2026-04-07T08:43:36.343-1200	INFO	set transmit latency	{"latency": "992.649203ms", "given-latency": "1s", "given-latency-random-variable": "10ms", "from": "tcp://127.0.0.1:38863", "to": "tcp://127.0.0.1:38551"}
-    logger.go:130: 2026-04-07T08:43:36.343-1200	DEBUG	modified tx	{"data-received": "150 B", "data-modified": "150 B", "from": "tcp://127.0.0.1:38863", "to": "tcp://127.0.0.1:38551"}
-    logger.go:130: 2026-04-07T08:43:37.336-1200	DEBUG	transmitted	{"data-size": "150 B", "from": "tcp://127.0.0.1:38863", "to": "tcp://127.0.0.1:38551"}
-    logger.go:130: 2026-04-07T08:43:37.336-1200	DEBUG	modified rx	{"data-received": "142 B", "data-modified": "142 B", "from": "tcp://127.0.0.1:38551", "to": "tcp://127.0.0.1:38863"}
-    logger.go:130: 2026-04-07T08:43:37.336-1200	DEBUG	received	{"data-size": "142 B", "from": "tcp://127.0.0.1:38551", "to": "tcp://127.0.0.1:38863"}
-    server_test.go:597: took 993.73532ms with latency 1s±10ms
-    logger.go:130: 2026-04-07T08:43:37.337-1200	INFO	removed transmit latency	{"latency": "992.649203ms", "from": "tcp://127.0.0.1:38863", "to": "tcp://127.0.0.1:38551"}
-    logger.go:130: 2026-04-07T08:43:37.337-1200	INFO	closing Proxy server...
-    logger.go:130: 2026-04-07T08:43:37.337-1200	INFO	closed proxy listener	{"from": "tcp://127.0.0.1:38863", "to": "tcp://127.0.0.1:38551"}
-    logger.go:130: 2026-04-07T08:43:37.337-1200	INFO	closed Proxy server.
+    logger.go:130: 2025-03-06T04:28:02.179+1400	INFO	started proxying	{"from": "tcp://127.0.0.1:39513", "to": "tcp://127.0.0.1:44519"}
+    logger.go:130: 2025-03-06T04:28:02.179+1400	INFO	proxy is listening on	{"from": "tcp://127.0.0.1:39513"}
+    logger.go:130: 2025-03-06T04:28:02.180+1400	DEBUG	modified tx	{"data-received": "150 B", "data-modified": "150 B", "from": "tcp://127.0.0.1:39513", "to": "tcp://127.0.0.1:44519"}
+    logger.go:130: 2025-03-06T04:28:02.180+1400	DEBUG	transmitted	{"data-size": "150 B", "from": "tcp://127.0.0.1:39513", "to": "tcp://127.0.0.1:44519"}
+    logger.go:130: 2025-03-06T04:28:02.181+1400	DEBUG	modified rx	{"data-received": "142 B", "data-modified": "142 B", "from": "tcp://127.0.0.1:44519", "to": "tcp://127.0.0.1:39513"}
+    logger.go:130: 2025-03-06T04:28:02.181+1400	DEBUG	received	{"data-size": "142 B", "from": "tcp://127.0.0.1:44519", "to": "tcp://127.0.0.1:39513"}
+    server_test.go:557: took 1.64769ms with no latency
+    logger.go:130: 2025-03-06T04:28:02.181+1400	INFO	set transmit latency	{"latency": "995.69023ms", "given-latency": "1s", "given-latency-random-variable": "10ms", "from": "tcp://127.0.0.1:39513", "to": "tcp://127.0.0.1:44519"}
+    logger.go:130: 2025-03-06T04:28:02.181+1400	DEBUG	modified tx	{"data-received": "150 B", "data-modified": "150 B", "from": "tcp://127.0.0.1:39513", "to": "tcp://127.0.0.1:44519"}
+    logger.go:130: 2025-03-06T04:28:03.178+1400	DEBUG	transmitted	{"data-size": "150 B", "from": "tcp://127.0.0.1:39513", "to": "tcp://127.0.0.1:44519"}
+    logger.go:130: 2025-03-06T04:28:03.178+1400	DEBUG	modified rx	{"data-received": "142 B", "data-modified": "142 B", "from": "tcp://127.0.0.1:44519", "to": "tcp://127.0.0.1:39513"}
+    logger.go:130: 2025-03-06T04:28:03.178+1400	DEBUG	received	{"data-size": "142 B", "from": "tcp://127.0.0.1:44519", "to": "tcp://127.0.0.1:39513"}
+    server_test.go:597: took 997.103045ms with latency 1s±10ms
+    logger.go:130: 2025-03-06T04:28:03.178+1400	INFO	removed transmit latency	{"latency": "995.69023ms", "from": "tcp://127.0.0.1:39513", "to": "tcp://127.0.0.1:44519"}
+    logger.go:130: 2025-03-06T04:28:03.178+1400	INFO	closing Proxy server...
+    logger.go:130: 2025-03-06T04:28:03.178+1400	INFO	closed proxy listener	{"from": "tcp://127.0.0.1:39513", "to": "tcp://127.0.0.1:44519"}
+    logger.go:130: 2025-03-06T04:28:03.178+1400	INFO	closed Proxy server.
 --- PASS: TestServerHTTP_Insecure_DelayTx (1.20s)
 === RUN   TestServerHTTP_Secure_DelayTx
-    logger.go:130: 2026-04-07T08:43:37.338-1200	INFO	Loading cert pool	{"cs": ["../../tests/fixtures/ca.crt"], "tlsinfo": "cert = ../../tests/fixtures/server.crt, key = ../../tests/fixtures/server.key.insecure, client-cert=, client-key=, trusted-ca = ../../tests/fixtures/ca.crt, client-cert-auth = true, crl-file = "}
-    logger.go:130: 2026-04-07T08:43:37.541-1200	INFO	started proxying	{"from": "tcp://127.0.0.1:44843", "to": "tcp://127.0.0.1:33881"}
-    logger.go:130: 2026-04-07T08:43:37.541-1200	INFO	proxy is listening on	{"from": "tcp://127.0.0.1:44843"}
-    logger.go:130: 2026-04-07T08:43:37.544-1200	DEBUG	modified tx	{"data-received": "243 B", "data-modified": "243 B", "from": "tcp://127.0.0.1:44843", "to": "tcp://127.0.0.1:33881"}
-    logger.go:130: 2026-04-07T08:43:37.544-1200	DEBUG	transmitted	{"data-size": "243 B", "from": "tcp://127.0.0.1:44843", "to": "tcp://127.0.0.1:33881"}
-    logger.go:130: 2026-04-07T08:43:37.565-1200	DEBUG	modified rx	{"data-received": "1.6 kB", "data-modified": "1.6 kB", "from": "tcp://127.0.0.1:33881", "to": "tcp://127.0.0.1:44843"}
-    logger.go:130: 2026-04-07T08:43:37.565-1200	DEBUG	received	{"data-size": "1.6 kB", "from": "tcp://127.0.0.1:33881", "to": "tcp://127.0.0.1:44843"}
-    logger.go:130: 2026-04-07T08:43:37.569-1200	DEBUG	modified tx	{"data-received": "236 B", "data-modified": "236 B", "from": "tcp://127.0.0.1:44843", "to": "tcp://127.0.0.1:33881"}
-    logger.go:130: 2026-04-07T08:43:37.569-1200	DEBUG	transmitted	{"data-size": "236 B", "from": "tcp://127.0.0.1:44843", "to": "tcp://127.0.0.1:33881"}
-    logger.go:130: 2026-04-07T08:43:37.569-1200	DEBUG	modified rx	{"data-received": "164 B", "data-modified": "164 B", "from": "tcp://127.0.0.1:33881", "to": "tcp://127.0.0.1:44843"}
-    logger.go:130: 2026-04-07T08:43:37.570-1200	DEBUG	received	{"data-size": "164 B", "from": "tcp://127.0.0.1:33881", "to": "tcp://127.0.0.1:44843"}
-    server_test.go:557: took 28.16092ms with no latency
-    logger.go:130: 2026-04-07T08:43:37.570-1200	INFO	set transmit latency	{"latency": "1.007831557s", "given-latency": "1s", "given-latency-random-variable": "10ms", "from": "tcp://127.0.0.1:44843", "to": "tcp://127.0.0.1:33881"}
-    logger.go:130: 2026-04-07T08:43:37.572-1200	DEBUG	modified tx	{"data-received": "243 B", "data-modified": "243 B", "from": "tcp://127.0.0.1:44843", "to": "tcp://127.0.0.1:33881"}
-    logger.go:130: 2026-04-07T08:43:38.585-1200	DEBUG	transmitted	{"data-size": "243 B", "from": "tcp://127.0.0.1:44843", "to": "tcp://127.0.0.1:33881"}
-    logger.go:130: 2026-04-07T08:43:38.590-1200	DEBUG	modified rx	{"data-received": "1.6 kB", "data-modified": "1.6 kB", "from": "tcp://127.0.0.1:33881", "to": "tcp://127.0.0.1:44843"}
-    logger.go:130: 2026-04-07T08:43:38.590-1200	DEBUG	received	{"data-size": "1.6 kB", "from": "tcp://127.0.0.1:33881", "to": "tcp://127.0.0.1:44843"}
-    logger.go:130: 2026-04-07T08:43:38.590-1200	DEBUG	modified tx	{"data-received": "236 B", "data-modified": "236 B", "from": "tcp://127.0.0.1:44843", "to": "tcp://127.0.0.1:33881"}
-    logger.go:130: 2026-04-07T08:43:39.605-1200	DEBUG	transmitted	{"data-size": "236 B", "from": "tcp://127.0.0.1:44843", "to": "tcp://127.0.0.1:33881"}
-    logger.go:130: 2026-04-07T08:43:39.605-1200	DEBUG	modified rx	{"data-received": "164 B", "data-modified": "164 B", "from": "tcp://127.0.0.1:33881", "to": "tcp://127.0.0.1:44843"}
-    logger.go:130: 2026-04-07T08:43:39.605-1200	DEBUG	received	{"data-size": "164 B", "from": "tcp://127.0.0.1:33881", "to": "tcp://127.0.0.1:44843"}
-    server_test.go:597: took 2.03590316s with latency 1s±10ms
-    logger.go:130: 2026-04-07T08:43:39.606-1200	INFO	removed transmit latency	{"latency": "1.007831557s", "from": "tcp://127.0.0.1:44843", "to": "tcp://127.0.0.1:33881"}
-    logger.go:130: 2026-04-07T08:43:39.606-1200	INFO	closing Proxy server...
-    logger.go:130: 2026-04-07T08:43:39.606-1200	INFO	closed proxy listener	{"from": "tcp://127.0.0.1:44843", "to": "tcp://127.0.0.1:33881"}
-    logger.go:130: 2026-04-07T08:43:39.606-1200	DEBUG	modified tx	{"data-received": "24 B", "data-modified": "24 B", "from": "tcp://127.0.0.1:44843", "to": "tcp://127.0.0.1:33881"}
-    logger.go:130: 2026-04-07T08:43:39.606-1200	DEBUG	modified tx	{"data-received": "24 B", "data-modified": "24 B", "from": "tcp://127.0.0.1:44843", "to": "tcp://127.0.0.1:33881"}
-    logger.go:130: 2026-04-07T08:43:39.606-1200	DEBUG	transmitted	{"data-size": "24 B", "from": "tcp://127.0.0.1:44843", "to": "tcp://127.0.0.1:33881"}
-    logger.go:130: 2026-04-07T08:43:39.606-1200	INFO	closed Proxy server.
---- PASS: TestServerHTTP_Secure_DelayTx (2.27s)
+    logger.go:130: 2025-03-06T04:28:03.179+1400	INFO	Loading cert pool	{"cs": ["../../tests/fixtures/ca.crt"], "tlsinfo": "cert = ../../tests/fixtures/server.crt, key = ../../tests/fixtures/server.key.insecure, client-cert=, client-key=, trusted-ca = ../../tests/fixtures/ca.crt, client-cert-auth = true, crl-file = "}
+    logger.go:130: 2025-03-06T04:28:03.380+1400	INFO	started proxying	{"from": "tcp://127.0.0.1:40189", "to": "tcp://127.0.0.1:36829"}
+    logger.go:130: 2025-03-06T04:28:03.380+1400	INFO	proxy is listening on	{"from": "tcp://127.0.0.1:40189"}
+    logger.go:130: 2025-03-06T04:28:03.382+1400	DEBUG	modified tx	{"data-received": "243 B", "data-modified": "243 B", "from": "tcp://127.0.0.1:40189", "to": "tcp://127.0.0.1:36829"}
+    logger.go:130: 2025-03-06T04:28:03.382+1400	DEBUG	transmitted	{"data-size": "243 B", "from": "tcp://127.0.0.1:40189", "to": "tcp://127.0.0.1:36829"}
+    logger.go:130: 2025-03-06T04:28:03.389+1400	DEBUG	modified rx	{"data-received": "1.6 kB", "data-modified": "1.6 kB", "from": "tcp://127.0.0.1:36829", "to": "tcp://127.0.0.1:40189"}
+    logger.go:130: 2025-03-06T04:28:03.390+1400	DEBUG	received	{"data-size": "1.6 kB", "from": "tcp://127.0.0.1:36829", "to": "tcp://127.0.0.1:40189"}
+    logger.go:130: 2025-03-06T04:28:03.390+1400	DEBUG	modified tx	{"data-received": "236 B", "data-modified": "236 B", "from": "tcp://127.0.0.1:40189", "to": "tcp://127.0.0.1:36829"}
+    logger.go:130: 2025-03-06T04:28:03.390+1400	DEBUG	transmitted	{"data-size": "236 B", "from": "tcp://127.0.0.1:40189", "to": "tcp://127.0.0.1:36829"}
+    logger.go:130: 2025-03-06T04:28:03.390+1400	DEBUG	modified rx	{"data-received": "164 B", "data-modified": "164 B", "from": "tcp://127.0.0.1:36829", "to": "tcp://127.0.0.1:40189"}
+    logger.go:130: 2025-03-06T04:28:03.390+1400	DEBUG	received	{"data-size": "164 B", "from": "tcp://127.0.0.1:36829", "to": "tcp://127.0.0.1:40189"}
+    server_test.go:557: took 10.677148ms with no latency
+    logger.go:130: 2025-03-06T04:28:03.391+1400	INFO	set transmit latency	{"latency": "1.007900001s", "given-latency": "1s", "given-latency-random-variable": "10ms", "from": "tcp://127.0.0.1:40189", "to": "tcp://127.0.0.1:36829"}
+    logger.go:130: 2025-03-06T04:28:03.392+1400	DEBUG	modified tx	{"data-received": "243 B", "data-modified": "243 B", "from": "tcp://127.0.0.1:40189", "to": "tcp://127.0.0.1:36829"}
+    logger.go:130: 2025-03-06T04:28:04.405+1400	DEBUG	transmitted	{"data-size": "243 B", "from": "tcp://127.0.0.1:40189", "to": "tcp://127.0.0.1:36829"}
+    logger.go:130: 2025-03-06T04:28:04.410+1400	DEBUG	modified rx	{"data-received": "1.6 kB", "data-modified": "1.6 kB", "from": "tcp://127.0.0.1:36829", "to": "tcp://127.0.0.1:40189"}
+    logger.go:130: 2025-03-06T04:28:04.410+1400	DEBUG	received	{"data-size": "1.6 kB", "from": "tcp://127.0.0.1:36829", "to": "tcp://127.0.0.1:40189"}
+    logger.go:130: 2025-03-06T04:28:04.411+1400	DEBUG	modified tx	{"data-received": "236 B", "data-modified": "236 B", "from": "tcp://127.0.0.1:40189", "to": "tcp://127.0.0.1:36829"}
+    logger.go:130: 2025-03-06T04:28:05.421+1400	DEBUG	transmitted	{"data-size": "236 B", "from": "tcp://127.0.0.1:40189", "to": "tcp://127.0.0.1:36829"}
+    logger.go:130: 2025-03-06T04:28:05.422+1400	DEBUG	modified rx	{"data-received": "164 B", "data-modified": "164 B", "from": "tcp://127.0.0.1:36829", "to": "tcp://127.0.0.1:40189"}
+    logger.go:130: 2025-03-06T04:28:05.422+1400	DEBUG	received	{"data-size": "164 B", "from": "tcp://127.0.0.1:36829", "to": "tcp://127.0.0.1:40189"}
+    server_test.go:597: took 2.031182047s with latency 1s±10ms
+    logger.go:130: 2025-03-06T04:28:05.422+1400	INFO	removed transmit latency	{"latency": "1.007900001s", "from": "tcp://127.0.0.1:40189", "to": "tcp://127.0.0.1:36829"}
+    logger.go:130: 2025-03-06T04:28:05.422+1400	INFO	closing Proxy server...
+    logger.go:130: 2025-03-06T04:28:05.422+1400	INFO	closed proxy listener	{"from": "tcp://127.0.0.1:40189", "to": "tcp://127.0.0.1:36829"}
+    logger.go:130: 2025-03-06T04:28:05.422+1400	DEBUG	modified tx	{"data-received": "24 B", "data-modified": "24 B", "from": "tcp://127.0.0.1:40189", "to": "tcp://127.0.0.1:36829"}
+    logger.go:130: 2025-03-06T04:28:05.422+1400	DEBUG	transmitted	{"data-size": "24 B", "from": "tcp://127.0.0.1:40189", "to": "tcp://127.0.0.1:36829"}
+    logger.go:130: 2025-03-06T04:28:05.422+1400	DEBUG	modified tx	{"data-received": "24 B", "data-modified": "24 B", "from": "tcp://127.0.0.1:40189", "to": "tcp://127.0.0.1:36829"}
+    logger.go:130: 2025-03-06T04:28:05.422+1400	DEBUG	transmitted	{"data-size": "24 B", "from": "tcp://127.0.0.1:40189", "to": "tcp://127.0.0.1:36829"}
+    logger.go:130: 2025-03-06T04:28:05.422+1400	INFO	closed Proxy server.
+--- PASS: TestServerHTTP_Secure_DelayTx (2.24s)
 === RUN   TestServerHTTP_Insecure_DelayRx
-    logger.go:130: 2026-04-07T08:43:39.807-1200	INFO	started proxying	{"from": "tcp://127.0.0.1:46711", "to": "tcp://127.0.0.1:40737"}
-    logger.go:130: 2026-04-07T08:43:39.807-1200	INFO	proxy is listening on	{"from": "tcp://127.0.0.1:46711"}
-    logger.go:130: 2026-04-07T08:43:39.808-1200	DEBUG	modified tx	{"data-received": "150 B", "data-modified": "150 B", "from": "tcp://127.0.0.1:46711", "to": "tcp://127.0.0.1:40737"}
-    logger.go:130: 2026-04-07T08:43:39.808-1200	DEBUG	transmitted	{"data-size": "150 B", "from": "tcp://127.0.0.1:46711", "to": "tcp://127.0.0.1:40737"}
-    logger.go:130: 2026-04-07T08:43:39.808-1200	DEBUG	modified rx	{"data-received": "142 B", "data-modified": "142 B", "from": "tcp://127.0.0.1:40737", "to": "tcp://127.0.0.1:46711"}
-    logger.go:130: 2026-04-07T08:43:39.808-1200	DEBUG	received	{"data-size": "142 B", "from": "tcp://127.0.0.1:40737", "to": "tcp://127.0.0.1:46711"}
-    server_test.go:557: took 1.02936ms with no latency
-    logger.go:130: 2026-04-07T08:43:39.808-1200	INFO	set receive latency	{"latency": "1.009769896s", "given-latency": "1s", "given-latency-random-variable": "10ms", "from": "tcp://127.0.0.1:40737", "to": "tcp://127.0.0.1:46711"}
-    logger.go:130: 2026-04-07T08:43:39.808-1200	DEBUG	modified tx	{"data-received": "150 B", "data-modified": "150 B", "from": "tcp://127.0.0.1:46711", "to": "tcp://127.0.0.1:40737"}
-    logger.go:130: 2026-04-07T08:43:39.808-1200	DEBUG	transmitted	{"data-size": "150 B", "from": "tcp://127.0.0.1:46711", "to": "tcp://127.0.0.1:40737"}
-    logger.go:130: 2026-04-07T08:43:39.808-1200	DEBUG	modified rx	{"data-received": "142 B", "data-modified": "142 B", "from": "tcp://127.0.0.1:40737", "to": "tcp://127.0.0.1:46711"}
-    logger.go:130: 2026-04-07T08:43:40.821-1200	DEBUG	received	{"data-size": "142 B", "from": "tcp://127.0.0.1:40737", "to": "tcp://127.0.0.1:46711"}
-    server_test.go:597: took 1.01346412s with latency 1s±10ms
-    logger.go:130: 2026-04-07T08:43:40.822-1200	INFO	removed receive latency	{"latency": "1.009769896s", "from": "tcp://127.0.0.1:40737", "to": "tcp://127.0.0.1:46711"}
-    logger.go:130: 2026-04-07T08:43:40.822-1200	INFO	closing Proxy server...
-    logger.go:130: 2026-04-07T08:43:40.822-1200	INFO	closed proxy listener	{"from": "tcp://127.0.0.1:46711", "to": "tcp://127.0.0.1:40737"}
-    logger.go:130: 2026-04-07T08:43:40.822-1200	INFO	closed Proxy server.
+    logger.go:130: 2025-03-06T04:28:05.624+1400	INFO	started proxying	{"from": "tcp://127.0.0.1:44921", "to": "tcp://127.0.0.1:43809"}
+    logger.go:130: 2025-03-06T04:28:05.624+1400	INFO	proxy is listening on	{"from": "tcp://127.0.0.1:44921"}
+    logger.go:130: 2025-03-06T04:28:05.624+1400	DEBUG	modified tx	{"data-received": "150 B", "data-modified": "150 B", "from": "tcp://127.0.0.1:44921", "to": "tcp://127.0.0.1:43809"}
+    logger.go:130: 2025-03-06T04:28:05.624+1400	DEBUG	transmitted	{"data-size": "150 B", "from": "tcp://127.0.0.1:44921", "to": "tcp://127.0.0.1:43809"}
+    logger.go:130: 2025-03-06T04:28:05.624+1400	DEBUG	modified rx	{"data-received": "142 B", "data-modified": "142 B", "from": "tcp://127.0.0.1:43809", "to": "tcp://127.0.0.1:44921"}
+    logger.go:130: 2025-03-06T04:28:05.624+1400	DEBUG	received	{"data-size": "142 B", "from": "tcp://127.0.0.1:43809", "to": "tcp://127.0.0.1:44921"}
+    server_test.go:557: took 601.404µs with no latency
+    logger.go:130: 2025-03-06T04:28:05.624+1400	INFO	set receive latency	{"latency": "1.009010121s", "given-latency": "1s", "given-latency-random-variable": "10ms", "from": "tcp://127.0.0.1:43809", "to": "tcp://127.0.0.1:44921"}
+    logger.go:130: 2025-03-06T04:28:05.624+1400	DEBUG	modified tx	{"data-received": "150 B", "data-modified": "150 B", "from": "tcp://127.0.0.1:44921", "to": "tcp://127.0.0.1:43809"}
+    logger.go:130: 2025-03-06T04:28:05.624+1400	DEBUG	transmitted	{"data-size": "150 B", "from": "tcp://127.0.0.1:44921", "to": "tcp://127.0.0.1:43809"}
+    logger.go:130: 2025-03-06T04:28:05.624+1400	DEBUG	modified rx	{"data-received": "142 B", "data-modified": "142 B", "from": "tcp://127.0.0.1:43809", "to": "tcp://127.0.0.1:44921"}
+    logger.go:130: 2025-03-06T04:28:06.637+1400	DEBUG	received	{"data-size": "142 B", "from": "tcp://127.0.0.1:43809", "to": "tcp://127.0.0.1:44921"}
+    server_test.go:597: took 1.013327469s with latency 1s±10ms
+    logger.go:130: 2025-03-06T04:28:06.638+1400	INFO	removed receive latency	{"latency": "1.009010121s", "from": "tcp://127.0.0.1:43809", "to": "tcp://127.0.0.1:44921"}
+    logger.go:130: 2025-03-06T04:28:06.638+1400	INFO	closing Proxy server...
+    logger.go:130: 2025-03-06T04:28:06.638+1400	INFO	closed proxy listener	{"from": "tcp://127.0.0.1:44921", "to": "tcp://127.0.0.1:43809"}
+    logger.go:130: 2025-03-06T04:28:06.638+1400	INFO	closed Proxy server.
 --- PASS: TestServerHTTP_Insecure_DelayRx (1.22s)
 === RUN   TestServerHTTP_Secure_DelayRx
-    logger.go:130: 2026-04-07T08:43:40.823-1200	INFO	Loading cert pool	{"cs": ["../../tests/fixtures/ca.crt"], "tlsinfo": "cert = ../../tests/fixtures/server.crt, key = ../../tests/fixtures/server.key.insecure, client-cert=, client-key=, trusted-ca = ../../tests/fixtures/ca.crt, client-cert-auth = true, crl-file = "}
-    logger.go:130: 2026-04-07T08:43:41.023-1200	INFO	started proxying	{"from": "tcp://127.0.0.1:43861", "to": "tcp://127.0.0.1:37221"}
-    logger.go:130: 2026-04-07T08:43:41.024-1200	INFO	proxy is listening on	{"from": "tcp://127.0.0.1:43861"}
-    logger.go:130: 2026-04-07T08:43:41.026-1200	DEBUG	modified tx	{"data-received": "243 B", "data-modified": "243 B", "from": "tcp://127.0.0.1:43861", "to": "tcp://127.0.0.1:37221"}
-    logger.go:130: 2026-04-07T08:43:41.026-1200	DEBUG	transmitted	{"data-size": "243 B", "from": "tcp://127.0.0.1:43861", "to": "tcp://127.0.0.1:37221"}
-    logger.go:130: 2026-04-07T08:43:41.039-1200	DEBUG	modified rx	{"data-received": "1.6 kB", "data-modified": "1.6 kB", "from": "tcp://127.0.0.1:37221", "to": "tcp://127.0.0.1:43861"}
-    logger.go:130: 2026-04-07T08:43:41.039-1200	DEBUG	received	{"data-size": "1.6 kB", "from": "tcp://127.0.0.1:37221", "to": "tcp://127.0.0.1:43861"}
-    logger.go:130: 2026-04-07T08:43:41.040-1200	DEBUG	modified tx	{"data-received": "64 B", "data-modified": "64 B", "from": "tcp://127.0.0.1:43861", "to": "tcp://127.0.0.1:37221"}
-    logger.go:130: 2026-04-07T08:43:41.040-1200	DEBUG	transmitted	{"data-size": "64 B", "from": "tcp://127.0.0.1:43861", "to": "tcp://127.0.0.1:37221"}
-    logger.go:130: 2026-04-07T08:43:41.041-1200	DEBUG	modified tx	{"data-received": "172 B", "data-modified": "172 B", "from": "tcp://127.0.0.1:43861", "to": "tcp://127.0.0.1:37221"}
-    logger.go:130: 2026-04-07T08:43:41.041-1200	DEBUG	transmitted	{"data-size": "172 B", "from": "tcp://127.0.0.1:43861", "to": "tcp://127.0.0.1:37221"}
-    logger.go:130: 2026-04-07T08:43:41.041-1200	DEBUG	modified rx	{"data-received": "164 B", "data-modified": "164 B", "from": "tcp://127.0.0.1:37221", "to": "tcp://127.0.0.1:43861"}
-    logger.go:130: 2026-04-07T08:43:41.041-1200	DEBUG	received	{"data-size": "164 B", "from": "tcp://127.0.0.1:37221", "to": "tcp://127.0.0.1:43861"}
-    server_test.go:557: took 17.4302ms with no latency
-    logger.go:130: 2026-04-07T08:43:41.041-1200	INFO	set receive latency	{"latency": "1.001260873s", "given-latency": "1s", "given-latency-random-variable": "10ms", "from": "tcp://127.0.0.1:37221", "to": "tcp://127.0.0.1:43861"}
-    logger.go:130: 2026-04-07T08:43:41.043-1200	DEBUG	modified tx	{"data-received": "243 B", "data-modified": "243 B", "from": "tcp://127.0.0.1:43861", "to": "tcp://127.0.0.1:37221"}
-    logger.go:130: 2026-04-07T08:43:41.044-1200	DEBUG	transmitted	{"data-size": "243 B", "from": "tcp://127.0.0.1:43861", "to": "tcp://127.0.0.1:37221"}
-    logger.go:130: 2026-04-07T08:43:41.056-1200	DEBUG	modified rx	{"data-received": "1.6 kB", "data-modified": "1.6 kB", "from": "tcp://127.0.0.1:37221", "to": "tcp://127.0.0.1:43861"}
-    logger.go:130: 2026-04-07T08:43:42.061-1200	DEBUG	received	{"data-size": "1.6 kB", "from": "tcp://127.0.0.1:37221", "to": "tcp://127.0.0.1:43861"}
-    logger.go:130: 2026-04-07T08:43:42.063-1200	DEBUG	modified tx	{"data-received": "64 B", "data-modified": "64 B", "from": "tcp://127.0.0.1:43861", "to": "tcp://127.0.0.1:37221"}
-    logger.go:130: 2026-04-07T08:43:42.064-1200	DEBUG	transmitted	{"data-size": "64 B", "from": "tcp://127.0.0.1:43861", "to": "tcp://127.0.0.1:37221"}
-    logger.go:130: 2026-04-07T08:43:42.064-1200	DEBUG	modified tx	{"data-received": "172 B", "data-modified": "172 B", "from": "tcp://127.0.0.1:43861", "to": "tcp://127.0.0.1:37221"}
-    logger.go:130: 2026-04-07T08:43:42.064-1200	DEBUG	transmitted	{"data-size": "172 B", "from": "tcp://127.0.0.1:43861", "to": "tcp://127.0.0.1:37221"}
-    logger.go:130: 2026-04-07T08:43:42.065-1200	DEBUG	modified rx	{"data-received": "164 B", "data-modified": "164 B", "from": "tcp://127.0.0.1:37221", "to": "tcp://127.0.0.1:43861"}
-    logger.go:130: 2026-04-07T08:43:43.066-1200	DEBUG	received	{"data-size": "164 B", "from": "tcp://127.0.0.1:37221", "to": "tcp://127.0.0.1:43861"}
-    server_test.go:597: took 2.02549748s with latency 1s±10ms
-    logger.go:130: 2026-04-07T08:43:43.067-1200	DEBUG	modified tx	{"data-received": "24 B", "data-modified": "24 B", "from": "tcp://127.0.0.1:43861", "to": "tcp://127.0.0.1:37221"}
-    logger.go:130: 2026-04-07T08:43:43.067-1200	INFO	removed receive latency	{"latency": "1.001260873s", "from": "tcp://127.0.0.1:37221", "to": "tcp://127.0.0.1:43861"}
-    logger.go:130: 2026-04-07T08:43:43.067-1200	DEBUG	transmitted	{"data-size": "24 B", "from": "tcp://127.0.0.1:43861", "to": "tcp://127.0.0.1:37221"}
-    logger.go:130: 2026-04-07T08:43:43.067-1200	INFO	closing Proxy server...
-    logger.go:130: 2026-04-07T08:43:43.067-1200	DEBUG	modified rx	{"data-received": "24 B", "data-modified": "24 B", "from": "tcp://127.0.0.1:37221", "to": "tcp://127.0.0.1:43861"}
-    logger.go:130: 2026-04-07T08:43:43.067-1200	DEBUG	modified tx	{"data-received": "24 B", "data-modified": "24 B", "from": "tcp://127.0.0.1:43861", "to": "tcp://127.0.0.1:37221"}
-    logger.go:130: 2026-04-07T08:43:43.067-1200	INFO	closed proxy listener	{"from": "tcp://127.0.0.1:43861", "to": "tcp://127.0.0.1:37221"}
-    logger.go:130: 2026-04-07T08:43:43.067-1200	DEBUG	transmitted	{"data-size": "24 B", "from": "tcp://127.0.0.1:43861", "to": "tcp://127.0.0.1:37221"}
-    logger.go:130: 2026-04-07T08:43:43.068-1200	INFO	closed Proxy server.
---- PASS: TestServerHTTP_Secure_DelayRx (2.25s)
+    logger.go:130: 2025-03-06T04:28:06.639+1400	INFO	Loading cert pool	{"cs": ["../../tests/fixtures/ca.crt"], "tlsinfo": "cert = ../../tests/fixtures/server.crt, key = ../../tests/fixtures/server.key.insecure, client-cert=, client-key=, trusted-ca = ../../tests/fixtures/ca.crt, client-cert-auth = true, crl-file = "}
+    logger.go:130: 2025-03-06T04:28:06.840+1400	INFO	started proxying	{"from": "tcp://127.0.0.1:38445", "to": "tcp://127.0.0.1:35993"}
+    logger.go:130: 2025-03-06T04:28:06.840+1400	INFO	proxy is listening on	{"from": "tcp://127.0.0.1:38445"}
+    logger.go:130: 2025-03-06T04:28:06.842+1400	DEBUG	modified tx	{"data-received": "243 B", "data-modified": "243 B", "from": "tcp://127.0.0.1:38445", "to": "tcp://127.0.0.1:35993"}
+    logger.go:130: 2025-03-06T04:28:06.842+1400	DEBUG	transmitted	{"data-size": "243 B", "from": "tcp://127.0.0.1:38445", "to": "tcp://127.0.0.1:35993"}
+    logger.go:130: 2025-03-06T04:28:06.848+1400	DEBUG	modified rx	{"data-received": "1.6 kB", "data-modified": "1.6 kB", "from": "tcp://127.0.0.1:35993", "to": "tcp://127.0.0.1:38445"}
+    logger.go:130: 2025-03-06T04:28:06.848+1400	DEBUG	received	{"data-size": "1.6 kB", "from": "tcp://127.0.0.1:35993", "to": "tcp://127.0.0.1:38445"}
+    logger.go:130: 2025-03-06T04:28:06.849+1400	DEBUG	modified tx	{"data-received": "236 B", "data-modified": "236 B", "from": "tcp://127.0.0.1:38445", "to": "tcp://127.0.0.1:35993"}
+    logger.go:130: 2025-03-06T04:28:06.849+1400	DEBUG	transmitted	{"data-size": "236 B", "from": "tcp://127.0.0.1:38445", "to": "tcp://127.0.0.1:35993"}
+    logger.go:130: 2025-03-06T04:28:06.849+1400	DEBUG	modified rx	{"data-received": "164 B", "data-modified": "164 B", "from": "tcp://127.0.0.1:35993", "to": "tcp://127.0.0.1:38445"}
+    server_test.go:557: took 9.058538ms with no latency
+    logger.go:130: 2025-03-06T04:28:06.849+1400	INFO	set receive latency	{"latency": "993.223331ms", "given-latency": "1s", "given-latency-random-variable": "10ms", "from": "tcp://127.0.0.1:35993", "to": "tcp://127.0.0.1:38445"}
+    logger.go:130: 2025-03-06T04:28:06.851+1400	DEBUG	modified tx	{"data-received": "243 B", "data-modified": "243 B", "from": "tcp://127.0.0.1:38445", "to": "tcp://127.0.0.1:35993"}
+    logger.go:130: 2025-03-06T04:28:06.851+1400	DEBUG	transmitted	{"data-size": "243 B", "from": "tcp://127.0.0.1:38445", "to": "tcp://127.0.0.1:35993"}
+    logger.go:130: 2025-03-06T04:28:06.851+1400	DEBUG	received	{"data-size": "164 B", "from": "tcp://127.0.0.1:35993", "to": "tcp://127.0.0.1:38445"}
+    logger.go:130: 2025-03-06T04:28:06.865+1400	DEBUG	modified rx	{"data-received": "1.6 kB", "data-modified": "1.6 kB", "from": "tcp://127.0.0.1:35993", "to": "tcp://127.0.0.1:38445"}
+    logger.go:130: 2025-03-06T04:28:07.861+1400	DEBUG	received	{"data-size": "1.6 kB", "from": "tcp://127.0.0.1:35993", "to": "tcp://127.0.0.1:38445"}
+    logger.go:130: 2025-03-06T04:28:07.862+1400	DEBUG	modified tx	{"data-received": "236 B", "data-modified": "236 B", "from": "tcp://127.0.0.1:38445", "to": "tcp://127.0.0.1:35993"}
+    logger.go:130: 2025-03-06T04:28:07.862+1400	DEBUG	transmitted	{"data-size": "236 B", "from": "tcp://127.0.0.1:38445", "to": "tcp://127.0.0.1:35993"}
+    logger.go:130: 2025-03-06T04:28:07.862+1400	DEBUG	modified rx	{"data-received": "164 B", "data-modified": "164 B", "from": "tcp://127.0.0.1:35993", "to": "tcp://127.0.0.1:38445"}
+    logger.go:130: 2025-03-06T04:28:08.861+1400	DEBUG	received	{"data-size": "164 B", "from": "tcp://127.0.0.1:35993", "to": "tcp://127.0.0.1:38445"}
+    server_test.go:597: took 2.012142245s with latency 1s±10ms
+    logger.go:130: 2025-03-06T04:28:08.862+1400	INFO	removed receive latency	{"latency": "993.223331ms", "from": "tcp://127.0.0.1:35993", "to": "tcp://127.0.0.1:38445"}
+    logger.go:130: 2025-03-06T04:28:08.862+1400	INFO	closing Proxy server...
+    logger.go:130: 2025-03-06T04:28:08.862+1400	INFO	closed proxy listener	{"from": "tcp://127.0.0.1:38445", "to": "tcp://127.0.0.1:35993"}
+    logger.go:130: 2025-03-06T04:28:08.862+1400	DEBUG	modified tx	{"data-received": "24 B", "data-modified": "24 B", "from": "tcp://127.0.0.1:38445", "to": "tcp://127.0.0.1:35993"}
+    logger.go:130: 2025-03-06T04:28:08.862+1400	DEBUG	modified tx	{"data-received": "24 B", "data-modified": "24 B", "from": "tcp://127.0.0.1:38445", "to": "tcp://127.0.0.1:35993"}
+    logger.go:130: 2025-03-06T04:28:08.862+1400	DEBUG	transmitted	{"data-size": "24 B", "from": "tcp://127.0.0.1:38445", "to": "tcp://127.0.0.1:35993"}
+    logger.go:130: 2025-03-06T04:28:08.862+1400	INFO	closed Proxy server.
+--- PASS: TestServerHTTP_Secure_DelayRx (2.22s)
 PASS
-ok  	go.etcd.io/etcd/pkg/proxy	9.445s
+ok  	go.etcd.io/etcd/pkg/proxy	9.366s
 === RUN   TestPercentiles
 --- PASS: TestPercentiles (0.00s)
 === RUN   TestReport
@@ -4089,17 +4114,17 @@
 === RUN   TestGetTimeseries
 --- PASS: TestGetTimeseries (0.00s)
 PASS
-ok  	go.etcd.io/etcd/pkg/report	0.005s
+ok  	go.etcd.io/etcd/pkg/report	0.021s
 ?   	go.etcd.io/etcd/pkg/runtime	[no test files]
 === RUN   TestFIFOSchedule
 --- PASS: TestFIFOSchedule (0.00s)
 PASS
-ok  	go.etcd.io/etcd/pkg/schedule	0.005s
+ok  	go.etcd.io/etcd/pkg/schedule	0.006s
 === RUN   TestUniqueStrings
-[Z40lIUT2jz H8ojDN2eGb fwXgtud2BO 0SRLvB48BT c9fUNb3IRH BINbqUF8UF 63v3dgLAYc ZacQ7v2kpn VEuhJSYtyX CKzNeAhQKg hu6GEoEyUa hvt4TLjrgW 7xPAFujJR4 4UoSYK1hBv jJdxlCGlz0 d2EYrPAt6A TQt1shRkVM xqcZDhKmFs eiL3NTmkHF rJINQC2c28 zim3UxHoHZ XRkszQYvvC n7VsAEsef3 KnTdclp8zU dYIjHdgqP0 7mN21owiYK lQ3UN2ceFo XlpHgVFD2Q LT9ylBfc3L Pf6woLALbp HgwxCqRRrK TZhsSclMcA r3q39ITWs2 24R2ttxqZ3 iCmRc68OcF 9JjztElJKP P7ryakjPj2 1Sb59SHjc4 VTqy4CmkQK FtNfRYOHcW 0WRXXtubiz 9uSC2DhNc9 N2NGOQuIH2 pnyAnK9CXA JjiQyeEwVi KXGG4hwmj3 NEGLfg1atJ 8LfoDMqRiI ubs2hdAoNJ 5fmd4OOuwX]
+[AfT0KFSiPo ur1XTTXnQD xyp5Atyc4K bLlRQQcOU7 dQoOBPupKE JL10S10S55 GcN3UXAxkQ xvzvqj5Eos tQsfK3A3YO IfthS9vXjn ArM4cit9Rs s5MxUVAl4j RvoHJKQKdT Hum3CJNUjp tc9WAOg8HX ovPupIFMo8 MbjkDBu0wR c1PKU8X1v6 BIeH8sF1v0 8YrcgZYab9 FbkttvUiy1 48K6JS8jrc efiMDrFLoY W8IXi6yanE d0PhBfpr5y gmSMb4oNKB eZwCs5tpqP mLCjboSFEc UAU5iqs1i2 9a0WyHZBG8 0n5TSgaOeZ eUR48ibeoB I4hc14Unnh 6z5DAdAeCV lv7M55Pcur CBUsJdm9ta TdRRbU568o Ly2IF05M1m oSHtuPHA8e Pzx0mabxmm ZzqEZPW7gm 0pKKgm56vq rwTZoku1Vc DA92ISsDAX KfOWDJ8RkN bKyacIXqVe QPYXnKxObC NDeckhVWeE zcGmsWBJEK mBZkY69d8u]
 --- PASS: TestUniqueStrings (0.00s)
 PASS
-ok  	go.etcd.io/etcd/pkg/stringutil	0.006s
+ok  	go.etcd.io/etcd/pkg/stringutil	0.017s
 === RUN   TestGet
 === RUN   TestGet/When_the_context_does_not_have_trace
 === RUN   TestGet/When_the_context_has_trace
@@ -4125,11 +4150,11 @@
     --- PASS: TestLogIfLong/When_the_duration_is_longer_than_threshold (0.00s)
     --- PASS: TestLogIfLong/When_not_all_steps_are_longer_than_step_threshold (0.00s)
 PASS
-ok  	go.etcd.io/etcd/pkg/traceutil	0.012s
+ok  	go.etcd.io/etcd/pkg/traceutil	0.009s
 === RUN   TestWait
 --- PASS: TestWait (0.00s)
 === RUN   TestRegisterDupPanic
-2026/04/07 08:43:45 dup id 1
+2025/03/06 04:28:10 dup id 1
 --- PASS: TestRegisterDupPanic (0.00s)
 === RUN   TestTriggerDupSuppression
 --- PASS: TestTriggerDupSuppression (0.00s)
@@ -4138,29 +4163,29 @@
 === RUN   TestWaitTime
 --- PASS: TestWaitTime (0.00s)
 === RUN   TestWaitTestStress
---- PASS: TestWaitTestStress (0.02s)
+--- PASS: TestWaitTestStress (0.01s)
 PASS
-ok  	go.etcd.io/etcd/pkg/wait	0.027s
+ok  	go.etcd.io/etcd/pkg/wait	0.014s
 === RUN   TestFindConflict
-raft2026/04/07 08:43:47 INFO: found conflict at index 1 [existing term: 1, conflicting term: 4]
-raft2026/04/07 08:43:47 INFO: found conflict at index 2 [existing term: 2, conflicting term: 1]
-raft2026/04/07 08:43:47 INFO: found conflict at index 3 [existing term: 3, conflicting term: 1]
+raft2025/03/06 04:28:13 INFO: found conflict at index 1 [existing term: 1, conflicting term: 4]
+raft2025/03/06 04:28:13 INFO: found conflict at index 2 [existing term: 2, conflicting term: 1]
+raft2025/03/06 04:28:13 INFO: found conflict at index 3 [existing term: 3, conflicting term: 1]
 --- PASS: TestFindConflict (0.00s)
 === RUN   TestIsUpToDate
 --- PASS: TestIsUpToDate (0.00s)
 === RUN   TestAppend
-raft2026/04/07 08:43:47 INFO: replace the unstable entries from index 1
-raft2026/04/07 08:43:47 INFO: replace the unstable entries from index 2
+raft2025/03/06 04:28:13 INFO: replace the unstable entries from index 1
+raft2025/03/06 04:28:13 INFO: replace the unstable entries from index 2
 --- PASS: TestAppend (0.00s)
 === RUN   TestLogMaybeAppend
-raft2026/04/07 08:43:47 INFO: found conflict at index 3 [existing term: 3, conflicting term: 4]
-raft2026/04/07 08:43:47 INFO: truncate the unstable entries before index 3
-raft2026/04/07 08:43:47 INFO: found conflict at index 2 [existing term: 2, conflicting term: 4]
-raft2026/04/07 08:43:47 INFO: truncate the unstable entries before index 2
-raft2026/04/07 08:43:47 INFO: found conflict at index 1 [existing term: 1, conflicting term: 4]
-raft2026/04/07 08:43:47 entry 1 conflict with committed entry [committed(1)]
-raft2026/04/07 08:43:47 INFO: found conflict at index 2 [existing term: 2, conflicting term: 4]
-raft2026/04/07 08:43:47 INFO: truncate the unstable entries before index 2
+raft2025/03/06 04:28:13 INFO: found conflict at index 3 [existing term: 3, conflicting term: 4]
+raft2025/03/06 04:28:13 INFO: truncate the unstable entries before index 3
+raft2025/03/06 04:28:13 INFO: found conflict at index 2 [existing term: 2, conflicting term: 4]
+raft2025/03/06 04:28:13 INFO: truncate the unstable entries before index 2
+raft2025/03/06 04:28:13 INFO: found conflict at index 1 [existing term: 1, conflicting term: 4]
+raft2025/03/06 04:28:13 entry 1 conflict with committed entry [committed(1)]
+raft2025/03/06 04:28:13 INFO: found conflict at index 2 [existing term: 2, conflicting term: 4]
+raft2025/03/06 04:28:13 INFO: truncate the unstable entries before index 2
 --- PASS: TestLogMaybeAppend (0.00s)
 === RUN   TestCompactionSideEffects
 --- PASS: TestCompactionSideEffects (0.00s)
@@ -4171,28 +4196,28 @@
 === RUN   TestUnstableEnts
 --- PASS: TestUnstableEnts (0.00s)
 === RUN   TestCommitTo
-raft2026/04/07 08:43:47 tocommit(4) is out of range [lastIndex(3)]. Was the raft log corrupted, truncated, or lost?
+raft2025/03/06 04:28:13 tocommit(4) is out of range [lastIndex(3)]. Was the raft log corrupted, truncated, or lost?
 --- PASS: TestCommitTo (0.00s)
 === RUN   TestStableTo
 --- PASS: TestStableTo (0.00s)
 === RUN   TestStableToWithSnap
 --- PASS: TestStableToWithSnap (0.00s)
 === RUN   TestCompaction
-raft2026/04/07 08:43:47 compact 1001 is out of bound lastindex(1000)
+raft2025/03/06 04:28:13 compact 1001 is out of bound lastindex(1000)
 --- PASS: TestCompaction (0.00s)
 === RUN   TestLogRestore
 --- PASS: TestLogRestore (0.00s)
 === RUN   TestIsOutOfBounds
-raft2026/04/07 08:43:47 slice[201,202) out of bound [101,200]
-raft2026/04/07 08:43:47 slice[202,202) out of bound [101,200]
+raft2025/03/06 04:28:13 slice[201,202) out of bound [101,200]
+raft2025/03/06 04:28:13 slice[202,202) out of bound [101,200]
 --- PASS: TestIsOutOfBounds (0.00s)
 === RUN   TestTerm
 --- PASS: TestTerm (0.00s)
 === RUN   TestTermWithUnstableSnapshot
-raft2026/04/07 08:43:47 INFO: log [committed=100, applied=100, unstable.offset=101, len(unstable.Entries)=0] starts to restore snapshot [index: 105, term: 1]
+raft2025/03/06 04:28:13 INFO: log [committed=100, applied=100, unstable.offset=101, len(unstable.Entries)=0] starts to restore snapshot [index: 105, term: 1]
 --- PASS: TestTermWithUnstableSnapshot (0.00s)
 === RUN   TestSlice
-raft2026/04/07 08:43:47 slice[200,201) out of bound [101,199]
+raft2025/03/06 04:28:13 slice[200,201) out of bound [101,199]
 --- PASS: TestSlice (0.00s)
 === RUN   TestUnstableMaybeFirstIndex
 --- PASS: TestUnstableMaybeFirstIndex (0.00s)
@@ -4205,551 +4230,552 @@
 === RUN   TestUnstableStableTo
 --- PASS: TestUnstableStableTo (0.00s)
 === RUN   TestUnstableTruncateAndAppend
-raft2026/04/07 08:43:47 INFO: replace the unstable entries from index 5
-raft2026/04/07 08:43:47 INFO: replace the unstable entries from index 4
-raft2026/04/07 08:43:47 INFO: truncate the unstable entries before index 6
-raft2026/04/07 08:43:47 INFO: truncate the unstable entries before index 7
+raft2025/03/06 04:28:13 INFO: replace the unstable entries from index 5
+raft2025/03/06 04:28:13 INFO: replace the unstable entries from index 4
+raft2025/03/06 04:28:13 INFO: truncate the unstable entries before index 6
+raft2025/03/06 04:28:13 INFO: truncate the unstable entries before index 7
 --- PASS: TestUnstableTruncateAndAppend (0.00s)
 === RUN   TestNodeStep
 --- PASS: TestNodeStep (0.00s)
 === RUN   TestNodeStepUnblock
 --- PASS: TestNodeStepUnblock (0.00s)
 === RUN   TestNodePropose
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: raft.node: 1 elected leader 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: raft.node: 1 elected leader 1 at term 1
 --- PASS: TestNodePropose (0.00s)
 === RUN   TestNodeReadIndex
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: raft.node: 1 elected leader 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: raft.node: 1 elected leader 1 at term 1
 --- PASS: TestNodeReadIndex (0.00s)
 === RUN   TestDisableProposalForwarding
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 3 not forwarding to leader 1 at term 1; dropping proposal
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 3 not forwarding to leader 1 at term 1; dropping proposal
 --- PASS: TestDisableProposalForwarding (0.00s)
 === RUN   TestNodeReadIndexToOldLeader
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 3 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 3 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgVote message with higher term from 3 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1, vote: 0] cast MsgVote for 3 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 2 [term: 2] ignored a MsgHeartbeat message with lower term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 [term: 2] ignored a MsgHeartbeat message with lower term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 3 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 3 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 1 no leader at term 2; dropping index reading msg
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 3 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 3 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgVote message with higher term from 3 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1, vote: 0] cast MsgVote for 3 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 2 [term: 2] ignored a MsgHeartbeat message with lower term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 [term: 2] ignored a MsgHeartbeat message with lower term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 3 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 3 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 1 no leader at term 2; dropping index reading msg
 --- PASS: TestNodeReadIndexToOldLeader (0.00s)
 === RUN   TestNodeProposeConfig
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: raft.node: 1 elected leader 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: raft.node: 1 elected leader 1 at term 1
 --- PASS: TestNodeProposeConfig (0.00s)
 === RUN   TestNodeProposeAddDuplicateNode
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: raft.node: 1 elected leader 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: raft.node: 1 elected leader 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
 --- PASS: TestNodeProposeAddDuplicateNode (0.00s)
 === RUN   TestBlockProposal
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: raft.node: 1 elected leader 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: raft.node: 1 elected leader 1 at term 1
 --- PASS: TestBlockProposal (0.01s)
 === RUN   TestNodeProposeWaitDropped
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: raft.node: 1 elected leader 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: raft.node: 1 elected leader 1 at term 1
     node_test.go:463: dropping message: type:MsgProp from:1 entries:<Data:"test_dropping" > 
 --- PASS: TestNodeProposeWaitDropped (0.00s)
 === RUN   TestNodeTick
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
 --- PASS: TestNodeTick (0.10s)
 === RUN   TestNodeStop
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
 --- PASS: TestNodeStop (0.00s)
 === RUN   TestReadyContainUpdates
 --- PASS: TestReadyContainUpdates (0.00s)
 === RUN   TestNodeStart
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 2
-raft2026/04/07 08:43:47 INFO: raft.node: 1 elected leader 1 at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 2
+raft2025/03/06 04:28:13 INFO: raft.node: 1 elected leader 1 at term 2
 --- PASS: TestNodeStart (0.00s)
 === RUN   TestNodeRestart
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [], term: 1, commit: 1, applied: 0, lastindex: 2, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [], term: 1, commit: 1, applied: 0, lastindex: 2, lastterm: 1]
 --- PASS: TestNodeRestart (0.00s)
 === RUN   TestNodeRestartFromSnapshot
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 1, commit: 3, applied: 2, lastindex: 3, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 1, commit: 3, applied: 2, lastindex: 3, lastterm: 1]
 --- PASS: TestNodeRestartFromSnapshot (0.00s)
 === RUN   TestNodeAdvance
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 2
-raft2026/04/07 08:43:47 INFO: raft.node: 1 elected leader 1 at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 2
+raft2025/03/06 04:28:13 INFO: raft.node: 1 elected leader 1 at term 2
 --- PASS: TestNodeAdvance (0.00s)
 === RUN   TestSoftStateEqual
 --- PASS: TestSoftStateEqual (0.00s)
 === RUN   TestIsHardStateEqual
 --- PASS: TestIsHardStateEqual (0.00s)
 === RUN   TestNodeProposeAddLearnerNode
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: raft.node: 1 elected leader 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: raft.node: 1 elected leader 1 at term 1
     node_test.go:834: raft: [{1 1 EntryNormal []} {1 2 EntryConfChange [8 0 16 3 24 2]}]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1) learners=(2)
     node_test.go:851: apply raft conf {ConfChangeAddLearnerNode 2 [] 0} changed to: voters:1 learners:2 
+    node_test.go:834: raft: []
 --- PASS: TestNodeProposeAddLearnerNode (0.00s)
 === RUN   TestAppendPagination
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestAppendPagination (0.00s)
 === RUN   TestCommitPagination
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: raft.node: 1 elected leader 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: raft.node: 1 elected leader 1 at term 1
 --- PASS: TestCommitPagination (0.00s)
 === RUN   TestNodeCommitPaginationAfterRestart
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 10, applied: 1, lastindex: 10, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 10, applied: 1, lastindex: 10, lastterm: 1]
 --- PASS: TestNodeCommitPaginationAfterRestart (0.00s)
 === RUN   TestMsgAppFlowControlFull
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestMsgAppFlowControlFull (0.00s)
 === RUN   TestMsgAppFlowControlMoveForward
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestMsgAppFlowControlMoveForward (0.00s)
 === RUN   TestMsgAppFlowControlRecvHeartbeat
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestMsgAppFlowControlRecvHeartbeat (0.00s)
 === RUN   TestFollowerUpdateTermFromMessage
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgApp message with higher term from 0 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgApp message with higher term from 0 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
 --- PASS: TestFollowerUpdateTermFromMessage (0.00s)
 === RUN   TestCandidateUpdateTermFromMessage
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgApp message with higher term from 0 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgApp message with higher term from 0 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
 --- PASS: TestCandidateUpdateTermFromMessage (0.00s)
 === RUN   TestLeaderUpdateTermFromMessage
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgApp message with higher term from 0 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgApp message with higher term from 0 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
 --- PASS: TestLeaderUpdateTermFromMessage (0.00s)
 === RUN   TestRejectStaleTermMessage
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [term: 2] ignored a MsgApp message with lower term from 0 [term: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [term: 2] ignored a MsgApp message with lower term from 0 [term: 1]
 --- PASS: TestRejectStaleTermMessage (0.00s)
 === RUN   TestStartAsFollower
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
 --- PASS: TestStartAsFollower (0.00s)
 === RUN   TestLeaderBcastBeat
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestLeaderBcastBeat (0.00s)
 === RUN   TestFollowerStartElection
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 2
 --- PASS: TestFollowerStartElection (0.00s)
 === RUN   TestCandidateStartNewElection
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 2
 --- PASS: TestCandidateStartNewElection (0.00s)
 === RUN   TestLeaderElectionInOneRoundRPC
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 3 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 3 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 3 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp rejection from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 1 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp rejection from 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 1 MsgVoteResp votes and 2 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp rejection from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 1 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp rejection from 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 1 MsgVoteResp votes and 2 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp rejection from 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 1 MsgVoteResp votes and 3 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp rejection from 5 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 1 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp rejection from 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 2 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp rejection from 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 3 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp rejection from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 1 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp rejection from 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 1 MsgVoteResp votes and 2 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 5 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 3 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 3 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 3 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp rejection from 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 1 MsgVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp rejection from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 1 MsgVoteResp votes and 2 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp rejection from 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 1 MsgVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp rejection from 5 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 1 MsgVoteResp votes and 2 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp rejection from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 1 MsgVoteResp votes and 3 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp rejection from 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp rejection from 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 2 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp rejection from 5 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 3 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp rejection from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 1 MsgVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp rejection from 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 1 MsgVoteResp votes and 2 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
 --- PASS: TestLeaderElectionInOneRoundRPC (0.00s)
 === RUN   TestFollowerVote
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0, vote: 0] cast MsgVote for 2 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0, vote: 1] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0, vote: 2] cast MsgVote for 2 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0, vote: 1] rejected MsgVote from 2 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0, vote: 2] rejected MsgVote from 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0, vote: 0] cast MsgVote for 2 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0, vote: 1] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0, vote: 2] cast MsgVote for 2 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0, vote: 1] rejected MsgVote from 2 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0, vote: 2] rejected MsgVote from 1 [logterm: 0, index: 0] at term 1
 --- PASS: TestFollowerVote (0.00s)
 === RUN   TestCandidateFallback
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgApp message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgApp message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
 --- PASS: TestCandidateFallback (0.00s)
 === RUN   TestFollowerElectionTimeoutRandomized
 --- PASS: TestFollowerElectionTimeoutRandomized (0.01s)
@@ -4760,4069 +4786,4069 @@
 === RUN   TestCandidatesElectionTimeoutNonconflict
 --- PASS: TestCandidatesElectionTimeoutNonconflict (0.05s)
 === RUN   TestLeaderStartReplication
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestLeaderStartReplication (0.00s)
 === RUN   TestLeaderCommitEntry
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestLeaderCommitEntry (0.00s)
 === RUN   TestLeaderAcknowledgeCommit
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestLeaderAcknowledgeCommit (0.00s)
 === RUN   TestLeaderCommitPrecedingEntries
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 3
 --- PASS: TestLeaderCommitPrecedingEntries (0.00s)
 === RUN   TestFollowerCommitEntry
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
 --- PASS: TestFollowerCommitEntry (0.00s)
 === RUN   TestFollowerCheckMsgApp
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
 --- PASS: TestFollowerCheckMsgApp (0.00s)
 === RUN   TestFollowerAppendEntries
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: found conflict at index 2 [existing term: 2, conflicting term: 3]
-raft2026/04/07 08:43:47 INFO: replace the unstable entries from index 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: found conflict at index 1 [existing term: 1, conflicting term: 3]
-raft2026/04/07 08:43:47 INFO: replace the unstable entries from index 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: found conflict at index 2 [existing term: 2, conflicting term: 3]
+raft2025/03/06 04:28:13 INFO: replace the unstable entries from index 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: found conflict at index 1 [existing term: 1, conflicting term: 3]
+raft2025/03/06 04:28:13 INFO: replace the unstable entries from index 1
 --- PASS: TestFollowerAppendEntries (0.00s)
 === RUN   TestLeaderSyncFollowerLog
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 10, lastterm: 6]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 9, lastterm: 6]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 8
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 9
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 9
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 2 at term 9
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 3 at term 9
-raft2026/04/07 08:43:47 INFO: 2 [term: 7] received a MsgVote message with higher term from 1 [term: 9]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 9
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 6, index: 9, vote: 0] cast MsgVote for 1 [logterm: 6, index: 10] at term 9
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 9
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 9
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 10, lastterm: 6]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 4, lastterm: 4]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 8
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 9
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 9
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 2 at term 9
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 3 at term 9
-raft2026/04/07 08:43:47 INFO: 2 [term: 7] received a MsgVote message with higher term from 1 [term: 9]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 9
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 4, index: 4, vote: 0] cast MsgVote for 1 [logterm: 6, index: 10] at term 9
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 9
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 9
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 10, lastterm: 6]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 11, lastterm: 6]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 8
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 9
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 9
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 2 at term 9
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 3 at term 9
-raft2026/04/07 08:43:47 INFO: 2 [term: 7] received a MsgVote message with higher term from 1 [term: 9]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 9
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 6, index: 11, vote: 0] rejected MsgVote from 1 [logterm: 6, index: 10] at term 9
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp rejection from 2 at term 9
-raft2026/04/07 08:43:47 INFO: 1 has received 1 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 3 at term 9
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 9
-raft2026/04/07 08:43:47 INFO: found conflict at index 11 [existing term: 6, conflicting term: 9]
-raft2026/04/07 08:43:47 INFO: replace the unstable entries from index 11
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 10, lastterm: 6]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 12, lastterm: 7]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 8
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 9
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 9
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 2 at term 9
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 3 at term 9
-raft2026/04/07 08:43:47 INFO: 2 [term: 7] received a MsgVote message with higher term from 1 [term: 9]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 9
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 7, index: 12, vote: 0] rejected MsgVote from 1 [logterm: 6, index: 10] at term 9
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp rejection from 2 at term 9
-raft2026/04/07 08:43:47 INFO: 1 has received 1 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 3 at term 9
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 9
-raft2026/04/07 08:43:47 INFO: found conflict at index 11 [existing term: 7, conflicting term: 9]
-raft2026/04/07 08:43:47 INFO: replace the unstable entries from index 11
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 10, lastterm: 6]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 7, lastterm: 4]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 8
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 9
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 9
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 2 at term 9
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 3 at term 9
-raft2026/04/07 08:43:47 INFO: 2 [term: 7] received a MsgVote message with higher term from 1 [term: 9]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 9
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 4, index: 7, vote: 0] cast MsgVote for 1 [logterm: 6, index: 10] at term 9
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 9
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 9
-raft2026/04/07 08:43:47 INFO: found conflict at index 6 [existing term: 4, conflicting term: 5]
-raft2026/04/07 08:43:47 INFO: replace the unstable entries from index 6
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 10, lastterm: 6]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 11, lastterm: 3]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 8
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 9
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 9
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 2 at term 9
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 3 at term 9
-raft2026/04/07 08:43:47 INFO: 2 [term: 7] received a MsgVote message with higher term from 1 [term: 9]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 9
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 3, index: 11, vote: 0] cast MsgVote for 1 [logterm: 6, index: 10] at term 9
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 9
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 9
-raft2026/04/07 08:43:47 INFO: found conflict at index 4 [existing term: 2, conflicting term: 4]
-raft2026/04/07 08:43:47 INFO: replace the unstable entries from index 4
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 10, lastterm: 6]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 9, lastterm: 6]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 8
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 9
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 9
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 2 at term 9
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 3 at term 9
+raft2025/03/06 04:28:13 INFO: 2 [term: 7] received a MsgVote message with higher term from 1 [term: 9]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 9
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 6, index: 9, vote: 0] cast MsgVote for 1 [logterm: 6, index: 10] at term 9
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 9
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 9
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 10, lastterm: 6]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 4, lastterm: 4]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 8
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 9
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 9
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 2 at term 9
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 3 at term 9
+raft2025/03/06 04:28:13 INFO: 2 [term: 7] received a MsgVote message with higher term from 1 [term: 9]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 9
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 4, index: 4, vote: 0] cast MsgVote for 1 [logterm: 6, index: 10] at term 9
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 9
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 9
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 10, lastterm: 6]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 11, lastterm: 6]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 8
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 9
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 9
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 2 at term 9
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 3 at term 9
+raft2025/03/06 04:28:13 INFO: 2 [term: 7] received a MsgVote message with higher term from 1 [term: 9]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 9
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 6, index: 11, vote: 0] rejected MsgVote from 1 [logterm: 6, index: 10] at term 9
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp rejection from 2 at term 9
+raft2025/03/06 04:28:13 INFO: 1 has received 1 MsgVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 3 at term 9
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 9
+raft2025/03/06 04:28:13 INFO: found conflict at index 11 [existing term: 6, conflicting term: 9]
+raft2025/03/06 04:28:13 INFO: replace the unstable entries from index 11
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 10, lastterm: 6]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 12, lastterm: 7]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 8
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 9
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 9
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 2 at term 9
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 3 at term 9
+raft2025/03/06 04:28:13 INFO: 2 [term: 7] received a MsgVote message with higher term from 1 [term: 9]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 9
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 7, index: 12, vote: 0] rejected MsgVote from 1 [logterm: 6, index: 10] at term 9
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp rejection from 2 at term 9
+raft2025/03/06 04:28:13 INFO: 1 has received 1 MsgVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 3 at term 9
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 9
+raft2025/03/06 04:28:13 INFO: found conflict at index 11 [existing term: 7, conflicting term: 9]
+raft2025/03/06 04:28:13 INFO: replace the unstable entries from index 11
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 10, lastterm: 6]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 7, lastterm: 4]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 8
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 9
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 9
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 2 at term 9
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 3 at term 9
+raft2025/03/06 04:28:13 INFO: 2 [term: 7] received a MsgVote message with higher term from 1 [term: 9]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 9
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 4, index: 7, vote: 0] cast MsgVote for 1 [logterm: 6, index: 10] at term 9
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 9
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 9
+raft2025/03/06 04:28:13 INFO: found conflict at index 6 [existing term: 4, conflicting term: 5]
+raft2025/03/06 04:28:13 INFO: replace the unstable entries from index 6
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 10, lastterm: 6]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 11, lastterm: 3]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 8
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 9
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 9
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 2 at term 9
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 6, index: 10] sent MsgVote request to 3 at term 9
+raft2025/03/06 04:28:13 INFO: 2 [term: 7] received a MsgVote message with higher term from 1 [term: 9]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 9
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 3, index: 11, vote: 0] cast MsgVote for 1 [logterm: 6, index: 10] at term 9
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 9
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 9
+raft2025/03/06 04:28:13 INFO: found conflict at index 4 [existing term: 2, conflicting term: 4]
+raft2025/03/06 04:28:13 INFO: replace the unstable entries from index 4
 --- PASS: TestLeaderSyncFollowerLog (0.00s)
 === RUN   TestVoteRequest
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [term: 0] received a MsgApp message with higher term from 2 [term: 1]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [term: 0] received a MsgApp message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2] sent MsgVote request to 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2] sent MsgVote request to 3 at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [term: 0] received a MsgApp message with higher term from 2 [term: 1]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [term: 0] received a MsgApp message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2] sent MsgVote request to 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2] sent MsgVote request to 3 at term 3
 --- PASS: TestVoteRequest (0.00s)
 === RUN   TestVoter
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 [term: 0] received a MsgVote message with higher term from 2 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 [term: 0] received a MsgVote message with higher term from 2 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 2] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 [term: 0] received a MsgVote message with higher term from 2 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 1, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 [term: 0] received a MsgVote message with higher term from 2 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 2, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 [term: 0] received a MsgVote message with higher term from 2 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 2, index: 2] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 [term: 0] received a MsgVote message with higher term from 2 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 2, vote: 0] cast MsgVote for 2 [logterm: 2, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 [term: 0] received a MsgVote message with higher term from 2 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 1, vote: 0] rejected MsgVote from 2 [logterm: 1, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 [term: 0] received a MsgVote message with higher term from 2 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 1, vote: 0] rejected MsgVote from 2 [logterm: 1, index: 2] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 [term: 0] received a MsgVote message with higher term from 2 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 1, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 [term: 0] received a MsgVote message with higher term from 2 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 [term: 0] received a MsgVote message with higher term from 2 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 2] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 [term: 0] received a MsgVote message with higher term from 2 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 1, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 [term: 0] received a MsgVote message with higher term from 2 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 2, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 [term: 0] received a MsgVote message with higher term from 2 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 2, index: 2] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 [term: 0] received a MsgVote message with higher term from 2 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 2, vote: 0] cast MsgVote for 2 [logterm: 2, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 [term: 0] received a MsgVote message with higher term from 2 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 1, vote: 0] rejected MsgVote from 2 [logterm: 1, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 [term: 0] received a MsgVote message with higher term from 2 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 1, vote: 0] rejected MsgVote from 2 [logterm: 1, index: 2] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 [term: 0] received a MsgVote message with higher term from 2 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 1, index: 1] at term 3
 --- PASS: TestVoter (0.00s)
 === RUN   TestLeaderOnlyCommitsLogFromCurrentTerm
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 3
 --- PASS: TestLeaderOnlyCommitsLogFromCurrentTerm (0.00s)
 === RUN   TestSendingSnapshotSetPendingSnapshot
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestSendingSnapshotSetPendingSnapshot (0.00s)
 === RUN   TestPendingSnapshotPauseReplication
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestPendingSnapshotPauseReplication (0.00s)
 === RUN   TestSnapshotFailure
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestSnapshotFailure (0.00s)
 === RUN   TestSnapshotSucceed
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestSnapshotSucceed (0.00s)
 === RUN   TestSnapshotAbort
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestSnapshotAbort (0.00s)
 === RUN   TestProgressLeader
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestProgressLeader (0.00s)
 === RUN   TestProgressResumeByHeartbeatResp
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestProgressResumeByHeartbeatResp (0.00s)
 === RUN   TestProgressPaused
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestProgressPaused (0.00s)
 === RUN   TestProgressFlowControl
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestProgressFlowControl (0.00s)
 === RUN   TestUncommittedEntryLimit
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
---- PASS: TestUncommittedEntryLimit (0.00s)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+--- PASS: TestUncommittedEntryLimit (0.01s)
 === RUN   TestLeaderElection
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 4 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:47 INFO: 4 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 4 [peers: [1,2,3,4], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 4 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 4 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 4 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 5 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 5 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 5 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 5 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 5 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 5 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
-raft2026/04/07 08:43:47 INFO: 4 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 4 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
-raft2026/04/07 08:43:47 INFO: 4 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 4 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 5 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 5 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 5 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 5 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 3 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1, vote: 0] rejected MsgVote from 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1, vote: 0] rejected MsgVote from 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 4 [logterm: 1, index: 2, vote: 0] rejected MsgVote from 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 5 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 5 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 5 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp rejection from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 1 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp rejection from 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 1 MsgVoteResp votes and 2 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp rejection from 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 1 MsgVoteResp votes and 3 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 4 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:13 INFO: 4 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 4 [peers: [1,2,3,4], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 4 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 4 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 4 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 5 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 5 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 5 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 5 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 5 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 5 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
+raft2025/03/06 04:28:13 INFO: 4 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 4 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
+raft2025/03/06 04:28:13 INFO: 4 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 4 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 5 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 5 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 5 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 5 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 3 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1, vote: 0] rejected MsgVote from 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1, vote: 0] rejected MsgVote from 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 4 [logterm: 1, index: 2, vote: 0] rejected MsgVote from 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 5 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 5 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 5 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp rejection from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 1 MsgVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp rejection from 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 1 MsgVoteResp votes and 2 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp rejection from 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 1 MsgVoteResp votes and 3 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
 --- PASS: TestLeaderElection (0.00s)
 === RUN   TestLeaderElectionPreVote
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 4 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:47 INFO: 4 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 4 [peers: [1,2,3,4], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 4 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 4 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 4 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 5 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 5 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 5 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 5 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 5 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 5 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 0
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 1 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 0
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 0
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 0
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 2 at term 0
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 0
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 1 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 0
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 0
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 2 at term 0
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 0
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 1 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 0
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 0
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 1 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 4 at term 0
-raft2026/04/07 08:43:47 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 0
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 4 at term 0
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 0
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 1 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 4 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 5 at term 0
-raft2026/04/07 08:43:47 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 0
-raft2026/04/07 08:43:47 INFO: 5 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 0
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 4 at term 0
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 5 at term 0
-raft2026/04/07 08:43:47 INFO: 1 has received 3 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
-raft2026/04/07 08:43:47 INFO: 4 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 4 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 5 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 5 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 5 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 5 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 3 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 0
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 1 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 4 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 5 at term 0
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1, vote: 0] rejected MsgPreVote from 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1, vote: 0] rejected MsgPreVote from 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 4 [logterm: 1, index: 2, vote: 0] rejected MsgPreVote from 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 5 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 0
-raft2026/04/07 08:43:47 INFO: 1 [term: 0] received a MsgPreVoteResp message with higher term from 2 [term: 1]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 4 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:13 INFO: 4 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 4 [peers: [1,2,3,4], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 4 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 4 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 4 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 5 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 5 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 5 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 5 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 5 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 5 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 0
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 1 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 0
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 0
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 0
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 2 at term 0
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 0
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 1 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 0
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 0
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 2 at term 0
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 0
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 1 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 0
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 0
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 1 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 4 at term 0
+raft2025/03/06 04:28:13 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 0
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 4 at term 0
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 0
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 1 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 4 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 5 at term 0
+raft2025/03/06 04:28:13 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 0
+raft2025/03/06 04:28:13 INFO: 5 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 0
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 4 at term 0
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 5 at term 0
+raft2025/03/06 04:28:13 INFO: 1 has received 3 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
+raft2025/03/06 04:28:13 INFO: 4 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 4 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 5 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 5 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 5 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 5 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 3 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 0
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 1 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 4 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 5 at term 0
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1, vote: 0] rejected MsgPreVote from 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1, vote: 0] rejected MsgPreVote from 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 4 [logterm: 1, index: 2, vote: 0] rejected MsgPreVote from 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 5 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 0
+raft2025/03/06 04:28:13 INFO: 1 [term: 0] received a MsgPreVoteResp message with higher term from 2 [term: 1]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
 --- PASS: TestLeaderElectionPreVote (0.00s)
 === RUN   TestLearnerElectionTimeout
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1) learners=(2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1) learners=(2)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
 --- PASS: TestLearnerElectionTimeout (0.00s)
 === RUN   TestLearnerPromotion
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1) learners=(2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1) learners=(2)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgHeartbeat message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1] sent MsgVote request to 1 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [term: 2] received a MsgVote message with higher term from 2 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 1, vote: 0] cast MsgVote for 2 [logterm: 2, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 1 at term 3
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became leader at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgHeartbeat message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1] sent MsgVote request to 1 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [term: 2] received a MsgVote message with higher term from 2 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 1, vote: 0] cast MsgVote for 2 [logterm: 2, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 1 at term 3
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became leader at term 3
 --- PASS: TestLearnerPromotion (0.00s)
 === RUN   TestLearnerCanVote
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1) learners=(2)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 11, index: 11] at term 2
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 11, index: 11] at term 2
 --- PASS: TestLearnerCanVote (0.00s)
 === RUN   TestLeaderCycle
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 2] sent MsgVote request to 1 at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 2] sent MsgVote request to 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [term: 2] received a MsgVote message with higher term from 3 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgVote for 3 [logterm: 2, index: 2] at term 3
-raft2026/04/07 08:43:47 INFO: 2 [term: 2] received a MsgVote message with higher term from 3 [term: 3]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 2, vote: 0] cast MsgVote for 3 [logterm: 2, index: 2] at term 3
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 1 at term 3
-raft2026/04/07 08:43:47 INFO: 3 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 3 became leader at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 2] sent MsgVote request to 1 at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 2] sent MsgVote request to 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [term: 2] received a MsgVote message with higher term from 3 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgVote for 3 [logterm: 2, index: 2] at term 3
+raft2025/03/06 04:28:13 INFO: 2 [term: 2] received a MsgVote message with higher term from 3 [term: 3]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 2, vote: 0] cast MsgVote for 3 [logterm: 2, index: 2] at term 3
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 1 at term 3
+raft2025/03/06 04:28:13 INFO: 3 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 3 became leader at term 3
 --- PASS: TestLeaderCycle (0.00s)
 === RUN   TestLeaderCyclePreVote
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 0
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 1 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 0
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 0
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 0
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 2 at term 0
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 2 became pre-candidate at term 1
-raft2026/04/07 08:43:47 INFO: 2 received MsgPreVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgPreVote request to 1 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgPreVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 1] cast MsgPreVote for 2 [logterm: 1, index: 1] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1, vote: 1] cast MsgPreVote for 2 [logterm: 1, index: 1] at term 1
-raft2026/04/07 08:43:47 INFO: 2 received MsgPreVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 3 became pre-candidate at term 2
-raft2026/04/07 08:43:47 INFO: 3 received MsgPreVoteResp from 3 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 2] sent MsgPreVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 2] sent MsgPreVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 2] cast MsgPreVote for 3 [logterm: 2, index: 2] at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 2, vote: 2] cast MsgPreVote for 3 [logterm: 2, index: 2] at term 2
-raft2026/04/07 08:43:47 INFO: 3 received MsgPreVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 3 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 2] sent MsgVote request to 1 at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 2] sent MsgVote request to 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [term: 2] received a MsgVote message with higher term from 3 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgVote for 3 [logterm: 2, index: 2] at term 3
-raft2026/04/07 08:43:47 INFO: 2 [term: 2] received a MsgVote message with higher term from 3 [term: 3]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 2, vote: 0] cast MsgVote for 3 [logterm: 2, index: 2] at term 3
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 1 at term 3
-raft2026/04/07 08:43:47 INFO: 3 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 3 became leader at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 0
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 1 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 0
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 0
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 0
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 2 at term 0
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 2 became pre-candidate at term 1
+raft2025/03/06 04:28:13 INFO: 2 received MsgPreVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgPreVote request to 1 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgPreVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 1] cast MsgPreVote for 2 [logterm: 1, index: 1] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1, vote: 1] cast MsgPreVote for 2 [logterm: 1, index: 1] at term 1
+raft2025/03/06 04:28:13 INFO: 2 received MsgPreVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 3 became pre-candidate at term 2
+raft2025/03/06 04:28:13 INFO: 3 received MsgPreVoteResp from 3 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 2] sent MsgPreVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 2] sent MsgPreVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 2] cast MsgPreVote for 3 [logterm: 2, index: 2] at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 2, vote: 2] cast MsgPreVote for 3 [logterm: 2, index: 2] at term 2
+raft2025/03/06 04:28:13 INFO: 3 received MsgPreVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 3 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 2] sent MsgVote request to 1 at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 2] sent MsgVote request to 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [term: 2] received a MsgVote message with higher term from 3 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgVote for 3 [logterm: 2, index: 2] at term 3
+raft2025/03/06 04:28:13 INFO: 2 [term: 2] received a MsgVote message with higher term from 3 [term: 3]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 2, vote: 0] cast MsgVote for 3 [logterm: 2, index: 2] at term 3
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 1 at term 3
+raft2025/03/06 04:28:13 INFO: 3 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 3 became leader at term 3
 --- PASS: TestLeaderCyclePreVote (0.00s)
 === RUN   TestLeaderElectionOverwriteNewerLogs
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [], term: 2, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [], term: 2, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 4 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 5 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1, vote: 0] cast MsgVote for 1 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1, vote: 0] rejected MsgVote from 1 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 4 [logterm: 0, index: 0, vote: 3] rejected MsgVote from 1 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 5 [logterm: 0, index: 0, vote: 3] rejected MsgVote from 1 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp rejection from 3 at term 2
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp rejection from 4 at term 2
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 2 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp rejection from 5 at term 2
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 3 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 3 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 4 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 5 at term 3
-raft2026/04/07 08:43:47 INFO: 2 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1, vote: 0] cast MsgVote for 1 [logterm: 1, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 3 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1, vote: 0] rejected MsgVote from 1 [logterm: 1, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 4 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 4 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 1, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 5 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 5 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 5 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 1, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp rejection from 3 at term 3
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 4 at term 3
-raft2026/04/07 08:43:47 INFO: 1 has received 3 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 3
-raft2026/04/07 08:43:47 INFO: found conflict at index 1 [existing term: 2, conflicting term: 1]
-raft2026/04/07 08:43:47 INFO: replace the unstable entries from index 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [], term: 2, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [], term: 2, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 4 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 5 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1, vote: 0] cast MsgVote for 1 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1, vote: 0] rejected MsgVote from 1 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 4 [logterm: 0, index: 0, vote: 3] rejected MsgVote from 1 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 5 [logterm: 0, index: 0, vote: 3] rejected MsgVote from 1 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp rejection from 3 at term 2
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp rejection from 4 at term 2
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 2 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp rejection from 5 at term 2
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 3 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 3 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 4 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 5 at term 3
+raft2025/03/06 04:28:13 INFO: 2 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1, vote: 0] cast MsgVote for 1 [logterm: 1, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 3 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1, vote: 0] rejected MsgVote from 1 [logterm: 1, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 4 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 4 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 1, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 5 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 5 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 5 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 1, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp rejection from 3 at term 3
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 4 at term 3
+raft2025/03/06 04:28:13 INFO: 1 has received 3 MsgVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 3
+raft2025/03/06 04:28:13 INFO: found conflict at index 1 [existing term: 2, conflicting term: 1]
+raft2025/03/06 04:28:13 INFO: replace the unstable entries from index 1
 --- PASS: TestLeaderElectionOverwriteNewerLogs (0.00s)
 === RUN   TestLeaderElectionOverwriteNewerLogsPreVote
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [], term: 2, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [], term: 2, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgPreVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgPreVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgPreVote request to 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgPreVote request to 5 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1, vote: 0] cast MsgPreVote for 1 [logterm: 1, index: 1] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1, vote: 0] rejected MsgPreVote from 1 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 4 [logterm: 0, index: 0, vote: 3] rejected MsgPreVote from 1 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 5 [logterm: 0, index: 0, vote: 3] rejected MsgPreVote from 1 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgPreVoteResp message with higher term from 3 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgPreVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgPreVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgPreVote request to 4 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgPreVote request to 5 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1, vote: 0] cast MsgPreVote for 1 [logterm: 1, index: 1] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1, vote: 0] rejected MsgPreVote from 1 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 4 [logterm: 0, index: 0, vote: 3] cast MsgPreVote for 1 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 5 [logterm: 0, index: 0, vote: 3] cast MsgPreVote for 1 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp rejection from 3 at term 2
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgPreVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 4 at term 2
-raft2026/04/07 08:43:47 INFO: 1 has received 3 MsgPreVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 3 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 4 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 5 at term 3
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1, vote: 0] cast MsgVote for 1 [logterm: 1, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 3 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1, vote: 0] rejected MsgVote from 1 [logterm: 1, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 4 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 4 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 1, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 5 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 5 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 5 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 1, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp rejection from 3 at term 3
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 4 at term 3
-raft2026/04/07 08:43:47 INFO: 1 has received 3 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 3
-raft2026/04/07 08:43:47 INFO: found conflict at index 1 [existing term: 2, conflicting term: 1]
-raft2026/04/07 08:43:47 INFO: replace the unstable entries from index 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 1, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [], term: 2, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [], term: 2, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgPreVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgPreVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgPreVote request to 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgPreVote request to 5 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1, vote: 0] cast MsgPreVote for 1 [logterm: 1, index: 1] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1, vote: 0] rejected MsgPreVote from 1 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 4 [logterm: 0, index: 0, vote: 3] rejected MsgPreVote from 1 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 5 [logterm: 0, index: 0, vote: 3] rejected MsgPreVote from 1 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgPreVoteResp message with higher term from 3 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgPreVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgPreVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgPreVote request to 4 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgPreVote request to 5 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1, vote: 0] cast MsgPreVote for 1 [logterm: 1, index: 1] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1, vote: 0] rejected MsgPreVote from 1 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 4 [logterm: 0, index: 0, vote: 3] cast MsgPreVote for 1 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 5 [logterm: 0, index: 0, vote: 3] cast MsgPreVote for 1 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp rejection from 3 at term 2
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgPreVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 4 at term 2
+raft2025/03/06 04:28:13 INFO: 1 has received 3 MsgPreVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 3 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 4 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1] sent MsgVote request to 5 at term 3
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1, vote: 0] cast MsgVote for 1 [logterm: 1, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 3 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1, vote: 0] rejected MsgVote from 1 [logterm: 1, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 4 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 4 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 1, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 5 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 5 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 5 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 1, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp rejection from 3 at term 3
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 4 at term 3
+raft2025/03/06 04:28:13 INFO: 1 has received 3 MsgVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 3
+raft2025/03/06 04:28:13 INFO: found conflict at index 1 [existing term: 2, conflicting term: 1]
+raft2025/03/06 04:28:13 INFO: replace the unstable entries from index 1
 --- PASS: TestLeaderElectionOverwriteNewerLogsPreVote (0.00s)
 === RUN   TestVoteFromAnyState
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0, vote: 0] cast MsgVote for 2 [logterm: 2, index: 42] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 2] received a MsgVote message with higher term from 2 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0, vote: 0] cast MsgVote for 2 [logterm: 3, index: 42] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 2] received a MsgVote message with higher term from 2 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 1, vote: 0] cast MsgVote for 2 [logterm: 3, index: 42] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0, vote: 0] cast MsgVote for 2 [logterm: 2, index: 42] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0, vote: 0] cast MsgVote for 2 [logterm: 2, index: 42] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 2] received a MsgVote message with higher term from 2 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0, vote: 0] cast MsgVote for 2 [logterm: 3, index: 42] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 2] received a MsgVote message with higher term from 2 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 1, vote: 0] cast MsgVote for 2 [logterm: 3, index: 42] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0, vote: 0] cast MsgVote for 2 [logterm: 2, index: 42] at term 2
 --- PASS: TestVoteFromAnyState (0.00s)
 === RUN   TestPreVoteFromAnyState
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 2 [logterm: 2, index: 42] at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0, vote: 1] cast MsgPreVote for 2 [logterm: 3, index: 42] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 1, vote: 1] cast MsgPreVote for 2 [logterm: 3, index: 42] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 2 [logterm: 2, index: 42] at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 2 [logterm: 2, index: 42] at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0, vote: 1] cast MsgPreVote for 2 [logterm: 3, index: 42] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 1, vote: 1] cast MsgPreVote for 2 [logterm: 3, index: 42] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 2 [logterm: 2, index: 42] at term 1
 --- PASS: TestPreVoteFromAnyState (0.00s)
 === RUN   TestLogReplication
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 2] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 2] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 2, vote: 0] cast MsgVote for 2 [logterm: 1, index: 2] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 2, vote: 0] cast MsgVote for 2 [logterm: 1, index: 2] at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became leader at term 2
---- PASS: TestLogReplication (0.00s)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 2] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 2] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 2, vote: 0] cast MsgVote for 2 [logterm: 1, index: 2] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 2, vote: 0] cast MsgVote for 2 [logterm: 1, index: 2] at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became leader at term 2
+--- PASS: TestLogReplication (0.02s)
 === RUN   TestLearnerLogReplication
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1) learners=(2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1) learners=(2)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgHeartbeat message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgHeartbeat message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 2
 --- PASS: TestLearnerLogReplication (0.00s)
 === RUN   TestSingleNodeCommit
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestSingleNodeCommit (0.00s)
 === RUN   TestCannotCommitWithoutNewTermEntry
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 4 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 4 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 4 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 5 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 5 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 5 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 4 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 4 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 5 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 5 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 5 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 3 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 3] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 3] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 3] sent MsgVote request to 4 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 3] sent MsgVote request to 5 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 3, vote: 0] cast MsgVote for 2 [logterm: 1, index: 3] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 3] at term 2
-raft2026/04/07 08:43:47 INFO: 4 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 4 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 4 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 3] at term 2
-raft2026/04/07 08:43:47 INFO: 5 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 5 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 5 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 3] at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 3 at term 2
-raft2026/04/07 08:43:47 INFO: 2 has received 3 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 4 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 4 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 4 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 5 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 5 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 5 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 4 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 4 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 5 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 5 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 5 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 3 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 3] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 3] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 3] sent MsgVote request to 4 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 3] sent MsgVote request to 5 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 3, vote: 0] cast MsgVote for 2 [logterm: 1, index: 3] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 3] at term 2
+raft2025/03/06 04:28:13 INFO: 4 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 4 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 4 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 3] at term 2
+raft2025/03/06 04:28:13 INFO: 5 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 5 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 5 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 3] at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 3 at term 2
+raft2025/03/06 04:28:13 INFO: 2 has received 3 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became leader at term 2
 --- PASS: TestCannotCommitWithoutNewTermEntry (0.00s)
 === RUN   TestCommitWithoutNewTermEntry
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 4 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 4 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 4 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 5 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 5 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 5 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 4 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 4 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 5 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 5 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 5 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 3 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 3] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 3] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 3] sent MsgVote request to 4 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 3] sent MsgVote request to 5 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 3, vote: 0] cast MsgVote for 2 [logterm: 1, index: 3] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 3] at term 2
-raft2026/04/07 08:43:47 INFO: 4 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 4 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 4 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 3] at term 2
-raft2026/04/07 08:43:47 INFO: 5 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 5 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 5 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 3] at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 3 at term 2
-raft2026/04/07 08:43:47 INFO: 2 has received 3 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 4 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 4 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 4 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 5 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 5 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 5 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 4 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 4 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 5 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 5 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 5 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 3 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 3] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 3] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 3] sent MsgVote request to 4 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 3] sent MsgVote request to 5 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 3, vote: 0] cast MsgVote for 2 [logterm: 1, index: 3] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 3] at term 2
+raft2025/03/06 04:28:13 INFO: 4 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 4 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 4 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 3] at term 2
+raft2025/03/06 04:28:13 INFO: 5 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 5 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 5 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 3] at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 3 at term 2
+raft2025/03/06 04:28:13 INFO: 2 has received 3 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became leader at term 2
 --- PASS: TestCommitWithoutNewTermEntry (0.00s)
 === RUN   TestDuelingCandidates
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0] sent MsgVote request to 1 at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1, vote: 1] rejected MsgVote from 3 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp rejection from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 3 has received 1 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 3 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 0] rejected MsgVote from 3 [logterm: 0, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgVote message with higher term from 3 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1, vote: 0] rejected MsgVote from 3 [logterm: 0, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp rejection from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 3 has received 1 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp rejection from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 3 has received 1 MsgVoteResp votes and 2 vote rejections
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0] sent MsgVote request to 1 at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1, vote: 1] rejected MsgVote from 3 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp rejection from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 3 has received 1 MsgVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 3 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 0] rejected MsgVote from 3 [logterm: 0, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgVote message with higher term from 3 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1, vote: 0] rejected MsgVote from 3 [logterm: 0, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp rejection from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 3 has received 1 MsgVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp rejection from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 3 has received 1 MsgVoteResp votes and 2 vote rejections
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 2
 --- PASS: TestDuelingCandidates (0.00s)
 === RUN   TestDuelingPreCandidates
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 0
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 1 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 0
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 0
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 0
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 2 at term 0
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 3 became pre-candidate at term 0
-raft2026/04/07 08:43:47 INFO: 3 received MsgPreVoteResp from 3 at term 0
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0] sent MsgPreVote request to 1 at term 0
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 0
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1, vote: 1] rejected MsgPreVote from 3 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgPreVoteResp message with higher term from 2 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 3 became pre-candidate at term 1
-raft2026/04/07 08:43:47 INFO: 3 received MsgPreVoteResp from 3 at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0] sent MsgPreVote request to 1 at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 1] rejected MsgPreVote from 3 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1, vote: 1] rejected MsgPreVote from 3 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 received MsgPreVoteResp rejection from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 3 has received 1 MsgPreVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 3 received MsgPreVoteResp rejection from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 3 has received 1 MsgPreVoteResp votes and 2 vote rejections
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 0
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 1 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 0
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 0
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 0
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 2 at term 0
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 3 became pre-candidate at term 0
+raft2025/03/06 04:28:13 INFO: 3 received MsgPreVoteResp from 3 at term 0
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0] sent MsgPreVote request to 1 at term 0
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 0
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1, vote: 1] rejected MsgPreVote from 3 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgPreVoteResp message with higher term from 2 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 3 became pre-candidate at term 1
+raft2025/03/06 04:28:13 INFO: 3 received MsgPreVoteResp from 3 at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0] sent MsgPreVote request to 1 at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 1] rejected MsgPreVote from 3 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1, vote: 1] rejected MsgPreVote from 3 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 received MsgPreVoteResp rejection from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 3 has received 1 MsgPreVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 3 received MsgPreVoteResp rejection from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 3 has received 1 MsgPreVoteResp votes and 2 vote rejections
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
 --- PASS: TestDuelingPreCandidates (0.00s)
 === RUN   TestCandidateConcede
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0] sent MsgVote request to 1 at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 3 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 3 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 3 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 3 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0] sent MsgVote request to 1 at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 3 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 3 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 3 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 3 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
 --- PASS: TestCandidateConcede (0.00s)
 === RUN   TestSingleNodeCandidate
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestSingleNodeCandidate (0.00s)
 === RUN   TestSingleNodePreCandidate
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 0
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 1 at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 0
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 1 at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestSingleNodePreCandidate (0.00s)
 === RUN   TestOldMessages
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2] sent MsgVote request to 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2] sent MsgVote request to 3 at term 3
-raft2026/04/07 08:43:47 INFO: 2 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 2, vote: 0] cast MsgVote for 1 [logterm: 2, index: 2] at term 3
-raft2026/04/07 08:43:47 INFO: 3 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 2, vote: 0] cast MsgVote for 1 [logterm: 2, index: 2] at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 3
-raft2026/04/07 08:43:47 INFO: 1 [term: 3] ignored a MsgApp message with lower term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2] sent MsgVote request to 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2] sent MsgVote request to 3 at term 3
+raft2025/03/06 04:28:13 INFO: 2 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 2, vote: 0] cast MsgVote for 1 [logterm: 2, index: 2] at term 3
+raft2025/03/06 04:28:13 INFO: 3 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 2, vote: 0] cast MsgVote for 1 [logterm: 2, index: 2] at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 3
+raft2025/03/06 04:28:13 INFO: 1 [term: 3] ignored a MsgApp message with lower term from 2 [term: 2]
 --- PASS: TestOldMessages (0.00s)
 === RUN   TestProposal
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 4 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:47 INFO: 4 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 4 [peers: [1,2,3,4], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 4 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 4 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 4 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 5 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:47 INFO: 5 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 5 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 4 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:13 INFO: 4 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 4 [peers: [1,2,3,4], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 4 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 4 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 4 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 5 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:13 INFO: 5 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 5 [peers: [1,2,3,4,5], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
     raft_test.go:1079: #1: peer 3 empty log
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 no leader at term 1; dropping proposal
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 no leader at term 1; dropping proposal
     raft_test.go:1079: #2: peer 2 empty log
     raft_test.go:1079: #2: peer 3 empty log
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
-raft2026/04/07 08:43:47 INFO: 4 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 4 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 no leader at term 1; dropping proposal
-    raft_test.go:1079: #3: peer 2 empty log
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
+raft2025/03/06 04:28:13 INFO: 4 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 4 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 no leader at term 1; dropping proposal
     raft_test.go:1079: #3: peer 3 empty log
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
-raft2026/04/07 08:43:47 INFO: 4 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 4 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 5 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 5 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 5 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 4 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 5 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 3 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+    raft_test.go:1079: #3: peer 2 empty log
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 5 at term 1
+raft2025/03/06 04:28:13 INFO: 4 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 4 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 4 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 5 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 5 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 5 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 4 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 5 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 3 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
     raft_test.go:1079: #4: peer 2 empty log
     raft_test.go:1079: #4: peer 3 empty log
 --- PASS: TestProposal (0.00s)
 === RUN   TestProposalByProxy
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
     raft_test.go:1117: #1: peer 3 empty log
 --- PASS: TestProposalByProxy (0.00s)
 === RUN   TestCommit
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 2, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 2, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 2, commit: 0, applied: 0, lastindex: 1, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 2, commit: 0, applied: 0, lastindex: 2, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 2, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 2, commit: 0, applied: 0, lastindex: 2, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 2, commit: 0, applied: 0, lastindex: 2, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 2, commit: 0, applied: 0, lastindex: 2, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 2, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 2, commit: 0, applied: 0, lastindex: 2, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 2, commit: 0, applied: 0, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 2, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 2, commit: 0, applied: 0, lastindex: 1, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 2, commit: 0, applied: 0, lastindex: 2, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 2, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 2, commit: 0, applied: 0, lastindex: 2, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 2, commit: 0, applied: 0, lastindex: 2, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 2, commit: 0, applied: 0, lastindex: 2, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 2, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 2, commit: 0, applied: 0, lastindex: 2, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3 4)
 --- PASS: TestCommit (0.00s)
 === RUN   TestPastElectionTimeout
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
 --- PASS: TestPastElectionTimeout (0.00s)
 === RUN   TestStepIgnoreOldTermMsg
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [term: 2] ignored a MsgApp message with lower term from 0 [term: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [term: 2] ignored a MsgApp message with lower term from 0 [term: 1]
 --- PASS: TestStepIgnoreOldTermMsg (0.00s)
 === RUN   TestHandleMsgApp
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: found conflict at index 1 [existing term: 1, conflicting term: 2]
-raft2026/04/07 08:43:47 INFO: replace the unstable entries from index 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: found conflict at index 1 [existing term: 1, conflicting term: 2]
+raft2025/03/06 04:28:13 INFO: replace the unstable entries from index 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 2, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
 --- PASS: TestHandleMsgApp (0.00s)
 === RUN   TestHandleHeartbeat
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 3, lastterm: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 3, lastterm: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 3, lastterm: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 3, lastterm: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
 --- PASS: TestHandleHeartbeat (0.00s)
 === RUN   TestHandleHeartbeatResp
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 3, lastterm: 3]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 3, lastterm: 3]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestHandleHeartbeatResp (0.00s)
 === RUN   TestRaftFreesReadOnlyMem
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestRaftFreesReadOnlyMem (0.00s)
 === RUN   TestMsgAppRespWaitReset
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestMsgAppRespWaitReset (0.00s)
 === RUN   TestRecvMsgVote
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 0, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 1, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 2, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgVote for 2 [logterm: 3, index: 0] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 0, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 2, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgVote for 2 [logterm: 3, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 0, index: 2] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 1, index: 2] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgVote for 2 [logterm: 2, index: 2] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgVote for 2 [logterm: 3, index: 2] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 0, index: 3] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 1, index: 3] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgVote for 2 [logterm: 2, index: 3] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgVote for 2 [logterm: 3, index: 3] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 2] cast MsgVote for 2 [logterm: 2, index: 3] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 1] rejected MsgVote from 2 [logterm: 2, index: 3] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 1] rejected MsgVote from 2 [logterm: 3, index: 3] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 1] rejected MsgVote from 2 [logterm: 3, index: 3] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 1] rejected MsgVote from 2 [logterm: 3, index: 3] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 0, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 1, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 2, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgVote for 2 [logterm: 3, index: 0] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 0, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 2, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgVote for 2 [logterm: 3, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 0, index: 2] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 1, index: 2] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgVote for 2 [logterm: 2, index: 2] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgVote for 2 [logterm: 3, index: 2] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 0, index: 3] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgVote from 2 [logterm: 1, index: 3] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgVote for 2 [logterm: 2, index: 3] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgVote for 2 [logterm: 3, index: 3] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 2] cast MsgVote for 2 [logterm: 2, index: 3] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 1] rejected MsgVote from 2 [logterm: 2, index: 3] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 1] rejected MsgVote from 2 [logterm: 3, index: 3] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 1] rejected MsgVote from 2 [logterm: 3, index: 3] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 1] rejected MsgVote from 2 [logterm: 3, index: 3] at term 3
 --- PASS: TestRecvMsgVote (0.00s)
 === RUN   TestRecvMsgPreVote
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 2 [logterm: 0, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 2 [logterm: 1, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 2 [logterm: 2, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgPreVote for 2 [logterm: 3, index: 0] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 2 [logterm: 0, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 2 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 2 [logterm: 2, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgPreVote for 2 [logterm: 3, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 2 [logterm: 0, index: 2] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 2 [logterm: 1, index: 2] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgPreVote for 2 [logterm: 2, index: 2] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgPreVote for 2 [logterm: 3, index: 2] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 2 [logterm: 0, index: 3] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 2 [logterm: 1, index: 3] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgPreVote for 2 [logterm: 2, index: 3] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgPreVote for 2 [logterm: 3, index: 3] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 2] cast MsgPreVote for 2 [logterm: 2, index: 3] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 1] rejected MsgPreVote from 2 [logterm: 2, index: 3] at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 1] rejected MsgPreVote from 2 [logterm: 3, index: 3] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 1] rejected MsgPreVote from 2 [logterm: 3, index: 3] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 1] rejected MsgPreVote from 2 [logterm: 3, index: 3] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 2 [logterm: 0, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 2 [logterm: 1, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 2 [logterm: 2, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgPreVote for 2 [logterm: 3, index: 0] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 2 [logterm: 0, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 2 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 2 [logterm: 2, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgPreVote for 2 [logterm: 3, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 2 [logterm: 0, index: 2] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 2 [logterm: 1, index: 2] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgPreVote for 2 [logterm: 2, index: 2] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgPreVote for 2 [logterm: 3, index: 2] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 2 [logterm: 0, index: 3] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 2 [logterm: 1, index: 3] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgPreVote for 2 [logterm: 2, index: 3] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 0] cast MsgPreVote for 2 [logterm: 3, index: 3] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 2] cast MsgPreVote for 2 [logterm: 2, index: 3] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 1] rejected MsgPreVote from 2 [logterm: 2, index: 3] at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 1] rejected MsgPreVote from 2 [logterm: 3, index: 3] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 1] rejected MsgPreVote from 2 [logterm: 3, index: 3] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 1] rejected MsgPreVote from 2 [logterm: 3, index: 3] at term 3
 --- PASS: TestRecvMsgPreVote (0.00s)
 === RUN   TestStateTransition
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 0
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 0
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 0
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 0
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 0
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 0
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 0
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 0
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 0
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 0
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 0
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 0
 --- PASS: TestStateTransition (0.00s)
 === RUN   TestAllServerStepdown
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0, vote: 0] cast MsgVote for 2 [logterm: 3, index: 0] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 0
-raft2026/04/07 08:43:47 INFO: 1 [term: 0] received a MsgVote message with higher term from 2 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0, vote: 0] cast MsgVote for 2 [logterm: 3, index: 0] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0, vote: 0] cast MsgVote for 2 [logterm: 3, index: 0] at term 3
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 3, index: 0] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0, vote: 0] cast MsgVote for 2 [logterm: 3, index: 0] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 0
+raft2025/03/06 04:28:13 INFO: 1 [term: 0] received a MsgVote message with higher term from 2 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0, vote: 0] cast MsgVote for 2 [logterm: 3, index: 0] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0, vote: 0] cast MsgVote for 2 [logterm: 3, index: 0] at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 3, index: 0] at term 3
 --- PASS: TestAllServerStepdown (0.00s)
 === RUN   TestCandidateResetTermMsgHeartbeat
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2] sent MsgVote request to 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2] sent MsgVote request to 3 at term 3
-raft2026/04/07 08:43:47 INFO: 2 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 2, vote: 0] cast MsgVote for 1 [logterm: 2, index: 2] at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 3
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 2] received a MsgHeartbeat message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [term: 3] ignored a MsgVote message with lower term from 3 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 [term: 3] ignored a MsgVote message with lower term from 3 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2] sent MsgVote request to 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2] sent MsgVote request to 3 at term 3
+raft2025/03/06 04:28:13 INFO: 2 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 2, vote: 0] cast MsgVote for 1 [logterm: 2, index: 2] at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 3
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 2] received a MsgHeartbeat message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [term: 3] ignored a MsgVote message with lower term from 3 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 [term: 3] ignored a MsgVote message with lower term from 3 [term: 2]
 --- PASS: TestCandidateResetTermMsgHeartbeat (0.00s)
 === RUN   TestCandidateResetTermMsgApp
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2] sent MsgVote request to 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2] sent MsgVote request to 3 at term 3
-raft2026/04/07 08:43:47 INFO: 2 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 2, vote: 0] cast MsgVote for 1 [logterm: 2, index: 2] at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 3
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 2] received a MsgApp message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [term: 3] ignored a MsgVote message with lower term from 3 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 [term: 3] ignored a MsgVote message with lower term from 3 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2] sent MsgVote request to 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2] sent MsgVote request to 3 at term 3
+raft2025/03/06 04:28:13 INFO: 2 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 2, vote: 0] cast MsgVote for 1 [logterm: 2, index: 2] at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 3
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 2] received a MsgApp message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [term: 3] ignored a MsgVote message with lower term from 3 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 [term: 3] ignored a MsgVote message with lower term from 3 [term: 2]
 --- PASS: TestCandidateResetTermMsgApp (0.00s)
 === RUN   TestLeaderStepdownWhenQuorumActive
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestLeaderStepdownWhenQuorumActive (0.00s)
 === RUN   TestLeaderStepdownWhenQuorumLost
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 WARN: 1 stepped down to follower since quorum is not active
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 WARN: 1 stepped down to follower since quorum is not active
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
 --- PASS: TestLeaderStepdownWhenQuorumLost (0.00s)
 === RUN   TestLeaderSupersedingWithCheckQuorum
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 1] ignored MsgVote from 3 [logterm: 1, index: 1] at term 1: lease is not expired (remaining ticks: 10)
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1, vote: 1] ignored MsgVote from 3 [logterm: 1, index: 1] at term 1: lease is not expired (remaining ticks: 10)
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 1 at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 1] ignored MsgVote from 3 [logterm: 1, index: 1] at term 1: lease is not expired (remaining ticks: 10)
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgVote message with higher term from 3 [term: 3]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1, vote: 0] cast MsgVote for 3 [logterm: 1, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 2 at term 3
-raft2026/04/07 08:43:47 INFO: 3 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 3 became leader at term 3
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgApp message with higher term from 3 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 1] ignored MsgVote from 3 [logterm: 1, index: 1] at term 1: lease is not expired (remaining ticks: 10)
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1, vote: 1] ignored MsgVote from 3 [logterm: 1, index: 1] at term 1: lease is not expired (remaining ticks: 10)
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 1 at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 1] ignored MsgVote from 3 [logterm: 1, index: 1] at term 1: lease is not expired (remaining ticks: 10)
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgVote message with higher term from 3 [term: 3]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1, vote: 0] cast MsgVote for 3 [logterm: 1, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 2 at term 3
+raft2025/03/06 04:28:13 INFO: 3 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 3 became leader at term 3
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgApp message with higher term from 3 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
 --- PASS: TestLeaderSupersedingWithCheckQuorum (0.00s)
 === RUN   TestLeaderElectionWithCheckQuorum
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 1] ignored MsgVote from 3 [logterm: 1, index: 1] at term 1: lease is not expired (remaining ticks: 10)
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgVote message with higher term from 3 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1, vote: 0] cast MsgVote for 3 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 3 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 3 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgAppResp message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 1] ignored MsgVote from 3 [logterm: 1, index: 1] at term 1: lease is not expired (remaining ticks: 10)
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgVote message with higher term from 3 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1, vote: 0] cast MsgVote for 3 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 3 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 3 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgAppResp message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
 --- PASS: TestLeaderElectionWithCheckQuorum (0.00s)
 === RUN   TestFreeStuckCandidateWithCheckQuorum
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1, vote: 1] ignored MsgVote from 3 [logterm: 1, index: 1] at term 1: lease is not expired (remaining ticks: 10)
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 1 at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 2 at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1, vote: 1] ignored MsgVote from 3 [logterm: 1, index: 1] at term 1: lease is not expired (remaining ticks: 10)
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgAppResp message with higher term from 3 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 3
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 4
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 4
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 1 at term 4
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 2 at term 4
-raft2026/04/07 08:43:47 INFO: 1 [term: 3] received a MsgVote message with higher term from 3 [term: 4]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 4
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 3 [logterm: 1, index: 1] at term 4
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1, vote: 1] ignored MsgVote from 3 [logterm: 1, index: 1] at term 1: lease is not expired (remaining ticks: 10)
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 1 at term 4
-raft2026/04/07 08:43:47 INFO: 3 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 3 became leader at term 4
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgApp message with higher term from 3 [term: 4]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 4
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1, vote: 1] ignored MsgVote from 3 [logterm: 1, index: 1] at term 1: lease is not expired (remaining ticks: 10)
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 1 at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 2 at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1, vote: 1] ignored MsgVote from 3 [logterm: 1, index: 1] at term 1: lease is not expired (remaining ticks: 10)
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgAppResp message with higher term from 3 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 3
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 4
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 4
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 1 at term 4
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1] sent MsgVote request to 2 at term 4
+raft2025/03/06 04:28:13 INFO: 1 [term: 3] received a MsgVote message with higher term from 3 [term: 4]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 4
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 3 [logterm: 1, index: 1] at term 4
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1, vote: 1] ignored MsgVote from 3 [logterm: 1, index: 1] at term 1: lease is not expired (remaining ticks: 10)
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 1 at term 4
+raft2025/03/06 04:28:13 INFO: 3 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 3 became leader at term 4
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgApp message with higher term from 3 [term: 4]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 4
 --- PASS: TestFreeStuckCandidateWithCheckQuorum (0.00s)
 === RUN   TestNonPromotableVoterWithCheckQuorum
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestNonPromotableVoterWithCheckQuorum (0.00s)
 === RUN   TestDisruptiveFollower
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 1 at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 1, vote: 1] ignored MsgVote from 3 [logterm: 2, index: 1] at term 2: lease is not expired (remaining ticks: 10)
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1, vote: 1] ignored MsgVote from 3 [logterm: 2, index: 1] at term 2: lease is not expired (remaining ticks: 10)
-raft2026/04/07 08:43:47 INFO: 1 [term: 2] received a MsgAppResp message with higher term from 3 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 1 at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 1, vote: 1] ignored MsgVote from 3 [logterm: 2, index: 1] at term 2: lease is not expired (remaining ticks: 10)
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1, vote: 1] ignored MsgVote from 3 [logterm: 2, index: 1] at term 2: lease is not expired (remaining ticks: 10)
+raft2025/03/06 04:28:13 INFO: 1 [term: 2] received a MsgAppResp message with higher term from 3 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
 --- PASS: TestDisruptiveFollower (0.00s)
 === RUN   TestDisruptiveFollowerPreVote
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 3 became pre-candidate at term 2
-raft2026/04/07 08:43:47 INFO: 3 received MsgPreVoteResp from 3 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 4, vote: 1] ignored MsgPreVote from 3 [logterm: 2, index: 1] at term 2: lease is not expired (remaining ticks: 10)
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 4, vote: 1] ignored MsgPreVote from 3 [logterm: 2, index: 1] at term 2: lease is not expired (remaining ticks: 10)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 3 became pre-candidate at term 2
+raft2025/03/06 04:28:13 INFO: 3 received MsgPreVoteResp from 3 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 4, vote: 1] ignored MsgPreVote from 3 [logterm: 2, index: 1] at term 2: lease is not expired (remaining ticks: 10)
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 4, vote: 1] ignored MsgPreVote from 3 [logterm: 2, index: 1] at term 2: lease is not expired (remaining ticks: 10)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 2
 --- PASS: TestDisruptiveFollowerPreVote (0.00s)
 === RUN   TestReadOnlyOptionSafe
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestReadOnlyOptionSafe (0.00s)
 === RUN   TestReadOnlyWithLearner
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1) learners=(2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1) learners=(2)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgApp message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgApp message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
 --- PASS: TestReadOnlyWithLearner (0.00s)
 === RUN   TestReadOnlyOptionLease
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestReadOnlyOptionLease (0.00s)
 === RUN   TestReadOnlyForNewLeader
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 1, commit: 1, applied: 1, lastindex: 2, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 1, commit: 2, applied: 2, lastindex: 2, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 1, commit: 2, applied: 2, lastindex: 2, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 2] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 2] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 2, vote: 0] cast MsgVote for 1 [logterm: 1, index: 2] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 2, vote: 0] cast MsgVote for 1 [logterm: 1, index: 2] at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 1, commit: 1, applied: 1, lastindex: 2, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 1, commit: 2, applied: 2, lastindex: 2, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 1, commit: 2, applied: 2, lastindex: 2, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 2] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 2] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 2, vote: 0] cast MsgVote for 1 [logterm: 1, index: 2] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 2, vote: 0] cast MsgVote for 1 [logterm: 1, index: 2] at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 2
 --- PASS: TestReadOnlyForNewLeader (0.00s)
 === RUN   TestLeaderAppResp
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestLeaderAppResp (0.00s)
 === RUN   TestBcastBeat
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 1000, applied: 1000, lastindex: 1000, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 1000, applied: 1000, lastindex: 1000, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 2
 --- PASS: TestBcastBeat (0.00s)
 === RUN   TestRecvMsgBeat
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
 --- PASS: TestRecvMsgBeat (0.00s)
 === RUN   TestLeaderIncreaseNext
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestLeaderIncreaseNext (0.00s)
 === RUN   TestSendAppendForProgressProbe
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestSendAppendForProgressProbe (0.00s)
 === RUN   TestSendAppendForProgressReplicate
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestSendAppendForProgressReplicate (0.00s)
 === RUN   TestSendAppendForProgressSnapshot
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestSendAppendForProgressSnapshot (0.00s)
 === RUN   TestRecvMsgUnreachable
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 3, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 3, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestRecvMsgUnreachable (0.00s)
 === RUN   TestRestore
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
 --- PASS: TestRestore (0.00s)
 === RUN   TestRestoreWithLearner
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2) learners=(3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2) learners=(3)
-raft2026/04/07 08:43:47 INFO: 3 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2) learners=(3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2) learners=(3)
+raft2025/03/06 04:28:13 INFO: 3 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
 --- PASS: TestRestoreWithLearner (0.00s)
 === RUN   TestRestoreWithVotersOutgoing
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(2 3 4)&&(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(2 3 4)&&(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
 --- PASS: TestRestoreWithVotersOutgoing (0.00s)
 === RUN   TestRestoreVoterToLearner
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2) learners=(3)
-raft2026/04/07 08:43:47 INFO: 3 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2) learners=(3)
+raft2025/03/06 04:28:13 INFO: 3 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
 --- PASS: TestRestoreVoterToLearner (0.00s)
 === RUN   TestRestoreLearnerPromotion
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2) learners=(3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2) learners=(3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
 --- PASS: TestRestoreLearnerPromotion (0.00s)
 === RUN   TestLearnerReceiveSnapshot
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1) learners=(2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1) learners=(2)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1) learners=(2)
-raft2026/04/07 08:43:47 INFO: 1 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgHeartbeat message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1) learners=(2)
-raft2026/04/07 08:43:47 INFO: 2 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 2 [commit: 11] restored snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 1 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgHeartbeat message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 2 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 2 [commit: 11] restored snapshot [index: 11, term: 11]
 --- PASS: TestLearnerReceiveSnapshot (0.00s)
 === RUN   TestRestoreIgnoreSnapshot
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [commit: 1, lastindex: 3, lastterm: 1] fast-forwarded commit to snapshot [index: 2, term: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [commit: 1, lastindex: 3, lastterm: 1] fast-forwarded commit to snapshot [index: 2, term: 1]
 --- PASS: TestRestoreIgnoreSnapshot (0.00s)
 === RUN   TestProvideSnap
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestProvideSnap (0.00s)
 === RUN   TestIgnoreProvidingSnap
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestIgnoreProvidingSnap (0.00s)
 === RUN   TestRestoreFromSnapMsg
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgSnap message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 2
-raft2026/04/07 08:43:47 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 2 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
-raft2026/04/07 08:43:47 INFO: 2 [commit: 11] restored snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgSnap message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:13 INFO: log [committed=0, applied=0, unstable.offset=1, len(unstable.Entries)=0] starts to restore snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 2 [commit: 11, lastindex: 11, lastterm: 11] restored snapshot [index: 11, term: 11]
+raft2025/03/06 04:28:13 INFO: 2 [commit: 11] restored snapshot [index: 11, term: 11]
 --- PASS: TestRestoreFromSnapMsg (0.00s)
 === RUN   TestSlowNodeRestore
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: log [committed=1, applied=0, unstable.offset=1, len(unstable.Entries)=1] starts to restore snapshot [index: 102, term: 1]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 [commit: 102, lastindex: 102, lastterm: 1] restored snapshot [index: 102, term: 1]
-raft2026/04/07 08:43:47 INFO: 3 [commit: 102] restored snapshot [index: 102, term: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: log [committed=1, applied=0, unstable.offset=1, len(unstable.Entries)=1] starts to restore snapshot [index: 102, term: 1]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 [commit: 102, lastindex: 102, lastterm: 1] restored snapshot [index: 102, term: 1]
+raft2025/03/06 04:28:13 INFO: 3 [commit: 102] restored snapshot [index: 102, term: 1]
 --- PASS: TestSlowNodeRestore (0.00s)
 === RUN   TestStepConfig
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestStepConfig (0.00s)
 === RUN   TestStepIgnoreConfig
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 ignoring conf change {ConfChangeAddNode 0 [] 0} at config voters=(1 2): possible unapplied conf change at index 2 (applied to 0)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 ignoring conf change {ConfChangeAddNode 0 [] 0} at config voters=(1 2): possible unapplied conf change at index 2 (applied to 0)
 --- PASS: TestStepIgnoreConfig (0.00s)
 === RUN   TestNewLeaderPendingConfig
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestNewLeaderPendingConfig (0.00s)
 === RUN   TestAddNode
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
 --- PASS: TestAddNode (0.00s)
 === RUN   TestAddLearner
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1) learners=(2)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(2) learners=(1)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(2) learners=(1)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
 --- PASS: TestAddLearner (0.00s)
 === RUN   TestAddNodeCheckQuorum
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 WARN: 1 stepped down to follower since quorum is not active
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 WARN: 1 stepped down to follower since quorum is not active
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
 --- PASS: TestAddNodeCheckQuorum (0.00s)
 === RUN   TestRemoveNode
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
 --- PASS: TestRemoveNode (0.00s)
 === RUN   TestRemoveLearner
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1) learners=(2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
 --- PASS: TestRemoveLearner (0.00s)
 === RUN   TestPromotable
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
 --- PASS: TestPromotable (0.00s)
 === RUN   TestRaftNodes
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
 --- PASS: TestRaftNodes (0.00s)
 === RUN   TestCampaignWhileLeader
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestCampaignWhileLeader (0.00s)
 === RUN   TestPreCampaignWhileLeader
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 0
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 1 at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 0
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 1 at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestPreCampaignWhileLeader (0.00s)
 === RUN   TestCommitAfterRemoveNode
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
 --- PASS: TestCommitAfterRemoveNode (0.00s)
 === RUN   TestLeaderTransferToUpToDateNode
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term 1] starts to transfer leadership to 2
-raft2026/04/07 08:43:47 INFO: 1 sends MsgTimeoutNow to 2 immediately as 2 already has up-to-date log
-raft2026/04/07 08:43:47 INFO: 2 [term 1] received MsgTimeoutNow from 1 and starts an election to get leadership.
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 2 [term 2] starts to transfer leadership to 1
-raft2026/04/07 08:43:47 INFO: 2 sends MsgTimeoutNow to 1 immediately as 1 already has up-to-date log
-raft2026/04/07 08:43:47 INFO: 1 [term 2] received MsgTimeoutNow from 2 and starts an election to get leadership.
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 3] sent MsgVote request to 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 3] sent MsgVote request to 3 at term 3
-raft2026/04/07 08:43:47 INFO: 2 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 3, vote: 0] cast MsgVote for 1 [logterm: 2, index: 3] at term 3
-raft2026/04/07 08:43:47 INFO: 3 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 3, vote: 0] cast MsgVote for 1 [logterm: 2, index: 3] at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term 1] starts to transfer leadership to 2
+raft2025/03/06 04:28:13 INFO: 1 sends MsgTimeoutNow to 2 immediately as 2 already has up-to-date log
+raft2025/03/06 04:28:13 INFO: 2 [term 1] received MsgTimeoutNow from 1 and starts an election to get leadership.
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 2 [term 2] starts to transfer leadership to 1
+raft2025/03/06 04:28:13 INFO: 2 sends MsgTimeoutNow to 1 immediately as 1 already has up-to-date log
+raft2025/03/06 04:28:13 INFO: 1 [term 2] received MsgTimeoutNow from 2 and starts an election to get leadership.
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 3] sent MsgVote request to 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 3] sent MsgVote request to 3 at term 3
+raft2025/03/06 04:28:13 INFO: 2 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 3, vote: 0] cast MsgVote for 1 [logterm: 2, index: 3] at term 3
+raft2025/03/06 04:28:13 INFO: 3 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 3, vote: 0] cast MsgVote for 1 [logterm: 2, index: 3] at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 3
 --- PASS: TestLeaderTransferToUpToDateNode (0.00s)
 === RUN   TestLeaderTransferToUpToDateNodeFromFollower
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term 1] starts to transfer leadership to 2
-raft2026/04/07 08:43:47 INFO: 1 sends MsgTimeoutNow to 2 immediately as 2 already has up-to-date log
-raft2026/04/07 08:43:47 INFO: 2 [term 1] received MsgTimeoutNow from 1 and starts an election to get leadership.
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 2 [term 2] starts to transfer leadership to 1
-raft2026/04/07 08:43:47 INFO: 2 sends MsgTimeoutNow to 1 immediately as 1 already has up-to-date log
-raft2026/04/07 08:43:47 INFO: 1 [term 2] received MsgTimeoutNow from 2 and starts an election to get leadership.
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 3] sent MsgVote request to 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 3] sent MsgVote request to 3 at term 3
-raft2026/04/07 08:43:47 INFO: 2 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 3, vote: 0] cast MsgVote for 1 [logterm: 2, index: 3] at term 3
-raft2026/04/07 08:43:47 INFO: 3 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 3, vote: 0] cast MsgVote for 1 [logterm: 2, index: 3] at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term 1] starts to transfer leadership to 2
+raft2025/03/06 04:28:13 INFO: 1 sends MsgTimeoutNow to 2 immediately as 2 already has up-to-date log
+raft2025/03/06 04:28:13 INFO: 2 [term 1] received MsgTimeoutNow from 1 and starts an election to get leadership.
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 2 [term 2] starts to transfer leadership to 1
+raft2025/03/06 04:28:13 INFO: 2 sends MsgTimeoutNow to 1 immediately as 1 already has up-to-date log
+raft2025/03/06 04:28:13 INFO: 1 [term 2] received MsgTimeoutNow from 2 and starts an election to get leadership.
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 3] sent MsgVote request to 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 3] sent MsgVote request to 3 at term 3
+raft2025/03/06 04:28:13 INFO: 2 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 3, vote: 0] cast MsgVote for 1 [logterm: 2, index: 3] at term 3
+raft2025/03/06 04:28:13 INFO: 3 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 3, vote: 0] cast MsgVote for 1 [logterm: 2, index: 3] at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 3
 --- PASS: TestLeaderTransferToUpToDateNodeFromFollower (0.00s)
 === RUN   TestLeaderTransferWithCheckQuorum
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term 1] starts to transfer leadership to 2
-raft2026/04/07 08:43:47 INFO: 1 sends MsgTimeoutNow to 2 immediately as 2 already has up-to-date log
-raft2026/04/07 08:43:47 INFO: 2 [term 1] received MsgTimeoutNow from 1 and starts an election to get leadership.
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 2 [term 2] starts to transfer leadership to 1
-raft2026/04/07 08:43:47 INFO: 2 sends MsgTimeoutNow to 1 immediately as 1 already has up-to-date log
-raft2026/04/07 08:43:47 INFO: 1 [term 2] received MsgTimeoutNow from 2 and starts an election to get leadership.
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 3] sent MsgVote request to 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 3] sent MsgVote request to 3 at term 3
-raft2026/04/07 08:43:47 INFO: 2 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 3, vote: 0] cast MsgVote for 1 [logterm: 2, index: 3] at term 3
-raft2026/04/07 08:43:47 INFO: 3 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 3, vote: 0] cast MsgVote for 1 [logterm: 2, index: 3] at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term 1] starts to transfer leadership to 2
+raft2025/03/06 04:28:13 INFO: 1 sends MsgTimeoutNow to 2 immediately as 2 already has up-to-date log
+raft2025/03/06 04:28:13 INFO: 2 [term 1] received MsgTimeoutNow from 1 and starts an election to get leadership.
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 2 [term 2] starts to transfer leadership to 1
+raft2025/03/06 04:28:13 INFO: 2 sends MsgTimeoutNow to 1 immediately as 1 already has up-to-date log
+raft2025/03/06 04:28:13 INFO: 1 [term 2] received MsgTimeoutNow from 2 and starts an election to get leadership.
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 3] sent MsgVote request to 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 3] sent MsgVote request to 3 at term 3
+raft2025/03/06 04:28:13 INFO: 2 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 3, vote: 0] cast MsgVote for 1 [logterm: 2, index: 3] at term 3
+raft2025/03/06 04:28:13 INFO: 3 [term: 2] received a MsgVote message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 3, vote: 0] cast MsgVote for 1 [logterm: 2, index: 3] at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 3
 --- PASS: TestLeaderTransferWithCheckQuorum (0.00s)
 === RUN   TestLeaderTransferToSlowFollower
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term 1] starts to transfer leadership to 3
-raft2026/04/07 08:43:47 DEBUG: 3 [logterm: 0, index: 2] rejected MsgApp [logterm: 1, index: 2] from 1
-raft2026/04/07 08:43:47 DEBUG: 1 received MsgAppResp(rejected, hint: (index 1, term 1)) from 3 for index 2
-raft2026/04/07 08:43:47 DEBUG: 1 decreased progress of 3 to [StateReplicate match=1 next=2 inflight=1]
-raft2026/04/07 08:43:47 INFO: 1 sent MsgTimeoutNow to 3 after received MsgAppResp
-raft2026/04/07 08:43:47 INFO: 3 [term 1] received MsgTimeoutNow from 1 and starts an election to get leadership.
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 2] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 2] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 3 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 2, vote: 0] cast MsgVote for 3 [logterm: 1, index: 2] at term 2
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgVote message with higher term from 3 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 2, vote: 0] cast MsgVote for 3 [logterm: 1, index: 2] at term 2
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 3 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 3 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term 1] starts to transfer leadership to 3
+raft2025/03/06 04:28:13 DEBUG: 3 [logterm: 0, index: 2] rejected MsgApp [logterm: 1, index: 2] from 1
+raft2025/03/06 04:28:13 DEBUG: 1 received MsgAppResp(rejected, hint: (index 1, term 1)) from 3 for index 2
+raft2025/03/06 04:28:13 DEBUG: 1 decreased progress of 3 to [StateReplicate match=1 next=2 inflight=1]
+raft2025/03/06 04:28:13 INFO: 1 sent MsgTimeoutNow to 3 after received MsgAppResp
+raft2025/03/06 04:28:13 INFO: 3 [term 1] received MsgTimeoutNow from 1 and starts an election to get leadership.
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 2] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 2] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 3 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 2, vote: 0] cast MsgVote for 3 [logterm: 1, index: 2] at term 2
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgVote message with higher term from 3 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 2, vote: 0] cast MsgVote for 3 [logterm: 1, index: 2] at term 2
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 3 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 3 became leader at term 2
 --- PASS: TestLeaderTransferToSlowFollower (0.00s)
 === RUN   TestLeaderTransferAfterSnapshot
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term 1] starts to transfer leadership to 3
-raft2026/04/07 08:43:47 DEBUG: 3 [logterm: 0, index: 2] rejected MsgApp [logterm: 1, index: 2] from 1
-raft2026/04/07 08:43:47 DEBUG: 1 received MsgAppResp(rejected, hint: (index 1, term 1)) from 3 for index 2
-raft2026/04/07 08:43:47 DEBUG: 1 decreased progress of 3 to [StateReplicate match=1 next=2 inflight=1]
-raft2026/04/07 08:43:47 DEBUG: 1 [firstindex: 3, commit: 2] sent snapshot[index: 2, term: 1] to 3 [StateProbe match=1 next=2]
-raft2026/04/07 08:43:47 DEBUG: 1 paused sending replication messages to 3 [StateSnapshot match=1 next=2 paused pendingSnap=2]
-raft2026/04/07 08:43:47 INFO: log [committed=1, applied=0, unstable.offset=1, len(unstable.Entries)=1] starts to restore snapshot [index: 2, term: 1]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 [commit: 2, lastindex: 2, lastterm: 1] restored snapshot [index: 2, term: 1]
-raft2026/04/07 08:43:47 INFO: 3 [commit: 2] restored snapshot [index: 2, term: 1]
-raft2026/04/07 08:43:47 DEBUG: 1 recovered from needing snapshot, resumed sending replication messages to 3 [StateSnapshot match=2 next=3 paused pendingSnap=2]
-raft2026/04/07 08:43:47 INFO: 1 sent MsgTimeoutNow to 3 after received MsgAppResp
-raft2026/04/07 08:43:47 INFO: 3 [term 1] received MsgTimeoutNow from 1 and starts an election to get leadership.
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 2] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 2] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 3 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 2, vote: 0] cast MsgVote for 3 [logterm: 1, index: 2] at term 2
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgVote message with higher term from 3 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 2, vote: 0] cast MsgVote for 3 [logterm: 1, index: 2] at term 2
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 3 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 3 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term 1] starts to transfer leadership to 3
+raft2025/03/06 04:28:13 DEBUG: 3 [logterm: 0, index: 2] rejected MsgApp [logterm: 1, index: 2] from 1
+raft2025/03/06 04:28:13 DEBUG: 1 received MsgAppResp(rejected, hint: (index 1, term 1)) from 3 for index 2
+raft2025/03/06 04:28:13 DEBUG: 1 decreased progress of 3 to [StateReplicate match=1 next=2 inflight=1]
+raft2025/03/06 04:28:13 DEBUG: 1 [firstindex: 3, commit: 2] sent snapshot[index: 2, term: 1] to 3 [StateProbe match=1 next=2]
+raft2025/03/06 04:28:13 DEBUG: 1 paused sending replication messages to 3 [StateSnapshot match=1 next=2 paused pendingSnap=2]
+raft2025/03/06 04:28:13 INFO: log [committed=1, applied=0, unstable.offset=1, len(unstable.Entries)=1] starts to restore snapshot [index: 2, term: 1]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 [commit: 2, lastindex: 2, lastterm: 1] restored snapshot [index: 2, term: 1]
+raft2025/03/06 04:28:13 INFO: 3 [commit: 2] restored snapshot [index: 2, term: 1]
+raft2025/03/06 04:28:13 DEBUG: 1 recovered from needing snapshot, resumed sending replication messages to 3 [StateSnapshot match=2 next=3 paused pendingSnap=2]
+raft2025/03/06 04:28:13 INFO: 1 sent MsgTimeoutNow to 3 after received MsgAppResp
+raft2025/03/06 04:28:13 INFO: 3 [term 1] received MsgTimeoutNow from 1 and starts an election to get leadership.
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 2] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 2] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 3 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 2, vote: 0] cast MsgVote for 3 [logterm: 1, index: 2] at term 2
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgVote message with higher term from 3 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 2, vote: 0] cast MsgVote for 3 [logterm: 1, index: 2] at term 2
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 3 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 3 became leader at term 2
 --- PASS: TestLeaderTransferAfterSnapshot (0.00s)
 === RUN   TestLeaderTransferToSelf
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 DEBUG: 1 is already leader. Ignored transferring leadership to self
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 DEBUG: 1 is already leader. Ignored transferring leadership to self
 --- PASS: TestLeaderTransferToSelf (0.00s)
 === RUN   TestLeaderTransferToNonExistingNode
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 DEBUG: 1 no progress available for 4
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 DEBUG: 1 no progress available for 4
 --- PASS: TestLeaderTransferToNonExistingNode (0.00s)
 === RUN   TestLeaderTransferTimeout
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term 1] starts to transfer leadership to 3
-raft2026/04/07 08:43:47 INFO: 1 sends MsgTimeoutNow to 3 immediately as 3 already has up-to-date log
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term 1] starts to transfer leadership to 3
+raft2025/03/06 04:28:13 INFO: 1 sends MsgTimeoutNow to 3 immediately as 3 already has up-to-date log
 --- PASS: TestLeaderTransferTimeout (0.00s)
 === RUN   TestLeaderTransferIgnoreProposal
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term 1] starts to transfer leadership to 3
-raft2026/04/07 08:43:47 INFO: 1 sends MsgTimeoutNow to 3 immediately as 3 already has up-to-date log
-raft2026/04/07 08:43:47 DEBUG: 1 [term 1] transfer leadership to 3 is in progress; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 [term 1] transfer leadership to 3 is in progress; dropping proposal
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term 1] starts to transfer leadership to 3
+raft2025/03/06 04:28:13 INFO: 1 sends MsgTimeoutNow to 3 immediately as 3 already has up-to-date log
+raft2025/03/06 04:28:13 DEBUG: 1 [term 1] transfer leadership to 3 is in progress; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 [term 1] transfer leadership to 3 is in progress; dropping proposal
 --- PASS: TestLeaderTransferIgnoreProposal (0.00s)
 === RUN   TestLeaderTransferReceiveHigherTermVote
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term 1] starts to transfer leadership to 3
-raft2026/04/07 08:43:47 INFO: 1 sends MsgTimeoutNow to 3 immediately as 3 already has up-to-date log
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgHup message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 1 at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 3 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 1 at term 3
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became leader at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term 1] starts to transfer leadership to 3
+raft2025/03/06 04:28:13 INFO: 1 sends MsgTimeoutNow to 3 immediately as 3 already has up-to-date log
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgHup message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 1 at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 3 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 1 at term 3
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became leader at term 3
 --- PASS: TestLeaderTransferReceiveHigherTermVote (0.00s)
 === RUN   TestLeaderTransferRemoveNode
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term 1] starts to transfer leadership to 3
-raft2026/04/07 08:43:47 INFO: 1 sends MsgTimeoutNow to 3 immediately as 3 already has up-to-date log
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term 1] starts to transfer leadership to 3
+raft2025/03/06 04:28:13 INFO: 1 sends MsgTimeoutNow to 3 immediately as 3 already has up-to-date log
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
 --- PASS: TestLeaderTransferRemoveNode (0.00s)
 === RUN   TestLeaderTransferDemoteNode
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term 1] starts to transfer leadership to 3
-raft2026/04/07 08:43:47 INFO: 1 sends MsgTimeoutNow to 3 immediately as 3 already has up-to-date log
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)&&(1 2 3) learners_next=(3) autoleave
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2) learners=(3)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term 1] starts to transfer leadership to 3
+raft2025/03/06 04:28:13 INFO: 1 sends MsgTimeoutNow to 3 immediately as 3 already has up-to-date log
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)&&(1 2 3) learners_next=(3) autoleave
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2) learners=(3)
 --- PASS: TestLeaderTransferDemoteNode (0.00s)
 === RUN   TestLeaderTransferBack
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term 1] starts to transfer leadership to 3
-raft2026/04/07 08:43:47 INFO: 1 sends MsgTimeoutNow to 3 immediately as 3 already has up-to-date log
-raft2026/04/07 08:43:47 INFO: 1 [term 1] abort previous transferring leadership to 3
-raft2026/04/07 08:43:47 DEBUG: 1 is already leader. Ignored transferring leadership to self
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term 1] starts to transfer leadership to 3
+raft2025/03/06 04:28:13 INFO: 1 sends MsgTimeoutNow to 3 immediately as 3 already has up-to-date log
+raft2025/03/06 04:28:13 INFO: 1 [term 1] abort previous transferring leadership to 3
+raft2025/03/06 04:28:13 DEBUG: 1 is already leader. Ignored transferring leadership to self
 --- PASS: TestLeaderTransferBack (0.00s)
 === RUN   TestLeaderTransferSecondTransferToAnotherNode
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term 1] starts to transfer leadership to 3
-raft2026/04/07 08:43:47 INFO: 1 sends MsgTimeoutNow to 3 immediately as 3 already has up-to-date log
-raft2026/04/07 08:43:47 INFO: 1 [term 1] abort previous transferring leadership to 3
-raft2026/04/07 08:43:47 INFO: 1 [term 1] starts to transfer leadership to 2
-raft2026/04/07 08:43:47 INFO: 1 sends MsgTimeoutNow to 2 immediately as 2 already has up-to-date log
-raft2026/04/07 08:43:47 INFO: 2 [term 1] received MsgTimeoutNow from 1 and starts an election to get leadership.
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term 1] starts to transfer leadership to 3
+raft2025/03/06 04:28:13 INFO: 1 sends MsgTimeoutNow to 3 immediately as 3 already has up-to-date log
+raft2025/03/06 04:28:13 INFO: 1 [term 1] abort previous transferring leadership to 3
+raft2025/03/06 04:28:13 INFO: 1 [term 1] starts to transfer leadership to 2
+raft2025/03/06 04:28:13 INFO: 1 sends MsgTimeoutNow to 2 immediately as 2 already has up-to-date log
+raft2025/03/06 04:28:13 INFO: 2 [term 1] received MsgTimeoutNow from 1 and starts an election to get leadership.
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 1] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 0] cast MsgVote for 2 [logterm: 1, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became leader at term 2
 --- PASS: TestLeaderTransferSecondTransferToAnotherNode (0.00s)
 === RUN   TestLeaderTransferSecondTransferToSameNode
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term 1] starts to transfer leadership to 3
-raft2026/04/07 08:43:47 INFO: 1 sends MsgTimeoutNow to 3 immediately as 3 already has up-to-date log
-raft2026/04/07 08:43:47 INFO: 1 [term 1] transfer leadership to 3 is in progress, ignores request to same node 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term 1] starts to transfer leadership to 3
+raft2025/03/06 04:28:13 INFO: 1 sends MsgTimeoutNow to 3 immediately as 3 already has up-to-date log
+raft2025/03/06 04:28:13 INFO: 1 [term 1] transfer leadership to 3 is in progress, ignores request to same node 3
 --- PASS: TestLeaderTransferSecondTransferToSameNode (0.00s)
 === RUN   TestTransferNonMember
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(2 3 4)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [2,3,4], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 [term 0] received MsgTimeoutNow from 2 and starts an election to get leadership.
-raft2026/04/07 08:43:47 WARN: 1 is unpromotable and can not campaign
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(2 3 4)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [2,3,4], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 [term 0] received MsgTimeoutNow from 2 and starts an election to get leadership.
+raft2025/03/06 04:28:13 WARN: 1 is unpromotable and can not campaign
 --- PASS: TestTransferNonMember (0.00s)
 === RUN   TestNodeWithSmallerTermCanCompleteElection
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 3 became pre-candidate at term 1
-raft2026/04/07 08:43:47 INFO: 3 received MsgPreVoteResp from 3 at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0] sent MsgPreVote request to 1 at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 2 became pre-candidate at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgPreVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1] sent MsgPreVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 1, vote: 1] cast MsgPreVote for 2 [logterm: 2, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgPreVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1] sent MsgVote request to 1 at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1] sent MsgVote request to 3 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [term: 2] received a MsgVote message with higher term from 2 [term: 3]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 1, vote: 0] cast MsgVote for 2 [logterm: 2, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 1 at term 3
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became leader at term 3
-raft2026/04/07 08:43:47 INFO: going to bring back peer 3 and kill peer 2
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 3 became pre-candidate at term 1
-raft2026/04/07 08:43:47 INFO: 3 received MsgPreVoteResp from 3 at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0] sent MsgPreVote request to 1 at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 3, index: 2, vote: 2] rejected MsgPreVote from 3 [logterm: 0, index: 0] at term 3
-raft2026/04/07 08:43:47 INFO: 3 [term: 1] received a MsgPreVoteResp message with higher term from 1 [term: 3]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 3
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 1 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 3, index: 2] sent MsgPreVote request to 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 3, index: 2] sent MsgPreVote request to 3 at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 3, index: 2] at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 3 at term 3
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 4
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 4
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 3, index: 2] sent MsgVote request to 2 at term 4
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 3, index: 2] sent MsgVote request to 3 at term 4
-raft2026/04/07 08:43:47 INFO: 3 [term: 3] received a MsgVote message with higher term from 1 [term: 4]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 4
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 3, index: 2] at term 4
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 3 at term 4
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 4
-raft2026/04/07 08:43:47 DEBUG: 3 [logterm: 0, index: 2] rejected MsgApp [logterm: 3, index: 2] from 1
-raft2026/04/07 08:43:47 DEBUG: 1 received MsgAppResp(rejected, hint: (index 0, term 0)) from 3 for index 2
-raft2026/04/07 08:43:47 DEBUG: 1 decreased progress of 3 to [StateProbe match=0 next=1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 3 became pre-candidate at term 1
+raft2025/03/06 04:28:13 INFO: 3 received MsgPreVoteResp from 3 at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0] sent MsgPreVote request to 1 at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 2 became pre-candidate at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgPreVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1] sent MsgPreVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 1, vote: 1] cast MsgPreVote for 2 [logterm: 2, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgPreVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1] sent MsgVote request to 1 at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1] sent MsgVote request to 3 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [term: 2] received a MsgVote message with higher term from 2 [term: 3]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 1, vote: 0] cast MsgVote for 2 [logterm: 2, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 1 at term 3
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became leader at term 3
+raft2025/03/06 04:28:13 INFO: going to bring back peer 3 and kill peer 2
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 3 became pre-candidate at term 1
+raft2025/03/06 04:28:13 INFO: 3 received MsgPreVoteResp from 3 at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0] sent MsgPreVote request to 1 at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 3, index: 2, vote: 2] rejected MsgPreVote from 3 [logterm: 0, index: 0] at term 3
+raft2025/03/06 04:28:13 INFO: 3 [term: 1] received a MsgPreVoteResp message with higher term from 1 [term: 3]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 3
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 1 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 3, index: 2] sent MsgPreVote request to 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 3, index: 2] sent MsgPreVote request to 3 at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 3, index: 2] at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 3 at term 3
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 4
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 4
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 3, index: 2] sent MsgVote request to 2 at term 4
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 3, index: 2] sent MsgVote request to 3 at term 4
+raft2025/03/06 04:28:13 INFO: 3 [term: 3] received a MsgVote message with higher term from 1 [term: 4]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 4
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 3, index: 2] at term 4
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 3 at term 4
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 4
+raft2025/03/06 04:28:13 DEBUG: 3 [logterm: 0, index: 2] rejected MsgApp [logterm: 3, index: 2] from 1
+raft2025/03/06 04:28:13 DEBUG: 1 received MsgAppResp(rejected, hint: (index 0, term 0)) from 3 for index 2
+raft2025/03/06 04:28:13 DEBUG: 1 decreased progress of 3 to [StateProbe match=0 next=1]
 --- PASS: TestNodeWithSmallerTermCanCompleteElection (0.00s)
 === RUN   TestPreVoteWithSplitVote
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 2 became pre-candidate at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgPreVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1] sent MsgPreVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 3 became pre-candidate at term 2
-raft2026/04/07 08:43:47 INFO: 3 received MsgPreVoteResp from 3 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1, vote: 1] cast MsgPreVote for 2 [logterm: 2, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1, vote: 1] cast MsgPreVote for 3 [logterm: 2, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgPreVoteResp from 3 at term 2
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1] sent MsgVote request to 1 at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1] sent MsgVote request to 3 at term 3
-raft2026/04/07 08:43:47 INFO: 3 received MsgPreVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 3 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 1 at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 2 at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1, vote: 3] rejected MsgVote from 2 [logterm: 2, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1, vote: 2] rejected MsgVote from 3 [logterm: 2, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp rejection from 3 at term 3
-raft2026/04/07 08:43:47 INFO: 2 has received 1 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp rejection from 2 at term 3
-raft2026/04/07 08:43:47 INFO: 3 has received 1 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 3
-raft2026/04/07 08:43:47 INFO: 2 became pre-candidate at term 3
-raft2026/04/07 08:43:47 INFO: 2 received MsgPreVoteResp from 2 at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1] sent MsgPreVote request to 3 at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1, vote: 3] cast MsgPreVote for 2 [logterm: 2, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 2 received MsgPreVoteResp from 3 at term 3
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 4
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 4
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1] sent MsgVote request to 1 at term 4
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1] sent MsgVote request to 3 at term 4
-raft2026/04/07 08:43:47 INFO: 3 [term: 3] received a MsgVote message with higher term from 2 [term: 4]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 4
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1, vote: 0] cast MsgVote for 2 [logterm: 2, index: 1] at term 4
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 3 at term 4
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became leader at term 4
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 2 became pre-candidate at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgPreVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1] sent MsgPreVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 3 became pre-candidate at term 2
+raft2025/03/06 04:28:13 INFO: 3 received MsgPreVoteResp from 3 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1, vote: 1] cast MsgPreVote for 2 [logterm: 2, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1, vote: 1] cast MsgPreVote for 3 [logterm: 2, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgPreVoteResp from 3 at term 2
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1] sent MsgVote request to 1 at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1] sent MsgVote request to 3 at term 3
+raft2025/03/06 04:28:13 INFO: 3 received MsgPreVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 3 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 1 at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 2 at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1, vote: 3] rejected MsgVote from 2 [logterm: 2, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1, vote: 2] rejected MsgVote from 3 [logterm: 2, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp rejection from 3 at term 3
+raft2025/03/06 04:28:13 INFO: 2 has received 1 MsgVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp rejection from 2 at term 3
+raft2025/03/06 04:28:13 INFO: 3 has received 1 MsgVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 3
+raft2025/03/06 04:28:13 INFO: 2 became pre-candidate at term 3
+raft2025/03/06 04:28:13 INFO: 2 received MsgPreVoteResp from 2 at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1] sent MsgPreVote request to 3 at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1, vote: 3] cast MsgPreVote for 2 [logterm: 2, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 2 received MsgPreVoteResp from 3 at term 3
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 4
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 4
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1] sent MsgVote request to 1 at term 4
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1] sent MsgVote request to 3 at term 4
+raft2025/03/06 04:28:13 INFO: 3 [term: 3] received a MsgVote message with higher term from 2 [term: 4]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 4
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1, vote: 0] cast MsgVote for 2 [logterm: 2, index: 1] at term 4
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 3 at term 4
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became leader at term 4
 --- PASS: TestPreVoteWithSplitVote (0.00s)
 === RUN   TestPreVoteWithCheckQuorum
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 3 became pre-candidate at term 2
-raft2026/04/07 08:43:47 INFO: 3 received MsgPreVoteResp from 3 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1, vote: 1] ignored MsgPreVote from 3 [logterm: 2, index: 1] at term 2: lease is not expired (remaining ticks: 10)
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 2 became pre-candidate at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgPreVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1] sent MsgPreVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1, vote: 1] cast MsgPreVote for 2 [logterm: 2, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgPreVoteResp from 3 at term 2
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1] sent MsgVote request to 1 at term 3
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 1] sent MsgVote request to 3 at term 3
-raft2026/04/07 08:43:47 INFO: 3 [term: 2] received a MsgVote message with higher term from 2 [term: 3]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1, vote: 0] cast MsgVote for 2 [logterm: 2, index: 1] at term 3
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 3 at term 3
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became leader at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 3 became pre-candidate at term 2
+raft2025/03/06 04:28:13 INFO: 3 received MsgPreVoteResp from 3 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1, vote: 1] ignored MsgPreVote from 3 [logterm: 2, index: 1] at term 2: lease is not expired (remaining ticks: 10)
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 2 became pre-candidate at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgPreVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1] sent MsgPreVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1, vote: 1] cast MsgPreVote for 2 [logterm: 2, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgPreVoteResp from 3 at term 2
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1] sent MsgVote request to 1 at term 3
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 1] sent MsgVote request to 3 at term 3
+raft2025/03/06 04:28:13 INFO: 3 [term: 2] received a MsgVote message with higher term from 2 [term: 3]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1, vote: 0] cast MsgVote for 2 [logterm: 2, index: 1] at term 3
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 3 at term 3
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became leader at term 3
 --- PASS: TestPreVoteWithCheckQuorum (0.00s)
 === RUN   TestLearnerCampaign
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1) learners=(2)
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1) learners=(2)
-raft2026/04/07 08:43:47 WARN: 2 is unpromotable and can not campaign
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term 0] received MsgTimeoutNow from 1 and starts an election to get leadership.
-raft2026/04/07 08:43:47 WARN: 2 is unpromotable and can not campaign
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 WARN: 2 is unpromotable and can not campaign
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term 0] received MsgTimeoutNow from 1 and starts an election to get leadership.
+raft2025/03/06 04:28:13 WARN: 2 is unpromotable and can not campaign
 --- PASS: TestLearnerCampaign (0.00s)
 === RUN   TestPreVoteMigrationCanCompleteElection
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 1 at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 2 at term 3
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 3
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 4
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 4
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 1 at term 4
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 2 at term 4
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 4
-raft2026/04/07 08:43:47 INFO: 3 became pre-candidate at term 4
-raft2026/04/07 08:43:47 INFO: 3 received MsgPreVoteResp from 3 at term 4
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 4
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 2 at term 4
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 2, vote: 1] rejected MsgPreVote from 3 [logterm: 2, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 4] ignored a MsgPreVoteResp message with lower term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 2 became pre-candidate at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgPreVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 2] sent MsgPreVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 2] sent MsgPreVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1, vote: 3] rejected MsgPreVote from 2 [logterm: 2, index: 2] at term 4
-raft2026/04/07 08:43:47 INFO: 2 [term: 2] received a MsgPreVoteResp message with higher term from 3 [term: 4]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 4
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 4
-raft2026/04/07 08:43:47 INFO: 3 became pre-candidate at term 4
-raft2026/04/07 08:43:47 INFO: 3 received MsgPreVoteResp from 3 at term 4
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 4
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 2 at term 4
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 3 [logterm: 2, index: 1] at term 4
-raft2026/04/07 08:43:47 INFO: 3 received MsgPreVoteResp rejection from 2 at term 4
-raft2026/04/07 08:43:47 INFO: 3 has received 1 MsgPreVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 4
-raft2026/04/07 08:43:47 INFO: 2 became pre-candidate at term 4
-raft2026/04/07 08:43:47 INFO: 2 received MsgPreVoteResp from 2 at term 4
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 2] sent MsgPreVote request to 1 at term 4
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 2] sent MsgPreVote request to 3 at term 4
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1, vote: 3] cast MsgPreVote for 2 [logterm: 2, index: 2] at term 4
-raft2026/04/07 08:43:47 INFO: 2 received MsgPreVoteResp from 3 at term 4
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 5
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 5
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 2] sent MsgVote request to 1 at term 5
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 2] sent MsgVote request to 3 at term 5
-raft2026/04/07 08:43:47 INFO: 3 [term: 4] received a MsgVote message with higher term from 2 [term: 5]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 5
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1, vote: 0] cast MsgVote for 2 [logterm: 2, index: 2] at term 5
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 3 at term 5
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became leader at term 5
-raft2026/04/07 08:43:47 DEBUG: 3 [logterm: 0, index: 2] rejected MsgApp [logterm: 2, index: 2] from 2
-raft2026/04/07 08:43:47 DEBUG: 2 received MsgAppResp(rejected, hint: (index 1, term 2)) from 3 for index 2
-raft2026/04/07 08:43:47 DEBUG: 2 decreased progress of 3 to [StateProbe match=0 next=2]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 1 at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 2 at term 3
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 3
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 4
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 4
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 1 at term 4
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 2 at term 4
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 4
+raft2025/03/06 04:28:13 INFO: 3 became pre-candidate at term 4
+raft2025/03/06 04:28:13 INFO: 3 received MsgPreVoteResp from 3 at term 4
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 4
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 2 at term 4
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 2, vote: 1] rejected MsgPreVote from 3 [logterm: 2, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 4] ignored a MsgPreVoteResp message with lower term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 2 became pre-candidate at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgPreVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 2] sent MsgPreVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 2] sent MsgPreVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1, vote: 3] rejected MsgPreVote from 2 [logterm: 2, index: 2] at term 4
+raft2025/03/06 04:28:13 INFO: 2 [term: 2] received a MsgPreVoteResp message with higher term from 3 [term: 4]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 4
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 4
+raft2025/03/06 04:28:13 INFO: 3 became pre-candidate at term 4
+raft2025/03/06 04:28:13 INFO: 3 received MsgPreVoteResp from 3 at term 4
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 4
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 2 at term 4
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 2, vote: 0] rejected MsgPreVote from 3 [logterm: 2, index: 1] at term 4
+raft2025/03/06 04:28:13 INFO: 3 received MsgPreVoteResp rejection from 2 at term 4
+raft2025/03/06 04:28:13 INFO: 3 has received 1 MsgPreVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 4
+raft2025/03/06 04:28:13 INFO: 2 became pre-candidate at term 4
+raft2025/03/06 04:28:13 INFO: 2 received MsgPreVoteResp from 2 at term 4
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 2] sent MsgPreVote request to 1 at term 4
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 2] sent MsgPreVote request to 3 at term 4
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1, vote: 3] cast MsgPreVote for 2 [logterm: 2, index: 2] at term 4
+raft2025/03/06 04:28:13 INFO: 2 received MsgPreVoteResp from 3 at term 4
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 5
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 5
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 2] sent MsgVote request to 1 at term 5
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 2] sent MsgVote request to 3 at term 5
+raft2025/03/06 04:28:13 INFO: 3 [term: 4] received a MsgVote message with higher term from 2 [term: 5]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 5
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1, vote: 0] cast MsgVote for 2 [logterm: 2, index: 2] at term 5
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 3 at term 5
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became leader at term 5
+raft2025/03/06 04:28:13 DEBUG: 3 [logterm: 0, index: 2] rejected MsgApp [logterm: 2, index: 2] from 2
+raft2025/03/06 04:28:13 DEBUG: 2 received MsgAppResp(rejected, hint: (index 1, term 2)) from 3 for index 2
+raft2025/03/06 04:28:13 DEBUG: 2 decreased progress of 3 to [StateProbe match=0 next=2]
 --- PASS: TestPreVoteMigrationCanCompleteElection (0.00s)
 === RUN   TestPreVoteMigrationWithFreeStuckPreCandidate
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 1 became pre-candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgPreVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 1 at term 3
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 2 at term 3
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 3
-raft2026/04/07 08:43:47 INFO: 3 became candidate at term 4
-raft2026/04/07 08:43:47 INFO: 3 received MsgVoteResp from 3 at term 4
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 1 at term 4
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 2 at term 4
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 4
-raft2026/04/07 08:43:47 INFO: 3 became pre-candidate at term 4
-raft2026/04/07 08:43:47 INFO: 3 received MsgPreVoteResp from 3 at term 4
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 4
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 2 at term 4
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 1] rejected MsgPreVote from 3 [logterm: 2, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 2, vote: 1] rejected MsgPreVote from 3 [logterm: 2, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 4] ignored a MsgPreVoteResp message with lower term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 [term: 4] ignored a MsgPreVoteResp message with lower term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 is starting a new election at term 4
-raft2026/04/07 08:43:47 INFO: 3 became pre-candidate at term 4
-raft2026/04/07 08:43:47 INFO: 3 received MsgPreVoteResp from 3 at term 4
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 4
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 2 at term 4
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 2, vote: 1] rejected MsgPreVote from 3 [logterm: 2, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 2, index: 2, vote: 1] rejected MsgPreVote from 3 [logterm: 2, index: 1] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 4] ignored a MsgPreVoteResp message with lower term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 [term: 4] ignored a MsgPreVoteResp message with lower term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 [term: 2] received a MsgAppResp message with higher term from 3 [term: 4]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 4
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 1 became pre-candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgPreVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgPreVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgPreVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgPreVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 1 at term 3
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 2 at term 3
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 3
+raft2025/03/06 04:28:13 INFO: 3 became candidate at term 4
+raft2025/03/06 04:28:13 INFO: 3 received MsgVoteResp from 3 at term 4
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 1 at term 4
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgVote request to 2 at term 4
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 4
+raft2025/03/06 04:28:13 INFO: 3 became pre-candidate at term 4
+raft2025/03/06 04:28:13 INFO: 3 received MsgPreVoteResp from 3 at term 4
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 4
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 2 at term 4
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 1] rejected MsgPreVote from 3 [logterm: 2, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 2, vote: 1] rejected MsgPreVote from 3 [logterm: 2, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 4] ignored a MsgPreVoteResp message with lower term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 [term: 4] ignored a MsgPreVoteResp message with lower term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 is starting a new election at term 4
+raft2025/03/06 04:28:13 INFO: 3 became pre-candidate at term 4
+raft2025/03/06 04:28:13 INFO: 3 received MsgPreVoteResp from 3 at term 4
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 1 at term 4
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 2, index: 1] sent MsgPreVote request to 2 at term 4
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 2, vote: 1] rejected MsgPreVote from 3 [logterm: 2, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 2, index: 2, vote: 1] rejected MsgPreVote from 3 [logterm: 2, index: 1] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 4] ignored a MsgPreVoteResp message with lower term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 [term: 4] ignored a MsgPreVoteResp message with lower term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 [term: 2] received a MsgAppResp message with higher term from 3 [term: 4]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 4
 --- PASS: TestPreVoteMigrationWithFreeStuckPreCandidate (0.00s)
 === RUN   TestConfChangeCheckBeforeCampaign
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 WARN: 2 cannot campaign at term 1 since there are still 1 pending configuration changes to apply
-raft2026/04/07 08:43:47 INFO: 1 [term 1] starts to transfer leadership to 2
-raft2026/04/07 08:43:47 INFO: 1 sends MsgTimeoutNow to 2 immediately as 2 already has up-to-date log
-raft2026/04/07 08:43:47 INFO: 2 [term 1] received MsgTimeoutNow from 1 and starts an election to get leadership.
-raft2026/04/07 08:43:47 WARN: 2 cannot campaign at term 1 since there are still 1 pending configuration changes to apply
-raft2026/04/07 08:43:47 INFO: 1 [term 1] starts to transfer leadership to 2
-raft2026/04/07 08:43:47 INFO: 1 sends MsgTimeoutNow to 2 immediately as 2 already has up-to-date log
-raft2026/04/07 08:43:47 INFO: 2 [term 1] received MsgTimeoutNow from 1 and starts an election to get leadership.
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 2] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 2] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 2, vote: 0] cast MsgVote for 2 [logterm: 1, index: 2] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 2, vote: 0] cast MsgVote for 2 [logterm: 1, index: 2] at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 3] sent MsgVote request to 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 3] sent MsgVote request to 3 at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 WARN: 2 cannot campaign at term 1 since there are still 1 pending configuration changes to apply
+raft2025/03/06 04:28:13 INFO: 1 [term 1] starts to transfer leadership to 2
+raft2025/03/06 04:28:13 INFO: 1 sends MsgTimeoutNow to 2 immediately as 2 already has up-to-date log
+raft2025/03/06 04:28:13 INFO: 2 [term 1] received MsgTimeoutNow from 1 and starts an election to get leadership.
+raft2025/03/06 04:28:13 WARN: 2 cannot campaign at term 1 since there are still 1 pending configuration changes to apply
+raft2025/03/06 04:28:13 INFO: 1 [term 1] starts to transfer leadership to 2
+raft2025/03/06 04:28:13 INFO: 1 sends MsgTimeoutNow to 2 immediately as 2 already has up-to-date log
+raft2025/03/06 04:28:13 INFO: 2 [term 1] received MsgTimeoutNow from 1 and starts an election to get leadership.
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 2] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 2] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 2, vote: 0] cast MsgVote for 2 [logterm: 1, index: 2] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 2, vote: 0] cast MsgVote for 2 [logterm: 1, index: 2] at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 3] sent MsgVote request to 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 3] sent MsgVote request to 3 at term 3
 --- PASS: TestConfChangeCheckBeforeCampaign (0.00s)
 === RUN   TestConfChangeV2CheckBeforeCampaign
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 2 at term 1
-raft2026/04/07 08:43:47 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 WARN: 2 cannot campaign at term 1 since there are still 1 pending configuration changes to apply
-raft2026/04/07 08:43:47 INFO: 1 [term 1] starts to transfer leadership to 2
-raft2026/04/07 08:43:47 INFO: 1 sends MsgTimeoutNow to 2 immediately as 2 already has up-to-date log
-raft2026/04/07 08:43:47 INFO: 2 [term 1] received MsgTimeoutNow from 1 and starts an election to get leadership.
-raft2026/04/07 08:43:47 WARN: 2 cannot campaign at term 1 since there are still 1 pending configuration changes to apply
-raft2026/04/07 08:43:47 INFO: 1 [term 1] starts to transfer leadership to 2
-raft2026/04/07 08:43:47 INFO: 1 sends MsgTimeoutNow to 2 immediately as 2 already has up-to-date log
-raft2026/04/07 08:43:47 INFO: 2 [term 1] received MsgTimeoutNow from 1 and starts an election to get leadership.
-raft2026/04/07 08:43:47 INFO: 2 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 2 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 2] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 [logterm: 1, index: 2] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 2, vote: 0] cast MsgVote for 2 [logterm: 1, index: 2] at term 2
-raft2026/04/07 08:43:47 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:47 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 3 [logterm: 1, index: 2, vote: 0] cast MsgVote for 2 [logterm: 1, index: 2] at term 2
-raft2026/04/07 08:43:47 INFO: 2 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:47 INFO: 2 became leader at term 2
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 3] sent MsgVote request to 2 at term 3
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 2, index: 3] sent MsgVote request to 3 at term 3
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 3 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 0, index: 0] sent MsgVote request to 3 at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 3 [term: 0] received a MsgVote message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 0, index: 0, vote: 0] cast MsgVote for 1 [logterm: 0, index: 0] at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 2 at term 1
+raft2025/03/06 04:28:13 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 WARN: 2 cannot campaign at term 1 since there are still 1 pending configuration changes to apply
+raft2025/03/06 04:28:13 INFO: 1 [term 1] starts to transfer leadership to 2
+raft2025/03/06 04:28:13 INFO: 1 sends MsgTimeoutNow to 2 immediately as 2 already has up-to-date log
+raft2025/03/06 04:28:13 INFO: 2 [term 1] received MsgTimeoutNow from 1 and starts an election to get leadership.
+raft2025/03/06 04:28:13 WARN: 2 cannot campaign at term 1 since there are still 1 pending configuration changes to apply
+raft2025/03/06 04:28:13 INFO: 1 [term 1] starts to transfer leadership to 2
+raft2025/03/06 04:28:13 INFO: 1 sends MsgTimeoutNow to 2 immediately as 2 already has up-to-date log
+raft2025/03/06 04:28:13 INFO: 2 [term 1] received MsgTimeoutNow from 1 and starts an election to get leadership.
+raft2025/03/06 04:28:13 INFO: 2 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 2 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 2] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 [logterm: 1, index: 2] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 2, vote: 0] cast MsgVote for 2 [logterm: 1, index: 2] at term 2
+raft2025/03/06 04:28:13 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:13 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 3 [logterm: 1, index: 2, vote: 0] cast MsgVote for 2 [logterm: 1, index: 2] at term 2
+raft2025/03/06 04:28:13 INFO: 2 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:13 INFO: 2 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 3] sent MsgVote request to 2 at term 3
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 2, index: 3] sent MsgVote request to 3 at term 3
 --- PASS: TestConfChangeV2CheckBeforeCampaign (0.00s)
 === RUN   TestFastLogRejection
 === RUN   TestFastLogRejection/#00
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 7, lastterm: 4]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 11, lastterm: 3]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgApp message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 DEBUG: 2 [logterm: 3, index: 7] rejected MsgApp [logterm: 4, index: 7] from 1
-raft2026/04/07 08:43:47 DEBUG: 1 received MsgAppResp(rejected, hint: (index 7, term 3)) from 2 for index 7
-raft2026/04/07 08:43:47 DEBUG: 1 decreased progress of 2 to [StateProbe match=0 next=4]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 7, lastterm: 4]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 11, lastterm: 3]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgApp message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 DEBUG: 2 [logterm: 3, index: 7] rejected MsgApp [logterm: 4, index: 7] from 1
+raft2025/03/06 04:28:13 DEBUG: 1 received MsgAppResp(rejected, hint: (index 7, term 3)) from 2 for index 7
+raft2025/03/06 04:28:13 DEBUG: 1 decreased progress of 2 to [StateProbe match=0 next=4]
 === RUN   TestFastLogRejection/#01
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 8, lastterm: 5]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 11, lastterm: 3]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgApp message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 DEBUG: 2 [logterm: 3, index: 8] rejected MsgApp [logterm: 5, index: 8] from 1
-raft2026/04/07 08:43:47 DEBUG: 1 received MsgAppResp(rejected, hint: (index 8, term 3)) from 2 for index 8
-raft2026/04/07 08:43:47 DEBUG: 1 decreased progress of 2 to [StateProbe match=0 next=5]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 8, lastterm: 5]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 11, lastterm: 3]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgApp message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 DEBUG: 2 [logterm: 3, index: 8] rejected MsgApp [logterm: 5, index: 8] from 1
+raft2025/03/06 04:28:13 DEBUG: 1 received MsgAppResp(rejected, hint: (index 8, term 3)) from 2 for index 8
+raft2025/03/06 04:28:13 DEBUG: 1 decreased progress of 2 to [StateProbe match=0 next=5]
 === RUN   TestFastLogRejection/#02
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 4, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 4, lastterm: 4]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgApp message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 DEBUG: 2 [logterm: 4, index: 4] rejected MsgApp [logterm: 1, index: 4] from 1
-raft2026/04/07 08:43:47 DEBUG: 1 received MsgAppResp(rejected, hint: (index 1, term 1)) from 2 for index 4
-raft2026/04/07 08:43:47 DEBUG: 1 decreased progress of 2 to [StateProbe match=0 next=2]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 4, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 4, lastterm: 4]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgApp message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 DEBUG: 2 [logterm: 4, index: 4] rejected MsgApp [logterm: 1, index: 4] from 1
+raft2025/03/06 04:28:13 DEBUG: 1 received MsgAppResp(rejected, hint: (index 1, term 1)) from 2 for index 4
+raft2025/03/06 04:28:13 DEBUG: 1 decreased progress of 2 to [StateProbe match=0 next=2]
 === RUN   TestFastLogRejection/#03
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 6, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 4, lastterm: 4]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgApp message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 DEBUG: 2 [logterm: 0, index: 6] rejected MsgApp [logterm: 1, index: 6] from 1
-raft2026/04/07 08:43:47 DEBUG: 1 received MsgAppResp(rejected, hint: (index 1, term 1)) from 2 for index 6
-raft2026/04/07 08:43:47 DEBUG: 1 decreased progress of 2 to [StateProbe match=0 next=2]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 6, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 4, lastterm: 4]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgApp message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 DEBUG: 2 [logterm: 0, index: 6] rejected MsgApp [logterm: 1, index: 6] from 1
+raft2025/03/06 04:28:13 DEBUG: 1 received MsgAppResp(rejected, hint: (index 1, term 1)) from 2 for index 6
+raft2025/03/06 04:28:13 DEBUG: 1 decreased progress of 2 to [StateProbe match=0 next=2]
 === RUN   TestFastLogRejection/#04
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 4, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 6, lastterm: 4]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgApp message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 DEBUG: 2 [logterm: 4, index: 4] rejected MsgApp [logterm: 1, index: 4] from 1
-raft2026/04/07 08:43:47 DEBUG: 1 received MsgAppResp(rejected, hint: (index 1, term 1)) from 2 for index 4
-raft2026/04/07 08:43:47 DEBUG: 1 decreased progress of 2 to [StateProbe match=0 next=2]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 4, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 6, lastterm: 4]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgApp message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 DEBUG: 2 [logterm: 4, index: 4] rejected MsgApp [logterm: 1, index: 4] from 1
+raft2025/03/06 04:28:13 DEBUG: 1 received MsgAppResp(rejected, hint: (index 1, term 1)) from 2 for index 4
+raft2025/03/06 04:28:13 DEBUG: 1 decreased progress of 2 to [StateProbe match=0 next=2]
 === RUN   TestFastLogRejection/#05
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 5, lastterm: 5]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 4, lastterm: 4]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgApp message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 DEBUG: 2 [logterm: 0, index: 5] rejected MsgApp [logterm: 5, index: 5] from 1
-raft2026/04/07 08:43:47 DEBUG: 1 received MsgAppResp(rejected, hint: (index 4, term 4)) from 2 for index 5
-raft2026/04/07 08:43:47 DEBUG: 1 decreased progress of 2 to [StateProbe match=0 next=5]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 5, lastterm: 5]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 4, lastterm: 4]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgApp message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 DEBUG: 2 [logterm: 0, index: 5] rejected MsgApp [logterm: 5, index: 5] from 1
+raft2025/03/06 04:28:13 DEBUG: 1 received MsgAppResp(rejected, hint: (index 4, term 4)) from 2 for index 5
+raft2025/03/06 04:28:13 DEBUG: 1 decreased progress of 2 to [StateProbe match=0 next=5]
 === RUN   TestFastLogRejection/#06
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 9, lastterm: 5]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 6, lastterm: 4]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgApp message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 DEBUG: 2 [logterm: 0, index: 9] rejected MsgApp [logterm: 5, index: 9] from 1
-raft2026/04/07 08:43:47 DEBUG: 1 received MsgAppResp(rejected, hint: (index 6, term 4)) from 2 for index 9
-raft2026/04/07 08:43:47 DEBUG: 1 decreased progress of 2 to [StateProbe match=0 next=2]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 9, lastterm: 5]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 6, lastterm: 4]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgApp message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 DEBUG: 2 [logterm: 0, index: 9] rejected MsgApp [logterm: 5, index: 9] from 1
+raft2025/03/06 04:28:13 DEBUG: 1 received MsgAppResp(rejected, hint: (index 6, term 4)) from 2 for index 9
+raft2025/03/06 04:28:13 DEBUG: 1 decreased progress of 2 to [StateProbe match=0 next=2]
 === RUN   TestFastLogRejection/#07
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 5, lastterm: 2]
-raft2026/04/07 08:43:47 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 8, lastterm: 4]
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 2 [term: 0] received a MsgApp message with higher term from 1 [term: 1]
-raft2026/04/07 08:43:47 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:47 DEBUG: 2 [logterm: 4, index: 5] rejected MsgApp [logterm: 2, index: 5] from 1
-raft2026/04/07 08:43:47 DEBUG: 1 received MsgAppResp(rejected, hint: (index 1, term 2)) from 2 for index 5
-raft2026/04/07 08:43:47 DEBUG: 1 decreased progress of 2 to [StateProbe match=0 next=2]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 5, lastterm: 2]
+raft2025/03/06 04:28:13 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 2 [peers: [1,2,3], term: 0, commit: 0, applied: 0, lastindex: 8, lastterm: 4]
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 2 [term: 0] received a MsgApp message with higher term from 1 [term: 1]
+raft2025/03/06 04:28:13 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:13 DEBUG: 2 [logterm: 4, index: 5] rejected MsgApp [logterm: 2, index: 5] from 1
+raft2025/03/06 04:28:13 DEBUG: 1 received MsgAppResp(rejected, hint: (index 1, term 2)) from 2 for index 5
+raft2025/03/06 04:28:13 DEBUG: 1 decreased progress of 2 to [StateProbe match=0 next=2]
 --- PASS: TestFastLogRejection (0.00s)
     --- PASS: TestFastLogRejection/#00 (0.00s)
     --- PASS: TestFastLogRejection/#01 (0.00s)
@@ -8833,197 +8859,197 @@
     --- PASS: TestFastLogRejection/#06 (0.00s)
     --- PASS: TestFastLogRejection/#07 (0.00s)
 === RUN   TestRawNodeStep
-=== RUN   TestRawNodeStep/MsgSnapStatus
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
+=== RUN   TestRawNodeStep/MsgHup
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
+=== RUN   TestRawNodeStep/MsgApp
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
+=== RUN   TestRawNodeStep/MsgCheckQuorum
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
+=== RUN   TestRawNodeStep/MsgPreVote
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 0] rejected MsgPreVote from 0 [logterm: 0, index: 0] at term 1
+=== RUN   TestRawNodeStep/MsgBeat
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
+=== RUN   TestRawNodeStep/MsgSnap
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 [commit: 1] ignored snapshot [index: 0, term: 0]
+=== RUN   TestRawNodeStep/MsgUnreachable
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
 === RUN   TestRawNodeStep/MsgTransferLeader
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 no leader at term 1; dropping leader transfer msg
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 no leader at term 1; dropping leader transfer msg
+=== RUN   TestRawNodeStep/MsgVote
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 [logterm: 1, index: 1, vote: 0] rejected MsgVote from 0 [logterm: 0, index: 0] at term 1
+=== RUN   TestRawNodeStep/MsgVoteResp
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
+=== RUN   TestRawNodeStep/MsgHeartbeatResp
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
+=== RUN   TestRawNodeStep/MsgSnapStatus
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
+=== RUN   TestRawNodeStep/MsgTimeoutNow
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 [term 1] received MsgTimeoutNow from 0 and starts an election to get leadership.
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 1
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 2
 === RUN   TestRawNodeStep/MsgReadIndexResp
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 ERROR: 1 invalid format of MsgReadIndexResp from 0, entries count: 0
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 ERROR: 1 invalid format of MsgReadIndexResp from 0, entries count: 0
 === RUN   TestRawNodeStep/MsgProp
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 no leader at term 1; dropping proposal
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 no leader at term 1; dropping proposal
 === RUN   TestRawNodeStep/MsgAppResp
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
-=== RUN   TestRawNodeStep/MsgVoteResp
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
-=== RUN   TestRawNodeStep/MsgSnap
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 [commit: 1] ignored snapshot [index: 0, term: 0]
-=== RUN   TestRawNodeStep/MsgPreVoteResp
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
 === RUN   TestRawNodeStep/MsgHeartbeat
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
-=== RUN   TestRawNodeStep/MsgHeartbeatResp
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
-=== RUN   TestRawNodeStep/MsgUnreachable
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
-=== RUN   TestRawNodeStep/MsgTimeoutNow
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 [term 1] received MsgTimeoutNow from 0 and starts an election to get leadership.
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 1
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
 === RUN   TestRawNodeStep/MsgReadIndex
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 no leader at term 1; dropping index reading msg
-=== RUN   TestRawNodeStep/MsgHup
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
-=== RUN   TestRawNodeStep/MsgVote
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 0] rejected MsgVote from 0 [logterm: 0, index: 0] at term 1
-=== RUN   TestRawNodeStep/MsgCheckQuorum
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
-=== RUN   TestRawNodeStep/MsgPreVote
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
-raft2026/04/07 08:43:47 INFO: 1 [logterm: 1, index: 1, vote: 0] rejected MsgPreVote from 0 [logterm: 0, index: 0] at term 1
-=== RUN   TestRawNodeStep/MsgBeat
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
-=== RUN   TestRawNodeStep/MsgApp
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 no leader at term 1; dropping index reading msg
+=== RUN   TestRawNodeStep/MsgPreVoteResp
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 1, lastindex: 1, lastterm: 1]
 --- PASS: TestRawNodeStep (0.00s)
-    --- PASS: TestRawNodeStep/MsgSnapStatus (0.00s)
+    --- PASS: TestRawNodeStep/MsgHup (0.00s)
+    --- PASS: TestRawNodeStep/MsgApp (0.00s)
+    --- PASS: TestRawNodeStep/MsgCheckQuorum (0.00s)
+    --- PASS: TestRawNodeStep/MsgPreVote (0.00s)
+    --- PASS: TestRawNodeStep/MsgBeat (0.00s)
+    --- PASS: TestRawNodeStep/MsgSnap (0.00s)
+    --- PASS: TestRawNodeStep/MsgUnreachable (0.00s)
     --- PASS: TestRawNodeStep/MsgTransferLeader (0.00s)
+    --- PASS: TestRawNodeStep/MsgVote (0.00s)
+    --- PASS: TestRawNodeStep/MsgVoteResp (0.00s)
+    --- PASS: TestRawNodeStep/MsgHeartbeatResp (0.00s)
+    --- PASS: TestRawNodeStep/MsgSnapStatus (0.00s)
+    --- PASS: TestRawNodeStep/MsgTimeoutNow (0.00s)
     --- PASS: TestRawNodeStep/MsgReadIndexResp (0.00s)
     --- PASS: TestRawNodeStep/MsgProp (0.00s)
     --- PASS: TestRawNodeStep/MsgAppResp (0.00s)
-    --- PASS: TestRawNodeStep/MsgVoteResp (0.00s)
-    --- PASS: TestRawNodeStep/MsgSnap (0.00s)
-    --- PASS: TestRawNodeStep/MsgPreVoteResp (0.00s)
     --- PASS: TestRawNodeStep/MsgHeartbeat (0.00s)
-    --- PASS: TestRawNodeStep/MsgHeartbeatResp (0.00s)
-    --- PASS: TestRawNodeStep/MsgUnreachable (0.00s)
-    --- PASS: TestRawNodeStep/MsgTimeoutNow (0.00s)
     --- PASS: TestRawNodeStep/MsgReadIndex (0.00s)
-    --- PASS: TestRawNodeStep/MsgHup (0.00s)
-    --- PASS: TestRawNodeStep/MsgVote (0.00s)
-    --- PASS: TestRawNodeStep/MsgCheckQuorum (0.00s)
-    --- PASS: TestRawNodeStep/MsgPreVote (0.00s)
-    --- PASS: TestRawNodeStep/MsgBeat (0.00s)
-    --- PASS: TestRawNodeStep/MsgApp (0.00s)
+    --- PASS: TestRawNodeStep/MsgPreVoteResp (0.00s)
 === RUN   TestRawNodeProposeAndConfChange
 === RUN   TestRawNodeProposeAndConfChange/#00
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
 === RUN   TestRawNodeProposeAndConfChange/#01
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
 === RUN   TestRawNodeProposeAndConfChange/#02
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1) learners=(2)
 === RUN   TestRawNodeProposeAndConfChange/#03
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)&&(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)&&(1) learners=(2)
     rawnode_test.go:349: leaving joint state manually
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1) learners=(2)
 === RUN   TestRawNodeProposeAndConfChange/#04
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)&&(1) learners=(2) autoleave
-raft2026/04/07 08:43:47 INFO: initiating automatic transition out of joint configuration voters=(1)&&(1) learners=(2) autoleave
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)&&(1) learners=(2) autoleave
+raft2025/03/06 04:28:13 INFO: initiating automatic transition out of joint configuration voters=(1)&&(1) learners=(2) autoleave
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1) learners=(2)
 === RUN   TestRawNodeProposeAndConfChange/#05
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(2)&&(1) learners=(3) learners_next=(1) autoleave
-raft2026/04/07 08:43:47 INFO: initiating automatic transition out of joint configuration voters=(2)&&(1) learners=(3) learners_next=(1) autoleave
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(2) learners=(1 3)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(2)&&(1) learners=(3) learners_next=(1) autoleave
+raft2025/03/06 04:28:13 INFO: initiating automatic transition out of joint configuration voters=(2)&&(1) learners=(3) learners_next=(1) autoleave
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(2) learners=(1 3)
 === RUN   TestRawNodeProposeAndConfChange/#06
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(2)&&(1) learners=(3) learners_next=(1)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(2)&&(1) learners=(3) learners_next=(1)
     rawnode_test.go:349: leaving joint state manually
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(2) learners=(1 3)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(2) learners=(1 3)
 === RUN   TestRawNodeProposeAndConfChange/#07
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(2)&&(1) learners=(3) learners_next=(1) autoleave
-raft2026/04/07 08:43:47 INFO: initiating automatic transition out of joint configuration voters=(2)&&(1) learners=(3) learners_next=(1) autoleave
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(2) learners=(1 3)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(2)&&(1) learners=(3) learners_next=(1) autoleave
+raft2025/03/06 04:28:13 INFO: initiating automatic transition out of joint configuration voters=(2)&&(1) learners=(3) learners_next=(1) autoleave
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(2) learners=(1 3)
 --- PASS: TestRawNodeProposeAndConfChange (0.00s)
     --- PASS: TestRawNodeProposeAndConfChange/#00 (0.00s)
     --- PASS: TestRawNodeProposeAndConfChange/#01 (0.00s)
@@ -9035,1099 +9061,1099 @@
     --- PASS: TestRawNodeProposeAndConfChange/#07 (0.00s)
 === RUN   TestRawNodeJointAutoLeave
 === RUN   TestRawNodeJointAutoLeave/#00
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 [term: 1] received a MsgHeartbeatResp message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)&&(1) learners=(2) autoleave
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 2
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 3
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 3
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 3
-raft2026/04/07 08:43:47 INFO: initiating automatic transition out of joint configuration voters=(1)&&(1) learners=(2) autoleave
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1) learners=(2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 [term: 1] received a MsgHeartbeatResp message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)&&(1) learners=(2) autoleave
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 2
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 3
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 3
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 3
+raft2025/03/06 04:28:13 INFO: initiating automatic transition out of joint configuration voters=(1)&&(1) learners=(2) autoleave
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1) learners=(2)
 --- PASS: TestRawNodeJointAutoLeave (0.00s)
     --- PASS: TestRawNodeJointAutoLeave/#00 (0.00s)
 === RUN   TestRawNodeProposeAddDuplicateNode
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
 --- PASS: TestRawNodeProposeAddDuplicateNode (0.00s)
 === RUN   TestRawNodeReadIndex
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestRawNodeReadIndex (0.00s)
 === RUN   TestRawNodeStart
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 1, applied: 1, lastindex: 1, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 1, applied: 1, lastindex: 1, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestRawNodeStart (0.00s)
 === RUN   TestRawNodeRestart
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 0, lastindex: 2, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 1, applied: 0, lastindex: 2, lastterm: 1]
 --- PASS: TestRawNodeRestart (0.00s)
 === RUN   TestRawNodeRestartFromSnapshot
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1,2], term: 1, commit: 3, applied: 2, lastindex: 3, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1,2], term: 1, commit: 3, applied: 2, lastindex: 3, lastterm: 1]
 --- PASS: TestRawNodeRestartFromSnapshot (0.00s)
 === RUN   TestRawNodeStatus
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
 --- PASS: TestRawNodeStatus (0.00s)
 === RUN   TestRawNodeCommitPaginationAfterRestart
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 1, commit: 10, applied: 1, lastindex: 11, lastterm: 1]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 1, commit: 10, applied: 1, lastindex: 11, lastterm: 1]
 --- PASS: TestRawNodeCommitPaginationAfterRestart (0.00s)
 === RUN   TestRawNodeBoundedLogGrowthWithPartition
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:47 INFO: 1 is starting a new election at term 0
-raft2026/04/07 08:43:47 INFO: 1 became candidate at term 1
-raft2026/04/07 08:43:47 INFO: 1 received MsgVoteResp from 1 at term 1
-raft2026/04/07 08:43:47 INFO: 1 became leader at term 1
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
-raft2026/04/07 08:43:47 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 is starting a new election at term 0
+raft2025/03/06 04:28:13 INFO: 1 became candidate at term 1
+raft2025/03/06 04:28:13 INFO: 1 received MsgVoteResp from 1 at term 1
+raft2025/03/06 04:28:13 INFO: 1 became leader at term 1
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
+raft2025/03/06 04:28:13 DEBUG: 1 appending new entries to log would exceed uncommitted entry size limit; dropping proposal
 --- PASS: TestRawNodeBoundedLogGrowthWithPartition (0.00s)
 === RUN   TestRawNodeConsumeReady
-raft2026/04/07 08:43:47 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:47 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:47 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:13 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:13 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:13 INFO: newRaft 1 [peers: [1], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
 --- PASS: TestRawNodeConsumeReady (0.00s)
 === RUN   TestStorageTerm
 --- PASS: TestStorageTerm (0.00s)
@@ -12653,7 +12679,7 @@
         > 1 receiving messages
           2->1 MsgHeartbeatResp Term:1 Log:0/0
           3->1 MsgAppResp Term:1 Log:0/11
---- PASS: TestInteraction (0.03s)
+--- PASS: TestInteraction (0.02s)
     --- PASS: TestInteraction/campaign (0.00s)
     --- PASS: TestInteraction/campaign_learner_must_vote (0.00s)
     --- PASS: TestInteraction/confchange_v1_add_single (0.00s)
@@ -12665,7 +12691,7 @@
     --- PASS: TestInteraction/probe_and_replicate (0.01s)
     --- PASS: TestInteraction/snapshot_succeed_via_app_resp (0.00s)
 PASS
-ok  	go.etcd.io/etcd/raft	0.383s
+ok  	go.etcd.io/etcd/raft	0.381s
 === RUN   TestConfChangeDataDriven
 === RUN   TestConfChangeDataDriven/joint_autoleave
     datadriven_test.go:47: 
@@ -13117,52 +13143,51 @@
     --- PASS: TestConfChangeDataDriven/update (0.00s)
     --- PASS: TestConfChangeDataDriven/zero (0.00s)
 === RUN   TestConfChangeQuick
-    quick_test.go:114: initial setup: ConfChangeAddNode(1) ConfChangeAddNode(4) ConfChangeAddNode(2) ConfChangeAddNode(2) ConfChangeAddNode(5)
-    quick_test.go:115: changes: ConfChangeAddNode(8) ConfChangeRemoveNode(8) ConfChangeAddLearnerNode(8) ConfChangeUpdateNode(10) ConfChangeRemoveNode(10) ConfChangeRemoveNode(9) ConfChangeAddLearnerNode(10) ConfChangeAddLearnerNode(4)
-    quick_test.go:116: voters=(1 2 5) learners=(4 8 10)
+    quick_test.go:114: initial setup: ConfChangeAddNode(1) ConfChangeAddNode(4) ConfChangeAddNode(2) ConfChangeAddNode(3) ConfChangeAddNode(4) ConfChangeAddNode(1)
+    quick_test.go:115: changes: ConfChangeAddNode(2) ConfChangeRemoveNode(3) ConfChangeUpdateNode(9) ConfChangeAddLearnerNode(10) ConfChangeUpdateNode(5) ConfChangeAddLearnerNode(10) ConfChangeAddLearnerNode(6) ConfChangeAddLearnerNode(2)
+    quick_test.go:116: voters=(1 4) learners=(2 6 10)
     quick_test.go:117: 1: StateProbe match=0 next=10
-        2: StateProbe match=0 next=10
-        4: StateProbe match=0 next=10 learner
-        5: StateProbe match=0 next=10
-        8: StateProbe match=0 next=10 learner
+        2: StateProbe match=0 next=10 learner
+        4: StateProbe match=0 next=10
+        6: StateProbe match=0 next=10 learner
         10: StateProbe match=0 next=10 learner
         
-    quick_test.go:114: initial setup: ConfChangeAddNode(1) ConfChangeAddNode(2) ConfChangeAddNode(4)
-    quick_test.go:115: changes: ConfChangeAddNode(8) ConfChangeAddLearnerNode(4) ConfChangeAddNode(8) ConfChangeUpdateNode(5) ConfChangeUpdateNode(4) ConfChangeRemoveNode(10) ConfChangeAddNode(10) ConfChangeRemoveNode(7) ConfChangeRemoveNode(9)
-    quick_test.go:116: voters=(1 2 8 10) learners=(4)
+    quick_test.go:114: initial setup: ConfChangeAddNode(1) ConfChangeAddNode(1) ConfChangeAddNode(2) ConfChangeAddNode(2) ConfChangeAddNode(5) ConfChangeAddNode(4)
+    quick_test.go:115: changes: ConfChangeRemoveNode(9) ConfChangeRemoveNode(10) ConfChangeRemoveNode(8) ConfChangeRemoveNode(7) ConfChangeUpdateNode(7) ConfChangeRemoveNode(10)
+    quick_test.go:116: voters=(1 2 4 5)
     quick_test.go:117: 1: StateProbe match=0 next=10
         2: StateProbe match=0 next=10
-        4: StateProbe match=0 next=10 learner
-        8: StateProbe match=0 next=10
-        10: StateProbe match=0 next=10
+        4: StateProbe match=0 next=10
+        5: StateProbe match=0 next=10
         
-    quick_test.go:114: initial setup: ConfChangeAddNode(1) ConfChangeAddNode(5) ConfChangeAddNode(1) ConfChangeAddNode(1) ConfChangeAddNode(5) ConfChangeAddNode(2)
-    quick_test.go:115: changes: ConfChangeAddNode(5) ConfChangeRemoveNode(5) ConfChangeAddNode(3) ConfChangeUpdateNode(7) ConfChangeAddNode(3) ConfChangeRemoveNode(2) ConfChangeRemoveNode(10) ConfChangeUpdateNode(8) ConfChangeAddLearnerNode(6)
-    quick_test.go:116: voters=(1 3) learners=(6)
+    quick_test.go:114: initial setup: ConfChangeAddNode(1) ConfChangeAddNode(5) ConfChangeAddNode(2)
+    quick_test.go:115: changes: ConfChangeAddNode(6) ConfChangeAddLearnerNode(3) ConfChangeRemoveNode(4) ConfChangeAddLearnerNode(5) ConfChangeAddNode(5) ConfChangeAddNode(6) ConfChangeAddLearnerNode(8) ConfChangeAddNode(5) ConfChangeRemoveNode(6)
+    quick_test.go:116: voters=(1 2 5) learners=(3 8)
     quick_test.go:117: 1: StateProbe match=0 next=10
-        3: StateProbe match=0 next=10
-        6: StateProbe match=0 next=10 learner
+        2: StateProbe match=0 next=10
+        3: StateProbe match=0 next=10 learner
+        5: StateProbe match=0 next=10
+        8: StateProbe match=0 next=10 learner
         
-    quick_test.go:114: initial setup: ConfChangeAddNode(1) ConfChangeAddNode(3) ConfChangeAddNode(4) ConfChangeAddNode(3)
-    quick_test.go:115: changes: ConfChangeAddLearnerNode(9) ConfChangeAddLearnerNode(5) ConfChangeAddLearnerNode(9) ConfChangeAddNode(5) ConfChangeRemoveNode(5) ConfChangeUpdateNode(3) ConfChangeAddLearnerNode(3) ConfChangeUpdateNode(5)
-    quick_test.go:116: voters=(1 4) learners=(3 9)
+    quick_test.go:114: initial setup: ConfChangeAddNode(1) ConfChangeAddNode(1) ConfChangeAddNode(1)
+    quick_test.go:115: changes: ConfChangeAddLearnerNode(4) ConfChangeUpdateNode(6) ConfChangeRemoveNode(7) ConfChangeUpdateNode(3) ConfChangeAddNode(6) ConfChangeUpdateNode(9) ConfChangeUpdateNode(3)
+    quick_test.go:116: voters=(1 6) learners=(4)
     quick_test.go:117: 1: StateProbe match=0 next=10
-        3: StateProbe match=0 next=10 learner
-        4: StateProbe match=0 next=10
-        9: StateProbe match=0 next=10 learner
+        4: StateProbe match=0 next=10 learner
+        6: StateProbe match=0 next=10
         
-    quick_test.go:114: initial setup: ConfChangeAddNode(1) ConfChangeAddNode(3) ConfChangeAddNode(3)
-    quick_test.go:115: changes: ConfChangeUpdateNode(8) ConfChangeAddLearnerNode(9) ConfChangeRemoveNode(10) ConfChangeRemoveNode(9) ConfChangeAddLearnerNode(6)
-    quick_test.go:116: voters=(1 3) learners=(6)
+    quick_test.go:114: initial setup: ConfChangeAddNode(1) ConfChangeAddNode(3) ConfChangeAddNode(1)
+    quick_test.go:115: changes: ConfChangeAddLearnerNode(5)
+    quick_test.go:116: voters=(1 3) learners=(5)
     quick_test.go:117: 1: StateProbe match=0 next=10
         3: StateProbe match=0 next=10
-        6: StateProbe match=0 next=10 learner
+        5: StateProbe match=0 next=10 learner
         
---- PASS: TestConfChangeQuick (0.13s)
+--- PASS: TestConfChangeQuick (0.10s)
 === RUN   TestRestore
---- PASS: TestRestore (0.05s)
+--- PASS: TestRestore (0.04s)
 PASS
-ok  	go.etcd.io/etcd/raft/confchange	0.185s
+ok  	go.etcd.io/etcd/raft/confchange	0.148s
 === RUN   TestDataDriven
 === RUN   TestDataDriven/joint_commit
     datadriven_test.go:38: 
@@ -14220,17 +14245,17 @@
         <no input to command>
         ----
         VoteLost
---- PASS: TestDataDriven (0.01s)
+--- PASS: TestDataDriven (0.00s)
     --- PASS: TestDataDriven/joint_commit (0.00s)
     --- PASS: TestDataDriven/joint_vote (0.00s)
     --- PASS: TestDataDriven/majority_commit (0.00s)
     --- PASS: TestDataDriven/majority_vote (0.00s)
 === RUN   TestQuick
 === RUN   TestQuick/majority_commit
---- PASS: TestQuick (0.44s)
-    --- PASS: TestQuick/majority_commit (0.44s)
+--- PASS: TestQuick (0.22s)
+    --- PASS: TestQuick/majority_commit (0.22s)
 PASS
-ok  	go.etcd.io/etcd/raft/quorum	0.457s
+ok  	go.etcd.io/etcd/raft/quorum	0.225s
 === RUN   TestConfState_Equivalent
 === RUN   TestConfState_Equivalent/#00
 === RUN   TestConfState_Equivalent/#01
@@ -14248,293 +14273,280 @@
 === RUN   TestProtoMemorySizes
 --- PASS: TestProtoMemorySizes (0.00s)
 PASS
-ok  	go.etcd.io/etcd/raft/raftpb	0.009s
+ok  	go.etcd.io/etcd/raft/raftpb	0.007s
 === RUN   TestNetworkDrop
 --- PASS: TestNetworkDrop (0.00s)
 === RUN   TestNetworkDelay
---- PASS: TestNetworkDelay (0.12s)
+--- PASS: TestNetworkDelay (0.13s)
 === RUN   TestBasicProgress
-raft2026/04/07 08:43:50 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:50 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:50 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:50 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:50 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:50 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:50 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:50 INFO: 1 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:50 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:50 INFO: 2 switched to configuration voters=()
-raft2026/04/07 08:43:50 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:50 INFO: newRaft 2 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:50 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:50 INFO: 2 switched to configuration voters=(1)
-raft2026/04/07 08:43:50 INFO: 2 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:50 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:50 INFO: 2 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:50 INFO: 2 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:50 INFO: 3 switched to configuration voters=()
-raft2026/04/07 08:43:50 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:50 INFO: newRaft 3 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:50 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:50 INFO: 3 switched to configuration voters=(1)
-raft2026/04/07 08:43:50 INFO: 3 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:50 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:50 INFO: 3 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:50 INFO: 3 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:50 INFO: 4 switched to configuration voters=()
-raft2026/04/07 08:43:50 INFO: 4 became follower at term 0
-raft2026/04/07 08:43:50 INFO: newRaft 4 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:50 INFO: 4 became follower at term 1
-raft2026/04/07 08:43:50 INFO: 4 switched to configuration voters=(1)
-raft2026/04/07 08:43:50 INFO: 4 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:50 INFO: 4 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:50 INFO: 4 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:50 INFO: 4 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:50 INFO: 5 switched to configuration voters=()
-raft2026/04/07 08:43:50 INFO: 5 became follower at term 0
-raft2026/04/07 08:43:50 INFO: newRaft 5 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:50 INFO: 5 became follower at term 1
-raft2026/04/07 08:43:50 INFO: 5 switched to configuration voters=(1)
-raft2026/04/07 08:43:50 INFO: 5 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:50 INFO: 5 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:50 INFO: 5 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:50 INFO: 5 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:50 INFO: 1 is starting a new election at term 1
-raft2026/04/07 08:43:50 INFO: 1 became candidate at term 2
-raft2026/04/07 08:43:50 INFO: 1 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:50 INFO: 1 [logterm: 1, index: 5] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:50 INFO: 1 [logterm: 1, index: 5] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:50 INFO: 1 [logterm: 1, index: 5] sent MsgVote request to 4 at term 2
-raft2026/04/07 08:43:50 INFO: 1 [logterm: 1, index: 5] sent MsgVote request to 5 at term 2
-raft2026/04/07 08:43:50 INFO: 3 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:50 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:50 INFO: 3 [logterm: 1, index: 5, vote: 0] cast MsgVote for 1 [logterm: 1, index: 5] at term 2
-raft2026/04/07 08:43:50 INFO: 5 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:50 INFO: 5 became follower at term 2
-raft2026/04/07 08:43:50 INFO: 5 [logterm: 1, index: 5, vote: 0] cast MsgVote for 1 [logterm: 1, index: 5] at term 2
-raft2026/04/07 08:43:50 INFO: 4 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
-raft2026/04/07 08:43:50 INFO: 4 became follower at term 2
-raft2026/04/07 08:43:50 INFO: 4 [logterm: 1, index: 5, vote: 0] cast MsgVote for 1 [logterm: 1, index: 5] at term 2
-raft2026/04/07 08:43:50 INFO: 1 received MsgVoteResp from 4 at term 2
-raft2026/04/07 08:43:50 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:50 INFO: 2 is starting a new election at term 1
-raft2026/04/07 08:43:50 INFO: 2 became candidate at term 2
-raft2026/04/07 08:43:50 INFO: 2 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:50 INFO: 2 [logterm: 1, index: 5] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:50 INFO: 2 [logterm: 1, index: 5] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:50 INFO: 2 [logterm: 1, index: 5] sent MsgVote request to 4 at term 2
-raft2026/04/07 08:43:50 INFO: 2 [logterm: 1, index: 5] sent MsgVote request to 5 at term 2
-raft2026/04/07 08:43:50 INFO: 1 received MsgVoteResp from 5 at term 2
-raft2026/04/07 08:43:50 INFO: 1 has received 3 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:50 INFO: 1 became leader at term 2
-raft2026/04/07 08:43:50 INFO: raft.node: 1 elected leader 1 at term 2
-raft2026/04/07 08:43:50 INFO: 3 [logterm: 1, index: 5, vote: 1] rejected MsgVote from 2 [logterm: 1, index: 5] at term 2
-raft2026/04/07 08:43:50 INFO: raft.node: 4 elected leader 1 at term 2
-raft2026/04/07 08:43:50 INFO: 2 [logterm: 1, index: 5, vote: 2] rejected MsgVote from 1 [logterm: 1, index: 5] at term 2
-raft2026/04/07 08:43:50 INFO: 1 [logterm: 2, index: 106, vote: 1] rejected MsgVote from 2 [logterm: 1, index: 5] at term 2
-raft2026/04/07 08:43:50 INFO: 4 [logterm: 2, index: 6, vote: 1] rejected MsgVote from 2 [logterm: 1, index: 5] at term 2
-raft2026/04/07 08:43:50 INFO: 5 [logterm: 1, index: 5, vote: 1] rejected MsgVote from 2 [logterm: 1, index: 5] at term 2
-raft2026/04/07 08:43:50 INFO: 2 became follower at term 2
-raft2026/04/07 08:43:50 INFO: raft.node: 2 elected leader 1 at term 2
-raft2026/04/07 08:43:50 INFO: raft.node: 3 elected leader 1 at term 2
-raft2026/04/07 08:43:50 INFO: raft.node: 5 elected leader 1 at term 2
-2026/04/07 08:43:50 raft.1: stop
-2026/04/07 08:43:50 raft.2: stop
-2026/04/07 08:43:50 raft.3: stop
-2026/04/07 08:43:50 raft.4: stop
-2026/04/07 08:43:50 raft.5: stop
---- PASS: TestBasicProgress (0.16s)
+raft2025/03/06 04:28:15 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:15 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:15 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:15 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:15 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:15 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:15 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:15 INFO: 1 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:15 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:15 INFO: 2 switched to configuration voters=()
+raft2025/03/06 04:28:15 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:15 INFO: newRaft 2 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:15 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:15 INFO: 2 switched to configuration voters=(1)
+raft2025/03/06 04:28:15 INFO: 2 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:15 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:15 INFO: 2 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:15 INFO: 2 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:15 INFO: 3 switched to configuration voters=()
+raft2025/03/06 04:28:15 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:15 INFO: newRaft 3 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:15 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:15 INFO: 3 switched to configuration voters=(1)
+raft2025/03/06 04:28:15 INFO: 3 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:15 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:15 INFO: 3 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:15 INFO: 3 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:15 INFO: 4 switched to configuration voters=()
+raft2025/03/06 04:28:15 INFO: 4 became follower at term 0
+raft2025/03/06 04:28:15 INFO: newRaft 4 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:15 INFO: 4 became follower at term 1
+raft2025/03/06 04:28:15 INFO: 4 switched to configuration voters=(1)
+raft2025/03/06 04:28:15 INFO: 4 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:15 INFO: 4 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:15 INFO: 4 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:15 INFO: 4 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:15 INFO: 5 switched to configuration voters=()
+raft2025/03/06 04:28:15 INFO: 5 became follower at term 0
+raft2025/03/06 04:28:15 INFO: newRaft 5 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:15 INFO: 5 became follower at term 1
+raft2025/03/06 04:28:15 INFO: 5 switched to configuration voters=(1)
+raft2025/03/06 04:28:15 INFO: 5 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:15 INFO: 5 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:15 INFO: 5 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:15 INFO: 5 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:15 INFO: 1 is starting a new election at term 1
+raft2025/03/06 04:28:15 INFO: 1 became candidate at term 2
+raft2025/03/06 04:28:15 INFO: 1 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:15 INFO: 1 [logterm: 1, index: 5] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:15 INFO: 1 [logterm: 1, index: 5] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:15 INFO: 1 [logterm: 1, index: 5] sent MsgVote request to 4 at term 2
+raft2025/03/06 04:28:15 INFO: 1 [logterm: 1, index: 5] sent MsgVote request to 5 at term 2
+raft2025/03/06 04:28:15 INFO: 4 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:15 INFO: 4 became follower at term 2
+raft2025/03/06 04:28:15 INFO: 4 [logterm: 1, index: 5, vote: 0] cast MsgVote for 1 [logterm: 1, index: 5] at term 2
+raft2025/03/06 04:28:15 INFO: 3 is starting a new election at term 1
+raft2025/03/06 04:28:15 INFO: 3 became candidate at term 2
+raft2025/03/06 04:28:15 INFO: 3 received MsgVoteResp from 3 at term 2
+raft2025/03/06 04:28:15 INFO: 3 [logterm: 1, index: 5] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:15 INFO: 3 [logterm: 1, index: 5] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:15 INFO: 3 [logterm: 1, index: 5] sent MsgVote request to 4 at term 2
+raft2025/03/06 04:28:15 INFO: 3 [logterm: 1, index: 5] sent MsgVote request to 5 at term 2
+raft2025/03/06 04:28:15 INFO: 1 [logterm: 1, index: 5, vote: 1] rejected MsgVote from 3 [logterm: 1, index: 5] at term 2
+raft2025/03/06 04:28:15 INFO: 2 [term: 1] received a MsgVote message with higher term from 1 [term: 2]
+raft2025/03/06 04:28:15 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:15 INFO: 2 [logterm: 1, index: 5, vote: 0] cast MsgVote for 1 [logterm: 1, index: 5] at term 2
+raft2025/03/06 04:28:15 INFO: 5 [term: 1] received a MsgVote message with higher term from 3 [term: 2]
+raft2025/03/06 04:28:15 INFO: 5 became follower at term 2
+raft2025/03/06 04:28:15 INFO: 5 [logterm: 1, index: 5, vote: 0] cast MsgVote for 3 [logterm: 1, index: 5] at term 2
+raft2025/03/06 04:28:15 INFO: 4 [logterm: 1, index: 5, vote: 1] rejected MsgVote from 3 [logterm: 1, index: 5] at term 2
+raft2025/03/06 04:28:15 INFO: 3 [logterm: 1, index: 5, vote: 3] rejected MsgVote from 1 [logterm: 1, index: 5] at term 2
+raft2025/03/06 04:28:15 INFO: 5 [logterm: 1, index: 5, vote: 3] rejected MsgVote from 1 [logterm: 1, index: 5] at term 2
+raft2025/03/06 04:28:15 INFO: 2 [logterm: 1, index: 5, vote: 1] rejected MsgVote from 3 [logterm: 1, index: 5] at term 2
+raft2025/03/06 04:28:15 INFO: 1 received MsgVoteResp from 4 at term 2
+raft2025/03/06 04:28:15 INFO: 1 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:15 INFO: 3 received MsgVoteResp from 5 at term 2
+raft2025/03/06 04:28:15 INFO: 3 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:15 INFO: 1 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:15 INFO: 1 has received 3 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:15 INFO: 1 became leader at term 2
+raft2025/03/06 04:28:15 INFO: raft.node: 1 elected leader 1 at term 2
+raft2025/03/06 04:28:15 INFO: 3 received MsgVoteResp rejection from 1 at term 2
+raft2025/03/06 04:28:15 INFO: 3 has received 2 MsgVoteResp votes and 1 vote rejections
+raft2025/03/06 04:28:15 INFO: 3 received MsgVoteResp rejection from 4 at term 2
+raft2025/03/06 04:28:15 INFO: 3 has received 2 MsgVoteResp votes and 2 vote rejections
+raft2025/03/06 04:28:15 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:15 INFO: raft.node: 3 elected leader 1 at term 2
+raft2025/03/06 04:28:15 INFO: raft.node: 4 elected leader 1 at term 2
+raft2025/03/06 04:28:15 INFO: raft.node: 2 elected leader 1 at term 2
+raft2025/03/06 04:28:15 INFO: raft.node: 5 elected leader 1 at term 2
+2025/03/06 04:28:15 raft.1: stop
+2025/03/06 04:28:15 raft.2: stop
+2025/03/06 04:28:15 raft.3: stop
+2025/03/06 04:28:15 raft.4: stop
+2025/03/06 04:28:15 raft.5: stop
+--- PASS: TestBasicProgress (0.17s)
 === RUN   TestRestart
-raft2026/04/07 08:43:50 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:50 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:50 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:50 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:50 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:50 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:50 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:50 INFO: 1 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:50 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:50 INFO: 2 switched to configuration voters=()
-raft2026/04/07 08:43:50 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:50 INFO: newRaft 2 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:50 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:50 INFO: 2 switched to configuration voters=(1)
-raft2026/04/07 08:43:50 INFO: 2 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:50 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:50 INFO: 2 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:50 INFO: 2 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:50 INFO: 3 switched to configuration voters=()
-raft2026/04/07 08:43:50 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:50 INFO: newRaft 3 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:50 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:50 INFO: 3 switched to configuration voters=(1)
-raft2026/04/07 08:43:50 INFO: 3 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:50 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:50 INFO: 3 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:50 INFO: 3 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:50 INFO: 4 switched to configuration voters=()
-raft2026/04/07 08:43:50 INFO: 4 became follower at term 0
-raft2026/04/07 08:43:50 INFO: newRaft 4 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:50 INFO: 4 became follower at term 1
-raft2026/04/07 08:43:50 INFO: 4 switched to configuration voters=(1)
-raft2026/04/07 08:43:50 INFO: 4 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:50 INFO: 4 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:50 INFO: 4 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:50 INFO: 4 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:50 INFO: 5 switched to configuration voters=()
-raft2026/04/07 08:43:50 INFO: 5 became follower at term 0
-raft2026/04/07 08:43:50 INFO: newRaft 5 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:50 INFO: 5 became follower at term 1
-raft2026/04/07 08:43:50 INFO: 5 switched to configuration voters=(1)
-raft2026/04/07 08:43:50 INFO: 5 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:50 INFO: 5 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:50 INFO: 5 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:50 INFO: 5 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:51 INFO: 2 is starting a new election at term 1
-raft2026/04/07 08:43:51 INFO: 2 became candidate at term 2
-raft2026/04/07 08:43:51 INFO: 2 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:51 INFO: 2 [logterm: 1, index: 5] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:51 INFO: 2 [logterm: 1, index: 5] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:51 INFO: 2 [logterm: 1, index: 5] sent MsgVote request to 4 at term 2
-raft2026/04/07 08:43:51 INFO: 2 [logterm: 1, index: 5] sent MsgVote request to 5 at term 2
-raft2026/04/07 08:43:51 INFO: 3 is starting a new election at term 1
-raft2026/04/07 08:43:51 INFO: 3 became candidate at term 2
-raft2026/04/07 08:43:51 INFO: 3 received MsgVoteResp from 3 at term 2
-raft2026/04/07 08:43:51 INFO: 3 [logterm: 1, index: 5] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:51 INFO: 3 [logterm: 1, index: 5] sent MsgVote request to 2 at term 2
-raft2026/04/07 08:43:51 INFO: 3 [logterm: 1, index: 5] sent MsgVote request to 4 at term 2
-raft2026/04/07 08:43:51 INFO: 3 [logterm: 1, index: 5] sent MsgVote request to 5 at term 2
-raft2026/04/07 08:43:51 INFO: 4 [term: 1] received a MsgVote message with higher term from 3 [term: 2]
-raft2026/04/07 08:43:51 INFO: 4 became follower at term 2
-raft2026/04/07 08:43:51 INFO: 4 [logterm: 1, index: 5, vote: 0] cast MsgVote for 3 [logterm: 1, index: 5] at term 2
-raft2026/04/07 08:43:51 INFO: 5 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:51 INFO: 5 became follower at term 2
-raft2026/04/07 08:43:51 INFO: 5 [logterm: 1, index: 5, vote: 0] cast MsgVote for 2 [logterm: 1, index: 5] at term 2
-raft2026/04/07 08:43:51 INFO: 3 [logterm: 1, index: 5, vote: 3] rejected MsgVote from 2 [logterm: 1, index: 5] at term 2
-raft2026/04/07 08:43:51 INFO: 4 [logterm: 1, index: 5, vote: 3] rejected MsgVote from 2 [logterm: 1, index: 5] at term 2
-raft2026/04/07 08:43:51 INFO: 2 received MsgVoteResp rejection from 3 at term 2
-raft2026/04/07 08:43:51 INFO: 2 has received 1 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:51 INFO: 2 received MsgVoteResp rejection from 4 at term 2
-raft2026/04/07 08:43:51 INFO: 2 has received 1 MsgVoteResp votes and 2 vote rejections
-raft2026/04/07 08:43:51 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:51 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:51 INFO: 1 [logterm: 1, index: 5, vote: 0] cast MsgVote for 2 [logterm: 1, index: 5] at term 2
-raft2026/04/07 08:43:51 INFO: 2 [logterm: 1, index: 5, vote: 2] rejected MsgVote from 3 [logterm: 1, index: 5] at term 2
-raft2026/04/07 08:43:51 INFO: 5 [logterm: 1, index: 5, vote: 2] rejected MsgVote from 3 [logterm: 1, index: 5] at term 2
-raft2026/04/07 08:43:51 INFO: 1 [logterm: 1, index: 5, vote: 2] rejected MsgVote from 3 [logterm: 1, index: 5] at term 2
-raft2026/04/07 08:43:51 INFO: 2 received MsgVoteResp from 5 at term 2
-raft2026/04/07 08:43:51 INFO: 2 has received 2 MsgVoteResp votes and 2 vote rejections
-raft2026/04/07 08:43:51 INFO: 3 received MsgVoteResp rejection from 2 at term 2
-raft2026/04/07 08:43:51 INFO: 3 has received 1 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:51 INFO: 3 received MsgVoteResp from 4 at term 2
-raft2026/04/07 08:43:51 INFO: 3 has received 2 MsgVoteResp votes and 1 vote rejections
-raft2026/04/07 08:43:51 INFO: 2 received MsgVoteResp from 1 at term 2
-raft2026/04/07 08:43:51 INFO: 2 has received 3 MsgVoteResp votes and 2 vote rejections
-raft2026/04/07 08:43:51 INFO: 2 became leader at term 2
-raft2026/04/07 08:43:51 INFO: raft.node: 2 elected leader 2 at term 2
-raft2026/04/07 08:43:51 INFO: 3 received MsgVoteResp rejection from 5 at term 2
-raft2026/04/07 08:43:51 INFO: 3 has received 2 MsgVoteResp votes and 2 vote rejections
-2026/04/07 08:43:51 raft.3: stop
-raft2026/04/07 08:43:51 INFO: raft.node: 5 elected leader 2 at term 2
-2026/04/07 08:43:51 raft.4: stop
-raft2026/04/07 08:43:51 INFO: raft.node: 1 elected leader 2 at term 2
-raft2026/04/07 08:43:51 INFO: 4 switched to configuration voters=()
-raft2026/04/07 08:43:51 INFO: 4 became follower at term 2
-raft2026/04/07 08:43:51 INFO: newRaft 4 [peers: [], term: 2, commit: 5, applied: 0, lastindex: 5, lastterm: 1]
-raft2026/04/07 08:43:51 INFO: 3 switched to configuration voters=()
-raft2026/04/07 08:43:51 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:51 INFO: newRaft 3 [peers: [], term: 2, commit: 5, applied: 0, lastindex: 5, lastterm: 1]
-raft2026/04/07 08:43:51 INFO: raft.node: 3 elected leader 2 at term 2
-raft2026/04/07 08:43:51 INFO: raft.node: 4 elected leader 2 at term 2
-2026/04/07 08:43:51 raft.1: stop
-2026/04/07 08:43:51 raft.2: stop
-2026/04/07 08:43:51 raft.3: stop
-2026/04/07 08:43:51 raft.4: stop
-2026/04/07 08:43:51 raft.5: stop
+raft2025/03/06 04:28:15 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:15 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:15 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:15 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:15 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:15 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:15 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:15 INFO: 1 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:15 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:15 INFO: 2 switched to configuration voters=()
+raft2025/03/06 04:28:15 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:15 INFO: newRaft 2 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:15 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:15 INFO: 2 switched to configuration voters=(1)
+raft2025/03/06 04:28:15 INFO: 2 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:15 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:15 INFO: 2 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:15 INFO: 2 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:15 INFO: 3 switched to configuration voters=()
+raft2025/03/06 04:28:15 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:15 INFO: newRaft 3 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:15 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:15 INFO: 3 switched to configuration voters=(1)
+raft2025/03/06 04:28:15 INFO: 3 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:15 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:15 INFO: 3 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:15 INFO: 3 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:15 INFO: 4 switched to configuration voters=()
+raft2025/03/06 04:28:15 INFO: 4 became follower at term 0
+raft2025/03/06 04:28:15 INFO: newRaft 4 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:15 INFO: 4 became follower at term 1
+raft2025/03/06 04:28:15 INFO: 4 switched to configuration voters=(1)
+raft2025/03/06 04:28:15 INFO: 4 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:15 INFO: 4 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:15 INFO: 4 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:15 INFO: 4 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:15 INFO: 5 switched to configuration voters=()
+raft2025/03/06 04:28:15 INFO: 5 became follower at term 0
+raft2025/03/06 04:28:15 INFO: newRaft 5 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:15 INFO: 5 became follower at term 1
+raft2025/03/06 04:28:15 INFO: 5 switched to configuration voters=(1)
+raft2025/03/06 04:28:15 INFO: 5 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:15 INFO: 5 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:15 INFO: 5 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:15 INFO: 5 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:15 INFO: 4 is starting a new election at term 1
+raft2025/03/06 04:28:15 INFO: 4 became candidate at term 2
+raft2025/03/06 04:28:15 INFO: 4 received MsgVoteResp from 4 at term 2
+raft2025/03/06 04:28:15 INFO: 4 [logterm: 1, index: 5] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:15 INFO: 4 [logterm: 1, index: 5] sent MsgVote request to 2 at term 2
+raft2025/03/06 04:28:15 INFO: 4 [logterm: 1, index: 5] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:15 INFO: 4 [logterm: 1, index: 5] sent MsgVote request to 5 at term 2
+raft2025/03/06 04:28:15 INFO: 3 [term: 1] received a MsgVote message with higher term from 4 [term: 2]
+raft2025/03/06 04:28:15 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:15 INFO: 3 [logterm: 1, index: 5, vote: 0] cast MsgVote for 4 [logterm: 1, index: 5] at term 2
+raft2025/03/06 04:28:15 INFO: 1 [term: 1] received a MsgVote message with higher term from 4 [term: 2]
+raft2025/03/06 04:28:15 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:15 INFO: 1 [logterm: 1, index: 5, vote: 0] cast MsgVote for 4 [logterm: 1, index: 5] at term 2
+raft2025/03/06 04:28:15 INFO: 2 [term: 1] received a MsgVote message with higher term from 4 [term: 2]
+raft2025/03/06 04:28:15 INFO: 2 became follower at term 2
+raft2025/03/06 04:28:15 INFO: 2 [logterm: 1, index: 5, vote: 0] cast MsgVote for 4 [logterm: 1, index: 5] at term 2
+raft2025/03/06 04:28:15 INFO: 5 [term: 1] received a MsgVote message with higher term from 4 [term: 2]
+raft2025/03/06 04:28:15 INFO: 5 became follower at term 2
+raft2025/03/06 04:28:15 INFO: 5 [logterm: 1, index: 5, vote: 0] cast MsgVote for 4 [logterm: 1, index: 5] at term 2
+raft2025/03/06 04:28:15 INFO: 4 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:15 INFO: 4 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:15 INFO: 4 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:15 INFO: 4 has received 3 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:15 INFO: 4 became leader at term 2
+raft2025/03/06 04:28:15 INFO: raft.node: 4 elected leader 4 at term 2
+2025/03/06 04:28:15 raft.5: stop
+raft2025/03/06 04:28:15 INFO: raft.node: 2 elected leader 4 at term 2
+raft2025/03/06 04:28:15 INFO: raft.node: 3 elected leader 4 at term 2
+2025/03/06 04:28:15 raft.1: stop
+raft2025/03/06 04:28:15 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:15 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:15 INFO: newRaft 1 [peers: [], term: 2, commit: 5, applied: 0, lastindex: 5, lastterm: 1]
+raft2025/03/06 04:28:15 INFO: 5 switched to configuration voters=()
+raft2025/03/06 04:28:15 INFO: 5 became follower at term 2
+raft2025/03/06 04:28:15 INFO: newRaft 5 [peers: [], term: 2, commit: 5, applied: 0, lastindex: 5, lastterm: 1]
+raft2025/03/06 04:28:15 INFO: raft.node: 1 elected leader 4 at term 2
+raft2025/03/06 04:28:15 INFO: raft.node: 5 elected leader 4 at term 2
+2025/03/06 04:28:15 raft.1: stop
+2025/03/06 04:28:15 raft.2: stop
+2025/03/06 04:28:15 raft.3: stop
+2025/03/06 04:28:15 raft.4: stop
+2025/03/06 04:28:15 raft.5: stop
 --- PASS: TestRestart (0.17s)
 === RUN   TestPause
-raft2026/04/07 08:43:51 INFO: 1 switched to configuration voters=()
-raft2026/04/07 08:43:51 INFO: 1 became follower at term 0
-raft2026/04/07 08:43:51 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:51 INFO: 1 became follower at term 1
-raft2026/04/07 08:43:51 INFO: 1 switched to configuration voters=(1)
-raft2026/04/07 08:43:51 INFO: 1 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:51 INFO: 1 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:51 INFO: 1 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:51 INFO: 1 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:51 INFO: 2 switched to configuration voters=()
-raft2026/04/07 08:43:51 INFO: 2 became follower at term 0
-raft2026/04/07 08:43:51 INFO: newRaft 2 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:51 INFO: 2 became follower at term 1
-raft2026/04/07 08:43:51 INFO: 2 switched to configuration voters=(1)
-raft2026/04/07 08:43:51 INFO: 2 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:51 INFO: 2 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:51 INFO: 2 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:51 INFO: 2 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:51 INFO: 3 switched to configuration voters=()
-raft2026/04/07 08:43:51 INFO: 3 became follower at term 0
-raft2026/04/07 08:43:51 INFO: newRaft 3 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:51 INFO: 3 became follower at term 1
-raft2026/04/07 08:43:51 INFO: 3 switched to configuration voters=(1)
-raft2026/04/07 08:43:51 INFO: 3 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:51 INFO: 3 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:51 INFO: 3 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:51 INFO: 3 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:51 INFO: 4 switched to configuration voters=()
-raft2026/04/07 08:43:51 INFO: 4 became follower at term 0
-raft2026/04/07 08:43:51 INFO: newRaft 4 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:51 INFO: 4 became follower at term 1
-raft2026/04/07 08:43:51 INFO: 4 switched to configuration voters=(1)
-raft2026/04/07 08:43:51 INFO: 4 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:51 INFO: 4 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:51 INFO: 4 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:51 INFO: 4 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:51 INFO: 5 switched to configuration voters=()
-raft2026/04/07 08:43:51 INFO: 5 became follower at term 0
-raft2026/04/07 08:43:51 INFO: newRaft 5 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
-raft2026/04/07 08:43:51 INFO: 5 became follower at term 1
-raft2026/04/07 08:43:51 INFO: 5 switched to configuration voters=(1)
-raft2026/04/07 08:43:51 INFO: 5 switched to configuration voters=(1 2)
-raft2026/04/07 08:43:51 INFO: 5 switched to configuration voters=(1 2 3)
-raft2026/04/07 08:43:51 INFO: 5 switched to configuration voters=(1 2 3 4)
-raft2026/04/07 08:43:51 INFO: 5 switched to configuration voters=(1 2 3 4 5)
-raft2026/04/07 08:43:51 INFO: 2 is starting a new election at term 1
-raft2026/04/07 08:43:51 INFO: 2 became candidate at term 2
-raft2026/04/07 08:43:51 INFO: 2 received MsgVoteResp from 2 at term 2
-raft2026/04/07 08:43:51 INFO: 2 [logterm: 1, index: 5] sent MsgVote request to 1 at term 2
-raft2026/04/07 08:43:51 INFO: 2 [logterm: 1, index: 5] sent MsgVote request to 3 at term 2
-raft2026/04/07 08:43:51 INFO: 2 [logterm: 1, index: 5] sent MsgVote request to 4 at term 2
-raft2026/04/07 08:43:51 INFO: 2 [logterm: 1, index: 5] sent MsgVote request to 5 at term 2
-raft2026/04/07 08:43:51 INFO: 4 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:51 INFO: 4 became follower at term 2
-raft2026/04/07 08:43:51 INFO: 4 [logterm: 1, index: 5, vote: 0] cast MsgVote for 2 [logterm: 1, index: 5] at term 2
-raft2026/04/07 08:43:51 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:51 INFO: 3 became follower at term 2
-raft2026/04/07 08:43:51 INFO: 3 [logterm: 1, index: 5, vote: 0] cast MsgVote for 2 [logterm: 1, index: 5] at term 2
-raft2026/04/07 08:43:51 INFO: 2 received MsgVoteResp from 3 at term 2
-raft2026/04/07 08:43:51 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:51 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:51 INFO: 1 became follower at term 2
-raft2026/04/07 08:43:51 INFO: 1 [logterm: 1, index: 5, vote: 0] cast MsgVote for 2 [logterm: 1, index: 5] at term 2
-raft2026/04/07 08:43:51 INFO: 2 received MsgVoteResp from 4 at term 2
-raft2026/04/07 08:43:51 INFO: 2 has received 3 MsgVoteResp votes and 0 vote rejections
-raft2026/04/07 08:43:51 INFO: 2 became leader at term 2
-raft2026/04/07 08:43:51 INFO: raft.node: 2 elected leader 2 at term 2
-raft2026/04/07 08:43:51 INFO: 5 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
-raft2026/04/07 08:43:51 INFO: 5 became follower at term 2
-raft2026/04/07 08:43:51 INFO: 5 [logterm: 1, index: 5, vote: 0] cast MsgVote for 2 [logterm: 1, index: 5] at term 2
-raft2026/04/07 08:43:51 INFO: raft.node: 5 elected leader 2 at term 2
-raft2026/04/07 08:43:51 INFO: raft.node: 1 elected leader 2 at term 2
-raft2026/04/07 08:43:51 INFO: raft.node: 4 elected leader 2 at term 2
-raft2026/04/07 08:43:51 INFO: raft.node: 3 elected leader 2 at term 2
-2026/04/07 08:43:51 raft.1: stop
-2026/04/07 08:43:51 raft.2: stop
-2026/04/07 08:43:51 raft.3: stop
-2026/04/07 08:43:51 raft.4: stop
-2026/04/07 08:43:51 raft.5: stop
---- PASS: TestPause (0.17s)
+raft2025/03/06 04:28:15 INFO: 1 switched to configuration voters=()
+raft2025/03/06 04:28:15 INFO: 1 became follower at term 0
+raft2025/03/06 04:28:15 INFO: newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:15 INFO: 1 became follower at term 1
+raft2025/03/06 04:28:15 INFO: 1 switched to configuration voters=(1)
+raft2025/03/06 04:28:15 INFO: 1 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:15 INFO: 1 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:15 INFO: 1 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:15 INFO: 1 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:15 INFO: 2 switched to configuration voters=()
+raft2025/03/06 04:28:15 INFO: 2 became follower at term 0
+raft2025/03/06 04:28:15 INFO: newRaft 2 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:15 INFO: 2 became follower at term 1
+raft2025/03/06 04:28:15 INFO: 2 switched to configuration voters=(1)
+raft2025/03/06 04:28:15 INFO: 2 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:15 INFO: 2 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:15 INFO: 2 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:15 INFO: 2 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:15 INFO: 3 switched to configuration voters=()
+raft2025/03/06 04:28:15 INFO: 3 became follower at term 0
+raft2025/03/06 04:28:15 INFO: newRaft 3 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:15 INFO: 3 became follower at term 1
+raft2025/03/06 04:28:15 INFO: 3 switched to configuration voters=(1)
+raft2025/03/06 04:28:15 INFO: 3 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:15 INFO: 3 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:15 INFO: 3 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:15 INFO: 3 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:15 INFO: 4 switched to configuration voters=()
+raft2025/03/06 04:28:15 INFO: 4 became follower at term 0
+raft2025/03/06 04:28:15 INFO: newRaft 4 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:15 INFO: 4 became follower at term 1
+raft2025/03/06 04:28:15 INFO: 4 switched to configuration voters=(1)
+raft2025/03/06 04:28:15 INFO: 4 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:15 INFO: 4 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:15 INFO: 4 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:15 INFO: 4 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:15 INFO: 5 switched to configuration voters=()
+raft2025/03/06 04:28:15 INFO: 5 became follower at term 0
+raft2025/03/06 04:28:15 INFO: newRaft 5 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
+raft2025/03/06 04:28:15 INFO: 5 became follower at term 1
+raft2025/03/06 04:28:15 INFO: 5 switched to configuration voters=(1)
+raft2025/03/06 04:28:15 INFO: 5 switched to configuration voters=(1 2)
+raft2025/03/06 04:28:15 INFO: 5 switched to configuration voters=(1 2 3)
+raft2025/03/06 04:28:15 INFO: 5 switched to configuration voters=(1 2 3 4)
+raft2025/03/06 04:28:15 INFO: 5 switched to configuration voters=(1 2 3 4 5)
+raft2025/03/06 04:28:16 INFO: 2 is starting a new election at term 1
+raft2025/03/06 04:28:16 INFO: 2 became candidate at term 2
+raft2025/03/06 04:28:16 INFO: 2 received MsgVoteResp from 2 at term 2
+raft2025/03/06 04:28:16 INFO: 2 [logterm: 1, index: 5] sent MsgVote request to 1 at term 2
+raft2025/03/06 04:28:16 INFO: 2 [logterm: 1, index: 5] sent MsgVote request to 3 at term 2
+raft2025/03/06 04:28:16 INFO: 2 [logterm: 1, index: 5] sent MsgVote request to 4 at term 2
+raft2025/03/06 04:28:16 INFO: 2 [logterm: 1, index: 5] sent MsgVote request to 5 at term 2
+raft2025/03/06 04:28:16 INFO: 1 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:16 INFO: 1 became follower at term 2
+raft2025/03/06 04:28:16 INFO: 1 [logterm: 1, index: 5, vote: 0] cast MsgVote for 2 [logterm: 1, index: 5] at term 2
+raft2025/03/06 04:28:16 INFO: 3 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:16 INFO: 3 became follower at term 2
+raft2025/03/06 04:28:16 INFO: 3 [logterm: 1, index: 5, vote: 0] cast MsgVote for 2 [logterm: 1, index: 5] at term 2
+raft2025/03/06 04:28:16 INFO: 5 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:16 INFO: 5 became follower at term 2
+raft2025/03/06 04:28:16 INFO: 5 [logterm: 1, index: 5, vote: 0] cast MsgVote for 2 [logterm: 1, index: 5] at term 2
+raft2025/03/06 04:28:16 INFO: 4 [term: 1] received a MsgVote message with higher term from 2 [term: 2]
+raft2025/03/06 04:28:16 INFO: 4 became follower at term 2
+raft2025/03/06 04:28:16 INFO: 4 [logterm: 1, index: 5, vote: 0] cast MsgVote for 2 [logterm: 1, index: 5] at term 2
+raft2025/03/06 04:28:16 INFO: 2 received MsgVoteResp from 5 at term 2
+raft2025/03/06 04:28:16 INFO: 2 has received 2 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:16 INFO: 2 received MsgVoteResp from 1 at term 2
+raft2025/03/06 04:28:16 INFO: 2 has received 3 MsgVoteResp votes and 0 vote rejections
+raft2025/03/06 04:28:16 INFO: 2 became leader at term 2
+raft2025/03/06 04:28:16 INFO: raft.node: 2 elected leader 2 at term 2
+raft2025/03/06 04:28:16 INFO: raft.node: 4 elected leader 2 at term 2
+raft2025/03/06 04:28:16 INFO: raft.node: 5 elected leader 2 at term 2
+raft2025/03/06 04:28:16 INFO: raft.node: 1 elected leader 2 at term 2
+raft2025/03/06 04:28:16 INFO: raft.node: 3 elected leader 2 at term 2
+2025/03/06 04:28:16 raft.1: stop
+2025/03/06 04:28:16 raft.2: stop
+2025/03/06 04:28:16 raft.3: stop
+2025/03/06 04:28:16 raft.4: stop
+2025/03/06 04:28:16 raft.5: stop
+--- PASS: TestPause (0.18s)
 PASS
-ok  	go.etcd.io/etcd/raft/rafttest	0.634s
+ok  	go.etcd.io/etcd/raft/rafttest	0.661s
 === RUN   TestInflightsAdd
 --- PASS: TestInflightsAdd (0.00s)
 === RUN   TestInflightFreeTo
@@ -14559,10 +14571,9 @@
 --- PASS: TestProgressMaybeDecr (0.00s)
 PASS
 ok  	go.etcd.io/etcd/raft/tracker	0.009s
-2026/04/07 08:43:54 skip launching etcd server when invoked via go test
-ok  	go.etcd.io/etcd/server	0.047s
+2025/03/06 04:28:19 skip launching etcd server when invoked via go test
+ok  	go.etcd.io/etcd/server	0.048s
 === RUN   TestJWTInfo
-=== RUN   TestJWTInfo/HMAC
 === RUN   TestJWTInfo/RSA-priv
 === RUN   TestJWTInfo/RSA
 === RUN   TestJWTInfo/RSA/verify-only
@@ -14572,8 +14583,8 @@
 === RUN   TestJWTInfo/ECDSA-priv
 === RUN   TestJWTInfo/ECDSA
 === RUN   TestJWTInfo/ECDSA/verify-only
---- PASS: TestJWTInfo (0.05s)
-    --- PASS: TestJWTInfo/HMAC (0.00s)
+=== RUN   TestJWTInfo/HMAC
+--- PASS: TestJWTInfo (0.04s)
     --- PASS: TestJWTInfo/RSA-priv (0.01s)
     --- PASS: TestJWTInfo/RSA (0.01s)
         --- PASS: TestJWTInfo/RSA/verify-only (0.00s)
@@ -14583,34 +14594,35 @@
     --- PASS: TestJWTInfo/ECDSA-priv (0.00s)
     --- PASS: TestJWTInfo/ECDSA (0.00s)
         --- PASS: TestJWTInfo/ECDSA/verify-only (0.00s)
+    --- PASS: TestJWTInfo/HMAC (0.00s)
 === RUN   TestJWTBad
+=== RUN   TestJWTBad/no_options
+=== RUN   TestJWTBad/invalid_method
+=== RUN   TestJWTBad/invalid_ttl
+=== RUN   TestJWTBad/rsa_invalid_public_key
+=== RUN   TestJWTBad/missing_public_key_file
 === RUN   TestJWTBad/missing_private_key_file
+=== RUN   TestJWTBad/ecdsa_no_key
 === RUN   TestJWTBad/ecdsa_invalid_public_key
-=== RUN   TestJWTBad/ecdsa_invalid_private_key
 === RUN   TestJWTBad/rsa_no_key
-=== RUN   TestJWTBad/rsa_invalid_public_key
 === RUN   TestJWTBad/rsa_invalid_private_key
 === RUN   TestJWTBad/hmac_no_key
 === RUN   TestJWTBad/hmac_pub_key
-=== RUN   TestJWTBad/missing_public_key_file
-=== RUN   TestJWTBad/ecdsa_no_key
-=== RUN   TestJWTBad/no_options
-=== RUN   TestJWTBad/invalid_method
-=== RUN   TestJWTBad/invalid_ttl
+=== RUN   TestJWTBad/ecdsa_invalid_private_key
 --- PASS: TestJWTBad (0.00s)
+    --- PASS: TestJWTBad/no_options (0.00s)
+    --- PASS: TestJWTBad/invalid_method (0.00s)
+    --- PASS: TestJWTBad/invalid_ttl (0.00s)
+    --- PASS: TestJWTBad/rsa_invalid_public_key (0.00s)
+    --- PASS: TestJWTBad/missing_public_key_file (0.00s)
     --- PASS: TestJWTBad/missing_private_key_file (0.00s)
+    --- PASS: TestJWTBad/ecdsa_no_key (0.00s)
     --- PASS: TestJWTBad/ecdsa_invalid_public_key (0.00s)
-    --- PASS: TestJWTBad/ecdsa_invalid_private_key (0.00s)
     --- PASS: TestJWTBad/rsa_no_key (0.00s)
-    --- PASS: TestJWTBad/rsa_invalid_public_key (0.00s)
     --- PASS: TestJWTBad/rsa_invalid_private_key (0.00s)
     --- PASS: TestJWTBad/hmac_no_key (0.00s)
     --- PASS: TestJWTBad/hmac_pub_key (0.00s)
-    --- PASS: TestJWTBad/missing_public_key_file (0.00s)
-    --- PASS: TestJWTBad/ecdsa_no_key (0.00s)
-    --- PASS: TestJWTBad/no_options (0.00s)
-    --- PASS: TestJWTBad/invalid_method (0.00s)
-    --- PASS: TestJWTBad/invalid_ttl (0.00s)
+    --- PASS: TestJWTBad/ecdsa_invalid_private_key (0.00s)
 === RUN   TestJWTTokenWithMissingFields
 === RUN   TestJWTTokenWithMissingFields/valid_token
 === RUN   TestJWTTokenWithMissingFields/no_username
@@ -14657,7 +14669,7 @@
 {"level":"info","msg":"created a role","role-name":"root"}
 {"level":"info","msg":"granted a role to a user","user-name":"root","user-roles":["root"],"added-role-name":"root"}
 {"level":"info","msg":"enabled authentication"}
---- PASS: TestNewAuthStoreRevision (0.02s)
+--- PASS: TestNewAuthStoreRevision (0.03s)
 === RUN   TestNewAuthStoreBcryptCost
 {"level":"warn","msg":"simple token is not cryptographically signed"}
 {"level":"warn","msg":"use default bcrypt cost instead of the invalid given cost","min-cost":4,"max-cost":31,"default-cost":10,"given-cost":3}
@@ -14703,7 +14715,7 @@
 {"level":"info","msg":"added a user","user-name":"foo"}
 {"level":"info","msg":"added a user","user-name":"foo-no-user-options"}
 {"level":"info","msg":"invalid password","user-name":"foo"}
---- PASS: TestCheckPassword (0.02s)
+--- PASS: TestCheckPassword (0.01s)
 === RUN   TestUserDelete
 {"level":"warn","msg":"simple token is not cryptographically signed"}
 {"level":"info","msg":"added a user","user-name":"root"}
@@ -14762,7 +14774,7 @@
 {"level":"info","msg":"added a user","user-name":"foo"}
 {"level":"info","msg":"added a user","user-name":"foo-no-user-options"}
 {"level":"info","msg":"granted a role to a user","user-name":"foo","user-roles":["role-test"],"added-role-name":"role-test"}
---- PASS: TestUserGrant (0.01s)
+--- PASS: TestUserGrant (0.00s)
 === RUN   TestHasRole
 {"level":"warn","msg":"simple token is not cryptographically signed"}
 {"level":"info","msg":"added a user","user-name":"root"}
@@ -14774,7 +14786,7 @@
 {"level":"info","msg":"added a user","user-name":"foo-no-user-options"}
 {"level":"info","msg":"granted a role to a user","user-name":"foo","user-roles":["role-test"],"added-role-name":"role-test"}
 {"level":"warn","msg":"'has-role' requested for non-existing user","user-name":"nouser","role-name":"role-test"}
---- PASS: TestHasRole (0.01s)
+--- PASS: TestHasRole (0.00s)
 === RUN   TestIsOpPermitted
 {"level":"warn","msg":"simple token is not cryptographically signed"}
 {"level":"info","msg":"added a user","user-name":"root"}
@@ -15024,507 +15036,631 @@
 {"level":"info","msg":"added a user","user-name":"user-47"}
 {"level":"info","msg":"added a user","user-name":"user-48"}
 {"level":"info","msg":"added a user","user-name":"user-49"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-32","token":"user-32(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-30","token":"user-30(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-5","token":"user-5(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-10","token":"user-10(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-17","token":"user-17(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-19","token":"user-19(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-45","token":"user-45(0).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-39","token":"user-39(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-23","token":"user-23(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-25","token":"user-25(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-4","token":"user-4(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-29","token":"user-29(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-37","token":"user-37(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-47","token":"user-47(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-43","token":"user-43(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-9","token":"user-9(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-24","token":"user-24(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-45","token":"user-45(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-46","token":"user-46(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-49","token":"user-49(0).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-3","token":"user-3(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-18","token":"user-18(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-48","token":"user-48(0).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-12","token":"user-12(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-49","token":"user-49(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-2","token":"user-2(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-15","token":"user-15(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-33","token":"user-33(0).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-36","token":"user-36(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-16","token":"user-16(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-46","token":"user-46(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-27","token":"user-27(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-44","token":"user-44(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-29","token":"user-29(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-47","token":"user-47(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-15","token":"user-15(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-19","token":"user-19(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-23","token":"user-23(0).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-20","token":"user-20(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-0","token":"user-0(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-1","token":"user-1(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-24","token":"user-24(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-14","token":"user-14(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-42","token":"user-42(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-30","token":"user-30(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-33","token":"user-33(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-41","token":"user-41(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-5","token":"user-5(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-6","token":"user-6(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-7","token":"user-7(0).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-8","token":"user-8(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-11","token":"user-11(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-26","token":"user-26(0).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-28","token":"user-28(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-38","token":"user-38(0).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-31","token":"user-31(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-38","token":"user-38(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-14","token":"user-14(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-34","token":"user-34(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-37","token":"user-37(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-18","token":"user-18(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-48","token":"user-48(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-0","token":"user-0(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-4","token":"user-4(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-13","token":"user-13(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-17","token":"user-17(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-32","token":"user-32(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-42","token":"user-42(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-1","token":"user-1(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-11","token":"user-11(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-2","token":"user-2(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-25","token":"user-25(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-27","token":"user-27(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-35","token":"user-35(0).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-40","token":"user-40(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-6","token":"user-6(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-9","token":"user-9(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-7","token":"user-7(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-16","token":"user-16(0).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-10","token":"user-10(0).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-21","token":"user-21(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-35","token":"user-35(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-41","token":"user-41(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-26","token":"user-26(0).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-22","token":"user-22(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-34","token":"user-34(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-43","token":"user-43(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-44","token":"user-44(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-13","token":"user-13(0).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-27","token":"user-27(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-8","token":"user-8(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-26","token":"user-26(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-31","token":"user-31(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-18","token":"user-18(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-9","token":"user-9(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-2","token":"user-2(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-36","token":"user-36(1).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-19","token":"user-19(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-11","token":"user-11(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-16","token":"user-16(1).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-20","token":"user-20(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-24","token":"user-24(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-35","token":"user-35(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-42","token":"user-42(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-22","token":"user-22(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-26","token":"user-26(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-4","token":"user-4(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-0","token":"user-0(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-30","token":"user-30(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-33","token":"user-33(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-41","token":"user-41(1).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-5","token":"user-5(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-1","token":"user-1(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-15","token":"user-15(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-14","token":"user-14(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-18","token":"user-18(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-13","token":"user-13(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-34","token":"user-34(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-6","token":"user-6(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-7","token":"user-7(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-4","token":"user-4(1).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-28","token":"user-28(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-13","token":"user-13(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-17","token":"user-17(1).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-32","token":"user-32(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-42","token":"user-42(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-1","token":"user-1(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-11","token":"user-11(1).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-38","token":"user-38(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-41","token":"user-41(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-14","token":"user-14(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-34","token":"user-34(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-37","token":"user-37(1).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-39","token":"user-39(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-40","token":"user-40(1).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-43","token":"user-43(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-25","token":"user-25(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-27","token":"user-27(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-35","token":"user-35(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-40","token":"user-40(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-24","token":"user-24(1).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-45","token":"user-45(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-6","token":"user-6(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-44","token":"user-44(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-9","token":"user-9(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-48","token":"user-48(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-49","token":"user-49(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-33","token":"user-33(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-36","token":"user-36(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-29","token":"user-29(1).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-46","token":"user-46(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-2","token":"user-2(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-47","token":"user-47(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-21","token":"user-21(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-30","token":"user-30(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-37","token":"user-37(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-17","token":"user-17(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-23","token":"user-23(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-7","token":"user-7(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-49","token":"user-49(1).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-3","token":"user-3(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-31","token":"user-31(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-25","token":"user-25(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-8","token":"user-8(1).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-12","token":"user-12(1).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-10","token":"user-10(1).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-3","token":"user-3(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-38","token":"user-38(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-15","token":"user-15(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-40","token":"user-40(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-12","token":"user-12(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-47","token":"user-47(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-48","token":"user-48(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-49","token":"user-49(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-2","token":"user-2(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-6","token":"user-6(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-33","token":"user-33(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-16","token":"user-16(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-21","token":"user-21(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-47","token":"user-47(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-15","token":"user-15(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-48","token":"user-48(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-44","token":"user-44(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-0","token":"user-0(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-22","token":"user-22(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-23","token":"user-23(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-29","token":"user-29(1).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-45","token":"user-45(2).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-9","token":"user-9(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-11","token":"user-11(2).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-36","token":"user-36(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-26","token":"user-26(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-46","token":"user-46(2).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-34","token":"user-34(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-27","token":"user-27(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-41","token":"user-41(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-13","token":"user-13(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-23","token":"user-23(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-46","token":"user-46(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-49","token":"user-49(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-3","token":"user-3(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-12","token":"user-12(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-24","token":"user-24(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-48","token":"user-48(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-44","token":"user-44(2).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-0","token":"user-0(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-43","token":"user-43(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-4","token":"user-4(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-47","token":"user-47(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-17","token":"user-17(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-32","token":"user-32(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-42","token":"user-42(2).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-1","token":"user-1(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-44","token":"user-44(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-14","token":"user-14(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-19","token":"user-19(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-11","token":"user-11(2).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-18","token":"user-18(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-28","token":"user-28(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-37","token":"user-37(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-31","token":"user-31(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-42","token":"user-42(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-22","token":"user-22(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-30","token":"user-30(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-24","token":"user-24(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-4","token":"user-4(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-5","token":"user-5(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-25","token":"user-25(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-27","token":"user-27(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-43","token":"user-43(2).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-35","token":"user-35(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-23","token":"user-23(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-13","token":"user-13(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-21","token":"user-21(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-10","token":"user-10(2).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-7","token":"user-7(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-17","token":"user-17(2).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-8","token":"user-8(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-32","token":"user-32(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-40","token":"user-40(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-26","token":"user-26(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-2","token":"user-2(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-28","token":"user-28(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-10","token":"user-10(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-31","token":"user-31(2).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-16","token":"user-16(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-38","token":"user-38(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-21","token":"user-21(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-14","token":"user-14(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-22","token":"user-22(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-29","token":"user-29(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-15","token":"user-15(2).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-20","token":"user-20(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-33","token":"user-33(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-19","token":"user-19(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-41","token":"user-41(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-30","token":"user-30(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-5","token":"user-5(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-6","token":"user-6(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-37","token":"user-37(2).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-39","token":"user-39(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-29","token":"user-29(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-25","token":"user-25(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-45","token":"user-45(2).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-48","token":"user-48(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-2","token":"user-2(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-20","token":"user-20(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-7","token":"user-7(3).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-37","token":"user-37(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-47","token":"user-47(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-3","token":"user-3(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-12","token":"user-12(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-30","token":"user-30(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-15","token":"user-15(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-49","token":"user-49(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-16","token":"user-16(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-23","token":"user-23(3).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-45","token":"user-45(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-24","token":"user-24(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-35","token":"user-35(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-42","token":"user-42(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-5","token":"user-5(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-36","token":"user-36(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-44","token":"user-44(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-8","token":"user-8(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-26","token":"user-26(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-28","token":"user-28(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-31","token":"user-31(3).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-38","token":"user-38(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-22","token":"user-22(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-33","token":"user-33(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-14","token":"user-14(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-34","token":"user-34(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-48","token":"user-48(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-0","token":"user-0(3).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-4","token":"user-4(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-13","token":"user-13(3).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-17","token":"user-17(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-36","token":"user-36(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-23","token":"user-23(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-46","token":"user-46(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-25","token":"user-25(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-27","token":"user-27(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-29","token":"user-29(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-10","token":"user-10(3).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-32","token":"user-32(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-0","token":"user-0(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-39","token":"user-39(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-5","token":"user-5(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-42","token":"user-42(3).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-1","token":"user-1(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-11","token":"user-11(3).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-18","token":"user-18(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-13","token":"user-13(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-14","token":"user-14(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-28","token":"user-28(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-25","token":"user-25(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-27","token":"user-27(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-35","token":"user-35(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-40","token":"user-40(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-2","token":"user-2(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-10","token":"user-10(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-16","token":"user-16(3).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-21","token":"user-21(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-7","token":"user-7(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-8","token":"user-8(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-31","token":"user-31(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-26","token":"user-26(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-9","token":"user-9(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-6","token":"user-6(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-22","token":"user-22(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-39","token":"user-39(3).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-43","token":"user-43(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-11","token":"user-11(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-40","token":"user-40(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-34","token":"user-34(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-9","token":"user-9(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-24","token":"user-24(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-29","token":"user-29(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-47","token":"user-47(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-15","token":"user-15(3).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-19","token":"user-19(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-20","token":"user-20(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-30","token":"user-30(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-33","token":"user-33(3).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-41","token":"user-41(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-44","token":"user-44(3).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-2","token":"user-2(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-20","token":"user-20(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-0","token":"user-0(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-41","token":"user-41(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-22","token":"user-22(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-38","token":"user-38(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-12","token":"user-12(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-15","token":"user-15(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-46","token":"user-46(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-49","token":"user-49(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-3","token":"user-3(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-12","token":"user-12(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-6","token":"user-6(3).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-7","token":"user-7(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-44","token":"user-44(4).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-16","token":"user-16(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-3","token":"user-3(4).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-33","token":"user-33(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-7","token":"user-7(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-36","token":"user-36(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-2","token":"user-2(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-40","token":"user-40(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-48","token":"user-48(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-0","token":"user-0(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-4","token":"user-4(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-13","token":"user-13(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-17","token":"user-17(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-32","token":"user-32(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-42","token":"user-42(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-1","token":"user-1(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-6","token":"user-6(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-10","token":"user-10(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-8","token":"user-8(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-9","token":"user-9(4).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-24","token":"user-24(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-45","token":"user-45(4).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-46","token":"user-46(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-35","token":"user-35(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-27","token":"user-27(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-42","token":"user-42(4).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-49","token":"user-49(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-8","token":"user-8(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-4","token":"user-4(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-10","token":"user-10(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-5","token":"user-5(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-32","token":"user-32(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-13","token":"user-13(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-39","token":"user-39(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-3","token":"user-3(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-12","token":"user-12(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-36","token":"user-36(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-15","token":"user-15(4).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-21","token":"user-21(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-45","token":"user-45(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-31","token":"user-31(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-48","token":"user-48(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-29","token":"user-29(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-11","token":"user-11(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-22","token":"user-22(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-43","token":"user-43(4).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-23","token":"user-23(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-1","token":"user-1(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-29","token":"user-29(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-26","token":"user-26(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-47","token":"user-47(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-28","token":"user-28(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-27","token":"user-27(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-31","token":"user-31(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-18","token":"user-18(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-38","token":"user-38(4).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-25","token":"user-25(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-17","token":"user-17(4).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-14","token":"user-14(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-30","token":"user-30(4).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-34","token":"user-34(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-18","token":"user-18(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-26","token":"user-26(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-28","token":"user-28(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-44","token":"user-44(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-40","token":"user-40(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-6","token":"user-6(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-9","token":"user-9(4).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-19","token":"user-19(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-30","token":"user-30(4).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-37","token":"user-37(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-47","token":"user-47(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-43","token":"user-43(4).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-45","token":"user-45(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-37","token":"user-37(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-33","token":"user-33(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-24","token":"user-24(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-19","token":"user-19(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-8","token":"user-8(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-20","token":"user-20(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-11","token":"user-11(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-39","token":"user-39(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-35","token":"user-35(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-41","token":"user-41(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-5","token":"user-5(4).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-27","token":"user-27(5).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-11","token":"user-11(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-30","token":"user-30(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-39","token":"user-39(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-20","token":"user-20(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-24","token":"user-24(5).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-48","token":"user-48(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-38","token":"user-38(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-28","token":"user-28(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-40","token":"user-40(5).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-49","token":"user-49(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-6","token":"user-6(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-18","token":"user-18(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-25","token":"user-25(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-31","token":"user-31(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-35","token":"user-35(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-40","token":"user-40(5).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-2","token":"user-2(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-9","token":"user-9(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-26","token":"user-26(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-10","token":"user-10(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-16","token":"user-16(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-21","token":"user-21(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-22","token":"user-22(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-23","token":"user-23(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-29","token":"user-29(5).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-47","token":"user-47(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-15","token":"user-15(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-19","token":"user-19(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-38","token":"user-38(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-14","token":"user-14(5).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-34","token":"user-34(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-3","token":"user-3(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-41","token":"user-41(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-21","token":"user-21(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-37","token":"user-37(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-39","token":"user-39(5).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-43","token":"user-43(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-31","token":"user-31(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-44","token":"user-44(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-9","token":"user-9(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-30","token":"user-30(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-33","token":"user-33(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-41","token":"user-41(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-5","token":"user-5(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-6","token":"user-6(5).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-7","token":"user-7(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-8","token":"user-8(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-26","token":"user-26(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-28","token":"user-28(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-0","token":"user-0(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-4","token":"user-4(5).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-13","token":"user-13(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-36","token":"user-36(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-10","token":"user-10(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-35","token":"user-35(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-46","token":"user-46(5).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-17","token":"user-17(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-32","token":"user-32(5).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-42","token":"user-42(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-27","token":"user-27(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-23","token":"user-23(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-22","token":"user-22(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-0","token":"user-0(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-25","token":"user-25(5).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-1","token":"user-1(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-4","token":"user-4(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-29","token":"user-29(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-14","token":"user-14(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-32","token":"user-32(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-5","token":"user-5(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-18","token":"user-18(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-15","token":"user-15(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-3","token":"user-3(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-45","token":"user-45(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-46","token":"user-46(5).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-12","token":"user-12(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-16","token":"user-16(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-20","token":"user-20(5).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-27","token":"user-27(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-46","token":"user-46(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-44","token":"user-44(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-49","token":"user-49(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-15","token":"user-15(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-16","token":"user-16(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-36","token":"user-36(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-44","token":"user-44(5).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-35","token":"user-35(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-47","token":"user-47(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-32","token":"user-32(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-7","token":"user-7(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-25","token":"user-25(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-40","token":"user-40(6).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-2","token":"user-2(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-34","token":"user-34(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-18","token":"user-18(6).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-10","token":"user-10(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-0","token":"user-0(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-1","token":"user-1(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-34","token":"user-34(6).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-14","token":"user-14(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-18","token":"user-18(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-28","token":"user-28(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-38","token":"user-38(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-20","token":"user-20(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-17","token":"user-17(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-24","token":"user-24(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-23","token":"user-23(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-35","token":"user-35(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-37","token":"user-37(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-16","token":"user-16(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-39","token":"user-39(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-21","token":"user-21(6).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-43","token":"user-43(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-25","token":"user-25(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-42","token":"user-42(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-29","token":"user-29(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-40","token":"user-40(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-32","token":"user-32(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-6","token":"user-6(6).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-22","token":"user-22(6).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-9","token":"user-9(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-39","token":"user-39(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-4","token":"user-4(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-11","token":"user-11(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-23","token":"user-23(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-24","token":"user-24(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-27","token":"user-27(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-29","token":"user-29(6).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-45","token":"user-45(6).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-5","token":"user-5(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-48","token":"user-48(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-26","token":"user-26(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-13","token":"user-13(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-21","token":"user-21(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-41","token":"user-41(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-8","token":"user-8(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-11","token":"user-11(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-20","token":"user-20(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-15","token":"user-15(6).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-19","token":"user-19(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-31","token":"user-31(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-33","token":"user-33(6).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-30","token":"user-30(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-7","token":"user-7(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-8","token":"user-8(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-41","token":"user-41(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-28","token":"user-28(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-31","token":"user-31(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-26","token":"user-26(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-38","token":"user-38(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-0","token":"user-0(6).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-12","token":"user-12(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-33","token":"user-33(6).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-36","token":"user-36(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-37","token":"user-37(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-47","token":"user-47(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-49","token":"user-49(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-44","token":"user-44(6).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-3","token":"user-3(6).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-34","token":"user-34(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-25","token":"user-25(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-39","token":"user-39(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-12","token":"user-12(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-26","token":"user-26(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-40","token":"user-40(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-41","token":"user-41(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-48","token":"user-48(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-17","token":"user-17(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-42","token":"user-42(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-4","token":"user-4(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-1","token":"user-1(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-13","token":"user-13(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-46","token":"user-46(6).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-6","token":"user-6(6).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-43","token":"user-43(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-44","token":"user-44(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-19","token":"user-19(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-27","token":"user-27(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-29","token":"user-29(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-32","token":"user-32(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-23","token":"user-23(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-0","token":"user-0(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-30","token":"user-30(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-1","token":"user-1(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-3","token":"user-3(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-33","token":"user-33(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-13","token":"user-13(7).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-37","token":"user-37(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-14","token":"user-14(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-47","token":"user-47(7).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-18","token":"user-18(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-28","token":"user-28(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-3","token":"user-3(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-38","token":"user-38(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-6","token":"user-6(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-10","token":"user-10(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-9","token":"user-9(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-24","token":"user-24(7).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-45","token":"user-45(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-11","token":"user-11(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-48","token":"user-48(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-33","token":"user-33(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-36","token":"user-36(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-49","token":"user-49(7).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-46","token":"user-46(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-2","token":"user-2(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-9","token":"user-9(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-31","token":"user-31(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-4","token":"user-4(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-8","token":"user-8(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-5","token":"user-5(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-15","token":"user-15(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-13","token":"user-13(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-7","token":"user-7(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-49","token":"user-49(7).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-16","token":"user-16(7).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-21","token":"user-21(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-35","token":"user-35(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-42","token":"user-42(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-20","token":"user-20(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-24","token":"user-24(7).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-22","token":"user-22(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-10","token":"user-10(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-23","token":"user-23(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-29","token":"user-29(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-47","token":"user-47(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-15","token":"user-15(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-19","token":"user-19(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-20","token":"user-20(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-30","token":"user-30(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-12","token":"user-12(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-36","token":"user-36(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-44","token":"user-44(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-48","token":"user-48(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-0","token":"user-0(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-4","token":"user-4(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-41","token":"user-41(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-5","token":"user-5(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-6","token":"user-6(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-7","token":"user-7(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-8","token":"user-8(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-26","token":"user-26(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-28","token":"user-28(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-31","token":"user-31(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-38","token":"user-38(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-14","token":"user-14(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-34","token":"user-34(7).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-17","token":"user-17(7).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-21","token":"user-21(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-28","token":"user-28(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-32","token":"user-32(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-42","token":"user-42(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-1","token":"user-1(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-11","token":"user-11(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-39","token":"user-39(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-35","token":"user-35(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-25","token":"user-25(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-27","token":"user-27(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-40","token":"user-40(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-2","token":"user-2(7).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-43","token":"user-43(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-9","token":"user-9(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-24","token":"user-24(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-45","token":"user-45(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-46","token":"user-46(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-49","token":"user-49(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-3","token":"user-3(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-12","token":"user-12(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-36","token":"user-36(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-44","token":"user-44(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-48","token":"user-48(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-0","token":"user-0(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-4","token":"user-4(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-13","token":"user-13(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-17","token":"user-17(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-32","token":"user-32(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-42","token":"user-42(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-1","token":"user-1(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-11","token":"user-11(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-18","token":"user-18(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-25","token":"user-25(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-27","token":"user-27(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-35","token":"user-35(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-40","token":"user-40(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-2","token":"user-2(8).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-10","token":"user-10(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-16","token":"user-16(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-21","token":"user-21(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-22","token":"user-22(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-23","token":"user-23(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-29","token":"user-29(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-47","token":"user-47(8).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-15","token":"user-15(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-44","token":"user-44(8).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-19","token":"user-19(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-20","token":"user-20(8).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-30","token":"user-30(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-13","token":"user-13(8).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-33","token":"user-33(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-18","token":"user-18(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-31","token":"user-31(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-45","token":"user-45(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-48","token":"user-48(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-41","token":"user-41(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-5","token":"user-5(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-6","token":"user-6(8).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-7","token":"user-7(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-49","token":"user-49(8).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-8","token":"user-8(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-2","token":"user-2(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-36","token":"user-36(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-38","token":"user-38(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-46","token":"user-46(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-40","token":"user-40(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-6","token":"user-6(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-27","token":"user-27(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-9","token":"user-9(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-0","token":"user-0(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-11","token":"user-11(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-1","token":"user-1(8).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-26","token":"user-26(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-28","token":"user-28(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-31","token":"user-31(8).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-38","token":"user-38(8).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-14","token":"user-14(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-17","token":"user-17(8).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-34","token":"user-34(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-23","token":"user-23(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-41","token":"user-41(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-25","token":"user-25(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-43","token":"user-43(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-12","token":"user-12(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-29","token":"user-29(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-32","token":"user-32(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-16","token":"user-16(8).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-37","token":"user-37(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-20","token":"user-20(8).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-39","token":"user-39(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-47","token":"user-47(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-24","token":"user-24(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-3","token":"user-3(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-35","token":"user-35(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-22","token":"user-22(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-4","token":"user-4(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-42","token":"user-42(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-5","token":"user-5(8).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-9","token":"user-9(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-8","token":"user-8(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-12","token":"user-12(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-49","token":"user-49(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-3","token":"user-3(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-20","token":"user-20(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-42","token":"user-42(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-18","token":"user-18(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-11","token":"user-11(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-31","token":"user-31(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-41","token":"user-41(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-5","token":"user-5(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-6","token":"user-6(9).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-7","token":"user-7(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-8","token":"user-8(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-26","token":"user-26(9).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-28","token":"user-28(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-21","token":"user-21(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-31","token":"user-31(9).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-38","token":"user-38(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-40","token":"user-40(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-6","token":"user-6(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-10","token":"user-10(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-14","token":"user-14(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-34","token":"user-34(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-37","token":"user-37(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-39","token":"user-39(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-43","token":"user-43(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-9","token":"user-9(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-24","token":"user-24(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-45","token":"user-45(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-46","token":"user-46(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-49","token":"user-49(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-3","token":"user-3(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-12","token":"user-12(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-36","token":"user-36(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-44","token":"user-44(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-48","token":"user-48(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-0","token":"user-0(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-4","token":"user-4(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-13","token":"user-13(9).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-17","token":"user-17(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-32","token":"user-32(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-42","token":"user-42(9).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-0","token":"user-0(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-2","token":"user-2(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-15","token":"user-15(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-0","token":"user-0(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-45","token":"user-45(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-47","token":"user-47(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-49","token":"user-49(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-0","token":"user-0(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-8","token":"user-8(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-35","token":"user-35(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-18","token":"user-18(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-7","token":"user-7(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-47","token":"user-47(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-10","token":"user-10(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-1","token":"user-1(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-19","token":"user-19(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-32","token":"user-32(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-12","token":"user-12(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-34","token":"user-34(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-5","token":"user-5(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-14","token":"user-14(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-36","token":"user-36(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-36","token":"user-36(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-33","token":"user-33(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-26","token":"user-26(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-44","token":"user-44(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-32","token":"user-32(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-2","token":"user-2(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-20","token":"user-20(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-20","token":"user-20(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-48","token":"user-48(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-16","token":"user-16(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-24","token":"user-24(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-39","token":"user-39(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-45","token":"user-45(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-46","token":"user-46(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-43","token":"user-43(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-36","token":"user-36(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-22","token":"user-22(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-25","token":"user-25(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-7","token":"user-7(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-22","token":"user-22(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-38","token":"user-38(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-43","token":"user-43(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-18","token":"user-18(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-11","token":"user-11(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-13","token":"user-13(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-29","token":"user-29(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-38","token":"user-38(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-21","token":"user-21(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-30","token":"user-30(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-9","token":"user-9(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-23","token":"user-23(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-25","token":"user-25(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-44","token":"user-44(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-32","token":"user-32(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-42","token":"user-42(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-24","token":"user-24(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-19","token":"user-19(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-47","token":"user-47(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-18","token":"user-18(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-46","token":"user-46(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-40","token":"user-40(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-34","token":"user-34(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-4","token":"user-4(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-4","token":"user-4(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-30","token":"user-30(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-42","token":"user-42(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-23","token":"user-23(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-17","token":"user-17(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-41","token":"user-41(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-4","token":"user-4(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-6","token":"user-6(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-35","token":"user-35(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-48","token":"user-48(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-37","token":"user-37(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-46","token":"user-46(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-37","token":"user-37(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-15","token":"user-15(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-39","token":"user-39(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-34","token":"user-34(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-40","token":"user-40(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-28","token":"user-28(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-49","token":"user-49(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-21","token":"user-21(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-27","token":"user-27(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-5","token":"user-5(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-29","token":"user-29(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-3","token":"user-3(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-13","token":"user-13(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-6","token":"user-6(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-10","token":"user-10(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-23","token":"user-23(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-24","token":"user-24(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-26","token":"user-26(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-11","token":"user-11(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-11","token":"user-11(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-1","token":"user-1(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-8","token":"user-8(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-48","token":"user-48(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-25","token":"user-25(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-27","token":"user-27(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-28","token":"user-28(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-33","token":"user-33(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-14","token":"user-14(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-17","token":"user-17(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-3","token":"user-3(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-1","token":"user-1(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-3","token":"user-3(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-27","token":"user-27(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-49","token":"user-49(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-16","token":"user-16(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-17","token":"user-17(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-42","token":"user-42(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-12","token":"user-12(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-9","token":"user-9(2).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-9","token":"user-9(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-41","token":"user-41(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-44","token":"user-44(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-12","token":"user-12(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-31","token":"user-31(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-13","token":"user-13(0).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-31","token":"user-31(1).1"}
+{"level":"debug","msg":"deleted a simple token","user-name":"user-45","token":"user-45(2).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-1","token":"user-1(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-22","token":"user-22(9).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-23","token":"user-23(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-25","token":"user-25(9).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-29","token":"user-29(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-32","token":"user-32(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-26","token":"user-26(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-39","token":"user-39(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-45","token":"user-45(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-47","token":"user-47(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-21","token":"user-21(9).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-15","token":"user-15(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-48","token":"user-48(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-16","token":"user-16(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-11","token":"user-11(9).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-19","token":"user-19(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-18","token":"user-18(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-20","token":"user-20(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-25","token":"user-25(9).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-30","token":"user-30(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-34","token":"user-34(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-24","token":"user-24(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-37","token":"user-37(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-41","token":"user-41(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-35","token":"user-35(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-47","token":"user-47(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-43","token":"user-43(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-44","token":"user-44(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-22","token":"user-22(9).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-27","token":"user-27(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-46","token":"user-46(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-4","token":"user-4(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-0","token":"user-0(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-2","token":"user-2(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-5","token":"user-5(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-14","token":"user-14(9).1"}
 {"level":"debug","msg":"authenticated a user","user-name":"user-33","token":"user-33(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-13","token":"user-13(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-36","token":"user-36(9).1"}
-{"level":"debug","msg":"authenticated a user","user-name":"user-1","token":"user-1(9).1"}
---- PASS: TestHammerSimpleAuthenticate (0.12s)
+{"level":"debug","msg":"authenticated a user","user-name":"user-35","token":"user-35(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-40","token":"user-40(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-10","token":"user-10(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-2","token":"user-2(9).1"}
+{"level":"debug","msg":"authenticated a user","user-name":"user-16","token":"user-16(9).1"}
+--- PASS: TestHammerSimpleAuthenticate (0.13s)
 === RUN   TestRolesOrder
 {"level":"warn","msg":"simple token is not cryptographically signed"}
 {"level":"info","msg":"added a user","user-name":"root"}
@@ -15555,7 +15691,7 @@
 {"level":"info","msg":"created a role","role-name":"root"}
 {"level":"info","msg":"granted a role to a user","user-name":"root","user-roles":["root"],"added-role-name":"root"}
 {"level":"info","msg":"enabled authentication"}
-{"level":"debug","msg":"created/assigned a new JWT token","user-name":"root","revision":4,"token":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NzU1OTQ5MzYsInJldmlzaW9uIjo0LCJ1c2VybmFtZSI6InJvb3QifQ.ZckdzVpp9Pp2ByHVff5xfmVr0su7wZrDNrl2WrETwjIJdKmkxTlffZ6jKxVW5g8ZOuF16GU7AlPfg8Ll5-LltUFuqYLU7cDDJ5OBDlo2EzjlUhL1liP7FM6FuDFeycM3c-kOYq5nLj-zlBpDOr70RnVVaiDXEcfdid1Qj0aMJokT6t62a2dJg229Pmz-imc_dXdFIQnA6dH9iXbxuX_v5Fi3tUO3LL9IX7HY4T_QuqoLSKjVRUN87uZa9glvk3L4sDlq3K-Hj4UostYwumzjA0xPgxqSCcMMPyFXAN6wS2MG-cVBTl8i_pfgT797UrN7K5LdtAzyujoyv1M4QiB9yA"}
+{"level":"debug","msg":"created/assigned a new JWT token","user-name":"root","revision":4,"token":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NDExODUyMDEsInJldmlzaW9uIjo0LCJ1c2VybmFtZSI6InJvb3QifQ.Mdq5v9d1kMqzJkZHh4qE5txWL7rE_tvm_FQvxQ5ISDr4XPGHT3Z8hxuyG2i6J0lgc6z4xZE5-0AKA9FkhYQcImFKktJBOkj-G45_kAobB5JFM12zxA-KrOpyGPnOB6P8MPN2z5alEjw6JdOnaGpK9-9dHLPQESxqhq8tFjEdHru9IIWNfw9dwWeVkMzi-kE5bytv7fUIJgvie-bYGlzDzmAE1vs2JaEgJn8dIzr_xPTU9Vcn1Cl7__rSAO-EQmlU4F5k7qGzs1PKm9h817tafsdZsGNkBiAKZV1BSF3c5fjnxyh9IbDV_rySPAsMP7XEw0NGxBWZKQksfT2P2sDQ-g"}
 --- PASS: TestAuthInfoFromCtxWithRootJWT (0.02s)
 === RUN   TestUserNoPasswordAdd
 {"level":"warn","msg":"simple token is not cryptographically signed"}
@@ -15591,9 +15727,9 @@
 {"level":"debug","msg":"authenticated a user","user-name":"foo","token":"dummy.1"}
 {"level":"info","msg":"changed a password of a user","user-name":"foo","user-roles":[]}
 {"level":"debug","msg":"authenticated a user","user-name":"foo","token":"dummy.2"}
---- PASS: TestUserChangePasswordWithOldLog (0.02s)
+--- PASS: TestUserChangePasswordWithOldLog (0.01s)
 PASS
-ok  	go.etcd.io/etcd/server/auth	0.564s
+ok  	go.etcd.io/etcd/server/auth	0.575s
 === RUN   TestConfigVerifyBootstrapWithoutClusterAndDiscoveryURLFail
 --- PASS: TestConfigVerifyBootstrapWithoutClusterAndDiscoveryURLFail (0.00s)
 === RUN   TestConfigVerifyExistingWithDiscoveryURLFail
@@ -15625,7 +15761,7 @@
     --- PASS: TestV2DeprecationEnum_IsAtLeast/write-only_>=_write-only-drop-data (0.00s)
     --- PASS: TestV2DeprecationEnum_IsAtLeast/write-only-drop-data_>=_write-only (0.00s)
 PASS
-ok  	go.etcd.io/etcd/server/config	0.020s
+ok  	go.etcd.io/etcd/server/config	0.021s
 === RUN   TestToBackendFileName
 --- PASS: TestToBackendFileName (0.00s)
 === RUN   TestToMemberDir
@@ -15637,7 +15773,7 @@
 === RUN   TestToWalDirSlash
 --- PASS: TestToWalDirSlash (0.00s)
 PASS
-ok  	go.etcd.io/etcd/server/datadir	0.011s
+ok  	go.etcd.io/etcd/server/datadir	0.012s
 === RUN   TestEnableAuth
     auth_test.go:27: Skipping test that fails in salsa CI pipeline
 --- SKIP: TestEnableAuth (0.00s)
@@ -15653,41 +15789,41 @@
 === RUN   TestAutoCompactionModeParse
 --- PASS: TestAutoCompactionModeParse (0.00s)
 === RUN   TestPeerURLsMapAndTokenFromSRV
-{"level":"warn","ts":"2026-04-07T08:44:01.577561-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"info","ts":"2026-04-07T08:44:01.577675-1200","caller":"embed/config.go:850","msg":"get cluster for etcd-server-ssl SRV","service-scheme":"https","service-name":"etcd-server-ssl","server-name":"1.example.com","discovery-srv":"example.com","advertise-peer-urls":["http://localhost:2380"],"found-cluster":[],"error":"lookup _etcd-server-ssl._tcp.example.com on 10.0.0.53:53: no such host"}
-{"level":"info","ts":"2026-04-07T08:44:01.578784-1200","caller":"embed/config.go:865","msg":"get cluster for etcd-server SRV","service-scheme":"http","service-name":"etcd-server","server-name":"1.example.com","discovery-srv":"example.com","advertise-peer-urls":["http://localhost:2380"],"found-cluster":[],"error":"lookup _etcd-server._tcp.example.com on 10.0.0.53:53: no such host"}
-{"level":"warn","ts":"2026-04-07T08:44:01.578846-1200","caller":"embed/config.go:799","msg":"failed to resolve during SRV discovery","error":"lookup _etcd-server-ssl._tcp.example.com on 10.0.0.53:53: no such host; lookup _etcd-server._tcp.example.com on 10.0.0.53:53: no such host","errorCauses":[{"error":"lookup _etcd-server-ssl._tcp.example.com on 10.0.0.53:53: no such host"},{"error":"lookup _etcd-server._tcp.example.com on 10.0.0.53:53: no such host"}]}
-{"level":"warn","ts":"2026-04-07T08:44:01.578994-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"info","ts":"2026-04-07T08:44:01.579033-1200","caller":"embed/config.go:850","msg":"get cluster for etcd-server-ssl SRV","service-scheme":"https","service-name":"etcd-server-ssl","server-name":"1.example.com","discovery-srv":"example.com","advertise-peer-urls":["https://1.example.com:2380"],"found-cluster":["1.example.com=https://1.example.com:2380","0=https://2.example.com:2380","1=https://3.example.com:2380"]}
-{"level":"info","ts":"2026-04-07T08:44:01.579055-1200","caller":"embed/config.go:865","msg":"get cluster for etcd-server SRV","service-scheme":"http","service-name":"etcd-server","server-name":"1.example.com","discovery-srv":"example.com","advertise-peer-urls":["https://1.example.com:2380"],"found-cluster":["1.example.com=https://1.example.com:2380","0=https://2.example.com:2380","1=https://3.example.com:2380"],"error":"lookup _etcd-server._tcp.example.com on 10.0.0.53:53: no such host"}
-{"level":"warn","ts":"2026-04-07T08:44:01.579075-1200","caller":"embed/config.go:799","msg":"failed to resolve during SRV discovery","error":"lookup _etcd-server._tcp.example.com on 10.0.0.53:53: no such host"}
-{"level":"info","ts":"2026-04-07T08:44:01.579087-1200","caller":"embed/config.go:805","msg":"got bootstrap from DNS for etcd-server","node":"1.example.com=https://1.example.com:2380"}
-{"level":"info","ts":"2026-04-07T08:44:01.579100-1200","caller":"embed/config.go:805","msg":"got bootstrap from DNS for etcd-server","node":"0=https://2.example.com:2380"}
-{"level":"info","ts":"2026-04-07T08:44:01.579110-1200","caller":"embed/config.go:805","msg":"got bootstrap from DNS for etcd-server","node":"1=https://3.example.com:2380"}
-{"level":"warn","ts":"2026-04-07T08:44:01.579563-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"info","ts":"2026-04-07T08:44:01.579596-1200","caller":"embed/config.go:850","msg":"get cluster for etcd-server-ssl SRV","service-scheme":"https","service-name":"etcd-server-ssl","server-name":"1.example.com","discovery-srv":"example.com","advertise-peer-urls":["https://1.example.com:2380"],"found-cluster":["1.example.com=https://1.example.com:2380"]}
-{"level":"info","ts":"2026-04-07T08:44:01.579614-1200","caller":"embed/config.go:865","msg":"get cluster for etcd-server SRV","service-scheme":"http","service-name":"etcd-server","server-name":"1.example.com","discovery-srv":"example.com","advertise-peer-urls":["https://1.example.com:2380"],"found-cluster":["1.example.com=https://1.example.com:2380","0=http://2.example.com:2380","1=http://3.example.com:2380"]}
-{"level":"info","ts":"2026-04-07T08:44:01.579631-1200","caller":"embed/config.go:805","msg":"got bootstrap from DNS for etcd-server","node":"1.example.com=https://1.example.com:2380"}
-{"level":"info","ts":"2026-04-07T08:44:01.579642-1200","caller":"embed/config.go:805","msg":"got bootstrap from DNS for etcd-server","node":"0=http://2.example.com:2380"}
-{"level":"info","ts":"2026-04-07T08:44:01.579652-1200","caller":"embed/config.go:805","msg":"got bootstrap from DNS for etcd-server","node":"1=http://3.example.com:2380"}
-{"level":"warn","ts":"2026-04-07T08:44:01.579722-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"info","ts":"2026-04-07T08:44:01.579761-1200","caller":"embed/config.go:850","msg":"get cluster for etcd-server-ssl SRV","service-scheme":"https","service-name":"etcd-server-ssl","server-name":"1.example.com","discovery-srv":"example.com","advertise-peer-urls":["http://1.example.com:2380"],"found-cluster":[],"error":"lookup _etcd-server-ssl._tcp.example.com on 10.0.0.53:53: no such host"}
-{"level":"info","ts":"2026-04-07T08:44:01.579789-1200","caller":"embed/config.go:865","msg":"get cluster for etcd-server SRV","service-scheme":"http","service-name":"etcd-server","server-name":"1.example.com","discovery-srv":"example.com","advertise-peer-urls":["http://1.example.com:2380"],"found-cluster":["1.example.com=http://1.example.com:2380","0=http://2.example.com:2380","1=http://3.example.com:2380"]}
-{"level":"warn","ts":"2026-04-07T08:44:01.579815-1200","caller":"embed/config.go:799","msg":"failed to resolve during SRV discovery","error":"lookup _etcd-server-ssl._tcp.example.com on 10.0.0.53:53: no such host"}
-{"level":"info","ts":"2026-04-07T08:44:01.579836-1200","caller":"embed/config.go:805","msg":"got bootstrap from DNS for etcd-server","node":"1.example.com=http://1.example.com:2380"}
-{"level":"info","ts":"2026-04-07T08:44:01.579855-1200","caller":"embed/config.go:805","msg":"got bootstrap from DNS for etcd-server","node":"0=http://2.example.com:2380"}
-{"level":"info","ts":"2026-04-07T08:44:01.579866-1200","caller":"embed/config.go:805","msg":"got bootstrap from DNS for etcd-server","node":"1=http://3.example.com:2380"}
+{"level":"warn","ts":"2025-03-06T04:28:26.594523+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"info","ts":"2025-03-06T04:28:26.594542+1400","caller":"embed/config.go:850","msg":"get cluster for etcd-server-ssl SRV","service-scheme":"https","service-name":"etcd-server-ssl","server-name":"1.example.com","discovery-srv":"example.com","advertise-peer-urls":["http://localhost:2380"],"found-cluster":[],"error":"lookup _etcd-server-ssl._tcp.example.com on 10.0.0.53:53: no such host"}
+{"level":"info","ts":"2025-03-06T04:28:26.594937+1400","caller":"embed/config.go:865","msg":"get cluster for etcd-server SRV","service-scheme":"http","service-name":"etcd-server","server-name":"1.example.com","discovery-srv":"example.com","advertise-peer-urls":["http://localhost:2380"],"found-cluster":[],"error":"lookup _etcd-server._tcp.example.com on 10.0.0.53:53: no such host"}
+{"level":"warn","ts":"2025-03-06T04:28:26.594947+1400","caller":"embed/config.go:799","msg":"failed to resolve during SRV discovery","error":"lookup _etcd-server-ssl._tcp.example.com on 10.0.0.53:53: no such host; lookup _etcd-server._tcp.example.com on 10.0.0.53:53: no such host","errorCauses":[{"error":"lookup _etcd-server-ssl._tcp.example.com on 10.0.0.53:53: no such host"},{"error":"lookup _etcd-server._tcp.example.com on 10.0.0.53:53: no such host"}]}
+{"level":"warn","ts":"2025-03-06T04:28:26.595243+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"info","ts":"2025-03-06T04:28:26.595304+1400","caller":"embed/config.go:850","msg":"get cluster for etcd-server-ssl SRV","service-scheme":"https","service-name":"etcd-server-ssl","server-name":"1.example.com","discovery-srv":"example.com","advertise-peer-urls":["https://1.example.com:2380"],"found-cluster":["1.example.com=https://1.example.com:2380","0=https://2.example.com:2380","1=https://3.example.com:2380"]}
+{"level":"info","ts":"2025-03-06T04:28:26.595368+1400","caller":"embed/config.go:865","msg":"get cluster for etcd-server SRV","service-scheme":"http","service-name":"etcd-server","server-name":"1.example.com","discovery-srv":"example.com","advertise-peer-urls":["https://1.example.com:2380"],"found-cluster":["1.example.com=https://1.example.com:2380","0=https://2.example.com:2380","1=https://3.example.com:2380"],"error":"lookup _etcd-server._tcp.example.com on 10.0.0.53:53: no such host"}
+{"level":"warn","ts":"2025-03-06T04:28:26.595386+1400","caller":"embed/config.go:799","msg":"failed to resolve during SRV discovery","error":"lookup _etcd-server._tcp.example.com on 10.0.0.53:53: no such host"}
+{"level":"info","ts":"2025-03-06T04:28:26.595395+1400","caller":"embed/config.go:805","msg":"got bootstrap from DNS for etcd-server","node":"1.example.com=https://1.example.com:2380"}
+{"level":"info","ts":"2025-03-06T04:28:26.595452+1400","caller":"embed/config.go:805","msg":"got bootstrap from DNS for etcd-server","node":"0=https://2.example.com:2380"}
+{"level":"info","ts":"2025-03-06T04:28:26.595458+1400","caller":"embed/config.go:805","msg":"got bootstrap from DNS for etcd-server","node":"1=https://3.example.com:2380"}
+{"level":"warn","ts":"2025-03-06T04:28:26.597012+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"info","ts":"2025-03-06T04:28:26.597055+1400","caller":"embed/config.go:850","msg":"get cluster for etcd-server-ssl SRV","service-scheme":"https","service-name":"etcd-server-ssl","server-name":"1.example.com","discovery-srv":"example.com","advertise-peer-urls":["https://1.example.com:2380"],"found-cluster":["1.example.com=https://1.example.com:2380"]}
+{"level":"info","ts":"2025-03-06T04:28:26.597068+1400","caller":"embed/config.go:865","msg":"get cluster for etcd-server SRV","service-scheme":"http","service-name":"etcd-server","server-name":"1.example.com","discovery-srv":"example.com","advertise-peer-urls":["https://1.example.com:2380"],"found-cluster":["1.example.com=https://1.example.com:2380","0=http://2.example.com:2380","1=http://3.example.com:2380"]}
+{"level":"info","ts":"2025-03-06T04:28:26.597075+1400","caller":"embed/config.go:805","msg":"got bootstrap from DNS for etcd-server","node":"1.example.com=https://1.example.com:2380"}
+{"level":"info","ts":"2025-03-06T04:28:26.597080+1400","caller":"embed/config.go:805","msg":"got bootstrap from DNS for etcd-server","node":"0=http://2.example.com:2380"}
+{"level":"info","ts":"2025-03-06T04:28:26.597083+1400","caller":"embed/config.go:805","msg":"got bootstrap from DNS for etcd-server","node":"1=http://3.example.com:2380"}
+{"level":"warn","ts":"2025-03-06T04:28:26.597531+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"info","ts":"2025-03-06T04:28:26.597607+1400","caller":"embed/config.go:850","msg":"get cluster for etcd-server-ssl SRV","service-scheme":"https","service-name":"etcd-server-ssl","server-name":"1.example.com","discovery-srv":"example.com","advertise-peer-urls":["http://1.example.com:2380"],"found-cluster":[],"error":"lookup _etcd-server-ssl._tcp.example.com on 10.0.0.53:53: no such host"}
+{"level":"info","ts":"2025-03-06T04:28:26.597618+1400","caller":"embed/config.go:865","msg":"get cluster for etcd-server SRV","service-scheme":"http","service-name":"etcd-server","server-name":"1.example.com","discovery-srv":"example.com","advertise-peer-urls":["http://1.example.com:2380"],"found-cluster":["1.example.com=http://1.example.com:2380","0=http://2.example.com:2380","1=http://3.example.com:2380"]}
+{"level":"warn","ts":"2025-03-06T04:28:26.597626+1400","caller":"embed/config.go:799","msg":"failed to resolve during SRV discovery","error":"lookup _etcd-server-ssl._tcp.example.com on 10.0.0.53:53: no such host"}
+{"level":"info","ts":"2025-03-06T04:28:26.597631+1400","caller":"embed/config.go:805","msg":"got bootstrap from DNS for etcd-server","node":"1.example.com=http://1.example.com:2380"}
+{"level":"info","ts":"2025-03-06T04:28:26.597635+1400","caller":"embed/config.go:805","msg":"got bootstrap from DNS for etcd-server","node":"0=http://2.example.com:2380"}
+{"level":"info","ts":"2025-03-06T04:28:26.597638+1400","caller":"embed/config.go:805","msg":"got bootstrap from DNS for etcd-server","node":"1=http://3.example.com:2380"}
 --- PASS: TestPeerURLsMapAndTokenFromSRV (0.00s)
 === RUN   TestLeaseCheckpointValidate
 === RUN   TestLeaseCheckpointValidate/Default_config_should_pass
-{"level":"warn","ts":"2026-04-07T08:44:01.580491-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:26.598125+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
 === RUN   TestLeaseCheckpointValidate/Enabling_checkpoint_leases_should_pass
-{"level":"warn","ts":"2026-04-07T08:44:01.580892-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"warn","ts":"2026-04-07T08:44:01.580986-1200","caller":"embed/config.go:744","msg":"Detected that checkpointing is enabled without persistence. Consider enabling experimental-enable-lease-checkpoint-persist"}
+{"level":"warn","ts":"2025-03-06T04:28:26.598210+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:26.598222+1400","caller":"embed/config.go:744","msg":"Detected that checkpointing is enabled without persistence. Consider enabling experimental-enable-lease-checkpoint-persist"}
 === RUN   TestLeaseCheckpointValidate/Enabling_checkpoint_leases_and_persist_should_pass
-{"level":"warn","ts":"2026-04-07T08:44:01.581272-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:26.598520+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
 === RUN   TestLeaseCheckpointValidate/Enabling_checkpoint_leases_persist_without_checkpointing_itself_should_fail
-{"level":"warn","ts":"2026-04-07T08:44:01.581543-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:26.599879+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
 --- PASS: TestLeaseCheckpointValidate (0.00s)
     --- PASS: TestLeaseCheckpointValidate/Default_config_should_pass (0.00s)
     --- PASS: TestLeaseCheckpointValidate/Enabling_checkpoint_leases_should_pass (0.00s)
@@ -15695,11 +15831,11 @@
     --- PASS: TestLeaseCheckpointValidate/Enabling_checkpoint_leases_persist_without_checkpointing_itself_should_fail (0.00s)
 === RUN   TestLogRotation
 === RUN   TestLogRotation/mixed_log_output_targets
-{"level":"warn","ts":"2026-04-07T08:44:01.582267-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"info","ts":"2026-04-07T08:44:01.582522-1200","caller":"embed/config_test.go:445","msg":"test log"}
+{"level":"warn","ts":"2025-03-06T04:28:26.600242+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"info","ts":"2025-03-06T04:28:26.600436+1400","caller":"embed/config_test.go:445","msg":"test log"}
 === RUN   TestLogRotation/log_output_relative_path
-{"level":"warn","ts":"2026-04-07T08:44:01.583337-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"info","ts":"2026-04-07T08:44:01.583781-1200","caller":"embed/config_test.go:445","msg":"test log"}
+{"level":"warn","ts":"2025-03-06T04:28:26.600754+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"info","ts":"2025-03-06T04:28:26.600767+1400","caller":"embed/config_test.go:445","msg":"test log"}
 === RUN   TestLogRotation/no_file_targets
 === RUN   TestLogRotation/multiple_file_targets
 === RUN   TestLogRotation/default_output
@@ -15717,21 +15853,21 @@
     --- PASS: TestLogRotation/improperly_formatted_logger_config (0.00s)
 === RUN   TestTLSVersionMinMax
 === RUN   TestTLSVersionMinMax/Minimum_TLS_version_is_set
-{"level":"warn","ts":"2026-04-07T08:44:01.584794-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:26.606279+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
 === RUN   TestTLSVersionMinMax/Maximum_TLS_version_is_set
-{"level":"warn","ts":"2026-04-07T08:44:01.584946-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:26.608064+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
 === RUN   TestTLSVersionMinMax/Minimum_and_Maximum_TLS_versions_are_set
-{"level":"warn","ts":"2026-04-07T08:44:01.586046-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:26.608170+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
 === RUN   TestTLSVersionMinMax/Minimum_and_Maximum_TLS_versions_are_set_in_reverse_order
-{"level":"warn","ts":"2026-04-07T08:44:01.586489-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:26.608530+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
 === RUN   TestTLSVersionMinMax/Invalid_minimum_TLS_version
-{"level":"warn","ts":"2026-04-07T08:44:01.586628-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:26.608658+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
 === RUN   TestTLSVersionMinMax/Invalid_maximum_TLS_version
-{"level":"warn","ts":"2026-04-07T08:44:01.586738-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:26.608715+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
 === RUN   TestTLSVersionMinMax/Cipher_suites_configured_for_TLS_1.3
-{"level":"warn","ts":"2026-04-07T08:44:01.587096-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
---- PASS: TestTLSVersionMinMax (0.00s)
-    --- PASS: TestTLSVersionMinMax/Minimum_TLS_version_is_set (0.00s)
+{"level":"warn","ts":"2025-03-06T04:28:26.608841+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+--- PASS: TestTLSVersionMinMax (0.01s)
+    --- PASS: TestTLSVersionMinMax/Minimum_TLS_version_is_set (0.01s)
     --- PASS: TestTLSVersionMinMax/Maximum_TLS_version_is_set (0.00s)
     --- PASS: TestTLSVersionMinMax/Minimum_and_Maximum_TLS_versions_are_set (0.00s)
     --- PASS: TestTLSVersionMinMax/Minimum_and_Maximum_TLS_versions_are_set_in_reverse_order (0.00s)
@@ -15755,85 +15891,85 @@
 === RUN   TestEmptyClientTLSInfo_createMetricsListener
 --- PASS: TestEmptyClientTLSInfo_createMetricsListener (0.00s)
 === RUN   TestStartEtcdWrongToken
-{"level":"warn","ts":"2026-04-07T08:44:01.588348-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"info","ts":"2026-04-07T08:44:01.588389-1200","caller":"embed/etcd.go:128","msg":"configuring peer listeners","listen-peer-urls":["unix://localhost:2477100000001"]}
-{"level":"info","ts":"2026-04-07T08:44:01.588567-1200","caller":"embed/etcd.go:136","msg":"configuring client listeners","listen-client-urls":["unix://localhost:2477100000000"]}
-{"level":"info","ts":"2026-04-07T08:44:01.588760-1200","caller":"embed/etcd.go:311","msg":"starting an etcd server","etcd-version":"3.5.16","git-sha":"Not provided (use ./build instead of go build)","go-version":"go1.24.0","go-os":"linux","go-arch":"arm64","max-cpu-set":12,"max-cpu-available":12,"member-initialized":false,"name":"default","data-dir":"/tmp/TestStartEtcdWrongToken91755652/001/token-test1107096799","wal-dir":"","wal-dir-dedicated":"","member-dir":"/tmp/TestStartEtcdWrongToken91755652/001/token-test1107096799/member","force-new-cluster":false,"heartbeat-interval":"100ms","election-timeout":"1s","initial-election-tick-advance":true,"snapshot-count":100000,"max-wals":5,"max-snapshots":5,"snapshot-catchup-entries":5000,"initial-advertise-peer-urls":["unix://localhost:2477100000001"],"listen-peer-urls":["unix://localhost:2477100000001"],"advertise-client-urls":["unix://localhost:2477100000000"],"listen-client-urls":["unix://localhost:2477100000000"],"listen-metrics-urls":[],"cors":["*"],"host-whitelist":["*"],"initial-cluster":"default=unix://localhost:2477100000001","initial-cluster-state":"new","initial-cluster-token":"etcd-cluster","quota-backend-bytes":2147483648,"max-request-bytes":1572864,"max-concurrent-streams":4294967295,"pre-vote":true,"initial-corrupt-check":false,"corrupt-check-time-interval":"0s","compact-check-time-enabled":false,"compact-check-time-interval":"1m0s","auto-compaction-mode":"","auto-compaction-retention":"0s","auto-compaction-interval":"0s","discovery-url":"","discovery-proxy":"","downgrade-check-interval":"5s"}
-{"level":"info","ts":"2026-04-07T08:44:01.589751-1200","caller":"etcdserver/backend.go:81","msg":"opened backend db","path":"/tmp/TestStartEtcdWrongToken91755652/001/token-test1107096799/member/snap/db","took":"797.04µs"}
-{"level":"info","ts":"2026-04-07T08:44:01.613382-1200","caller":"etcdserver/raft.go:505","msg":"starting local member","local-member-id":"d65c50e0bdc5409c","cluster-id":"4badd0a57508fb41"}
-{"level":"info","ts":"2026-04-07T08:44:01.613615-1200","logger":"raft","caller":"etcdserver/zap_raft.go:77","msg":"d65c50e0bdc5409c switched to configuration voters=()"}
-{"level":"info","ts":"2026-04-07T08:44:01.613934-1200","logger":"raft","caller":"etcdserver/zap_raft.go:77","msg":"d65c50e0bdc5409c became follower at term 0"}
-{"level":"info","ts":"2026-04-07T08:44:01.613956-1200","logger":"raft","caller":"etcdserver/zap_raft.go:77","msg":"newRaft d65c50e0bdc5409c [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]"}
-{"level":"info","ts":"2026-04-07T08:44:01.613972-1200","logger":"raft","caller":"etcdserver/zap_raft.go:77","msg":"d65c50e0bdc5409c became follower at term 1"}
-{"level":"info","ts":"2026-04-07T08:44:01.614032-1200","logger":"raft","caller":"etcdserver/zap_raft.go:77","msg":"d65c50e0bdc5409c switched to configuration voters=(15446309748160675996)"}
-{"level":"warn","ts":"2026-04-07T08:44:01.614404-1200","caller":"auth/store.go:1253","msg":"unknown token type","type":"wrong-token","error":"auth: invalid auth options"}
-{"level":"warn","ts":"2026-04-07T08:44:01.614443-1200","caller":"etcdserver/server.go:615","msg":"failed to create token provider","error":"auth: invalid auth options"}
-{"level":"info","ts":"2026-04-07T08:44:01.614617-1200","caller":"embed/etcd.go:378","msg":"closing etcd server","name":"default","data-dir":"/tmp/TestStartEtcdWrongToken91755652/001/token-test1107096799","advertise-peer-urls":["unix://localhost:2477100000001"],"advertise-client-urls":["unix://localhost:2477100000000"]}
-{"level":"info","ts":"2026-04-07T08:44:01.614728-1200","caller":"embed/etcd.go:380","msg":"closed etcd server","name":"default","data-dir":"/tmp/TestStartEtcdWrongToken91755652/001/token-test1107096799","advertise-peer-urls":["unix://localhost:2477100000001"],"advertise-client-urls":["unix://localhost:2477100000000"]}
---- PASS: TestStartEtcdWrongToken (0.06s)
+{"level":"warn","ts":"2025-03-06T04:28:26.609616+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"info","ts":"2025-03-06T04:28:26.609648+1400","caller":"embed/etcd.go:128","msg":"configuring peer listeners","listen-peer-urls":["unix://localhost:2958908000001"]}
+{"level":"info","ts":"2025-03-06T04:28:26.610110+1400","caller":"embed/etcd.go:136","msg":"configuring client listeners","listen-client-urls":["unix://localhost:2958908000000"]}
+{"level":"info","ts":"2025-03-06T04:28:26.610291+1400","caller":"embed/etcd.go:311","msg":"starting an etcd server","etcd-version":"3.5.16","git-sha":"Not provided (use ./build instead of go build)","go-version":"go1.24.0","go-os":"linux","go-arch":"arm64","max-cpu-set":12,"max-cpu-available":12,"member-initialized":false,"name":"default","data-dir":"/tmp/TestStartEtcdWrongToken89968228/001/token-test843933715","wal-dir":"","wal-dir-dedicated":"","member-dir":"/tmp/TestStartEtcdWrongToken89968228/001/token-test843933715/member","force-new-cluster":false,"heartbeat-interval":"100ms","election-timeout":"1s","initial-election-tick-advance":true,"snapshot-count":100000,"max-wals":5,"max-snapshots":5,"snapshot-catchup-entries":5000,"initial-advertise-peer-urls":["unix://localhost:2958908000001"],"listen-peer-urls":["unix://localhost:2958908000001"],"advertise-client-urls":["unix://localhost:2958908000000"],"listen-client-urls":["unix://localhost:2958908000000"],"listen-metrics-urls":[],"cors":["*"],"host-whitelist":["*"],"initial-cluster":"default=unix://localhost:2958908000001","initial-cluster-state":"new","initial-cluster-token":"etcd-cluster","quota-backend-bytes":2147483648,"max-request-bytes":1572864,"max-concurrent-streams":4294967295,"pre-vote":true,"initial-corrupt-check":false,"corrupt-check-time-interval":"0s","compact-check-time-enabled":false,"compact-check-time-interval":"1m0s","auto-compaction-mode":"","auto-compaction-retention":"0s","auto-compaction-interval":"0s","discovery-url":"","discovery-proxy":"","downgrade-check-interval":"5s"}
+{"level":"info","ts":"2025-03-06T04:28:26.610923+1400","caller":"etcdserver/backend.go:81","msg":"opened backend db","path":"/tmp/TestStartEtcdWrongToken89968228/001/token-test843933715/member/snap/db","took":"494.643µs"}
+{"level":"info","ts":"2025-03-06T04:28:26.630349+1400","caller":"etcdserver/raft.go:505","msg":"starting local member","local-member-id":"e320cfcd2aa9a9fb","cluster-id":"52f79228020014f"}
+{"level":"info","ts":"2025-03-06T04:28:26.630521+1400","logger":"raft","caller":"etcdserver/zap_raft.go:77","msg":"e320cfcd2aa9a9fb switched to configuration voters=()"}
+{"level":"info","ts":"2025-03-06T04:28:26.630807+1400","logger":"raft","caller":"etcdserver/zap_raft.go:77","msg":"e320cfcd2aa9a9fb became follower at term 0"}
+{"level":"info","ts":"2025-03-06T04:28:26.630820+1400","logger":"raft","caller":"etcdserver/zap_raft.go:77","msg":"newRaft e320cfcd2aa9a9fb [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]"}
+{"level":"info","ts":"2025-03-06T04:28:26.630827+1400","logger":"raft","caller":"etcdserver/zap_raft.go:77","msg":"e320cfcd2aa9a9fb became follower at term 1"}
+{"level":"info","ts":"2025-03-06T04:28:26.630864+1400","logger":"raft","caller":"etcdserver/zap_raft.go:77","msg":"e320cfcd2aa9a9fb switched to configuration voters=(16366309525955389947)"}
+{"level":"warn","ts":"2025-03-06T04:28:26.631114+1400","caller":"auth/store.go:1253","msg":"unknown token type","type":"wrong-token","error":"auth: invalid auth options"}
+{"level":"warn","ts":"2025-03-06T04:28:26.631129+1400","caller":"etcdserver/server.go:615","msg":"failed to create token provider","error":"auth: invalid auth options"}
+{"level":"info","ts":"2025-03-06T04:28:26.634637+1400","caller":"embed/etcd.go:378","msg":"closing etcd server","name":"default","data-dir":"/tmp/TestStartEtcdWrongToken89968228/001/token-test843933715","advertise-peer-urls":["unix://localhost:2958908000001"],"advertise-client-urls":["unix://localhost:2958908000000"]}
+{"level":"info","ts":"2025-03-06T04:28:26.634759+1400","caller":"embed/etcd.go:380","msg":"closed etcd server","name":"default","data-dir":"/tmp/TestStartEtcdWrongToken89968228/001/token-test843933715","advertise-peer-urls":["unix://localhost:2958908000001"],"advertise-client-urls":["unix://localhost:2958908000000"]}
+--- PASS: TestStartEtcdWrongToken (0.04s)
 PASS
-ok  	go.etcd.io/etcd/server/embed	0.150s
+ok  	go.etcd.io/etcd/server/embed	0.232s
 === RUN   TestConfigParsingMemberFlags
 --- PASS: TestConfigParsingMemberFlags (0.00s)
 === RUN   TestConfigFileMemberFields
-{"level":"info","ts":"2026-04-07T08:44:03.828611-1200","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg1228289529"}
+{"level":"info","ts":"2025-03-06T04:28:28.331956+1400","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg1481716321"}
 --- PASS: TestConfigFileMemberFields (0.00s)
 === RUN   TestConfigParsingClusteringFlags
-{"level":"warn","ts":"2026-04-07T08:44:03.829678-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.332490+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
 --- PASS: TestConfigParsingClusteringFlags (0.00s)
 === RUN   TestConfigFileClusteringFields
-{"level":"warn","ts":"2026-04-07T08:44:03.832136-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"info","ts":"2026-04-07T08:44:03.832471-1200","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg3152515654"}
+{"level":"warn","ts":"2025-03-06T04:28:28.334858+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"info","ts":"2025-03-06T04:28:28.335137+1400","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg2338838547"}
 --- PASS: TestConfigFileClusteringFields (0.00s)
 === RUN   TestConfigFileClusteringFlags
-{"level":"warn","ts":"2026-04-07T08:44:03.832971-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"info","ts":"2026-04-07T08:44:03.833036-1200","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg4066141118"}
-{"level":"warn","ts":"2026-04-07T08:44:03.833250-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"info","ts":"2026-04-07T08:44:03.833305-1200","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg2742552359"}
-{"level":"warn","ts":"2026-04-07T08:44:03.833957-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"info","ts":"2026-04-07T08:44:03.834154-1200","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg1587868295"}
-{"level":"warn","ts":"2026-04-07T08:44:03.835148-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"info","ts":"2026-04-07T08:44:03.835323-1200","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg2693146759"}
-{"level":"warn","ts":"2026-04-07T08:44:03.835899-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"info","ts":"2026-04-07T08:44:03.836037-1200","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg2158819718"}
-{"level":"warn","ts":"2026-04-07T08:44:03.836512-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"info","ts":"2026-04-07T08:44:03.836634-1200","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg1170930300"}
-{"level":"warn","ts":"2026-04-07T08:44:03.838185-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"info","ts":"2026-04-07T08:44:03.838342-1200","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg1821974633"}
-{"level":"warn","ts":"2026-04-07T08:44:03.838849-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"info","ts":"2026-04-07T08:44:03.838974-1200","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg1003405346"}
+{"level":"warn","ts":"2025-03-06T04:28:28.335783+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"info","ts":"2025-03-06T04:28:28.335837+1400","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg2031723677"}
+{"level":"warn","ts":"2025-03-06T04:28:28.336043+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"info","ts":"2025-03-06T04:28:28.336083+1400","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg630743627"}
+{"level":"warn","ts":"2025-03-06T04:28:28.338478+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"info","ts":"2025-03-06T04:28:28.338991+1400","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg2201648395"}
+{"level":"warn","ts":"2025-03-06T04:28:28.339376+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"info","ts":"2025-03-06T04:28:28.339441+1400","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg3519507626"}
+{"level":"warn","ts":"2025-03-06T04:28:28.339652+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"info","ts":"2025-03-06T04:28:28.339700+1400","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg2018782295"}
+{"level":"warn","ts":"2025-03-06T04:28:28.340172+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"info","ts":"2025-03-06T04:28:28.340469+1400","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg1649979158"}
+{"level":"warn","ts":"2025-03-06T04:28:28.342031+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"info","ts":"2025-03-06T04:28:28.342194+1400","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg260528865"}
+{"level":"warn","ts":"2025-03-06T04:28:28.342460+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"info","ts":"2025-03-06T04:28:28.342507+1400","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg478996289"}
 --- PASS: TestConfigFileClusteringFlags (0.01s)
 === RUN   TestConfigParsingOtherFlags
-{"level":"warn","ts":"2026-04-07T08:44:03.840164-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.344150+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
 --- PASS: TestConfigParsingOtherFlags (0.00s)
 === RUN   TestConfigFileOtherFields
-{"level":"warn","ts":"2026-04-07T08:44:03.841669-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"info","ts":"2026-04-07T08:44:03.841800-1200","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg1627113713"}
+{"level":"warn","ts":"2025-03-06T04:28:28.345243+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"info","ts":"2025-03-06T04:28:28.345340+1400","caller":"etcdmain/config.go:354","msg":"loaded server configuration, other configuration command line flags and environment variables will be ignored if provided","path":"/tmp/servercfg789144934"}
 --- PASS: TestConfigFileOtherFields (0.00s)
 === RUN   TestConfigParsingConflictClusteringFlags
-{"level":"warn","ts":"2026-04-07T08:44:03.842652-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"warn","ts":"2026-04-07T08:44:03.844362-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"warn","ts":"2026-04-07T08:44:03.844945-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"warn","ts":"2026-04-07T08:44:03.846380-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.345755+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.347042+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.347685+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.348048+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
 --- PASS: TestConfigParsingConflictClusteringFlags (0.00s)
 === RUN   TestConfigFileConflictClusteringFlags
-{"level":"warn","ts":"2026-04-07T08:44:03.847287-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"warn","ts":"2026-04-07T08:44:03.847729-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"warn","ts":"2026-04-07T08:44:03.848147-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"warn","ts":"2026-04-07T08:44:03.848921-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.348442+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.348922+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.350191+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.350652+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
 --- PASS: TestConfigFileConflictClusteringFlags (0.00s)
 === RUN   TestConfigParsingMissedAdvertiseClientURLsFlag
-{"level":"warn","ts":"2026-04-07T08:44:03.850304-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"warn","ts":"2026-04-07T08:44:03.851393-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"warn","ts":"2026-04-07T08:44:03.851982-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"warn","ts":"2026-04-07T08:44:03.854079-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"warn","ts":"2026-04-07T08:44:03.854674-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"warn","ts":"2026-04-07T08:44:03.856205-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"warn","ts":"2026-04-07T08:44:03.856790-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.352649+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.353648+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.354660+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.356574+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.356946+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.358126+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.359310+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
 --- PASS: TestConfigParsingMissedAdvertiseClientURLsFlag (0.01s)
 === RUN   TestConfigIsNewCluster
-{"level":"warn","ts":"2026-04-07T08:44:03.858487-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"warn","ts":"2026-04-07T08:44:03.859404-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.359975+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.361542+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
 --- PASS: TestConfigIsNewCluster (0.00s)
 === RUN   TestConfigIsProxy
 --- PASS: TestConfigIsProxy (0.00s)
@@ -15842,29 +15978,29 @@
 === RUN   TestConfigShouldFallbackToProxy
 --- PASS: TestConfigShouldFallbackToProxy (0.00s)
 === RUN   TestConfigFileElectionTimeout
-{"level":"warn","ts":"2026-04-07T08:44:03.862089-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"warn","ts":"2026-04-07T08:44:03.862569-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"warn","ts":"2026-04-07T08:44:03.863282-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
-{"level":"warn","ts":"2026-04-07T08:44:03.864705-1200","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.362662+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.362898+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.363481+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
+{"level":"warn","ts":"2025-03-06T04:28:28.365130+1400","caller":"embed/config.go:689","msg":"Running http and grpc server on single port. This is not recommended for production."}
 --- PASS: TestConfigFileElectionTimeout (0.00s)
 === RUN   TestFlagsPresentInHelp
 --- PASS: TestFlagsPresentInHelp (0.00s)
 PASS
-ok  	go.etcd.io/etcd/server/etcdmain	0.087s
+ok  	go.etcd.io/etcd/server/etcdmain	0.070s
 === RUN   TestCheckLeasePutsKeys
-    logger.go:130: 2026-04-07T08:44:06.765-1200	WARN	simple token is not cryptographically signed
-    logger.go:130: 2026-04-07T08:44:06.769-1200	INFO	added a user	{"user-name": "root"}
-    logger.go:130: 2026-04-07T08:44:06.769-1200	INFO	created a role	{"role-name": "root"}
-    logger.go:130: 2026-04-07T08:44:06.769-1200	INFO	granted a role to a user	{"user-name": "root", "user-roles": ["root"], "added-role-name": "root"}
-    logger.go:130: 2026-04-07T08:44:06.769-1200	INFO	enabled authentication
-    logger.go:130: 2026-04-07T08:44:06.769-1200	WARN	request auth revision is less than current node auth revision	{"current node auth revision": 4, "request auth revision": 1, "request key": "a", "error": "auth: revision in header is old"}
-    logger.go:130: 2026-04-07T08:44:06.769-1200	ERROR	cannot find a user for permission check	{"user-name": "bob"}
-    logger.go:130: 2026-04-07T08:44:06.769-1200	INFO	added a user	{"user-name": "bob"}
-    logger.go:130: 2026-04-07T08:44:06.769-1200	INFO	created a role	{"role-name": "bobsrole"}
-    logger.go:130: 2026-04-07T08:44:06.769-1200	INFO	granted/updated a permission to a user	{"user-name": "bobsrole", "permission-name": "READWRITE"}
-    logger.go:130: 2026-04-07T08:44:06.770-1200	INFO	granted a role to a user	{"user-name": "bob", "user-roles": ["bobsrole"], "added-role-name": "bobsrole"}
-    logger.go:130: 2026-04-07T08:44:06.770-1200	INFO	disabled authentication
---- PASS: TestCheckLeasePutsKeys (0.01s)
+    logger.go:130: 2025-03-06T04:28:31.073+1400	WARN	simple token is not cryptographically signed
+    logger.go:130: 2025-03-06T04:28:31.076+1400	INFO	added a user	{"user-name": "root"}
+    logger.go:130: 2025-03-06T04:28:31.076+1400	INFO	created a role	{"role-name": "root"}
+    logger.go:130: 2025-03-06T04:28:31.076+1400	INFO	granted a role to a user	{"user-name": "root", "user-roles": ["root"], "added-role-name": "root"}
+    logger.go:130: 2025-03-06T04:28:31.076+1400	INFO	enabled authentication
+    logger.go:130: 2025-03-06T04:28:31.076+1400	WARN	request auth revision is less than current node auth revision	{"current node auth revision": 4, "request auth revision": 1, "request key": "a", "error": "auth: revision in header is old"}
+    logger.go:130: 2025-03-06T04:28:31.076+1400	ERROR	cannot find a user for permission check	{"user-name": "bob"}
+    logger.go:130: 2025-03-06T04:28:31.076+1400	INFO	added a user	{"user-name": "bob"}
+    logger.go:130: 2025-03-06T04:28:31.076+1400	INFO	created a role	{"role-name": "bobsrole"}
+    logger.go:130: 2025-03-06T04:28:31.076+1400	INFO	granted/updated a permission to a user	{"user-name": "bobsrole", "permission-name": "READWRITE"}
+    logger.go:130: 2025-03-06T04:28:31.076+1400	INFO	granted a role to a user	{"user-name": "bob", "user-roles": ["bobsrole"], "added-role-name": "bobsrole"}
+    logger.go:130: 2025-03-06T04:28:31.077+1400	INFO	disabled authentication
+--- PASS: TestCheckLeasePutsKeys (0.00s)
 === RUN   TestReadonlyTxnError
 {"level":"info","msg":"kvstore restored","current-rev":1}
 {"level":"error","msg":"unexpected error during readonly txn","error":"applyTxn: failed Range: rangeKeys: context cancelled: context canceled"}
@@ -15903,38 +16039,38 @@
     --- PASS: TestIsMatchedVersions/When_downgrade_not_finished (0.00s)
 === RUN   TestInitialCheck
 === RUN   TestInitialCheck/No_peers
-    logger.go:130: 2026-04-07T08:44:06.776-1200	INFO	starting initial corruption check	{"local-member-id": "1", "timeout": "1s"}
-    logger.go:130: 2026-04-07T08:44:06.776-1200	INFO	initial corruption checking passed; no corruption	{"local-member-id": "1"}
+    logger.go:130: 2025-03-06T04:28:31.083+1400	INFO	starting initial corruption check	{"local-member-id": "1", "timeout": "1s"}
+    logger.go:130: 2025-03-06T04:28:31.083+1400	INFO	initial corruption checking passed; no corruption	{"local-member-id": "1"}
 === RUN   TestInitialCheck/Error_getting_hash
-    logger.go:130: 2026-04-07T08:44:06.776-1200	INFO	starting initial corruption check	{"local-member-id": "1", "timeout": "1s"}
+    logger.go:130: 2025-03-06T04:28:31.084+1400	INFO	starting initial corruption check	{"local-member-id": "1", "timeout": "1s"}
 === RUN   TestInitialCheck/Peer_with_empty_response
-    logger.go:130: 2026-04-07T08:44:06.776-1200	INFO	starting initial corruption check	{"local-member-id": "1", "timeout": "1s"}
-    logger.go:130: 2026-04-07T08:44:06.776-1200	INFO	initial corruption checking passed; no corruption	{"local-member-id": "1"}
+    logger.go:130: 2025-03-06T04:28:31.084+1400	INFO	starting initial corruption check	{"local-member-id": "1", "timeout": "1s"}
+    logger.go:130: 2025-03-06T04:28:31.084+1400	INFO	initial corruption checking passed; no corruption	{"local-member-id": "1"}
 === RUN   TestInitialCheck/Peer_returned_ErrFutureRev
-    logger.go:130: 2026-04-07T08:44:06.776-1200	INFO	starting initial corruption check	{"local-member-id": "1", "timeout": "1s"}
-    logger.go:130: 2026-04-07T08:44:06.776-1200	WARN	cannot fetch hash from slow remote peer	{"local-member-id": "1", "local-member-revision": 0, "local-member-compact-revision": 0, "local-member-hash": 0, "remote-peer-id": "0", "remote-peer-endpoints": []}
-    logger.go:130: 2026-04-07T08:44:06.776-1200	INFO	initial corruption checking passed; no corruption	{"local-member-id": "1"}
+    logger.go:130: 2025-03-06T04:28:31.084+1400	INFO	starting initial corruption check	{"local-member-id": "1", "timeout": "1s"}
+    logger.go:130: 2025-03-06T04:28:31.084+1400	WARN	cannot fetch hash from slow remote peer	{"local-member-id": "1", "local-member-revision": 0, "local-member-compact-revision": 0, "local-member-hash": 0, "remote-peer-id": "0", "remote-peer-endpoints": []}
+    logger.go:130: 2025-03-06T04:28:31.084+1400	INFO	initial corruption checking passed; no corruption	{"local-member-id": "1"}
 === RUN   TestInitialCheck/Peer_returned_ErrCompacted
-    logger.go:130: 2026-04-07T08:44:06.777-1200	INFO	starting initial corruption check	{"local-member-id": "1", "timeout": "1s"}
-    logger.go:130: 2026-04-07T08:44:06.777-1200	WARN	cannot fetch hash from remote peer; local member is behind	{"local-member-id": "1", "local-member-revision": 0, "local-member-compact-revision": 0, "local-member-hash": 0, "remote-peer-id": "0", "remote-peer-endpoints": []}
-    logger.go:130: 2026-04-07T08:44:06.777-1200	INFO	initial corruption checking passed; no corruption	{"local-member-id": "1"}
+    logger.go:130: 2025-03-06T04:28:31.084+1400	INFO	starting initial corruption check	{"local-member-id": "1", "timeout": "1s"}
+    logger.go:130: 2025-03-06T04:28:31.084+1400	WARN	cannot fetch hash from remote peer; local member is behind	{"local-member-id": "1", "local-member-revision": 0, "local-member-compact-revision": 0, "local-member-hash": 0, "remote-peer-id": "0", "remote-peer-endpoints": []}
+    logger.go:130: 2025-03-06T04:28:31.084+1400	INFO	initial corruption checking passed; no corruption	{"local-member-id": "1"}
 === RUN   TestInitialCheck/Peer_returned_other_error
-    logger.go:130: 2026-04-07T08:44:06.777-1200	INFO	starting initial corruption check	{"local-member-id": "1", "timeout": "1s"}
-    logger.go:130: 2026-04-07T08:44:06.777-1200	INFO	initial corruption checking passed; no corruption	{"local-member-id": "1"}
+    logger.go:130: 2025-03-06T04:28:31.084+1400	INFO	starting initial corruption check	{"local-member-id": "1", "timeout": "1s"}
+    logger.go:130: 2025-03-06T04:28:31.084+1400	INFO	initial corruption checking passed; no corruption	{"local-member-id": "1"}
 === RUN   TestInitialCheck/Peer_returned_same_hash
-    logger.go:130: 2026-04-07T08:44:06.777-1200	INFO	starting initial corruption check	{"local-member-id": "1", "timeout": "1s"}
-    logger.go:130: 2026-04-07T08:44:06.777-1200	INFO	initial corruption checking passed; no corruption	{"local-member-id": "1"}
+    logger.go:130: 2025-03-06T04:28:31.084+1400	INFO	starting initial corruption check	{"local-member-id": "1", "timeout": "1s"}
+    logger.go:130: 2025-03-06T04:28:31.084+1400	INFO	initial corruption checking passed; no corruption	{"local-member-id": "1"}
 === RUN   TestInitialCheck/Peer_returned_different_hash_with_same_compaction_rev
-    logger.go:130: 2026-04-07T08:44:06.777-1200	INFO	starting initial corruption check	{"local-member-id": "1", "timeout": "1s"}
-    logger.go:130: 2026-04-07T08:44:06.777-1200	WARN	found different hash values from remote peer	{"local-member-id": "1", "local-member-revision": 0, "local-member-compact-revision": 1, "local-member-hash": 1, "remote-peer-id": "0", "remote-peer-endpoints": [], "remote-peer-revision": 0, "remote-peer-compact-revision": 1, "remote-peer-hash": 2}
+    logger.go:130: 2025-03-06T04:28:31.084+1400	INFO	starting initial corruption check	{"local-member-id": "1", "timeout": "1s"}
+    logger.go:130: 2025-03-06T04:28:31.084+1400	WARN	found different hash values from remote peer	{"local-member-id": "1", "local-member-revision": 0, "local-member-compact-revision": 1, "local-member-hash": 1, "remote-peer-id": "0", "remote-peer-endpoints": [], "remote-peer-revision": 0, "remote-peer-compact-revision": 1, "remote-peer-hash": 2}
 === RUN   TestInitialCheck/Peer_returned_different_hash_and_compaction_rev
-    logger.go:130: 2026-04-07T08:44:06.777-1200	INFO	starting initial corruption check	{"local-member-id": "1", "timeout": "1s"}
-    logger.go:130: 2026-04-07T08:44:06.777-1200	WARN	found different compact revision values from remote peer	{"local-member-id": "1", "local-member-revision": 0, "local-member-compact-revision": 1, "local-member-hash": 1, "remote-peer-id": "0", "remote-peer-endpoints": [], "remote-peer-revision": 0, "remote-peer-compact-revision": 2, "remote-peer-hash": 2}
-    logger.go:130: 2026-04-07T08:44:06.777-1200	INFO	initial corruption checking passed; no corruption	{"local-member-id": "1"}
+    logger.go:130: 2025-03-06T04:28:31.084+1400	INFO	starting initial corruption check	{"local-member-id": "1", "timeout": "1s"}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	WARN	found different compact revision values from remote peer	{"local-member-id": "1", "local-member-revision": 0, "local-member-compact-revision": 1, "local-member-hash": 1, "remote-peer-id": "0", "remote-peer-endpoints": [], "remote-peer-revision": 0, "remote-peer-compact-revision": 2, "remote-peer-hash": 2}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	INFO	initial corruption checking passed; no corruption	{"local-member-id": "1"}
 === RUN   TestInitialCheck/Cluster_ID_Mismatch_does_not_fail_CorruptionChecker.InitialCheck()
-    logger.go:130: 2026-04-07T08:44:06.777-1200	INFO	starting initial corruption check	{"local-member-id": "1", "timeout": "1s"}
-    logger.go:130: 2026-04-07T08:44:06.777-1200	WARN	cluster ID mismatch	{"local-member-id": "1", "local-member-revision": 0, "local-member-compact-revision": 0, "local-member-hash": 0, "remote-peer-id": "0", "remote-peer-endpoints": []}
-    logger.go:130: 2026-04-07T08:44:06.777-1200	INFO	initial corruption checking passed; no corruption	{"local-member-id": "1"}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	INFO	starting initial corruption check	{"local-member-id": "1", "timeout": "1s"}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	WARN	cluster ID mismatch	{"local-member-id": "1", "local-member-revision": 0, "local-member-compact-revision": 0, "local-member-hash": 0, "remote-peer-id": "0", "remote-peer-endpoints": []}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	INFO	initial corruption checking passed; no corruption	{"local-member-id": "1"}
 --- PASS: TestInitialCheck (0.00s)
     --- PASS: TestInitialCheck/No_peers (0.00s)
     --- PASS: TestInitialCheck/Error_getting_hash (0.00s)
@@ -15948,39 +16084,39 @@
     --- PASS: TestInitialCheck/Cluster_ID_Mismatch_does_not_fail_CorruptionChecker.InitialCheck() (0.00s)
 === RUN   TestPeriodicCheck
 === RUN   TestPeriodicCheck/Same_local_hash_and_no_peers
-    logger.go:130: 2026-04-07T08:44:06.778-1200	INFO	finished peer corruption check	{"number-of-peers-checked": 0}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	INFO	finished peer corruption check	{"number-of-peers-checked": 0}
 === RUN   TestPeriodicCheck/Error_getting_hash_first_time
 === RUN   TestPeriodicCheck/Error_getting_hash_second_time
 === RUN   TestPeriodicCheck/Error_linearizableReadNotify
 === RUN   TestPeriodicCheck/Different_local_hash_and_revision
-    logger.go:130: 2026-04-07T08:44:06.778-1200	INFO	finished peer corruption check	{"number-of-peers-checked": 0}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	INFO	finished peer corruption check	{"number-of-peers-checked": 0}
 === RUN   TestPeriodicCheck/Different_local_hash_and_compaction_revision
-    logger.go:130: 2026-04-07T08:44:06.778-1200	INFO	finished peer corruption check	{"number-of-peers-checked": 0}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	INFO	finished peer corruption check	{"number-of-peers-checked": 0}
 === RUN   TestPeriodicCheck/Different_local_hash_and_same_revisions
-    logger.go:130: 2026-04-07T08:44:06.778-1200	WARN	found hash mismatch	{"revision-1": 1, "compact-revision-1": 1, "hash-1": 1, "revision-2": 1, "compact-revision-2": 1, "hash-2": 2}
-    logger.go:130: 2026-04-07T08:44:06.778-1200	INFO	finished peer corruption check	{"number-of-peers-checked": 0}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	WARN	found hash mismatch	{"revision-1": 1, "compact-revision-1": 1, "hash-1": 1, "revision-2": 1, "compact-revision-2": 1, "hash-2": 2}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	INFO	finished peer corruption check	{"number-of-peers-checked": 0}
 === RUN   TestPeriodicCheck/Peer_with_nil_response
-    logger.go:130: 2026-04-07T08:44:06.778-1200	INFO	finished peer corruption check	{"number-of-peers-checked": 0}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	INFO	finished peer corruption check	{"number-of-peers-checked": 0}
 === RUN   TestPeriodicCheck/Peer_with_newer_revision
-    logger.go:130: 2026-04-07T08:44:06.778-1200	WARN	revision from follower must be less than or equal to leader's	{"leader-revision": 0, "follower-revision": 1, "follower-peer-id": "2a"}
-    logger.go:130: 2026-04-07T08:44:06.778-1200	INFO	finished peer corruption check	{"number-of-peers-checked": 1}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	WARN	revision from follower must be less than or equal to leader's	{"leader-revision": 0, "follower-revision": 1, "follower-peer-id": "2a"}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	INFO	finished peer corruption check	{"number-of-peers-checked": 1}
 === RUN   TestPeriodicCheck/Peer_with_newer_compact_revision
-    logger.go:130: 2026-04-07T08:44:06.778-1200	WARN	revision from follower must be less than or equal to leader's	{"leader-revision": 0, "follower-revision": 10, "follower-peer-id": "58"}
-    logger.go:130: 2026-04-07T08:44:06.778-1200	WARN	compact revision from follower must be less than or equal to leader's	{"leader-compact-revision": 0, "follower-compact-revision": 2, "follower-peer-id": "58"}
-    logger.go:130: 2026-04-07T08:44:06.778-1200	INFO	finished peer corruption check	{"number-of-peers-checked": 1}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	WARN	revision from follower must be less than or equal to leader's	{"leader-revision": 0, "follower-revision": 10, "follower-peer-id": "58"}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	WARN	compact revision from follower must be less than or equal to leader's	{"leader-compact-revision": 0, "follower-compact-revision": 2, "follower-peer-id": "58"}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	INFO	finished peer corruption check	{"number-of-peers-checked": 1}
 === RUN   TestPeriodicCheck/Peer_with_same_hash_and_compact_revision
-    logger.go:130: 2026-04-07T08:44:06.779-1200	INFO	finished peer corruption check	{"number-of-peers-checked": 1}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	INFO	finished peer corruption check	{"number-of-peers-checked": 1}
 === RUN   TestPeriodicCheck/Peer_with_different_hash_and_same_compact_revision_as_first_local
-    logger.go:130: 2026-04-07T08:44:06.779-1200	WARN	same compact revision then hashes must match	{"leader-compact-revision": 2, "leader-hash": 1, "follower-compact-revision": 1, "follower-hash": 2, "follower-peer-id": "29a"}
-    logger.go:130: 2026-04-07T08:44:06.779-1200	INFO	finished peer corruption check	{"number-of-peers-checked": 1}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	WARN	same compact revision then hashes must match	{"leader-compact-revision": 2, "leader-hash": 1, "follower-compact-revision": 1, "follower-hash": 2, "follower-peer-id": "29a"}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	INFO	finished peer corruption check	{"number-of-peers-checked": 1}
 === RUN   TestPeriodicCheck/Multiple_corrupted_peers_trigger_one_alarm
-    logger.go:130: 2026-04-07T08:44:06.779-1200	WARN	revision from follower must be less than or equal to leader's	{"leader-revision": 0, "follower-revision": 10, "follower-peer-id": "58"}
-    logger.go:130: 2026-04-07T08:44:06.779-1200	WARN	compact revision from follower must be less than or equal to leader's	{"leader-compact-revision": 0, "follower-compact-revision": 2, "follower-peer-id": "58"}
-    logger.go:130: 2026-04-07T08:44:06.779-1200	WARN	revision from follower must be less than or equal to leader's	{"leader-revision": 0, "follower-revision": 10, "follower-peer-id": "59"}
-    logger.go:130: 2026-04-07T08:44:06.779-1200	WARN	compact revision from follower must be less than or equal to leader's	{"leader-compact-revision": 0, "follower-compact-revision": 2, "follower-peer-id": "59"}
-    logger.go:130: 2026-04-07T08:44:06.779-1200	INFO	finished peer corruption check	{"number-of-peers-checked": 2}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	WARN	revision from follower must be less than or equal to leader's	{"leader-revision": 0, "follower-revision": 10, "follower-peer-id": "58"}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	WARN	compact revision from follower must be less than or equal to leader's	{"leader-compact-revision": 0, "follower-compact-revision": 2, "follower-peer-id": "58"}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	WARN	revision from follower must be less than or equal to leader's	{"leader-revision": 0, "follower-revision": 10, "follower-peer-id": "59"}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	WARN	compact revision from follower must be less than or equal to leader's	{"leader-compact-revision": 0, "follower-compact-revision": 2, "follower-peer-id": "59"}
+    logger.go:130: 2025-03-06T04:28:31.085+1400	INFO	finished peer corruption check	{"number-of-peers-checked": 2}
 === RUN   TestPeriodicCheck/Cluster_ID_Mismatch_does_not_fail_CorruptionChecker.PeriodicCheck()
-    logger.go:130: 2026-04-07T08:44:06.779-1200	INFO	finished peer corruption check	{"number-of-peers-checked": 0}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	INFO	finished peer corruption check	{"number-of-peers-checked": 0}
 --- PASS: TestPeriodicCheck (0.00s)
     --- PASS: TestPeriodicCheck/Same_local_hash_and_no_peers (0.00s)
     --- PASS: TestPeriodicCheck/Error_getting_hash_first_time (0.00s)
@@ -15998,38 +16134,38 @@
     --- PASS: TestPeriodicCheck/Cluster_ID_Mismatch_does_not_fail_CorruptionChecker.PeriodicCheck() (0.00s)
 === RUN   TestCompactHashCheck
 === RUN   TestCompactHashCheck/No_hashes
-    logger.go:130: 2026-04-07T08:44:06.779-1200	INFO	starting compact hash check	{"local-member-id": "1", "timeout": "1s"}
-    logger.go:130: 2026-04-07T08:44:06.779-1200	INFO	finished compaction hash check	{"number-of-hashes-checked": 0}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	INFO	starting compact hash check	{"local-member-id": "1", "timeout": "1s"}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	INFO	finished compaction hash check	{"number-of-hashes-checked": 0}
 === RUN   TestCompactHashCheck/No_peers,_check_new_checked_from_largest_to_smallest
-    logger.go:130: 2026-04-07T08:44:06.779-1200	INFO	starting compact hash check	{"local-member-id": "1", "timeout": "1s"}
-    logger.go:130: 2026-04-07T08:44:06.779-1200	INFO	finished compaction hash check	{"number-of-hashes-checked": 2}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	INFO	starting compact hash check	{"local-member-id": "1", "timeout": "1s"}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	INFO	finished compaction hash check	{"number-of-hashes-checked": 2}
 === RUN   TestCompactHashCheck/Peer_error
-    logger.go:130: 2026-04-07T08:44:06.780-1200	INFO	starting compact hash check	{"local-member-id": "1", "timeout": "1s"}
-    logger.go:130: 2026-04-07T08:44:06.780-1200	WARN	skipped revision in compaction hash check; was not able to check all peers	{"number-of-peers-checked": 0, "number-of-peers": 1, "revision": 2}
-    logger.go:130: 2026-04-07T08:44:06.780-1200	WARN	skipped revision in compaction hash check; was not able to check all peers	{"number-of-peers-checked": 0, "number-of-peers": 1, "revision": 1}
-    logger.go:130: 2026-04-07T08:44:06.780-1200	INFO	finished compaction hash check	{"number-of-hashes-checked": 2}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	INFO	starting compact hash check	{"local-member-id": "1", "timeout": "1s"}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	WARN	skipped revision in compaction hash check; was not able to check all peers	{"number-of-peers-checked": 0, "number-of-peers": 1, "revision": 2}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	WARN	skipped revision in compaction hash check; was not able to check all peers	{"number-of-peers-checked": 0, "number-of-peers": 1, "revision": 1}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	INFO	finished compaction hash check	{"number-of-hashes-checked": 2}
 === RUN   TestCompactHashCheck/Peer_returned_different_compaction_revision_is_skipped
-    logger.go:130: 2026-04-07T08:44:06.781-1200	INFO	starting compact hash check	{"local-member-id": "1", "timeout": "1s"}
-    logger.go:130: 2026-04-07T08:44:06.781-1200	WARN	skipped revision in compaction hash check; was not able to check all peers	{"number-of-peers-checked": 0, "number-of-peers": 1, "revision": 2}
-    logger.go:130: 2026-04-07T08:44:06.781-1200	WARN	skipped revision in compaction hash check; was not able to check all peers	{"number-of-peers-checked": 0, "number-of-peers": 1, "revision": 1}
-    logger.go:130: 2026-04-07T08:44:06.781-1200	INFO	finished compaction hash check	{"number-of-hashes-checked": 2}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	INFO	starting compact hash check	{"local-member-id": "1", "timeout": "1s"}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	WARN	skipped revision in compaction hash check; was not able to check all peers	{"number-of-peers-checked": 0, "number-of-peers": 1, "revision": 2}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	WARN	skipped revision in compaction hash check; was not able to check all peers	{"number-of-peers-checked": 0, "number-of-peers": 1, "revision": 1}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	INFO	finished compaction hash check	{"number-of-hashes-checked": 2}
 === RUN   TestCompactHashCheck/Peer_returned_same_compaction_revision_but_different_hash_triggers_alarm
-    logger.go:130: 2026-04-07T08:44:06.781-1200	INFO	starting compact hash check	{"local-member-id": "1", "timeout": "1s"}
-    logger.go:130: 2026-04-07T08:44:06.781-1200	ERROR	failed compaction hash check	{"revision": 2, "leader-compact-revision": 1, "leader-hash": 2, "follower-compact-revision": 1, "follower-hash": 3, "follower-peer-id": "2a"}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	INFO	starting compact hash check	{"local-member-id": "1", "timeout": "1s"}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	ERROR	failed compaction hash check	{"revision": 2, "leader-compact-revision": 1, "leader-hash": 2, "follower-compact-revision": 1, "follower-hash": 3, "follower-peer-id": "2a"}
 === RUN   TestCompactHashCheck/Peer_returned_same_hash_bumps_last_revision_checked
-    logger.go:130: 2026-04-07T08:44:06.781-1200	INFO	starting compact hash check	{"local-member-id": "1", "timeout": "1s"}
-    logger.go:130: 2026-04-07T08:44:06.781-1200	INFO	successfully checked hash on follower	{"revision": 2, "peer-id": "0"}
-    logger.go:130: 2026-04-07T08:44:06.781-1200	INFO	successfully checked hash on whole cluster	{"number-of-peers-checked": 1, "revision": 2}
-    logger.go:130: 2026-04-07T08:44:06.781-1200	INFO	finished compaction hash check	{"number-of-hashes-checked": 1}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	INFO	starting compact hash check	{"local-member-id": "1", "timeout": "1s"}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	INFO	successfully checked hash on follower	{"revision": 2, "peer-id": "0"}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	INFO	successfully checked hash on whole cluster	{"number-of-peers-checked": 1, "revision": 2}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	INFO	finished compaction hash check	{"number-of-hashes-checked": 1}
 === RUN   TestCompactHashCheck/Only_one_peer_succeeded_check
-    logger.go:130: 2026-04-07T08:44:06.782-1200	INFO	starting compact hash check	{"local-member-id": "1", "timeout": "1s"}
-    logger.go:130: 2026-04-07T08:44:06.782-1200	INFO	successfully checked hash on follower	{"revision": 1, "peer-id": "0"}
-    logger.go:130: 2026-04-07T08:44:06.782-1200	WARN	skipped revision in compaction hash check; was not able to check all peers	{"number-of-peers-checked": 1, "number-of-peers": 2, "revision": 1}
-    logger.go:130: 2026-04-07T08:44:06.782-1200	INFO	finished compaction hash check	{"number-of-hashes-checked": 1}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	INFO	starting compact hash check	{"local-member-id": "1", "timeout": "1s"}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	INFO	successfully checked hash on follower	{"revision": 1, "peer-id": "0"}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	WARN	skipped revision in compaction hash check; was not able to check all peers	{"number-of-peers-checked": 1, "number-of-peers": 2, "revision": 1}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	INFO	finished compaction hash check	{"number-of-hashes-checked": 1}
 === RUN   TestCompactHashCheck/Cluster_ID_Mismatch_does_not_fail_CorruptionChecker.CompactHashCheck()
-    logger.go:130: 2026-04-07T08:44:06.782-1200	INFO	starting compact hash check	{"local-member-id": "1", "timeout": "1s"}
-    logger.go:130: 2026-04-07T08:44:06.782-1200	WARN	skipped revision in compaction hash check; was not able to check all peers	{"number-of-peers-checked": 0, "number-of-peers": 1, "revision": 1}
-    logger.go:130: 2026-04-07T08:44:06.782-1200	INFO	finished compaction hash check	{"number-of-hashes-checked": 1}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	INFO	starting compact hash check	{"local-member-id": "1", "timeout": "1s"}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	WARN	skipped revision in compaction hash check; was not able to check all peers	{"number-of-peers-checked": 0, "number-of-peers": 1, "revision": 1}
+    logger.go:130: 2025-03-06T04:28:31.086+1400	INFO	finished compaction hash check	{"number-of-hashes-checked": 1}
 --- PASS: TestCompactHashCheck (0.00s)
     --- PASS: TestCompactHashCheck/No_hashes (0.00s)
     --- PASS: TestCompactHashCheck/No_peers,_check_new_checked_from_largest_to_smallest (0.00s)
@@ -16084,7 +16220,7 @@
 === RUN   TestDoBadLocalAction
 --- PASS: TestDoBadLocalAction (0.00s)
 === RUN   TestApplyRepeat
-    logger.go:130: 2026-04-07T08:44:07.791-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "4d2", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.095+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "4d2", "added-peer-peer-urls": []}
 {"level":"info","msg":"updating snapshot-count to default","given-snapshot-count":0,"updated-snapshot-count":100000}
 {"level":"info","msg":"updating snapshot catch-up entries to default","given-snapshot-catchup-entries":0,"updated-snapshot-catchup-entries":5000}
 {"level":"info","msg":"starting etcd server","local-member-id":"0","local-server-version":"3.5.16","cluster-version":"to_be_decided"}
@@ -16092,83 +16228,83 @@
 {"level":"debug","msg":"Applying entry","index":1,"term":0,"type":"EntryNormal"}
 {"level":"debug","msg":"apply entry normal","consistent-index":0,"entry-index":1,"should-applyV3":true}
 {"level":"debug","msg":"applyEntryNormal","V2request":"ID:1 Method:\"QGET\" "}
-{"level":"warn","msg":"apply request took too long","took":"32.88µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"QGET\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"29.08µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"QGET\" ","response":""}
 {"level":"debug","msg":"Applying entries","num-entries":1}
 {"level":"debug","msg":"Applying entry","index":2,"term":0,"type":"EntryConfChange"}
 {"level":"error","msg":"Validation on configuration change failed","shouldApplyV3":true,"error":"membership: ID not found"}
 {"level":"info","msg":"skipped leadership transfer for single voting member cluster","local-member-id":"0","current-leader-member-id":"0"}
 --- PASS: TestApplyRepeat (0.02s)
 === RUN   TestApplyRequest
-{"level":"warn","msg":"apply request took too long","took":"20.92µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"POST\" ","response":""}
-{"level":"warn","msg":"apply request took too long","took":"3.48µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"POST\" Expiration:1337 ","response":""}
-{"level":"warn","msg":"apply request took too long","took":"2.32µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"POST\" Dir:true ","response":""}
-{"level":"warn","msg":"apply request took too long","took":"10µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"PUT\" ","response":""}
-{"level":"warn","msg":"apply request took too long","took":"3.24µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"PUT\" Dir:true ","response":""}
-{"level":"warn","msg":"apply request took too long","took":"2.44µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"PUT\" PrevExist:true ","response":""}
-{"level":"warn","msg":"apply request took too long","took":"5.28µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"PUT\" PrevExist:false ","response":""}
-{"level":"warn","msg":"apply request took too long","took":"2.4µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"PUT\" PrevIndex:1 PrevExist:true ","response":""}
-{"level":"warn","msg":"apply request took too long","took":"2.2µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"PUT\" PrevIndex:1 PrevExist:false ","response":""}
-{"level":"warn","msg":"apply request took too long","took":"2.2µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"PUT\" PrevIndex:1 ","response":""}
-{"level":"warn","msg":"apply request took too long","took":"2.64µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"PUT\" PrevValue:\"bar\" ","response":""}
-{"level":"warn","msg":"apply request took too long","took":"2.32µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"PUT\" PrevValue:\"bar\" PrevIndex:1 ","response":""}
-{"level":"warn","msg":"apply request took too long","took":"9.84µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"DELETE\" ","response":""}
-{"level":"warn","msg":"apply request took too long","took":"2.64µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"DELETE\" PrevIndex:1 ","response":""}
-{"level":"warn","msg":"apply request took too long","took":"2µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"DELETE\" PrevValue:\"bar\" ","response":""}
-{"level":"warn","msg":"apply request took too long","took":"1.92µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"DELETE\" PrevValue:\"bar\" PrevIndex:5 ","response":""}
-{"level":"warn","msg":"apply request took too long","took":"3µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"QGET\" ","response":""}
-{"level":"warn","msg":"apply request took too long","took":"6.36µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"SYNC\" ","response":""}
-{"level":"warn","msg":"apply request took too long","took":"2.12µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"SYNC\" Time:12345 ","response":""}
-{"level":"warn","msg":"apply request took too long","took":"7.84µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"BADMETHOD\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"22.68µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"POST\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"2.12µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"POST\" Expiration:1337 ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"1.24µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"POST\" Dir:true ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"5.8µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"PUT\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"1.8µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"PUT\" Dir:true ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"1.32µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"PUT\" PrevExist:true ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"1.24µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"PUT\" PrevExist:false ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"1.36µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"PUT\" PrevIndex:1 PrevExist:true ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"1.28µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"PUT\" PrevIndex:1 PrevExist:false ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"1.2µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"PUT\" PrevIndex:1 ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"1.28µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"PUT\" PrevValue:\"bar\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"1.12µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"PUT\" PrevValue:\"bar\" PrevIndex:1 ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"4.16µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"DELETE\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"1.16µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"DELETE\" PrevIndex:1 ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"1.04µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"DELETE\" PrevValue:\"bar\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"920ns","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"DELETE\" PrevValue:\"bar\" PrevIndex:5 ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"2.8µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"QGET\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"5.16µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"SYNC\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"1.32µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"SYNC\" Time:12345 ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"3.001µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"BADMETHOD\" ","response":""}
 --- PASS: TestApplyRequest (0.00s)
 === RUN   TestApplyRequestOnAdminMemberAttributes
-    logger.go:130: 2026-04-07T08:44:07.813-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "1", "added-peer-peer-urls": []}
-{"level":"warn","msg":"apply request took too long","took":"51.2µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"PUT\" Path:\"/0/members/1/attributes\" Val:\"{\\\"Name\\\":\\\"abc\\\",\\\"ClientURLs\\\":[\\\"http://127.0.0.1:2379\\\"]}\" ","response":""}
+    logger.go:130: 2025-03-06T04:28:32.117+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "1", "added-peer-peer-urls": []}
+{"level":"warn","msg":"apply request took too long","took":"52.481µs","expected-duration":"0s","prefix":"","request":"ID:1 Method:\"PUT\" Path:\"/0/members/1/attributes\" Val:\"{\\\"Name\\\":\\\"abc\\\",\\\"ClientURLs\\\":[\\\"http://127.0.0.1:2379\\\"]}\" ","response":""}
 --- PASS: TestApplyRequestOnAdminMemberAttributes (0.00s)
 === RUN   TestApplyConfChangeError
-    logger.go:130: 2026-04-07T08:44:07.814-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "1", "added-peer-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:07.814-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "2", "added-peer-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:07.814-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "3", "added-peer-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:07.814-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "4", "added-peer-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:07.814-1200	INFO	removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "4", "removed-remote-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.118+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "1", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.118+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "2", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.118+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "3", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.118+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "4", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.118+1400	INFO	removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "4", "removed-remote-peer-urls": []}
 {"level":"error","msg":"Validation on configuration change failed","shouldApplyV3":true,"error":"membership: ID removed"}
 {"level":"error","msg":"Validation on configuration change failed","shouldApplyV3":true,"error":"membership: ID removed"}
 {"level":"error","msg":"Validation on configuration change failed","shouldApplyV3":true,"error":"membership: ID exists"}
 {"level":"error","msg":"Validation on configuration change failed","shouldApplyV3":true,"error":"membership: ID not found"}
 --- PASS: TestApplyConfChangeError (0.04s)
 === RUN   TestApplyConfChangeShouldStop
-    logger.go:130: 2026-04-07T08:44:07.856-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "1", "added-peer-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:07.856-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "2", "added-peer-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:07.856-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "3", "added-peer-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:07.856-1200	INFO	removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "2", "removed-remote-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:07.856-1200	INFO	removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "1", "removed-remote-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.162+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "1", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.162+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "2", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.162+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "3", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.162+1400	INFO	removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "2", "removed-remote-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.162+1400	INFO	removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "1", "removed-remote-peer-urls": []}
 --- PASS: TestApplyConfChangeShouldStop (0.00s)
 === RUN   TestApplyConfigChangeUpdatesConsistIndex
-    logger.go:130: 2026-04-07T08:44:07.857-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "1", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.162+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "1", "added-peer-peer-urls": []}
 {"level":"info","msg":"1 switched to configuration voters=()"}
 {"level":"info","msg":"1 became follower at term 0"}
 {"level":"info","msg":"newRaft 1 [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]"}
-    logger.go:130: 2026-04-07T08:44:07.857-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.857-1200	DEBUG	Applying entry	{"index": 2, "term": 4, "type": "EntryConfChange"}
+    logger.go:130: 2025-03-06T04:28:32.163+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.163+1400	DEBUG	Applying entry	{"index": 2, "term": 4, "type": "EntryConfChange"}
 {"level":"info","msg":"1 switched to configuration voters=(2)"}
-    logger.go:130: 2026-04-07T08:44:07.857-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "2", "added-peer-peer-urls": ["http://whatever:123"]}
+    logger.go:130: 2025-03-06T04:28:32.163+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "2", "added-peer-peer-urls": ["http://whatever:123"]}
 === RUN   TestApplyConfigChangeUpdatesConsistIndex/verify-backend
 --- PASS: TestApplyConfigChangeUpdatesConsistIndex (0.00s)
     --- PASS: TestApplyConfigChangeUpdatesConsistIndex/verify-backend (0.00s)
 === RUN   TestApplyMultiConfChangeShouldStop
-    logger.go:130: 2026-04-07T08:44:07.859-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "1", "added-peer-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:07.859-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "2", "added-peer-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:07.859-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "3", "added-peer-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:07.859-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "4", "added-peer-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:07.859-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "5", "added-peer-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:07.859-1200	DEBUG	Applying entries	{"num-entries": 4}
-    logger.go:130: 2026-04-07T08:44:07.859-1200	DEBUG	Applying entry	{"index": 1, "term": 1, "type": "EntryConfChange"}
-    logger.go:130: 2026-04-07T08:44:07.859-1200	INFO	removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "1", "removed-remote-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:07.859-1200	DEBUG	Applying entry	{"index": 2, "term": 1, "type": "EntryConfChange"}
-    logger.go:130: 2026-04-07T08:44:07.859-1200	INFO	removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "2", "removed-remote-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:07.859-1200	DEBUG	Applying entry	{"index": 3, "term": 1, "type": "EntryConfChange"}
-    logger.go:130: 2026-04-07T08:44:07.859-1200	INFO	removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "3", "removed-remote-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:07.859-1200	DEBUG	Applying entry	{"index": 4, "term": 1, "type": "EntryConfChange"}
-    logger.go:130: 2026-04-07T08:44:07.859-1200	INFO	removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "4", "removed-remote-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.164+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "1", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.164+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "2", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.164+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "3", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.164+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "4", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.164+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "5", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.164+1400	DEBUG	Applying entries	{"num-entries": 4}
+    logger.go:130: 2025-03-06T04:28:32.164+1400	DEBUG	Applying entry	{"index": 1, "term": 1, "type": "EntryConfChange"}
+    logger.go:130: 2025-03-06T04:28:32.164+1400	INFO	removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "1", "removed-remote-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.165+1400	DEBUG	Applying entry	{"index": 2, "term": 1, "type": "EntryConfChange"}
+    logger.go:130: 2025-03-06T04:28:32.165+1400	INFO	removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "2", "removed-remote-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.165+1400	DEBUG	Applying entry	{"index": 3, "term": 1, "type": "EntryConfChange"}
+    logger.go:130: 2025-03-06T04:28:32.165+1400	INFO	removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "3", "removed-remote-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.165+1400	DEBUG	Applying entry	{"index": 4, "term": 1, "type": "EntryConfChange"}
+    logger.go:130: 2025-03-06T04:28:32.165+1400	INFO	removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "4", "removed-remote-peer-urls": []}
 --- PASS: TestApplyMultiConfChangeShouldStop (0.00s)
 === RUN   TestDoProposal
 {"level":"info","msg":"updating snapshot-count to default","given-snapshot-count":0,"updated-snapshot-count":100000}
@@ -16177,7 +16313,7 @@
 {"level":"debug","msg":"Applying entry","index":1,"term":0,"type":"EntryNormal"}
 {"level":"debug","msg":"apply entry normal","consistent-index":0,"entry-index":1,"should-applyV3":true}
 {"level":"debug","msg":"applyEntryNormal","V2request":"ID:168003383571969 Method:\"POST\" "}
-{"level":"warn","msg":"apply request took too long","took":"8.24µs","expected-duration":"0s","prefix":"","request":"ID:168003383571969 Method:\"POST\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"7.28µs","expected-duration":"0s","prefix":"","request":"ID:168003383571969 Method:\"POST\" ","response":""}
 {"level":"info","msg":"skipped leadership transfer for single voting member cluster","local-member-id":"0","current-leader-member-id":"0"}
 {"level":"info","msg":"updating snapshot-count to default","given-snapshot-count":0,"updated-snapshot-count":100000}
 {"level":"info","msg":"starting etcd server","local-member-id":"0","local-server-version":"3.5.16","cluster-version":"to_be_decided"}
@@ -16185,7 +16321,7 @@
 {"level":"debug","msg":"Applying entry","index":1,"term":0,"type":"EntryNormal"}
 {"level":"debug","msg":"apply entry normal","consistent-index":0,"entry-index":1,"should-applyV3":true}
 {"level":"debug","msg":"applyEntryNormal","V2request":"ID:168003383571969 Method:\"PUT\" "}
-{"level":"warn","msg":"apply request took too long","took":"10.04µs","expected-duration":"0s","prefix":"","request":"ID:168003383571969 Method:\"PUT\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"7.32µs","expected-duration":"0s","prefix":"","request":"ID:168003383571969 Method:\"PUT\" ","response":""}
 {"level":"info","msg":"skipped leadership transfer for single voting member cluster","local-member-id":"0","current-leader-member-id":"0"}
 {"level":"info","msg":"updating snapshot-count to default","given-snapshot-count":0,"updated-snapshot-count":100000}
 {"level":"info","msg":"starting etcd server","local-member-id":"0","local-server-version":"3.5.16","cluster-version":"to_be_decided"}
@@ -16193,7 +16329,7 @@
 {"level":"debug","msg":"Applying entry","index":1,"term":0,"type":"EntryNormal"}
 {"level":"debug","msg":"apply entry normal","consistent-index":0,"entry-index":1,"should-applyV3":true}
 {"level":"debug","msg":"applyEntryNormal","V2request":"ID:168003383571969 Method:\"DELETE\" "}
-{"level":"warn","msg":"apply request took too long","took":"9.16µs","expected-duration":"0s","prefix":"","request":"ID:168003383571969 Method:\"DELETE\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"4.08µs","expected-duration":"0s","prefix":"","request":"ID:168003383571969 Method:\"DELETE\" ","response":""}
 {"level":"info","msg":"skipped leadership transfer for single voting member cluster","local-member-id":"0","current-leader-member-id":"0"}
 {"level":"info","msg":"updating snapshot-count to default","given-snapshot-count":0,"updated-snapshot-count":100000}
 {"level":"info","msg":"starting etcd server","local-member-id":"0","local-server-version":"3.5.16","cluster-version":"to_be_decided"}
@@ -16201,7 +16337,7 @@
 {"level":"debug","msg":"Applying entry","index":1,"term":0,"type":"EntryNormal"}
 {"level":"debug","msg":"apply entry normal","consistent-index":0,"entry-index":1,"should-applyV3":true}
 {"level":"debug","msg":"applyEntryNormal","V2request":"ID:168003383571969 Method:\"QGET\" Quorum:true "}
-{"level":"warn","msg":"apply request took too long","took":"5.2µs","expected-duration":"0s","prefix":"","request":"ID:168003383571969 Method:\"QGET\" Quorum:true ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"4.04µs","expected-duration":"0s","prefix":"","request":"ID:168003383571969 Method:\"QGET\" Quorum:true ","response":""}
 {"level":"info","msg":"skipped leadership transfer for single voting member cluster","local-member-id":"0","current-leader-member-id":"0"}
 --- PASS: TestDoProposal (0.00s)
 === RUN   TestDoProposalCancelled
@@ -16225,34 +16361,34 @@
 {"level":"info","msg":"compacted Raft logs","compact-index":1}
 --- PASS: TestSnapshot (0.01s)
 === RUN   TestSnapshotOrdering
-    logger.go:130: 2026-04-07T08:44:07.907-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:07.907-1200	INFO	updating snapshot-count to default	{"given-snapshot-count": 0, "updated-snapshot-count": 100000}
-    logger.go:130: 2026-04-07T08:44:07.907-1200	INFO	starting etcd server	{"local-member-id": "0", "local-server-version": "3.5.16", "cluster-version": "to_be_decided"}
-    logger.go:130: 2026-04-07T08:44:07.908-1200	INFO	sent database snapshot to writer	{"bytes": 20480, "size": "20 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestSnapshotOrdering2397643233/001/testsnapdir1224614791/member/snap/0000000000000001.snap.db","bytes":20480,"size":"20 kB"}
-    logger.go:130: 2026-04-07T08:44:07.908-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 26091, "size": "26 kB"}
-    logger.go:130: 2026-04-07T08:44:07.908-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 1}
-    logger.go:130: 2026-04-07T08:44:07.908-1200	INFO	applying snapshot	{"current-snapshot-index": 0, "current-applied-index": 0, "incoming-leader-snapshot-index": 1, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.908-1200	INFO	skipped leadership transfer for single voting member cluster	{"local-member-id": "0", "current-leader-member-id": "0"}
-    logger.go:130: 2026-04-07T08:44:07.909-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 26091, "size": "26 kB", "took": "727.08µs"}
-    logger.go:130: 2026-04-07T08:44:07.909-1200	INFO	opened backend db	{"path": "/tmp/TestSnapshotOrdering2397643233/001/testsnapdir1224614791/member/snap/db", "took": "256.64µs"}
-    logger.go:130: 2026-04-07T08:44:07.910-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:07.910-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:07.910-1200	INFO	restored mvcc store	{"consistent-index": 0}
-    logger.go:130: 2026-04-07T08:44:07.911-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:07.911-1200	INFO	enabled backend quota with default value	{"quota-name": "v3-applier", "quota-size-bytes": 2147483648, "quota-size": "2.1 GB"}
-    logger.go:130: 2026-04-07T08:44:07.911-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:07.911-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:07.911-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:07.912-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:07.912-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:07.912-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.912-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.912-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:07.912-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:07.912-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.913-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.913-1200	INFO	applied snapshot	{"current-snapshot-index": 1, "current-applied-index": 1, "incoming-leader-snapshot-index": 1, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.222+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.223+1400	INFO	updating snapshot-count to default	{"given-snapshot-count": 0, "updated-snapshot-count": 100000}
+    logger.go:130: 2025-03-06T04:28:32.223+1400	INFO	starting etcd server	{"local-member-id": "0", "local-server-version": "3.5.16", "cluster-version": "to_be_decided"}
+    logger.go:130: 2025-03-06T04:28:32.224+1400	INFO	sent database snapshot to writer	{"bytes": 20480, "size": "20 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestSnapshotOrdering3637463621/001/testsnapdir1218547267/member/snap/0000000000000001.snap.db","bytes":20480,"size":"20 kB"}
+    logger.go:130: 2025-03-06T04:28:32.224+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 26091, "size": "26 kB"}
+    logger.go:130: 2025-03-06T04:28:32.224+1400	INFO	applying snapshot	{"current-snapshot-index": 0, "current-applied-index": 0, "incoming-leader-snapshot-index": 1, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.224+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 1}
+    logger.go:130: 2025-03-06T04:28:32.225+1400	INFO	skipped leadership transfer for single voting member cluster	{"local-member-id": "0", "current-leader-member-id": "0"}
+    logger.go:130: 2025-03-06T04:28:32.225+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 26091, "size": "26 kB", "took": "1.013367ms"}
+    logger.go:130: 2025-03-06T04:28:32.225+1400	INFO	opened backend db	{"path": "/tmp/TestSnapshotOrdering3637463621/001/testsnapdir1218547267/member/snap/db", "took": "440.723µs"}
+    logger.go:130: 2025-03-06T04:28:32.225+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.227+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.227+1400	INFO	restored mvcc store	{"consistent-index": 0}
+    logger.go:130: 2025-03-06T04:28:32.227+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.227+1400	INFO	enabled backend quota with default value	{"quota-name": "v3-applier", "quota-size-bytes": 2147483648, "quota-size": "2.1 GB"}
+    logger.go:130: 2025-03-06T04:28:32.227+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.227+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.227+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.227+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.227+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.227+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.227+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.227+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.227+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.227+1400	INFO	applied snapshot	{"current-snapshot-index": 1, "current-applied-index": 1, "incoming-leader-snapshot-index": 1, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.227+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.228+1400	INFO	closed old backend file
 --- PASS: TestSnapshotOrdering (0.01s)
 === RUN   TestTriggerSnap
 {"level":"info","msg":"kvstore restored","current-rev":1}
@@ -16261,1788 +16397,1787 @@
 {"level":"debug","msg":"Applying entry","index":1,"term":0,"type":"EntryNormal"}
 {"level":"debug","msg":"apply entry normal","consistent-index":0,"entry-index":1,"should-applyV3":true}
 {"level":"debug","msg":"applyEntryNormal","V2request":"ID:168003383571969 Method:\"PUT\" "}
-{"level":"warn","msg":"apply request took too long","took":"13.08µs","expected-duration":"0s","prefix":"","request":"ID:168003383571969 Method:\"PUT\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"12.08µs","expected-duration":"0s","prefix":"","request":"ID:168003383571969 Method:\"PUT\" ","response":""}
 {"level":"debug","msg":"Applying entries","num-entries":1}
 {"level":"debug","msg":"Applying entry","index":2,"term":0,"type":"EntryNormal"}
 {"level":"debug","msg":"apply entry normal","consistent-index":1,"entry-index":2,"should-applyV3":true}
 {"level":"debug","msg":"applyEntryNormal","V2request":"ID:168003383571970 Method:\"PUT\" "}
-{"level":"warn","msg":"apply request took too long","took":"5.36µs","expected-duration":"0s","prefix":"","request":"ID:168003383571970 Method:\"PUT\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"3.56µs","expected-duration":"0s","prefix":"","request":"ID:168003383571970 Method:\"PUT\" ","response":""}
 {"level":"debug","msg":"Applying entries","num-entries":1}
 {"level":"debug","msg":"Applying entry","index":3,"term":0,"type":"EntryNormal"}
 {"level":"debug","msg":"apply entry normal","consistent-index":2,"entry-index":3,"should-applyV3":true}
 {"level":"debug","msg":"applyEntryNormal","V2request":"ID:168003383571971 Method:\"PUT\" "}
-{"level":"warn","msg":"apply request took too long","took":"5.64µs","expected-duration":"0s","prefix":"","request":"ID:168003383571971 Method:\"PUT\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"2.96µs","expected-duration":"0s","prefix":"","request":"ID:168003383571971 Method:\"PUT\" ","response":""}
 {"level":"debug","msg":"Applying entries","num-entries":1}
 {"level":"debug","msg":"Applying entry","index":4,"term":0,"type":"EntryNormal"}
 {"level":"debug","msg":"apply entry normal","consistent-index":3,"entry-index":4,"should-applyV3":true}
 {"level":"debug","msg":"applyEntryNormal","V2request":"ID:168003383571972 Method:\"PUT\" "}
-{"level":"warn","msg":"apply request took too long","took":"12.52µs","expected-duration":"0s","prefix":"","request":"ID:168003383571972 Method:\"PUT\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"3µs","expected-duration":"0s","prefix":"","request":"ID:168003383571972 Method:\"PUT\" ","response":""}
 {"level":"debug","msg":"Applying entries","num-entries":1}
 {"level":"debug","msg":"Applying entry","index":5,"term":0,"type":"EntryNormal"}
 {"level":"debug","msg":"apply entry normal","consistent-index":4,"entry-index":5,"should-applyV3":true}
 {"level":"debug","msg":"applyEntryNormal","V2request":"ID:168003383571973 Method:\"PUT\" "}
-{"level":"warn","msg":"apply request took too long","took":"5.68µs","expected-duration":"0s","prefix":"","request":"ID:168003383571973 Method:\"PUT\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"4.04µs","expected-duration":"0s","prefix":"","request":"ID:168003383571973 Method:\"PUT\" ","response":""}
 {"level":"debug","msg":"Applying entries","num-entries":1}
 {"level":"debug","msg":"Applying entry","index":6,"term":0,"type":"EntryNormal"}
 {"level":"debug","msg":"apply entry normal","consistent-index":5,"entry-index":6,"should-applyV3":true}
 {"level":"debug","msg":"applyEntryNormal","V2request":"ID:168003383571974 Method:\"PUT\" "}
-{"level":"warn","msg":"apply request took too long","took":"11.72µs","expected-duration":"0s","prefix":"","request":"ID:168003383571974 Method:\"PUT\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"8.12µs","expected-duration":"0s","prefix":"","request":"ID:168003383571974 Method:\"PUT\" ","response":""}
 {"level":"debug","msg":"Applying entries","num-entries":1}
 {"level":"debug","msg":"Applying entry","index":7,"term":0,"type":"EntryNormal"}
 {"level":"debug","msg":"apply entry normal","consistent-index":6,"entry-index":7,"should-applyV3":true}
 {"level":"debug","msg":"applyEntryNormal","V2request":"ID:168003383571975 Method:\"PUT\" "}
-{"level":"warn","msg":"apply request took too long","took":"4.44µs","expected-duration":"0s","prefix":"","request":"ID:168003383571975 Method:\"PUT\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"11.56µs","expected-duration":"0s","prefix":"","request":"ID:168003383571975 Method:\"PUT\" ","response":""}
 {"level":"debug","msg":"Applying entries","num-entries":1}
 {"level":"debug","msg":"Applying entry","index":8,"term":0,"type":"EntryNormal"}
 {"level":"debug","msg":"apply entry normal","consistent-index":7,"entry-index":8,"should-applyV3":true}
 {"level":"debug","msg":"applyEntryNormal","V2request":"ID:168003383571976 Method:\"PUT\" "}
-{"level":"warn","msg":"apply request took too long","took":"3.12µs","expected-duration":"0s","prefix":"","request":"ID:168003383571976 Method:\"PUT\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"3.76µs","expected-duration":"0s","prefix":"","request":"ID:168003383571976 Method:\"PUT\" ","response":""}
 {"level":"debug","msg":"Applying entries","num-entries":1}
 {"level":"debug","msg":"Applying entry","index":9,"term":0,"type":"EntryNormal"}
 {"level":"debug","msg":"apply entry normal","consistent-index":8,"entry-index":9,"should-applyV3":true}
 {"level":"debug","msg":"applyEntryNormal","V2request":"ID:168003383571977 Method:\"PUT\" "}
-{"level":"warn","msg":"apply request took too long","took":"4.56µs","expected-duration":"0s","prefix":"","request":"ID:168003383571977 Method:\"PUT\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"4.52µs","expected-duration":"0s","prefix":"","request":"ID:168003383571977 Method:\"PUT\" ","response":""}
 {"level":"debug","msg":"Applying entries","num-entries":1}
 {"level":"debug","msg":"Applying entry","index":10,"term":0,"type":"EntryNormal"}
 {"level":"debug","msg":"apply entry normal","consistent-index":9,"entry-index":10,"should-applyV3":true}
 {"level":"debug","msg":"applyEntryNormal","V2request":"ID:168003383571978 Method:\"PUT\" "}
-{"level":"warn","msg":"apply request took too long","took":"4.16µs","expected-duration":"0s","prefix":"","request":"ID:168003383571978 Method:\"PUT\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"3.2µs","expected-duration":"0s","prefix":"","request":"ID:168003383571978 Method:\"PUT\" ","response":""}
 {"level":"debug","msg":"Applying entries","num-entries":1}
 {"level":"debug","msg":"Applying entry","index":11,"term":0,"type":"EntryNormal"}
 {"level":"debug","msg":"apply entry normal","consistent-index":10,"entry-index":11,"should-applyV3":true}
 {"level":"debug","msg":"applyEntryNormal","V2request":"ID:168003383571979 Method:\"PUT\" "}
-{"level":"warn","msg":"apply request took too long","took":"5.28µs","expected-duration":"0s","prefix":"","request":"ID:168003383571979 Method:\"PUT\" ","response":""}
+{"level":"warn","msg":"apply request took too long","took":"2.84µs","expected-duration":"0s","prefix":"","request":"ID:168003383571979 Method:\"PUT\" ","response":""}
 {"level":"info","msg":"triggering snapshot","local-member-id":"0","local-member-applied-index":11,"local-member-snapshot-index":0,"local-member-snapshot-count":10}
 {"level":"info","msg":"saved snapshot","snapshot-index":11}
 {"level":"info","msg":"compacted Raft logs","compact-index":1}
 {"level":"info","msg":"skipped leadership transfer for single voting member cluster","local-member-id":"0","current-leader-member-id":"0"}
 --- PASS: TestTriggerSnap (0.01s)
 === RUN   TestConcurrentApplyAndSnapshotV3
-    logger.go:130: 2026-04-07T08:44:07.929-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:07.929-1200	INFO	updating snapshot-count to default	{"given-snapshot-count": 0, "updated-snapshot-count": 100000}
-    logger.go:130: 2026-04-07T08:44:07.929-1200	INFO	starting etcd server	{"local-member-id": "0", "local-server-version": "3.5.16", "cluster-version": "to_be_decided"}
-    logger.go:130: 2026-04-07T08:44:07.929-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.929-1200	DEBUG	Applying entry	{"index": 1, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.929-1200	DEBUG	apply entry normal	{"consistent-index": 0, "entry-index": 1, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.929-1200	DEBUG	applyEntryNormal	{"V2request": "ID:1 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.929-1200	WARN	apply request took too long	{"took": "13.28µs", "expected-duration": "0s", "prefix": "", "request": "ID:1 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.929-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.929-1200	DEBUG	Applying entry	{"index": 2, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.929-1200	DEBUG	apply entry normal	{"consistent-index": 1, "entry-index": 2, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.929-1200	DEBUG	applyEntryNormal	{"V2request": "ID:2 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.929-1200	WARN	apply request took too long	{"took": "4.76µs", "expected-duration": "0s", "prefix": "", "request": "ID:2 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.930-1200	INFO	sent database snapshot to writer	{"bytes": 20480, "size": "20 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000003.snap.db","bytes":20480,"size":"20 kB"}
-    logger.go:130: 2026-04-07T08:44:07.930-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 26091, "size": "26 kB"}
-    logger.go:130: 2026-04-07T08:44:07.930-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 3}
-    logger.go:130: 2026-04-07T08:44:07.930-1200	INFO	applying snapshot	{"current-snapshot-index": 0, "current-applied-index": 2, "incoming-leader-snapshot-index": 3, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.931-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "221.56µs"}
-    logger.go:130: 2026-04-07T08:44:07.931-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:07.932-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:07.932-1200	INFO	restored mvcc store	{"consistent-index": 0}
-    logger.go:130: 2026-04-07T08:44:07.932-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:07.932-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:07.932-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:07.932-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:07.933-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:07.933-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.933-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.933-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:07.933-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:07.933-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:07.933-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.934-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.934-1200	INFO	applied snapshot	{"current-snapshot-index": 3, "current-applied-index": 3, "incoming-leader-snapshot-index": 3, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.934-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.934-1200	DEBUG	Applying entry	{"index": 4, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.934-1200	DEBUG	apply entry normal	{"consistent-index": 0, "entry-index": 4, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.934-1200	DEBUG	applyEntryNormal	{"V2request": "ID:4 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.934-1200	WARN	apply request took too long	{"took": "14.68µs", "expected-duration": "0s", "prefix": "", "request": "ID:4 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.934-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.934-1200	DEBUG	Applying entry	{"index": 5, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.934-1200	DEBUG	apply entry normal	{"consistent-index": 4, "entry-index": 5, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.934-1200	DEBUG	applyEntryNormal	{"V2request": "ID:5 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.934-1200	WARN	apply request took too long	{"took": "4.72µs", "expected-duration": "0s", "prefix": "", "request": "ID:5 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.935-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000006.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:07.935-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30187, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:07.935-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 6}
-    logger.go:130: 2026-04-07T08:44:07.935-1200	INFO	applying snapshot	{"current-snapshot-index": 3, "current-applied-index": 5, "incoming-leader-snapshot-index": 6, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.936-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "184.88µs"}
-    logger.go:130: 2026-04-07T08:44:07.936-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:07.936-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:07.936-1200	INFO	restored mvcc store	{"consistent-index": 5}
-    logger.go:130: 2026-04-07T08:44:07.937-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:07.937-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:07.937-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:07.938-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:07.938-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:07.938-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:07.938-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.938-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.938-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:07.938-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:07.938-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.938-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.938-1200	INFO	applied snapshot	{"current-snapshot-index": 6, "current-applied-index": 6, "incoming-leader-snapshot-index": 6, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.938-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.938-1200	DEBUG	Applying entry	{"index": 7, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.939-1200	DEBUG	apply entry normal	{"consistent-index": 5, "entry-index": 7, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.939-1200	DEBUG	applyEntryNormal	{"V2request": "ID:7 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.939-1200	WARN	apply request took too long	{"took": "9.84µs", "expected-duration": "0s", "prefix": "", "request": "ID:7 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.939-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.939-1200	DEBUG	Applying entry	{"index": 8, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.939-1200	DEBUG	apply entry normal	{"consistent-index": 7, "entry-index": 8, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.939-1200	DEBUG	applyEntryNormal	{"V2request": "ID:8 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.939-1200	WARN	apply request took too long	{"took": "6.44µs", "expected-duration": "0s", "prefix": "", "request": "ID:8 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.940-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000009.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:07.940-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30187, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:07.940-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 9}
-    logger.go:130: 2026-04-07T08:44:07.940-1200	INFO	applying snapshot	{"current-snapshot-index": 6, "current-applied-index": 8, "incoming-leader-snapshot-index": 9, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.941-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "185.48µs"}
-    logger.go:130: 2026-04-07T08:44:07.941-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:07.942-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:07.942-1200	INFO	restored mvcc store	{"consistent-index": 8}
-    logger.go:130: 2026-04-07T08:44:07.942-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:07.942-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:07.942-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:07.942-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:07.943-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:07.943-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:07.943-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.943-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.943-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:07.943-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:07.943-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.943-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.943-1200	INFO	applied snapshot	{"current-snapshot-index": 9, "current-applied-index": 9, "incoming-leader-snapshot-index": 9, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.943-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.943-1200	DEBUG	Applying entry	{"index": 10, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.943-1200	DEBUG	apply entry normal	{"consistent-index": 8, "entry-index": 10, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.943-1200	DEBUG	applyEntryNormal	{"V2request": "ID:10 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.943-1200	WARN	apply request took too long	{"took": "8.24µs", "expected-duration": "0s", "prefix": "", "request": "ID:10 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.943-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.943-1200	DEBUG	Applying entry	{"index": 11, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.943-1200	DEBUG	apply entry normal	{"consistent-index": 10, "entry-index": 11, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.943-1200	DEBUG	applyEntryNormal	{"V2request": "ID:11 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.943-1200	WARN	apply request took too long	{"took": "7.24µs", "expected-duration": "0s", "prefix": "", "request": "ID:11 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.944-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/000000000000000c.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:07.944-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30188, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:07.944-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 12}
-    logger.go:130: 2026-04-07T08:44:07.944-1200	INFO	applying snapshot	{"current-snapshot-index": 9, "current-applied-index": 11, "incoming-leader-snapshot-index": 12, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.944-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "175.16µs"}
-    logger.go:130: 2026-04-07T08:44:07.945-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:07.946-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:07.946-1200	INFO	restored mvcc store	{"consistent-index": 11}
-    logger.go:130: 2026-04-07T08:44:07.946-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:07.946-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:07.946-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:07.946-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:07.946-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:07.946-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.946-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.946-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:07.946-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:07.947-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.947-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.947-1200	INFO	applied snapshot	{"current-snapshot-index": 12, "current-applied-index": 12, "incoming-leader-snapshot-index": 12, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.947-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.947-1200	DEBUG	Applying entry	{"index": 13, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.947-1200	DEBUG	apply entry normal	{"consistent-index": 11, "entry-index": 13, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.947-1200	DEBUG	applyEntryNormal	{"V2request": "ID:13 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.947-1200	WARN	apply request took too long	{"took": "8.96µs", "expected-duration": "0s", "prefix": "", "request": "ID:13 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.947-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:07.947-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.947-1200	DEBUG	Applying entry	{"index": 14, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.947-1200	DEBUG	apply entry normal	{"consistent-index": 13, "entry-index": 14, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.947-1200	DEBUG	applyEntryNormal	{"V2request": "ID:14 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.947-1200	WARN	apply request took too long	{"took": "4.76µs", "expected-duration": "0s", "prefix": "", "request": "ID:14 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.947-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/000000000000000f.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:07.948-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30188, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:07.948-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 15}
-    logger.go:130: 2026-04-07T08:44:07.948-1200	INFO	applying snapshot	{"current-snapshot-index": 12, "current-applied-index": 14, "incoming-leader-snapshot-index": 15, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.948-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "189.52µs"}
-    logger.go:130: 2026-04-07T08:44:07.948-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:07.950-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:07.950-1200	INFO	restored mvcc store	{"consistent-index": 14}
-    logger.go:130: 2026-04-07T08:44:07.950-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:07.950-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:07.951-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:07.951-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:07.951-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:07.951-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:07.951-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.951-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.951-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:07.951-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:07.951-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.951-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.951-1200	INFO	applied snapshot	{"current-snapshot-index": 15, "current-applied-index": 15, "incoming-leader-snapshot-index": 15, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.951-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.951-1200	DEBUG	Applying entry	{"index": 16, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.951-1200	DEBUG	apply entry normal	{"consistent-index": 14, "entry-index": 16, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.951-1200	DEBUG	applyEntryNormal	{"V2request": "ID:16 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.951-1200	WARN	apply request took too long	{"took": "9.44µs", "expected-duration": "0s", "prefix": "", "request": "ID:16 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.951-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.951-1200	DEBUG	Applying entry	{"index": 17, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.951-1200	DEBUG	apply entry normal	{"consistent-index": 16, "entry-index": 17, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.952-1200	DEBUG	applyEntryNormal	{"V2request": "ID:17 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.952-1200	WARN	apply request took too long	{"took": "4.6µs", "expected-duration": "0s", "prefix": "", "request": "ID:17 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.952-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000012.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:07.952-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:07.952-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 18}
-    logger.go:130: 2026-04-07T08:44:07.952-1200	INFO	applying snapshot	{"current-snapshot-index": 15, "current-applied-index": 17, "incoming-leader-snapshot-index": 18, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.953-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "185.52µs"}
-    logger.go:130: 2026-04-07T08:44:07.953-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:07.954-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:07.954-1200	INFO	restored mvcc store	{"consistent-index": 17}
-    logger.go:130: 2026-04-07T08:44:07.954-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:07.954-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:07.954-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:07.954-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:07.955-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:07.955-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.955-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.955-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:07.955-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:07.955-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.955-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.955-1200	INFO	applied snapshot	{"current-snapshot-index": 18, "current-applied-index": 18, "incoming-leader-snapshot-index": 18, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.955-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.956-1200	DEBUG	Applying entry	{"index": 19, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.956-1200	DEBUG	apply entry normal	{"consistent-index": 17, "entry-index": 19, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.956-1200	DEBUG	applyEntryNormal	{"V2request": "ID:19 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.955-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:07.956-1200	WARN	apply request took too long	{"took": "9.52µs", "expected-duration": "0s", "prefix": "", "request": "ID:19 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.956-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.956-1200	DEBUG	Applying entry	{"index": 20, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.956-1200	DEBUG	apply entry normal	{"consistent-index": 19, "entry-index": 20, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.956-1200	DEBUG	applyEntryNormal	{"V2request": "ID:20 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.956-1200	WARN	apply request took too long	{"took": "11.92µs", "expected-duration": "0s", "prefix": "", "request": "ID:20 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.956-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000015.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:07.957-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:07.957-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 21}
-    logger.go:130: 2026-04-07T08:44:07.957-1200	INFO	applying snapshot	{"current-snapshot-index": 18, "current-applied-index": 20, "incoming-leader-snapshot-index": 21, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.957-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "191.16µs"}
-    logger.go:130: 2026-04-07T08:44:07.957-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:07.958-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:07.958-1200	INFO	restored mvcc store	{"consistent-index": 20}
-    logger.go:130: 2026-04-07T08:44:07.958-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:07.958-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:07.958-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:07.958-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:07.959-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:07.959-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:07.959-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.959-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.959-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:07.959-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:07.960-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.960-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.960-1200	INFO	applied snapshot	{"current-snapshot-index": 21, "current-applied-index": 21, "incoming-leader-snapshot-index": 21, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.960-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.960-1200	DEBUG	Applying entry	{"index": 22, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.960-1200	DEBUG	apply entry normal	{"consistent-index": 20, "entry-index": 22, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.960-1200	DEBUG	applyEntryNormal	{"V2request": "ID:22 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.960-1200	WARN	apply request took too long	{"took": "8.56µs", "expected-duration": "0s", "prefix": "", "request": "ID:22 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.960-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.960-1200	DEBUG	Applying entry	{"index": 23, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.960-1200	DEBUG	apply entry normal	{"consistent-index": 22, "entry-index": 23, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.960-1200	DEBUG	applyEntryNormal	{"V2request": "ID:23 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.960-1200	WARN	apply request took too long	{"took": "4.88µs", "expected-duration": "0s", "prefix": "", "request": "ID:23 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.961-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000018.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:07.961-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:07.961-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 24}
-    logger.go:130: 2026-04-07T08:44:07.961-1200	INFO	applying snapshot	{"current-snapshot-index": 21, "current-applied-index": 23, "incoming-leader-snapshot-index": 24, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.961-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "207.2µs"}
-    logger.go:130: 2026-04-07T08:44:07.961-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:07.962-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:07.962-1200	INFO	restored mvcc store	{"consistent-index": 23}
-    logger.go:130: 2026-04-07T08:44:07.962-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:07.962-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:07.962-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:07.962-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:07.963-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:07.963-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:07.963-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.963-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.963-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:07.963-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:07.963-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.963-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.963-1200	INFO	applied snapshot	{"current-snapshot-index": 24, "current-applied-index": 24, "incoming-leader-snapshot-index": 24, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.963-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.963-1200	DEBUG	Applying entry	{"index": 25, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.963-1200	DEBUG	apply entry normal	{"consistent-index": 23, "entry-index": 25, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.964-1200	DEBUG	applyEntryNormal	{"V2request": "ID:25 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.964-1200	WARN	apply request took too long	{"took": "8.88µs", "expected-duration": "0s", "prefix": "", "request": "ID:25 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.964-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.964-1200	DEBUG	Applying entry	{"index": 26, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.964-1200	DEBUG	apply entry normal	{"consistent-index": 25, "entry-index": 26, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.964-1200	DEBUG	applyEntryNormal	{"V2request": "ID:26 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.964-1200	WARN	apply request took too long	{"took": "13.16µs", "expected-duration": "0s", "prefix": "", "request": "ID:26 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.965-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/000000000000001b.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:07.965-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:07.965-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 27}
-    logger.go:130: 2026-04-07T08:44:07.965-1200	INFO	applying snapshot	{"current-snapshot-index": 24, "current-applied-index": 26, "incoming-leader-snapshot-index": 27, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.965-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "192.6µs"}
-    logger.go:130: 2026-04-07T08:44:07.965-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:07.966-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:07.966-1200	INFO	restored mvcc store	{"consistent-index": 26}
-    logger.go:130: 2026-04-07T08:44:07.966-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:07.966-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:07.966-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:07.967-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:07.967-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:07.968-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:07.968-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.968-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.968-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:07.968-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:07.968-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.968-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.968-1200	INFO	applied snapshot	{"current-snapshot-index": 27, "current-applied-index": 27, "incoming-leader-snapshot-index": 27, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.968-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.968-1200	DEBUG	Applying entry	{"index": 28, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.968-1200	DEBUG	apply entry normal	{"consistent-index": 26, "entry-index": 28, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.968-1200	DEBUG	applyEntryNormal	{"V2request": "ID:28 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.968-1200	WARN	apply request took too long	{"took": "10.04µs", "expected-duration": "0s", "prefix": "", "request": "ID:28 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.968-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.968-1200	DEBUG	Applying entry	{"index": 29, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.968-1200	DEBUG	apply entry normal	{"consistent-index": 28, "entry-index": 29, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.968-1200	DEBUG	applyEntryNormal	{"V2request": "ID:29 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.968-1200	WARN	apply request took too long	{"took": "4.56µs", "expected-duration": "0s", "prefix": "", "request": "ID:29 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.969-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/000000000000001e.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:07.969-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:07.969-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 30}
-    logger.go:130: 2026-04-07T08:44:07.969-1200	INFO	applying snapshot	{"current-snapshot-index": 27, "current-applied-index": 29, "incoming-leader-snapshot-index": 30, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.970-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "183.08µs"}
-    logger.go:130: 2026-04-07T08:44:07.970-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:07.970-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:07.970-1200	INFO	restored mvcc store	{"consistent-index": 29}
-    logger.go:130: 2026-04-07T08:44:07.970-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:07.971-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:07.971-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:07.971-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:07.971-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:07.971-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:07.971-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.972-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.972-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:07.972-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:07.972-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.972-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.972-1200	INFO	applied snapshot	{"current-snapshot-index": 30, "current-applied-index": 30, "incoming-leader-snapshot-index": 30, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.972-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.972-1200	DEBUG	Applying entry	{"index": 31, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.972-1200	DEBUG	apply entry normal	{"consistent-index": 29, "entry-index": 31, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.972-1200	DEBUG	applyEntryNormal	{"V2request": "ID:31 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.972-1200	WARN	apply request took too long	{"took": "7.92µs", "expected-duration": "0s", "prefix": "", "request": "ID:31 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.972-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.972-1200	DEBUG	Applying entry	{"index": 32, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.972-1200	DEBUG	apply entry normal	{"consistent-index": 31, "entry-index": 32, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.972-1200	DEBUG	applyEntryNormal	{"V2request": "ID:32 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.972-1200	WARN	apply request took too long	{"took": "4.48µs", "expected-duration": "0s", "prefix": "", "request": "ID:32 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.973-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000021.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:07.973-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:07.973-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 33}
-    logger.go:130: 2026-04-07T08:44:07.973-1200	INFO	applying snapshot	{"current-snapshot-index": 30, "current-applied-index": 32, "incoming-leader-snapshot-index": 33, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.973-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "183.92µs"}
-    logger.go:130: 2026-04-07T08:44:07.973-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:07.975-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:07.975-1200	INFO	restored mvcc store	{"consistent-index": 32}
-    logger.go:130: 2026-04-07T08:44:07.975-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:07.975-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:07.975-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:07.975-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:07.975-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:07.975-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:07.975-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.975-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.976-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:07.976-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:07.976-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.976-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.976-1200	INFO	applied snapshot	{"current-snapshot-index": 33, "current-applied-index": 33, "incoming-leader-snapshot-index": 33, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.976-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.976-1200	DEBUG	Applying entry	{"index": 34, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.976-1200	DEBUG	apply entry normal	{"consistent-index": 32, "entry-index": 34, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.976-1200	DEBUG	applyEntryNormal	{"V2request": "ID:34 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.976-1200	WARN	apply request took too long	{"took": "9µs", "expected-duration": "0s", "prefix": "", "request": "ID:34 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.976-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.976-1200	DEBUG	Applying entry	{"index": 35, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.976-1200	DEBUG	apply entry normal	{"consistent-index": 34, "entry-index": 35, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.976-1200	DEBUG	applyEntryNormal	{"V2request": "ID:35 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.976-1200	WARN	apply request took too long	{"took": "10.72µs", "expected-duration": "0s", "prefix": "", "request": "ID:35 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.978-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000024.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:07.978-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:07.978-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 36}
-    logger.go:130: 2026-04-07T08:44:07.978-1200	INFO	applying snapshot	{"current-snapshot-index": 33, "current-applied-index": 35, "incoming-leader-snapshot-index": 36, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.978-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "192.48µs"}
-    logger.go:130: 2026-04-07T08:44:07.978-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:07.979-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:07.979-1200	INFO	restored mvcc store	{"consistent-index": 35}
-    logger.go:130: 2026-04-07T08:44:07.979-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:07.979-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:07.979-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:07.979-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:07.980-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:07.980-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:07.980-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.980-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.980-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:07.980-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:07.980-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.981-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.981-1200	INFO	applied snapshot	{"current-snapshot-index": 36, "current-applied-index": 36, "incoming-leader-snapshot-index": 36, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.981-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.981-1200	DEBUG	Applying entry	{"index": 37, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.981-1200	DEBUG	apply entry normal	{"consistent-index": 35, "entry-index": 37, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.981-1200	DEBUG	applyEntryNormal	{"V2request": "ID:37 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.981-1200	WARN	apply request took too long	{"took": "11.04µs", "expected-duration": "0s", "prefix": "", "request": "ID:37 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.981-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.981-1200	DEBUG	Applying entry	{"index": 38, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.981-1200	DEBUG	apply entry normal	{"consistent-index": 37, "entry-index": 38, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.981-1200	DEBUG	applyEntryNormal	{"V2request": "ID:38 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.981-1200	WARN	apply request took too long	{"took": "5.68µs", "expected-duration": "0s", "prefix": "", "request": "ID:38 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.982-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000027.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:07.982-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:07.982-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 39}
-    logger.go:130: 2026-04-07T08:44:07.982-1200	INFO	applying snapshot	{"current-snapshot-index": 36, "current-applied-index": 38, "incoming-leader-snapshot-index": 39, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.982-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "191.32µs"}
-    logger.go:130: 2026-04-07T08:44:07.982-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:07.984-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:07.984-1200	INFO	restored mvcc store	{"consistent-index": 38}
-    logger.go:130: 2026-04-07T08:44:07.984-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:07.984-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:07.984-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:07.984-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:07.984-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:07.985-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:07.985-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.985-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.985-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:07.985-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:07.985-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.985-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.985-1200	INFO	applied snapshot	{"current-snapshot-index": 39, "current-applied-index": 39, "incoming-leader-snapshot-index": 39, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.986-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.986-1200	DEBUG	Applying entry	{"index": 40, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.986-1200	DEBUG	apply entry normal	{"consistent-index": 38, "entry-index": 40, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.986-1200	DEBUG	applyEntryNormal	{"V2request": "ID:40 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.986-1200	WARN	apply request took too long	{"took": "8.96µs", "expected-duration": "0s", "prefix": "", "request": "ID:40 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.986-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.986-1200	DEBUG	Applying entry	{"index": 41, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.986-1200	DEBUG	apply entry normal	{"consistent-index": 40, "entry-index": 41, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.986-1200	DEBUG	applyEntryNormal	{"V2request": "ID:41 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.986-1200	WARN	apply request took too long	{"took": "5.88µs", "expected-duration": "0s", "prefix": "", "request": "ID:41 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.986-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/000000000000002a.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:07.987-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:07.987-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 42}
-    logger.go:130: 2026-04-07T08:44:07.987-1200	INFO	applying snapshot	{"current-snapshot-index": 39, "current-applied-index": 41, "incoming-leader-snapshot-index": 42, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.987-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "208.04µs"}
-    logger.go:130: 2026-04-07T08:44:07.987-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:07.989-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:07.989-1200	INFO	restored mvcc store	{"consistent-index": 41}
-    logger.go:130: 2026-04-07T08:44:07.989-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:07.989-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:07.989-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:07.989-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:07.990-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:07.990-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.990-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.990-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:07.990-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:07.990-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.990-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.990-1200	INFO	applied snapshot	{"current-snapshot-index": 42, "current-applied-index": 42, "incoming-leader-snapshot-index": 42, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.990-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.990-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:07.990-1200	DEBUG	Applying entry	{"index": 43, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.990-1200	DEBUG	apply entry normal	{"consistent-index": 41, "entry-index": 43, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.990-1200	DEBUG	applyEntryNormal	{"V2request": "ID:43 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.990-1200	WARN	apply request took too long	{"took": "13.44µs", "expected-duration": "0s", "prefix": "", "request": "ID:43 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.990-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.990-1200	DEBUG	Applying entry	{"index": 44, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.990-1200	DEBUG	apply entry normal	{"consistent-index": 43, "entry-index": 44, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.990-1200	DEBUG	applyEntryNormal	{"V2request": "ID:44 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.990-1200	WARN	apply request took too long	{"took": "5.04µs", "expected-duration": "0s", "prefix": "", "request": "ID:44 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.991-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/000000000000002d.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:07.991-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:07.991-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 45}
-    logger.go:130: 2026-04-07T08:44:07.991-1200	INFO	applying snapshot	{"current-snapshot-index": 42, "current-applied-index": 44, "incoming-leader-snapshot-index": 45, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.991-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "176.28µs"}
-    logger.go:130: 2026-04-07T08:44:07.991-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:07.992-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:07.992-1200	INFO	restored mvcc store	{"consistent-index": 44}
-    logger.go:130: 2026-04-07T08:44:07.993-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:07.993-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:07.993-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:07.993-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:07.993-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:07.994-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:07.994-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.994-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.994-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:07.994-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:07.994-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.994-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.994-1200	INFO	applied snapshot	{"current-snapshot-index": 45, "current-applied-index": 45, "incoming-leader-snapshot-index": 45, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.994-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.994-1200	DEBUG	Applying entry	{"index": 46, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.994-1200	DEBUG	apply entry normal	{"consistent-index": 44, "entry-index": 46, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.994-1200	DEBUG	applyEntryNormal	{"V2request": "ID:46 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.994-1200	WARN	apply request took too long	{"took": "8.12µs", "expected-duration": "0s", "prefix": "", "request": "ID:46 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.994-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.994-1200	DEBUG	Applying entry	{"index": 47, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.994-1200	DEBUG	apply entry normal	{"consistent-index": 46, "entry-index": 47, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.994-1200	DEBUG	applyEntryNormal	{"V2request": "ID:47 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.994-1200	WARN	apply request took too long	{"took": "14.44µs", "expected-duration": "0s", "prefix": "", "request": "ID:47 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.995-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000030.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:07.995-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:07.995-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 48}
-    logger.go:130: 2026-04-07T08:44:07.995-1200	INFO	applying snapshot	{"current-snapshot-index": 45, "current-applied-index": 47, "incoming-leader-snapshot-index": 48, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.996-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "188.16µs"}
-    logger.go:130: 2026-04-07T08:44:07.996-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:07.996-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:07.996-1200	INFO	restored mvcc store	{"consistent-index": 47}
-    logger.go:130: 2026-04-07T08:44:07.996-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:07.997-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:07.997-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:07.997-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:07.997-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:07.997-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:07.998-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.998-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.998-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:07.998-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:07.998-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.998-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:07.998-1200	INFO	applied snapshot	{"current-snapshot-index": 48, "current-applied-index": 48, "incoming-leader-snapshot-index": 48, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.998-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.998-1200	DEBUG	Applying entry	{"index": 49, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.998-1200	DEBUG	apply entry normal	{"consistent-index": 47, "entry-index": 49, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.998-1200	DEBUG	applyEntryNormal	{"V2request": "ID:49 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.998-1200	WARN	apply request took too long	{"took": "7.68µs", "expected-duration": "0s", "prefix": "", "request": "ID:49 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.998-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:07.998-1200	DEBUG	Applying entry	{"index": 50, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:07.998-1200	DEBUG	apply entry normal	{"consistent-index": 49, "entry-index": 50, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:07.998-1200	DEBUG	applyEntryNormal	{"V2request": "ID:50 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:07.998-1200	WARN	apply request took too long	{"took": "13.64µs", "expected-duration": "0s", "prefix": "", "request": "ID:50 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:07.999-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000033.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:07.999-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:07.999-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 51}
-    logger.go:130: 2026-04-07T08:44:07.999-1200	INFO	applying snapshot	{"current-snapshot-index": 48, "current-applied-index": 50, "incoming-leader-snapshot-index": 51, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:07.999-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "190.68µs"}
-    logger.go:130: 2026-04-07T08:44:07.999-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.000-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.000-1200	INFO	restored mvcc store	{"consistent-index": 50}
-    logger.go:130: 2026-04-07T08:44:08.000-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.000-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.000-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.000-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.001-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.001-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.001-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.001-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.001-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.001-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.001-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.001-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.001-1200	INFO	applied snapshot	{"current-snapshot-index": 51, "current-applied-index": 51, "incoming-leader-snapshot-index": 51, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.001-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.002-1200	DEBUG	Applying entry	{"index": 52, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.002-1200	DEBUG	apply entry normal	{"consistent-index": 50, "entry-index": 52, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.002-1200	DEBUG	applyEntryNormal	{"V2request": "ID:52 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.002-1200	WARN	apply request took too long	{"took": "11.52µs", "expected-duration": "0s", "prefix": "", "request": "ID:52 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.002-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.002-1200	DEBUG	Applying entry	{"index": 53, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.002-1200	DEBUG	apply entry normal	{"consistent-index": 52, "entry-index": 53, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.002-1200	DEBUG	applyEntryNormal	{"V2request": "ID:53 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.002-1200	WARN	apply request took too long	{"took": "5.12µs", "expected-duration": "0s", "prefix": "", "request": "ID:53 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.002-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000036.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.003-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.003-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 54}
-    logger.go:130: 2026-04-07T08:44:08.003-1200	INFO	applying snapshot	{"current-snapshot-index": 51, "current-applied-index": 53, "incoming-leader-snapshot-index": 54, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.003-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "173.32µs"}
-    logger.go:130: 2026-04-07T08:44:08.003-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.005-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.005-1200	INFO	restored mvcc store	{"consistent-index": 53}
-    logger.go:130: 2026-04-07T08:44:08.005-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.005-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.005-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.005-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.005-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.005-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.005-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.005-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.005-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.005-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.005-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.005-1200	INFO	applied snapshot	{"current-snapshot-index": 54, "current-applied-index": 54, "incoming-leader-snapshot-index": 54, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.005-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.006-1200	DEBUG	Applying entry	{"index": 55, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.006-1200	DEBUG	apply entry normal	{"consistent-index": 53, "entry-index": 55, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.006-1200	DEBUG	applyEntryNormal	{"V2request": "ID:55 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.005-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.006-1200	WARN	apply request took too long	{"took": "8.12µs", "expected-duration": "0s", "prefix": "", "request": "ID:55 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.006-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.006-1200	DEBUG	Applying entry	{"index": 56, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.006-1200	DEBUG	apply entry normal	{"consistent-index": 55, "entry-index": 56, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.006-1200	DEBUG	applyEntryNormal	{"V2request": "ID:56 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.006-1200	WARN	apply request took too long	{"took": "12µs", "expected-duration": "0s", "prefix": "", "request": "ID:56 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.007-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000039.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.007-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.007-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 57}
-    logger.go:130: 2026-04-07T08:44:08.007-1200	INFO	applying snapshot	{"current-snapshot-index": 54, "current-applied-index": 56, "incoming-leader-snapshot-index": 57, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.007-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "195.56µs"}
-    logger.go:130: 2026-04-07T08:44:08.007-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.009-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.009-1200	INFO	restored mvcc store	{"consistent-index": 56}
-    logger.go:130: 2026-04-07T08:44:08.009-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.009-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.009-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.009-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.010-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.010-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.010-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.010-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.010-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.010-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.010-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.010-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.010-1200	INFO	applied snapshot	{"current-snapshot-index": 57, "current-applied-index": 57, "incoming-leader-snapshot-index": 57, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.010-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.010-1200	DEBUG	Applying entry	{"index": 58, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.010-1200	DEBUG	apply entry normal	{"consistent-index": 56, "entry-index": 58, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.010-1200	DEBUG	applyEntryNormal	{"V2request": "ID:58 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.011-1200	WARN	apply request took too long	{"took": "8.96µs", "expected-duration": "0s", "prefix": "", "request": "ID:58 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.011-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.011-1200	DEBUG	Applying entry	{"index": 59, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.011-1200	DEBUG	apply entry normal	{"consistent-index": 58, "entry-index": 59, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.011-1200	DEBUG	applyEntryNormal	{"V2request": "ID:59 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.011-1200	WARN	apply request took too long	{"took": "12.92µs", "expected-duration": "0s", "prefix": "", "request": "ID:59 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.011-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/000000000000003c.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.012-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.012-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 60}
-    logger.go:130: 2026-04-07T08:44:08.012-1200	INFO	applying snapshot	{"current-snapshot-index": 57, "current-applied-index": 59, "incoming-leader-snapshot-index": 60, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.012-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "180.76µs"}
-    logger.go:130: 2026-04-07T08:44:08.012-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.013-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.013-1200	INFO	restored mvcc store	{"consistent-index": 59}
-    logger.go:130: 2026-04-07T08:44:08.013-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.013-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.013-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.013-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.014-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.014-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.014-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.014-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.014-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.014-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.014-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.014-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.014-1200	INFO	applied snapshot	{"current-snapshot-index": 60, "current-applied-index": 60, "incoming-leader-snapshot-index": 60, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.014-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.014-1200	DEBUG	Applying entry	{"index": 61, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.014-1200	DEBUG	apply entry normal	{"consistent-index": 59, "entry-index": 61, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.014-1200	DEBUG	applyEntryNormal	{"V2request": "ID:61 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.014-1200	WARN	apply request took too long	{"took": "10.32µs", "expected-duration": "0s", "prefix": "", "request": "ID:61 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.015-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.015-1200	DEBUG	Applying entry	{"index": 62, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.015-1200	DEBUG	apply entry normal	{"consistent-index": 61, "entry-index": 62, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.015-1200	DEBUG	applyEntryNormal	{"V2request": "ID:62 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.015-1200	WARN	apply request took too long	{"took": "5.92µs", "expected-duration": "0s", "prefix": "", "request": "ID:62 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.015-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/000000000000003f.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.015-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.016-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 63}
-    logger.go:130: 2026-04-07T08:44:08.016-1200	INFO	applying snapshot	{"current-snapshot-index": 60, "current-applied-index": 62, "incoming-leader-snapshot-index": 63, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.016-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "189.16µs"}
-    logger.go:130: 2026-04-07T08:44:08.016-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.017-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.017-1200	INFO	restored mvcc store	{"consistent-index": 62}
-    logger.go:130: 2026-04-07T08:44:08.017-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.018-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.018-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.018-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.018-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.018-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.019-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.019-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.019-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.019-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.019-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.019-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.019-1200	INFO	applied snapshot	{"current-snapshot-index": 63, "current-applied-index": 63, "incoming-leader-snapshot-index": 63, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.019-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.019-1200	DEBUG	Applying entry	{"index": 64, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.019-1200	DEBUG	apply entry normal	{"consistent-index": 62, "entry-index": 64, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.019-1200	DEBUG	applyEntryNormal	{"V2request": "ID:64 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.019-1200	WARN	apply request took too long	{"took": "9.24µs", "expected-duration": "0s", "prefix": "", "request": "ID:64 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.019-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.019-1200	DEBUG	Applying entry	{"index": 65, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.019-1200	DEBUG	apply entry normal	{"consistent-index": 64, "entry-index": 65, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.019-1200	DEBUG	applyEntryNormal	{"V2request": "ID:65 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.019-1200	WARN	apply request took too long	{"took": "4.8µs", "expected-duration": "0s", "prefix": "", "request": "ID:65 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.020-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000042.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.020-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.020-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 66}
-    logger.go:130: 2026-04-07T08:44:08.020-1200	INFO	applying snapshot	{"current-snapshot-index": 63, "current-applied-index": 65, "incoming-leader-snapshot-index": 66, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.021-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "188.64µs"}
-    logger.go:130: 2026-04-07T08:44:08.021-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.022-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.022-1200	INFO	restored mvcc store	{"consistent-index": 65}
-    logger.go:130: 2026-04-07T08:44:08.022-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.023-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.023-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.023-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.023-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.024-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.024-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.024-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.024-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.024-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.024-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.024-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.024-1200	INFO	applied snapshot	{"current-snapshot-index": 66, "current-applied-index": 66, "incoming-leader-snapshot-index": 66, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.024-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.024-1200	DEBUG	Applying entry	{"index": 67, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.024-1200	DEBUG	apply entry normal	{"consistent-index": 65, "entry-index": 67, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.024-1200	DEBUG	applyEntryNormal	{"V2request": "ID:67 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.024-1200	WARN	apply request took too long	{"took": "9.08µs", "expected-duration": "0s", "prefix": "", "request": "ID:67 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.024-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.024-1200	DEBUG	Applying entry	{"index": 68, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.024-1200	DEBUG	apply entry normal	{"consistent-index": 67, "entry-index": 68, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.024-1200	DEBUG	applyEntryNormal	{"V2request": "ID:68 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.024-1200	WARN	apply request took too long	{"took": "12.6µs", "expected-duration": "0s", "prefix": "", "request": "ID:68 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.025-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000045.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.025-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.025-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 69}
-    logger.go:130: 2026-04-07T08:44:08.025-1200	INFO	applying snapshot	{"current-snapshot-index": 66, "current-applied-index": 68, "incoming-leader-snapshot-index": 69, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.026-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "185.8µs"}
-    logger.go:130: 2026-04-07T08:44:08.026-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.026-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.026-1200	INFO	restored mvcc store	{"consistent-index": 68}
-    logger.go:130: 2026-04-07T08:44:08.026-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.026-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.026-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.026-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.027-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.027-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.027-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.028-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.028-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.028-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.028-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.028-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.028-1200	INFO	applied snapshot	{"current-snapshot-index": 69, "current-applied-index": 69, "incoming-leader-snapshot-index": 69, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.028-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.028-1200	DEBUG	Applying entry	{"index": 70, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.028-1200	DEBUG	apply entry normal	{"consistent-index": 68, "entry-index": 70, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.028-1200	DEBUG	applyEntryNormal	{"V2request": "ID:70 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.028-1200	WARN	apply request took too long	{"took": "8.6µs", "expected-duration": "0s", "prefix": "", "request": "ID:70 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.028-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.028-1200	DEBUG	Applying entry	{"index": 71, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.028-1200	DEBUG	apply entry normal	{"consistent-index": 70, "entry-index": 71, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.028-1200	DEBUG	applyEntryNormal	{"V2request": "ID:71 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.028-1200	WARN	apply request took too long	{"took": "5.32µs", "expected-duration": "0s", "prefix": "", "request": "ID:71 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.029-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000048.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.029-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.029-1200	INFO	applying snapshot	{"current-snapshot-index": 69, "current-applied-index": 71, "incoming-leader-snapshot-index": 72, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.030-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 72}
-    logger.go:130: 2026-04-07T08:44:08.030-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "276.32µs"}
-    logger.go:130: 2026-04-07T08:44:08.030-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.031-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.031-1200	INFO	restored mvcc store	{"consistent-index": 71}
-    logger.go:130: 2026-04-07T08:44:08.031-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.031-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.031-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.031-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.032-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.032-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.032-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.032-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.032-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.032-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.032-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.032-1200	INFO	applied snapshot	{"current-snapshot-index": 72, "current-applied-index": 72, "incoming-leader-snapshot-index": 72, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.032-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.032-1200	DEBUG	Applying entry	{"index": 73, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.032-1200	DEBUG	apply entry normal	{"consistent-index": 71, "entry-index": 73, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.032-1200	DEBUG	applyEntryNormal	{"V2request": "ID:73 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.033-1200	WARN	apply request took too long	{"took": "8.84µs", "expected-duration": "0s", "prefix": "", "request": "ID:73 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.032-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.033-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.033-1200	DEBUG	Applying entry	{"index": 74, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.033-1200	DEBUG	apply entry normal	{"consistent-index": 73, "entry-index": 74, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.033-1200	DEBUG	applyEntryNormal	{"V2request": "ID:74 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.033-1200	WARN	apply request took too long	{"took": "13.68µs", "expected-duration": "0s", "prefix": "", "request": "ID:74 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.033-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/000000000000004b.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.034-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.034-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 75}
-    logger.go:130: 2026-04-07T08:44:08.034-1200	INFO	applying snapshot	{"current-snapshot-index": 72, "current-applied-index": 74, "incoming-leader-snapshot-index": 75, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.034-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "183.8µs"}
-    logger.go:130: 2026-04-07T08:44:08.034-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.036-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.036-1200	INFO	restored mvcc store	{"consistent-index": 74}
-    logger.go:130: 2026-04-07T08:44:08.036-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.036-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.036-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.036-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.036-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.037-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.037-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.037-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.037-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.037-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.037-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.037-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.037-1200	INFO	applied snapshot	{"current-snapshot-index": 75, "current-applied-index": 75, "incoming-leader-snapshot-index": 75, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.037-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.038-1200	DEBUG	Applying entry	{"index": 76, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.038-1200	DEBUG	apply entry normal	{"consistent-index": 74, "entry-index": 76, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.038-1200	DEBUG	applyEntryNormal	{"V2request": "ID:76 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.038-1200	WARN	apply request took too long	{"took": "9.64µs", "expected-duration": "0s", "prefix": "", "request": "ID:76 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.038-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.038-1200	DEBUG	Applying entry	{"index": 77, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.038-1200	DEBUG	apply entry normal	{"consistent-index": 76, "entry-index": 77, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.038-1200	DEBUG	applyEntryNormal	{"V2request": "ID:77 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.038-1200	WARN	apply request took too long	{"took": "5.72µs", "expected-duration": "0s", "prefix": "", "request": "ID:77 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.038-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/000000000000004e.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.039-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.039-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 78}
-    logger.go:130: 2026-04-07T08:44:08.039-1200	INFO	applying snapshot	{"current-snapshot-index": 75, "current-applied-index": 77, "incoming-leader-snapshot-index": 78, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.039-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "199.32µs"}
-    logger.go:130: 2026-04-07T08:44:08.039-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.042-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.042-1200	INFO	restored mvcc store	{"consistent-index": 77}
-    logger.go:130: 2026-04-07T08:44:08.042-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.042-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.042-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.042-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.043-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.043-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.043-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.043-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.043-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.043-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.043-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.043-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.043-1200	INFO	applied snapshot	{"current-snapshot-index": 78, "current-applied-index": 78, "incoming-leader-snapshot-index": 78, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.043-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.043-1200	DEBUG	Applying entry	{"index": 79, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.043-1200	DEBUG	apply entry normal	{"consistent-index": 77, "entry-index": 79, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.043-1200	DEBUG	applyEntryNormal	{"V2request": "ID:79 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.043-1200	WARN	apply request took too long	{"took": "13.76µs", "expected-duration": "0s", "prefix": "", "request": "ID:79 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.043-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.043-1200	DEBUG	Applying entry	{"index": 80, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.043-1200	DEBUG	apply entry normal	{"consistent-index": 79, "entry-index": 80, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.043-1200	DEBUG	applyEntryNormal	{"V2request": "ID:80 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.043-1200	WARN	apply request took too long	{"took": "4.72µs", "expected-duration": "0s", "prefix": "", "request": "ID:80 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.044-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000051.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.044-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.044-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 81}
-    logger.go:130: 2026-04-07T08:44:08.044-1200	INFO	applying snapshot	{"current-snapshot-index": 78, "current-applied-index": 80, "incoming-leader-snapshot-index": 81, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.045-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "184.24µs"}
-    logger.go:130: 2026-04-07T08:44:08.045-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.047-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.047-1200	INFO	restored mvcc store	{"consistent-index": 80}
-    logger.go:130: 2026-04-07T08:44:08.047-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.047-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.047-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.048-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.048-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.048-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.048-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.048-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.048-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.048-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.048-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.048-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.048-1200	INFO	applied snapshot	{"current-snapshot-index": 81, "current-applied-index": 81, "incoming-leader-snapshot-index": 81, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.048-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.048-1200	DEBUG	Applying entry	{"index": 82, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.048-1200	DEBUG	apply entry normal	{"consistent-index": 80, "entry-index": 82, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.048-1200	DEBUG	applyEntryNormal	{"V2request": "ID:82 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.048-1200	WARN	apply request took too long	{"took": "8.08µs", "expected-duration": "0s", "prefix": "", "request": "ID:82 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.048-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.048-1200	DEBUG	Applying entry	{"index": 83, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.048-1200	DEBUG	apply entry normal	{"consistent-index": 82, "entry-index": 83, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.048-1200	DEBUG	applyEntryNormal	{"V2request": "ID:83 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.049-1200	WARN	apply request took too long	{"took": "13µs", "expected-duration": "0s", "prefix": "", "request": "ID:83 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.049-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000054.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.049-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.050-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 84}
-    logger.go:130: 2026-04-07T08:44:08.050-1200	INFO	applying snapshot	{"current-snapshot-index": 81, "current-applied-index": 83, "incoming-leader-snapshot-index": 84, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.050-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "192.8µs"}
-    logger.go:130: 2026-04-07T08:44:08.050-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.051-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.051-1200	INFO	restored mvcc store	{"consistent-index": 83}
-    logger.go:130: 2026-04-07T08:44:08.051-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.051-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.051-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.051-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.052-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.052-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.052-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.052-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.052-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.052-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.052-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.052-1200	INFO	applied snapshot	{"current-snapshot-index": 84, "current-applied-index": 84, "incoming-leader-snapshot-index": 84, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.052-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.052-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.052-1200	DEBUG	Applying entry	{"index": 85, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.052-1200	DEBUG	apply entry normal	{"consistent-index": 83, "entry-index": 85, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.052-1200	DEBUG	applyEntryNormal	{"V2request": "ID:85 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.052-1200	WARN	apply request took too long	{"took": "14.96µs", "expected-duration": "0s", "prefix": "", "request": "ID:85 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.052-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.052-1200	DEBUG	Applying entry	{"index": 86, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.052-1200	DEBUG	apply entry normal	{"consistent-index": 85, "entry-index": 86, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.052-1200	DEBUG	applyEntryNormal	{"V2request": "ID:86 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.053-1200	WARN	apply request took too long	{"took": "4.88µs", "expected-duration": "0s", "prefix": "", "request": "ID:86 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.053-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000057.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.053-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.053-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 87}
-    logger.go:130: 2026-04-07T08:44:08.053-1200	INFO	applying snapshot	{"current-snapshot-index": 84, "current-applied-index": 86, "incoming-leader-snapshot-index": 87, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.054-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "195.2µs"}
-    logger.go:130: 2026-04-07T08:44:08.054-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.054-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.054-1200	INFO	restored mvcc store	{"consistent-index": 86}
-    logger.go:130: 2026-04-07T08:44:08.054-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.054-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.054-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.054-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.055-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.055-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.055-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.055-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.056-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.056-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.056-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.056-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.056-1200	INFO	applied snapshot	{"current-snapshot-index": 87, "current-applied-index": 87, "incoming-leader-snapshot-index": 87, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.056-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.056-1200	DEBUG	Applying entry	{"index": 88, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.056-1200	DEBUG	apply entry normal	{"consistent-index": 86, "entry-index": 88, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.056-1200	DEBUG	applyEntryNormal	{"V2request": "ID:88 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.056-1200	WARN	apply request took too long	{"took": "14.52µs", "expected-duration": "0s", "prefix": "", "request": "ID:88 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.056-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.056-1200	DEBUG	Applying entry	{"index": 89, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.056-1200	DEBUG	apply entry normal	{"consistent-index": 88, "entry-index": 89, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.056-1200	DEBUG	applyEntryNormal	{"V2request": "ID:89 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.056-1200	WARN	apply request took too long	{"took": "4.72µs", "expected-duration": "0s", "prefix": "", "request": "ID:89 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.057-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/000000000000005a.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.057-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.057-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 90}
-    logger.go:130: 2026-04-07T08:44:08.057-1200	INFO	applying snapshot	{"current-snapshot-index": 87, "current-applied-index": 89, "incoming-leader-snapshot-index": 90, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.059-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "1.2168ms"}
-    logger.go:130: 2026-04-07T08:44:08.059-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.061-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.061-1200	INFO	restored mvcc store	{"consistent-index": 89}
-    logger.go:130: 2026-04-07T08:44:08.061-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.061-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.061-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.061-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.062-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.062-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.062-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.062-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.062-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.062-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.062-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.062-1200	INFO	applied snapshot	{"current-snapshot-index": 90, "current-applied-index": 90, "incoming-leader-snapshot-index": 90, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.062-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.062-1200	DEBUG	Applying entry	{"index": 91, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.062-1200	DEBUG	apply entry normal	{"consistent-index": 89, "entry-index": 91, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.062-1200	DEBUG	applyEntryNormal	{"V2request": "ID:91 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.062-1200	WARN	apply request took too long	{"took": "8.04µs", "expected-duration": "0s", "prefix": "", "request": "ID:91 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.062-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.062-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.062-1200	DEBUG	Applying entry	{"index": 92, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.062-1200	DEBUG	apply entry normal	{"consistent-index": 91, "entry-index": 92, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.062-1200	DEBUG	applyEntryNormal	{"V2request": "ID:92 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.062-1200	WARN	apply request took too long	{"took": "13.4µs", "expected-duration": "0s", "prefix": "", "request": "ID:92 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.063-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/000000000000005d.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.063-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.063-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 93}
-    logger.go:130: 2026-04-07T08:44:08.063-1200	INFO	applying snapshot	{"current-snapshot-index": 90, "current-applied-index": 92, "incoming-leader-snapshot-index": 93, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.064-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "181.24µs"}
-    logger.go:130: 2026-04-07T08:44:08.064-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.065-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.065-1200	INFO	restored mvcc store	{"consistent-index": 92}
-    logger.go:130: 2026-04-07T08:44:08.065-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.065-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.065-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.065-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.066-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.066-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.066-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.066-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.066-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.066-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.066-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.066-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.066-1200	INFO	applied snapshot	{"current-snapshot-index": 93, "current-applied-index": 93, "incoming-leader-snapshot-index": 93, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.066-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.066-1200	DEBUG	Applying entry	{"index": 94, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.066-1200	DEBUG	apply entry normal	{"consistent-index": 92, "entry-index": 94, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.067-1200	DEBUG	applyEntryNormal	{"V2request": "ID:94 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.067-1200	WARN	apply request took too long	{"took": "11.6µs", "expected-duration": "0s", "prefix": "", "request": "ID:94 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.067-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.067-1200	DEBUG	Applying entry	{"index": 95, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.067-1200	DEBUG	apply entry normal	{"consistent-index": 94, "entry-index": 95, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.067-1200	DEBUG	applyEntryNormal	{"V2request": "ID:95 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.067-1200	WARN	apply request took too long	{"took": "179.68µs", "expected-duration": "0s", "prefix": "", "request": "ID:95 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.068-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000060.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.068-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.069-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 96}
-    logger.go:130: 2026-04-07T08:44:08.069-1200	INFO	applying snapshot	{"current-snapshot-index": 93, "current-applied-index": 95, "incoming-leader-snapshot-index": 96, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.069-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "191.52µs"}
-    logger.go:130: 2026-04-07T08:44:08.069-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.070-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.070-1200	INFO	restored mvcc store	{"consistent-index": 95}
-    logger.go:130: 2026-04-07T08:44:08.070-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.070-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.071-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.071-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.071-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.071-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.071-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.071-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.071-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.071-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.071-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.071-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.071-1200	INFO	applied snapshot	{"current-snapshot-index": 96, "current-applied-index": 96, "incoming-leader-snapshot-index": 96, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.071-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.071-1200	DEBUG	Applying entry	{"index": 97, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.071-1200	DEBUG	apply entry normal	{"consistent-index": 95, "entry-index": 97, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.071-1200	DEBUG	applyEntryNormal	{"V2request": "ID:97 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.071-1200	WARN	apply request took too long	{"took": "9.68µs", "expected-duration": "0s", "prefix": "", "request": "ID:97 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.071-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.072-1200	DEBUG	Applying entry	{"index": 98, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.072-1200	DEBUG	apply entry normal	{"consistent-index": 97, "entry-index": 98, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.072-1200	DEBUG	applyEntryNormal	{"V2request": "ID:98 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.072-1200	WARN	apply request took too long	{"took": "5.36µs", "expected-duration": "0s", "prefix": "", "request": "ID:98 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.072-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000063.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.072-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.072-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 99}
-    logger.go:130: 2026-04-07T08:44:08.072-1200	INFO	applying snapshot	{"current-snapshot-index": 96, "current-applied-index": 98, "incoming-leader-snapshot-index": 99, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.073-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "171.96µs"}
-    logger.go:130: 2026-04-07T08:44:08.073-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.074-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.074-1200	INFO	restored mvcc store	{"consistent-index": 98}
-    logger.go:130: 2026-04-07T08:44:08.074-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.074-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.074-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.075-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.075-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.076-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.076-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.076-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.076-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.076-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.076-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.076-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.076-1200	INFO	applied snapshot	{"current-snapshot-index": 99, "current-applied-index": 99, "incoming-leader-snapshot-index": 99, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.076-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.076-1200	DEBUG	Applying entry	{"index": 100, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.076-1200	DEBUG	apply entry normal	{"consistent-index": 98, "entry-index": 100, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.076-1200	DEBUG	applyEntryNormal	{"V2request": "ID:100 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.077-1200	WARN	apply request took too long	{"took": "9.84µs", "expected-duration": "0s", "prefix": "", "request": "ID:100 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.077-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.077-1200	DEBUG	Applying entry	{"index": 101, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.077-1200	DEBUG	apply entry normal	{"consistent-index": 100, "entry-index": 101, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.077-1200	DEBUG	applyEntryNormal	{"V2request": "ID:101 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.077-1200	WARN	apply request took too long	{"took": "5.64µs", "expected-duration": "0s", "prefix": "", "request": "ID:101 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.077-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000066.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.077-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.078-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 102}
-    logger.go:130: 2026-04-07T08:44:08.078-1200	INFO	applying snapshot	{"current-snapshot-index": 99, "current-applied-index": 101, "incoming-leader-snapshot-index": 102, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.079-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "896.96µs"}
-    logger.go:130: 2026-04-07T08:44:08.079-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.081-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.081-1200	INFO	restored mvcc store	{"consistent-index": 101}
-    logger.go:130: 2026-04-07T08:44:08.081-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.081-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.081-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.081-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.082-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.082-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.082-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.082-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.082-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.082-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.082-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.082-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.082-1200	INFO	applied snapshot	{"current-snapshot-index": 102, "current-applied-index": 102, "incoming-leader-snapshot-index": 102, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.082-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.082-1200	DEBUG	Applying entry	{"index": 103, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.082-1200	DEBUG	apply entry normal	{"consistent-index": 101, "entry-index": 103, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.082-1200	DEBUG	applyEntryNormal	{"V2request": "ID:103 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.082-1200	WARN	apply request took too long	{"took": "14.96µs", "expected-duration": "0s", "prefix": "", "request": "ID:103 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.082-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.082-1200	DEBUG	Applying entry	{"index": 104, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.082-1200	DEBUG	apply entry normal	{"consistent-index": 103, "entry-index": 104, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.082-1200	DEBUG	applyEntryNormal	{"V2request": "ID:104 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.082-1200	WARN	apply request took too long	{"took": "5.2µs", "expected-duration": "0s", "prefix": "", "request": "ID:104 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.083-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000069.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.083-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.083-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 105}
-    logger.go:130: 2026-04-07T08:44:08.083-1200	INFO	applying snapshot	{"current-snapshot-index": 102, "current-applied-index": 104, "incoming-leader-snapshot-index": 105, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.084-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "189µs"}
-    logger.go:130: 2026-04-07T08:44:08.084-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.085-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.085-1200	INFO	restored mvcc store	{"consistent-index": 104}
-    logger.go:130: 2026-04-07T08:44:08.085-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.085-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.086-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.086-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.086-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.086-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.086-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.086-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.086-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.086-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.086-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.086-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.086-1200	INFO	applied snapshot	{"current-snapshot-index": 105, "current-applied-index": 105, "incoming-leader-snapshot-index": 105, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.086-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.086-1200	DEBUG	Applying entry	{"index": 106, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.086-1200	DEBUG	apply entry normal	{"consistent-index": 104, "entry-index": 106, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.086-1200	DEBUG	applyEntryNormal	{"V2request": "ID:106 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.086-1200	WARN	apply request took too long	{"took": "8.36µs", "expected-duration": "0s", "prefix": "", "request": "ID:106 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.086-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.087-1200	DEBUG	Applying entry	{"index": 107, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.087-1200	DEBUG	apply entry normal	{"consistent-index": 106, "entry-index": 107, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.087-1200	DEBUG	applyEntryNormal	{"V2request": "ID:107 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.087-1200	WARN	apply request took too long	{"took": "14.96µs", "expected-duration": "0s", "prefix": "", "request": "ID:107 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.087-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/000000000000006c.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.088-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.088-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 108}
-    logger.go:130: 2026-04-07T08:44:08.088-1200	INFO	applying snapshot	{"current-snapshot-index": 105, "current-applied-index": 107, "incoming-leader-snapshot-index": 108, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.088-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "182.88µs"}
-    logger.go:130: 2026-04-07T08:44:08.088-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.089-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.089-1200	INFO	restored mvcc store	{"consistent-index": 107}
-    logger.go:130: 2026-04-07T08:44:08.089-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.089-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.089-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.090-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.090-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.090-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.090-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.090-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.090-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.090-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.090-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.090-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.090-1200	INFO	applied snapshot	{"current-snapshot-index": 108, "current-applied-index": 108, "incoming-leader-snapshot-index": 108, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.090-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.090-1200	DEBUG	Applying entry	{"index": 109, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.090-1200	DEBUG	apply entry normal	{"consistent-index": 107, "entry-index": 109, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.090-1200	DEBUG	applyEntryNormal	{"V2request": "ID:109 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.091-1200	WARN	apply request took too long	{"took": "9.24µs", "expected-duration": "0s", "prefix": "", "request": "ID:109 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.091-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.091-1200	DEBUG	Applying entry	{"index": 110, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.091-1200	DEBUG	apply entry normal	{"consistent-index": 109, "entry-index": 110, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.091-1200	DEBUG	applyEntryNormal	{"V2request": "ID:110 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.091-1200	WARN	apply request took too long	{"took": "6.2µs", "expected-duration": "0s", "prefix": "", "request": "ID:110 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.091-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/000000000000006f.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.092-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.092-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 111}
-    logger.go:130: 2026-04-07T08:44:08.092-1200	INFO	applying snapshot	{"current-snapshot-index": 108, "current-applied-index": 110, "incoming-leader-snapshot-index": 111, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.092-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "192.64µs"}
-    logger.go:130: 2026-04-07T08:44:08.092-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.093-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.093-1200	INFO	restored mvcc store	{"consistent-index": 110}
-    logger.go:130: 2026-04-07T08:44:08.094-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.094-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.094-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.094-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.094-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.094-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.094-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.094-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.094-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.094-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.094-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.094-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.094-1200	INFO	applied snapshot	{"current-snapshot-index": 111, "current-applied-index": 111, "incoming-leader-snapshot-index": 111, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.094-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.095-1200	DEBUG	Applying entry	{"index": 112, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.095-1200	DEBUG	apply entry normal	{"consistent-index": 110, "entry-index": 112, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.095-1200	DEBUG	applyEntryNormal	{"V2request": "ID:112 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.095-1200	WARN	apply request took too long	{"took": "8.56µs", "expected-duration": "0s", "prefix": "", "request": "ID:112 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.095-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.095-1200	DEBUG	Applying entry	{"index": 113, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.095-1200	DEBUG	apply entry normal	{"consistent-index": 112, "entry-index": 113, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.095-1200	DEBUG	applyEntryNormal	{"V2request": "ID:113 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.095-1200	WARN	apply request took too long	{"took": "6µs", "expected-duration": "0s", "prefix": "", "request": "ID:113 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.095-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000072.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.096-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.096-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 114}
-    logger.go:130: 2026-04-07T08:44:08.096-1200	INFO	applying snapshot	{"current-snapshot-index": 111, "current-applied-index": 113, "incoming-leader-snapshot-index": 114, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.096-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "175.88µs"}
-    logger.go:130: 2026-04-07T08:44:08.096-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.097-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.097-1200	INFO	restored mvcc store	{"consistent-index": 113}
-    logger.go:130: 2026-04-07T08:44:08.097-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.097-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.097-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.098-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.098-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.098-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.098-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.098-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.098-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.098-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.098-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.098-1200	INFO	applied snapshot	{"current-snapshot-index": 114, "current-applied-index": 114, "incoming-leader-snapshot-index": 114, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.098-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.098-1200	DEBUG	Applying entry	{"index": 115, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.098-1200	DEBUG	apply entry normal	{"consistent-index": 113, "entry-index": 115, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.098-1200	DEBUG	applyEntryNormal	{"V2request": "ID:115 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.098-1200	WARN	apply request took too long	{"took": "8.8µs", "expected-duration": "0s", "prefix": "", "request": "ID:115 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.098-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.098-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.098-1200	DEBUG	Applying entry	{"index": 116, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.098-1200	DEBUG	apply entry normal	{"consistent-index": 115, "entry-index": 116, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.098-1200	DEBUG	applyEntryNormal	{"V2request": "ID:116 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.099-1200	WARN	apply request took too long	{"took": "13.44µs", "expected-duration": "0s", "prefix": "", "request": "ID:116 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.100-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000075.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.100-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.100-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 117}
-    logger.go:130: 2026-04-07T08:44:08.100-1200	INFO	applying snapshot	{"current-snapshot-index": 114, "current-applied-index": 116, "incoming-leader-snapshot-index": 117, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.101-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "207.48µs"}
-    logger.go:130: 2026-04-07T08:44:08.101-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.102-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.102-1200	INFO	restored mvcc store	{"consistent-index": 116}
-    logger.go:130: 2026-04-07T08:44:08.102-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.102-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.102-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.102-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.103-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.103-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.103-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.103-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.103-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.103-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.103-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.103-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.103-1200	INFO	applied snapshot	{"current-snapshot-index": 117, "current-applied-index": 117, "incoming-leader-snapshot-index": 117, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.103-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.103-1200	DEBUG	Applying entry	{"index": 118, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.103-1200	DEBUG	apply entry normal	{"consistent-index": 116, "entry-index": 118, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.103-1200	DEBUG	applyEntryNormal	{"V2request": "ID:118 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.103-1200	WARN	apply request took too long	{"took": "9.76µs", "expected-duration": "0s", "prefix": "", "request": "ID:118 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.104-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.104-1200	DEBUG	Applying entry	{"index": 119, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.104-1200	DEBUG	apply entry normal	{"consistent-index": 118, "entry-index": 119, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.104-1200	DEBUG	applyEntryNormal	{"V2request": "ID:119 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.104-1200	WARN	apply request took too long	{"took": "5.88µs", "expected-duration": "0s", "prefix": "", "request": "ID:119 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.104-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000078.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.104-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.104-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 120}
-    logger.go:130: 2026-04-07T08:44:08.104-1200	INFO	applying snapshot	{"current-snapshot-index": 117, "current-applied-index": 119, "incoming-leader-snapshot-index": 120, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.105-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "172.36µs"}
-    logger.go:130: 2026-04-07T08:44:08.105-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.106-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.106-1200	INFO	restored mvcc store	{"consistent-index": 119}
-    logger.go:130: 2026-04-07T08:44:08.106-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.106-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.107-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.106-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.107-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.107-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.107-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.107-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.107-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.107-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.107-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.107-1200	INFO	applied snapshot	{"current-snapshot-index": 120, "current-applied-index": 120, "incoming-leader-snapshot-index": 120, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.107-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.107-1200	DEBUG	Applying entry	{"index": 121, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.107-1200	DEBUG	apply entry normal	{"consistent-index": 119, "entry-index": 121, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.107-1200	DEBUG	applyEntryNormal	{"V2request": "ID:121 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.107-1200	WARN	apply request took too long	{"took": "7.4µs", "expected-duration": "0s", "prefix": "", "request": "ID:121 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.107-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.107-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.107-1200	DEBUG	Applying entry	{"index": 122, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.107-1200	DEBUG	apply entry normal	{"consistent-index": 121, "entry-index": 122, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.108-1200	DEBUG	applyEntryNormal	{"V2request": "ID:122 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.108-1200	WARN	apply request took too long	{"took": "14.36µs", "expected-duration": "0s", "prefix": "", "request": "ID:122 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.109-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/000000000000007b.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.109-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.109-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 123}
-    logger.go:130: 2026-04-07T08:44:08.109-1200	INFO	applying snapshot	{"current-snapshot-index": 120, "current-applied-index": 122, "incoming-leader-snapshot-index": 123, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.110-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "183.2µs"}
-    logger.go:130: 2026-04-07T08:44:08.110-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.111-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.111-1200	INFO	restored mvcc store	{"consistent-index": 122}
-    logger.go:130: 2026-04-07T08:44:08.111-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.111-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.111-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.111-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.111-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.112-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.112-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.112-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.112-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.112-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.112-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.112-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.112-1200	INFO	applied snapshot	{"current-snapshot-index": 123, "current-applied-index": 123, "incoming-leader-snapshot-index": 123, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.112-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.112-1200	DEBUG	Applying entry	{"index": 124, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.112-1200	DEBUG	apply entry normal	{"consistent-index": 122, "entry-index": 124, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.112-1200	DEBUG	applyEntryNormal	{"V2request": "ID:124 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.112-1200	WARN	apply request took too long	{"took": "8.04µs", "expected-duration": "0s", "prefix": "", "request": "ID:124 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.112-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.112-1200	DEBUG	Applying entry	{"index": 125, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.112-1200	DEBUG	apply entry normal	{"consistent-index": 124, "entry-index": 125, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.112-1200	DEBUG	applyEntryNormal	{"V2request": "ID:125 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.112-1200	WARN	apply request took too long	{"took": "4.64µs", "expected-duration": "0s", "prefix": "", "request": "ID:125 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.113-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/000000000000007e.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.113-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.113-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 126}
-    logger.go:130: 2026-04-07T08:44:08.113-1200	INFO	applying snapshot	{"current-snapshot-index": 123, "current-applied-index": 125, "incoming-leader-snapshot-index": 126, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.114-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "206.6µs"}
-    logger.go:130: 2026-04-07T08:44:08.114-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.114-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.114-1200	INFO	restored mvcc store	{"consistent-index": 125}
-    logger.go:130: 2026-04-07T08:44:08.114-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.115-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.115-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.114-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.115-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.116-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.115-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.116-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.116-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.116-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.116-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.116-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.116-1200	INFO	applied snapshot	{"current-snapshot-index": 126, "current-applied-index": 126, "incoming-leader-snapshot-index": 126, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.116-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.116-1200	DEBUG	Applying entry	{"index": 127, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.116-1200	DEBUG	apply entry normal	{"consistent-index": 125, "entry-index": 127, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.116-1200	DEBUG	applyEntryNormal	{"V2request": "ID:127 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.117-1200	WARN	apply request took too long	{"took": "15.48µs", "expected-duration": "0s", "prefix": "", "request": "ID:127 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.117-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.117-1200	DEBUG	Applying entry	{"index": 128, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.117-1200	DEBUG	apply entry normal	{"consistent-index": 127, "entry-index": 128, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.117-1200	DEBUG	applyEntryNormal	{"V2request": "ID:128 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.117-1200	WARN	apply request took too long	{"took": "13.08µs", "expected-duration": "0s", "prefix": "", "request": "ID:128 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.117-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000081.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.118-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.118-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 129}
-    logger.go:130: 2026-04-07T08:44:08.118-1200	INFO	applying snapshot	{"current-snapshot-index": 126, "current-applied-index": 128, "incoming-leader-snapshot-index": 129, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.119-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "1.19172ms"}
-    logger.go:130: 2026-04-07T08:44:08.119-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.121-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.121-1200	INFO	restored mvcc store	{"consistent-index": 128}
-    logger.go:130: 2026-04-07T08:44:08.121-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.121-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.122-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.122-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.122-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.122-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.122-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.122-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.122-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.122-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.122-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.122-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.122-1200	INFO	applied snapshot	{"current-snapshot-index": 129, "current-applied-index": 129, "incoming-leader-snapshot-index": 129, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.122-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.122-1200	DEBUG	Applying entry	{"index": 130, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.122-1200	DEBUG	apply entry normal	{"consistent-index": 128, "entry-index": 130, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.122-1200	DEBUG	applyEntryNormal	{"V2request": "ID:130 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.122-1200	WARN	apply request took too long	{"took": "10.2µs", "expected-duration": "0s", "prefix": "", "request": "ID:130 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.122-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.122-1200	DEBUG	Applying entry	{"index": 131, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.122-1200	DEBUG	apply entry normal	{"consistent-index": 130, "entry-index": 131, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.122-1200	DEBUG	applyEntryNormal	{"V2request": "ID:131 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.123-1200	WARN	apply request took too long	{"took": "12.2µs", "expected-duration": "0s", "prefix": "", "request": "ID:131 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.123-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000084.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.123-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.124-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 132}
-    logger.go:130: 2026-04-07T08:44:08.124-1200	INFO	applying snapshot	{"current-snapshot-index": 129, "current-applied-index": 131, "incoming-leader-snapshot-index": 132, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.124-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "196.16µs"}
-    logger.go:130: 2026-04-07T08:44:08.124-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.126-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.126-1200	INFO	restored mvcc store	{"consistent-index": 131}
-    logger.go:130: 2026-04-07T08:44:08.126-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.126-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.126-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.126-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.126-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.127-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.127-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.127-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.127-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.127-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.127-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.127-1200	INFO	applied snapshot	{"current-snapshot-index": 132, "current-applied-index": 132, "incoming-leader-snapshot-index": 132, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.127-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.127-1200	DEBUG	Applying entry	{"index": 133, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.127-1200	DEBUG	apply entry normal	{"consistent-index": 131, "entry-index": 133, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.127-1200	DEBUG	applyEntryNormal	{"V2request": "ID:133 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.127-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.127-1200	WARN	apply request took too long	{"took": "9.72µs", "expected-duration": "0s", "prefix": "", "request": "ID:133 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.127-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.127-1200	DEBUG	Applying entry	{"index": 134, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.127-1200	DEBUG	apply entry normal	{"consistent-index": 133, "entry-index": 134, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.127-1200	DEBUG	applyEntryNormal	{"V2request": "ID:134 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.127-1200	WARN	apply request took too long	{"took": "13.04µs", "expected-duration": "0s", "prefix": "", "request": "ID:134 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.128-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000087.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.128-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.128-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 135}
-    logger.go:130: 2026-04-07T08:44:08.128-1200	INFO	applying snapshot	{"current-snapshot-index": 132, "current-applied-index": 134, "incoming-leader-snapshot-index": 135, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.128-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "205.6µs"}
-    logger.go:130: 2026-04-07T08:44:08.129-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.129-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.129-1200	INFO	restored mvcc store	{"consistent-index": 134}
-    logger.go:130: 2026-04-07T08:44:08.130-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.130-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.130-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.130-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.130-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.131-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.131-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.131-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.131-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.131-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.131-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.131-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.131-1200	INFO	applied snapshot	{"current-snapshot-index": 135, "current-applied-index": 135, "incoming-leader-snapshot-index": 135, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.131-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.131-1200	DEBUG	Applying entry	{"index": 136, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.131-1200	DEBUG	apply entry normal	{"consistent-index": 134, "entry-index": 136, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.131-1200	DEBUG	applyEntryNormal	{"V2request": "ID:136 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.131-1200	WARN	apply request took too long	{"took": "9.88µs", "expected-duration": "0s", "prefix": "", "request": "ID:136 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.131-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.131-1200	DEBUG	Applying entry	{"index": 137, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.131-1200	DEBUG	apply entry normal	{"consistent-index": 136, "entry-index": 137, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.131-1200	DEBUG	applyEntryNormal	{"V2request": "ID:137 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.131-1200	WARN	apply request took too long	{"took": "12.4µs", "expected-duration": "0s", "prefix": "", "request": "ID:137 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.132-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/000000000000008a.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.132-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.132-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 138}
-    logger.go:130: 2026-04-07T08:44:08.132-1200	INFO	applying snapshot	{"current-snapshot-index": 135, "current-applied-index": 137, "incoming-leader-snapshot-index": 138, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.133-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "188.92µs"}
-    logger.go:130: 2026-04-07T08:44:08.133-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.133-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.133-1200	INFO	restored mvcc store	{"consistent-index": 137}
-    logger.go:130: 2026-04-07T08:44:08.133-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.133-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.134-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.134-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.135-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.135-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.135-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.135-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.135-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.135-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.135-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.135-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.135-1200	INFO	applied snapshot	{"current-snapshot-index": 138, "current-applied-index": 138, "incoming-leader-snapshot-index": 138, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.135-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.135-1200	DEBUG	Applying entry	{"index": 139, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.135-1200	DEBUG	apply entry normal	{"consistent-index": 137, "entry-index": 139, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.135-1200	DEBUG	applyEntryNormal	{"V2request": "ID:139 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.135-1200	WARN	apply request took too long	{"took": "11.04µs", "expected-duration": "0s", "prefix": "", "request": "ID:139 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.135-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.136-1200	DEBUG	Applying entry	{"index": 140, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.136-1200	DEBUG	apply entry normal	{"consistent-index": 139, "entry-index": 140, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.136-1200	DEBUG	applyEntryNormal	{"V2request": "ID:140 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.136-1200	WARN	apply request took too long	{"took": "4.68µs", "expected-duration": "0s", "prefix": "", "request": "ID:140 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.136-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/000000000000008d.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.136-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.136-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 141}
-    logger.go:130: 2026-04-07T08:44:08.137-1200	INFO	applying snapshot	{"current-snapshot-index": 138, "current-applied-index": 140, "incoming-leader-snapshot-index": 141, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.137-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "176.04µs"}
-    logger.go:130: 2026-04-07T08:44:08.137-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.138-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.138-1200	INFO	restored mvcc store	{"consistent-index": 140}
-    logger.go:130: 2026-04-07T08:44:08.138-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.138-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.138-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.138-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.138-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.139-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.139-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.139-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.139-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.139-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.139-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.139-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.139-1200	INFO	applied snapshot	{"current-snapshot-index": 141, "current-applied-index": 141, "incoming-leader-snapshot-index": 141, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.139-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.139-1200	DEBUG	Applying entry	{"index": 142, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.139-1200	DEBUG	apply entry normal	{"consistent-index": 140, "entry-index": 142, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.139-1200	DEBUG	applyEntryNormal	{"V2request": "ID:142 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.139-1200	WARN	apply request took too long	{"took": "9.12µs", "expected-duration": "0s", "prefix": "", "request": "ID:142 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.139-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.139-1200	DEBUG	Applying entry	{"index": 143, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.139-1200	DEBUG	apply entry normal	{"consistent-index": 142, "entry-index": 143, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.139-1200	DEBUG	applyEntryNormal	{"V2request": "ID:143 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.140-1200	WARN	apply request took too long	{"took": "4.88µs", "expected-duration": "0s", "prefix": "", "request": "ID:143 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.140-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000090.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.140-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.140-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 144}
-    logger.go:130: 2026-04-07T08:44:08.140-1200	INFO	applying snapshot	{"current-snapshot-index": 141, "current-applied-index": 143, "incoming-leader-snapshot-index": 144, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.141-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "175.96µs"}
-    logger.go:130: 2026-04-07T08:44:08.141-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.142-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.142-1200	INFO	restored mvcc store	{"consistent-index": 143}
-    logger.go:130: 2026-04-07T08:44:08.142-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.142-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.142-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.142-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.143-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.143-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.143-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.143-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.143-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.143-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.143-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.143-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.143-1200	INFO	applied snapshot	{"current-snapshot-index": 144, "current-applied-index": 144, "incoming-leader-snapshot-index": 144, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.143-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.143-1200	DEBUG	Applying entry	{"index": 145, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.143-1200	DEBUG	apply entry normal	{"consistent-index": 143, "entry-index": 145, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.143-1200	DEBUG	applyEntryNormal	{"V2request": "ID:145 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.143-1200	WARN	apply request took too long	{"took": "11.88µs", "expected-duration": "0s", "prefix": "", "request": "ID:145 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.143-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.143-1200	DEBUG	Applying entry	{"index": 146, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.143-1200	DEBUG	apply entry normal	{"consistent-index": 145, "entry-index": 146, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.143-1200	DEBUG	applyEntryNormal	{"V2request": "ID:146 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.143-1200	WARN	apply request took too long	{"took": "4.72µs", "expected-duration": "0s", "prefix": "", "request": "ID:146 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.145-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000093.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.145-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.145-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 147}
-    logger.go:130: 2026-04-07T08:44:08.145-1200	INFO	applying snapshot	{"current-snapshot-index": 144, "current-applied-index": 146, "incoming-leader-snapshot-index": 147, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.145-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "197.48µs"}
-    logger.go:130: 2026-04-07T08:44:08.146-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.146-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.146-1200	INFO	restored mvcc store	{"consistent-index": 146}
-    logger.go:130: 2026-04-07T08:44:08.146-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.147-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.147-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.147-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.147-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.147-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.148-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.148-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.148-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.148-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.148-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.148-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.148-1200	INFO	applied snapshot	{"current-snapshot-index": 147, "current-applied-index": 147, "incoming-leader-snapshot-index": 147, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.148-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.148-1200	DEBUG	Applying entry	{"index": 148, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.148-1200	DEBUG	apply entry normal	{"consistent-index": 146, "entry-index": 148, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.148-1200	DEBUG	applyEntryNormal	{"V2request": "ID:148 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.148-1200	WARN	apply request took too long	{"took": "8.92µs", "expected-duration": "0s", "prefix": "", "request": "ID:148 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.148-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.148-1200	DEBUG	Applying entry	{"index": 149, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.148-1200	DEBUG	apply entry normal	{"consistent-index": 148, "entry-index": 149, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.148-1200	DEBUG	applyEntryNormal	{"V2request": "ID:149 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.148-1200	WARN	apply request took too long	{"took": "5µs", "expected-duration": "0s", "prefix": "", "request": "ID:149 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.149-1200	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/0000000000000096.snap.db","bytes":24576,"size":"25 kB"}
-    logger.go:130: 2026-04-07T08:44:08.149-1200	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB"}
-    logger.go:130: 2026-04-07T08:44:08.149-1200	INFO	applied incoming Raft snapshot	{"snapshot-index": 150}
-    logger.go:130: 2026-04-07T08:44:08.149-1200	INFO	applying snapshot	{"current-snapshot-index": 147, "current-applied-index": 149, "incoming-leader-snapshot-index": 150, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.149-1200	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33850184981/001/testsnapdir1153339438/member/snap/db", "took": "181.84µs"}
-    logger.go:130: 2026-04-07T08:44:08.149-1200	INFO	restoring mvcc store
-    logger.go:130: 2026-04-07T08:44:08.151-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:08.151-1200	INFO	restored mvcc store	{"consistent-index": 149}
-    logger.go:130: 2026-04-07T08:44:08.151-1200	INFO	restoring alarm store
-    logger.go:130: 2026-04-07T08:44:08.151-1200	INFO	closing old backend file
-    logger.go:130: 2026-04-07T08:44:08.151-1200	INFO	restored alarm store
-    logger.go:130: 2026-04-07T08:44:08.151-1200	INFO	restoring v2 store
-    logger.go:130: 2026-04-07T08:44:08.151-1200	INFO	restored v2 store
-    logger.go:130: 2026-04-07T08:44:08.151-1200	INFO	closed old backend file
-    logger.go:130: 2026-04-07T08:44:08.151-1200	INFO	restoring cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.152-1200	INFO	restored cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.152-1200	INFO	removing old peers from network
-    logger.go:130: 2026-04-07T08:44:08.152-1200	INFO	removed old peers from network
-    logger.go:130: 2026-04-07T08:44:08.152-1200	INFO	adding peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.152-1200	INFO	added peers from new cluster configuration
-    logger.go:130: 2026-04-07T08:44:08.152-1200	INFO	applied snapshot	{"current-snapshot-index": 150, "current-applied-index": 150, "incoming-leader-snapshot-index": 150, "incoming-leader-snapshot-term": 0}
-    logger.go:130: 2026-04-07T08:44:08.152-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.152-1200	DEBUG	Applying entry	{"index": 151, "term": 0, "type": "EntryNormal"}
-    logger.go:130: 2026-04-07T08:44:08.152-1200	DEBUG	apply entry normal	{"consistent-index": 149, "entry-index": 151, "should-applyV3": true}
-    logger.go:130: 2026-04-07T08:44:08.152-1200	DEBUG	applyEntryNormal	{"V2request": "ID:151 Method:\"QGET\" "}
-    logger.go:130: 2026-04-07T08:44:08.152-1200	WARN	apply request took too long	{"took": "12.36µs", "expected-duration": "0s", "prefix": "", "request": "ID:151 Method:\"QGET\" ", "response": ""}
-    logger.go:130: 2026-04-07T08:44:08.152-1200	INFO	skipped leadership transfer for single voting member cluster	{"local-member-id": "0", "current-leader-member-id": "0"}
-    logger.go:130: 2026-04-07T08:44:08.152-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB", "took": "52.2384ms"}
-    logger.go:130: 2026-04-07T08:44:08.152-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB", "took": "64.91668ms"}
-    logger.go:130: 2026-04-07T08:44:08.152-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB", "took": "34.87304ms"}
-    logger.go:130: 2026-04-07T08:44:08.152-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB", "took": "56.84608ms"}
-    logger.go:130: 2026-04-07T08:44:08.152-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB", "took": "60.98104ms"}
-    logger.go:130: 2026-04-07T08:44:08.152-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB", "took": "29.21116ms"}
-    logger.go:130: 2026-04-07T08:44:08.152-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB", "took": "24.46392ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "150.28408ms"}
-    logger.go:130: 2026-04-07T08:44:08.152-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB", "took": "69.36176ms"}
-    logger.go:130: 2026-04-07T08:44:08.152-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB", "took": "16.19468ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB", "took": "12.28668ms"}
-    logger.go:130: 2026-04-07T08:44:08.152-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB", "took": "3.7286ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB", "took": "20.95196ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "188.64608ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "114.67544ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "99.84272ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB", "took": "43.88696ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB", "took": "40.3418ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "133.2464ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "127.84632ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB", "took": "48.86032ms"}
-    logger.go:130: 2026-04-07T08:44:08.154-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 26091, "size": "26 kB", "took": "223.4456ms"}
-    logger.go:130: 2026-04-07T08:44:08.154-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30188, "size": "30 kB", "took": "209.39608ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "80.89776ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "89.76408ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "85.01712ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "103.83456ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "166.7172ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "119.70476ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB", "took": "8.7596ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "154.4314ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "141.77656ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30188, "size": "30 kB", "took": "205.72132ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "192.71908ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "96.5532ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "137.64712ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB", "took": "75.83752ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30187, "size": "30 kB", "took": "213.47936ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "108.7882ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "146.822ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "158.41604ms"}
-    logger.go:130: 2026-04-07T08:44:08.154-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "171.78472ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "201.22564ms"}
-    logger.go:130: 2026-04-07T08:44:08.154-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "175.91088ms"}
-    logger.go:130: 2026-04-07T08:44:08.154-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "180.61604ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "124.4012ms"}
-    logger.go:130: 2026-04-07T08:44:08.154-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "184.37564ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "162.4836ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "196.77584ms"}
-    logger.go:130: 2026-04-07T08:44:08.153-1200	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30187, "size": "30 kB", "took": "218.44812ms"}
---- PASS: TestConcurrentApplyAndSnapshotV3 (0.23s)
+    logger.go:130: 2025-03-06T04:28:32.245+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.245+1400	INFO	updating snapshot-count to default	{"given-snapshot-count": 0, "updated-snapshot-count": 100000}
+    logger.go:130: 2025-03-06T04:28:32.246+1400	INFO	starting etcd server	{"local-member-id": "0", "local-server-version": "3.5.16", "cluster-version": "to_be_decided"}
+    logger.go:130: 2025-03-06T04:28:32.246+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.246+1400	DEBUG	Applying entry	{"index": 1, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.246+1400	DEBUG	apply entry normal	{"consistent-index": 0, "entry-index": 1, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.246+1400	DEBUG	applyEntryNormal	{"V2request": "ID:1 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.246+1400	WARN	apply request took too long	{"took": "15.361µs", "expected-duration": "0s", "prefix": "", "request": "ID:1 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.246+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.246+1400	DEBUG	Applying entry	{"index": 2, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.246+1400	DEBUG	apply entry normal	{"consistent-index": 1, "entry-index": 2, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.246+1400	DEBUG	applyEntryNormal	{"V2request": "ID:2 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.246+1400	WARN	apply request took too long	{"took": "4.52µs", "expected-duration": "0s", "prefix": "", "request": "ID:2 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.247+1400	INFO	sent database snapshot to writer	{"bytes": 20480, "size": "20 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000003.snap.db","bytes":20480,"size":"20 kB"}
+    logger.go:130: 2025-03-06T04:28:32.247+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 26091, "size": "26 kB"}
+    logger.go:130: 2025-03-06T04:28:32.247+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 3}
+    logger.go:130: 2025-03-06T04:28:32.247+1400	INFO	applying snapshot	{"current-snapshot-index": 0, "current-applied-index": 2, "incoming-leader-snapshot-index": 3, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.247+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "148.121µs"}
+    logger.go:130: 2025-03-06T04:28:32.247+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.247+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.247+1400	INFO	restored mvcc store	{"consistent-index": 0}
+    logger.go:130: 2025-03-06T04:28:32.247+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.247+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.247+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.248+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.248+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.248+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.248+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.248+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.248+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.248+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.248+1400	INFO	applied snapshot	{"current-snapshot-index": 3, "current-applied-index": 3, "incoming-leader-snapshot-index": 3, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.248+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.248+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.248+1400	DEBUG	Applying entry	{"index": 4, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.248+1400	DEBUG	apply entry normal	{"consistent-index": 0, "entry-index": 4, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.248+1400	DEBUG	applyEntryNormal	{"V2request": "ID:4 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.248+1400	WARN	apply request took too long	{"took": "7.601µs", "expected-duration": "0s", "prefix": "", "request": "ID:4 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.248+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.248+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.248+1400	DEBUG	Applying entry	{"index": 5, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.248+1400	DEBUG	apply entry normal	{"consistent-index": 4, "entry-index": 5, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.248+1400	DEBUG	applyEntryNormal	{"V2request": "ID:5 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.248+1400	WARN	apply request took too long	{"took": "4.44µs", "expected-duration": "0s", "prefix": "", "request": "ID:5 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.249+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000006.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.249+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30187, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.249+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 6}
+    logger.go:130: 2025-03-06T04:28:32.249+1400	INFO	applying snapshot	{"current-snapshot-index": 3, "current-applied-index": 5, "incoming-leader-snapshot-index": 6, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.250+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "380.842µs"}
+    logger.go:130: 2025-03-06T04:28:32.250+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.252+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.252+1400	INFO	restored mvcc store	{"consistent-index": 5}
+    logger.go:130: 2025-03-06T04:28:32.252+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.252+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.252+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.252+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.252+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.252+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.252+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.252+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.252+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.252+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.252+1400	INFO	applied snapshot	{"current-snapshot-index": 6, "current-applied-index": 6, "incoming-leader-snapshot-index": 6, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.252+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.252+1400	DEBUG	Applying entry	{"index": 7, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.252+1400	DEBUG	apply entry normal	{"consistent-index": 5, "entry-index": 7, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.252+1400	DEBUG	applyEntryNormal	{"V2request": "ID:7 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.253+1400	WARN	apply request took too long	{"took": "7.76µs", "expected-duration": "0s", "prefix": "", "request": "ID:7 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.253+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.253+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.253+1400	DEBUG	Applying entry	{"index": 8, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.253+1400	DEBUG	apply entry normal	{"consistent-index": 7, "entry-index": 8, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.253+1400	DEBUG	applyEntryNormal	{"V2request": "ID:8 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.253+1400	WARN	apply request took too long	{"took": "5.56µs", "expected-duration": "0s", "prefix": "", "request": "ID:8 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.253+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000009.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.253+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30187, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.254+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.254+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 9}
+    logger.go:130: 2025-03-06T04:28:32.254+1400	INFO	applying snapshot	{"current-snapshot-index": 6, "current-applied-index": 8, "incoming-leader-snapshot-index": 9, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.254+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "152.601µs"}
+    logger.go:130: 2025-03-06T04:28:32.254+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.258+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.258+1400	INFO	restored mvcc store	{"consistent-index": 8}
+    logger.go:130: 2025-03-06T04:28:32.258+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.258+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.258+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.258+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.259+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.259+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.259+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.259+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.259+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.259+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.259+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.259+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.259+1400	INFO	applied snapshot	{"current-snapshot-index": 9, "current-applied-index": 9, "incoming-leader-snapshot-index": 9, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.259+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.259+1400	DEBUG	Applying entry	{"index": 10, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.259+1400	DEBUG	apply entry normal	{"consistent-index": 8, "entry-index": 10, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.259+1400	DEBUG	applyEntryNormal	{"V2request": "ID:10 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.259+1400	WARN	apply request took too long	{"took": "11.2µs", "expected-duration": "0s", "prefix": "", "request": "ID:10 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.259+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.259+1400	DEBUG	Applying entry	{"index": 11, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.259+1400	DEBUG	apply entry normal	{"consistent-index": 10, "entry-index": 11, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.259+1400	DEBUG	applyEntryNormal	{"V2request": "ID:11 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.259+1400	WARN	apply request took too long	{"took": "5.76µs", "expected-duration": "0s", "prefix": "", "request": "ID:11 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.260+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/000000000000000c.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.260+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30188, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.260+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 12}
+    logger.go:130: 2025-03-06T04:28:32.260+1400	INFO	applying snapshot	{"current-snapshot-index": 9, "current-applied-index": 11, "incoming-leader-snapshot-index": 12, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.260+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "157.001µs"}
+    logger.go:130: 2025-03-06T04:28:32.260+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.263+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.263+1400	INFO	restored mvcc store	{"consistent-index": 11}
+    logger.go:130: 2025-03-06T04:28:32.263+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.263+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.263+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.263+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.264+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.264+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.264+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.264+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.264+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.265+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.265+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.265+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.265+1400	INFO	applied snapshot	{"current-snapshot-index": 12, "current-applied-index": 12, "incoming-leader-snapshot-index": 12, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.265+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.265+1400	DEBUG	Applying entry	{"index": 13, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.265+1400	DEBUG	apply entry normal	{"consistent-index": 11, "entry-index": 13, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.265+1400	DEBUG	applyEntryNormal	{"V2request": "ID:13 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.265+1400	WARN	apply request took too long	{"took": "9.36µs", "expected-duration": "0s", "prefix": "", "request": "ID:13 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.265+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.265+1400	DEBUG	Applying entry	{"index": 14, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.265+1400	DEBUG	apply entry normal	{"consistent-index": 13, "entry-index": 14, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.265+1400	DEBUG	applyEntryNormal	{"V2request": "ID:14 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.265+1400	WARN	apply request took too long	{"took": "4.28µs", "expected-duration": "0s", "prefix": "", "request": "ID:14 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.265+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/000000000000000f.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.266+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30188, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.266+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 15}
+    logger.go:130: 2025-03-06T04:28:32.266+1400	INFO	applying snapshot	{"current-snapshot-index": 12, "current-applied-index": 14, "incoming-leader-snapshot-index": 15, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.266+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "157.801µs"}
+    logger.go:130: 2025-03-06T04:28:32.266+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.266+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.266+1400	INFO	restored mvcc store	{"consistent-index": 14}
+    logger.go:130: 2025-03-06T04:28:32.266+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.266+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.267+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.267+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.267+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.269+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.269+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.269+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.269+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.269+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.269+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.269+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.269+1400	INFO	applied snapshot	{"current-snapshot-index": 15, "current-applied-index": 15, "incoming-leader-snapshot-index": 15, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.269+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.270+1400	DEBUG	Applying entry	{"index": 16, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.270+1400	DEBUG	apply entry normal	{"consistent-index": 14, "entry-index": 16, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.270+1400	DEBUG	applyEntryNormal	{"V2request": "ID:16 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.270+1400	WARN	apply request took too long	{"took": "30.32µs", "expected-duration": "0s", "prefix": "", "request": "ID:16 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.270+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.270+1400	DEBUG	Applying entry	{"index": 17, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.270+1400	DEBUG	apply entry normal	{"consistent-index": 16, "entry-index": 17, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.270+1400	DEBUG	applyEntryNormal	{"V2request": "ID:17 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.270+1400	WARN	apply request took too long	{"took": "6.12µs", "expected-duration": "0s", "prefix": "", "request": "ID:17 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.271+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000012.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.271+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.271+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 18}
+    logger.go:130: 2025-03-06T04:28:32.271+1400	INFO	applying snapshot	{"current-snapshot-index": 15, "current-applied-index": 17, "incoming-leader-snapshot-index": 18, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.272+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "233.282µs"}
+    logger.go:130: 2025-03-06T04:28:32.272+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.275+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.276+1400	INFO	restored mvcc store	{"consistent-index": 17}
+    logger.go:130: 2025-03-06T04:28:32.276+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.276+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.276+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.276+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.276+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.276+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.276+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.276+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.276+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.276+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.276+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.276+1400	INFO	applied snapshot	{"current-snapshot-index": 18, "current-applied-index": 18, "incoming-leader-snapshot-index": 18, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.277+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.277+1400	DEBUG	Applying entry	{"index": 19, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.277+1400	DEBUG	apply entry normal	{"consistent-index": 17, "entry-index": 19, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.277+1400	DEBUG	applyEntryNormal	{"V2request": "ID:19 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.277+1400	WARN	apply request took too long	{"took": "10.08µs", "expected-duration": "0s", "prefix": "", "request": "ID:19 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.277+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.277+1400	DEBUG	Applying entry	{"index": 20, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.277+1400	DEBUG	apply entry normal	{"consistent-index": 19, "entry-index": 20, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.277+1400	DEBUG	applyEntryNormal	{"V2request": "ID:20 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.277+1400	WARN	apply request took too long	{"took": "8.04µs", "expected-duration": "0s", "prefix": "", "request": "ID:20 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.277+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.277+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000015.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.277+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.278+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 21}
+    logger.go:130: 2025-03-06T04:28:32.278+1400	INFO	applying snapshot	{"current-snapshot-index": 18, "current-applied-index": 20, "incoming-leader-snapshot-index": 21, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.278+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "198.881µs"}
+    logger.go:130: 2025-03-06T04:28:32.278+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.279+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.280+1400	INFO	restored mvcc store	{"consistent-index": 20}
+    logger.go:130: 2025-03-06T04:28:32.280+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.280+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.280+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.280+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.280+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.280+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.280+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.280+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.280+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.280+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.280+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.280+1400	INFO	applied snapshot	{"current-snapshot-index": 21, "current-applied-index": 21, "incoming-leader-snapshot-index": 21, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.280+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.280+1400	DEBUG	Applying entry	{"index": 22, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.280+1400	DEBUG	apply entry normal	{"consistent-index": 20, "entry-index": 22, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.280+1400	DEBUG	applyEntryNormal	{"V2request": "ID:22 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.280+1400	WARN	apply request took too long	{"took": "5.68µs", "expected-duration": "0s", "prefix": "", "request": "ID:22 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.281+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.281+1400	DEBUG	Applying entry	{"index": 23, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.281+1400	DEBUG	apply entry normal	{"consistent-index": 22, "entry-index": 23, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.281+1400	DEBUG	applyEntryNormal	{"V2request": "ID:23 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.281+1400	WARN	apply request took too long	{"took": "6.12µs", "expected-duration": "0s", "prefix": "", "request": "ID:23 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.281+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.281+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000018.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.281+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.281+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 24}
+    logger.go:130: 2025-03-06T04:28:32.282+1400	INFO	applying snapshot	{"current-snapshot-index": 21, "current-applied-index": 23, "incoming-leader-snapshot-index": 24, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.282+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "118.2µs"}
+    logger.go:130: 2025-03-06T04:28:32.282+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.283+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.283+1400	INFO	restored mvcc store	{"consistent-index": 23}
+    logger.go:130: 2025-03-06T04:28:32.283+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.283+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.283+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.283+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.283+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.283+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.283+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.283+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.283+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.283+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.283+1400	INFO	applied snapshot	{"current-snapshot-index": 24, "current-applied-index": 24, "incoming-leader-snapshot-index": 24, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.283+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.283+1400	DEBUG	Applying entry	{"index": 25, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.283+1400	DEBUG	apply entry normal	{"consistent-index": 23, "entry-index": 25, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.283+1400	DEBUG	applyEntryNormal	{"V2request": "ID:25 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.283+1400	WARN	apply request took too long	{"took": "5.04µs", "expected-duration": "0s", "prefix": "", "request": "ID:25 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.283+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.283+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.283+1400	DEBUG	Applying entry	{"index": 26, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.283+1400	DEBUG	apply entry normal	{"consistent-index": 25, "entry-index": 26, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.283+1400	DEBUG	applyEntryNormal	{"V2request": "ID:26 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.283+1400	WARN	apply request took too long	{"took": "2.08µs", "expected-duration": "0s", "prefix": "", "request": "ID:26 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.285+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.285+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/000000000000001b.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.286+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.286+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 27}
+    logger.go:130: 2025-03-06T04:28:32.286+1400	INFO	applying snapshot	{"current-snapshot-index": 24, "current-applied-index": 26, "incoming-leader-snapshot-index": 27, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.286+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "92.96µs"}
+    logger.go:130: 2025-03-06T04:28:32.286+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.287+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.287+1400	INFO	restored mvcc store	{"consistent-index": 26}
+    logger.go:130: 2025-03-06T04:28:32.287+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.288+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.288+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.288+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.288+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.288+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.288+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.288+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.288+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.288+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.288+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.288+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.288+1400	INFO	applied snapshot	{"current-snapshot-index": 27, "current-applied-index": 27, "incoming-leader-snapshot-index": 27, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.288+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.288+1400	DEBUG	Applying entry	{"index": 28, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.288+1400	DEBUG	apply entry normal	{"consistent-index": 26, "entry-index": 28, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.289+1400	DEBUG	applyEntryNormal	{"V2request": "ID:28 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.289+1400	WARN	apply request took too long	{"took": "12.2µs", "expected-duration": "0s", "prefix": "", "request": "ID:28 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.289+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.289+1400	DEBUG	Applying entry	{"index": 29, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.289+1400	DEBUG	apply entry normal	{"consistent-index": 28, "entry-index": 29, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.289+1400	DEBUG	applyEntryNormal	{"V2request": "ID:29 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.289+1400	WARN	apply request took too long	{"took": "5.44µs", "expected-duration": "0s", "prefix": "", "request": "ID:29 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.290+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/000000000000001e.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.290+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.290+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 30}
+    logger.go:130: 2025-03-06T04:28:32.290+1400	INFO	applying snapshot	{"current-snapshot-index": 27, "current-applied-index": 29, "incoming-leader-snapshot-index": 30, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.290+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "92.001µs"}
+    logger.go:130: 2025-03-06T04:28:32.290+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.291+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.291+1400	INFO	restored mvcc store	{"consistent-index": 29}
+    logger.go:130: 2025-03-06T04:28:32.291+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.291+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.291+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.291+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.291+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.291+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.291+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.291+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.291+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.291+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.291+1400	INFO	applied snapshot	{"current-snapshot-index": 30, "current-applied-index": 30, "incoming-leader-snapshot-index": 30, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.291+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.291+1400	DEBUG	Applying entry	{"index": 31, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.291+1400	DEBUG	apply entry normal	{"consistent-index": 29, "entry-index": 31, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.291+1400	DEBUG	applyEntryNormal	{"V2request": "ID:31 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.291+1400	WARN	apply request took too long	{"took": "5µs", "expected-duration": "0s", "prefix": "", "request": "ID:31 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.291+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.291+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.291+1400	DEBUG	Applying entry	{"index": 32, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.291+1400	DEBUG	apply entry normal	{"consistent-index": 31, "entry-index": 32, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.291+1400	DEBUG	applyEntryNormal	{"V2request": "ID:32 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.291+1400	WARN	apply request took too long	{"took": "7.44µs", "expected-duration": "0s", "prefix": "", "request": "ID:32 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.291+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.293+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000021.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.293+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.293+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 33}
+    logger.go:130: 2025-03-06T04:28:32.293+1400	INFO	applying snapshot	{"current-snapshot-index": 30, "current-applied-index": 32, "incoming-leader-snapshot-index": 33, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.293+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "92.24µs"}
+    logger.go:130: 2025-03-06T04:28:32.293+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.295+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.295+1400	INFO	restored mvcc store	{"consistent-index": 32}
+    logger.go:130: 2025-03-06T04:28:32.295+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.295+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.295+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.295+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.295+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.295+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.295+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.295+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.295+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.295+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.295+1400	INFO	applied snapshot	{"current-snapshot-index": 33, "current-applied-index": 33, "incoming-leader-snapshot-index": 33, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.295+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.295+1400	DEBUG	Applying entry	{"index": 34, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.295+1400	DEBUG	apply entry normal	{"consistent-index": 32, "entry-index": 34, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.295+1400	DEBUG	applyEntryNormal	{"V2request": "ID:34 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.295+1400	WARN	apply request took too long	{"took": "4.48µs", "expected-duration": "0s", "prefix": "", "request": "ID:34 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.295+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.295+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.295+1400	DEBUG	Applying entry	{"index": 35, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.295+1400	DEBUG	apply entry normal	{"consistent-index": 34, "entry-index": 35, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.295+1400	DEBUG	applyEntryNormal	{"V2request": "ID:35 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.295+1400	WARN	apply request took too long	{"took": "6.08µs", "expected-duration": "0s", "prefix": "", "request": "ID:35 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.296+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000024.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.296+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.296+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 36}
+    logger.go:130: 2025-03-06T04:28:32.296+1400	INFO	applying snapshot	{"current-snapshot-index": 33, "current-applied-index": 35, "incoming-leader-snapshot-index": 36, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.296+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.296+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "81.68µs"}
+    logger.go:130: 2025-03-06T04:28:32.296+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.297+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.297+1400	INFO	restored mvcc store	{"consistent-index": 35}
+    logger.go:130: 2025-03-06T04:28:32.298+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.298+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.298+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.298+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.298+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.298+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.298+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.298+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.298+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.298+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.298+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.298+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.298+1400	INFO	applied snapshot	{"current-snapshot-index": 36, "current-applied-index": 36, "incoming-leader-snapshot-index": 36, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.298+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.299+1400	DEBUG	Applying entry	{"index": 37, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.299+1400	DEBUG	apply entry normal	{"consistent-index": 35, "entry-index": 37, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.299+1400	DEBUG	applyEntryNormal	{"V2request": "ID:37 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.299+1400	WARN	apply request took too long	{"took": "10.04µs", "expected-duration": "0s", "prefix": "", "request": "ID:37 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.299+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.299+1400	DEBUG	Applying entry	{"index": 38, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.299+1400	DEBUG	apply entry normal	{"consistent-index": 37, "entry-index": 38, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.299+1400	DEBUG	applyEntryNormal	{"V2request": "ID:38 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.299+1400	WARN	apply request took too long	{"took": "4.32µs", "expected-duration": "0s", "prefix": "", "request": "ID:38 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.299+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000027.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.299+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.299+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 39}
+    logger.go:130: 2025-03-06T04:28:32.299+1400	INFO	applying snapshot	{"current-snapshot-index": 36, "current-applied-index": 38, "incoming-leader-snapshot-index": 39, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.300+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "88.44µs"}
+    logger.go:130: 2025-03-06T04:28:32.300+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.301+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.301+1400	INFO	restored mvcc store	{"consistent-index": 38}
+    logger.go:130: 2025-03-06T04:28:32.301+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.301+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.301+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.301+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.301+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.302+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.302+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.302+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.302+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.302+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.302+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.302+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.302+1400	INFO	applied snapshot	{"current-snapshot-index": 39, "current-applied-index": 39, "incoming-leader-snapshot-index": 39, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.302+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.302+1400	DEBUG	Applying entry	{"index": 40, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.302+1400	DEBUG	apply entry normal	{"consistent-index": 38, "entry-index": 40, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.302+1400	DEBUG	applyEntryNormal	{"V2request": "ID:40 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.302+1400	WARN	apply request took too long	{"took": "16.96µs", "expected-duration": "0s", "prefix": "", "request": "ID:40 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.302+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.302+1400	DEBUG	Applying entry	{"index": 41, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.302+1400	DEBUG	apply entry normal	{"consistent-index": 40, "entry-index": 41, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.302+1400	DEBUG	applyEntryNormal	{"V2request": "ID:41 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.302+1400	WARN	apply request took too long	{"took": "6µs", "expected-duration": "0s", "prefix": "", "request": "ID:41 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.303+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/000000000000002a.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.303+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.303+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 42}
+    logger.go:130: 2025-03-06T04:28:32.303+1400	INFO	applying snapshot	{"current-snapshot-index": 39, "current-applied-index": 41, "incoming-leader-snapshot-index": 42, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.303+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "99.88µs"}
+    logger.go:130: 2025-03-06T04:28:32.303+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.304+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.304+1400	INFO	restored mvcc store	{"consistent-index": 41}
+    logger.go:130: 2025-03-06T04:28:32.304+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.304+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.304+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.304+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.304+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.304+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.304+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.304+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.304+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.304+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.304+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.304+1400	INFO	applied snapshot	{"current-snapshot-index": 42, "current-applied-index": 42, "incoming-leader-snapshot-index": 42, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.304+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.304+1400	DEBUG	Applying entry	{"index": 43, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.304+1400	DEBUG	apply entry normal	{"consistent-index": 41, "entry-index": 43, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.304+1400	DEBUG	applyEntryNormal	{"V2request": "ID:43 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.304+1400	WARN	apply request took too long	{"took": "5µs", "expected-duration": "0s", "prefix": "", "request": "ID:43 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.304+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.304+1400	DEBUG	Applying entry	{"index": 44, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.304+1400	DEBUG	apply entry normal	{"consistent-index": 43, "entry-index": 44, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.304+1400	DEBUG	applyEntryNormal	{"V2request": "ID:44 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.304+1400	WARN	apply request took too long	{"took": "1.84µs", "expected-duration": "0s", "prefix": "", "request": "ID:44 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.305+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.305+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/000000000000002d.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.305+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.305+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 45}
+    logger.go:130: 2025-03-06T04:28:32.305+1400	INFO	applying snapshot	{"current-snapshot-index": 42, "current-applied-index": 44, "incoming-leader-snapshot-index": 45, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.305+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "87.801µs"}
+    logger.go:130: 2025-03-06T04:28:32.305+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.306+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.306+1400	INFO	restored mvcc store	{"consistent-index": 44}
+    logger.go:130: 2025-03-06T04:28:32.306+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.307+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.307+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.307+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.307+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.307+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.307+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.307+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.307+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.307+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.307+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.307+1400	INFO	applied snapshot	{"current-snapshot-index": 45, "current-applied-index": 45, "incoming-leader-snapshot-index": 45, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.307+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.307+1400	DEBUG	Applying entry	{"index": 46, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.307+1400	DEBUG	apply entry normal	{"consistent-index": 44, "entry-index": 46, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.307+1400	DEBUG	applyEntryNormal	{"V2request": "ID:46 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.307+1400	WARN	apply request took too long	{"took": "4.44µs", "expected-duration": "0s", "prefix": "", "request": "ID:46 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.307+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.307+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.307+1400	DEBUG	Applying entry	{"index": 47, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.307+1400	DEBUG	apply entry normal	{"consistent-index": 46, "entry-index": 47, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.307+1400	DEBUG	applyEntryNormal	{"V2request": "ID:47 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.307+1400	WARN	apply request took too long	{"took": "12.6µs", "expected-duration": "0s", "prefix": "", "request": "ID:47 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.308+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000030.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.308+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.308+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 48}
+    logger.go:130: 2025-03-06T04:28:32.308+1400	INFO	applying snapshot	{"current-snapshot-index": 45, "current-applied-index": 47, "incoming-leader-snapshot-index": 48, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.308+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "106.001µs"}
+    logger.go:130: 2025-03-06T04:28:32.308+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.309+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.309+1400	INFO	restored mvcc store	{"consistent-index": 47}
+    logger.go:130: 2025-03-06T04:28:32.309+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.309+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.309+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.309+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.309+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.309+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.309+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.309+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.310+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.310+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.310+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.310+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.310+1400	INFO	applied snapshot	{"current-snapshot-index": 48, "current-applied-index": 48, "incoming-leader-snapshot-index": 48, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.310+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.310+1400	DEBUG	Applying entry	{"index": 49, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.310+1400	DEBUG	apply entry normal	{"consistent-index": 47, "entry-index": 49, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.310+1400	DEBUG	applyEntryNormal	{"V2request": "ID:49 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.310+1400	WARN	apply request took too long	{"took": "7.84µs", "expected-duration": "0s", "prefix": "", "request": "ID:49 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.310+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.310+1400	DEBUG	Applying entry	{"index": 50, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.310+1400	DEBUG	apply entry normal	{"consistent-index": 49, "entry-index": 50, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.310+1400	DEBUG	applyEntryNormal	{"V2request": "ID:50 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.310+1400	WARN	apply request took too long	{"took": "9.76µs", "expected-duration": "0s", "prefix": "", "request": "ID:50 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.311+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000033.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.311+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.311+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 51}
+    logger.go:130: 2025-03-06T04:28:32.311+1400	INFO	applying snapshot	{"current-snapshot-index": 48, "current-applied-index": 50, "incoming-leader-snapshot-index": 51, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.311+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "87.001µs"}
+    logger.go:130: 2025-03-06T04:28:32.311+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.312+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.312+1400	INFO	restored mvcc store	{"consistent-index": 50}
+    logger.go:130: 2025-03-06T04:28:32.312+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.312+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.312+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.312+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.312+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.312+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.312+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.312+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.312+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.312+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.312+1400	INFO	applied snapshot	{"current-snapshot-index": 51, "current-applied-index": 51, "incoming-leader-snapshot-index": 51, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.312+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.312+1400	DEBUG	Applying entry	{"index": 52, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.312+1400	DEBUG	apply entry normal	{"consistent-index": 50, "entry-index": 52, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.312+1400	DEBUG	applyEntryNormal	{"V2request": "ID:52 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.312+1400	WARN	apply request took too long	{"took": "4.68µs", "expected-duration": "0s", "prefix": "", "request": "ID:52 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.312+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.313+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.313+1400	DEBUG	Applying entry	{"index": 53, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.313+1400	DEBUG	apply entry normal	{"consistent-index": 52, "entry-index": 53, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.313+1400	DEBUG	applyEntryNormal	{"V2request": "ID:53 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.313+1400	WARN	apply request took too long	{"took": "3.16µs", "expected-duration": "0s", "prefix": "", "request": "ID:53 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.313+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.313+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000036.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.313+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.313+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 54}
+    logger.go:130: 2025-03-06T04:28:32.313+1400	INFO	applying snapshot	{"current-snapshot-index": 51, "current-applied-index": 53, "incoming-leader-snapshot-index": 54, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.313+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "87.241µs"}
+    logger.go:130: 2025-03-06T04:28:32.313+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.315+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.315+1400	INFO	restored mvcc store	{"consistent-index": 53}
+    logger.go:130: 2025-03-06T04:28:32.315+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.315+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.315+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.315+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.315+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.315+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.315+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.315+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.315+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.315+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.315+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.315+1400	INFO	applied snapshot	{"current-snapshot-index": 54, "current-applied-index": 54, "incoming-leader-snapshot-index": 54, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.315+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.315+1400	DEBUG	Applying entry	{"index": 55, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.315+1400	DEBUG	apply entry normal	{"consistent-index": 53, "entry-index": 55, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.315+1400	DEBUG	applyEntryNormal	{"V2request": "ID:55 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.315+1400	WARN	apply request took too long	{"took": "5.48µs", "expected-duration": "0s", "prefix": "", "request": "ID:55 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.316+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.316+1400	DEBUG	Applying entry	{"index": 56, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.316+1400	DEBUG	apply entry normal	{"consistent-index": 55, "entry-index": 56, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.316+1400	DEBUG	applyEntryNormal	{"V2request": "ID:56 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.316+1400	WARN	apply request took too long	{"took": "2.08µs", "expected-duration": "0s", "prefix": "", "request": "ID:56 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.316+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.316+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000039.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.316+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.316+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 57}
+    logger.go:130: 2025-03-06T04:28:32.316+1400	INFO	applying snapshot	{"current-snapshot-index": 54, "current-applied-index": 56, "incoming-leader-snapshot-index": 57, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.317+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "153.961µs"}
+    logger.go:130: 2025-03-06T04:28:32.317+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.318+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.318+1400	INFO	restored mvcc store	{"consistent-index": 56}
+    logger.go:130: 2025-03-06T04:28:32.318+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.318+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.318+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.318+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.319+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.319+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.319+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.319+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.319+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.319+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.319+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.319+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.319+1400	INFO	applied snapshot	{"current-snapshot-index": 57, "current-applied-index": 57, "incoming-leader-snapshot-index": 57, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.319+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.319+1400	DEBUG	Applying entry	{"index": 58, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.319+1400	DEBUG	apply entry normal	{"consistent-index": 56, "entry-index": 58, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.319+1400	DEBUG	applyEntryNormal	{"V2request": "ID:58 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.319+1400	WARN	apply request took too long	{"took": "8µs", "expected-duration": "0s", "prefix": "", "request": "ID:58 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.319+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.319+1400	DEBUG	Applying entry	{"index": 59, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.319+1400	DEBUG	apply entry normal	{"consistent-index": 58, "entry-index": 59, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.320+1400	DEBUG	applyEntryNormal	{"V2request": "ID:59 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.320+1400	WARN	apply request took too long	{"took": "6.28µs", "expected-duration": "0s", "prefix": "", "request": "ID:59 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.320+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/000000000000003c.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.320+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.320+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 60}
+    logger.go:130: 2025-03-06T04:28:32.320+1400	INFO	applying snapshot	{"current-snapshot-index": 57, "current-applied-index": 59, "incoming-leader-snapshot-index": 60, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.320+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "101.08µs"}
+    logger.go:130: 2025-03-06T04:28:32.320+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.321+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.321+1400	INFO	restored mvcc store	{"consistent-index": 59}
+    logger.go:130: 2025-03-06T04:28:32.321+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.321+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.321+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.321+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.321+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.321+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.321+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.321+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.321+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.321+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.321+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.321+1400	INFO	applied snapshot	{"current-snapshot-index": 60, "current-applied-index": 60, "incoming-leader-snapshot-index": 60, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.321+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.321+1400	DEBUG	Applying entry	{"index": 61, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.321+1400	DEBUG	apply entry normal	{"consistent-index": 59, "entry-index": 61, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.321+1400	DEBUG	applyEntryNormal	{"V2request": "ID:61 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.321+1400	WARN	apply request took too long	{"took": "4.28µs", "expected-duration": "0s", "prefix": "", "request": "ID:61 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.321+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.321+1400	DEBUG	Applying entry	{"index": 62, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.321+1400	DEBUG	apply entry normal	{"consistent-index": 61, "entry-index": 62, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.321+1400	DEBUG	applyEntryNormal	{"V2request": "ID:62 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.321+1400	WARN	apply request took too long	{"took": "2.12µs", "expected-duration": "0s", "prefix": "", "request": "ID:62 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.321+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.322+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/000000000000003f.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.322+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.322+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 63}
+    logger.go:130: 2025-03-06T04:28:32.322+1400	INFO	applying snapshot	{"current-snapshot-index": 60, "current-applied-index": 62, "incoming-leader-snapshot-index": 63, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.322+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "138.761µs"}
+    logger.go:130: 2025-03-06T04:28:32.322+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.324+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.325+1400	INFO	restored mvcc store	{"consistent-index": 62}
+    logger.go:130: 2025-03-06T04:28:32.325+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.325+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.325+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.325+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.325+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.325+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.325+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.325+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.325+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.325+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.325+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.325+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.325+1400	INFO	applied snapshot	{"current-snapshot-index": 63, "current-applied-index": 63, "incoming-leader-snapshot-index": 63, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.325+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.325+1400	DEBUG	Applying entry	{"index": 64, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.325+1400	DEBUG	apply entry normal	{"consistent-index": 62, "entry-index": 64, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.325+1400	DEBUG	applyEntryNormal	{"V2request": "ID:64 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.325+1400	WARN	apply request took too long	{"took": "6.96µs", "expected-duration": "0s", "prefix": "", "request": "ID:64 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.325+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.325+1400	DEBUG	Applying entry	{"index": 65, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.325+1400	DEBUG	apply entry normal	{"consistent-index": 64, "entry-index": 65, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.325+1400	DEBUG	applyEntryNormal	{"V2request": "ID:65 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.326+1400	WARN	apply request took too long	{"took": "5.04µs", "expected-duration": "0s", "prefix": "", "request": "ID:65 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.326+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000042.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.326+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.326+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 66}
+    logger.go:130: 2025-03-06T04:28:32.326+1400	INFO	applying snapshot	{"current-snapshot-index": 63, "current-applied-index": 65, "incoming-leader-snapshot-index": 66, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.326+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "90.361µs"}
+    logger.go:130: 2025-03-06T04:28:32.326+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.327+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.327+1400	INFO	restored mvcc store	{"consistent-index": 65}
+    logger.go:130: 2025-03-06T04:28:32.327+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.327+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.327+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.327+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.327+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.327+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.327+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.327+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.327+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.327+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.327+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.327+1400	INFO	applied snapshot	{"current-snapshot-index": 66, "current-applied-index": 66, "incoming-leader-snapshot-index": 66, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.327+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.327+1400	DEBUG	Applying entry	{"index": 67, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.327+1400	DEBUG	apply entry normal	{"consistent-index": 65, "entry-index": 67, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.327+1400	DEBUG	applyEntryNormal	{"V2request": "ID:67 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.327+1400	WARN	apply request took too long	{"took": "10.16µs", "expected-duration": "0s", "prefix": "", "request": "ID:67 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.327+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.327+1400	DEBUG	Applying entry	{"index": 68, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.327+1400	DEBUG	apply entry normal	{"consistent-index": 67, "entry-index": 68, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.327+1400	DEBUG	applyEntryNormal	{"V2request": "ID:68 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.327+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.327+1400	WARN	apply request took too long	{"took": "3.52µs", "expected-duration": "0s", "prefix": "", "request": "ID:68 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.329+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000045.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.330+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.330+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 69}
+    logger.go:130: 2025-03-06T04:28:32.330+1400	INFO	applying snapshot	{"current-snapshot-index": 66, "current-applied-index": 68, "incoming-leader-snapshot-index": 69, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.330+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "154.721µs"}
+    logger.go:130: 2025-03-06T04:28:32.330+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.332+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.332+1400	INFO	restored mvcc store	{"consistent-index": 68}
+    logger.go:130: 2025-03-06T04:28:32.332+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.332+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.332+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.332+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.332+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.333+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.333+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.333+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.333+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.333+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.333+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.333+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.333+1400	INFO	applied snapshot	{"current-snapshot-index": 69, "current-applied-index": 69, "incoming-leader-snapshot-index": 69, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.333+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.333+1400	DEBUG	Applying entry	{"index": 70, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.333+1400	DEBUG	apply entry normal	{"consistent-index": 68, "entry-index": 70, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.333+1400	DEBUG	applyEntryNormal	{"V2request": "ID:70 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.333+1400	WARN	apply request took too long	{"took": "23.12µs", "expected-duration": "0s", "prefix": "", "request": "ID:70 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.333+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.333+1400	DEBUG	Applying entry	{"index": 71, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.334+1400	DEBUG	apply entry normal	{"consistent-index": 70, "entry-index": 71, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.334+1400	DEBUG	applyEntryNormal	{"V2request": "ID:71 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.334+1400	WARN	apply request took too long	{"took": "14.92µs", "expected-duration": "0s", "prefix": "", "request": "ID:71 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.335+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000048.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.335+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.335+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 72}
+    logger.go:130: 2025-03-06T04:28:32.335+1400	INFO	applying snapshot	{"current-snapshot-index": 69, "current-applied-index": 71, "incoming-leader-snapshot-index": 72, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.335+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "84.601µs"}
+    logger.go:130: 2025-03-06T04:28:32.335+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.336+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.336+1400	INFO	restored mvcc store	{"consistent-index": 71}
+    logger.go:130: 2025-03-06T04:28:32.336+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.336+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.336+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.336+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.336+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.336+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.336+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.336+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.336+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.336+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.336+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.336+1400	INFO	applied snapshot	{"current-snapshot-index": 72, "current-applied-index": 72, "incoming-leader-snapshot-index": 72, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.336+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.336+1400	DEBUG	Applying entry	{"index": 73, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.336+1400	DEBUG	apply entry normal	{"consistent-index": 71, "entry-index": 73, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.336+1400	DEBUG	applyEntryNormal	{"V2request": "ID:73 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.336+1400	WARN	apply request took too long	{"took": "5.84µs", "expected-duration": "0s", "prefix": "", "request": "ID:73 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.337+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.337+1400	DEBUG	Applying entry	{"index": 74, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.337+1400	DEBUG	apply entry normal	{"consistent-index": 73, "entry-index": 74, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.337+1400	DEBUG	applyEntryNormal	{"V2request": "ID:74 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.337+1400	WARN	apply request took too long	{"took": "2.12µs", "expected-duration": "0s", "prefix": "", "request": "ID:74 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.337+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.337+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/000000000000004b.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.337+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.337+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 75}
+    logger.go:130: 2025-03-06T04:28:32.337+1400	INFO	applying snapshot	{"current-snapshot-index": 72, "current-applied-index": 74, "incoming-leader-snapshot-index": 75, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.337+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "94.601µs"}
+    logger.go:130: 2025-03-06T04:28:32.337+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.339+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.339+1400	INFO	restored mvcc store	{"consistent-index": 74}
+    logger.go:130: 2025-03-06T04:28:32.339+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.339+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.339+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.339+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.339+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.339+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.339+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.339+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.339+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.339+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.339+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.339+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.339+1400	INFO	applied snapshot	{"current-snapshot-index": 75, "current-applied-index": 75, "incoming-leader-snapshot-index": 75, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.339+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.339+1400	DEBUG	Applying entry	{"index": 76, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.339+1400	DEBUG	apply entry normal	{"consistent-index": 74, "entry-index": 76, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.340+1400	DEBUG	applyEntryNormal	{"V2request": "ID:76 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.340+1400	WARN	apply request took too long	{"took": "14.96µs", "expected-duration": "0s", "prefix": "", "request": "ID:76 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.340+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.340+1400	DEBUG	Applying entry	{"index": 77, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.340+1400	DEBUG	apply entry normal	{"consistent-index": 76, "entry-index": 77, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.340+1400	DEBUG	applyEntryNormal	{"V2request": "ID:77 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.340+1400	WARN	apply request took too long	{"took": "5.32µs", "expected-duration": "0s", "prefix": "", "request": "ID:77 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.340+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/000000000000004e.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.341+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.341+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 78}
+    logger.go:130: 2025-03-06T04:28:32.341+1400	INFO	applying snapshot	{"current-snapshot-index": 75, "current-applied-index": 77, "incoming-leader-snapshot-index": 78, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.341+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "179.961µs"}
+    logger.go:130: 2025-03-06T04:28:32.341+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.342+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.343+1400	INFO	restored mvcc store	{"consistent-index": 77}
+    logger.go:130: 2025-03-06T04:28:32.343+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.343+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.343+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.343+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.343+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.343+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.343+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.343+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.343+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.343+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.343+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.343+1400	INFO	applied snapshot	{"current-snapshot-index": 78, "current-applied-index": 78, "incoming-leader-snapshot-index": 78, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.343+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.343+1400	DEBUG	Applying entry	{"index": 79, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.343+1400	DEBUG	apply entry normal	{"consistent-index": 77, "entry-index": 79, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.343+1400	DEBUG	applyEntryNormal	{"V2request": "ID:79 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.343+1400	WARN	apply request took too long	{"took": "4.36µs", "expected-duration": "0s", "prefix": "", "request": "ID:79 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.343+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.343+1400	DEBUG	Applying entry	{"index": 80, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.343+1400	DEBUG	apply entry normal	{"consistent-index": 79, "entry-index": 80, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.343+1400	DEBUG	applyEntryNormal	{"V2request": "ID:80 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.343+1400	WARN	apply request took too long	{"took": "1.96µs", "expected-duration": "0s", "prefix": "", "request": "ID:80 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.344+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.344+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000051.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.344+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.344+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 81}
+    logger.go:130: 2025-03-06T04:28:32.344+1400	INFO	applying snapshot	{"current-snapshot-index": 78, "current-applied-index": 80, "incoming-leader-snapshot-index": 81, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.344+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "164.841µs"}
+    logger.go:130: 2025-03-06T04:28:32.344+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.345+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.345+1400	INFO	restored mvcc store	{"consistent-index": 80}
+    logger.go:130: 2025-03-06T04:28:32.345+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.345+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.345+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.345+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.345+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.345+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.345+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.345+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.345+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.345+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.345+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.345+1400	INFO	applied snapshot	{"current-snapshot-index": 81, "current-applied-index": 81, "incoming-leader-snapshot-index": 81, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.345+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.345+1400	DEBUG	Applying entry	{"index": 82, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.345+1400	DEBUG	apply entry normal	{"consistent-index": 80, "entry-index": 82, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.345+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.345+1400	DEBUG	applyEntryNormal	{"V2request": "ID:82 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.345+1400	WARN	apply request took too long	{"took": "4.24µs", "expected-duration": "0s", "prefix": "", "request": "ID:82 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.345+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.345+1400	DEBUG	Applying entry	{"index": 83, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.345+1400	DEBUG	apply entry normal	{"consistent-index": 82, "entry-index": 83, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.345+1400	DEBUG	applyEntryNormal	{"V2request": "ID:83 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.345+1400	WARN	apply request took too long	{"took": "1.76µs", "expected-duration": "0s", "prefix": "", "request": "ID:83 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.346+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000054.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.346+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.346+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 84}
+    logger.go:130: 2025-03-06T04:28:32.346+1400	INFO	applying snapshot	{"current-snapshot-index": 81, "current-applied-index": 83, "incoming-leader-snapshot-index": 84, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.347+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "187.681µs"}
+    logger.go:130: 2025-03-06T04:28:32.347+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.349+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.349+1400	INFO	restored mvcc store	{"consistent-index": 83}
+    logger.go:130: 2025-03-06T04:28:32.349+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.349+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.349+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.349+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.349+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.349+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.349+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.349+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.349+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.349+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.349+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.349+1400	INFO	applied snapshot	{"current-snapshot-index": 84, "current-applied-index": 84, "incoming-leader-snapshot-index": 84, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.349+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.349+1400	DEBUG	Applying entry	{"index": 85, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.349+1400	DEBUG	apply entry normal	{"consistent-index": 83, "entry-index": 85, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.349+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.349+1400	DEBUG	applyEntryNormal	{"V2request": "ID:85 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.349+1400	WARN	apply request took too long	{"took": "12.84µs", "expected-duration": "0s", "prefix": "", "request": "ID:85 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.349+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.350+1400	DEBUG	Applying entry	{"index": 86, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.350+1400	DEBUG	apply entry normal	{"consistent-index": 85, "entry-index": 86, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.350+1400	DEBUG	applyEntryNormal	{"V2request": "ID:86 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.350+1400	WARN	apply request took too long	{"took": "8.52µs", "expected-duration": "0s", "prefix": "", "request": "ID:86 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.350+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000057.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.350+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.350+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 87}
+    logger.go:130: 2025-03-06T04:28:32.350+1400	INFO	applying snapshot	{"current-snapshot-index": 84, "current-applied-index": 86, "incoming-leader-snapshot-index": 87, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.351+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "88.48µs"}
+    logger.go:130: 2025-03-06T04:28:32.351+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.351+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.351+1400	INFO	restored mvcc store	{"consistent-index": 86}
+    logger.go:130: 2025-03-06T04:28:32.351+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.351+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.351+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.351+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.351+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.351+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.351+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.351+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.351+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.351+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.351+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.351+1400	INFO	applied snapshot	{"current-snapshot-index": 87, "current-applied-index": 87, "incoming-leader-snapshot-index": 87, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.351+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.351+1400	DEBUG	Applying entry	{"index": 88, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.351+1400	DEBUG	apply entry normal	{"consistent-index": 86, "entry-index": 88, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.351+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.351+1400	DEBUG	applyEntryNormal	{"V2request": "ID:88 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.351+1400	WARN	apply request took too long	{"took": "10.04µs", "expected-duration": "0s", "prefix": "", "request": "ID:88 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.351+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.351+1400	DEBUG	Applying entry	{"index": 89, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.351+1400	DEBUG	apply entry normal	{"consistent-index": 88, "entry-index": 89, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.351+1400	DEBUG	applyEntryNormal	{"V2request": "ID:89 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.351+1400	WARN	apply request took too long	{"took": "2.16µs", "expected-duration": "0s", "prefix": "", "request": "ID:89 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.352+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/000000000000005a.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.352+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.352+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 90}
+    logger.go:130: 2025-03-06T04:28:32.352+1400	INFO	applying snapshot	{"current-snapshot-index": 87, "current-applied-index": 89, "incoming-leader-snapshot-index": 90, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.352+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "88.961µs"}
+    logger.go:130: 2025-03-06T04:28:32.352+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.354+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.354+1400	INFO	restored mvcc store	{"consistent-index": 89}
+    logger.go:130: 2025-03-06T04:28:32.354+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.354+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.354+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.354+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.354+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.354+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.354+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.354+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.354+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.354+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.354+1400	INFO	applied snapshot	{"current-snapshot-index": 90, "current-applied-index": 90, "incoming-leader-snapshot-index": 90, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.355+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.355+1400	DEBUG	Applying entry	{"index": 91, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.355+1400	DEBUG	apply entry normal	{"consistent-index": 89, "entry-index": 91, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.355+1400	DEBUG	applyEntryNormal	{"V2request": "ID:91 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.355+1400	WARN	apply request took too long	{"took": "4.76µs", "expected-duration": "0s", "prefix": "", "request": "ID:91 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.355+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.355+1400	DEBUG	Applying entry	{"index": 92, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.355+1400	DEBUG	apply entry normal	{"consistent-index": 91, "entry-index": 92, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.355+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.355+1400	DEBUG	applyEntryNormal	{"V2request": "ID:92 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.355+1400	WARN	apply request took too long	{"took": "5.48µs", "expected-duration": "0s", "prefix": "", "request": "ID:92 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.355+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.355+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/000000000000005d.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.355+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.355+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 93}
+    logger.go:130: 2025-03-06T04:28:32.355+1400	INFO	applying snapshot	{"current-snapshot-index": 90, "current-applied-index": 92, "incoming-leader-snapshot-index": 93, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.355+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "103.88µs"}
+    logger.go:130: 2025-03-06T04:28:32.355+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.356+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.356+1400	INFO	restored mvcc store	{"consistent-index": 92}
+    logger.go:130: 2025-03-06T04:28:32.356+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.356+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.356+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.357+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.357+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.357+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.357+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.358+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.358+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.358+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.358+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.358+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.358+1400	INFO	applied snapshot	{"current-snapshot-index": 93, "current-applied-index": 93, "incoming-leader-snapshot-index": 93, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.358+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.358+1400	DEBUG	Applying entry	{"index": 94, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.358+1400	DEBUG	apply entry normal	{"consistent-index": 92, "entry-index": 94, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.359+1400	DEBUG	applyEntryNormal	{"V2request": "ID:94 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.359+1400	WARN	apply request took too long	{"took": "18.04µs", "expected-duration": "0s", "prefix": "", "request": "ID:94 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.359+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.359+1400	DEBUG	Applying entry	{"index": 95, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.359+1400	DEBUG	apply entry normal	{"consistent-index": 94, "entry-index": 95, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.359+1400	DEBUG	applyEntryNormal	{"V2request": "ID:95 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.359+1400	WARN	apply request took too long	{"took": "6.28µs", "expected-duration": "0s", "prefix": "", "request": "ID:95 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.359+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000060.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.360+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.360+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 96}
+    logger.go:130: 2025-03-06T04:28:32.360+1400	INFO	applying snapshot	{"current-snapshot-index": 93, "current-applied-index": 95, "incoming-leader-snapshot-index": 96, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.360+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "87.44µs"}
+    logger.go:130: 2025-03-06T04:28:32.360+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.361+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.361+1400	INFO	restored mvcc store	{"consistent-index": 95}
+    logger.go:130: 2025-03-06T04:28:32.361+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.361+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.361+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.361+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.361+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.361+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.361+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.361+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.361+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.361+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.361+1400	INFO	applied snapshot	{"current-snapshot-index": 96, "current-applied-index": 96, "incoming-leader-snapshot-index": 96, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.361+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.361+1400	DEBUG	Applying entry	{"index": 97, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.361+1400	DEBUG	apply entry normal	{"consistent-index": 95, "entry-index": 97, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.362+1400	DEBUG	applyEntryNormal	{"V2request": "ID:97 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.362+1400	WARN	apply request took too long	{"took": "17.64µs", "expected-duration": "0s", "prefix": "", "request": "ID:97 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.362+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.362+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.362+1400	DEBUG	Applying entry	{"index": 98, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.362+1400	DEBUG	apply entry normal	{"consistent-index": 97, "entry-index": 98, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.362+1400	DEBUG	applyEntryNormal	{"V2request": "ID:98 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.362+1400	WARN	apply request took too long	{"took": "4.28µs", "expected-duration": "0s", "prefix": "", "request": "ID:98 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.362+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.362+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000063.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.363+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.363+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 99}
+    logger.go:130: 2025-03-06T04:28:32.363+1400	INFO	applying snapshot	{"current-snapshot-index": 96, "current-applied-index": 98, "incoming-leader-snapshot-index": 99, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.363+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "189.801µs"}
+    logger.go:130: 2025-03-06T04:28:32.363+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.364+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.364+1400	INFO	restored mvcc store	{"consistent-index": 98}
+    logger.go:130: 2025-03-06T04:28:32.364+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.364+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.364+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.364+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.365+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.365+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.365+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.365+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.365+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.365+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.365+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.365+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.365+1400	INFO	applied snapshot	{"current-snapshot-index": 99, "current-applied-index": 99, "incoming-leader-snapshot-index": 99, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.365+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.365+1400	DEBUG	Applying entry	{"index": 100, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.365+1400	DEBUG	apply entry normal	{"consistent-index": 98, "entry-index": 100, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.365+1400	DEBUG	applyEntryNormal	{"V2request": "ID:100 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.365+1400	WARN	apply request took too long	{"took": "9.64µs", "expected-duration": "0s", "prefix": "", "request": "ID:100 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.365+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.365+1400	DEBUG	Applying entry	{"index": 101, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.365+1400	DEBUG	apply entry normal	{"consistent-index": 100, "entry-index": 101, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.365+1400	DEBUG	applyEntryNormal	{"V2request": "ID:101 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.365+1400	WARN	apply request took too long	{"took": "3.92µs", "expected-duration": "0s", "prefix": "", "request": "ID:101 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.366+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000066.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.366+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.366+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 102}
+    logger.go:130: 2025-03-06T04:28:32.366+1400	INFO	applying snapshot	{"current-snapshot-index": 99, "current-applied-index": 101, "incoming-leader-snapshot-index": 102, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.366+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "87.401µs"}
+    logger.go:130: 2025-03-06T04:28:32.366+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.368+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.368+1400	INFO	restored mvcc store	{"consistent-index": 101}
+    logger.go:130: 2025-03-06T04:28:32.368+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.368+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.368+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.368+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.368+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.368+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.369+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.369+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.369+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.369+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.369+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.369+1400	INFO	applied snapshot	{"current-snapshot-index": 102, "current-applied-index": 102, "incoming-leader-snapshot-index": 102, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.369+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.369+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.369+1400	DEBUG	Applying entry	{"index": 103, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.369+1400	DEBUG	apply entry normal	{"consistent-index": 101, "entry-index": 103, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.369+1400	DEBUG	applyEntryNormal	{"V2request": "ID:103 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.369+1400	WARN	apply request took too long	{"took": "8.88µs", "expected-duration": "0s", "prefix": "", "request": "ID:103 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.369+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.369+1400	DEBUG	Applying entry	{"index": 104, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.369+1400	DEBUG	apply entry normal	{"consistent-index": 103, "entry-index": 104, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.369+1400	DEBUG	applyEntryNormal	{"V2request": "ID:104 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.369+1400	WARN	apply request took too long	{"took": "1.96µs", "expected-duration": "0s", "prefix": "", "request": "ID:104 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.369+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000069.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.369+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.369+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 105}
+    logger.go:130: 2025-03-06T04:28:32.369+1400	INFO	applying snapshot	{"current-snapshot-index": 102, "current-applied-index": 104, "incoming-leader-snapshot-index": 105, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.370+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "103.401µs"}
+    logger.go:130: 2025-03-06T04:28:32.370+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.370+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.370+1400	INFO	restored mvcc store	{"consistent-index": 104}
+    logger.go:130: 2025-03-06T04:28:32.370+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.370+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.370+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.370+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.370+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.370+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.370+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.370+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.370+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.370+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.370+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.370+1400	INFO	applied snapshot	{"current-snapshot-index": 105, "current-applied-index": 105, "incoming-leader-snapshot-index": 105, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.370+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.370+1400	DEBUG	Applying entry	{"index": 106, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.370+1400	DEBUG	apply entry normal	{"consistent-index": 104, "entry-index": 106, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.372+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.372+1400	DEBUG	applyEntryNormal	{"V2request": "ID:106 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.372+1400	WARN	apply request took too long	{"took": "16.16µs", "expected-duration": "0s", "prefix": "", "request": "ID:106 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.372+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.372+1400	DEBUG	Applying entry	{"index": 107, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.372+1400	DEBUG	apply entry normal	{"consistent-index": 106, "entry-index": 107, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.372+1400	DEBUG	applyEntryNormal	{"V2request": "ID:107 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.372+1400	WARN	apply request took too long	{"took": "10.641µs", "expected-duration": "0s", "prefix": "", "request": "ID:107 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.373+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/000000000000006c.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.373+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.373+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 108}
+    logger.go:130: 2025-03-06T04:28:32.373+1400	INFO	applying snapshot	{"current-snapshot-index": 105, "current-applied-index": 107, "incoming-leader-snapshot-index": 108, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.374+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "398.763µs"}
+    logger.go:130: 2025-03-06T04:28:32.374+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.375+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.376+1400	INFO	restored mvcc store	{"consistent-index": 107}
+    logger.go:130: 2025-03-06T04:28:32.376+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.376+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.376+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.376+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.376+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.376+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.376+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.376+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.376+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.376+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.376+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.376+1400	INFO	applied snapshot	{"current-snapshot-index": 108, "current-applied-index": 108, "incoming-leader-snapshot-index": 108, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.376+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.376+1400	DEBUG	Applying entry	{"index": 109, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.376+1400	DEBUG	apply entry normal	{"consistent-index": 107, "entry-index": 109, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.376+1400	DEBUG	applyEntryNormal	{"V2request": "ID:109 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.376+1400	WARN	apply request took too long	{"took": "8.4µs", "expected-duration": "0s", "prefix": "", "request": "ID:109 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.376+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.377+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.377+1400	DEBUG	Applying entry	{"index": 110, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.377+1400	DEBUG	apply entry normal	{"consistent-index": 109, "entry-index": 110, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.377+1400	DEBUG	applyEntryNormal	{"V2request": "ID:110 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.377+1400	WARN	apply request took too long	{"took": "9.64µs", "expected-duration": "0s", "prefix": "", "request": "ID:110 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.377+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/000000000000006f.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.377+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.377+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 111}
+    logger.go:130: 2025-03-06T04:28:32.377+1400	INFO	applying snapshot	{"current-snapshot-index": 108, "current-applied-index": 110, "incoming-leader-snapshot-index": 111, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.377+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "103.521µs"}
+    logger.go:130: 2025-03-06T04:28:32.377+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.378+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.378+1400	INFO	restored mvcc store	{"consistent-index": 110}
+    logger.go:130: 2025-03-06T04:28:32.378+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.378+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.378+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.378+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.378+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.378+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.378+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.378+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.379+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.379+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.379+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.379+1400	INFO	applied snapshot	{"current-snapshot-index": 111, "current-applied-index": 111, "incoming-leader-snapshot-index": 111, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.379+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.379+1400	DEBUG	Applying entry	{"index": 112, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.379+1400	DEBUG	apply entry normal	{"consistent-index": 110, "entry-index": 112, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.379+1400	DEBUG	applyEntryNormal	{"V2request": "ID:112 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.379+1400	WARN	apply request took too long	{"took": "4.2µs", "expected-duration": "0s", "prefix": "", "request": "ID:112 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.379+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.379+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.379+1400	DEBUG	Applying entry	{"index": 113, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.379+1400	DEBUG	apply entry normal	{"consistent-index": 112, "entry-index": 113, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.379+1400	DEBUG	applyEntryNormal	{"V2request": "ID:113 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.379+1400	WARN	apply request took too long	{"took": "1.8µs", "expected-duration": "0s", "prefix": "", "request": "ID:113 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.379+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000072.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.379+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.379+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 114}
+    logger.go:130: 2025-03-06T04:28:32.379+1400	INFO	applying snapshot	{"current-snapshot-index": 111, "current-applied-index": 113, "incoming-leader-snapshot-index": 114, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.379+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "79.56µs"}
+    logger.go:130: 2025-03-06T04:28:32.379+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.381+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.381+1400	INFO	restored mvcc store	{"consistent-index": 113}
+    logger.go:130: 2025-03-06T04:28:32.381+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.381+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.381+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.381+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.382+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.382+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.382+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.382+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.382+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.382+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.382+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.382+1400	INFO	applied snapshot	{"current-snapshot-index": 114, "current-applied-index": 114, "incoming-leader-snapshot-index": 114, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.382+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.382+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.382+1400	DEBUG	Applying entry	{"index": 115, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.382+1400	DEBUG	apply entry normal	{"consistent-index": 113, "entry-index": 115, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.382+1400	DEBUG	applyEntryNormal	{"V2request": "ID:115 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.382+1400	WARN	apply request took too long	{"took": "10.08µs", "expected-duration": "0s", "prefix": "", "request": "ID:115 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.382+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.382+1400	DEBUG	Applying entry	{"index": 116, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.382+1400	DEBUG	apply entry normal	{"consistent-index": 115, "entry-index": 116, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.382+1400	DEBUG	applyEntryNormal	{"V2request": "ID:116 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.382+1400	WARN	apply request took too long	{"took": "1.76µs", "expected-duration": "0s", "prefix": "", "request": "ID:116 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.382+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000075.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.382+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.382+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 117}
+    logger.go:130: 2025-03-06T04:28:32.382+1400	INFO	applying snapshot	{"current-snapshot-index": 114, "current-applied-index": 116, "incoming-leader-snapshot-index": 117, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.383+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "152.641µs"}
+    logger.go:130: 2025-03-06T04:28:32.383+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.384+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.384+1400	INFO	restored mvcc store	{"consistent-index": 116}
+    logger.go:130: 2025-03-06T04:28:32.384+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.384+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.385+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.385+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.385+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.385+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.385+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.385+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.385+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.385+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.385+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.385+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.385+1400	INFO	applied snapshot	{"current-snapshot-index": 117, "current-applied-index": 117, "incoming-leader-snapshot-index": 117, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.385+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.385+1400	DEBUG	Applying entry	{"index": 118, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.385+1400	DEBUG	apply entry normal	{"consistent-index": 116, "entry-index": 118, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.385+1400	DEBUG	applyEntryNormal	{"V2request": "ID:118 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.385+1400	WARN	apply request took too long	{"took": "5.6µs", "expected-duration": "0s", "prefix": "", "request": "ID:118 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.385+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.385+1400	DEBUG	Applying entry	{"index": 119, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.385+1400	DEBUG	apply entry normal	{"consistent-index": 118, "entry-index": 119, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.385+1400	DEBUG	applyEntryNormal	{"V2request": "ID:119 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.385+1400	WARN	apply request took too long	{"took": "2µs", "expected-duration": "0s", "prefix": "", "request": "ID:119 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.386+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000078.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.386+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.386+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 120}
+    logger.go:130: 2025-03-06T04:28:32.386+1400	INFO	applying snapshot	{"current-snapshot-index": 117, "current-applied-index": 119, "incoming-leader-snapshot-index": 120, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.386+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "91.121µs"}
+    logger.go:130: 2025-03-06T04:28:32.386+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.386+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.386+1400	INFO	restored mvcc store	{"consistent-index": 119}
+    logger.go:130: 2025-03-06T04:28:32.386+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.386+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.386+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.387+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.387+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.387+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.387+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.387+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.387+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.387+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.387+1400	INFO	applied snapshot	{"current-snapshot-index": 120, "current-applied-index": 120, "incoming-leader-snapshot-index": 120, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.387+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.387+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.387+1400	DEBUG	Applying entry	{"index": 121, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.387+1400	DEBUG	apply entry normal	{"consistent-index": 119, "entry-index": 121, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.387+1400	DEBUG	applyEntryNormal	{"V2request": "ID:121 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.387+1400	WARN	apply request took too long	{"took": "4.64µs", "expected-duration": "0s", "prefix": "", "request": "ID:121 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.387+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.387+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.387+1400	DEBUG	Applying entry	{"index": 122, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.387+1400	DEBUG	apply entry normal	{"consistent-index": 121, "entry-index": 122, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.387+1400	DEBUG	applyEntryNormal	{"V2request": "ID:122 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.387+1400	WARN	apply request took too long	{"took": "2.84µs", "expected-duration": "0s", "prefix": "", "request": "ID:122 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.387+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/000000000000007b.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.387+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.387+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 123}
+    logger.go:130: 2025-03-06T04:28:32.387+1400	INFO	applying snapshot	{"current-snapshot-index": 120, "current-applied-index": 122, "incoming-leader-snapshot-index": 123, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.388+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "85.88µs"}
+    logger.go:130: 2025-03-06T04:28:32.388+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.389+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.389+1400	INFO	restored mvcc store	{"consistent-index": 122}
+    logger.go:130: 2025-03-06T04:28:32.389+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.390+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.390+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.390+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.390+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.390+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.390+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.390+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.390+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.390+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.390+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.390+1400	INFO	applied snapshot	{"current-snapshot-index": 123, "current-applied-index": 123, "incoming-leader-snapshot-index": 123, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.390+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.390+1400	DEBUG	Applying entry	{"index": 124, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.390+1400	DEBUG	apply entry normal	{"consistent-index": 122, "entry-index": 124, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.390+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.390+1400	DEBUG	applyEntryNormal	{"V2request": "ID:124 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.390+1400	WARN	apply request took too long	{"took": "5.52µs", "expected-duration": "0s", "prefix": "", "request": "ID:124 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.390+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.390+1400	DEBUG	Applying entry	{"index": 125, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.390+1400	DEBUG	apply entry normal	{"consistent-index": 124, "entry-index": 125, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.390+1400	DEBUG	applyEntryNormal	{"V2request": "ID:125 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.390+1400	WARN	apply request took too long	{"took": "2.24µs", "expected-duration": "0s", "prefix": "", "request": "ID:125 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.390+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/000000000000007e.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.390+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.390+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 126}
+    logger.go:130: 2025-03-06T04:28:32.390+1400	INFO	applying snapshot	{"current-snapshot-index": 123, "current-applied-index": 125, "incoming-leader-snapshot-index": 126, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.391+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "95.601µs"}
+    logger.go:130: 2025-03-06T04:28:32.391+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.391+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.391+1400	INFO	restored mvcc store	{"consistent-index": 125}
+    logger.go:130: 2025-03-06T04:28:32.391+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.391+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.391+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.391+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.391+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.391+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.391+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.391+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.391+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.391+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.391+1400	INFO	applied snapshot	{"current-snapshot-index": 126, "current-applied-index": 126, "incoming-leader-snapshot-index": 126, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.391+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.391+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.391+1400	DEBUG	Applying entry	{"index": 127, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.391+1400	DEBUG	apply entry normal	{"consistent-index": 125, "entry-index": 127, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.391+1400	DEBUG	applyEntryNormal	{"V2request": "ID:127 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.391+1400	WARN	apply request took too long	{"took": "5.08µs", "expected-duration": "0s", "prefix": "", "request": "ID:127 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.392+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.392+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.392+1400	DEBUG	Applying entry	{"index": 128, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.392+1400	DEBUG	apply entry normal	{"consistent-index": 127, "entry-index": 128, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.392+1400	DEBUG	applyEntryNormal	{"V2request": "ID:128 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.392+1400	WARN	apply request took too long	{"took": "3.24µs", "expected-duration": "0s", "prefix": "", "request": "ID:128 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.392+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000081.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.393+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.393+1400	INFO	applying snapshot	{"current-snapshot-index": 126, "current-applied-index": 128, "incoming-leader-snapshot-index": 129, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.393+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 129}
+    logger.go:130: 2025-03-06T04:28:32.394+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "232.161µs"}
+    logger.go:130: 2025-03-06T04:28:32.394+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.394+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.394+1400	INFO	restored mvcc store	{"consistent-index": 128}
+    logger.go:130: 2025-03-06T04:28:32.394+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.394+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.394+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.395+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.395+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.395+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.395+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.395+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.395+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.395+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.395+1400	INFO	applied snapshot	{"current-snapshot-index": 129, "current-applied-index": 129, "incoming-leader-snapshot-index": 129, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.395+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.395+1400	DEBUG	Applying entry	{"index": 130, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.395+1400	DEBUG	apply entry normal	{"consistent-index": 128, "entry-index": 130, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.395+1400	DEBUG	applyEntryNormal	{"V2request": "ID:130 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.395+1400	WARN	apply request took too long	{"took": "4.88µs", "expected-duration": "0s", "prefix": "", "request": "ID:130 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.395+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.396+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.396+1400	DEBUG	Applying entry	{"index": 131, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.396+1400	DEBUG	apply entry normal	{"consistent-index": 130, "entry-index": 131, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.397+1400	DEBUG	applyEntryNormal	{"V2request": "ID:131 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.397+1400	WARN	apply request took too long	{"took": "10.52µs", "expected-duration": "0s", "prefix": "", "request": "ID:131 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.397+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.397+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000084.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.397+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.397+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 132}
+    logger.go:130: 2025-03-06T04:28:32.397+1400	INFO	applying snapshot	{"current-snapshot-index": 129, "current-applied-index": 131, "incoming-leader-snapshot-index": 132, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.397+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "107.68µs"}
+    logger.go:130: 2025-03-06T04:28:32.397+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.398+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.398+1400	INFO	restored mvcc store	{"consistent-index": 131}
+    logger.go:130: 2025-03-06T04:28:32.398+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.398+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.399+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.400+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.400+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.400+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.400+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.400+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.400+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.400+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.400+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.400+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.400+1400	INFO	applied snapshot	{"current-snapshot-index": 132, "current-applied-index": 132, "incoming-leader-snapshot-index": 132, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.400+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.400+1400	DEBUG	Applying entry	{"index": 133, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.400+1400	DEBUG	apply entry normal	{"consistent-index": 131, "entry-index": 133, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.400+1400	DEBUG	applyEntryNormal	{"V2request": "ID:133 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.400+1400	WARN	apply request took too long	{"took": "6.36µs", "expected-duration": "0s", "prefix": "", "request": "ID:133 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.400+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.400+1400	DEBUG	Applying entry	{"index": 134, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.400+1400	DEBUG	apply entry normal	{"consistent-index": 133, "entry-index": 134, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.400+1400	DEBUG	applyEntryNormal	{"V2request": "ID:134 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.400+1400	WARN	apply request took too long	{"took": "1.76µs", "expected-duration": "0s", "prefix": "", "request": "ID:134 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.401+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000087.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.401+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.401+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 135}
+    logger.go:130: 2025-03-06T04:28:32.401+1400	INFO	applying snapshot	{"current-snapshot-index": 132, "current-applied-index": 134, "incoming-leader-snapshot-index": 135, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.401+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "95.641µs"}
+    logger.go:130: 2025-03-06T04:28:32.401+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.402+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.403+1400	INFO	restored mvcc store	{"consistent-index": 134}
+    logger.go:130: 2025-03-06T04:28:32.403+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.403+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.403+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.403+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.403+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.403+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.403+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.403+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.403+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.403+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.403+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.403+1400	INFO	applied snapshot	{"current-snapshot-index": 135, "current-applied-index": 135, "incoming-leader-snapshot-index": 135, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.403+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.403+1400	DEBUG	Applying entry	{"index": 136, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.403+1400	DEBUG	apply entry normal	{"consistent-index": 134, "entry-index": 136, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.403+1400	DEBUG	applyEntryNormal	{"V2request": "ID:136 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.403+1400	WARN	apply request took too long	{"took": "4.76µs", "expected-duration": "0s", "prefix": "", "request": "ID:136 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.403+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.403+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.403+1400	DEBUG	Applying entry	{"index": 137, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.403+1400	DEBUG	apply entry normal	{"consistent-index": 136, "entry-index": 137, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.403+1400	DEBUG	applyEntryNormal	{"V2request": "ID:137 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.403+1400	WARN	apply request took too long	{"took": "1.92µs", "expected-duration": "0s", "prefix": "", "request": "ID:137 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.404+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/000000000000008a.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.404+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.404+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 138}
+    logger.go:130: 2025-03-06T04:28:32.404+1400	INFO	applying snapshot	{"current-snapshot-index": 135, "current-applied-index": 137, "incoming-leader-snapshot-index": 138, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.404+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "174.402µs"}
+    logger.go:130: 2025-03-06T04:28:32.404+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.406+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.406+1400	INFO	restored mvcc store	{"consistent-index": 137}
+    logger.go:130: 2025-03-06T04:28:32.406+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.406+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.406+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.406+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.406+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.406+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.406+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.406+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.406+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.406+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.407+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.407+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.407+1400	INFO	applied snapshot	{"current-snapshot-index": 138, "current-applied-index": 138, "incoming-leader-snapshot-index": 138, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.407+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.407+1400	DEBUG	Applying entry	{"index": 139, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.407+1400	DEBUG	apply entry normal	{"consistent-index": 137, "entry-index": 139, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.407+1400	DEBUG	applyEntryNormal	{"V2request": "ID:139 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.407+1400	WARN	apply request took too long	{"took": "8.48µs", "expected-duration": "0s", "prefix": "", "request": "ID:139 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.407+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.407+1400	DEBUG	Applying entry	{"index": 140, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.407+1400	DEBUG	apply entry normal	{"consistent-index": 139, "entry-index": 140, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.407+1400	DEBUG	applyEntryNormal	{"V2request": "ID:140 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.407+1400	WARN	apply request took too long	{"took": "4.16µs", "expected-duration": "0s", "prefix": "", "request": "ID:140 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.407+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/000000000000008d.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.408+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.408+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 141}
+    logger.go:130: 2025-03-06T04:28:32.408+1400	INFO	applying snapshot	{"current-snapshot-index": 138, "current-applied-index": 140, "incoming-leader-snapshot-index": 141, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.408+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "125.841µs"}
+    logger.go:130: 2025-03-06T04:28:32.408+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.410+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.410+1400	INFO	restored mvcc store	{"consistent-index": 140}
+    logger.go:130: 2025-03-06T04:28:32.410+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.410+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.410+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.410+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.410+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.410+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.410+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.410+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.410+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.410+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.410+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.410+1400	INFO	applied snapshot	{"current-snapshot-index": 141, "current-applied-index": 141, "incoming-leader-snapshot-index": 141, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.410+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.410+1400	DEBUG	Applying entry	{"index": 142, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.410+1400	DEBUG	apply entry normal	{"consistent-index": 140, "entry-index": 142, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.410+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.410+1400	DEBUG	applyEntryNormal	{"V2request": "ID:142 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.410+1400	WARN	apply request took too long	{"took": "5.76µs", "expected-duration": "0s", "prefix": "", "request": "ID:142 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.410+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.410+1400	DEBUG	Applying entry	{"index": 143, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.410+1400	DEBUG	apply entry normal	{"consistent-index": 142, "entry-index": 143, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.410+1400	DEBUG	applyEntryNormal	{"V2request": "ID:143 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.410+1400	WARN	apply request took too long	{"took": "2.4µs", "expected-duration": "0s", "prefix": "", "request": "ID:143 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.411+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000090.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.411+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.411+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 144}
+    logger.go:130: 2025-03-06T04:28:32.411+1400	INFO	applying snapshot	{"current-snapshot-index": 141, "current-applied-index": 143, "incoming-leader-snapshot-index": 144, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.411+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "109.401µs"}
+    logger.go:130: 2025-03-06T04:28:32.411+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.411+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.411+1400	INFO	restored mvcc store	{"consistent-index": 143}
+    logger.go:130: 2025-03-06T04:28:32.411+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.411+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.411+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.411+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.412+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.412+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.412+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.412+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.412+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.412+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.412+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.412+1400	INFO	applied snapshot	{"current-snapshot-index": 144, "current-applied-index": 144, "incoming-leader-snapshot-index": 144, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.412+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.412+1400	DEBUG	Applying entry	{"index": 145, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.412+1400	DEBUG	apply entry normal	{"consistent-index": 143, "entry-index": 145, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.412+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.412+1400	DEBUG	applyEntryNormal	{"V2request": "ID:145 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.412+1400	WARN	apply request took too long	{"took": "4.92µs", "expected-duration": "0s", "prefix": "", "request": "ID:145 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.412+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.412+1400	DEBUG	Applying entry	{"index": 146, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.412+1400	DEBUG	apply entry normal	{"consistent-index": 145, "entry-index": 146, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.412+1400	DEBUG	applyEntryNormal	{"V2request": "ID:146 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.412+1400	WARN	apply request took too long	{"took": "2.321µs", "expected-duration": "0s", "prefix": "", "request": "ID:146 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.412+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000093.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.412+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.412+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 147}
+    logger.go:130: 2025-03-06T04:28:32.412+1400	INFO	applying snapshot	{"current-snapshot-index": 144, "current-applied-index": 146, "incoming-leader-snapshot-index": 147, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.412+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "85.081µs"}
+    logger.go:130: 2025-03-06T04:28:32.412+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.414+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.414+1400	INFO	restored mvcc store	{"consistent-index": 146}
+    logger.go:130: 2025-03-06T04:28:32.414+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.414+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.414+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.414+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.415+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.415+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.415+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.415+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.415+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.415+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.415+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.415+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.415+1400	INFO	applied snapshot	{"current-snapshot-index": 147, "current-applied-index": 147, "incoming-leader-snapshot-index": 147, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.415+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.415+1400	DEBUG	Applying entry	{"index": 148, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.415+1400	DEBUG	apply entry normal	{"consistent-index": 146, "entry-index": 148, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.415+1400	DEBUG	applyEntryNormal	{"V2request": "ID:148 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.415+1400	WARN	apply request took too long	{"took": "5.24µs", "expected-duration": "0s", "prefix": "", "request": "ID:148 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.415+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.415+1400	DEBUG	Applying entry	{"index": 149, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.415+1400	DEBUG	apply entry normal	{"consistent-index": 148, "entry-index": 149, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.415+1400	DEBUG	applyEntryNormal	{"V2request": "ID:149 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.415+1400	WARN	apply request took too long	{"took": "1.88µs", "expected-duration": "0s", "prefix": "", "request": "ID:149 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.415+1400	INFO	sent database snapshot to writer	{"bytes": 24576, "size": "25 kB"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/0000000000000096.snap.db","bytes":24576,"size":"25 kB"}
+    logger.go:130: 2025-03-06T04:28:32.415+1400	INFO	sending merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB"}
+    logger.go:130: 2025-03-06T04:28:32.415+1400	INFO	applied incoming Raft snapshot	{"snapshot-index": 150}
+    logger.go:130: 2025-03-06T04:28:32.415+1400	INFO	applying snapshot	{"current-snapshot-index": 147, "current-applied-index": 149, "incoming-leader-snapshot-index": 150, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.415+1400	INFO	opened backend db	{"path": "/tmp/TestConcurrentApplyAndSnapshotV33021922151/001/testsnapdir3713731383/member/snap/db", "took": "116.001µs"}
+    logger.go:130: 2025-03-06T04:28:32.416+1400	INFO	restoring mvcc store
+    logger.go:130: 2025-03-06T04:28:32.417+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:28:32.417+1400	INFO	restored mvcc store	{"consistent-index": 149}
+    logger.go:130: 2025-03-06T04:28:32.417+1400	INFO	restoring alarm store
+    logger.go:130: 2025-03-06T04:28:32.417+1400	INFO	closing old backend file
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	restored alarm store
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	restoring v2 store
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	restored v2 store
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	restoring cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	restored cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	removing old peers from network
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	removed old peers from network
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	adding peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	added peers from new cluster configuration
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	applied snapshot	{"current-snapshot-index": 150, "current-applied-index": 150, "incoming-leader-snapshot-index": 150, "incoming-leader-snapshot-term": 0}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	DEBUG	Applying entry	{"index": 151, "term": 0, "type": "EntryNormal"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	DEBUG	apply entry normal	{"consistent-index": 149, "entry-index": 151, "should-applyV3": true}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	DEBUG	applyEntryNormal	{"V2request": "ID:151 Method:\"QGET\" "}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	WARN	apply request took too long	{"took": "4.56µs", "expected-duration": "0s", "prefix": "", "request": "ID:151 Method:\"QGET\" ", "response": ""}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	skipped leadership transfer for single voting member cluster	{"local-member-id": "0", "current-leader-member-id": "0"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	closed old backend file
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "77.873377ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB", "took": "7.438167ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "98.340028ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB", "took": "3.12038ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB", "took": "6.060318ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "81.374919ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB", "took": "17.521152ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "110.891548ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB", "took": "26.510569ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "113.615525ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB", "took": "28.094859ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "83.483813ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "89.14517ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "92.33411ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB", "took": "52.687056ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "56.39248ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "96.636857ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB", "took": "10.89127ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB", "took": "14.647614ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "102.511855ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "105.367713ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "107.540647ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30191, "size": "30 kB", "took": "21.457097ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "115.524697ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "119.232881ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "122.618342ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "126.535487ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "128.846223ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "133.329052ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "137.279397ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "141.203702ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "147.618903ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30188, "size": "30 kB", "took": "153.096058ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30188, "size": "30 kB", "took": "158.656133ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30187, "size": "30 kB", "took": "165.244015ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30187, "size": "30 kB", "took": "169.655443ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 26091, "size": "26 kB", "took": "171.952418ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB", "took": "31.168639ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB", "took": "32.99257ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB", "took": "36.260231ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB", "took": "39.589772ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB", "took": "41.547385ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB", "took": "45.688011ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30190, "size": "30 kB", "took": "49.497796ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "66.934027ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "59.116177ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "63.446886ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "73.094467ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "68.319277ms"}
+    logger.go:130: 2025-03-06T04:28:32.418+1400	INFO	sent merged snapshot	{"from": "0", "to": "0", "bytes": 30189, "size": "30 kB", "took": "74.914759ms"}
+--- PASS: TestConcurrentApplyAndSnapshotV3 (0.18s)
 === RUN   TestAddMember
-    logger.go:130: 2026-04-07T08:44:08.156-1200	INFO	updating snapshot-count to default	{"given-snapshot-count": 0, "updated-snapshot-count": 100000}
-    logger.go:130: 2026-04-07T08:44:08.156-1200	INFO	updating snapshot catch-up entries to default	{"given-snapshot-catchup-entries": 0, "updated-snapshot-catchup-entries": 5000}
-    logger.go:130: 2026-04-07T08:44:08.156-1200	INFO	starting etcd server	{"local-member-id": "0", "local-server-version": "3.5.16", "cluster-version": "to_be_decided"}
-    logger.go:130: 2026-04-07T08:44:08.156-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.156-1200	DEBUG	Applying entry	{"index": 1, "term": 0, "type": "EntryConfChange"}
-    logger.go:130: 2026-04-07T08:44:08.156-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "4d2", "added-peer-peer-urls": ["foo"]}
-    logger.go:130: 2026-04-07T08:44:08.156-1200	INFO	applied a configuration change through raft	{"local-member-id": "0", "raft-conf-change": "ConfChangeAddNode", "raft-conf-change-node-id": "4d2"}
-    logger.go:130: 2026-04-07T08:44:08.156-1200	INFO	skipped leadership transfer for single voting member cluster	{"local-member-id": "0", "current-leader-member-id": "0"}
+    logger.go:130: 2025-03-06T04:28:32.420+1400	INFO	updating snapshot-count to default	{"given-snapshot-count": 0, "updated-snapshot-count": 100000}
+    logger.go:130: 2025-03-06T04:28:32.420+1400	INFO	updating snapshot catch-up entries to default	{"given-snapshot-catchup-entries": 0, "updated-snapshot-catchup-entries": 5000}
+    logger.go:130: 2025-03-06T04:28:32.420+1400	INFO	starting etcd server	{"local-member-id": "0", "local-server-version": "3.5.16", "cluster-version": "to_be_decided"}
+    logger.go:130: 2025-03-06T04:28:32.420+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.420+1400	DEBUG	Applying entry	{"index": 1, "term": 0, "type": "EntryConfChange"}
+    logger.go:130: 2025-03-06T04:28:32.420+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "4d2", "added-peer-peer-urls": ["foo"]}
+    logger.go:130: 2025-03-06T04:28:32.420+1400	INFO	applied a configuration change through raft	{"local-member-id": "0", "raft-conf-change": "ConfChangeAddNode", "raft-conf-change-node-id": "4d2"}
+    logger.go:130: 2025-03-06T04:28:32.420+1400	INFO	skipped leadership transfer for single voting member cluster	{"local-member-id": "0", "current-leader-member-id": "0"}
 --- PASS: TestAddMember (0.00s)
 === RUN   TestProcessIgnoreMismatchMessage
-    logger.go:130: 2026-04-07T08:44:08.157-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "1", "added-peer-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:08.157-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "2", "added-peer-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:08.157-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "3", "added-peer-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:08.157-1200	WARN	rejected Raft message to mismatch member	{"local-member-id": "1", "mismatch-member-id": "2"}
+    logger.go:130: 2025-03-06T04:28:32.421+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "1", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.421+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "2", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.421+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "3", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.421+1400	WARN	rejected Raft message to mismatch member	{"local-member-id": "1", "mismatch-member-id": "2"}
 --- PASS: TestProcessIgnoreMismatchMessage (0.00s)
 === RUN   TestRemoveMember
-    logger.go:130: 2026-04-07T08:44:08.158-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "4d2", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.422+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "4d2", "added-peer-peer-urls": []}
 {"level":"info","msg":"updating snapshot-count to default","given-snapshot-count":0,"updated-snapshot-count":100000}
 {"level":"info","msg":"updating snapshot catch-up entries to default","given-snapshot-catchup-entries":0,"updated-snapshot-catchup-entries":5000}
 {"level":"info","msg":"starting etcd server","local-member-id":"0","local-server-version":"3.5.16","cluster-version":"to_be_decided"}
 {"level":"debug","msg":"Applying entries","num-entries":1}
 {"level":"debug","msg":"Applying entry","index":1,"term":0,"type":"EntryConfChange"}
-    logger.go:130: 2026-04-07T08:44:08.158-1200	INFO	removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "4d2", "removed-remote-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.422+1400	INFO	removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "4d2", "removed-remote-peer-urls": []}
 {"level":"info","msg":"applied a configuration change through raft","local-member-id":"0","raft-conf-change":"ConfChangeRemoveNode","raft-conf-change-node-id":"4d2"}
 {"level":"info","msg":"skipped leadership transfer for single voting member cluster","local-member-id":"0","current-leader-member-id":"0"}
 --- PASS: TestRemoveMember (0.00s)
 === RUN   TestUpdateMember
-    logger.go:130: 2026-04-07T08:44:08.159-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "4d2", "added-peer-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:08.159-1200	INFO	updating snapshot-count to default	{"given-snapshot-count": 0, "updated-snapshot-count": 100000}
-    logger.go:130: 2026-04-07T08:44:08.159-1200	INFO	updating snapshot catch-up entries to default	{"given-snapshot-catchup-entries": 0, "updated-snapshot-catchup-entries": 5000}
-    logger.go:130: 2026-04-07T08:44:08.159-1200	INFO	starting etcd server	{"local-member-id": "0", "local-server-version": "3.5.16", "cluster-version": "to_be_decided"}
-    logger.go:130: 2026-04-07T08:44:08.159-1200	DEBUG	Applying entries	{"num-entries": 1}
-    logger.go:130: 2026-04-07T08:44:08.159-1200	DEBUG	Applying entry	{"index": 1, "term": 0, "type": "EntryConfChange"}
-    logger.go:130: 2026-04-07T08:44:08.159-1200	INFO	updated member	{"cluster-id": "0", "local-member-id": "0", "updated-remote-peer-id": "4d2", "updated-remote-peer-urls": ["http://127.0.0.1:1"]}
-    logger.go:130: 2026-04-07T08:44:08.159-1200	INFO	applied a configuration change through raft	{"local-member-id": "0", "raft-conf-change": "ConfChangeUpdateNode", "raft-conf-change-node-id": "4d2"}
-    logger.go:130: 2026-04-07T08:44:08.159-1200	INFO	skipped leadership transfer for single voting member cluster	{"local-member-id": "0", "current-leader-member-id": "0"}
+    logger.go:130: 2025-03-06T04:28:32.422+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "4d2", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:32.422+1400	INFO	updating snapshot-count to default	{"given-snapshot-count": 0, "updated-snapshot-count": 100000}
+    logger.go:130: 2025-03-06T04:28:32.422+1400	INFO	updating snapshot catch-up entries to default	{"given-snapshot-catchup-entries": 0, "updated-snapshot-catchup-entries": 5000}
+    logger.go:130: 2025-03-06T04:28:32.423+1400	INFO	starting etcd server	{"local-member-id": "0", "local-server-version": "3.5.16", "cluster-version": "to_be_decided"}
+    logger.go:130: 2025-03-06T04:28:32.423+1400	DEBUG	Applying entries	{"num-entries": 1}
+    logger.go:130: 2025-03-06T04:28:32.423+1400	DEBUG	Applying entry	{"index": 1, "term": 0, "type": "EntryConfChange"}
+    logger.go:130: 2025-03-06T04:28:32.423+1400	INFO	updated member	{"cluster-id": "0", "local-member-id": "0", "updated-remote-peer-id": "4d2", "updated-remote-peer-urls": ["http://127.0.0.1:1"]}
+    logger.go:130: 2025-03-06T04:28:32.423+1400	INFO	applied a configuration change through raft	{"local-member-id": "0", "raft-conf-change": "ConfChangeUpdateNode", "raft-conf-change-node-id": "4d2"}
+    logger.go:130: 2025-03-06T04:28:32.423+1400	INFO	skipped leadership transfer for single voting member cluster	{"local-member-id": "0", "current-leader-member-id": "0"}
 --- PASS: TestUpdateMember (0.00s)
 === RUN   TestPublish
-    logger.go:130: 2026-04-07T08:44:08.159-1200	INFO	published local member to cluster through raft	{"local-member-id": "1", "local-member-attributes": "{Name:node1 ClientURLs:[http://a http://b]}", "request-path": "/0/members/1/attributes", "cluster-id": "0", "publish-timeout": "1h0m0s"}
+    logger.go:130: 2025-03-06T04:28:32.423+1400	INFO	published local member to cluster through raft	{"local-member-id": "1", "local-member-attributes": "{Name:node1 ClientURLs:[http://a http://b]}", "request-path": "/0/members/1/attributes", "cluster-id": "0", "publish-timeout": "1h0m0s"}
 --- PASS: TestPublish (0.00s)
 === RUN   TestPublishStopped
-    logger.go:130: 2026-04-07T08:44:08.159-1200	WARN	stopped publish because server is stopped	{"local-member-id": "0", "local-member-attributes": "{Name: ClientURLs:[]}", "publish-timeout": "1h0m0s", "error": "etcdserver: server stopped"}
+    logger.go:130: 2025-03-06T04:28:32.423+1400	WARN	stopped publish because server is stopped	{"local-member-id": "0", "local-member-attributes": "{Name: ClientURLs:[]}", "publish-timeout": "1h0m0s", "error": "etcdserver: server stopped"}
 --- PASS: TestPublishStopped (0.00s)
 === RUN   TestPublishRetry
-    logger.go:130: 2026-04-07T08:44:08.160-1200	WARN	failed to publish local member to cluster through raft	{"local-member-id": "0", "local-member-attributes": "{Name: ClientURLs:[]}", "request-path": "/0/members/0/attributes", "publish-timeout": "10ns", "error": "etcdserver: request timed out"}
-    logger.go:130: 2026-04-07T08:44:08.160-1200	WARN	failed to publish local member to cluster through raft	{"local-member-id": "0", "local-member-attributes": "{Name: ClientURLs:[]}", "request-path": "/0/members/0/attributes", "publish-timeout": "10ns", "error": "etcdserver: request timed out"}
-    logger.go:130: 2026-04-07T08:44:08.160-1200	WARN	failed to publish local member to cluster through raft	{"local-member-id": "0", "local-member-attributes": "{Name: ClientURLs:[]}", "request-path": "/0/members/0/attributes", "publish-timeout": "10ns", "error": "etcdserver: request timed out"}
-    logger.go:130: 2026-04-07T08:44:08.160-1200	WARN	failed to publish local member to cluster through raft	{"local-member-id": "0", "local-member-attributes": "{Name: ClientURLs:[]}", "request-path": "/0/members/0/attributes", "publish-timeout": "10ns", "error": "etcdserver: request timed out"}
-    logger.go:130: 2026-04-07T08:44:08.160-1200	WARN	failed to publish local member to cluster through raft	{"local-member-id": "0", "local-member-attributes": "{Name: ClientURLs:[]}", "request-path": "/0/members/0/attributes", "publish-timeout": "10ns", "error": "etcdserver: request timed out"}
-    logger.go:130: 2026-04-07T08:44:08.160-1200	WARN	stopped publish because server is stopped	{"local-member-id": "0", "local-member-attributes": "{Name: ClientURLs:[]}", "publish-timeout": "10ns", "error": "etcdserver: server stopped"}
+    logger.go:130: 2025-03-06T04:28:32.423+1400	WARN	failed to publish local member to cluster through raft	{"local-member-id": "0", "local-member-attributes": "{Name: ClientURLs:[]}", "request-path": "/0/members/0/attributes", "publish-timeout": "10ns", "error": "etcdserver: request timed out"}
+    logger.go:130: 2025-03-06T04:28:32.423+1400	WARN	failed to publish local member to cluster through raft	{"local-member-id": "0", "local-member-attributes": "{Name: ClientURLs:[]}", "request-path": "/0/members/0/attributes", "publish-timeout": "10ns", "error": "etcdserver: request timed out"}
+    logger.go:130: 2025-03-06T04:28:32.423+1400	WARN	failed to publish local member to cluster through raft	{"local-member-id": "0", "local-member-attributes": "{Name: ClientURLs:[]}", "request-path": "/0/members/0/attributes", "publish-timeout": "10ns", "error": "etcdserver: request timed out"}
+    logger.go:130: 2025-03-06T04:28:32.424+1400	WARN	failed to publish local member to cluster through raft	{"local-member-id": "0", "local-member-attributes": "{Name: ClientURLs:[]}", "request-path": "/0/members/0/attributes", "publish-timeout": "10ns", "error": "etcdserver: request timed out"}
+    logger.go:130: 2025-03-06T04:28:32.424+1400	WARN	stopped publish because server is stopped	{"local-member-id": "0", "local-member-attributes": "{Name: ClientURLs:[]}", "publish-timeout": "10ns", "error": "etcdserver: server stopped"}
 --- PASS: TestPublishRetry (0.00s)
 === RUN   TestPublishV3
-    logger.go:130: 2026-04-07T08:44:08.161-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:08.161-1200	INFO	published local member to cluster through raft	{"local-member-id": "1", "local-member-attributes": "{Name:node1 ClientURLs:[http://a http://b]}", "cluster-id": "0", "publish-timeout": "1h0m0s"}
+    logger.go:130: 2025-03-06T04:28:32.424+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:32.424+1400	INFO	published local member to cluster through raft	{"local-member-id": "1", "local-member-attributes": "{Name:node1 ClientURLs:[http://a http://b]}", "cluster-id": "0", "publish-timeout": "1h0m0s"}
 --- PASS: TestPublishV3 (0.00s)
 === RUN   TestPublishV3Stopped
 {"level":"warn","msg":"stopped publish because server is stopping","local-member-id":"0","local-member-attributes":"{Name: ClientURLs:[]}","publish-timeout":"1h0m0s"}
 --- PASS: TestPublishV3Stopped (0.00s)
 === RUN   TestPublishV3Retry
-    logger.go:130: 2026-04-07T08:44:08.162-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:08.162-1200	WARN	failed to publish local member to cluster through raft	{"local-member-id": "1", "local-member-attributes": "{Name:node1 ClientURLs:[http://a http://b]}", "publish-timeout": "10ns", "error": "etcdserver: request timed out"}
-    logger.go:130: 2026-04-07T08:44:08.162-1200	WARN	failed to publish local member to cluster through raft	{"local-member-id": "1", "local-member-attributes": "{Name:node1 ClientURLs:[http://a http://b]}", "publish-timeout": "10ns", "error": "etcdserver: request timed out"}
-    logger.go:130: 2026-04-07T08:44:08.162-1200	WARN	failed to publish local member to cluster through raft	{"local-member-id": "1", "local-member-attributes": "{Name:node1 ClientURLs:[http://a http://b]}", "publish-timeout": "10ns", "error": "etcdserver: request timed out"}
-    logger.go:130: 2026-04-07T08:44:08.162-1200	WARN	stopped publish because server is stopping	{"local-member-id": "1", "local-member-attributes": "{Name:node1 ClientURLs:[http://a http://b]}", "publish-timeout": "10ns"}
+    logger.go:130: 2025-03-06T04:28:32.425+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:32.425+1400	WARN	failed to publish local member to cluster through raft	{"local-member-id": "1", "local-member-attributes": "{Name:node1 ClientURLs:[http://a http://b]}", "publish-timeout": "10ns", "error": "etcdserver: request timed out"}
+    logger.go:130: 2025-03-06T04:28:32.426+1400	WARN	failed to publish local member to cluster through raft	{"local-member-id": "1", "local-member-attributes": "{Name:node1 ClientURLs:[http://a http://b]}", "publish-timeout": "10ns", "error": "etcdserver: request timed out"}
+    logger.go:130: 2025-03-06T04:28:32.426+1400	WARN	failed to publish local member to cluster through raft	{"local-member-id": "1", "local-member-attributes": "{Name:node1 ClientURLs:[http://a http://b]}", "publish-timeout": "10ns", "error": "etcdserver: request timed out"}
+    logger.go:130: 2025-03-06T04:28:32.426+1400	WARN	stopped publish because server is stopping	{"local-member-id": "1", "local-member-attributes": "{Name:node1 ClientURLs:[http://a http://b]}", "publish-timeout": "10ns"}
 --- PASS: TestPublishV3Retry (0.00s)
 === RUN   TestUpdateVersion
 {"level":"info","msg":"setting up initial cluster version using v2 API","cluster-version":"2.0"}
@@ -18069,15 +18204,15 @@
 --- PASS: TestPanicAlternativeStringer (0.00s)
 === RUN   TestWarnOfExpensiveReadOnlyTxnRequest
 === RUN   TestWarnOfExpensiveReadOnlyTxnRequest/all_readonly_responses
-    logger.go:130: 2026-04-07T08:44:09.165-1200	WARN	apply request took too long	{"took": "1.0000212s", "expected-duration": "0s", "prefix": "read-only txn ", "request": "compare:<> success:<> failure:<>", "response": "responses:<range_response_count:0 range_response_count:0> size:8"}
+    logger.go:130: 2025-03-06T04:28:33.428+1400	WARN	apply request took too long	{"took": "1.00000892s", "expected-duration": "0s", "prefix": "read-only txn ", "request": "compare:<> success:<> failure:<>", "response": "responses:<range_response_count:0 range_response_count:0> size:8"}
 === RUN   TestWarnOfExpensiveReadOnlyTxnRequest/all_readonly_responses_with_partial_nil_responses
-    logger.go:130: 2026-04-07T08:44:09.165-1200	WARN	apply request took too long	{"took": "1.00000476s", "expected-duration": "0s", "prefix": "read-only txn ", "request": "compare:<> success:<> failure:<>", "response": "responses:<range_response_count:0 range_response:nil> size:6"}
+    logger.go:130: 2025-03-06T04:28:33.428+1400	WARN	apply request took too long	{"took": "1.0000036s", "expected-duration": "0s", "prefix": "read-only txn ", "request": "compare:<> success:<> failure:<>", "response": "responses:<range_response_count:0 range_response:nil> size:6"}
 === RUN   TestWarnOfExpensiveReadOnlyTxnRequest/all_readonly_responses_with_all_nil_responses
-    logger.go:130: 2026-04-07T08:44:09.165-1200	WARN	apply request took too long	{"took": "1.00000836s", "expected-duration": "0s", "prefix": "read-only txn ", "request": "compare:<> success:<> failure:<>", "response": "responses:<range_response:nil range_response:nil> size:4"}
+    logger.go:130: 2025-03-06T04:28:33.428+1400	WARN	apply request took too long	{"took": "1.00000292s", "expected-duration": "0s", "prefix": "read-only txn ", "request": "compare:<> success:<> failure:<>", "response": "responses:<range_response:nil range_response:nil> size:4"}
 === RUN   TestWarnOfExpensiveReadOnlyTxnRequest/partial_non_readonly_responses
-    logger.go:130: 2026-04-07T08:44:09.166-1200	WARN	apply request took too long	{"took": "1.0000062s", "expected-duration": "0s", "prefix": "read-only txn ", "request": "compare:<> success:<> failure:<>", "response": "responses:<range_response:nil> size:6"}
+    logger.go:130: 2025-03-06T04:28:33.429+1400	WARN	apply request took too long	{"took": "1.00000248s", "expected-duration": "0s", "prefix": "read-only txn ", "request": "compare:<> success:<> failure:<>", "response": "responses:<range_response:nil> size:6"}
 === RUN   TestWarnOfExpensiveReadOnlyTxnRequest/all_non_readonly_responses
-    logger.go:130: 2026-04-07T08:44:09.166-1200	WARN	apply request took too long	{"took": "1.0000026s", "expected-duration": "0s", "prefix": "read-only txn ", "request": "compare:<> success:<> failure:<>", "response": "responses:<> size:4"}
+    logger.go:130: 2025-03-06T04:28:33.429+1400	WARN	apply request took too long	{"took": "1.00000196s", "expected-duration": "0s", "prefix": "read-only txn ", "request": "compare:<> success:<> failure:<>", "response": "responses:<> size:4"}
 --- PASS: TestWarnOfExpensiveReadOnlyTxnRequest (0.00s)
     --- PASS: TestWarnOfExpensiveReadOnlyTxnRequest/all_readonly_responses (0.00s)
     --- PASS: TestWarnOfExpensiveReadOnlyTxnRequest/all_readonly_responses_with_partial_nil_responses (0.00s)
@@ -18089,56 +18224,56 @@
 === RUN   TestNewRaftLoggerFromZapCore
 --- PASS: TestNewRaftLoggerFromZapCore (0.00s)
 PASS
-ok  	go.etcd.io/etcd/server/etcdserver	2.445s
+ok  	go.etcd.io/etcd/server/etcdserver	2.390s
 ?   	go.etcd.io/etcd/server/etcdserver/api	[no test files]
 === RUN   TestHealthHandler
 === RUN   TestHealthHandler/Healthy_if_no_alarm
-    logger.go:130: 2026-04-07T08:44:11.072-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.076-1200	DEBUG	serving /health true
-    logger.go:130: 2026-04-07T08:44:11.076-1200	DEBUG	/health OK	{"status-code": 200}
+    logger.go:130: 2025-03-06T04:28:35.346+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.352+1400	DEBUG	serving /health true
+    logger.go:130: 2025-03-06T04:28:35.352+1400	DEBUG	/health OK	{"status-code": 200}
 === RUN   TestHealthHandler/Unhealthy_if_NOSPACE_alarm_is_on
-    logger.go:130: 2026-04-07T08:44:11.077-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.079-1200	WARN	serving /health false due to an alarm	{"alarm": "alarm:NOSPACE "}
-    logger.go:130: 2026-04-07T08:44:11.079-1200	WARN	/health error	{"output": "{\"health\":\"false\",\"reason\":\"ALARM NOSPACE\"}", "status-code": 503}
+    logger.go:130: 2025-03-06T04:28:35.353+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.355+1400	WARN	serving /health false due to an alarm	{"alarm": "alarm:NOSPACE "}
+    logger.go:130: 2025-03-06T04:28:35.355+1400	WARN	/health error	{"output": "{\"health\":\"false\",\"reason\":\"ALARM NOSPACE\"}", "status-code": 503}
 === RUN   TestHealthHandler/Healthy_if_NOSPACE_alarm_is_on_and_excluded
-    logger.go:130: 2026-04-07T08:44:11.080-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.081-1200	DEBUG	/health excluded alarm	{"alarm": "alarm:NOSPACE "}
-    logger.go:130: 2026-04-07T08:44:11.081-1200	DEBUG	serving /health true
-    logger.go:130: 2026-04-07T08:44:11.081-1200	DEBUG	/health OK	{"status-code": 200}
+    logger.go:130: 2025-03-06T04:28:35.356+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.357+1400	DEBUG	/health excluded alarm	{"alarm": "alarm:NOSPACE "}
+    logger.go:130: 2025-03-06T04:28:35.357+1400	DEBUG	serving /health true
+    logger.go:130: 2025-03-06T04:28:35.357+1400	DEBUG	/health OK	{"status-code": 200}
 === RUN   TestHealthHandler/Healthy_if_NOSPACE_alarm_is_excluded
-    logger.go:130: 2026-04-07T08:44:11.082-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.083-1200	DEBUG	serving /health true
-    logger.go:130: 2026-04-07T08:44:11.083-1200	DEBUG	/health OK	{"status-code": 200}
+    logger.go:130: 2025-03-06T04:28:35.358+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.359+1400	DEBUG	serving /health true
+    logger.go:130: 2025-03-06T04:28:35.359+1400	DEBUG	/health OK	{"status-code": 200}
 === RUN   TestHealthHandler/Healthy_if_multiple_NOSPACE_alarms_are_on_and_excluded
-    logger.go:130: 2026-04-07T08:44:11.084-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.085-1200	DEBUG	/health excluded alarm	{"alarm": "memberID:1 alarm:NOSPACE "}
-    logger.go:130: 2026-04-07T08:44:11.085-1200	DEBUG	/health excluded alarm	{"alarm": "memberID:2 alarm:NOSPACE "}
-    logger.go:130: 2026-04-07T08:44:11.085-1200	DEBUG	/health excluded alarm	{"alarm": "memberID:3 alarm:NOSPACE "}
-    logger.go:130: 2026-04-07T08:44:11.085-1200	DEBUG	serving /health true
-    logger.go:130: 2026-04-07T08:44:11.085-1200	DEBUG	/health OK	{"status-code": 200}
+    logger.go:130: 2025-03-06T04:28:35.360+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.361+1400	DEBUG	/health excluded alarm	{"alarm": "memberID:1 alarm:NOSPACE "}
+    logger.go:130: 2025-03-06T04:28:35.361+1400	DEBUG	/health excluded alarm	{"alarm": "memberID:2 alarm:NOSPACE "}
+    logger.go:130: 2025-03-06T04:28:35.361+1400	DEBUG	/health excluded alarm	{"alarm": "memberID:3 alarm:NOSPACE "}
+    logger.go:130: 2025-03-06T04:28:35.361+1400	DEBUG	serving /health true
+    logger.go:130: 2025-03-06T04:28:35.361+1400	DEBUG	/health OK	{"status-code": 200}
 === RUN   TestHealthHandler/Unhealthy_if_NOSPACE_alarms_is_excluded_and_CORRUPT_is_on
-    logger.go:130: 2026-04-07T08:44:11.086-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.087-1200	DEBUG	/health excluded alarm	{"alarm": "alarm:NOSPACE "}
-    logger.go:130: 2026-04-07T08:44:11.087-1200	WARN	serving /health false due to an alarm	{"alarm": "memberID:1 alarm:CORRUPT "}
-    logger.go:130: 2026-04-07T08:44:11.087-1200	WARN	/health error	{"output": "{\"health\":\"false\",\"reason\":\"ALARM CORRUPT\"}", "status-code": 503}
+    logger.go:130: 2025-03-06T04:28:35.363+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.365+1400	DEBUG	/health excluded alarm	{"alarm": "alarm:NOSPACE "}
+    logger.go:130: 2025-03-06T04:28:35.365+1400	WARN	serving /health false due to an alarm	{"alarm": "memberID:1 alarm:CORRUPT "}
+    logger.go:130: 2025-03-06T04:28:35.365+1400	WARN	/health error	{"output": "{\"health\":\"false\",\"reason\":\"ALARM CORRUPT\"}", "status-code": 503}
 === RUN   TestHealthHandler/Unhealthy_if_both_NOSPACE_and_CORRUPT_are_on_and_excluded
-    logger.go:130: 2026-04-07T08:44:11.088-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.089-1200	DEBUG	/health excluded alarm	{"alarm": "alarm:NOSPACE "}
-    logger.go:130: 2026-04-07T08:44:11.089-1200	DEBUG	/health excluded alarm	{"alarm": "memberID:1 alarm:CORRUPT "}
-    logger.go:130: 2026-04-07T08:44:11.089-1200	DEBUG	serving /health true
-    logger.go:130: 2026-04-07T08:44:11.089-1200	DEBUG	/health OK	{"status-code": 200}
+    logger.go:130: 2025-03-06T04:28:35.366+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.367+1400	DEBUG	/health excluded alarm	{"alarm": "alarm:NOSPACE "}
+    logger.go:130: 2025-03-06T04:28:35.367+1400	DEBUG	/health excluded alarm	{"alarm": "memberID:1 alarm:CORRUPT "}
+    logger.go:130: 2025-03-06T04:28:35.367+1400	DEBUG	serving /health true
+    logger.go:130: 2025-03-06T04:28:35.367+1400	DEBUG	/health OK	{"status-code": 200}
 === RUN   TestHealthHandler/Unhealthy_if_api_is_not_available
-    logger.go:130: 2026-04-07T08:44:11.090-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.091-1200	WARN	serving /health false; Range fails	{"error": "Unexpected error"}
-    logger.go:130: 2026-04-07T08:44:11.091-1200	WARN	/health error	{"output": "{\"health\":\"false\",\"reason\":\"RANGE ERROR:Unexpected error\"}", "status-code": 503}
+    logger.go:130: 2025-03-06T04:28:35.368+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.369+1400	WARN	serving /health false; Range fails	{"error": "Unexpected error"}
+    logger.go:130: 2025-03-06T04:28:35.369+1400	WARN	/health error	{"output": "{\"health\":\"false\",\"reason\":\"RANGE ERROR:Unexpected error\"}", "status-code": 503}
 === RUN   TestHealthHandler/Unhealthy_if_no_leader
-    logger.go:130: 2026-04-07T08:44:11.092-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.093-1200	WARN	serving /health false; no leader
-    logger.go:130: 2026-04-07T08:44:11.093-1200	WARN	/health error	{"output": "{\"health\":\"false\",\"reason\":\"RAFT NO LEADER\"}", "status-code": 503}
+    logger.go:130: 2025-03-06T04:28:35.370+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.371+1400	WARN	serving /health false; no leader
+    logger.go:130: 2025-03-06T04:28:35.371+1400	WARN	/health error	{"output": "{\"health\":\"false\",\"reason\":\"RAFT NO LEADER\"}", "status-code": 503}
 === RUN   TestHealthHandler/Healthy_if_no_leader_and_serializable=true
-    logger.go:130: 2026-04-07T08:44:11.094-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.096-1200	DEBUG	serving /health true
-    logger.go:130: 2026-04-07T08:44:11.096-1200	DEBUG	/health OK	{"status-code": 200}
+    logger.go:130: 2025-03-06T04:28:35.372+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.373+1400	DEBUG	serving /health true
+    logger.go:130: 2025-03-06T04:28:35.373+1400	DEBUG	/health OK	{"status-code": 200}
 --- PASS: TestHealthHandler (0.03s)
     --- PASS: TestHealthHandler/Healthy_if_no_alarm (0.01s)
     --- PASS: TestHealthHandler/Unhealthy_if_NOSPACE_alarm_is_on (0.00s)
@@ -18152,40 +18287,40 @@
     --- PASS: TestHealthHandler/Healthy_if_no_leader_and_serializable=true (0.00s)
 === RUN   TestHttpSubPath
 === RUN   TestHttpSubPath//readyz/data_corruption_ok
-    logger.go:130: 2026-04-07T08:44:11.098-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.098-1200	DEBUG	Health check OK	{"path": "/readyz/data_corruption", "reason": "[+]data_corruption ok\n", "status-code": 200}
+    logger.go:130: 2025-03-06T04:28:35.374+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.375+1400	DEBUG	Health check OK	{"path": "/readyz/data_corruption", "reason": "[+]data_corruption ok\n", "status-code": 200}
 === RUN   TestHttpSubPath//readyz/serializable_read_not_ok_with_error
-    logger.go:130: 2026-04-07T08:44:11.100-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.101-1200	ERROR	Health check error	{"path": "/readyz/serializable_read", "reason": "[-]serializable_read failed: Unexpected error\n", "status-code": 503}
+    logger.go:130: 2025-03-06T04:28:35.379+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.380+1400	ERROR	Health check error	{"path": "/readyz/serializable_read", "reason": "[-]serializable_read failed: Unexpected error\n", "status-code": 503}
 === RUN   TestHttpSubPath//readyz/non_exist_404
-    logger.go:130: 2026-04-07T08:44:11.103-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.382+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
 --- PASS: TestHttpSubPath (0.01s)
     --- PASS: TestHttpSubPath//readyz/data_corruption_ok (0.00s)
     --- PASS: TestHttpSubPath//readyz/serializable_read_not_ok_with_error (0.00s)
     --- PASS: TestHttpSubPath//readyz/non_exist_404 (0.00s)
 === RUN   TestDataCorruptionCheck
 === RUN   TestDataCorruptionCheck/Live_if_CORRUPT_alarm_is_on
-    logger.go:130: 2026-04-07T08:44:11.107-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.108-1200	DEBUG	Health check OK	{"path": "/livez", "reason": "[+]serializable_read ok\n", "status-code": 200}
-    logger.go:130: 2026-04-07T08:44:11.109-1200	DEBUG	Health check OK	{"path": "/livez", "reason": "[+]serializable_read ok\n", "status-code": 200}
+    logger.go:130: 2025-03-06T04:28:35.385+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.387+1400	DEBUG	Health check OK	{"path": "/livez", "reason": "[+]serializable_read ok\n", "status-code": 200}
+    logger.go:130: 2025-03-06T04:28:35.388+1400	DEBUG	Health check OK	{"path": "/livez", "reason": "[+]serializable_read ok\n", "status-code": 200}
 === RUN   TestDataCorruptionCheck/Not_ready_if_CORRUPT_alarm_is_on
-    logger.go:130: 2026-04-07T08:44:11.109-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.110-1200	DEBUG	Health check OK	{"path": "/readyz", "reason": "[+]data_corruption ok\n[+]serializable_read ok\n[+]linearizable_read ok\n", "status-code": 200}
-    logger.go:130: 2026-04-07T08:44:11.110-1200	ERROR	Health check error	{"path": "/readyz", "reason": "[-]data_corruption failed: alarm activated: CORRUPT\n[+]serializable_read ok\n[+]linearizable_read ok\n", "status-code": 503}
+    logger.go:130: 2025-03-06T04:28:35.389+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.389+1400	DEBUG	Health check OK	{"path": "/readyz", "reason": "[+]linearizable_read ok\n[+]data_corruption ok\n[+]serializable_read ok\n", "status-code": 200}
+    logger.go:130: 2025-03-06T04:28:35.390+1400	ERROR	Health check error	{"path": "/readyz", "reason": "[-]data_corruption failed: alarm activated: CORRUPT\n[+]serializable_read ok\n[+]linearizable_read ok\n", "status-code": 503}
 === RUN   TestDataCorruptionCheck/ready_if_CORRUPT_alarm_is_not_on
-    logger.go:130: 2026-04-07T08:44:11.111-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.112-1200	DEBUG	Health check OK	{"path": "/readyz", "reason": "[+]data_corruption ok\n[+]serializable_read ok\n[+]linearizable_read ok\n", "status-code": 200}
-    logger.go:130: 2026-04-07T08:44:11.112-1200	DEBUG	Health check OK	{"path": "/readyz", "reason": "[+]data_corruption ok\n[+]serializable_read ok\n[+]linearizable_read ok\n", "status-code": 200}
+    logger.go:130: 2025-03-06T04:28:35.390+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.391+1400	DEBUG	Health check OK	{"path": "/readyz", "reason": "[+]data_corruption ok\n[+]serializable_read ok\n[+]linearizable_read ok\n", "status-code": 200}
+    logger.go:130: 2025-03-06T04:28:35.392+1400	DEBUG	Health check OK	{"path": "/readyz", "reason": "[+]data_corruption ok\n[+]serializable_read ok\n[+]linearizable_read ok\n", "status-code": 200}
 === RUN   TestDataCorruptionCheck/ready_if_CORRUPT_alarm_is_excluded
-    logger.go:130: 2026-04-07T08:44:11.112-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.113-1200	DEBUG	Health check OK	{"path": "/readyz", "reason": "[+]serializable_read ok\n[+]linearizable_read ok\n", "status-code": 200}
-    logger.go:130: 2026-04-07T08:44:11.113-1200	DEBUG	Health check OK	{"path": "/readyz", "reason": "[+]serializable_read ok\n[+]linearizable_read ok\n", "status-code": 200}
+    logger.go:130: 2025-03-06T04:28:35.392+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.394+1400	DEBUG	Health check OK	{"path": "/readyz", "reason": "[+]serializable_read ok\n[+]linearizable_read ok\n", "status-code": 200}
+    logger.go:130: 2025-03-06T04:28:35.394+1400	DEBUG	Health check OK	{"path": "/readyz", "reason": "[+]serializable_read ok\n[+]linearizable_read ok\n", "status-code": 200}
 === RUN   TestDataCorruptionCheck/Not_ready_if_CORRUPT_alarm_is_on#01
-    logger.go:130: 2026-04-07T08:44:11.114-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.115-1200	WARN	some health checks cannot be excluded	{"missing-health-checks": "\"non_exist\""}
-    logger.go:130: 2026-04-07T08:44:11.115-1200	DEBUG	Health check OK	{"path": "/readyz", "reason": "[+]data_corruption ok\n[+]serializable_read ok\n[+]linearizable_read ok\n", "status-code": 200}
-    logger.go:130: 2026-04-07T08:44:11.116-1200	WARN	some health checks cannot be excluded	{"missing-health-checks": "\"non_exist\""}
-    logger.go:130: 2026-04-07T08:44:11.116-1200	ERROR	Health check error	{"path": "/readyz", "reason": "[-]data_corruption failed: alarm activated: CORRUPT\n[+]serializable_read ok\n[+]linearizable_read ok\n", "status-code": 503}
+    logger.go:130: 2025-03-06T04:28:35.394+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.395+1400	WARN	some health checks cannot be excluded	{"missing-health-checks": "\"non_exist\""}
+    logger.go:130: 2025-03-06T04:28:35.395+1400	DEBUG	Health check OK	{"path": "/readyz", "reason": "[+]data_corruption ok\n[+]serializable_read ok\n[+]linearizable_read ok\n", "status-code": 200}
+    logger.go:130: 2025-03-06T04:28:35.396+1400	WARN	some health checks cannot be excluded	{"missing-health-checks": "\"non_exist\""}
+    logger.go:130: 2025-03-06T04:28:35.396+1400	ERROR	Health check error	{"path": "/readyz", "reason": "[+]serializable_read ok\n[+]linearizable_read ok\n[-]data_corruption failed: alarm activated: CORRUPT\n", "status-code": 503}
 --- PASS: TestDataCorruptionCheck (0.01s)
     --- PASS: TestDataCorruptionCheck/Live_if_CORRUPT_alarm_is_on (0.00s)
     --- PASS: TestDataCorruptionCheck/Not_ready_if_CORRUPT_alarm_is_on (0.00s)
@@ -18194,28 +18329,28 @@
     --- PASS: TestDataCorruptionCheck/Not_ready_if_CORRUPT_alarm_is_on#01 (0.00s)
 === RUN   TestSerializableReadCheck
 === RUN   TestSerializableReadCheck/Alive_normal
-    logger.go:130: 2026-04-07T08:44:11.118-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.118-1200	DEBUG	Health check OK	{"path": "/livez", "reason": "[+]serializable_read ok\n", "status-code": 200}
+    logger.go:130: 2025-03-06T04:28:35.397+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.398+1400	DEBUG	Health check OK	{"path": "/livez", "reason": "[+]serializable_read ok\n", "status-code": 200}
 === RUN   TestSerializableReadCheck/Not_alive_if_range_api_is_not_available
-    logger.go:130: 2026-04-07T08:44:11.120-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.121-1200	ERROR	Health check error	{"path": "/livez", "reason": "[-]serializable_read failed: Unexpected error\n", "status-code": 503}
+    logger.go:130: 2025-03-06T04:28:35.401+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.402+1400	ERROR	Health check error	{"path": "/livez", "reason": "[-]serializable_read failed: Unexpected error\n", "status-code": 503}
 === RUN   TestSerializableReadCheck/Not_ready_if_range_api_is_not_available
-    logger.go:130: 2026-04-07T08:44:11.123-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.125-1200	ERROR	Health check error	{"path": "/readyz", "reason": "[+]data_corruption ok\n[-]serializable_read failed: Unexpected error\n[+]linearizable_read ok\n", "status-code": 503}
+    logger.go:130: 2025-03-06T04:28:35.404+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.405+1400	ERROR	Health check error	{"path": "/readyz", "reason": "[-]serializable_read failed: Unexpected error\n[+]linearizable_read ok\n[+]data_corruption ok\n", "status-code": 503}
 --- PASS: TestSerializableReadCheck (0.01s)
     --- PASS: TestSerializableReadCheck/Alive_normal (0.00s)
     --- PASS: TestSerializableReadCheck/Not_alive_if_range_api_is_not_available (0.00s)
     --- PASS: TestSerializableReadCheck/Not_ready_if_range_api_is_not_available (0.00s)
 === RUN   TestLinearizableReadCheck
 === RUN   TestLinearizableReadCheck/Alive_normal
-    logger.go:130: 2026-04-07T08:44:11.127-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.128-1200	DEBUG	Health check OK	{"path": "/livez", "reason": "[+]serializable_read ok\n", "status-code": 200}
+    logger.go:130: 2025-03-06T04:28:35.409+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.410+1400	DEBUG	Health check OK	{"path": "/livez", "reason": "[+]serializable_read ok\n", "status-code": 200}
 === RUN   TestLinearizableReadCheck/Alive_if_lineariable_range_api_is_not_available
-    logger.go:130: 2026-04-07T08:44:11.130-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.131-1200	DEBUG	Health check OK	{"path": "/livez", "reason": "[+]serializable_read ok\n", "status-code": 200}
+    logger.go:130: 2025-03-06T04:28:35.412+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.413+1400	DEBUG	Health check OK	{"path": "/livez", "reason": "[+]serializable_read ok\n", "status-code": 200}
 === RUN   TestLinearizableReadCheck/Not_ready_if_range_api_is_not_available
-    logger.go:130: 2026-04-07T08:44:11.134-1200	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
-    logger.go:130: 2026-04-07T08:44:11.135-1200	ERROR	Health check error	{"path": "/readyz", "reason": "[+]data_corruption ok\n[+]serializable_read ok\n[-]linearizable_read failed: Unexpected error\n", "status-code": 503}
+    logger.go:130: 2025-03-06T04:28:35.417+1400	WARN	use default bcrypt cost instead of the invalid given cost	{"min-cost": 4, "max-cost": 31, "default-cost": 10, "given-cost": 0}
+    logger.go:130: 2025-03-06T04:28:35.418+1400	ERROR	Health check error	{"path": "/readyz", "reason": "[+]serializable_read ok\n[-]linearizable_read failed: Unexpected error\n[+]data_corruption ok\n", "status-code": 503}
 --- PASS: TestLinearizableReadCheck (0.01s)
     --- PASS: TestLinearizableReadCheck/Alive_normal (0.00s)
     --- PASS: TestLinearizableReadCheck/Alive_if_lineariable_range_api_is_not_available (0.00s)
@@ -18229,7 +18364,7 @@
 === RUN   TestServeMemberPromoteFails
 --- PASS: TestServeMemberPromoteFails (0.00s)
 === RUN   TestNewPeerHandlerOnMembersPromotePrefix
-{"level":"warn","msg":"unexpected v2 response error","remote-addr":"127.0.0.1:42100","internal-server-error":"PromoteMember not implemented in fakeServer"}
+{"level":"warn","msg":"unexpected v2 response error","remote-addr":"127.0.0.1:38818","internal-server-error":"PromoteMember not implemented in fakeServer"}
 {"level":"warn","msg":"failed to promote a member","member-id":"1","error":"PromoteMember not implemented in fakeServer"}
 --- PASS: TestNewPeerHandlerOnMembersPromotePrefix (0.00s)
 === RUN   TestServeVersion
@@ -18237,7 +18372,7 @@
 === RUN   TestServeVersionFails
 --- PASS: TestServeVersionFails (0.00s)
 PASS
-ok  	go.etcd.io/etcd/server/etcdserver/api/etcdhttp	0.107s
+ok  	go.etcd.io/etcd/server/etcdserver/api/etcdhttp	0.117s
 === RUN   TestClusterMember
 --- PASS: TestClusterMember (0.00s)
 === RUN   TestClusterMemberByName
@@ -18261,52 +18396,52 @@
 {"level":"info","msg":"resolved URL Host","url":"http://127.0.0.1:2379","host":"127.0.0.1:2379","resolved-addr":"127.0.0.1:2379"}
 --- PASS: TestClusterValidateAndAssignIDs (0.00s)
 === RUN   TestClusterValidateConfigurationChange
-    logger.go:130: 2026-04-07T08:44:12.701-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "1", "added-peer-peer-urls": ["http://127.0.0.1:1"]}
-    logger.go:130: 2026-04-07T08:44:12.702-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "2", "added-peer-peer-urls": ["http://127.0.0.1:2"]}
-    logger.go:130: 2026-04-07T08:44:12.702-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "3", "added-peer-peer-urls": ["http://127.0.0.1:3"]}
-    logger.go:130: 2026-04-07T08:44:12.702-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "4", "added-peer-peer-urls": ["http://127.0.0.1:4"]}
-    logger.go:130: 2026-04-07T08:44:12.702-1200	INFO	removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "4", "removed-remote-peer-urls": ["http://127.0.0.1:4"]}
+    logger.go:130: 2025-03-06T04:28:37.077+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "1", "added-peer-peer-urls": ["http://127.0.0.1:1"]}
+    logger.go:130: 2025-03-06T04:28:37.077+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "2", "added-peer-peer-urls": ["http://127.0.0.1:2"]}
+    logger.go:130: 2025-03-06T04:28:37.077+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "3", "added-peer-peer-urls": ["http://127.0.0.1:3"]}
+    logger.go:130: 2025-03-06T04:28:37.077+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "4", "added-peer-peer-urls": ["http://127.0.0.1:4"]}
+    logger.go:130: 2025-03-06T04:28:37.077+1400	INFO	removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "4", "removed-remote-peer-urls": ["http://127.0.0.1:4"]}
 --- PASS: TestClusterValidateConfigurationChange (0.00s)
 === RUN   TestClusterGenID
-    logger.go:130: 2026-04-07T08:44:12.703-1200	INFO	added member	{"cluster-id": "869b3badfbf1d6b7", "local-member-id": "0", "added-peer-id": "3", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:37.078+1400	INFO	added member	{"cluster-id": "869b3badfbf1d6b7", "local-member-id": "0", "added-peer-id": "3", "added-peer-peer-urls": []}
 --- PASS: TestClusterGenID (0.00s)
 === RUN   TestNodeToMemberBad
 --- PASS: TestNodeToMemberBad (0.00s)
 === RUN   TestClusterAddMember
-    logger.go:130: 2026-04-07T08:44:12.703-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "1", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:37.079+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "1", "added-peer-peer-urls": []}
 --- PASS: TestClusterAddMember (0.00s)
 === RUN   TestClusterAddMemberAsLearner
-    logger.go:130: 2026-04-07T08:44:12.703-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "1", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:37.079+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "1", "added-peer-peer-urls": []}
 --- PASS: TestClusterAddMemberAsLearner (0.00s)
 === RUN   TestClusterMembers
 --- PASS: TestClusterMembers (0.00s)
 === RUN   TestClusterRemoveMember
-    logger.go:130: 2026-04-07T08:44:12.703-1200	WARN	skipped removing already removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "1"}
+    logger.go:130: 2025-03-06T04:28:37.079+1400	WARN	skipped removing already removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "1"}
 --- PASS: TestClusterRemoveMember (0.00s)
 === RUN   TestClusterUpdateAttributes
-    logger.go:130: 2026-04-07T08:44:12.704-1200	WARN	skipped attributes update of removed member	{"cluster-id": "0", "local-member-id": "0", "updated-peer-id": "1"}
+    logger.go:130: 2025-03-06T04:28:37.079+1400	WARN	skipped attributes update of removed member	{"cluster-id": "0", "local-member-id": "0", "updated-peer-id": "1"}
 --- PASS: TestClusterUpdateAttributes (0.00s)
 === RUN   TestNodeToMember
 --- PASS: TestNodeToMember (0.00s)
 === RUN   TestIsReadyToAddVotingMember
-    logger.go:130: 2026-04-07T08:44:12.704-1200	WARN	rejecting member add; started member will be less than quorum	{"number-of-started-member": 0, "quorum": 3, "cluster-id": "0", "local-member-id": "0"}
-    logger.go:130: 2026-04-07T08:44:12.704-1200	WARN	rejecting member add; started member will be less than quorum	{"number-of-started-member": 1, "quorum": 2, "cluster-id": "0", "local-member-id": "0"}
-    logger.go:130: 2026-04-07T08:44:12.704-1200	WARN	rejecting member add; started member will be less than quorum	{"number-of-started-member": 1, "quorum": 3, "cluster-id": "0", "local-member-id": "0"}
-    logger.go:130: 2026-04-07T08:44:12.704-1200	DEBUG	number of started member is 1; can accept add member request
-    logger.go:130: 2026-04-07T08:44:12.704-1200	WARN	rejecting member add; started member will be less than quorum	{"number-of-started-member": 2, "quorum": 3, "cluster-id": "0", "local-member-id": "0"}
-    logger.go:130: 2026-04-07T08:44:12.704-1200	WARN	rejecting member add; started member will be less than quorum	{"number-of-started-member": 0, "quorum": 1, "cluster-id": "0", "local-member-id": "0"}
-    logger.go:130: 2026-04-07T08:44:12.704-1200	WARN	rejecting member add; started member will be less than quorum	{"number-of-started-member": 1, "quorum": 2, "cluster-id": "0", "local-member-id": "0"}
+    logger.go:130: 2025-03-06T04:28:37.079+1400	WARN	rejecting member add; started member will be less than quorum	{"number-of-started-member": 0, "quorum": 3, "cluster-id": "0", "local-member-id": "0"}
+    logger.go:130: 2025-03-06T04:28:37.079+1400	WARN	rejecting member add; started member will be less than quorum	{"number-of-started-member": 1, "quorum": 2, "cluster-id": "0", "local-member-id": "0"}
+    logger.go:130: 2025-03-06T04:28:37.079+1400	WARN	rejecting member add; started member will be less than quorum	{"number-of-started-member": 1, "quorum": 3, "cluster-id": "0", "local-member-id": "0"}
+    logger.go:130: 2025-03-06T04:28:37.079+1400	DEBUG	number of started member is 1; can accept add member request
+    logger.go:130: 2025-03-06T04:28:37.079+1400	WARN	rejecting member add; started member will be less than quorum	{"number-of-started-member": 2, "quorum": 3, "cluster-id": "0", "local-member-id": "0"}
+    logger.go:130: 2025-03-06T04:28:37.079+1400	WARN	rejecting member add; started member will be less than quorum	{"number-of-started-member": 0, "quorum": 1, "cluster-id": "0", "local-member-id": "0"}
+    logger.go:130: 2025-03-06T04:28:37.080+1400	WARN	rejecting member add; started member will be less than quorum	{"number-of-started-member": 1, "quorum": 2, "cluster-id": "0", "local-member-id": "0"}
 --- PASS: TestIsReadyToAddVotingMember (0.00s)
 === RUN   TestIsReadyToRemoveVotingMember
-    logger.go:130: 2026-04-07T08:44:12.704-1200	WARN	rejecting member remove; started member will be less than quorum	{"number-of-started-member": 0, "quorum": 1, "cluster-id": "0", "local-member-id": "0"}
-    logger.go:130: 2026-04-07T08:44:12.704-1200	WARN	rejecting member remove; started member will be less than quorum	{"number-of-started-member": 0, "quorum": 2, "cluster-id": "0", "local-member-id": "0"}
-    logger.go:130: 2026-04-07T08:44:12.704-1200	WARN	rejecting member remove; started member will be less than quorum	{"number-of-started-member": 1, "quorum": 2, "cluster-id": "0", "local-member-id": "0"}
-    logger.go:130: 2026-04-07T08:44:12.704-1200	WARN	rejecting member remove; started member will be less than quorum	{"number-of-started-member": 0, "quorum": 1, "cluster-id": "0", "local-member-id": "0"}
-    logger.go:130: 2026-04-07T08:44:12.704-1200	WARN	rejecting member remove; started member will be less than quorum	{"number-of-started-member": 0, "quorum": 1, "cluster-id": "0", "local-member-id": "0"}
+    logger.go:130: 2025-03-06T04:28:37.080+1400	WARN	rejecting member remove; started member will be less than quorum	{"number-of-started-member": 0, "quorum": 1, "cluster-id": "0", "local-member-id": "0"}
+    logger.go:130: 2025-03-06T04:28:37.080+1400	WARN	rejecting member remove; started member will be less than quorum	{"number-of-started-member": 0, "quorum": 2, "cluster-id": "0", "local-member-id": "0"}
+    logger.go:130: 2025-03-06T04:28:37.080+1400	WARN	rejecting member remove; started member will be less than quorum	{"number-of-started-member": 1, "quorum": 2, "cluster-id": "0", "local-member-id": "0"}
+    logger.go:130: 2025-03-06T04:28:37.080+1400	WARN	rejecting member remove; started member will be less than quorum	{"number-of-started-member": 0, "quorum": 1, "cluster-id": "0", "local-member-id": "0"}
+    logger.go:130: 2025-03-06T04:28:37.080+1400	WARN	rejecting member remove; started member will be less than quorum	{"number-of-started-member": 0, "quorum": 1, "cluster-id": "0", "local-member-id": "0"}
 --- PASS: TestIsReadyToRemoveVotingMember (0.00s)
 === RUN   TestIsReadyToPromoteMember
-    logger.go:130: 2026-04-07T08:44:12.704-1200	WARN	rejecting member promote; started member will be less than quorum	{"number-of-started-member": 1, "quorum": 2, "cluster-id": "0", "local-member-id": "0"}
-    logger.go:130: 2026-04-07T08:44:12.704-1200	WARN	rejecting member promote; started member will be less than quorum	{"number-of-started-member": 2, "quorum": 3, "cluster-id": "0", "local-member-id": "0"}
+    logger.go:130: 2025-03-06T04:28:37.080+1400	WARN	rejecting member promote; started member will be less than quorum	{"number-of-started-member": 1, "quorum": 2, "cluster-id": "0", "local-member-id": "0"}
+    logger.go:130: 2025-03-06T04:28:37.080+1400	WARN	rejecting member promote; started member will be less than quorum	{"number-of-started-member": 2, "quorum": 3, "cluster-id": "0", "local-member-id": "0"}
 --- PASS: TestIsReadyToPromoteMember (0.00s)
 === RUN   TestIsVersionChangable
 === RUN   TestIsVersionChangable/When_local_version_is_one_minor_lower_than_cluster_version
@@ -18328,21 +18463,21 @@
     --- PASS: TestIsVersionChangable/When_local_version_is_two_minor_lower_than_cluster_version (0.00s)
 === RUN   TestAddMemberSyncsBackendAndStoreV2
 === RUN   TestAddMemberSyncsBackendAndStoreV2/Adding_new_member_should_succeed
-    logger.go:130: 2026-04-07T08:44:12.705-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "b93a5619e3de3cc8", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:37.081+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "d3c4c4130c698d1", "added-peer-peer-urls": []}
 === RUN   TestAddMemberSyncsBackendAndStoreV2/Adding_member_should_succeed_if_it_was_only_in_storeV2
-    logger.go:130: 2026-04-07T08:44:12.706-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "b93a5619e3de3cc8", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:37.082+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "d3c4c4130c698d1", "added-peer-peer-urls": []}
 === RUN   TestAddMemberSyncsBackendAndStoreV2/Adding_member_should_succeed_if_it_was_only_in_backend
-    logger.go:130: 2026-04-07T08:44:12.707-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "b93a5619e3de3cc8", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:37.084+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "d3c4c4130c698d1", "added-peer-peer-urls": []}
 === RUN   TestAddMemberSyncsBackendAndStoreV2/Adding_member_should_fail_if_it_exists_in_both
-    logger.go:130: 2026-04-07T08:44:12.709-1200	PANIC	failed to save member to store	{"member-id": "b93a5619e3de3cc8", "error": "Key already exists (/0/members/b93a5619e3de3cc8/raftAttributes)"}
+    logger.go:130: 2025-03-06T04:28:37.085+1400	PANIC	failed to save member to store	{"member-id": "d3c4c4130c698d1", "error": "Key already exists (/0/members/d3c4c4130c698d1/raftAttributes)"}
 === RUN   TestAddMemberSyncsBackendAndStoreV2/Adding_member_should_fail_if_it_exists_in_storeV2_and_backend_is_nil
-    logger.go:130: 2026-04-07T08:44:12.710-1200	PANIC	failed to save member to store	{"member-id": "b93a5619e3de3cc8", "error": "Key already exists (/0/members/b93a5619e3de3cc8/raftAttributes)"}
+    logger.go:130: 2025-03-06T04:28:37.087+1400	PANIC	failed to save member to store	{"member-id": "d3c4c4130c698d1", "error": "Key already exists (/0/members/d3c4c4130c698d1/raftAttributes)"}
 === RUN   TestAddMemberSyncsBackendAndStoreV2/Adding_member_should_succeed_if_it_exists_in_backend_and_storageV2_is_nil
-    logger.go:130: 2026-04-07T08:44:12.711-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "b93a5619e3de3cc8", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:37.088+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "d3c4c4130c698d1", "added-peer-peer-urls": []}
 === RUN   TestAddMemberSyncsBackendAndStoreV2/Adding_new_member_should_succeed_if_backend_is_nil
-    logger.go:130: 2026-04-07T08:44:12.712-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "b93a5619e3de3cc8", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:37.089+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "d3c4c4130c698d1", "added-peer-peer-urls": []}
 === RUN   TestAddMemberSyncsBackendAndStoreV2/Adding_new_member_should_fail_if_storageV2_is_nil
-    logger.go:130: 2026-04-07T08:44:12.713-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "b93a5619e3de3cc8", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:37.092+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "d3c4c4130c698d1", "added-peer-peer-urls": []}
 --- PASS: TestAddMemberSyncsBackendAndStoreV2 (0.01s)
     --- PASS: TestAddMemberSyncsBackendAndStoreV2/Adding_new_member_should_succeed (0.00s)
     --- PASS: TestAddMemberSyncsBackendAndStoreV2/Adding_member_should_succeed_if_it_was_only_in_storeV2 (0.00s)
@@ -18354,21 +18489,21 @@
     --- PASS: TestAddMemberSyncsBackendAndStoreV2/Adding_new_member_should_fail_if_storageV2_is_nil (0.00s)
 === RUN   TestRemoveMemberSyncsBackendAndStoreV2
 === RUN   TestRemoveMemberSyncsBackendAndStoreV2/Removing_new_member_should_fail
-    logger.go:130: 2026-04-07T08:44:12.714-1200	PANIC	failed to delete member from store	{"member-id": "b93a5619e3de3cc8", "error": "Key not found (/0)"}
+    logger.go:130: 2025-03-06T04:28:37.093+1400	PANIC	failed to delete member from store	{"member-id": "d3c4c4130c698d1", "error": "Key not found (/0)"}
 === RUN   TestRemoveMemberSyncsBackendAndStoreV2/Removing_member_should_succeed_if_it_was_only_in_storeV2
-    logger.go:130: 2026-04-07T08:44:12.715-1200	WARN	skipped removing already removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "b93a5619e3de3cc8"}
+    logger.go:130: 2025-03-06T04:28:37.094+1400	WARN	skipped removing already removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "d3c4c4130c698d1"}
 === RUN   TestRemoveMemberSyncsBackendAndStoreV2/Removing_member_should_succeed_if_it_was_only_in_backend
-    logger.go:130: 2026-04-07T08:44:12.716-1200	WARN	skipped removing already removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "b93a5619e3de3cc8"}
+    logger.go:130: 2025-03-06T04:28:37.096+1400	WARN	skipped removing already removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "d3c4c4130c698d1"}
 === RUN   TestRemoveMemberSyncsBackendAndStoreV2/Removing_member_should_succeed_if_it_exists_in_both
-    logger.go:130: 2026-04-07T08:44:12.719-1200	WARN	skipped removing already removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "b93a5619e3de3cc8"}
+    logger.go:130: 2025-03-06T04:28:37.097+1400	WARN	skipped removing already removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "d3c4c4130c698d1"}
 === RUN   TestRemoveMemberSyncsBackendAndStoreV2/Removing_new_member_should_fail_if_backend_is_nil
-    logger.go:130: 2026-04-07T08:44:12.720-1200	PANIC	failed to delete member from store	{"member-id": "b93a5619e3de3cc8", "error": "Key not found (/0)"}
+    logger.go:130: 2025-03-06T04:28:37.098+1400	PANIC	failed to delete member from store	{"member-id": "d3c4c4130c698d1", "error": "Key not found (/0)"}
 === RUN   TestRemoveMemberSyncsBackendAndStoreV2/Removing_new_member_should_succeed_if_storageV2_is_nil
-    logger.go:130: 2026-04-07T08:44:12.721-1200	WARN	skipped removing already removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "b93a5619e3de3cc8"}
+    logger.go:130: 2025-03-06T04:28:37.099+1400	WARN	skipped removing already removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "d3c4c4130c698d1"}
 === RUN   TestRemoveMemberSyncsBackendAndStoreV2/Removing_member_should_succeed_if_it_exists_in_v2storage_and_backend_is_nil
-    logger.go:130: 2026-04-07T08:44:12.722-1200	WARN	skipped removing already removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "b93a5619e3de3cc8"}
+    logger.go:130: 2025-03-06T04:28:37.100+1400	WARN	skipped removing already removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "d3c4c4130c698d1"}
 === RUN   TestRemoveMemberSyncsBackendAndStoreV2/Removing_member_should_succeed_if_it_exists_in_backend_and_storageV2_is_nil
-    logger.go:130: 2026-04-07T08:44:12.723-1200	WARN	skipped removing already removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "b93a5619e3de3cc8"}
+    logger.go:130: 2025-03-06T04:28:37.101+1400	WARN	skipped removing already removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "d3c4c4130c698d1"}
 --- PASS: TestRemoveMemberSyncsBackendAndStoreV2 (0.01s)
     --- PASS: TestRemoveMemberSyncsBackendAndStoreV2/Removing_new_member_should_fail (0.00s)
     --- PASS: TestRemoveMemberSyncsBackendAndStoreV2/Removing_member_should_succeed_if_it_was_only_in_storeV2 (0.00s)
@@ -18397,7 +18532,7 @@
     downgrade_test.go:132: /tmp/test-log-must-detect-downgrade-7
 === RUN   TestMustDetectDowngrade/Failed_when_downgrade_is_enabled_and_local_version_is_out_of_range
     downgrade_test.go:132: /tmp/test-log-must-detect-downgrade-8
---- PASS: TestMustDetectDowngrade (0.08s)
+--- PASS: TestMustDetectDowngrade (0.10s)
     --- PASS: TestMustDetectDowngrade/Succeeded_when_downgrade_is_disabled_and_cluster_version_is_nil (0.01s)
     --- PASS: TestMustDetectDowngrade/Succeeded_when_downgrade_is_disabled_and_cluster_version_is_one_minor_lower (0.01s)
     --- PASS: TestMustDetectDowngrade/Succeeded_when_downgrade_is_disabled_and_cluster_version_is_server_version (0.01s)
@@ -18420,11 +18555,11 @@
 === RUN   TestMemberClone
 --- PASS: TestMemberClone (0.00s)
 === RUN   TestAddRemoveMember
-    logger.go:130: 2026-04-07T08:44:12.809-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "11", "added-peer-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:12.809-1200	INFO	removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "11", "removed-remote-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:12.809-1200	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "12", "added-peer-peer-urls": []}
-    logger.go:130: 2026-04-07T08:44:12.809-1200	WARN	skipped removing already removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "11"}
---- PASS: TestAddRemoveMember (0.02s)
+    logger.go:130: 2025-03-06T04:28:37.198+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "11", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:37.198+1400	INFO	removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "11", "removed-remote-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:37.199+1400	INFO	added member	{"cluster-id": "0", "local-member-id": "0", "added-peer-id": "12", "added-peer-peer-urls": []}
+    logger.go:130: 2025-03-06T04:28:37.199+1400	WARN	skipped removing already removed member	{"cluster-id": "0", "local-member-id": "0", "removed-remote-peer-id": "11"}
+--- PASS: TestAddRemoveMember (0.03s)
 === RUN   TestIsMetaStoreOnly
 --- PASS: TestIsMetaStoreOnly (0.00s)
 === RUN   TestConfStateFromBackendInOneTx
@@ -18438,9 +18573,9 @@
     --- PASS: TestMustUnsafeSaveConfStateToBackend/save (0.00s)
     --- PASS: TestMustUnsafeSaveConfStateToBackend/read (0.00s)
 PASS
-ok  	go.etcd.io/etcd/server/etcdserver/api/membership	0.153s
+ok  	go.etcd.io/etcd/server/etcdserver/api/membership	0.171s
 === RUN   TestSendMessage
---- PASS: TestSendMessage (0.01s)
+--- PASS: TestSendMessage (0.02s)
 === RUN   TestSendMessageWhenStreamIsBroken
 --- PASS: TestSendMessageWhenStreamIsBroken (0.01s)
 === RUN   TestServeRaftPrefix
@@ -18533,10 +18668,9 @@
 {"level":"debug","msg":"peer deactivated again","peer-id":"1","error":"failed to write 1 on pipeline (request canceled)"}
 {"level":"debug","msg":"peer deactivated again","peer-id":"1","error":"failed to write 1 on pipeline (request canceled)"}
 {"level":"debug","msg":"peer deactivated again","peer-id":"1","error":"failed to write 1 on pipeline (request canceled)"}
-{"level":"debug","msg":"peer deactivated again","peer-id":"1","error":"failed to write 1 on pipeline (request canceled)"}
 --- PASS: TestStopBlockedPipeline (0.00s)
 === RUN   TestSnapshotSend
-{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/snapdir2910197719/0000000000000000.snap.db","bytes":5,"size":"5 B"}
+{"level":"info","msg":"saved database snapshot to disk","path":"/tmp/snapdir3356347048/0000000000000000.snap.db","bytes":5,"size":"5 B"}
 {"level":"info","msg":"peer became active","peer-id":"1"}
 {"level":"debug","msg":"peer deactivated again","peer-id":"1","error":"failed to post 1 on sendMsgSnap (ioutil: short read)"}
 {"level":"debug","msg":"peer deactivated again","peer-id":"1","error":"failed to post 1 on sendMsgSnap (ioutil: short read)"}
@@ -18572,7 +18706,7 @@
 --- PASS: TestStreamReaderDialResult (0.00s)
 === RUN   TestStreamReaderStopOnDial
 {"level":"info","msg":"peer became active","peer-id":"2"}
---- PASS: TestStreamReaderStopOnDial (0.01s)
+--- PASS: TestStreamReaderStopOnDial (0.06s)
 === RUN   TestStreamReaderDialDetectUnsupport
 --- PASS: TestStreamReaderDialDetectUnsupport (0.00s)
 === RUN   TestStream
@@ -18634,7 +18768,7 @@
 === RUN   TestCheckVersionCompatibility
 --- PASS: TestCheckVersionCompatibility (0.00s)
 PASS
-ok  	go.etcd.io/etcd/server/etcdserver/api/rafthttp	0.160s
+ok  	go.etcd.io/etcd/server/etcdserver/api/rafthttp	0.215s
 === RUN   TestSaveAndLoad
 --- PASS: TestSaveAndLoad (0.00s)
 === RUN   TestBadCRC
@@ -18672,10 +18806,10 @@
 {"level":"info","msg":"found orphaned .snap.db file; deleting","path":"0000000000000064.snap.db"}
 --- PASS: TestReleaseSnapDBs (0.00s)
 PASS
-ok  	go.etcd.io/etcd/server/etcdserver/api/snap	0.021s
+ok  	go.etcd.io/etcd/server/etcdserver/api/snap	0.020s
 ?   	go.etcd.io/etcd/server/etcdserver/api/snap/snappb	[no test files]
 === RUN   TestCheckPassword
---- PASS: TestCheckPassword (0.11s)
+--- PASS: TestCheckPassword (0.10s)
 === RUN   TestMergeUser
 {"level":"warn","msg":"attempted to grant a duplicate role for a user","user-name":"foo","role-name":"role1"}
 {"level":"warn","msg":"attempted to revoke a ungranted role for a user","user-name":"foo","role-name":"role2"}
@@ -18716,7 +18850,7 @@
 === RUN   TestSimpleMatch
 --- PASS: TestSimpleMatch (0.00s)
 PASS
-ok  	go.etcd.io/etcd/server/etcdserver/api/v2auth	0.149s
+ok  	go.etcd.io/etcd/server/etcdserver/api/v2auth	0.141s
 === RUN   TestNewProxyFuncUnset
 --- PASS: TestNewProxyFuncUnset (0.00s)
 === RUN   TestNewProxyFuncBad
@@ -18832,7 +18966,7 @@
 === RUN   TestNodesToCluster
 --- PASS: TestNodesToCluster (0.00s)
 === RUN   TestSortableNodes
---- PASS: TestSortableNodes (0.01s)
+--- PASS: TestSortableNodes (0.00s)
 === RUN   TestRetryFailure
 {"level":"warn","msg":"failed to get from discovery server","discovery-url":"http://test.com","path":"/1000/_config/size","error":"client: etcd cluster is unavailable or misconfigured; error #0: context deadline exceeded\n","err-detail":"error #0: context deadline exceeded\n"}
 {"level":"info","msg":"retry connecting to discovery service","url":"http://test.com","reason":"cluster status check","backoff":"2s"}
@@ -18843,11 +18977,11 @@
 {"level":"warn","msg":"failed to get from discovery server","discovery-url":"http://test.com","path":"/1000/_config/size","error":"client: etcd cluster is unavailable or misconfigured; error #0: context deadline exceeded\n","err-detail":"error #0: context deadline exceeded\n"}
 --- PASS: TestRetryFailure (0.00s)
 PASS
-ok  	go.etcd.io/etcd/server/etcdserver/api/v2discovery	0.021s
+ok  	go.etcd.io/etcd/server/etcdserver/api/v2discovery	0.024s
 === RUN   TestErrorWriteTo
 --- PASS: TestErrorWriteTo (0.00s)
 PASS
-ok  	go.etcd.io/etcd/server/etcdserver/api/v2error	0.010s
+ok  	go.etcd.io/etcd/server/etcdserver/api/v2error	0.030s
 === RUN   TestAuthFlow
 {"level":"warn","msg":"malformed basic auth encoding"}
 {"level":"warn","msg":"incorrect password","user-name":"root"}
@@ -18952,7 +19086,7 @@
 === RUN   TestAllowMethod
 --- PASS: TestAllowMethod (0.00s)
 PASS
-ok  	go.etcd.io/etcd/server/etcdserver/api/v2http	0.049s
+ok  	go.etcd.io/etcd/server/etcdserver/api/v2http	0.061s
 === RUN   TestHTTPErrorWriteTo
 --- PASS: TestHTTPErrorWriteTo (0.00s)
 === RUN   TestMemberUnmarshal
@@ -18962,7 +19096,7 @@
 === RUN   TestMemberCreateRequestUnmarshalFail
 --- PASS: TestMemberCreateRequestUnmarshalFail (0.00s)
 PASS
-ok  	go.etcd.io/etcd/server/etcdserver/api/v2http/httptypes	0.011s
+ok  	go.etcd.io/etcd/server/etcdserver/api/v2http/httptypes	0.022s
 ?   	go.etcd.io/etcd/server/etcdserver/api/v2stats	[no test files]
 === RUN   TestEventQueue
 --- PASS: TestEventQueue (0.00s)
@@ -19047,7 +19181,7 @@
 === RUN   TestWatcher
 --- PASS: TestWatcher (0.00s)
 PASS
-ok  	go.etcd.io/etcd/server/etcdserver/api/v2store	0.029s
+ok  	go.etcd.io/etcd/server/etcdserver/api/v2store	0.066s
 ?   	go.etcd.io/etcd/server/etcdserver/api/v2v3	[no test files]
 ?   	go.etcd.io/etcd/server/etcdserver/api/v3alarm	[no test files]
 ?   	go.etcd.io/etcd/server/etcdserver/api/v3client	[no test files]
@@ -19060,7 +19194,7 @@
 {"level":"info","msg":"completed auto periodic compaction","revision":20,"compact-period":"2h0m0s","took":"0s"}
 {"level":"info","msg":"starting auto periodic compaction","revision":30,"compact-period":"2h0m0s"}
 {"level":"info","msg":"completed auto periodic compaction","revision":30,"compact-period":"2h0m0s","took":"0s"}
---- PASS: TestPeriodicHourly (0.56s)
+--- PASS: TestPeriodicHourly (0.58s)
 === RUN   TestPeriodicMinutes
 {"level":"info","msg":"starting auto periodic compaction","revision":1,"compact-period":"5m0s"}
 {"level":"info","msg":"completed auto periodic compaction","revision":1,"compact-period":"5m0s","took":"30s"}
@@ -19074,23 +19208,23 @@
 {"level":"info","msg":"completed auto periodic compaction","revision":40,"compact-period":"5m0s","took":"0s"}
 {"level":"info","msg":"starting auto periodic compaction","revision":50,"compact-period":"5m0s"}
 {"level":"info","msg":"completed auto periodic compaction","revision":50,"compact-period":"5m0s","took":"0s"}
---- PASS: TestPeriodicMinutes (0.68s)
+--- PASS: TestPeriodicMinutes (0.71s)
 === RUN   TestPeriodicPause
 {"level":"info","msg":"starting auto periodic compaction","revision":24,"compact-period":"1h0m0s"}
 {"level":"info","msg":"completed auto periodic compaction","revision":24,"compact-period":"1h0m0s","took":"0s"}
 --- PASS: TestPeriodicPause (0.37s)
 === RUN   TestRevision
 {"level":"info","msg":"starting auto revision compaction","revision":90,"revision-compaction-retention":10}
-{"level":"info","msg":"completed auto revision compaction","revision":90,"revision-compaction-retention":10,"took":"10.23536ms"}
+{"level":"info","msg":"completed auto revision compaction","revision":90,"revision-compaction-retention":10,"took":"10.247985ms"}
 {"level":"info","msg":"starting auto revision compaction","revision":190,"revision-compaction-retention":10}
-{"level":"info","msg":"completed auto revision compaction","revision":190,"revision-compaction-retention":10,"took":"10.26608ms"}
---- PASS: TestRevision (0.06s)
+{"level":"info","msg":"completed auto revision compaction","revision":190,"revision-compaction-retention":10,"took":"13.508767ms"}
+--- PASS: TestRevision (0.07s)
 === RUN   TestRevisionPause
 {"level":"info","msg":"starting auto revision compaction","revision":90,"revision-compaction-retention":10}
-{"level":"info","msg":"completed auto revision compaction","revision":90,"revision-compaction-retention":10,"took":"10.22428ms"}
+{"level":"info","msg":"completed auto revision compaction","revision":90,"revision-compaction-retention":10,"took":"10.457227ms"}
 --- PASS: TestRevisionPause (0.03s)
 PASS
-ok  	go.etcd.io/etcd/server/etcdserver/api/v3compactor	1.736s
+ok  	go.etcd.io/etcd/server/etcdserver/api/v3compactor	1.869s
 ?   	go.etcd.io/etcd/server/etcdserver/api/v3election	[no test files]
 ?   	go.etcd.io/etcd/server/etcdserver/api/v3election/v3electionpb	[no test files]
 ?   	go.etcd.io/etcd/server/etcdserver/api/v3election/v3electionpb/gw	[no test files]
@@ -19102,21 +19236,21 @@
 === RUN   TestSendFragment
 --- PASS: TestSendFragment (0.00s)
 PASS
-ok  	go.etcd.io/etcd/server/etcdserver/api/v3rpc	0.035s
+ok  	go.etcd.io/etcd/server/etcdserver/api/v3rpc	0.046s
 === RUN   TestConsistentIndex
---- PASS: TestConsistentIndex (0.02s)
+--- PASS: TestConsistentIndex (0.01s)
 === RUN   TestConsistentIndexDecrease
 === RUN   TestConsistentIndexDecrease/Decrease_term
 === RUN   TestConsistentIndexDecrease/Decrease_CI
 === RUN   TestConsistentIndexDecrease/Decrease_CI_and_term
---- PASS: TestConsistentIndexDecrease (0.07s)
-    --- PASS: TestConsistentIndexDecrease/Decrease_term (0.02s)
-    --- PASS: TestConsistentIndexDecrease/Decrease_CI (0.02s)
-    --- PASS: TestConsistentIndexDecrease/Decrease_CI_and_term (0.02s)
+--- PASS: TestConsistentIndexDecrease (0.04s)
+    --- PASS: TestConsistentIndexDecrease/Decrease_term (0.01s)
+    --- PASS: TestConsistentIndexDecrease/Decrease_CI (0.01s)
+    --- PASS: TestConsistentIndexDecrease/Decrease_CI_and_term (0.01s)
 === RUN   TestFakeConsistentIndex
 --- PASS: TestFakeConsistentIndex (0.00s)
 PASS
-ok  	go.etcd.io/etcd/server/etcdserver/cindex	0.107s
+ok  	go.etcd.io/etcd/server/etcdserver/cindex	0.081s
 === RUN   TestLeaseQueue
 --- PASS: TestLeaseQueue (0.10s)
 === RUN   TestLessorGrant
@@ -19130,7 +19264,7 @@
 === RUN   TestLessorRenewWithCheckpointer
 --- PASS: TestLessorRenewWithCheckpointer (0.00s)
 === RUN   TestLessorRenewExtendPileup
---- PASS: TestLessorRenewExtendPileup (0.03s)
+--- PASS: TestLessorRenewExtendPileup (0.02s)
 === RUN   TestLessorDetach
 --- PASS: TestLessorDetach (0.00s)
 === RUN   TestLessorRecover
@@ -19161,263 +19295,258 @@
 === RUN   TestLeaseBackend/Empty_by_default
 === RUN   TestLeaseBackend/Returns_data_put_before
 === RUN   TestLeaseBackend/Skips_deleted
---- PASS: TestLeaseBackend (0.07s)
-    --- PASS: TestLeaseBackend/Empty_by_default (0.02s)
+--- PASS: TestLeaseBackend (0.05s)
+    --- PASS: TestLeaseBackend/Empty_by_default (0.01s)
     --- PASS: TestLeaseBackend/Returns_data_put_before (0.02s)
-    --- PASS: TestLeaseBackend/Skips_deleted (0.02s)
+    --- PASS: TestLeaseBackend/Skips_deleted (0.01s)
 PASS
-ok  	go.etcd.io/etcd/server/lease	3.349s
+ok  	go.etcd.io/etcd/server/lease	3.323s
 === RUN   TestRenewHTTP
---- PASS: TestRenewHTTP (0.00s)
+--- PASS: TestRenewHTTP (0.01s)
 === RUN   TestTimeToLiveHTTP
---- PASS: TestTimeToLiveHTTP (0.00s)
+--- PASS: TestTimeToLiveHTTP (0.02s)
 === RUN   TestRenewHTTPTimeout
---- PASS: TestRenewHTTPTimeout (1.00s)
+--- PASS: TestRenewHTTPTimeout (1.01s)
 === RUN   TestTimeToLiveHTTPTimeout
 --- PASS: TestTimeToLiveHTTPTimeout (1.00s)
 PASS
-ok  	go.etcd.io/etcd/server/lease/leasehttp	2.045s
+ok  	go.etcd.io/etcd/server/lease/leasehttp	2.097s
 ?   	go.etcd.io/etcd/server/lease/leasepb	[no test files]
 ?   	go.etcd.io/etcd/server/mock/mockstorage	[no test files]
 ?   	go.etcd.io/etcd/server/mock/mockstore	[no test files]
 ?   	go.etcd.io/etcd/server/mock/mockwait	[no test files]
 === RUN   TestHashByRevValue
-    logger.go:130: 2026-04-07T08:44:40.680-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:40.684-1200	INFO	compact tree index	{"revision": 35}
-    logger.go:130: 2026-04-07T08:44:40.685-1200	INFO	finished scheduled compaction	{"compact-revision": 35, "took": "973.96µs", "hash": 4082599214, "current-db-size-bytes": 69632, "current-db-size": "70 kB", "current-db-size-in-use-bytes": 69632, "current-db-size-in-use": "70 kB"}
-    logger.go:130: 2026-04-07T08:44:40.685-1200	INFO	storing new hash	{"hash": 4082599214, "revision": 35, "compact-revision": -1}
-    logger.go:130: 2026-04-07T08:44:40.685-1200	INFO	compact tree index	{"revision": 106}
-    logger.go:130: 2026-04-07T08:44:40.687-1200	INFO	finished scheduled compaction	{"compact-revision": 106, "took": "1.3232ms", "hash": 2279933401, "current-db-size-bytes": 98304, "current-db-size": "98 kB", "current-db-size-in-use-bytes": 90112, "current-db-size-in-use": "90 kB"}
-    logger.go:130: 2026-04-07T08:44:40.687-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.687-1200	INFO	compact tree index	{"revision": 177}
-    logger.go:130: 2026-04-07T08:44:40.687-1200	INFO	finished scheduled compaction	{"compact-revision": 177, "took": "88.44µs", "hash": 3284231217, "current-db-size-bytes": 98304, "current-db-size": "98 kB", "current-db-size-in-use-bytes": 90112, "current-db-size-in-use": "90 kB"}
-    logger.go:130: 2026-04-07T08:44:40.687-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.687-1200	INFO	compact tree index	{"revision": 248}
-    logger.go:130: 2026-04-07T08:44:40.687-1200	INFO	finished scheduled compaction	{"compact-revision": 248, "took": "76.32µs", "hash": 126286495, "current-db-size-bytes": 102400, "current-db-size": "102 kB", "current-db-size-in-use-bytes": 102400, "current-db-size-in-use": "102 kB"}
-    logger.go:130: 2026-04-07T08:44:40.687-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.687-1200	INFO	compact tree index	{"revision": 319}
-    logger.go:130: 2026-04-07T08:44:40.687-1200	INFO	finished scheduled compaction	{"compact-revision": 319, "took": "72.28µs", "hash": 900108730, "current-db-size-bytes": 114688, "current-db-size": "115 kB", "current-db-size-in-use-bytes": 114688, "current-db-size-in-use": "115 kB"}
-    logger.go:130: 2026-04-07T08:44:40.687-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.687-1200	INFO	compact tree index	{"revision": 390}
-    logger.go:130: 2026-04-07T08:44:40.687-1200	INFO	finished scheduled compaction	{"compact-revision": 390, "took": "70.16µs", "hash": 2475485232, "current-db-size-bytes": 126976, "current-db-size": "127 kB", "current-db-size-in-use-bytes": 126976, "current-db-size-in-use": "127 kB"}
-    logger.go:130: 2026-04-07T08:44:40.687-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.687-1200	INFO	compact tree index	{"revision": 461}
-    logger.go:130: 2026-04-07T08:44:40.687-1200	INFO	finished scheduled compaction	{"compact-revision": 461, "took": "62.24µs", "hash": 1226296507, "current-db-size-bytes": 139264, "current-db-size": "139 kB", "current-db-size-in-use-bytes": 139264, "current-db-size-in-use": "139 kB"}
-    logger.go:130: 2026-04-07T08:44:40.687-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.688-1200	INFO	compact tree index	{"revision": 532}
-    logger.go:130: 2026-04-07T08:44:40.690-1200	INFO	finished scheduled compaction	{"compact-revision": 532, "took": "528.88µs", "hash": 2503661030, "current-db-size-bytes": 159744, "current-db-size": "160 kB", "current-db-size-in-use-bytes": 81920, "current-db-size-in-use": "82 kB"}
-    logger.go:130: 2026-04-07T08:44:40.690-1200	INFO	storing new hash	{"hash": 2503661030, "revision": 532, "compact-revision": 461}
-    logger.go:130: 2026-04-07T08:44:40.690-1200	INFO	compact tree index	{"revision": 603}
-    logger.go:130: 2026-04-07T08:44:40.691-1200	INFO	finished scheduled compaction	{"compact-revision": 603, "took": "108.8µs", "hash": 4155130747, "current-db-size-bytes": 159744, "current-db-size": "160 kB", "current-db-size-in-use-bytes": 81920, "current-db-size-in-use": "82 kB"}
-    logger.go:130: 2026-04-07T08:44:40.691-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.691-1200	INFO	compact tree index	{"revision": 674}
-    logger.go:130: 2026-04-07T08:44:40.691-1200	INFO	finished scheduled compaction	{"compact-revision": 674, "took": "86.44µs", "hash": 106915399, "current-db-size-bytes": 159744, "current-db-size": "160 kB", "current-db-size-in-use-bytes": 81920, "current-db-size-in-use": "82 kB"}
-    logger.go:130: 2026-04-07T08:44:40.691-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.691-1200	INFO	compact tree index	{"revision": 745}
-    logger.go:130: 2026-04-07T08:44:40.692-1200	INFO	finished scheduled compaction	{"compact-revision": 745, "took": "986.2µs", "hash": 406914006, "current-db-size-bytes": 159744, "current-db-size": "160 kB", "current-db-size-in-use-bytes": 90112, "current-db-size-in-use": "90 kB"}
-    logger.go:130: 2026-04-07T08:44:40.692-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.692-1200	INFO	compact tree index	{"revision": 816}
-    logger.go:130: 2026-04-07T08:44:40.693-1200	INFO	finished scheduled compaction	{"compact-revision": 816, "took": "335.24µs", "hash": 1882211381, "current-db-size-bytes": 159744, "current-db-size": "160 kB", "current-db-size-in-use-bytes": 90112, "current-db-size-in-use": "90 kB"}
-    logger.go:130: 2026-04-07T08:44:40.693-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.693-1200	INFO	compact tree index	{"revision": 887}
-    logger.go:130: 2026-04-07T08:44:40.693-1200	INFO	finished scheduled compaction	{"compact-revision": 887, "took": "209.84µs", "hash": 806177088, "current-db-size-bytes": 159744, "current-db-size": "160 kB", "current-db-size-in-use-bytes": 102400, "current-db-size-in-use": "102 kB"}
-    logger.go:130: 2026-04-07T08:44:40.693-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.694-1200	INFO	compact tree index	{"revision": 958}
-    logger.go:130: 2026-04-07T08:44:40.695-1200	INFO	finished scheduled compaction	{"compact-revision": 958, "took": "809.4µs", "hash": 664311366, "current-db-size-bytes": 159744, "current-db-size": "160 kB", "current-db-size-in-use-bytes": 86016, "current-db-size-in-use": "86 kB"}
-    logger.go:130: 2026-04-07T08:44:40.695-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.695-1200	INFO	compact tree index	{"revision": 1029}
-    logger.go:130: 2026-04-07T08:44:40.695-1200	INFO	finished scheduled compaction	{"compact-revision": 1029, "took": "132.68µs", "hash": 1496914449, "current-db-size-bytes": 159744, "current-db-size": "160 kB", "current-db-size-in-use-bytes": 53248, "current-db-size-in-use": "53 kB"}
-    logger.go:130: 2026-04-07T08:44:40.695-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.695-1200	INFO	compact tree index	{"revision": 1100}
-    logger.go:130: 2026-04-07T08:44:40.696-1200	INFO	finished scheduled compaction	{"compact-revision": 1100, "took": "114.28µs", "hash": 2434525091, "current-db-size-bytes": 159744, "current-db-size": "160 kB", "current-db-size-in-use-bytes": 65536, "current-db-size-in-use": "66 kB"}
-    logger.go:130: 2026-04-07T08:44:40.696-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.696-1200	INFO	compact tree index	{"revision": 1171}
-    logger.go:130: 2026-04-07T08:44:40.696-1200	INFO	finished scheduled compaction	{"compact-revision": 1171, "took": "71.04µs", "hash": 3988652253, "current-db-size-bytes": 159744, "current-db-size": "160 kB", "current-db-size-in-use-bytes": 77824, "current-db-size-in-use": "78 kB"}
-    logger.go:130: 2026-04-07T08:44:40.696-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.697-1200	INFO	compact tree index	{"revision": 1242}
-    logger.go:130: 2026-04-07T08:44:40.704-1200	INFO	finished scheduled compaction	{"compact-revision": 1242, "took": "6.84456ms", "hash": 1122462288, "current-db-size-bytes": 159744, "current-db-size": "160 kB", "current-db-size-in-use-bytes": 131072, "current-db-size-in-use": "131 kB"}
-    logger.go:130: 2026-04-07T08:44:40.704-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
---- PASS: TestHashByRevValue (0.03s)
+    logger.go:130: 2025-03-06T04:29:05.582+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:29:05.586+1400	INFO	compact tree index	{"revision": 35}
+    logger.go:130: 2025-03-06T04:29:05.598+1400	INFO	finished scheduled compaction	{"compact-revision": 35, "took": "12.026357ms", "hash": 4082599214, "current-db-size-bytes": 192512, "current-db-size": "192 kB", "current-db-size-in-use-bytes": 192512, "current-db-size-in-use": "192 kB"}
+    logger.go:130: 2025-03-06T04:29:05.598+1400	INFO	storing new hash	{"hash": 4082599214, "revision": 35, "compact-revision": -1}
+    logger.go:130: 2025-03-06T04:29:05.598+1400	INFO	compact tree index	{"revision": 106}
+    logger.go:130: 2025-03-06T04:29:05.598+1400	INFO	finished scheduled compaction	{"compact-revision": 106, "took": "111.201µs", "hash": 2279933401, "current-db-size-bytes": 192512, "current-db-size": "192 kB", "current-db-size-in-use-bytes": 118784, "current-db-size-in-use": "119 kB"}
+    logger.go:130: 2025-03-06T04:29:05.598+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.598+1400	INFO	compact tree index	{"revision": 177}
+    logger.go:130: 2025-03-06T04:29:05.598+1400	INFO	finished scheduled compaction	{"compact-revision": 177, "took": "86.761µs", "hash": 3284231217, "current-db-size-bytes": 192512, "current-db-size": "192 kB", "current-db-size-in-use-bytes": 131072, "current-db-size-in-use": "131 kB"}
+    logger.go:130: 2025-03-06T04:29:05.598+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.598+1400	INFO	compact tree index	{"revision": 248}
+    logger.go:130: 2025-03-06T04:29:05.598+1400	INFO	finished scheduled compaction	{"compact-revision": 248, "took": "82.401µs", "hash": 126286495, "current-db-size-bytes": 192512, "current-db-size": "192 kB", "current-db-size-in-use-bytes": 143360, "current-db-size-in-use": "143 kB"}
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	compact tree index	{"revision": 319}
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	finished scheduled compaction	{"compact-revision": 319, "took": "75.68µs", "hash": 900108730, "current-db-size-bytes": 192512, "current-db-size": "192 kB", "current-db-size-in-use-bytes": 155648, "current-db-size-in-use": "156 kB"}
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	compact tree index	{"revision": 390}
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	finished scheduled compaction	{"compact-revision": 390, "took": "71.241µs", "hash": 2475485232, "current-db-size-bytes": 192512, "current-db-size": "192 kB", "current-db-size-in-use-bytes": 167936, "current-db-size-in-use": "168 kB"}
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	compact tree index	{"revision": 461}
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	finished scheduled compaction	{"compact-revision": 461, "took": "69.401µs", "hash": 1226296507, "current-db-size-bytes": 192512, "current-db-size": "192 kB", "current-db-size-in-use-bytes": 180224, "current-db-size-in-use": "180 kB"}
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	compact tree index	{"revision": 532}
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	finished scheduled compaction	{"compact-revision": 532, "took": "85µs", "hash": 2503661030, "current-db-size-bytes": 192512, "current-db-size": "192 kB", "current-db-size-in-use-bytes": 192512, "current-db-size-in-use": "192 kB"}
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	compact tree index	{"revision": 603}
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	finished scheduled compaction	{"compact-revision": 603, "took": "80.961µs", "hash": 4155130747, "current-db-size-bytes": 204800, "current-db-size": "205 kB", "current-db-size-in-use-bytes": 204800, "current-db-size-in-use": "205 kB"}
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	compact tree index	{"revision": 674}
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	finished scheduled compaction	{"compact-revision": 674, "took": "82.921µs", "hash": 106915399, "current-db-size-bytes": 217088, "current-db-size": "217 kB", "current-db-size-in-use-bytes": 217088, "current-db-size-in-use": "217 kB"}
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	compact tree index	{"revision": 745}
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	finished scheduled compaction	{"compact-revision": 745, "took": "69.48µs", "hash": 406914006, "current-db-size-bytes": 229376, "current-db-size": "229 kB", "current-db-size-in-use-bytes": 229376, "current-db-size-in-use": "229 kB"}
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	compact tree index	{"revision": 816}
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	finished scheduled compaction	{"compact-revision": 816, "took": "72.681µs", "hash": 1882211381, "current-db-size-bytes": 241664, "current-db-size": "242 kB", "current-db-size-in-use-bytes": 241664, "current-db-size-in-use": "242 kB"}
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	compact tree index	{"revision": 887}
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	finished scheduled compaction	{"compact-revision": 887, "took": "75.081µs", "hash": 806177088, "current-db-size-bytes": 253952, "current-db-size": "254 kB", "current-db-size-in-use-bytes": 253952, "current-db-size-in-use": "254 kB"}
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.599+1400	INFO	compact tree index	{"revision": 958}
+    logger.go:130: 2025-03-06T04:29:05.600+1400	INFO	finished scheduled compaction	{"compact-revision": 958, "took": "83.56µs", "hash": 664311366, "current-db-size-bytes": 266240, "current-db-size": "266 kB", "current-db-size-in-use-bytes": 266240, "current-db-size-in-use": "266 kB"}
+    logger.go:130: 2025-03-06T04:29:05.600+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.601+1400	INFO	compact tree index	{"revision": 1029}
+    logger.go:130: 2025-03-06T04:29:05.613+1400	INFO	finished scheduled compaction	{"compact-revision": 1029, "took": "11.340432ms", "hash": 1496914449, "current-db-size-bytes": 421888, "current-db-size": "422 kB", "current-db-size-in-use-bytes": 421888, "current-db-size-in-use": "422 kB"}
+    logger.go:130: 2025-03-06T04:29:05.613+1400	INFO	storing new hash	{"hash": 1496914449, "revision": 1029, "compact-revision": 958}
+    logger.go:130: 2025-03-06T04:29:05.613+1400	INFO	compact tree index	{"revision": 1100}
+    logger.go:130: 2025-03-06T04:29:05.613+1400	INFO	finished scheduled compaction	{"compact-revision": 1100, "took": "202.361µs", "hash": 2434525091, "current-db-size-bytes": 421888, "current-db-size": "422 kB", "current-db-size-in-use-bytes": 155648, "current-db-size-in-use": "156 kB"}
+    logger.go:130: 2025-03-06T04:29:05.613+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.613+1400	INFO	compact tree index	{"revision": 1171}
+--- PASS: TestHashByRevValue (0.04s)
 === RUN   TestHashByRevValueLastRevision
-    logger.go:130: 2026-04-07T08:44:40.710-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:40.711-1200	INFO	compact tree index	{"revision": 73}
-    logger.go:130: 2026-04-07T08:44:40.712-1200	INFO	finished scheduled compaction	{"compact-revision": 73, "took": "1.4002ms", "hash": 1913897190, "current-db-size-bytes": 57344, "current-db-size": "57 kB", "current-db-size-in-use-bytes": 57344, "current-db-size-in-use": "57 kB"}
-    logger.go:130: 2026-04-07T08:44:40.712-1200	INFO	storing new hash	{"hash": 1913897190, "revision": 73, "compact-revision": -1}
-    logger.go:130: 2026-04-07T08:44:40.712-1200	INFO	compact tree index	{"revision": 145}
-    logger.go:130: 2026-04-07T08:44:40.712-1200	INFO	finished scheduled compaction	{"compact-revision": 145, "took": "97.12µs", "hash": 224860069, "current-db-size-bytes": 65536, "current-db-size": "66 kB", "current-db-size-in-use-bytes": 65536, "current-db-size-in-use": "66 kB"}
-    logger.go:130: 2026-04-07T08:44:40.712-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.713-1200	INFO	compact tree index	{"revision": 217}
-    logger.go:130: 2026-04-07T08:44:40.714-1200	INFO	finished scheduled compaction	{"compact-revision": 217, "took": "885.32µs", "hash": 1565167519, "current-db-size-bytes": 77824, "current-db-size": "78 kB", "current-db-size-in-use-bytes": 73728, "current-db-size-in-use": "74 kB"}
-    logger.go:130: 2026-04-07T08:44:40.714-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.714-1200	INFO	compact tree index	{"revision": 289}
-    logger.go:130: 2026-04-07T08:44:40.714-1200	INFO	finished scheduled compaction	{"compact-revision": 289, "took": "83.72µs", "hash": 1566261620, "current-db-size-bytes": 77824, "current-db-size": "78 kB", "current-db-size-in-use-bytes": 73728, "current-db-size-in-use": "74 kB"}
-    logger.go:130: 2026-04-07T08:44:40.714-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.714-1200	INFO	compact tree index	{"revision": 361}
-    logger.go:130: 2026-04-07T08:44:40.714-1200	INFO	finished scheduled compaction	{"compact-revision": 361, "took": "73.88µs", "hash": 2037173024, "current-db-size-bytes": 77824, "current-db-size": "78 kB", "current-db-size-in-use-bytes": 69632, "current-db-size-in-use": "70 kB"}
-    logger.go:130: 2026-04-07T08:44:40.714-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.715-1200	INFO	compact tree index	{"revision": 433}
-    logger.go:130: 2026-04-07T08:44:40.717-1200	INFO	finished scheduled compaction	{"compact-revision": 433, "took": "2.76804ms", "hash": 691659396, "current-db-size-bytes": 102400, "current-db-size": "102 kB", "current-db-size-in-use-bytes": 94208, "current-db-size-in-use": "94 kB"}
-    logger.go:130: 2026-04-07T08:44:40.717-1200	INFO	storing new hash	{"hash": 691659396, "revision": 433, "compact-revision": 361}
-    logger.go:130: 2026-04-07T08:44:40.717-1200	INFO	compact tree index	{"revision": 505}
-    logger.go:130: 2026-04-07T08:44:40.719-1200	INFO	finished scheduled compaction	{"compact-revision": 505, "took": "1.18556ms", "hash": 2713730748, "current-db-size-bytes": 102400, "current-db-size": "102 kB", "current-db-size-in-use-bytes": 49152, "current-db-size-in-use": "49 kB"}
-    logger.go:130: 2026-04-07T08:44:40.719-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.719-1200	INFO	compact tree index	{"revision": 577}
-    logger.go:130: 2026-04-07T08:44:40.719-1200	INFO	finished scheduled compaction	{"compact-revision": 577, "took": "89.36µs", "hash": 3919322507, "current-db-size-bytes": 102400, "current-db-size": "102 kB", "current-db-size-in-use-bytes": 61440, "current-db-size-in-use": "61 kB"}
-    logger.go:130: 2026-04-07T08:44:40.719-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.719-1200	INFO	compact tree index	{"revision": 649}
-    logger.go:130: 2026-04-07T08:44:40.720-1200	INFO	finished scheduled compaction	{"compact-revision": 649, "took": "750.56µs", "hash": 769967540, "current-db-size-bytes": 102400, "current-db-size": "102 kB", "current-db-size-in-use-bytes": 53248, "current-db-size-in-use": "53 kB"}
-    logger.go:130: 2026-04-07T08:44:40.720-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.720-1200	INFO	compact tree index	{"revision": 721}
-    logger.go:130: 2026-04-07T08:44:40.721-1200	INFO	finished scheduled compaction	{"compact-revision": 721, "took": "1.3888ms", "hash": 2909194793, "current-db-size-bytes": 102400, "current-db-size": "102 kB", "current-db-size-in-use-bytes": 77824, "current-db-size-in-use": "78 kB"}
-    logger.go:130: 2026-04-07T08:44:40.721-1200	INFO	storing new hash	{"hash": 2909194793, "revision": 721, "compact-revision": 649}
-    logger.go:130: 2026-04-07T08:44:40.721-1200	INFO	compact tree index	{"revision": 793}
-    logger.go:130: 2026-04-07T08:44:40.721-1200	INFO	finished scheduled compaction	{"compact-revision": 793, "took": "193.4µs", "hash": 1576921157, "current-db-size-bytes": 102400, "current-db-size": "102 kB", "current-db-size-in-use-bytes": 77824, "current-db-size-in-use": "78 kB"}
-    logger.go:130: 2026-04-07T08:44:40.721-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.721-1200	INFO	compact tree index	{"revision": 865}
-    logger.go:130: 2026-04-07T08:44:40.722-1200	INFO	finished scheduled compaction	{"compact-revision": 865, "took": "179.88µs", "hash": 4067701532, "current-db-size-bytes": 102400, "current-db-size": "102 kB", "current-db-size-in-use-bytes": 90112, "current-db-size-in-use": "90 kB"}
-    logger.go:130: 2026-04-07T08:44:40.722-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.722-1200	INFO	compact tree index	{"revision": 937}
-    logger.go:130: 2026-04-07T08:44:40.722-1200	INFO	finished scheduled compaction	{"compact-revision": 937, "took": "140.48µs", "hash": 2226384237, "current-db-size-bytes": 102400, "current-db-size": "102 kB", "current-db-size-in-use-bytes": 61440, "current-db-size-in-use": "61 kB"}
-    logger.go:130: 2026-04-07T08:44:40.722-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.724-1200	INFO	compact tree index	{"revision": 1009}
-    logger.go:130: 2026-04-07T08:44:40.727-1200	INFO	finished scheduled compaction	{"compact-revision": 1009, "took": "2.32988ms", "hash": 2923408134, "current-db-size-bytes": 110592, "current-db-size": "111 kB", "current-db-size-in-use-bytes": 86016, "current-db-size-in-use": "86 kB"}
-    logger.go:130: 2026-04-07T08:44:40.727-1200	INFO	storing new hash	{"hash": 2923408134, "revision": 1009, "compact-revision": 937}
-    logger.go:130: 2026-04-07T08:44:40.727-1200	INFO	compact tree index	{"revision": 1081}
-    logger.go:130: 2026-04-07T08:44:40.727-1200	INFO	finished scheduled compaction	{"compact-revision": 1081, "took": "223.64µs", "hash": 2680329256, "current-db-size-bytes": 110592, "current-db-size": "111 kB", "current-db-size-in-use-bytes": 86016, "current-db-size-in-use": "86 kB"}
-    logger.go:130: 2026-04-07T08:44:40.727-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.727-1200	INFO	compact tree index	{"revision": 1153}
-    logger.go:130: 2026-04-07T08:44:40.727-1200	INFO	finished scheduled compaction	{"compact-revision": 1153, "took": "177.12µs", "hash": 1546717673, "current-db-size-bytes": 110592, "current-db-size": "111 kB", "current-db-size-in-use-bytes": 86016, "current-db-size-in-use": "86 kB"}
-    logger.go:130: 2026-04-07T08:44:40.727-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.727-1200	INFO	compact tree index	{"revision": 1225}
-    logger.go:130: 2026-04-07T08:44:40.728-1200	INFO	finished scheduled compaction	{"compact-revision": 1225, "took": "334.8µs", "hash": 2713657846, "current-db-size-bytes": 110592, "current-db-size": "111 kB", "current-db-size-in-use-bytes": 98304, "current-db-size-in-use": "98 kB"}
-    logger.go:130: 2026-04-07T08:44:40.728-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
-    logger.go:130: 2026-04-07T08:44:40.728-1200	INFO	compact tree index	{"revision": 1297}
-    logger.go:130: 2026-04-07T08:44:40.728-1200	INFO	finished scheduled compaction	{"compact-revision": 1297, "took": "197µs", "hash": 1046575299, "current-db-size-bytes": 110592, "current-db-size": "111 kB", "current-db-size-in-use-bytes": 77824, "current-db-size-in-use": "78 kB"}
-    logger.go:130: 2026-04-07T08:44:40.728-1200	INFO	previous compaction was interrupted, skip storing compaction hash value
---- PASS: TestHashByRevValueLastRevision (0.03s)
+    logger.go:130: 2025-03-06T04:29:05.630+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:29:05.632+1400	INFO	compact tree index	{"revision": 73}
+    logger.go:130: 2025-03-06T04:29:05.645+1400	INFO	finished scheduled compaction	{"compact-revision": 73, "took": "13.451205ms", "hash": 1913897190, "current-db-size-bytes": 114688, "current-db-size": "115 kB", "current-db-size-in-use-bytes": 94208, "current-db-size-in-use": "94 kB"}
+    logger.go:130: 2025-03-06T04:29:05.645+1400	INFO	storing new hash	{"hash": 1913897190, "revision": 73, "compact-revision": -1}
+    logger.go:130: 2025-03-06T04:29:05.645+1400	INFO	compact tree index	{"revision": 145}
+    logger.go:130: 2025-03-06T04:29:05.645+1400	INFO	finished scheduled compaction	{"compact-revision": 145, "took": "116.641µs", "hash": 224860069, "current-db-size-bytes": 114688, "current-db-size": "115 kB", "current-db-size-in-use-bytes": 94208, "current-db-size-in-use": "94 kB"}
+    logger.go:130: 2025-03-06T04:29:05.645+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.645+1400	INFO	compact tree index	{"revision": 217}
+    logger.go:130: 2025-03-06T04:29:05.646+1400	INFO	finished scheduled compaction	{"compact-revision": 217, "took": "82.761µs", "hash": 1565167519, "current-db-size-bytes": 114688, "current-db-size": "115 kB", "current-db-size-in-use-bytes": 106496, "current-db-size-in-use": "106 kB"}
+    logger.go:130: 2025-03-06T04:29:05.646+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.646+1400	INFO	compact tree index	{"revision": 289}
+    logger.go:130: 2025-03-06T04:29:05.646+1400	INFO	finished scheduled compaction	{"compact-revision": 289, "took": "100.761µs", "hash": 1566261620, "current-db-size-bytes": 118784, "current-db-size": "119 kB", "current-db-size-in-use-bytes": 118784, "current-db-size-in-use": "119 kB"}
+    logger.go:130: 2025-03-06T04:29:05.646+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.646+1400	INFO	compact tree index	{"revision": 361}
+    logger.go:130: 2025-03-06T04:29:05.646+1400	INFO	finished scheduled compaction	{"compact-revision": 361, "took": "88.4µs", "hash": 2037173024, "current-db-size-bytes": 131072, "current-db-size": "131 kB", "current-db-size-in-use-bytes": 131072, "current-db-size-in-use": "131 kB"}
+    logger.go:130: 2025-03-06T04:29:05.646+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.646+1400	INFO	compact tree index	{"revision": 433}
+    logger.go:130: 2025-03-06T04:29:05.646+1400	INFO	finished scheduled compaction	{"compact-revision": 433, "took": "72.88µs", "hash": 691659396, "current-db-size-bytes": 131072, "current-db-size": "131 kB", "current-db-size-in-use-bytes": 81920, "current-db-size-in-use": "82 kB"}
+    logger.go:130: 2025-03-06T04:29:05.646+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.648+1400	INFO	compact tree index	{"revision": 505}
+    logger.go:130: 2025-03-06T04:29:05.658+1400	INFO	finished scheduled compaction	{"compact-revision": 505, "took": "10.047184ms", "hash": 2713730748, "current-db-size-bytes": 131072, "current-db-size": "131 kB", "current-db-size-in-use-bytes": 102400, "current-db-size-in-use": "102 kB"}
+    logger.go:130: 2025-03-06T04:29:05.658+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.658+1400	INFO	compact tree index	{"revision": 577}
+    logger.go:130: 2025-03-06T04:29:05.659+1400	INFO	finished scheduled compaction	{"compact-revision": 577, "took": "96.24µs", "hash": 3919322507, "current-db-size-bytes": 131072, "current-db-size": "131 kB", "current-db-size-in-use-bytes": 106496, "current-db-size-in-use": "106 kB"}
+    logger.go:130: 2025-03-06T04:29:05.659+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.659+1400	INFO	compact tree index	{"revision": 649}
+    logger.go:130: 2025-03-06T04:29:05.659+1400	INFO	finished scheduled compaction	{"compact-revision": 649, "took": "109.521µs", "hash": 769967540, "current-db-size-bytes": 131072, "current-db-size": "131 kB", "current-db-size-in-use-bytes": 122880, "current-db-size-in-use": "123 kB"}
+    logger.go:130: 2025-03-06T04:29:05.659+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.659+1400	INFO	compact tree index	{"revision": 721}
+    logger.go:130: 2025-03-06T04:29:05.659+1400	INFO	finished scheduled compaction	{"compact-revision": 721, "took": "86.201µs", "hash": 2909194793, "current-db-size-bytes": 139264, "current-db-size": "139 kB", "current-db-size-in-use-bytes": 139264, "current-db-size-in-use": "139 kB"}
+    logger.go:130: 2025-03-06T04:29:05.659+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.659+1400	INFO	compact tree index	{"revision": 793}
+    logger.go:130: 2025-03-06T04:29:05.659+1400	INFO	finished scheduled compaction	{"compact-revision": 793, "took": "99.681µs", "hash": 1576921157, "current-db-size-bytes": 155648, "current-db-size": "156 kB", "current-db-size-in-use-bytes": 155648, "current-db-size-in-use": "156 kB"}
+    logger.go:130: 2025-03-06T04:29:05.659+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.659+1400	INFO	compact tree index	{"revision": 865}
+    logger.go:130: 2025-03-06T04:29:05.659+1400	INFO	finished scheduled compaction	{"compact-revision": 865, "took": "79.68µs", "hash": 4067701532, "current-db-size-bytes": 172032, "current-db-size": "172 kB", "current-db-size-in-use-bytes": 172032, "current-db-size-in-use": "172 kB"}
+    logger.go:130: 2025-03-06T04:29:05.659+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.659+1400	INFO	compact tree index	{"revision": 937}
+    logger.go:130: 2025-03-06T04:29:05.659+1400	INFO	finished scheduled compaction	{"compact-revision": 937, "took": "82.481µs", "hash": 2226384237, "current-db-size-bytes": 188416, "current-db-size": "188 kB", "current-db-size-in-use-bytes": 188416, "current-db-size-in-use": "188 kB"}
+    logger.go:130: 2025-03-06T04:29:05.659+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.660+1400	INFO	compact tree index	{"revision": 1009}
+    logger.go:130: 2025-03-06T04:29:05.686+1400	INFO	finished scheduled compaction	{"compact-revision": 1009, "took": "25.194801ms", "hash": 2923408134, "current-db-size-bytes": 266240, "current-db-size": "266 kB", "current-db-size-in-use-bytes": 94208, "current-db-size-in-use": "94 kB"}
+    logger.go:130: 2025-03-06T04:29:05.686+1400	INFO	storing new hash	{"hash": 2923408134, "revision": 1009, "compact-revision": 937}
+    logger.go:130: 2025-03-06T04:29:05.686+1400	INFO	compact tree index	{"revision": 1081}
+    logger.go:130: 2025-03-06T04:29:05.686+1400	INFO	finished scheduled compaction	{"compact-revision": 1081, "took": "86.201µs", "hash": 2680329256, "current-db-size-bytes": 266240, "current-db-size": "266 kB", "current-db-size-in-use-bytes": 98304, "current-db-size-in-use": "98 kB"}
+    logger.go:130: 2025-03-06T04:29:05.686+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.686+1400	INFO	compact tree index	{"revision": 1153}
+    logger.go:130: 2025-03-06T04:29:05.686+1400	INFO	finished scheduled compaction	{"compact-revision": 1153, "took": "70.32µs", "hash": 1546717673, "current-db-size-bytes": 266240, "current-db-size": "266 kB", "current-db-size-in-use-bytes": 114688, "current-db-size-in-use": "115 kB"}
+    logger.go:130: 2025-03-06T04:29:05.686+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.686+1400	INFO	compact tree index	{"revision": 1225}
+    logger.go:130: 2025-03-06T04:29:05.686+1400	INFO	finished scheduled compaction	{"compact-revision": 1225, "took": "72.521µs", "hash": 2713657846, "current-db-size-bytes": 266240, "current-db-size": "266 kB", "current-db-size-in-use-bytes": 131072, "current-db-size-in-use": "131 kB"}
+    logger.go:130: 2025-03-06T04:29:05.686+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+    logger.go:130: 2025-03-06T04:29:05.686+1400	INFO	compact tree index	{"revision": 1297}
+    logger.go:130: 2025-03-06T04:29:05.686+1400	INFO	finished scheduled compaction	{"compact-revision": 1297, "took": "70.001µs", "hash": 1046575299, "current-db-size-bytes": 266240, "current-db-size": "266 kB", "current-db-size-in-use-bytes": 143360, "current-db-size-in-use": "143 kB"}
+    logger.go:130: 2025-03-06T04:29:05.686+1400	INFO	previous compaction was interrupted, skip storing compaction hash value
+--- PASS: TestHashByRevValueLastRevision (0.09s)
 === RUN   TestCompactionHash
-    logger.go:130: 2026-04-07T08:44:40.742-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:40.742-1200	INFO	compact tree index	{"revision": 71}
-    logger.go:130: 2026-04-07T08:44:40.743-1200	INFO	finished scheduled compaction	{"compact-revision": 71, "took": "92.76µs", "hash": 3976298586, "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
-    logger.go:130: 2026-04-07T08:44:40.743-1200	INFO	storing new hash	{"hash": 3976298586, "revision": 71, "compact-revision": -1}
-    logger.go:130: 2026-04-07T08:44:40.743-1200	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
-    logger.go:130: 2026-04-07T08:44:40.743-1200	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes-diff": -12288, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes-diff": -20480, "current-db-size-in-use-bytes": 12288, "current-db-size-in-use": "12 kB", "took": "488.92µs"}
-    logger.go:130: 2026-04-07T08:44:40.744-1200	INFO	compact tree index	{"revision": 142}
-    logger.go:130: 2026-04-07T08:44:40.744-1200	INFO	finished scheduled compaction	{"compact-revision": 142, "took": "69.04µs", "hash": 2585585572, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes": 24576, "current-db-size-in-use": "25 kB"}
-    logger.go:130: 2026-04-07T08:44:40.744-1200	INFO	storing new hash	{"hash": 2585585572, "revision": 142, "compact-revision": 71}
-    logger.go:130: 2026-04-07T08:44:40.744-1200	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes": 24576, "current-db-size-in-use": "25 kB"}
-    logger.go:130: 2026-04-07T08:44:40.744-1200	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes-diff": -4096, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes-diff": -12288, "current-db-size-in-use-bytes": 12288, "current-db-size-in-use": "12 kB", "took": "416.16µs"}
-    logger.go:130: 2026-04-07T08:44:40.744-1200	INFO	compact tree index	{"revision": 213}
-    logger.go:130: 2026-04-07T08:44:40.745-1200	INFO	finished scheduled compaction	{"compact-revision": 213, "took": "74.68µs", "hash": 2172904216, "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
-    logger.go:130: 2026-04-07T08:44:40.745-1200	INFO	storing new hash	{"hash": 2172904216, "revision": 213, "compact-revision": 142}
-    logger.go:130: 2026-04-07T08:44:40.745-1200	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
-    logger.go:130: 2026-04-07T08:44:40.745-1200	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes-diff": -12288, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes-diff": -20480, "current-db-size-in-use-bytes": 12288, "current-db-size-in-use": "12 kB", "took": "326.72µs"}
-    logger.go:130: 2026-04-07T08:44:40.746-1200	INFO	compact tree index	{"revision": 284}
-    logger.go:130: 2026-04-07T08:44:40.746-1200	INFO	finished scheduled compaction	{"compact-revision": 284, "took": "80.64µs", "hash": 3526529295, "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
-    logger.go:130: 2026-04-07T08:44:40.746-1200	INFO	storing new hash	{"hash": 3526529295, "revision": 284, "compact-revision": 213}
-    logger.go:130: 2026-04-07T08:44:40.746-1200	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
-    logger.go:130: 2026-04-07T08:44:40.746-1200	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes-diff": -12288, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes-diff": -20480, "current-db-size-in-use-bytes": 12288, "current-db-size-in-use": "12 kB", "took": "359µs"}
-    logger.go:130: 2026-04-07T08:44:40.747-1200	INFO	compact tree index	{"revision": 355}
-    logger.go:130: 2026-04-07T08:44:40.747-1200	INFO	finished scheduled compaction	{"compact-revision": 355, "took": "72.44µs", "hash": 1177556615, "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
-    logger.go:130: 2026-04-07T08:44:40.747-1200	INFO	storing new hash	{"hash": 1177556615, "revision": 355, "compact-revision": 284}
-    logger.go:130: 2026-04-07T08:44:40.747-1200	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
-    logger.go:130: 2026-04-07T08:44:40.747-1200	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes-diff": -12288, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes-diff": -20480, "current-db-size-in-use-bytes": 12288, "current-db-size-in-use": "12 kB", "took": "353.28µs"}
-    logger.go:130: 2026-04-07T08:44:40.747-1200	INFO	compact tree index	{"revision": 426}
-    logger.go:130: 2026-04-07T08:44:40.748-1200	INFO	finished scheduled compaction	{"compact-revision": 426, "took": "400.96µs", "hash": 2992220004, "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
-    logger.go:130: 2026-04-07T08:44:40.748-1200	INFO	storing new hash	{"hash": 2992220004, "revision": 426, "compact-revision": 355}
-    logger.go:130: 2026-04-07T08:44:40.749-1200	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
-    logger.go:130: 2026-04-07T08:44:40.749-1200	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes-diff": -12288, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes-diff": -20480, "current-db-size-in-use-bytes": 12288, "current-db-size-in-use": "12 kB", "took": "536.04µs"}
-    logger.go:130: 2026-04-07T08:44:40.751-1200	INFO	compact tree index	{"revision": 497}
-    logger.go:130: 2026-04-07T08:44:40.751-1200	INFO	finished scheduled compaction	{"compact-revision": 497, "took": "76.64µs", "hash": 937143423, "current-db-size-bytes": 28672, "current-db-size": "29 kB", "current-db-size-in-use-bytes": 28672, "current-db-size-in-use": "29 kB"}
-    logger.go:130: 2026-04-07T08:44:40.751-1200	INFO	storing new hash	{"hash": 937143423, "revision": 497, "compact-revision": 426}
-    logger.go:130: 2026-04-07T08:44:40.752-1200	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes": 28672, "current-db-size": "29 kB", "current-db-size-in-use-bytes": 28672, "current-db-size-in-use": "29 kB"}
-    logger.go:130: 2026-04-07T08:44:40.752-1200	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes-diff": -8192, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes-diff": -16384, "current-db-size-in-use-bytes": 12288, "current-db-size-in-use": "12 kB", "took": "389.56µs"}
-    logger.go:130: 2026-04-07T08:44:40.752-1200	INFO	compact tree index	{"revision": 568}
-    logger.go:130: 2026-04-07T08:44:40.752-1200	INFO	finished scheduled compaction	{"compact-revision": 568, "took": "79.48µs", "hash": 2341302450, "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
-    logger.go:130: 2026-04-07T08:44:40.752-1200	INFO	storing new hash	{"hash": 2341302450, "revision": 568, "compact-revision": 497}
-    logger.go:130: 2026-04-07T08:44:40.752-1200	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
-    logger.go:130: 2026-04-07T08:44:40.753-1200	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes-diff": -12288, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes-diff": -20480, "current-db-size-in-use-bytes": 12288, "current-db-size-in-use": "12 kB", "took": "460.72µs"}
-    logger.go:130: 2026-04-07T08:44:40.753-1200	INFO	compact tree index	{"revision": 639}
-    logger.go:130: 2026-04-07T08:44:40.753-1200	INFO	finished scheduled compaction	{"compact-revision": 639, "took": "100.8µs", "hash": 1818057218, "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
-    logger.go:130: 2026-04-07T08:44:40.753-1200	INFO	storing new hash	{"hash": 1818057218, "revision": 639, "compact-revision": 568}
-    logger.go:130: 2026-04-07T08:44:40.753-1200	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
-    logger.go:130: 2026-04-07T08:44:40.754-1200	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes-diff": -12288, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes-diff": -20480, "current-db-size-in-use-bytes": 12288, "current-db-size-in-use": "12 kB", "took": "361.68µs"}
-    logger.go:130: 2026-04-07T08:44:40.755-1200	INFO	compact tree index	{"revision": 710}
-    logger.go:130: 2026-04-07T08:44:40.755-1200	INFO	finished scheduled compaction	{"compact-revision": 710, "took": "208.36µs", "hash": 2651660985, "current-db-size-bytes": 36864, "current-db-size": "37 kB", "current-db-size-in-use-bytes": 36864, "current-db-size-in-use": "37 kB"}
-    logger.go:130: 2026-04-07T08:44:40.755-1200	INFO	storing new hash	{"hash": 2651660985, "revision": 710, "compact-revision": 639}
-    logger.go:130: 2026-04-07T08:44:40.756-1200	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes": 36864, "current-db-size": "37 kB", "current-db-size-in-use-bytes": 36864, "current-db-size-in-use": "37 kB"}
-    logger.go:130: 2026-04-07T08:44:40.756-1200	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes-diff": -12288, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes-diff": -20480, "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB", "took": "429.4µs"}
-    logger.go:130: 2026-04-07T08:44:40.756-1200	INFO	compact tree index	{"revision": 781}
-    logger.go:130: 2026-04-07T08:44:40.757-1200	INFO	finished scheduled compaction	{"compact-revision": 781, "took": "184.76µs", "hash": 574385830, "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
-    logger.go:130: 2026-04-07T08:44:40.757-1200	INFO	storing new hash	{"hash": 574385830, "revision": 781, "compact-revision": 710}
-    logger.go:130: 2026-04-07T08:44:40.757-1200	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
-    logger.go:130: 2026-04-07T08:44:40.760-1200	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes-diff": -16384, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes-diff": -24576, "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB", "took": "2.78052ms"}
-    logger.go:130: 2026-04-07T08:44:40.760-1200	INFO	compact tree index	{"revision": 852}
-    logger.go:130: 2026-04-07T08:44:40.760-1200	INFO	finished scheduled compaction	{"compact-revision": 852, "took": "96.96µs", "hash": 1977831351, "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
-    logger.go:130: 2026-04-07T08:44:40.760-1200	INFO	storing new hash	{"hash": 1977831351, "revision": 852, "compact-revision": 781}
-    logger.go:130: 2026-04-07T08:44:40.760-1200	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
-    logger.go:130: 2026-04-07T08:44:40.761-1200	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes-diff": -16384, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes-diff": -24576, "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB", "took": "374.68µs"}
-    logger.go:130: 2026-04-07T08:44:40.761-1200	INFO	compact tree index	{"revision": 923}
-    logger.go:130: 2026-04-07T08:44:40.761-1200	INFO	finished scheduled compaction	{"compact-revision": 923, "took": "79.52µs", "hash": 639689256, "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
-    logger.go:130: 2026-04-07T08:44:40.761-1200	INFO	storing new hash	{"hash": 639689256, "revision": 923, "compact-revision": 852}
-    logger.go:130: 2026-04-07T08:44:40.761-1200	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
-    logger.go:130: 2026-04-07T08:44:40.762-1200	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes-diff": -16384, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes-diff": -24576, "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB", "took": "632.44µs"}
-    logger.go:130: 2026-04-07T08:44:40.762-1200	INFO	compact tree index	{"revision": 994}
-    logger.go:130: 2026-04-07T08:44:40.762-1200	INFO	finished scheduled compaction	{"compact-revision": 994, "took": "76.88µs", "hash": 1536840745, "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
-    logger.go:130: 2026-04-07T08:44:40.762-1200	INFO	storing new hash	{"hash": 1536840745, "revision": 994, "compact-revision": 923}
-    logger.go:130: 2026-04-07T08:44:40.762-1200	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
-    logger.go:130: 2026-04-07T08:44:40.763-1200	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes-diff": -16384, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes-diff": -24576, "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB", "took": "396.44µs"}
-    logger.go:130: 2026-04-07T08:44:40.763-1200	INFO	compact tree index	{"revision": 1065}
-    logger.go:130: 2026-04-07T08:44:40.763-1200	INFO	finished scheduled compaction	{"compact-revision": 1065, "took": "75.44µs", "hash": 855011760, "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
-    logger.go:130: 2026-04-07T08:44:40.763-1200	INFO	storing new hash	{"hash": 855011760, "revision": 1065, "compact-revision": 994}
-    logger.go:130: 2026-04-07T08:44:40.763-1200	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
-    logger.go:130: 2026-04-07T08:44:40.763-1200	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes-diff": -16384, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes-diff": -24576, "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB", "took": "364.52µs"}
-    logger.go:130: 2026-04-07T08:44:40.765-1200	INFO	compact tree index	{"revision": 1136}
-    logger.go:130: 2026-04-07T08:44:40.765-1200	INFO	finished scheduled compaction	{"compact-revision": 1136, "took": "85.68µs", "hash": 919280624, "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
-    logger.go:130: 2026-04-07T08:44:40.765-1200	INFO	storing new hash	{"hash": 919280624, "revision": 1136, "compact-revision": 1065}
-    logger.go:130: 2026-04-07T08:44:40.766-1200	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
-    logger.go:130: 2026-04-07T08:44:40.766-1200	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes-diff": -8192, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes-diff": -16384, "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB", "took": "689.12µs"}
-    logger.go:130: 2026-04-07T08:44:40.767-1200	INFO	compact tree index	{"revision": 1207}
-    logger.go:130: 2026-04-07T08:44:40.767-1200	INFO	finished scheduled compaction	{"compact-revision": 1207, "took": "79.2µs", "hash": 20220851, "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
-    logger.go:130: 2026-04-07T08:44:40.767-1200	INFO	storing new hash	{"hash": 20220851, "revision": 1207, "compact-revision": 1136}
-    logger.go:130: 2026-04-07T08:44:40.767-1200	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
-    logger.go:130: 2026-04-07T08:44:40.767-1200	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes-diff": -16384, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes-diff": -24576, "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB", "took": "365.28µs"}
-    logger.go:130: 2026-04-07T08:44:40.767-1200	INFO	compact tree index	{"revision": 1278}
-    logger.go:130: 2026-04-07T08:44:40.768-1200	INFO	finished scheduled compaction	{"compact-revision": 1278, "took": "75.52µs", "hash": 3487583973, "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
-    logger.go:130: 2026-04-07T08:44:40.768-1200	INFO	storing new hash	{"hash": 3487583973, "revision": 1278, "compact-revision": 1207}
-    logger.go:130: 2026-04-07T08:44:40.768-1200	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
-    logger.go:130: 2026-04-07T08:44:40.768-1200	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes-diff": -8192, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes-diff": -16384, "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB", "took": "332.88µs"}
-    logger.go:130: 2026-04-07T08:44:40.775-1200	INFO	compact tree index	{"revision": 2488}
-    logger.go:130: 2026-04-07T08:44:40.786-1200	INFO	finished scheduled compaction	{"compact-revision": 2488, "took": "10.47044ms", "hash": 2489925777, "current-db-size-bytes": 131072, "current-db-size": "131 kB", "current-db-size-in-use-bytes": 131072, "current-db-size-in-use": "131 kB"}
-    logger.go:130: 2026-04-07T08:44:40.786-1200	INFO	storing new hash	{"hash": 2489925777, "revision": 2488, "compact-revision": 1278}
-    logger.go:130: 2026-04-07T08:44:40.786-1200	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes": 131072, "current-db-size": "131 kB", "current-db-size-in-use-bytes": 131072, "current-db-size-in-use": "131 kB"}
-    logger.go:130: 2026-04-07T08:44:40.786-1200	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2976708491/001/etcd_backend_test4008180683/database", "current-db-size-bytes-diff": -106496, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes-diff": -114688, "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB", "took": "502.44µs"}
---- PASS: TestCompactionHash (0.05s)
+    logger.go:130: 2025-03-06T04:29:05.707+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:29:05.718+1400	INFO	compact tree index	{"revision": 71}
+    logger.go:130: 2025-03-06T04:29:05.718+1400	INFO	finished scheduled compaction	{"compact-revision": 71, "took": "68.161µs", "hash": 3976298586, "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
+    logger.go:130: 2025-03-06T04:29:05.718+1400	INFO	storing new hash	{"hash": 3976298586, "revision": 71, "compact-revision": -1}
+    logger.go:130: 2025-03-06T04:29:05.718+1400	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
+    logger.go:130: 2025-03-06T04:29:05.719+1400	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes-diff": -12288, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes-diff": -20480, "current-db-size-in-use-bytes": 12288, "current-db-size-in-use": "12 kB", "took": "583.924µs"}
+    logger.go:130: 2025-03-06T04:29:05.719+1400	INFO	compact tree index	{"revision": 142}
+    logger.go:130: 2025-03-06T04:29:05.719+1400	INFO	finished scheduled compaction	{"compact-revision": 142, "took": "65.521µs", "hash": 2585585572, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes": 24576, "current-db-size-in-use": "25 kB"}
+    logger.go:130: 2025-03-06T04:29:05.719+1400	INFO	storing new hash	{"hash": 2585585572, "revision": 142, "compact-revision": 71}
+    logger.go:130: 2025-03-06T04:29:05.719+1400	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes": 24576, "current-db-size-in-use": "25 kB"}
+    logger.go:130: 2025-03-06T04:29:05.719+1400	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes-diff": -4096, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes-diff": -12288, "current-db-size-in-use-bytes": 12288, "current-db-size-in-use": "12 kB", "took": "445.443µs"}
+    logger.go:130: 2025-03-06T04:29:05.720+1400	INFO	compact tree index	{"revision": 213}
+    logger.go:130: 2025-03-06T04:29:05.720+1400	INFO	finished scheduled compaction	{"compact-revision": 213, "took": "74.801µs", "hash": 2172904216, "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
+    logger.go:130: 2025-03-06T04:29:05.720+1400	INFO	storing new hash	{"hash": 2172904216, "revision": 213, "compact-revision": 142}
+    logger.go:130: 2025-03-06T04:29:05.720+1400	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
+    logger.go:130: 2025-03-06T04:29:05.720+1400	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes-diff": -12288, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes-diff": -20480, "current-db-size-in-use-bytes": 12288, "current-db-size-in-use": "12 kB", "took": "446.683µs"}
+    logger.go:130: 2025-03-06T04:29:05.721+1400	INFO	compact tree index	{"revision": 284}
+    logger.go:130: 2025-03-06T04:29:05.721+1400	INFO	finished scheduled compaction	{"compact-revision": 284, "took": "68.24µs", "hash": 3526529295, "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
+    logger.go:130: 2025-03-06T04:29:05.721+1400	INFO	storing new hash	{"hash": 3526529295, "revision": 284, "compact-revision": 213}
+    logger.go:130: 2025-03-06T04:29:05.721+1400	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
+    logger.go:130: 2025-03-06T04:29:05.721+1400	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes-diff": -12288, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes-diff": -20480, "current-db-size-in-use-bytes": 12288, "current-db-size-in-use": "12 kB", "took": "445.682µs"}
+    logger.go:130: 2025-03-06T04:29:05.722+1400	INFO	compact tree index	{"revision": 355}
+    logger.go:130: 2025-03-06T04:29:05.722+1400	INFO	finished scheduled compaction	{"compact-revision": 355, "took": "72.56µs", "hash": 1177556615, "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
+    logger.go:130: 2025-03-06T04:29:05.722+1400	INFO	storing new hash	{"hash": 1177556615, "revision": 355, "compact-revision": 284}
+    logger.go:130: 2025-03-06T04:29:05.722+1400	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
+    logger.go:130: 2025-03-06T04:29:05.722+1400	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes-diff": -12288, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes-diff": -20480, "current-db-size-in-use-bytes": 12288, "current-db-size-in-use": "12 kB", "took": "439.483µs"}
+    logger.go:130: 2025-03-06T04:29:05.723+1400	INFO	compact tree index	{"revision": 426}
+    logger.go:130: 2025-03-06T04:29:05.723+1400	INFO	finished scheduled compaction	{"compact-revision": 426, "took": "67.041µs", "hash": 2992220004, "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
+    logger.go:130: 2025-03-06T04:29:05.723+1400	INFO	storing new hash	{"hash": 2992220004, "revision": 426, "compact-revision": 355}
+    logger.go:130: 2025-03-06T04:29:05.723+1400	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
+    logger.go:130: 2025-03-06T04:29:05.723+1400	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes-diff": -12288, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes-diff": -20480, "current-db-size-in-use-bytes": 12288, "current-db-size-in-use": "12 kB", "took": "429.123µs"}
+    logger.go:130: 2025-03-06T04:29:05.730+1400	INFO	compact tree index	{"revision": 497}
+    logger.go:130: 2025-03-06T04:29:05.731+1400	INFO	finished scheduled compaction	{"compact-revision": 497, "took": "240.721µs", "hash": 937143423, "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
+    logger.go:130: 2025-03-06T04:29:05.731+1400	INFO	storing new hash	{"hash": 937143423, "revision": 497, "compact-revision": 426}
+    logger.go:130: 2025-03-06T04:29:05.731+1400	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
+    logger.go:130: 2025-03-06T04:29:05.731+1400	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes-diff": -12288, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes-diff": -20480, "current-db-size-in-use-bytes": 12288, "current-db-size-in-use": "12 kB", "took": "569.684µs"}
+    logger.go:130: 2025-03-06T04:29:05.732+1400	INFO	compact tree index	{"revision": 568}
+    logger.go:130: 2025-03-06T04:29:05.732+1400	INFO	finished scheduled compaction	{"compact-revision": 568, "took": "174.961µs", "hash": 2341302450, "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
+    logger.go:130: 2025-03-06T04:29:05.732+1400	INFO	storing new hash	{"hash": 2341302450, "revision": 568, "compact-revision": 497}
+    logger.go:130: 2025-03-06T04:29:05.732+1400	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
+    logger.go:130: 2025-03-06T04:29:05.733+1400	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes-diff": -12288, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes-diff": -20480, "current-db-size-in-use-bytes": 12288, "current-db-size-in-use": "12 kB", "took": "492.283µs"}
+    logger.go:130: 2025-03-06T04:29:05.740+1400	INFO	compact tree index	{"revision": 639}
+    logger.go:130: 2025-03-06T04:29:05.740+1400	INFO	finished scheduled compaction	{"compact-revision": 639, "took": "116.161µs", "hash": 1818057218, "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
+    logger.go:130: 2025-03-06T04:29:05.740+1400	INFO	storing new hash	{"hash": 1818057218, "revision": 639, "compact-revision": 568}
+    logger.go:130: 2025-03-06T04:29:05.741+1400	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes": 32768, "current-db-size": "33 kB", "current-db-size-in-use-bytes": 32768, "current-db-size-in-use": "33 kB"}
+    logger.go:130: 2025-03-06T04:29:05.741+1400	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes-diff": -12288, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes-diff": -20480, "current-db-size-in-use-bytes": 12288, "current-db-size-in-use": "12 kB", "took": "497.283µs"}
+    logger.go:130: 2025-03-06T04:29:05.741+1400	INFO	compact tree index	{"revision": 710}
+    logger.go:130: 2025-03-06T04:29:05.742+1400	INFO	finished scheduled compaction	{"compact-revision": 710, "took": "91.401µs", "hash": 2651660985, "current-db-size-bytes": 36864, "current-db-size": "37 kB", "current-db-size-in-use-bytes": 36864, "current-db-size-in-use": "37 kB"}
+    logger.go:130: 2025-03-06T04:29:05.742+1400	INFO	storing new hash	{"hash": 2651660985, "revision": 710, "compact-revision": 639}
+    logger.go:130: 2025-03-06T04:29:05.742+1400	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes": 36864, "current-db-size": "37 kB", "current-db-size-in-use-bytes": 36864, "current-db-size-in-use": "37 kB"}
+    logger.go:130: 2025-03-06T04:29:05.743+1400	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes-diff": -12288, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes-diff": -20480, "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB", "took": "928.766µs"}
+    logger.go:130: 2025-03-06T04:29:05.743+1400	INFO	compact tree index	{"revision": 781}
+    logger.go:130: 2025-03-06T04:29:05.743+1400	INFO	finished scheduled compaction	{"compact-revision": 781, "took": "94.32µs", "hash": 574385830, "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
+    logger.go:130: 2025-03-06T04:29:05.743+1400	INFO	storing new hash	{"hash": 574385830, "revision": 781, "compact-revision": 710}
+    logger.go:130: 2025-03-06T04:29:05.743+1400	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
+    logger.go:130: 2025-03-06T04:29:05.744+1400	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes-diff": -16384, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes-diff": -24576, "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB", "took": "461.763µs"}
+    logger.go:130: 2025-03-06T04:29:05.744+1400	INFO	compact tree index	{"revision": 852}
+    logger.go:130: 2025-03-06T04:29:05.744+1400	INFO	finished scheduled compaction	{"compact-revision": 852, "took": "78.801µs", "hash": 1977831351, "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
+    logger.go:130: 2025-03-06T04:29:05.744+1400	INFO	storing new hash	{"hash": 1977831351, "revision": 852, "compact-revision": 781}
+    logger.go:130: 2025-03-06T04:29:05.744+1400	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
+    logger.go:130: 2025-03-06T04:29:05.744+1400	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes-diff": -16384, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes-diff": -24576, "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB", "took": "448.683µs"}
+    logger.go:130: 2025-03-06T04:29:05.747+1400	INFO	compact tree index	{"revision": 923}
+    logger.go:130: 2025-03-06T04:29:05.747+1400	INFO	finished scheduled compaction	{"compact-revision": 923, "took": "221.802µs", "hash": 639689256, "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
+    logger.go:130: 2025-03-06T04:29:05.747+1400	INFO	storing new hash	{"hash": 639689256, "revision": 923, "compact-revision": 852}
+    logger.go:130: 2025-03-06T04:29:05.748+1400	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
+    logger.go:130: 2025-03-06T04:29:05.748+1400	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes-diff": -16384, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes-diff": -24576, "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB", "took": "560.084µs"}
+    logger.go:130: 2025-03-06T04:29:05.748+1400	INFO	compact tree index	{"revision": 994}
+    logger.go:130: 2025-03-06T04:29:05.749+1400	INFO	finished scheduled compaction	{"compact-revision": 994, "took": "175.041µs", "hash": 1536840745, "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
+    logger.go:130: 2025-03-06T04:29:05.749+1400	INFO	storing new hash	{"hash": 1536840745, "revision": 994, "compact-revision": 923}
+    logger.go:130: 2025-03-06T04:29:05.749+1400	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
+    logger.go:130: 2025-03-06T04:29:05.749+1400	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes-diff": -16384, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes-diff": -24576, "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB", "took": "498.043µs"}
+    logger.go:130: 2025-03-06T04:29:05.750+1400	INFO	compact tree index	{"revision": 1065}
+    logger.go:130: 2025-03-06T04:29:05.750+1400	INFO	finished scheduled compaction	{"compact-revision": 1065, "took": "191.441µs", "hash": 855011760, "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
+    logger.go:130: 2025-03-06T04:29:05.750+1400	INFO	storing new hash	{"hash": 855011760, "revision": 1065, "compact-revision": 994}
+    logger.go:130: 2025-03-06T04:29:05.750+1400	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
+    logger.go:130: 2025-03-06T04:29:05.751+1400	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes-diff": -16384, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes-diff": -24576, "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB", "took": "485.523µs"}
+    logger.go:130: 2025-03-06T04:29:05.751+1400	INFO	compact tree index	{"revision": 1136}
+    logger.go:130: 2025-03-06T04:29:05.751+1400	INFO	finished scheduled compaction	{"compact-revision": 1136, "took": "181.881µs", "hash": 919280624, "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
+    logger.go:130: 2025-03-06T04:29:05.751+1400	INFO	storing new hash	{"hash": 919280624, "revision": 1136, "compact-revision": 1065}
+    logger.go:130: 2025-03-06T04:29:05.751+1400	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
+    logger.go:130: 2025-03-06T04:29:05.752+1400	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes-diff": -16384, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes-diff": -24576, "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB", "took": "501.683µs"}
+    logger.go:130: 2025-03-06T04:29:05.752+1400	INFO	compact tree index	{"revision": 1207}
+    logger.go:130: 2025-03-06T04:29:05.752+1400	INFO	finished scheduled compaction	{"compact-revision": 1207, "took": "174.162µs", "hash": 20220851, "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
+    logger.go:130: 2025-03-06T04:29:05.752+1400	INFO	storing new hash	{"hash": 20220851, "revision": 1207, "compact-revision": 1136}
+    logger.go:130: 2025-03-06T04:29:05.753+1400	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
+    logger.go:130: 2025-03-06T04:29:05.753+1400	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes-diff": -16384, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes-diff": -24576, "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB", "took": "489.203µs"}
+    logger.go:130: 2025-03-06T04:29:05.758+1400	INFO	compact tree index	{"revision": 1278}
+    logger.go:130: 2025-03-06T04:29:05.758+1400	INFO	finished scheduled compaction	{"compact-revision": 1278, "took": "82.16µs", "hash": 3487583973, "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
+    logger.go:130: 2025-03-06T04:29:05.758+1400	INFO	storing new hash	{"hash": 3487583973, "revision": 1278, "compact-revision": 1207}
+    logger.go:130: 2025-03-06T04:29:05.758+1400	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes": 40960, "current-db-size": "41 kB", "current-db-size-in-use-bytes": 40960, "current-db-size-in-use": "41 kB"}
+    logger.go:130: 2025-03-06T04:29:05.759+1400	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes-diff": -16384, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes-diff": -24576, "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB", "took": "506.203µs"}
+    logger.go:130: 2025-03-06T04:29:05.766+1400	INFO	compact tree index	{"revision": 2488}
+    logger.go:130: 2025-03-06T04:29:05.777+1400	INFO	finished scheduled compaction	{"compact-revision": 2488, "took": "10.652188ms", "hash": 2489925777, "current-db-size-bytes": 131072, "current-db-size": "131 kB", "current-db-size-in-use-bytes": 131072, "current-db-size-in-use": "131 kB"}
+    logger.go:130: 2025-03-06T04:29:05.777+1400	INFO	storing new hash	{"hash": 2489925777, "revision": 2488, "compact-revision": 1278}
+    logger.go:130: 2025-03-06T04:29:05.777+1400	INFO	defragmenting	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes": 131072, "current-db-size": "131 kB", "current-db-size-in-use-bytes": 131072, "current-db-size-in-use": "131 kB"}
+    logger.go:130: 2025-03-06T04:29:05.777+1400	INFO	finished defragmenting directory	{"path": "/tmp/TestCompactionHash2999736727/001/etcd_backend_test2970305931/database", "current-db-size-bytes-diff": -106496, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes-diff": -114688, "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB", "took": "639.284µs"}
+--- PASS: TestCompactionHash (0.08s)
 === RUN   TestHasherStore
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 0, "revision": 10, "compact-revision": 100}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 1, "revision": 11, "compact-revision": 101}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 2, "revision": 12, "compact-revision": 102}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 3, "revision": 13, "compact-revision": 103}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 4, "revision": 14, "compact-revision": 104}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 5, "revision": 15, "compact-revision": 105}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 6, "revision": 16, "compact-revision": 106}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 7, "revision": 17, "compact-revision": 107}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 8, "revision": 18, "compact-revision": 108}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 9, "revision": 19, "compact-revision": 109}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 0, "revision": 10, "compact-revision": 100}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 1, "revision": 11, "compact-revision": 101}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 2, "revision": 12, "compact-revision": 102}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 3, "revision": 13, "compact-revision": 103}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 4, "revision": 14, "compact-revision": 104}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 5, "revision": 15, "compact-revision": 105}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 6, "revision": 16, "compact-revision": 106}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 7, "revision": 17, "compact-revision": 107}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 8, "revision": 18, "compact-revision": 108}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 9, "revision": 19, "compact-revision": 109}
 --- PASS: TestHasherStore (0.00s)
 === RUN   TestHasherStoreFull
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 0, "revision": 100, "compact-revision": 0}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 0, "revision": 101, "compact-revision": 0}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 0, "revision": 102, "compact-revision": 0}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 0, "revision": 103, "compact-revision": 0}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 0, "revision": 104, "compact-revision": 0}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 0, "revision": 105, "compact-revision": 0}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 0, "revision": 106, "compact-revision": 0}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 0, "revision": 107, "compact-revision": 0}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 0, "revision": 108, "compact-revision": 0}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 0, "revision": 109, "compact-revision": 0}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 0, "revision": 99, "compact-revision": 0}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	storing new hash	{"hash": 0, "revision": 111, "compact-revision": 0}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 0, "revision": 100, "compact-revision": 0}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 0, "revision": 101, "compact-revision": 0}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 0, "revision": 102, "compact-revision": 0}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 0, "revision": 103, "compact-revision": 0}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 0, "revision": 104, "compact-revision": 0}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 0, "revision": 105, "compact-revision": 0}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 0, "revision": 106, "compact-revision": 0}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 0, "revision": 107, "compact-revision": 0}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 0, "revision": 108, "compact-revision": 0}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 0, "revision": 109, "compact-revision": 0}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 0, "revision": 99, "compact-revision": 0}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	storing new hash	{"hash": 0, "revision": 111, "compact-revision": 0}
 --- PASS: TestHasherStoreFull (0.00s)
 === RUN   TestIndexGet
 --- PASS: TestIndexGet (0.00s)
@@ -19428,44 +19557,44 @@
 === RUN   TestIndexRangeSince
 --- PASS: TestIndexRangeSince (0.00s)
 === RUN   TestIndexCompactAndKeep
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 1}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 2}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 3}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 4}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 5}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 6}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 7}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 8}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 9}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 10}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 11}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 12}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 13}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 14}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 15}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 16}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 17}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 18}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 19}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 1}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 2}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 3}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 4}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 5}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 6}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 7}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 8}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 9}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 10}
-    logger.go:130: 2026-04-07T08:44:40.787-1200	INFO	compact tree index	{"revision": 11}
-    logger.go:130: 2026-04-07T08:44:40.788-1200	INFO	compact tree index	{"revision": 12}
-    logger.go:130: 2026-04-07T08:44:40.788-1200	INFO	compact tree index	{"revision": 13}
-    logger.go:130: 2026-04-07T08:44:40.788-1200	INFO	compact tree index	{"revision": 14}
-    logger.go:130: 2026-04-07T08:44:40.788-1200	INFO	compact tree index	{"revision": 15}
-    logger.go:130: 2026-04-07T08:44:40.788-1200	INFO	compact tree index	{"revision": 16}
-    logger.go:130: 2026-04-07T08:44:40.788-1200	INFO	compact tree index	{"revision": 17}
-    logger.go:130: 2026-04-07T08:44:40.788-1200	INFO	compact tree index	{"revision": 18}
-    logger.go:130: 2026-04-07T08:44:40.788-1200	INFO	compact tree index	{"revision": 19}
+    logger.go:130: 2025-03-06T04:29:05.778+1400	INFO	compact tree index	{"revision": 1}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 2}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 3}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 4}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 5}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 6}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 7}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 8}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 9}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 10}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 11}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 12}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 13}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 14}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 15}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 16}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 17}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 18}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 19}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 1}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 2}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 3}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 4}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 5}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 6}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 7}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 8}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 9}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 10}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 11}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 12}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 13}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 14}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 15}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 16}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 17}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 18}
+    logger.go:130: 2025-03-06T04:29:05.779+1400	INFO	compact tree index	{"revision": 19}
 --- PASS: TestIndexCompactAndKeep (0.00s)
 === RUN   TestKeyIndexGet
 --- PASS: TestKeyIndexGet (0.00s)
@@ -19493,7 +19622,7 @@
 --- PASS: TestGenerationWalk (0.00s)
 === RUN   TestKVRange
 {"level":"info","msg":"kvstore restored","current-rev":1}
---- PASS: TestKVRange (0.00s)
+--- PASS: TestKVRange (0.01s)
 === RUN   TestKVTxnRange
 {"level":"info","msg":"kvstore restored","current-rev":1}
 --- PASS: TestKVTxnRange (0.00s)
@@ -19505,7 +19634,7 @@
 --- PASS: TestKVTxnRangeRev (0.00s)
 === RUN   TestKVRangeBadRev
 {"level":"info","msg":"kvstore restored","current-rev":1}
---- PASS: TestKVRangeBadRev (0.00s)
+--- PASS: TestKVRangeBadRev (0.01s)
 === RUN   TestKVTxnRangeBadRev
 {"level":"info","msg":"kvstore restored","current-rev":1}
 --- PASS: TestKVTxnRangeBadRev (0.00s)
@@ -19514,7 +19643,7 @@
 --- PASS: TestKVRangeLimit (0.00s)
 === RUN   TestKVTxnRangeLimit
 {"level":"info","msg":"kvstore restored","current-rev":1}
---- PASS: TestKVTxnRangeLimit (0.00s)
+--- PASS: TestKVTxnRangeLimit (0.01s)
 === RUN   TestKVPutMultipleTimes
 {"level":"info","msg":"kvstore restored","current-rev":1}
 --- PASS: TestKVPutMultipleTimes (0.01s)
@@ -19536,7 +19665,7 @@
 {"level":"info","msg":"kvstore restored","current-rev":1}
 {"level":"info","msg":"kvstore restored","current-rev":1}
 {"level":"info","msg":"kvstore restored","current-rev":1}
---- PASS: TestKVTxnDeleteRange (0.01s)
+--- PASS: TestKVTxnDeleteRange (0.00s)
 === RUN   TestKVDeleteMultipleTimes
 {"level":"info","msg":"kvstore restored","current-rev":1}
 --- PASS: TestKVDeleteMultipleTimes (0.00s)
@@ -19554,12 +19683,9 @@
 --- PASS: TestKVTxnNonBlockRange (0.00s)
 === RUN   TestKVTxnOperationInSequence
 {"level":"info","msg":"kvstore restored","current-rev":1}
---- PASS: TestKVTxnOperationInSequence (0.00s)
+--- PASS: TestKVTxnOperationInSequence (0.01s)
 === RUN   TestKVCompactReserveLastValue
 {"level":"info","msg":"kvstore restored","current-rev":1}
-{"level":"info","msg":"compact tree index","revision":1}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":1,"took":"27.48µs","hash":1084519789,"current-db-size-bytes":28672,"current-db-size":"29 kB","current-db-size-in-use-bytes":28672,"current-db-size-in-use":"29 kB"}
-{"level":"info","msg":"storing new hash","hash":1084519789,"revision":1,"compact-revision":-1}
 --- PASS: TestKVCompactReserveLastValue (0.00s)
 === RUN   TestKVCompactBad
 {"level":"info","msg":"kvstore restored","current-rev":1}
@@ -19568,7 +19694,7 @@
 {"level":"info","msg":"kvstore restored","current-rev":1}
 {"level":"info","msg":"kvstore restored","current-rev":1}
 {"level":"info","msg":"kvstore restored","current-rev":1}
---- PASS: TestKVHash (0.00s)
+--- PASS: TestKVHash (0.01s)
 === RUN   TestKVRestore
 {"level":"info","msg":"kvstore restored","current-rev":1}
 {"level":"info","msg":"kvstore restored","current-rev":5}
@@ -19578,9 +19704,9 @@
 {"level":"info","msg":"kvstore restored","current-rev":3}
 {"level":"info","msg":"resume scheduled compaction","meta-bucket-name":"meta","meta-bucket-name-key":"scheduledCompactRev","scheduled-compact-revision":1}
 {"level":"info","msg":"compact tree index","revision":1}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":1,"took":"17.36µs","hash":1084519789,"current-db-size-bytes":28672,"current-db-size":"29 kB","current-db-size-in-use-bytes":28672,"current-db-size-in-use":"29 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":1,"took":"371.483µs","hash":1084519789,"current-db-size-bytes":28672,"current-db-size":"29 kB","current-db-size-in-use-bytes":28672,"current-db-size-in-use":"29 kB"}
 {"level":"info","msg":"previous compaction was interrupted, skip storing compaction hash value"}
---- PASS: TestKVRestore (0.04s)
+--- PASS: TestKVRestore (0.06s)
 === RUN   TestKVSnapshot
 {"level":"info","msg":"kvstore restored","current-rev":1}
 {"level":"info","msg":"kvstore restored","current-rev":4}
@@ -19589,26 +19715,26 @@
 {"level":"info","msg":"kvstore restored","current-rev":1}
 --- PASS: TestWatchableKVWatch (0.10s)
 === RUN   TestScheduleCompaction
-    logger.go:130: 2026-04-07T08:44:41.015-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:41.015-1200	INFO	finished scheduled compaction	{"compact-revision": 1, "took": "377.48µs", "hash": 1302247667, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB"}
-    logger.go:130: 2026-04-07T08:44:41.017-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:41.018-1200	INFO	finished scheduled compaction	{"compact-revision": 3, "took": "95.52µs", "hash": 1393968156, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes": 16384, "current-db-size-in-use": "16 kB"}
-    logger.go:130: 2026-04-07T08:44:41.019-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:41.019-1200	INFO	finished scheduled compaction	{"compact-revision": 1, "took": "22.92µs", "hash": 1302247667, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes": 20480, "current-db-size-in-use": "20 kB"}
-    logger.go:130: 2026-04-07T08:44:41.022-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:41.022-1200	INFO	finished scheduled compaction	{"compact-revision": 3, "took": "97.52µs", "hash": 1393968156, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes": 24576, "current-db-size-in-use": "25 kB"}
+    logger.go:130: 2025-03-06T04:29:06.068+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:29:06.068+1400	INFO	finished scheduled compaction	{"compact-revision": 1, "took": "39.72µs", "hash": 1302247667, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes": 24576, "current-db-size-in-use": "25 kB"}
+    logger.go:130: 2025-03-06T04:29:06.073+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:29:06.073+1400	INFO	finished scheduled compaction	{"compact-revision": 3, "took": "57.88µs", "hash": 1393968156, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes": 24576, "current-db-size-in-use": "25 kB"}
+    logger.go:130: 2025-03-06T04:29:06.076+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:29:06.076+1400	INFO	finished scheduled compaction	{"compact-revision": 1, "took": "26.92µs", "hash": 1302247667, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes": 20480, "current-db-size-in-use": "20 kB"}
+    logger.go:130: 2025-03-06T04:29:06.077+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:29:06.081+1400	INFO	finished scheduled compaction	{"compact-revision": 3, "took": "4.128826ms", "hash": 1393968156, "current-db-size-bytes": 24576, "current-db-size": "25 kB", "current-db-size-in-use-bytes": 24576, "current-db-size-in-use": "25 kB"}
 --- PASS: TestScheduleCompaction (0.01s)
 === RUN   TestCompactAllAndRestore
 {"level":"info","msg":"kvstore restored","current-rev":1}
 {"level":"info","msg":"compact tree index","revision":5}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":5,"took":"72.32µs","hash":873998276,"current-db-size-bytes":20480,"current-db-size":"20 kB","current-db-size-in-use-bytes":16384,"current-db-size-in-use":"16 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":5,"took":"36.32µs","hash":873998276,"current-db-size-bytes":28672,"current-db-size":"29 kB","current-db-size-in-use-bytes":28672,"current-db-size-in-use":"29 kB"}
 {"level":"info","msg":"storing new hash","hash":873998276,"revision":5,"compact-revision":-1}
 {"level":"info","msg":"restored last compact revision","meta-bucket-name":"meta","meta-bucket-name-key":"finishedCompactRev","restored-compact-revision":5}
 {"level":"info","msg":"kvstore restored","current-rev":5}
 --- PASS: TestCompactAllAndRestore (0.00s)
 === RUN   TestStoreRev
 {"level":"info","msg":"kvstore restored","current-rev":1}
---- PASS: TestStoreRev (0.00s)
+--- PASS: TestStoreRev (0.01s)
 === RUN   TestStorePut
 --- PASS: TestStorePut (0.00s)
 === RUN   TestStoreRange
@@ -19616,7 +19742,7 @@
 === RUN   TestStoreDeleteRange
 --- PASS: TestStoreDeleteRange (0.00s)
 === RUN   TestStoreCompact
-{"level":"info","msg":"finished scheduled compaction","compact-revision":3,"took":"11.2µs","hash":3457566959,"current-db-size-bytes":0,"current-db-size":"0 B","current-db-size-in-use-bytes":0,"current-db-size-in-use":"0 B"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":3,"took":"16.04µs","hash":3457566959,"current-db-size-bytes":0,"current-db-size":"0 B","current-db-size-in-use-bytes":0,"current-db-size-in-use":"0 B"}
 {"level":"info","msg":"storing new hash","hash":3457566959,"revision":3,"compact-revision":-1}
 --- PASS: TestStoreCompact (0.00s)
 === RUN   TestStoreRestore
@@ -19632,323 +19758,321 @@
 {"level":"info","msg":"kvstore restored","current-rev":4}
 {"level":"info","msg":"resume scheduled compaction","meta-bucket-name":"meta","meta-bucket-name-key":"scheduledCompactRev","scheduled-compact-revision":2}
 {"level":"info","msg":"compact tree index","revision":2}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":2,"took":"22.72µs","hash":3305255506,"current-db-size-bytes":28672,"current-db-size":"29 kB","current-db-size-in-use-bytes":28672,"current-db-size-in-use":"29 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":2,"took":"13.64µs","hash":3305255506,"current-db-size-bytes":28672,"current-db-size":"29 kB","current-db-size-in-use-bytes":28672,"current-db-size-in-use":"29 kB"}
 {"level":"info","msg":"previous compaction was interrupted, skip storing compaction hash value"}
---- PASS: TestRestoreContinueUnfinishedCompaction (0.10s)
+--- PASS: TestRestoreContinueUnfinishedCompaction (0.11s)
 === RUN   TestHashKVWhenCompacting
 {"level":"info","msg":"kvstore restored","current-rev":1}
 {"level":"info","msg":"compact tree index","revision":9900}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9900,"took":"220.34836ms","hash":2982592828,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":94208,"current-db-size-in-use":"94 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9900,"took":"115.775699ms","hash":2982592828,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":249856,"current-db-size-in-use":"250 kB"}
 {"level":"info","msg":"storing new hash","hash":2982592828,"revision":9900,"compact-revision":-1}
 {"level":"info","msg":"compact tree index","revision":9901}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9901,"took":"791.24µs","hash":4092902393,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":40960,"current-db-size-in-use":"41 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9901,"took":"169.361µs","hash":4092902393,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":110592,"current-db-size-in-use":"111 kB"}
 {"level":"info","msg":"storing new hash","hash":4092902393,"revision":9901,"compact-revision":9900}
 {"level":"info","msg":"compact tree index","revision":9902}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9902,"took":"460.44µs","hash":3442946395,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":45056,"current-db-size-in-use":"45 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9902,"took":"174.361µs","hash":3442946395,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":3442946395,"revision":9902,"compact-revision":9901}
 {"level":"info","msg":"compact tree index","revision":9903}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9903,"took":"451.04µs","hash":3934476647,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9903,"took":"53.92µs","hash":3934476647,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":3934476647,"revision":9903,"compact-revision":9902}
 {"level":"info","msg":"compact tree index","revision":9904}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9904,"took":"505.08µs","hash":1979317650,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":45056,"current-db-size-in-use":"45 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9904,"took":"35.521µs","hash":1979317650,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":1979317650,"revision":9904,"compact-revision":9903}
 {"level":"info","msg":"compact tree index","revision":9905}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9905,"took":"91.8µs","hash":4126965741,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":45056,"current-db-size-in-use":"45 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9905,"took":"59µs","hash":4126965741,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":4126965741,"revision":9905,"compact-revision":9904}
 {"level":"info","msg":"compact tree index","revision":9906}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9906,"took":"587.48µs","hash":3409966415,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":40960,"current-db-size-in-use":"41 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9906,"took":"40.521µs","hash":3409966415,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":3409966415,"revision":9906,"compact-revision":9905}
 {"level":"info","msg":"compact tree index","revision":9907}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9907,"took":"807.88µs","hash":3968572787,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":61440,"current-db-size-in-use":"61 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9907,"took":"53.6µs","hash":3968572787,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":61440,"current-db-size-in-use":"61 kB"}
 {"level":"info","msg":"storing new hash","hash":3968572787,"revision":9907,"compact-revision":9906}
 {"level":"info","msg":"compact tree index","revision":9908}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9908,"took":"557.36µs","hash":1013037252,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":45056,"current-db-size-in-use":"45 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9908,"took":"56.64µs","hash":1013037252,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":61440,"current-db-size-in-use":"61 kB"}
 {"level":"info","msg":"storing new hash","hash":1013037252,"revision":9908,"compact-revision":9907}
 {"level":"info","msg":"compact tree index","revision":9909}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9909,"took":"625.28µs","hash":1305141790,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9909,"took":"62.48µs","hash":1305141790,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":1305141790,"revision":9909,"compact-revision":9908}
 {"level":"info","msg":"compact tree index","revision":9910}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9910,"took":"545.44µs","hash":189389043,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9910,"took":"67.2µs","hash":189389043,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":189389043,"revision":9910,"compact-revision":9909}
 {"level":"info","msg":"compact tree index","revision":9911}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9911,"took":"661.96µs","hash":754823375,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":40960,"current-db-size-in-use":"41 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9911,"took":"60.8µs","hash":754823375,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":754823375,"revision":9911,"compact-revision":9910}
 {"level":"info","msg":"compact tree index","revision":9912}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9912,"took":"483.24µs","hash":4067225043,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":45056,"current-db-size-in-use":"45 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9912,"took":"64.801µs","hash":4067225043,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":4067225043,"revision":9912,"compact-revision":9911}
 {"level":"info","msg":"compact tree index","revision":9913}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9913,"took":"592.52µs","hash":804901573,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":45056,"current-db-size-in-use":"45 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9913,"took":"67.321µs","hash":804901573,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":804901573,"revision":9913,"compact-revision":9912}
 {"level":"info","msg":"compact tree index","revision":9914}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9914,"took":"667.76µs","hash":3600863096,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":45056,"current-db-size-in-use":"45 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9914,"took":"46.24µs","hash":3600863096,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":3600863096,"revision":9914,"compact-revision":9913}
 {"level":"info","msg":"compact tree index","revision":9915}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9915,"took":"646.12µs","hash":4044662596,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":40960,"current-db-size-in-use":"41 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9915,"took":"251.561µs","hash":4044662596,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":45056,"current-db-size-in-use":"45 kB"}
 {"level":"info","msg":"storing new hash","hash":4044662596,"revision":9915,"compact-revision":9914}
 {"level":"info","msg":"compact tree index","revision":9916}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9916,"took":"822.72µs","hash":1824345379,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9916,"took":"60.561µs","hash":1824345379,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":1824345379,"revision":9916,"compact-revision":9915}
 {"level":"info","msg":"compact tree index","revision":9917}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9917,"took":"282.16µs","hash":487987193,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":45056,"current-db-size-in-use":"45 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9917,"took":"48.64µs","hash":487987193,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":487987193,"revision":9917,"compact-revision":9916}
 {"level":"info","msg":"compact tree index","revision":9918}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9918,"took":"441.04µs","hash":1855345291,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9918,"took":"66.2µs","hash":1855345291,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":1855345291,"revision":9918,"compact-revision":9917}
 {"level":"info","msg":"compact tree index","revision":9919}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9919,"took":"594.12µs","hash":1226980023,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":40960,"current-db-size-in-use":"41 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9919,"took":"6.591082ms","hash":1226980023,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":45056,"current-db-size-in-use":"45 kB"}
 {"level":"info","msg":"storing new hash","hash":1226980023,"revision":9919,"compact-revision":9918}
 {"level":"info","msg":"compact tree index","revision":9920}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9920,"took":"550.24µs","hash":1439986907,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9920,"took":"62.64µs","hash":1439986907,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":1439986907,"revision":9920,"compact-revision":9919}
 {"level":"info","msg":"compact tree index","revision":9921}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9921,"took":"724.72µs","hash":492703523,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9921,"took":"57.44µs","hash":492703523,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":492703523,"revision":9921,"compact-revision":9920}
 {"level":"info","msg":"compact tree index","revision":9922}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9922,"took":"94.2µs","hash":597525889,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9922,"took":"43.4µs","hash":597525889,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":597525889,"revision":9922,"compact-revision":9921}
 {"level":"info","msg":"compact tree index","revision":9923}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9923,"took":"1.14996ms","hash":69856701,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":45056,"current-db-size-in-use":"45 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9923,"took":"38.48µs","hash":69856701,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":69856701,"revision":9923,"compact-revision":9922}
 {"level":"info","msg":"compact tree index","revision":9924}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9924,"took":"649.08µs","hash":1578799301,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":45056,"current-db-size-in-use":"45 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9924,"took":"600.004µs","hash":1578799301,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":1578799301,"revision":9924,"compact-revision":9923}
 {"level":"info","msg":"compact tree index","revision":9925}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9925,"took":"530µs","hash":800180767,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":45056,"current-db-size-in-use":"45 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9925,"took":"57.081µs","hash":800180767,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":800180767,"revision":9925,"compact-revision":9924}
 {"level":"info","msg":"compact tree index","revision":9926}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9926,"took":"647.08µs","hash":292700349,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":36864,"current-db-size-in-use":"37 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9926,"took":"60.721µs","hash":292700349,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":57344,"current-db-size-in-use":"57 kB"}
 {"level":"info","msg":"storing new hash","hash":292700349,"revision":9926,"compact-revision":9925}
 {"level":"info","msg":"compact tree index","revision":9927}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9927,"took":"508.4µs","hash":918956161,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9927,"took":"58.44µs","hash":918956161,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":918956161,"revision":9927,"compact-revision":9926}
 {"level":"info","msg":"compact tree index","revision":9928}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9928,"took":"609µs","hash":2769599053,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":36864,"current-db-size-in-use":"37 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9928,"took":"43.48µs","hash":2769599053,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":2769599053,"revision":9928,"compact-revision":9927}
 {"level":"info","msg":"compact tree index","revision":9929}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9929,"took":"583.04µs","hash":2021754203,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9929,"took":"53.881µs","hash":2021754203,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":2021754203,"revision":9929,"compact-revision":9928}
 {"level":"info","msg":"compact tree index","revision":9930}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9930,"took":"590.8µs","hash":1040367542,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9930,"took":"56.2µs","hash":1040367542,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":1040367542,"revision":9930,"compact-revision":9929}
 {"level":"info","msg":"compact tree index","revision":9931}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9931,"took":"699.04µs","hash":431413130,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9931,"took":"52.001µs","hash":431413130,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":431413130,"revision":9931,"compact-revision":9930}
 {"level":"info","msg":"compact tree index","revision":9932}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9932,"took":"90.88µs","hash":2216639981,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":40960,"current-db-size-in-use":"41 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9932,"took":"52.361µs","hash":2216639981,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":2216639981,"revision":9932,"compact-revision":9931}
 {"level":"info","msg":"compact tree index","revision":9933}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9933,"took":"86.12µs","hash":4122240823,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9933,"took":"465.003µs","hash":4122240823,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":4122240823,"revision":9933,"compact-revision":9932}
 {"level":"info","msg":"compact tree index","revision":9934}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9934,"took":"257.72µs","hash":216889994,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9934,"took":"45.76µs","hash":216889994,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":40960,"current-db-size-in-use":"41 kB"}
 {"level":"info","msg":"storing new hash","hash":216889994,"revision":9934,"compact-revision":9933}
 {"level":"info","msg":"compact tree index","revision":9935}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9935,"took":"71.28µs","hash":727257782,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":40960,"current-db-size-in-use":"41 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9935,"took":"59.68µs","hash":727257782,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":727257782,"revision":9935,"compact-revision":9934}
 {"level":"info","msg":"compact tree index","revision":9936}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9936,"took":"61.96µs","hash":1941512540,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9936,"took":"78.121µs","hash":1941512540,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":1941512540,"revision":9936,"compact-revision":9935}
 {"level":"info","msg":"compact tree index","revision":9937}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9937,"took":"84.2µs","hash":4089226019,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9937,"took":"42.04µs","hash":4089226019,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":4089226019,"revision":9937,"compact-revision":9936}
 {"level":"info","msg":"compact tree index","revision":9938}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9938,"took":"75.6µs","hash":2151474769,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9938,"took":"56.84µs","hash":2151474769,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":2151474769,"revision":9938,"compact-revision":9937}
 {"level":"info","msg":"compact tree index","revision":9939}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9939,"took":"84.8µs","hash":2810744429,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9939,"took":"42.8µs","hash":2810744429,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":2810744429,"revision":9939,"compact-revision":9938}
 {"level":"info","msg":"compact tree index","revision":9940}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9940,"took":"63.16µs","hash":732857719,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9940,"took":"63.92µs","hash":732857719,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":732857719,"revision":9940,"compact-revision":9939}
 {"level":"info","msg":"compact tree index","revision":9941}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9941,"took":"53.56µs","hash":1510334381,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9941,"took":"48.6µs","hash":1510334381,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":1510334381,"revision":9941,"compact-revision":9940}
 {"level":"info","msg":"compact tree index","revision":9942}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9942,"took":"134.16µs","hash":1690719503,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9942,"took":"58.16µs","hash":1690719503,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":1690719503,"revision":9942,"compact-revision":9941}
 {"level":"info","msg":"compact tree index","revision":9943}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9943,"took":"71.76µs","hash":1131560243,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9943,"took":"166.682µs","hash":1131560243,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":1131560243,"revision":9943,"compact-revision":9942}
 {"level":"info","msg":"compact tree index","revision":9944}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9944,"took":"43.84µs","hash":1517942576,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9944,"took":"155.401µs","hash":1517942576,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":40960,"current-db-size-in-use":"41 kB"}
 {"level":"info","msg":"storing new hash","hash":1517942576,"revision":9944,"compact-revision":9943}
 {"level":"info","msg":"compact tree index","revision":9945}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9945,"took":"44.56µs","hash":2280441894,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9945,"took":"68.96µs","hash":2280441894,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":2280441894,"revision":9945,"compact-revision":9944}
 {"level":"info","msg":"compact tree index","revision":9946}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9946,"took":"58.2µs","hash":3106882180,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9946,"took":"73.761µs","hash":3106882180,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":3106882180,"revision":9946,"compact-revision":9945}
 {"level":"info","msg":"compact tree index","revision":9947}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9947,"took":"49.96µs","hash":2660969144,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9947,"took":"53.881µs","hash":2660969144,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":2660969144,"revision":9947,"compact-revision":9946}
 {"level":"info","msg":"compact tree index","revision":9948}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9948,"took":"50.24µs","hash":1316032271,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9948,"took":"43.04µs","hash":1316032271,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":1316032271,"revision":9948,"compact-revision":9947}
 {"level":"info","msg":"compact tree index","revision":9949}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9949,"took":"48.04µs","hash":1071273429,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9949,"took":"63.521µs","hash":1071273429,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":1071273429,"revision":9949,"compact-revision":9948}
 {"level":"info","msg":"compact tree index","revision":9950}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9950,"took":"50.76µs","hash":2035904312,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9950,"took":"60.24µs","hash":2035904312,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":2035904312,"revision":9950,"compact-revision":9949}
 {"level":"info","msg":"compact tree index","revision":9951}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9951,"took":"65.12µs","hash":1592592132,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9951,"took":"52.601µs","hash":1592592132,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":1592592132,"revision":9951,"compact-revision":9950}
 {"level":"info","msg":"compact tree index","revision":9952}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9952,"took":"44.56µs","hash":251895795,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9952,"took":"56.761µs","hash":251895795,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":251895795,"revision":9952,"compact-revision":9951}
 {"level":"info","msg":"compact tree index","revision":9953}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9953,"took":"41.76µs","hash":874997598,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9953,"took":"377.803µs","hash":874997598,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":36864,"current-db-size-in-use":"37 kB"}
 {"level":"info","msg":"storing new hash","hash":874997598,"revision":9953,"compact-revision":9952}
 {"level":"info","msg":"compact tree index","revision":9954}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9954,"took":"47.48µs","hash":3447618275,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9954,"took":"44.64µs","hash":3447618275,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":40960,"current-db-size-in-use":"41 kB"}
 {"level":"info","msg":"storing new hash","hash":3447618275,"revision":9954,"compact-revision":9953}
 {"level":"info","msg":"compact tree index","revision":9955}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9955,"took":"41.88µs","hash":3939111647,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":40960,"current-db-size-in-use":"41 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9955,"took":"66.441µs","hash":3939111647,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":3939111647,"revision":9955,"compact-revision":9954}
 {"level":"info","msg":"compact tree index","revision":9956}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9956,"took":"44.24µs","hash":2003040440,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9956,"took":"58.92µs","hash":2003040440,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":2003040440,"revision":9956,"compact-revision":9955}
 {"level":"info","msg":"compact tree index","revision":9957}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9957,"took":"1.00344ms","hash":113812066,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9957,"took":"86.281µs","hash":113812066,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":113812066,"revision":9957,"compact-revision":9956}
 {"level":"info","msg":"compact tree index","revision":9958}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9958,"took":"42.44µs","hash":1967712016,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":40960,"current-db-size-in-use":"41 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9958,"took":"83.201µs","hash":1967712016,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":1967712016,"revision":9958,"compact-revision":9957}
 {"level":"info","msg":"compact tree index","revision":9959}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9959,"took":"52.64µs","hash":1392283436,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9959,"took":"47.72µs","hash":1392283436,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":1392283436,"revision":9959,"compact-revision":9958}
 {"level":"info","msg":"compact tree index","revision":9960}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9960,"took":"52.96µs","hash":3546829457,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9960,"took":"64.2µs","hash":3546829457,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":3546829457,"revision":9960,"compact-revision":9959}
 {"level":"info","msg":"compact tree index","revision":9961}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9961,"took":"42.08µs","hash":251489671,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9961,"took":"75.56µs","hash":251489671,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":36864,"current-db-size-in-use":"37 kB"}
 {"level":"info","msg":"storing new hash","hash":251489671,"revision":9961,"compact-revision":9960}
 {"level":"info","msg":"compact tree index","revision":9962}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9962,"took":"185.68µs","hash":809428773,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9962,"took":"53.841µs","hash":809428773,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":809428773,"revision":9962,"compact-revision":9961}
 {"level":"info","msg":"compact tree index","revision":9963}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9963,"took":"82.36µs","hash":394956569,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":36864,"current-db-size-in-use":"37 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9963,"took":"47.601µs","hash":394956569,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":394956569,"revision":9963,"compact-revision":9962}
 {"level":"info","msg":"compact tree index","revision":9964}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9964,"took":"128.8µs","hash":1304031841,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9964,"took":"58.481µs","hash":1304031841,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":1304031841,"revision":9964,"compact-revision":9963}
 {"level":"info","msg":"compact tree index","revision":9965}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9965,"took":"48.64µs","hash":1007855803,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9965,"took":"55.241µs","hash":1007855803,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":1007855803,"revision":9965,"compact-revision":9964}
 {"level":"info","msg":"compact tree index","revision":9966}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9966,"took":"45.64µs","hash":47260185,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9966,"took":"41.64µs","hash":47260185,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":47260185,"revision":9966,"compact-revision":9965}
 {"level":"info","msg":"compact tree index","revision":9967}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9967,"took":"41.04µs","hash":627395109,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9967,"took":"45.881µs","hash":627395109,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":627395109,"revision":9967,"compact-revision":9966}
 {"level":"info","msg":"compact tree index","revision":9968}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9968,"took":"65.4µs","hash":818329119,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9968,"took":"60.36µs","hash":818329119,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":818329119,"revision":9968,"compact-revision":9967}
 {"level":"info","msg":"compact tree index","revision":9969}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9969,"took":"44.4µs","hash":2965582944,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9969,"took":"75.6µs","hash":2965582944,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":2965582944,"revision":9969,"compact-revision":9968}
 {"level":"info","msg":"compact tree index","revision":9970}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9970,"took":"56.08µs","hash":4131393165,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9970,"took":"102.24µs","hash":4131393165,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":4131393165,"revision":9970,"compact-revision":9969}
 {"level":"info","msg":"compact tree index","revision":9971}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9971,"took":"41.8µs","hash":3522455217,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9971,"took":"46.04µs","hash":3522455217,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":3522455217,"revision":9971,"compact-revision":9970}
 {"level":"info","msg":"compact tree index","revision":9972}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9972,"took":"50.48µs","hash":1281199318,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9972,"took":"36.16µs","hash":1281199318,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":53248,"current-db-size-in-use":"53 kB"}
 {"level":"info","msg":"storing new hash","hash":1281199318,"revision":9972,"compact-revision":9971}
 {"level":"info","msg":"compact tree index","revision":9973}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9973,"took":"54µs","hash":1039586828,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":49152,"current-db-size-in-use":"49 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9973,"took":"48.52µs","hash":1039586828,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":49152,"current-db-size-in-use":"49 kB"}
 {"level":"info","msg":"storing new hash","hash":1039586828,"revision":9973,"compact-revision":9972}
 {"level":"info","msg":"compact tree index","revision":9974}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9974,"took":"38µs","hash":3299855281,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":45056,"current-db-size-in-use":"45 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9974,"took":"98.441µs","hash":3299855281,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":45056,"current-db-size-in-use":"45 kB"}
 {"level":"info","msg":"storing new hash","hash":3299855281,"revision":9974,"compact-revision":9973}
 {"level":"info","msg":"compact tree index","revision":9975}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9975,"took":"36.2µs","hash":3810239373,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":36864,"current-db-size-in-use":"37 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9975,"took":"41.321µs","hash":3810239373,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":36864,"current-db-size-in-use":"37 kB"}
 {"level":"info","msg":"storing new hash","hash":3810239373,"revision":9975,"compact-revision":9974}
 {"level":"info","msg":"compact tree index","revision":9976}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9976,"took":"208.48µs","hash":1032519313,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":36864,"current-db-size-in-use":"37 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9976,"took":"50.761µs","hash":1032519313,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":36864,"current-db-size-in-use":"37 kB"}
 {"level":"info","msg":"storing new hash","hash":1032519313,"revision":9976,"compact-revision":9975}
 {"level":"info","msg":"compact tree index","revision":9977}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9977,"took":"51.56µs","hash":3760177543,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":36864,"current-db-size-in-use":"37 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9977,"took":"44.8µs","hash":3760177543,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":36864,"current-db-size-in-use":"37 kB"}
 {"level":"info","msg":"storing new hash","hash":3760177543,"revision":9977,"compact-revision":9976}
 {"level":"info","msg":"compact tree index","revision":9978}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9978,"took":"43.24µs","hash":2476705013,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":36864,"current-db-size-in-use":"37 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9978,"took":"372.882µs","hash":2476705013,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":36864,"current-db-size-in-use":"37 kB"}
 {"level":"info","msg":"storing new hash","hash":2476705013,"revision":9978,"compact-revision":9977}
 {"level":"info","msg":"compact tree index","revision":9979}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9979,"took":"45.92µs","hash":3022777545,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":36864,"current-db-size-in-use":"37 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9979,"took":"42.241µs","hash":3022777545,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":28672,"current-db-size-in-use":"29 kB"}
 {"level":"info","msg":"storing new hash","hash":3022777545,"revision":9979,"compact-revision":9978}
 {"level":"info","msg":"compact tree index","revision":9980}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9980,"took":"48.88µs","hash":2769888363,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":36864,"current-db-size-in-use":"37 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9980,"took":"39.44µs","hash":2769888363,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":36864,"current-db-size-in-use":"37 kB"}
 {"level":"info","msg":"storing new hash","hash":2769888363,"revision":9980,"compact-revision":9979}
 {"level":"info","msg":"compact tree index","revision":9981}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9981,"took":"255µs","hash":3568467633,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":36864,"current-db-size-in-use":"37 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9981,"took":"56.241µs","hash":3568467633,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":36864,"current-db-size-in-use":"37 kB"}
 {"level":"info","msg":"storing new hash","hash":3568467633,"revision":9981,"compact-revision":9980}
 {"level":"info","msg":"compact tree index","revision":9982}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9982,"took":"40.64µs","hash":3933336595,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":36864,"current-db-size-in-use":"37 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9982,"took":"39.161µs","hash":3933336595,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":36864,"current-db-size-in-use":"37 kB"}
 {"level":"info","msg":"storing new hash","hash":3933336595,"revision":9982,"compact-revision":9981}
 {"level":"info","msg":"compact tree index","revision":9983}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9983,"took":"53.32µs","hash":3452279855,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":32768,"current-db-size-in-use":"33 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9983,"took":"38.001µs","hash":3452279855,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":32768,"current-db-size-in-use":"33 kB"}
 {"level":"info","msg":"storing new hash","hash":3452279855,"revision":9983,"compact-revision":9982}
 {"level":"info","msg":"compact tree index","revision":9984}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9984,"took":"41.24µs","hash":4232457539,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":28672,"current-db-size-in-use":"29 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9984,"took":"46.52µs","hash":4232457539,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":28672,"current-db-size-in-use":"29 kB"}
 {"level":"info","msg":"storing new hash","hash":4232457539,"revision":9984,"compact-revision":9983}
 {"level":"info","msg":"compact tree index","revision":9985}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9985,"took":"39.56µs","hash":3973754021,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9985,"took":"37.561µs","hash":3973754021,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
 {"level":"info","msg":"storing new hash","hash":3973754021,"revision":9985,"compact-revision":9984}
 {"level":"info","msg":"compact tree index","revision":9986}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9986,"took":"44.96µs","hash":3524863495,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9986,"took":"35.041µs","hash":3524863495,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
 {"level":"info","msg":"storing new hash","hash":3524863495,"revision":9986,"compact-revision":9985}
 {"level":"info","msg":"compact tree index","revision":9987}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9987,"took":"35.8µs","hash":4121775675,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9987,"took":"246.802µs","hash":4121775675,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
 {"level":"info","msg":"storing new hash","hash":4121775675,"revision":9987,"compact-revision":9986}
 {"level":"info","msg":"compact tree index","revision":9988}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9988,"took":"85.68µs","hash":625437580,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9988,"took":"532.724µs","hash":625437580,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":16384,"current-db-size-in-use":"16 kB"}
 {"level":"info","msg":"storing new hash","hash":625437580,"revision":9988,"compact-revision":9987}
 {"level":"info","msg":"compact tree index","revision":9989}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9989,"took":"33.44µs","hash":1424765270,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9989,"took":"57.52µs","hash":1424765270,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
 {"level":"info","msg":"storing new hash","hash":1424765270,"revision":9989,"compact-revision":9988}
 {"level":"info","msg":"compact tree index","revision":9990}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9990,"took":"32.36µs","hash":309267387,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9990,"took":"56.56µs","hash":309267387,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":16384,"current-db-size-in-use":"16 kB"}
 {"level":"info","msg":"storing new hash","hash":309267387,"revision":9990,"compact-revision":9989}
 {"level":"info","msg":"compact tree index","revision":9991}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9991,"took":"40.8µs","hash":903570311,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9991,"took":"48.32µs","hash":903570311,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":16384,"current-db-size-in-use":"16 kB"}
 {"level":"info","msg":"storing new hash","hash":903570311,"revision":9991,"compact-revision":9990}
 {"level":"info","msg":"compact tree index","revision":9992}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9992,"took":"30.84µs","hash":3947511451,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":16384,"current-db-size-in-use":"16 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9992,"took":"36.96µs","hash":3947511451,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":16384,"current-db-size-in-use":"16 kB"}
 {"level":"info","msg":"storing new hash","hash":3947511451,"revision":9992,"compact-revision":9991}
 {"level":"info","msg":"compact tree index","revision":9993}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9993,"took":"41.24µs","hash":920584589,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9993,"took":"49.601µs","hash":920584589,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
 {"level":"info","msg":"storing new hash","hash":920584589,"revision":9993,"compact-revision":9992}
 {"level":"info","msg":"compact tree index","revision":9994}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9994,"took":"37.64µs","hash":3481672752,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9994,"took":"43.6µs","hash":3481672752,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
 {"level":"info","msg":"storing new hash","hash":3481672752,"revision":9994,"compact-revision":9993}
 {"level":"info","msg":"compact tree index","revision":9995}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9995,"took":"45µs","hash":3895620620,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9995,"took":"166.801µs","hash":3895620620,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
 {"level":"info","msg":"storing new hash","hash":3895620620,"revision":9995,"compact-revision":9994}
 {"level":"info","msg":"compact tree index","revision":9996}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9996,"took":"41.8µs","hash":1973132907,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":16384,"current-db-size-in-use":"16 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9996,"took":"31.2µs","hash":1973132907,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
 {"level":"info","msg":"storing new hash","hash":1973132907,"revision":9996,"compact-revision":9995}
 {"level":"info","msg":"compact tree index","revision":9997}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9997,"took":"50.32µs","hash":70304945,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9997,"took":"50.041µs","hash":70304945,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
 {"level":"info","msg":"storing new hash","hash":70304945,"revision":9997,"compact-revision":9996}
 {"level":"info","msg":"compact tree index","revision":9998}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9998,"took":"40.56µs","hash":2008056259,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9998,"took":"34.08µs","hash":2008056259,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
 {"level":"info","msg":"storing new hash","hash":2008056259,"revision":9998,"compact-revision":9997}
 {"level":"info","msg":"compact tree index","revision":9999}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":9999,"took":"32.72µs","hash":1342499327,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":9999,"took":"35.8µs","hash":1342499327,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
 {"level":"info","msg":"storing new hash","hash":1342499327,"revision":9999,"compact-revision":9998}
 {"level":"info","msg":"compact tree index","revision":10000}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":10000,"took":"66.4µs","hash":4044197094,"current-db-size-bytes":667648,"current-db-size":"668 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":10000,"took":"33.72µs","hash":4044197094,"current-db-size-bytes":700416,"current-db-size":"700 kB","current-db-size-in-use-bytes":24576,"current-db-size-in-use":"25 kB"}
 {"level":"info","msg":"storing new hash","hash":4044197094,"revision":10000,"compact-revision":9999}
---- PASS: TestHashKVWhenCompacting (1.45s)
+--- PASS: TestHashKVWhenCompacting (1.64s)
 === RUN   TestHashKVWithCompactedAndFutureRevisions
-    logger.go:130: 2026-04-07T08:44:42.594-1200	INFO	kvstore restored	{"current-rev": 1}
---- PASS: TestHashKVWithCompactedAndFutureRevisions (0.06s)
+    logger.go:130: 2025-03-06T04:29:07.857+1400	INFO	kvstore restored	{"current-rev": 1}
+--- PASS: TestHashKVWithCompactedAndFutureRevisions (0.07s)
 === RUN   TestHashKVZeroRevision
 {"level":"info","msg":"kvstore restored","current-rev":1}
-{"level":"info","msg":"compact tree index","revision":5000}
-{"level":"warn","msg":"Failed compaction","error":"interrupted due to stop signal"}
---- PASS: TestHashKVZeroRevision (0.06s)
+--- PASS: TestHashKVZeroRevision (0.08s)
 === RUN   TestTxnPut
 {"level":"info","msg":"kvstore restored","current-rev":1}
 --- PASS: TestTxnPut (0.00s)
@@ -19957,36 +20081,36 @@
 --- PASS: TestConcurrentReadNotBlockingWrite (0.00s)
 === RUN   TestConcurrentReadTxAndWrite
 {"level":"info","msg":"kvstore restored","current-rev":1}
---- PASS: TestConcurrentReadTxAndWrite (0.10s)
+--- PASS: TestConcurrentReadTxAndWrite (0.11s)
 === RUN   TestRevision
 --- PASS: TestRevision (0.00s)
 === RUN   TestWatch
 {"level":"info","msg":"kvstore restored","current-rev":1}
---- PASS: TestWatch (0.00s)
+--- PASS: TestWatch (0.01s)
 === RUN   TestNewWatcherCancel
 {"level":"info","msg":"kvstore restored","current-rev":1}
 --- PASS: TestNewWatcherCancel (0.00s)
 === RUN   TestCancelUnsynced
 {"level":"info","msg":"kvstore restored","current-rev":1}
---- PASS: TestCancelUnsynced (0.00s)
+--- PASS: TestCancelUnsynced (0.01s)
 === RUN   TestSyncWatchers
 {"level":"info","msg":"kvstore restored","current-rev":1}
 --- PASS: TestSyncWatchers (0.00s)
 === RUN   TestWatchCompacted
 {"level":"info","msg":"kvstore restored","current-rev":1}
 {"level":"info","msg":"compact tree index","revision":5}
-{"level":"info","msg":"finished scheduled compaction","compact-revision":5,"took":"81.08µs","hash":3662656987,"current-db-size-bytes":28672,"current-db-size":"29 kB","current-db-size-in-use-bytes":28672,"current-db-size-in-use":"29 kB"}
+{"level":"info","msg":"finished scheduled compaction","compact-revision":5,"took":"55.04µs","hash":3662656987,"current-db-size-bytes":28672,"current-db-size":"29 kB","current-db-size-in-use-bytes":28672,"current-db-size-in-use":"29 kB"}
 {"level":"info","msg":"storing new hash","hash":3662656987,"revision":5,"compact-revision":-1}
---- PASS: TestWatchCompacted (0.10s)
+--- PASS: TestWatchCompacted (0.01s)
 === RUN   TestWatchNoEventLossOnCompact
-    logger.go:130: 2026-04-07T08:44:42.916-1200	INFO	kvstore restored	{"current-rev": 1}
-    logger.go:130: 2026-04-07T08:44:42.917-1200	INFO	compact tree index	{"revision": 5}
-    logger.go:130: 2026-04-07T08:44:42.917-1200	INFO	finished scheduled compaction	{"compact-revision": 5, "took": "143.56µs", "hash": 3662656987, "current-db-size-bytes": 20480, "current-db-size": "20 kB", "current-db-size-in-use-bytes": 20480, "current-db-size-in-use": "20 kB"}
-    logger.go:130: 2026-04-07T08:44:42.917-1200	INFO	storing new hash	{"hash": 3662656987, "revision": 5, "compact-revision": -1}
---- PASS: TestWatchNoEventLossOnCompact (0.10s)
+    logger.go:130: 2025-03-06T04:29:08.147+1400	INFO	kvstore restored	{"current-rev": 1}
+    logger.go:130: 2025-03-06T04:29:08.147+1400	INFO	compact tree index	{"revision": 5}
+    logger.go:130: 2025-03-06T04:29:08.147+1400	INFO	finished scheduled compaction	{"compact-revision": 5, "took": "30.32µs", "hash": 3662656987, "current-db-size-bytes": 28672, "current-db-size": "29 kB", "current-db-size-in-use-bytes": 28672, "current-db-size-in-use": "29 kB"}
+    logger.go:130: 2025-03-06T04:29:08.147+1400	INFO	storing new hash	{"hash": 3662656987, "revision": 5, "compact-revision": -1}
+--- PASS: TestWatchNoEventLossOnCompact (0.00s)
 === RUN   TestWatchFutureRev
 {"level":"info","msg":"kvstore restored","current-rev":1}
---- PASS: TestWatchFutureRev (0.00s)
+--- PASS: TestWatchFutureRev (0.01s)
 === RUN   TestWatchRestore
 === RUN   TestWatchRestore/Normal
 {"level":"info","msg":"kvstore restored","current-rev":1}
@@ -19995,7 +20119,7 @@
 {"level":"info","msg":"kvstore restored","current-rev":1}
 {"level":"info","msg":"kvstore restored","current-rev":2}
 --- PASS: TestWatchRestore (2.13s)
-    --- PASS: TestWatchRestore/Normal (1.00s)
+    --- PASS: TestWatchRestore/Normal (1.01s)
     --- PASS: TestWatchRestore/RunSyncWatchLoopBeforeRestore (1.12s)
 === RUN   TestWatchRestoreSyncedWatcher
 {"level":"info","msg":"kvstore restored","current-rev":1}
@@ -20004,24 +20128,24 @@
 --- PASS: TestWatchRestoreSyncedWatcher (2.00s)
 === RUN   TestWatchBatchUnsynced
 {"level":"info","msg":"kvstore restored","current-rev":1}
---- PASS: TestWatchBatchUnsynced (0.30s)
+--- PASS: TestWatchBatchUnsynced (0.20s)
 === RUN   TestNewMapwatcherToEventMap
 --- PASS: TestNewMapwatcherToEventMap (0.00s)
 === RUN   TestWatchVictims
 {"level":"info","msg":"kvstore restored","current-rev":1}
---- PASS: TestWatchVictims (0.55s)
+--- PASS: TestWatchVictims (0.57s)
 === RUN   TestStressWatchCancelClose
 {"level":"info","msg":"kvstore restored","current-rev":1}
---- PASS: TestStressWatchCancelClose (0.02s)
+--- PASS: TestStressWatchCancelClose (0.01s)
 === RUN   TestWatcherWatchID
 {"level":"info","msg":"kvstore restored","current-rev":1}
---- PASS: TestWatcherWatchID (1.01s)
+--- PASS: TestWatcherWatchID (0.91s)
 === RUN   TestWatcherRequestsCustomID
 {"level":"info","msg":"kvstore restored","current-rev":1}
 --- PASS: TestWatcherRequestsCustomID (0.00s)
 === RUN   TestWatcherWatchPrefix
 {"level":"info","msg":"kvstore restored","current-rev":1}
---- PASS: TestWatcherWatchPrefix (0.50s)
+--- PASS: TestWatcherWatchPrefix (0.41s)
 === RUN   TestWatcherWatchWrongRange
 {"level":"info","msg":"kvstore restored","current-rev":1}
 --- PASS: TestWatcherWatchWrongRange (0.00s)
@@ -20030,28 +20154,28 @@
 --- PASS: TestWatchDeleteRange (0.00s)
 === RUN   TestWatchStreamCancelWatcherByID
 {"level":"info","msg":"kvstore restored","current-rev":1}
---- PASS: TestWatchStreamCancelWatcherByID (0.00s)
+--- PASS: TestWatchStreamCancelWatcherByID (0.01s)
 === RUN   TestWatcherRequestProgress
 {"level":"info","msg":"kvstore restored","current-rev":1}
 --- PASS: TestWatcherRequestProgress (0.00s)
 === RUN   TestWatcherRequestProgressAll
-    logger.go:130: 2026-04-07T08:44:49.551-1200	INFO	kvstore restored	{"current-rev": 1}
---- PASS: TestWatcherRequestProgressAll (0.00s)
+    logger.go:130: 2025-03-06T04:29:14.409+1400	INFO	kvstore restored	{"current-rev": 1}
+--- PASS: TestWatcherRequestProgressAll (0.01s)
 === RUN   TestWatcherWatchWithFilter
 {"level":"info","msg":"kvstore restored","current-rev":1}
 --- PASS: TestWatcherWatchWithFilter (0.10s)
 PASS
-ok  	go.etcd.io/etcd/server/mvcc	9.004s
+ok  	go.etcd.io/etcd/server/mvcc	8.987s
 === RUN   TestBackendClose
 --- PASS: TestBackendClose (0.00s)
 === RUN   TestBackendSnapshot
 --- PASS: TestBackendSnapshot (0.00s)
 === RUN   TestBackendBatchIntervalCommit
---- PASS: TestBackendBatchIntervalCommit (0.10s)
+--- PASS: TestBackendBatchIntervalCommit (0.11s)
 === RUN   TestBackendDefrag
-    logger.go:130: 2026-04-07T08:44:51.988-1200	INFO	defragmenting	{"path": "/tmp/TestBackendDefrag3529934267/001/etcd_backend_test325714078/database", "current-db-size-bytes": 757760, "current-db-size": "758 kB", "current-db-size-in-use-bytes": 757760, "current-db-size-in-use": "758 kB"}
-    logger.go:130: 2026-04-07T08:44:52.015-1200	INFO	finished defragmenting directory	{"path": "/tmp/TestBackendDefrag3529934267/001/etcd_backend_test325714078/database", "current-db-size-bytes-diff": -425984, "current-db-size-bytes": 331776, "current-db-size": "332 kB", "current-db-size-in-use-bytes-diff": -438272, "current-db-size-in-use-bytes": 319488, "current-db-size-in-use": "320 kB", "took": "26.4782ms"}
---- PASS: TestBackendDefrag (0.08s)
+    logger.go:130: 2025-03-06T04:29:16.932+1400	INFO	defragmenting	{"path": "/tmp/TestBackendDefrag1807177048/001/etcd_backend_test784940851/database", "current-db-size-bytes": 765952, "current-db-size": "766 kB", "current-db-size-in-use-bytes": 765952, "current-db-size-in-use": "766 kB"}
+    logger.go:130: 2025-03-06T04:29:16.951+1400	INFO	finished defragmenting directory	{"path": "/tmp/TestBackendDefrag1807177048/001/etcd_backend_test784940851/database", "current-db-size-bytes-diff": -434176, "current-db-size-bytes": 331776, "current-db-size": "332 kB", "current-db-size-in-use-bytes-diff": -446464, "current-db-size-in-use-bytes": 319488, "current-db-size-in-use": "320 kB", "took": "18.73232ms"}
+--- PASS: TestBackendDefrag (0.07s)
 === RUN   TestBackendWriteback
 --- PASS: TestBackendWriteback (0.00s)
 === RUN   TestConcurrentReadTx
@@ -20094,10 +20218,10 @@
 === RUN   TestLockVerify/call_lockInsideApply_from_inside_apply
 === RUN   TestLockVerify/call_lockInsideApply_from_outside_apply_(without_txPostLockInsideApplyHook)
 === RUN   TestLockVerify/call_lockInsideApply_from_outside_apply_(with_txPostLockInsideApplyHook)
-    logger.go:130: 2026-04-07T08:44:53.060-1200	PANIC	Called outside of APPLY!	{"stacktrace": "go.etcd.io/etcd/server/mvcc/backend.ValidateCalledInsideApply\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify.go:36\ngo.etcd.io/etcd/server/mvcc/backend.(*batchTx).LockInsideApply\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/batch_tx.go:86\ngo.etcd.io/etcd/server/mvcc/backend_test.lockInsideApply\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify_test.go:109\ngo.etcd.io/etcd/server/mvcc/backend_test.TestLockVerify.func3.1\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify_test.go:87\ngo.etcd.io/etcd/server/mvcc/backend_test.handlePanic\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify_test.go:101\ngo.etcd.io/etcd/server/mvcc/backend_test.TestLockVerify.func3\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify_test.go:83\ntesting.tRunner\n\t/usr/lib/go-1.24/src/testing/testing.go:1792"}
+    logger.go:130: 2025-03-06T04:29:17.989+1400	PANIC	Called outside of APPLY!	{"stacktrace": "go.etcd.io/etcd/server/mvcc/backend.ValidateCalledInsideApply\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify.go:36\ngo.etcd.io/etcd/server/mvcc/backend.(*batchTx).LockInsideApply\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/batch_tx.go:86\ngo.etcd.io/etcd/server/mvcc/backend_test.lockInsideApply\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify_test.go:109\ngo.etcd.io/etcd/server/mvcc/backend_test.TestLockVerify.func3.1\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify_test.go:87\ngo.etcd.io/etcd/server/mvcc/backend_test.handlePanic\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify_test.go:101\ngo.etcd.io/etcd/server/mvcc/backend_test.TestLockVerify.func3\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify_test.go:83\ntesting.tRunner\n\t/usr/lib/go-1.24/src/testing/testing.go:1792"}
 === RUN   TestLockVerify/call_lockOutsideApply_from_outside_apply
 === RUN   TestLockVerify/call_lockOutsideApply_from_inside_apply
-    logger.go:130: 2026-04-07T08:44:53.061-1200	PANIC	Called inside of APPLY!	{"stacktrace": "go.etcd.io/etcd/server/mvcc/backend.ValidateCalledOutSideApply\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify.go:45\ngo.etcd.io/etcd/server/mvcc/backend.(*batchTx).LockOutsideApply\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/batch_tx.go:92\ngo.etcd.io/etcd/server/mvcc/backend_test.lockOutsideApply\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify_test.go:110\ngo.etcd.io/etcd/server/mvcc/backend_test.applyEntries\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify_test.go:106\ngo.etcd.io/etcd/server/mvcc/backend_test.TestLockVerify.func3.1\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify_test.go:85\ngo.etcd.io/etcd/server/mvcc/backend_test.handlePanic\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify_test.go:101\ngo.etcd.io/etcd/server/mvcc/backend_test.TestLockVerify.func3\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify_test.go:83\ntesting.tRunner\n\t/usr/lib/go-1.24/src/testing/testing.go:1792"}
+    logger.go:130: 2025-03-06T04:29:17.989+1400	PANIC	Called inside of APPLY!	{"stacktrace": "go.etcd.io/etcd/server/mvcc/backend.ValidateCalledOutSideApply\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify.go:45\ngo.etcd.io/etcd/server/mvcc/backend.(*batchTx).LockOutsideApply\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/batch_tx.go:92\ngo.etcd.io/etcd/server/mvcc/backend_test.lockOutsideApply\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify_test.go:110\ngo.etcd.io/etcd/server/mvcc/backend_test.applyEntries\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify_test.go:106\ngo.etcd.io/etcd/server/mvcc/backend_test.TestLockVerify.func3.1\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify_test.go:85\ngo.etcd.io/etcd/server/mvcc/backend_test.handlePanic\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify_test.go:101\ngo.etcd.io/etcd/server/mvcc/backend_test.TestLockVerify.func3\n\t/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/server/mvcc/backend/verify_test.go:83\ntesting.tRunner\n\t/usr/lib/go-1.24/src/testing/testing.go:1792"}
 === RUN   TestLockVerify/call_Lock_from_unit_test
 --- PASS: TestLockVerify (0.00s)
     --- PASS: TestLockVerify/call_lockInsideApply_from_inside_apply (0.00s)
@@ -20107,7 +20231,7 @@
     --- PASS: TestLockVerify/call_lockOutsideApply_from_inside_apply (0.00s)
     --- PASS: TestLockVerify/call_Lock_from_unit_test (0.00s)
 PASS
-ok  	go.etcd.io/etcd/server/mvcc/backend	1.253s
+ok  	go.etcd.io/etcd/server/mvcc/backend	1.234s
 ?   	go.etcd.io/etcd/server/mvcc/backend/testing	[no test files]
 ?   	go.etcd.io/etcd/server/mvcc/buckets	[no test files]
 ?   	go.etcd.io/etcd/server/proxy/grpcproxy	[no test files]
@@ -20116,7 +20240,6 @@
 === RUN   TestNewDirectorScheme
 --- PASS: TestNewDirectorScheme (0.00s)
 === RUN   TestDirectorEndpointsFiltering
-{"level":"info","msg":"endpoints found","endpoints":["http://192.0.2.8:4002","http://example.com:8080"]}
 --- PASS: TestDirectorEndpointsFiltering (0.00s)
 === RUN   TestReadonlyHandler
 --- PASS: TestReadonlyHandler (0.00s)
@@ -20136,17 +20259,17 @@
 === RUN   TestCopyHeader
 --- PASS: TestCopyHeader (0.00s)
 PASS
-ok  	go.etcd.io/etcd/server/proxy/httpproxy	0.017s
+ok  	go.etcd.io/etcd/server/proxy/httpproxy	0.032s
 === RUN   TestUserspaceProxy
 --- PASS: TestUserspaceProxy (0.00s)
 === RUN   TestUserspaceProxyPriority
---- PASS: TestUserspaceProxyPriority (0.00s)
+--- PASS: TestUserspaceProxyPriority (0.02s)
 PASS
-ok  	go.etcd.io/etcd/server/proxy/tcpproxy	0.018s
+ok  	go.etcd.io/etcd/server/proxy/tcpproxy	0.034s
 ?   	go.etcd.io/etcd/server/storage/mvcc/testutil	[no test files]
 ?   	go.etcd.io/etcd/server/verify	[no test files]
 === RUN   TestFilePipeline
---- PASS: TestFilePipeline (0.09s)
+--- PASS: TestFilePipeline (0.06s)
 === RUN   TestFilePipelineFailPreallocate
 {"level":"error","msg":"failed to preallocate space when creating a new WAL","size":9223372036854775807,"error":"no space left on device"}
 --- PASS: TestFilePipelineFailPreallocate (0.00s)
@@ -20157,151 +20280,151 @@
 === RUN   TestWriteRecord
 --- PASS: TestWriteRecord (0.00s)
 === RUN   TestRepairTruncate
-{"level":"info","msg":"repairing","path":"/tmp/waltest3237286659/0000000000000000-0000000000000000.wal"}
-{"level":"info","msg":"repaired","path":"/tmp/waltest3237286659/0000000000000000-0000000000000000.wal","error":"unexpected EOF"}
+{"level":"info","msg":"repairing","path":"/tmp/waltest3917631180/0000000000000000-0000000000000000.wal"}
+{"level":"info","msg":"repaired","path":"/tmp/waltest3917631180/0000000000000000-0000000000000000.wal","error":"unexpected EOF"}
 {"level":"warn","msg":"ignored file in WAL directory","path":"0000000000000000-0000000000000000.wal.broken"}
 {"level":"warn","msg":"ignored file in WAL directory","path":"0000000000000000-0000000000000000.wal.broken"}
---- PASS: TestRepairTruncate (0.20s)
+--- PASS: TestRepairTruncate (0.14s)
 === RUN   TestRepairWriteTearLast
-{"level":"info","msg":"repairing","path":"/tmp/waltest565403086/0000000000000000-0000000000000000.wal"}
-{"level":"info","msg":"repaired","path":"/tmp/waltest565403086/0000000000000000-0000000000000000.wal","error":"unexpected EOF"}
+{"level":"info","msg":"repairing","path":"/tmp/waltest1821061834/0000000000000000-0000000000000000.wal"}
+{"level":"info","msg":"repaired","path":"/tmp/waltest1821061834/0000000000000000-0000000000000000.wal","error":"unexpected EOF"}
 {"level":"warn","msg":"ignored file in WAL directory","path":"0000000000000000-0000000000000000.wal.broken"}
 {"level":"warn","msg":"ignored file in WAL directory","path":"0000000000000000-0000000000000000.wal.broken"}
---- PASS: TestRepairWriteTearLast (0.23s)
+--- PASS: TestRepairWriteTearLast (0.11s)
 === RUN   TestRepairWriteTearMiddle
-{"level":"info","msg":"repairing","path":"/tmp/waltest2391792941/0000000000000000-0000000000000000.wal"}
-{"level":"info","msg":"repaired","path":"/tmp/waltest2391792941/0000000000000000-0000000000000000.wal","error":"unexpected EOF"}
+{"level":"info","msg":"repairing","path":"/tmp/waltest2325238926/0000000000000000-0000000000000000.wal"}
+{"level":"info","msg":"repaired","path":"/tmp/waltest2325238926/0000000000000000-0000000000000000.wal","error":"unexpected EOF"}
 {"level":"warn","msg":"ignored file in WAL directory","path":"0000000000000000-0000000000000000.wal.broken"}
 {"level":"warn","msg":"ignored file in WAL directory","path":"0000000000000000-0000000000000000.wal.broken"}
---- PASS: TestRepairWriteTearMiddle (0.27s)
+--- PASS: TestRepairWriteTearMiddle (0.19s)
 === RUN   TestRepairFailDeleteDir
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest2746023484/0000000000000001-0000000000000003.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest2746023484/0000000000000002-0000000000000006.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest2746023484/0000000000000003-0000000000000009.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest2746023484/0000000000000004-000000000000000c.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest2746023484/0000000000000005-000000000000000f.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest2746023484/0000000000000006-0000000000000012.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest2746023484/0000000000000007-0000000000000015.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest2746023484/0000000000000008-0000000000000018.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest2746023484/0000000000000009-000000000000001b.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest2746023484/000000000000000a-000000000000001e.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest2746023484/000000000000000b-0000000000000021.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest2746023484/000000000000000c-0000000000000024.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest2746023484/000000000000000d-0000000000000027.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest2746023484/000000000000000e-000000000000002a.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest2746023484/000000000000000f-000000000000002d.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest2746023484/0000000000000010-0000000000000030.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest2746023484/0000000000000011-0000000000000033.wal"}
---- PASS: TestRepairFailDeleteDir (0.45s)
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest854883571/0000000000000001-0000000000000003.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest854883571/0000000000000002-0000000000000006.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest854883571/0000000000000003-0000000000000009.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest854883571/0000000000000004-000000000000000c.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest854883571/0000000000000005-000000000000000f.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest854883571/0000000000000006-0000000000000012.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest854883571/0000000000000007-0000000000000015.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest854883571/0000000000000008-0000000000000018.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest854883571/0000000000000009-000000000000001b.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest854883571/000000000000000a-000000000000001e.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest854883571/000000000000000b-0000000000000021.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest854883571/000000000000000c-0000000000000024.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest854883571/000000000000000d-0000000000000027.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest854883571/000000000000000e-000000000000002a.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest854883571/000000000000000f-000000000000002d.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest854883571/0000000000000010-0000000000000030.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/waltest854883571/0000000000000011-0000000000000033.wal"}
+--- PASS: TestRepairFailDeleteDir (0.55s)
 === RUN   TestNew
---- PASS: TestNew (0.07s)
+--- PASS: TestNew (0.05s)
 === RUN   TestCreateFailFromPollutedDir
 --- PASS: TestCreateFailFromPollutedDir (0.00s)
 === RUN   TestWalCleanup
---- PASS: TestWalCleanup (0.08s)
+--- PASS: TestWalCleanup (0.05s)
 === RUN   TestCreateFailFromNoSpaceLeft
-{"level":"warn","msg":"failed to preallocate an initial WAL file","path":"/tmp/TestCreateFailFromNoSpaceLeft1523748032/001/waltest1731672740.tmp/0000000000000000-0000000000000000.wal","segment-bytes":9223372036854775807,"error":"no space left on device"}
+{"level":"warn","msg":"failed to preallocate an initial WAL file","path":"/tmp/TestCreateFailFromNoSpaceLeft4242095439/001/waltest1738473495.tmp/0000000000000000-0000000000000000.wal","segment-bytes":9223372036854775807,"error":"no space left on device"}
 --- PASS: TestCreateFailFromNoSpaceLeft (0.00s)
 === RUN   TestNewForInitedDir
 --- PASS: TestNewForInitedDir (0.00s)
 === RUN   TestOpenAtIndex
---- PASS: TestOpenAtIndex (0.06s)
+--- PASS: TestOpenAtIndex (0.05s)
 === RUN   TestVerify
-    logger.go:130: 2026-04-07T08:44:58.416-1200	INFO	created a new WAL segment	{"path": "/tmp/TestVerify1109404711/001/waltest2295571746/0000000000000001-0000000000000001.wal"}
-    logger.go:130: 2026-04-07T08:44:58.447-1200	INFO	created a new WAL segment	{"path": "/tmp/TestVerify1109404711/001/waltest2295571746/0000000000000002-0000000000000002.wal"}
-    logger.go:130: 2026-04-07T08:44:58.472-1200	INFO	created a new WAL segment	{"path": "/tmp/TestVerify1109404711/001/waltest2295571746/0000000000000003-0000000000000003.wal"}
-    logger.go:130: 2026-04-07T08:44:58.495-1200	INFO	created a new WAL segment	{"path": "/tmp/TestVerify1109404711/001/waltest2295571746/0000000000000004-0000000000000004.wal"}
-    logger.go:130: 2026-04-07T08:44:58.515-1200	INFO	created a new WAL segment	{"path": "/tmp/TestVerify1109404711/001/waltest2295571746/0000000000000005-0000000000000005.wal"}
---- PASS: TestVerify (0.18s)
+    logger.go:130: 2025-03-06T04:29:23.030+1400	INFO	created a new WAL segment	{"path": "/tmp/TestVerify1504547977/001/waltest1583824623/0000000000000001-0000000000000001.wal"}
+    logger.go:130: 2025-03-06T04:29:23.046+1400	INFO	created a new WAL segment	{"path": "/tmp/TestVerify1504547977/001/waltest1583824623/0000000000000002-0000000000000002.wal"}
+    logger.go:130: 2025-03-06T04:29:23.061+1400	INFO	created a new WAL segment	{"path": "/tmp/TestVerify1504547977/001/waltest1583824623/0000000000000003-0000000000000003.wal"}
+    logger.go:130: 2025-03-06T04:29:23.105+1400	INFO	created a new WAL segment	{"path": "/tmp/TestVerify1504547977/001/waltest1583824623/0000000000000004-0000000000000004.wal"}
+    logger.go:130: 2025-03-06T04:29:23.113+1400	INFO	created a new WAL segment	{"path": "/tmp/TestVerify1504547977/001/waltest1583824623/0000000000000005-0000000000000005.wal"}
+--- PASS: TestVerify (0.15s)
 === RUN   TestCut
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestCut2567467010/001/waltest2252877931/0000000000000001-0000000000000001.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestCut2567467010/001/waltest2252877931/0000000000000002-0000000000000002.wal"}
---- PASS: TestCut (0.12s)
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestCut3093055788/001/waltest396437416/0000000000000001-0000000000000001.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestCut3093055788/001/waltest396437416/0000000000000002-0000000000000002.wal"}
+--- PASS: TestCut (0.10s)
 === RUN   TestSaveWithCut
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestSaveWithCut827454995/001/waltest223922339/0000000000000001-0000000000000005.wal"}
---- PASS: TestSaveWithCut (0.14s)
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestSaveWithCut3262955298/001/waltest861400417/0000000000000001-0000000000000005.wal"}
+--- PASS: TestSaveWithCut (0.10s)
 === RUN   TestRecover
 === RUN   TestRecover/10MB
 === RUN   TestRecover/20MB
 === RUN   TestRecover/40MB
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecover40MB4064408682/001/0000000000000001-0000000000000003.wal"}
---- PASS: TestRecover (1.02s)
-    --- PASS: TestRecover/10MB (0.22s)
-    --- PASS: TestRecover/20MB (0.28s)
-    --- PASS: TestRecover/40MB (0.52s)
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecover40MB3176787901/001/0000000000000001-0000000000000003.wal"}
+--- PASS: TestRecover (0.84s)
+    --- PASS: TestRecover/10MB (0.15s)
+    --- PASS: TestRecover/20MB (0.27s)
+    --- PASS: TestRecover/40MB (0.42s)
 === RUN   TestSearchIndex
 --- PASS: TestSearchIndex (0.00s)
 === RUN   TestScanWalName
 --- PASS: TestScanWalName (0.00s)
 === RUN   TestRecoverAfterCut
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecoverAfterCut3198191820/001/waltest1658617012/0000000000000001-0000000000000001.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecoverAfterCut3198191820/001/waltest1658617012/0000000000000002-0000000000000002.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecoverAfterCut3198191820/001/waltest1658617012/0000000000000003-0000000000000003.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecoverAfterCut3198191820/001/waltest1658617012/0000000000000004-0000000000000004.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecoverAfterCut3198191820/001/waltest1658617012/0000000000000005-0000000000000005.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecoverAfterCut3198191820/001/waltest1658617012/0000000000000006-0000000000000006.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecoverAfterCut3198191820/001/waltest1658617012/0000000000000007-0000000000000007.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecoverAfterCut3198191820/001/waltest1658617012/0000000000000008-0000000000000008.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecoverAfterCut3198191820/001/waltest1658617012/0000000000000009-0000000000000009.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecoverAfterCut3198191820/001/waltest1658617012/000000000000000a-000000000000000a.wal"}
---- PASS: TestRecoverAfterCut (0.58s)
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecoverAfterCut373482176/001/waltest945712382/0000000000000001-0000000000000001.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecoverAfterCut373482176/001/waltest945712382/0000000000000002-0000000000000002.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecoverAfterCut373482176/001/waltest945712382/0000000000000003-0000000000000003.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecoverAfterCut373482176/001/waltest945712382/0000000000000004-0000000000000004.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecoverAfterCut373482176/001/waltest945712382/0000000000000005-0000000000000005.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecoverAfterCut373482176/001/waltest945712382/0000000000000006-0000000000000006.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecoverAfterCut373482176/001/waltest945712382/0000000000000007-0000000000000007.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecoverAfterCut373482176/001/waltest945712382/0000000000000008-0000000000000008.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecoverAfterCut373482176/001/waltest945712382/0000000000000009-0000000000000009.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestRecoverAfterCut373482176/001/waltest945712382/000000000000000a-000000000000000a.wal"}
+--- PASS: TestRecoverAfterCut (0.50s)
 === RUN   TestOpenAtUncommittedIndex
---- PASS: TestOpenAtUncommittedIndex (0.11s)
+--- PASS: TestOpenAtUncommittedIndex (0.08s)
 === RUN   TestOpenForRead
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestOpenForRead422100565/001/waltest2338269518/0000000000000001-0000000000000001.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestOpenForRead422100565/001/waltest2338269518/0000000000000002-0000000000000002.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestOpenForRead422100565/001/waltest2338269518/0000000000000003-0000000000000003.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestOpenForRead422100565/001/waltest2338269518/0000000000000004-0000000000000004.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestOpenForRead422100565/001/waltest2338269518/0000000000000005-0000000000000005.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestOpenForRead422100565/001/waltest2338269518/0000000000000006-0000000000000006.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestOpenForRead422100565/001/waltest2338269518/0000000000000007-0000000000000007.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestOpenForRead422100565/001/waltest2338269518/0000000000000008-0000000000000008.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestOpenForRead422100565/001/waltest2338269518/0000000000000009-0000000000000009.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestOpenForRead422100565/001/waltest2338269518/000000000000000a-000000000000000a.wal"}
---- PASS: TestOpenForRead (0.30s)
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestOpenForRead74732306/001/waltest2277141057/0000000000000001-0000000000000001.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestOpenForRead74732306/001/waltest2277141057/0000000000000002-0000000000000002.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestOpenForRead74732306/001/waltest2277141057/0000000000000003-0000000000000003.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestOpenForRead74732306/001/waltest2277141057/0000000000000004-0000000000000004.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestOpenForRead74732306/001/waltest2277141057/0000000000000005-0000000000000005.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestOpenForRead74732306/001/waltest2277141057/0000000000000006-0000000000000006.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestOpenForRead74732306/001/waltest2277141057/0000000000000007-0000000000000007.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestOpenForRead74732306/001/waltest2277141057/0000000000000008-0000000000000008.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestOpenForRead74732306/001/waltest2277141057/0000000000000009-0000000000000009.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestOpenForRead74732306/001/waltest2277141057/000000000000000a-000000000000000a.wal"}
+--- PASS: TestOpenForRead (0.23s)
 === RUN   TestOpenWithMaxIndex
---- PASS: TestOpenWithMaxIndex (0.11s)
+--- PASS: TestOpenWithMaxIndex (0.06s)
 === RUN   TestSaveEmpty
 --- PASS: TestSaveEmpty (0.00s)
 === RUN   TestReleaseLockTo
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestReleaseLockTo285989685/001/waltest3040793605/0000000000000001-0000000000000001.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestReleaseLockTo285989685/001/waltest3040793605/0000000000000002-0000000000000002.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestReleaseLockTo285989685/001/waltest3040793605/0000000000000003-0000000000000003.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestReleaseLockTo285989685/001/waltest3040793605/0000000000000004-0000000000000004.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestReleaseLockTo285989685/001/waltest3040793605/0000000000000005-0000000000000005.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestReleaseLockTo285989685/001/waltest3040793605/0000000000000006-0000000000000006.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestReleaseLockTo285989685/001/waltest3040793605/0000000000000007-0000000000000007.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestReleaseLockTo285989685/001/waltest3040793605/0000000000000008-0000000000000008.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestReleaseLockTo285989685/001/waltest3040793605/0000000000000009-0000000000000009.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestReleaseLockTo285989685/001/waltest3040793605/000000000000000a-000000000000000a.wal"}
---- PASS: TestReleaseLockTo (0.29s)
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestReleaseLockTo3507985611/001/waltest3257637953/0000000000000001-0000000000000001.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestReleaseLockTo3507985611/001/waltest3257637953/0000000000000002-0000000000000002.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestReleaseLockTo3507985611/001/waltest3257637953/0000000000000003-0000000000000003.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestReleaseLockTo3507985611/001/waltest3257637953/0000000000000004-0000000000000004.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestReleaseLockTo3507985611/001/waltest3257637953/0000000000000005-0000000000000005.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestReleaseLockTo3507985611/001/waltest3257637953/0000000000000006-0000000000000006.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestReleaseLockTo3507985611/001/waltest3257637953/0000000000000007-0000000000000007.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestReleaseLockTo3507985611/001/waltest3257637953/0000000000000008-0000000000000008.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestReleaseLockTo3507985611/001/waltest3257637953/0000000000000009-0000000000000009.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestReleaseLockTo3507985611/001/waltest3257637953/000000000000000a-000000000000000a.wal"}
+--- PASS: TestReleaseLockTo (0.23s)
 === RUN   TestTailWriteNoSlackSpace
---- PASS: TestTailWriteNoSlackSpace (0.14s)
+--- PASS: TestTailWriteNoSlackSpace (0.08s)
 === RUN   TestRestartCreateWal
---- PASS: TestRestartCreateWal (0.06s)
+--- PASS: TestRestartCreateWal (0.05s)
 === RUN   TestOpenOnTornWrite
---- PASS: TestOpenOnTornWrite (0.12s)
+--- PASS: TestOpenOnTornWrite (0.09s)
 === RUN   TestRenameFail
-{"level":"info","msg":"closing WAL to release flock and retry directory renaming","from":"/tmp/TestRenameFail2137874205/002/waltest666395437","to":"/tmp/TestRenameFail2137874205/001/waltest951893243"}
+{"level":"info","msg":"closing WAL to release flock and retry directory renaming","from":"/tmp/TestRenameFail2845835304/002/waltest3873563276","to":"/tmp/TestRenameFail2845835304/001/waltest3821369885"}
 --- PASS: TestRenameFail (0.00s)
 === RUN   TestReadAllFail
---- PASS: TestReadAllFail (0.05s)
+--- PASS: TestReadAllFail (0.06s)
 === RUN   TestValidSnapshotEntries
---- PASS: TestValidSnapshotEntries (0.05s)
+--- PASS: TestValidSnapshotEntries (0.06s)
 === RUN   TestValidSnapshotEntriesAfterPurgeWal
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestValidSnapshotEntriesAfterPurgeWal1131682892/001/waltest3425563162/0000000000000001-0000000000000002.wal"}
-{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestValidSnapshotEntriesAfterPurgeWal1131682892/001/waltest3425563162/0000000000000002-0000000000000004.wal"}
---- PASS: TestValidSnapshotEntriesAfterPurgeWal (0.00s)
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestValidSnapshotEntriesAfterPurgeWal1205363209/001/waltest302953170/0000000000000001-0000000000000002.wal"}
+{"level":"info","msg":"created a new WAL segment","path":"/tmp/TestValidSnapshotEntriesAfterPurgeWal1205363209/001/waltest302953170/0000000000000002-0000000000000004.wal"}
+--- PASS: TestValidSnapshotEntriesAfterPurgeWal (0.01s)
 === RUN   TestLastRecordLengthExceedFileEnd
     wal_test.go:1179: Generate a WAL file with the last record's length modified.
-    wal_test.go:1197: fileName: /tmp/TestLastRecordLengthExceedFileEnd2981161310/001/wal951249426
+    wal_test.go:1197: fileName: /tmp/TestLastRecordLengthExceedFileEnd3467378874/001/wal2973930692
     wal_test.go:1200: Verify all records can be parsed correctly.
     wal_test.go:1210: Validating normal entry: {0 1 EntryNormal [119 97 108 100 97 116 97 49]}
     wal_test.go:1210: Validating normal entry: {0 2 EntryNormal [119 97 108 100 97 116 97 50]}
     wal_test.go:1220: Verify the w.ReadAll returns io.ErrUnexpectedEOF in the error chain
---- PASS: TestLastRecordLengthExceedFileEnd (0.05s)
+--- PASS: TestLastRecordLengthExceedFileEnd (0.03s)
 PASS
-ok  	go.etcd.io/etcd/server/wal	4.818s
+ok  	go.etcd.io/etcd/server/wal	3.925s
 === RUN   TestSnapshotMetadataCompatibility
 --- PASS: TestSnapshotMetadataCompatibility (0.00s)
 === RUN   TestValidateSnapshot
@@ -20313,7 +20436,7 @@
     --- PASS: TestValidateSnapshot/invalid (0.00s)
     --- PASS: TestValidateSnapshot/valid (0.00s)
 PASS
-ok  	go.etcd.io/etcd/server/wal/walpb	0.010s
+ok  	go.etcd.io/etcd/server/wal/walpb	0.022s
 === RUN   TestDowngradeUpgradeClusterOf1
     cluster_downgrade_test.go:59: "/build/reproducible-path/etcd-3.5.16/_build/src/go.etcd.io/etcd/bin/etcd-last-release" does not exist
 --- SKIP: TestDowngradeUpgradeClusterOf1 (0.00s)
@@ -21284,25 +21407,25 @@
     util.go:144: e2e tests are not running in --short mode
 --- SKIP: TestConnectionRejectMessage (0.00s)
 PASS
-ok  	go.etcd.io/etcd/tests/e2e	0.074s
+ok  	go.etcd.io/etcd/tests/e2e	0.055s
 ?   	go.etcd.io/etcd/tests/framework/e2e	[no test files]
 ?   	go.etcd.io/etcd/tests/framework/testutils	[no test files]
 === RUN   TestGetURLAndPort
 --- PASS: TestGetURLAndPort (0.00s)
 PASS
-ok  	go.etcd.io/etcd/tests/functional/agent	0.041s
+ok  	go.etcd.io/etcd/tests/functional/agent	0.036s
 === RUN   TestEtcd
 --- PASS: TestEtcd (0.00s)
 PASS
-ok  	go.etcd.io/etcd/tests/functional/rpcpb	0.040s
+ok  	go.etcd.io/etcd/tests/functional/rpcpb	0.097s
 ?   	go.etcd.io/etcd/tests/functional/runner	[no test files]
 === RUN   Test_read
-{"level":"info","ts":"2026-04-07T08:45:12.645394-1200","caller":"tester/cluster_read_config.go:36","msg":"opened configuration file","path":"../functional.yaml"}
-{"level":"info","ts":"2026-04-07T08:45:12.648072-1200","caller":"tester/cluster_shuffle.go:35","msg":"shuffled test failure cases","total":22}
-{"level":"info","ts":"2026-04-07T08:45:12.648153-1200","caller":"tester/cluster_shuffle.go:35","msg":"shuffled test failure cases","total":22}
---- PASS: Test_read (0.00s)
+{"level":"info","ts":"2025-03-06T04:29:36.134775+1400","caller":"tester/cluster_read_config.go:36","msg":"opened configuration file","path":"../functional.yaml"}
+{"level":"info","ts":"2025-03-06T04:29:36.136878+1400","caller":"tester/cluster_shuffle.go:35","msg":"shuffled test failure cases","total":22}
+{"level":"info","ts":"2025-03-06T04:29:36.136925+1400","caller":"tester/cluster_shuffle.go:35","msg":"shuffled test failure cases","total":22}
+--- PASS: Test_read (0.01s)
 PASS
-ok  	go.etcd.io/etcd/tests/functional/tester	0.044s
+ok  	go.etcd.io/etcd/tests/functional/tester	0.061s
 === RUN   TestClusterOf1
     cluster_test.go:46: Cannot create clusters in --short tests
 --- SKIP: TestClusterOf1 (0.00s)
@@ -21905,7 +22028,7 @@
 === RUN   TestBeforeTestWithoutLeakDetection
 --- PASS: TestBeforeTestWithoutLeakDetection (0.00s)
 PASS
-ok  	go.etcd.io/etcd/tests/integration	0.072s
+ok  	go.etcd.io/etcd/tests/integration	0.061s
 === RUN   TestV2NoRetryEOF
     client_test.go:33: Cannot create clusters in --short tests
 --- SKIP: TestV2NoRetryEOF (0.00s)
@@ -21916,12 +22039,12 @@
     client_test.go:91: Cannot create clusters in --short tests
 --- SKIP: TestV2RetryRefuse (0.00s)
 PASS
-ok  	go.etcd.io/etcd/tests/integration/client	0.052s
+ok  	go.etcd.io/etcd/tests/integration/client	0.040s
 testing: warning: no tests to run
 PASS
-2026/04/07 08:45:19 Terminating...
-2026/04/07 08:45:19 Closer...
-ok  	go.etcd.io/etcd/tests/integration/client/examples	0.050s [no tests to run]
+2025/03/06 04:29:42 Terminating...
+2025/03/06 04:29:42 Closer...
+ok  	go.etcd.io/etcd/tests/integration/client/examples	0.068s [no tests to run]
 === RUN   TestMemberList
     cluster_test.go:30: Cannot create clusters in --short tests
 --- SKIP: TestMemberList (0.00s)
@@ -22207,8 +22330,8 @@
     watch_test.go:48: Cannot create clusters in --short tests
 --- SKIP: TestWatchClose (0.00s)
 PASS
-ok  	go.etcd.io/etcd/tests/integration/clientv3	0.059s
-ok  	go.etcd.io/etcd/tests/integration/clientv3/concurrency	0.046s
+ok  	go.etcd.io/etcd/tests/integration/clientv3	0.049s
+ok  	go.etcd.io/etcd/tests/integration/clientv3/concurrency	0.039s
 === RUN   TestBalancerUnderBlackholeKeepAliveWatch
     black_hole_test.go:36: Cannot create clusters in --short tests
 --- SKIP: TestBalancerUnderBlackholeKeepAliveWatch (0.00s)
@@ -22328,8 +22451,8 @@
     --- SKIP: TestBalancerUnderServerStopInflightSerializableGetOnRestart/connectivity_test.pinTestOpt{pinLeader:false,_stopPinFirst:true} (0.00s)
     --- SKIP: TestBalancerUnderServerStopInflightSerializableGetOnRestart/connectivity_test.pinTestOpt{pinLeader:false,_stopPinFirst:false} (0.00s)
 PASS
-ok  	go.etcd.io/etcd/tests/integration/clientv3/connectivity	0.053s
-ok  	go.etcd.io/etcd/tests/integration/clientv3/examples	0.047s
+ok  	go.etcd.io/etcd/tests/integration/clientv3/connectivity	0.235s
+ok  	go.etcd.io/etcd/tests/integration/clientv3/examples	0.043s
 === RUN   TestBarrierSingleNode
     v3_barrier_test.go:27: Cannot create clusters in --short tests
 --- SKIP: TestBarrierSingleNode (0.00s)
@@ -22391,7 +22514,7 @@
     v3_queue_test.go:127: Cannot create clusters in --short tests
 --- SKIP: TestPrQueueManyReaderManyWriter (0.00s)
 PASS
-ok  	go.etcd.io/etcd/tests/integration/clientv3/experimental/recipes	0.050s
+ok  	go.etcd.io/etcd/tests/integration/clientv3/experimental/recipes	0.039s
 === RUN   TestLeaseNotFoundError
     lease_test.go:33: Cannot create clusters in --short tests
 --- SKIP: TestLeaseNotFoundError (0.00s)
@@ -22611,7 +22734,7 @@
     --- SKIP: TestLeasingSessionExpireCancel/test_6 (0.00s)
     --- SKIP: TestLeasingSessionExpireCancel/test_7 (0.00s)
 PASS
-ok  	go.etcd.io/etcd/tests/integration/clientv3/lease	0.057s
+ok  	go.etcd.io/etcd/tests/integration/clientv3/lease	0.044s
 === RUN   TestEndpointManager
     endpoints_test.go:29: Cannot create clusters in --short tests
 --- SKIP: TestEndpointManager (0.00s)
@@ -22628,12 +22751,12 @@
     resolver_test.go:118: Cannot create clusters in --short tests
 --- SKIP: TestEtcdEndpointManager (0.00s)
 PASS
-ok  	go.etcd.io/etcd/tests/integration/clientv3/naming	0.052s
+ok  	go.etcd.io/etcd/tests/integration/clientv3/naming	0.043s
 === RUN   TestSaveSnapshotFilePermissions
     v3_snapshot_test.go:61: Snapshot creation tests are depending on embedded etcServer so are integration-level tests.
 --- SKIP: TestSaveSnapshotFilePermissions (0.00s)
 PASS
-ok  	go.etcd.io/etcd/tests/integration/clientv3/snapshot	0.046s
+ok  	go.etcd.io/etcd/tests/integration/clientv3/snapshot	0.037s
 === RUN   TestEmbedEtcd
     embed_test.go:50: Cannot start embedded cluster in --short tests
 --- SKIP: TestEmbedEtcd (0.00s)
@@ -22644,7 +22767,7 @@
     embed_test.go:135: Cannot start embedded cluster in --short tests
 --- SKIP: TestEmbedEtcdGracefulStopInsecure (0.00s)
 PASS
-ok  	go.etcd.io/etcd/tests/integration/embed	0.064s
+ok  	go.etcd.io/etcd/tests/integration/embed	0.038s
 === RUN   TestClusterProxyMemberList
     cluster_test.go:37: Cannot create clusters in --short tests
 --- SKIP: TestClusterProxyMemberList (0.00s)
@@ -22655,7 +22778,7 @@
     register_test.go:29: Cannot create clusters in --short tests
 --- SKIP: TestRegister (0.00s)
 PASS
-ok  	go.etcd.io/etcd/tests/integration/proxy/grpcproxy	0.048s
+ok  	go.etcd.io/etcd/tests/integration/proxy/grpcproxy	0.037s
 === RUN   TestSnapshotV3RestoreMultiMemberAdd
     member_test.go:34: Cannot create clusters in --short tests
 --- SKIP: TestSnapshotV3RestoreMultiMemberAdd (0.00s)
@@ -22669,7 +22792,7 @@
     v3_snapshot_test.go:143: Cannot create clusters in --short tests
 --- SKIP: TestCorruptedBackupFileCheck (0.00s)
 PASS
-ok  	go.etcd.io/etcd/tests/integration/snapshot	0.050s
+ok  	go.etcd.io/etcd/tests/integration/snapshot	0.038s
 === RUN   TestStoreRecover
     store_tag_not_v2v3_test.go:43: Cannot create clusters in --short tests
 --- SKIP: TestStoreRecover (0.00s)
@@ -22798,7 +22921,7 @@
     store_v2v3_test.go:30: Cannot create clusters in --short tests
 --- SKIP: TestCreateSetDir (0.00s)
 PASS
-ok  	go.etcd.io/etcd/tests/integration/v2store	0.651s
+ok  	go.etcd.io/etcd/tests/integration/v2store	0.649s
 ?   	go.etcd.io/etcd/tests/testutils	[no test files]
 make[2]: Leaving directory '/build/reproducible-path/etcd-3.5.16'
    debian/rules execute_after_dh_auto_test
@@ -22839,10 +22962,10 @@
    dh_gencontrol -O--buildsystem=golang -O--builddirectory=_build
    dh_md5sums -O--buildsystem=golang -O--builddirectory=_build
    dh_builddeb -O--buildsystem=golang -O--builddirectory=_build
-dpkg-deb: building package 'etcd-server' in '../etcd-server_3.5.16-4_arm64.deb'.
+dpkg-deb: building package 'golang-etcd-server-dev' in '../golang-etcd-server-dev_3.5.16-4_all.deb'.
 dpkg-deb: building package 'etcd-server-dbgsym' in '../etcd-server-dbgsym_3.5.16-4_arm64.deb'.
+dpkg-deb: building package 'etcd-server' in '../etcd-server_3.5.16-4_arm64.deb'.
 dpkg-deb: building package 'etcd-client' in '../etcd-client_3.5.16-4_arm64.deb'.
-dpkg-deb: building package 'golang-etcd-server-dev' in '../golang-etcd-server-dev_3.5.16-4_all.deb'.
 dpkg-deb: building package 'etcd-client-dbgsym' in '../etcd-client-dbgsym_3.5.16-4_arm64.deb'.
  dpkg-genbuildinfo --build=binary -O../etcd_3.5.16-4_arm64.buildinfo
  dpkg-genchanges --build=binary -O../etcd_3.5.16-4_arm64.changes
@@ -22851,12 +22974,14 @@
 dpkg-buildpackage: info: binary-only upload (no source included)
 dpkg-genchanges: info: not including original source code in upload
 I: copying local configuration
+I: user script /srv/workspace/pbuilder/2853062/tmp/hooks/B01_cleanup starting
+I: user script /srv/workspace/pbuilder/2853062/tmp/hooks/B01_cleanup finished
 I: unmounting dev/ptmx filesystem
 I: unmounting dev/pts filesystem
 I: unmounting dev/shm filesystem
 I: unmounting proc filesystem
 I: unmounting sys filesystem
 I: cleaning the build env 
-I: removing directory /srv/workspace/pbuilder/2432627 and its subdirectories
-I: Current time: Tue Apr  7 08:46:31 -12 2026
-I: pbuilder-time-stamp: 1775594791
+I: removing directory /srv/workspace/pbuilder/2853062 and its subdirectories
+I: Current time: Thu Mar  6 04:30:45 +14 2025
+I: pbuilder-time-stamp: 1741185045