예제 #1
0
파일: decoder.go 프로젝트: b2ornot2b/etcd
func mustUnmarshalState(d []byte) raftpb.State {
	var s raftpb.State
	if err := s.Unmarshal(d); err != nil {
		panic(err)
	}
	return s
}
예제 #2
0
파일: wal.go 프로젝트: joukou-forks/etcd
func (w *WAL) SaveState(s *raftpb.State) error {
	log.Printf("path=%s wal.saveState state=\"%+v\"", w.f.Name(), s)
	b, err := s.Marshal()
	if err != nil {
		panic(err)
	}
	rec := &walpb.Record{Type: stateType, Data: b}
	return w.encoder.encode(rec)
}