Added blockchain DB versioning support, closes #650

This commit is contained in:
Bas van Kervel
2015-04-13 10:13:52 +02:00
parent 4de1e1609a
commit 49a513bdeb
6 changed files with 188 additions and 29 deletions

View File

@ -284,11 +284,14 @@ func (self *ChainManager) Export(w io.Writer) error {
defer self.mu.RUnlock()
glog.V(logger.Info).Infof("exporting %v blocks...\n", self.currentBlock.Header().Number)
for block := self.currentBlock; block != nil; block = self.GetBlock(block.Header().ParentHash) {
if err := block.EncodeRLP(w); err != nil {
last := self.currentBlock.NumberU64()
for nr := uint64(0); nr <= last; nr++ {
if err := self.GetBlockByNumber(nr).EncodeRLP(w); err != nil {
return err
}
}
return nil
}