From ea4632a0a261b907bb4c68eae0b191ad3b8790ea Mon Sep 17 00:00:00 2001 From: Jared Wasinger Date: Sun, 3 Dec 2023 22:23:33 +0800 Subject: [PATCH] more --- core/blockchain.go | 7 ++++--- core/state/state_witness.go | 5 +++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/core/blockchain.go b/core/blockchain.go index 2e88e2208f..42855179e0 100644 --- a/core/blockchain.go +++ b/core/blockchain.go @@ -1489,9 +1489,6 @@ func (bc *BlockChain) writeBlockAndSetHead(block *types.Block, receipts []*types return NonStatTy, err } - st.Witness.Block = block - state.DumpWitnessToFile(st.Witness) - currentBlock := bc.CurrentBlock() reorg, err := bc.forker.ReorgNeeded(currentBlock, block.Header()) if err != nil { @@ -1855,6 +1852,10 @@ func (bc *BlockChain) insertChain(chain types.Blocks, setHead bool) (int, error) } else { status, err = bc.writeBlockAndSetHead(block, receipts, logs, statedb, false) } + fmt.Println("dump block") + statedb.Witness.Block = block + state.DumpWitnessToFile(statedb.Witness) + followupInterrupt.Store(true) if err != nil { return it.index, err diff --git a/core/state/state_witness.go b/core/state/state_witness.go index f5bd3eb88d..3a90f503db 100644 --- a/core/state/state_witness.go +++ b/core/state/state_witness.go @@ -49,12 +49,13 @@ func (w *Witness) EncodeRLP() []byte { func (obj *EncodeWitness) encode(_w io.Writer) error { w := rlp.NewEncoderBuffer(_w) _tmp0 := w.List() + obj.block.EncodeRLP(w) w.ListEnd(_tmp0) return w.Flush() } func newWitness(originalRoot common.Hash) *Witness { - return &Witness{Root: originalRoot} + return &Witness{Root: originalRoot, Lists: make(map[common.Hash]map[string][]byte)} } func (w *Witness) addAccessList(owner common.Hash, list map[string][]byte) { @@ -82,7 +83,7 @@ func DumpWitnessToFile(w *Witness) { if err != nil { panic("shite") } - outputFName := fmt.Sprintf("%d-%x.rlp\n", w.Block.NumberU64(), w.Block.Hash()) + outputFName := fmt.Sprintf("%d-%x.rlp", w.Block.NumberU64(), w.Block.Hash()) err = os.WriteFile(path+"/"+outputFName, enc, 0644) if err != nil { panic("shite 2")