Merge pull request #1841 from yichengq/246

etcdserver: close storage when stop
This commit is contained in:
Yicheng Qin 2014-12-04 15:36:24 -08:00
commit 1d1c2ff834
2 changed files with 6 additions and 0 deletions

View File

@ -101,6 +101,8 @@ type Storage interface {
// remove it in this interface.
// Cut cuts out a new wal file for saving new state and entries.
Cut() error
// Close closes the Storage and performs finalization.
Close() error
}
type Server interface {
@ -386,6 +388,9 @@ func (s *EtcdServer) run() {
defer func() {
s.node.Stop()
s.sendhub.Stop()
if err := s.storage.Close(); err != nil {
log.Panicf("etcdserver: close storage error: %v", err)
}
close(s.done)
}()
for {

View File

@ -1530,6 +1530,7 @@ func (p *storageRecorder) SaveSnap(st raftpb.Snapshot) error {
}
return nil
}
func (p *storageRecorder) Close() error { return nil }
type readyNode struct {
readyc chan raft.Ready