v3_snapshot.go (etcd-3.5.5) | : | v3_snapshot.go (etcd-3.5.6) | ||
---|---|---|---|---|
skipping to change at line 325 | skipping to change at line 325 | |||
return err | return err | |||
} | } | |||
sha := make([]byte, sha256.Size) | sha := make([]byte, sha256.Size) | |||
if _, err := srcf.Read(sha); err != nil { | if _, err := srcf.Read(sha); err != nil { | |||
return err | return err | |||
} | } | |||
if _, err := srcf.Seek(0, io.SeekStart); err != nil { | if _, err := srcf.Seek(0, io.SeekStart); err != nil { | |||
return err | return err | |||
} | } | |||
if err := fileutil.CreateDirAll(s.snapDir); err != nil { | if err := fileutil.CreateDirAll(s.lg, s.snapDir); err != nil { | |||
return err | return err | |||
} | } | |||
outDbPath := s.outDbPath() | outDbPath := s.outDbPath() | |||
db, dberr := os.OpenFile(outDbPath, os.O_RDWR|os.O_CREATE, 0600) | db, dberr := os.OpenFile(outDbPath, os.O_RDWR|os.O_CREATE, 0600) | |||
if dberr != nil { | if dberr != nil { | |||
return dberr | return dberr | |||
} | } | |||
dbClosed := false | dbClosed := false | |||
skipping to change at line 386 | skipping to change at line 386 | |||
// db hash is OK, can now modify DB so it can be part of a new cluster | // db hash is OK, can now modify DB so it can be part of a new cluster | |||
db.Close() | db.Close() | |||
return nil | return nil | |||
} | } | |||
// saveWALAndSnap creates a WAL for the initial cluster | // saveWALAndSnap creates a WAL for the initial cluster | |||
// | // | |||
// TODO: This code ignores learners !!! | // TODO: This code ignores learners !!! | |||
func (s *v3Manager) saveWALAndSnap() (*raftpb.HardState, error) { | func (s *v3Manager) saveWALAndSnap() (*raftpb.HardState, error) { | |||
if err := fileutil.CreateDirAll(s.walDir); err != nil { | if err := fileutil.CreateDirAll(s.lg, s.walDir); err != nil { | |||
return nil, err | return nil, err | |||
} | } | |||
// add members again to persist them to the store we create. | // add members again to persist them to the store we create. | |||
st := v2store.New(etcdserver.StoreClusterPrefix, etcdserver.StoreKeysPref ix) | st := v2store.New(etcdserver.StoreClusterPrefix, etcdserver.StoreKeysPref ix) | |||
s.cl.SetStore(st) | s.cl.SetStore(st) | |||
be := backend.NewDefaultBackend(s.outDbPath()) | be := backend.NewDefaultBackend(s.outDbPath()) | |||
defer be.Close() | defer be.Close() | |||
s.cl.SetBackend(be) | s.cl.SetBackend(be) | |||
for _, m := range s.cl.Members() { | for _, m := range s.cl.Members() { | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added |