func (v *volume) BlockReport() ([]maggiefs.Block, error) { ret := make([]maggiefs.Block, 0, 0) it := v.blockData.NewIterator(readOpts) defer it.Close() it.SeekToFirst() for it = it; it.Valid(); it.Next() { blk := maggiefs.Block{} blk.FromBytes(it.Value()) ret = append(ret, blk) } return ret, it.GetError() }