diff --git a/server/etcdserver/api/snap/message.go b/server/etcdserver/api/snap/message.go index 2b4090c981d1..d2ae3c2cfb8a 100644 --- a/server/etcdserver/api/snap/message.go +++ b/server/etcdserver/api/snap/message.go @@ -17,7 +17,6 @@ package snap import ( "io" - "go.etcd.io/etcd/pkg/v3/ioutil" "go.etcd.io/raft/v3/raftpb" ) @@ -39,7 +38,7 @@ type Message struct { func NewMessage(rs raftpb.Message, rc io.ReadCloser, rcSize int64) *Message { return &Message{ Message: rs, - ReadCloser: ioutil.NewExactReadCloser(rc, rcSize), + ReadCloser: rc, TotalSize: int64(rs.Size()) + rcSize, closeC: make(chan bool, 1), } diff --git a/server/etcdserver/snapshot_merge.go b/server/etcdserver/snapshot_merge.go index cc3c545bee2a..6851a8bc078a 100644 --- a/server/etcdserver/snapshot_merge.go +++ b/server/etcdserver/snapshot_merge.go @@ -74,9 +74,9 @@ func newSnapshotReaderCloser(lg *zap.Logger, snapshot backend.Snapshot) io.ReadC ) } pw.CloseWithError(err) - err = snapshot.Close() - if err != nil { - lg.Panic("failed to close database snapshot", zap.Error(err)) + closeErr := snapshot.Close() + if closeErr != nil { + lg.Panic("failed to close database snapshot", zap.Error(closeErr)) } }() return pr