diff --git a/txpool/pool.go b/txpool/pool.go index 4bd7958e4..3c2d263fe 100644 --- a/txpool/pool.go +++ b/txpool/pool.go @@ -644,8 +644,10 @@ func (sc *SendersCache) flush(tx kv.RwTx, byNonce *ByNonce, sendersWithoutTransa return err } if len(vv) == 0 { - tx.ForEach(kv.PooledSenderIDToAdress, nil, func(k, v []byte) error { - fmt.Printf("found:%x,%x\n", k, v) + tx.ForEach(kv.PooledSenderIDToAdress, nil, func(k, vvvv []byte) error { + if bytes.HasPrefix(k, v[:7]) { + fmt.Printf("found:%x,%x\n", k, vvvv) + } return nil }) fmt.Printf("aa: %x,%x,%x\n", k, v, vv) @@ -674,6 +676,25 @@ func (sc *SendersCache) flush(tx kv.RwTx, byNonce *ByNonce, sendersWithoutTransa } } sc.senderInfo = map[uint64]*senderInfo{} + if ASSERT { + tx.ForEach(kv.PooledTransaction, nil, func(k, v []byte) error { + vv, err := tx.GetOne(kv.PooledSenderIDToAdress, v[:8]) + if err != nil { + return err + } + if len(vv) == 0 { + tx.ForEach(kv.PooledSenderIDToAdress, nil, func(k, vvvv []byte) error { + if bytes.HasPrefix(k, v[:7]) { + fmt.Printf("found:%x,%x\n", k, vvvv) + } + return nil + }) + fmt.Printf("aa: %x,%x,%x\n", k, v, vv) + panic("no-no") + } + return nil + }) + } binary.BigEndian.PutUint64(encID, sc.blockHeight.Load()) if err := tx.Put(kv.PoolInfo, SenderCacheHeightKey, encID); err != nil {