0xPolygonHermez / cdk-erigon

Ethereum implementation on the efficiency frontier
GNU Lesser General Public License v3.0
35 stars 38 forks source link

Sequencer invalid batch when executor goes away #1019

Closed xavier-romero closed 1 month ago

xavier-romero commented 2 months ago

System information

Kurtosis + Erigon v2 beta15

Actual behaviour

Issues I've seen on kurtosis with beta15 by stopping executor.

Case 1:
[cdk-erigon-sequencer-001] [EROR] [08-23|12:54:16.845] [7/14 SequenceExecutorVerify] identified an invalid batch with number 58 
[cdk-erigon-sequencer-001] [INFO] [08-23|12:54:17.846] [txpool] stat                            pending=2974 baseFee=0 queued=0 alloc=95.6MB sys=3.4GB
[cdk-erigon-sequencer-001] [EROR] [08-23|12:55:16.845] [7/14 SequenceExecutorVerify] identified an invalid batch with number 58 
[cdk-erigon-sequencer-001] [INFO] [08-23|12:55:17.838] [p2p] GoodPeers 
[cdk-erigon-sequencer-001] [INFO] [08-23|12:55:17.846] [txpool] stat                            pending=2974 baseFee=0 queued=0 alloc=68.1MB sys=3.4GB
[cdk-erigon-sequencer-001] [EROR] [08-23|12:56:16.846] [7/14 SequenceExecutorVerify] identified an invalid batch with number 58 
[cdk-erigon-sequencer-001] [INFO] [08-23|12:56:17.846] [txpool] stat                            pending=2975 baseFee=0 queued=0 alloc=87.2MB sys=3.4GB
[cdk-erigon-sequencer-001] [EROR] [08-23|12:57:16.846] [7/14 SequenceExecutorVerify] identified an invalid batch with number 58 
[cdk-erigon-sequencer-001] [INFO] [08-23|12:57:17.838] [p2p] GoodPeers 
[cdk-erigon-sequencer-001] [INFO] [08-23|12:57:17.846] [txpool] stat                            pending=2975 baseFee=0 queued=0 alloc=65.5MB sys=3.4GB
[cdk-erigon-sequencer-001] [cdk-erigon-lib] timestamp 2024-03-12:16:34
[cdk-erigon-sequencer-001] [INFO] [08-23|12:58:13.901] logging to file system                   log dir=/home/erigon/.local/share/erigon/logs file prefix=erigon log level=info json=false
[cdk-erigon-sequencer-001] [INFO] [08-23|12:58:13.901] Starting metrics server                  addr=http://0.0.0.0:9091/debug/metrics/prometheus
[cdk-erigon-sequencer-001] [INFO] [08-23|12:58:13.901] Starting pprof server                    cpu="go tool pprof -lines -http=: http://0.0.0.0:6060/debug/pprof/profile?seconds=20" heap="go tool pprof -lines -http=: http://0.0.0.0:6060/debug/pprof/heap"
[cdk-erigon-sequencer-001] [INFO] [08-23|12:58:13.917] logging to file system                   log dir=data/dynamic-kurtosis-sequencer/logs file prefix=cdk-erigon log level=info json=false
[cdk-erigon-sequencer-001] [INFO] [08-23|12:58:13.917] Build info                               git_branch= git_tag= git_commit=
[cdk-erigon-sequencer-001] [INFO] [08-23|12:58:13.917] Poseidon hashing                         Accelerated=true
[cdk-erigon-sequencer-001] [INFO] [08-23|12:58:13.917] Starting Erigon on dynamic chain         chain=dynamic-kurtosis
[cdk-erigon-sequencer-001] [INFO] [08-23|12:58:13.918] Maximum peer count                       ETH=0 total=0
[cdk-erigon-sequencer-001] [INFO] [08-23|12:58:13.918] starting HTTP APIs                       APIs=eth,debug,net,trace,web3,erigon,zkevm,txpool
[cdk-erigon-sequencer-001] [INFO] [08-23|12:58:13.918] torrent verbosity                        level=WRN
[cdk-erigon-sequencer-001] [INFO] [08-23|12:58:16.022] Set global gas cap                       cap=50000000
[cdk-erigon-sequencer-001] [WARN] [08-23|12:58:16.025] NetworkID is not set for dynamic chain   chain=dynamic-kurtosis networkID=1
[cdk-erigon-sequencer-001] [INFO] [08-23|12:58:16.025] [Downloader] Runnning with               ipv6-enabled=true ipv4-enabled=true download.rate=16mb upload.rate=4mb
[cdk-erigon-sequencer-001] [INFO] [08-23|12:58:16.025] Opening Database                         label=chaindata path=/home/erigon/data/dynamic-kurtosis-sequencer/chaindata
[cdk-erigon-sequencer-001] [INFO] [08-23|12:58:16.029] Initialised chain configuration          config="{ChainID: 10101, Homestead: 0, DAO: 0, Tangerine Whistle: 0, Spurious Dragon: 0, Byzantium: 0, Constantinople: 0, Petersburg: 0, Istanbul: 0, Muir Glacier: 0, Berlin: 0, London: 18446744073709551615, Arrow Glacier: 9999999999999999999999999999999999999999999999999, Gray Glacier: 9999999999999999999999999999999999999999999999999, Terminal Total Difficulty: 58750000000000000000000, Merge Netsplit: <nil>, Shanghai: 18446744073709551615, Cancun: 18446744073709551615, Prague: 18446744073709551615, Engine: ethash}" genesis=0x4b680fa02dfe430f2232cca0c47402e7f7d9972ff993ba2762b5adb80924e8f0
[cdk-erigon-sequencer-001] [INFO] [08-23|12:58:16.030] Effective                                prune_flags= snapshot_flags= history.v3=false
[cdk-erigon-sequencer-001] [INFO] [08-23|12:58:16.033] Initialising Ethereum protocol           network=1
[cdk-erigon-sequencer-001] [INFO] [08-23|12:58:16.033] Disk storage enabled for ethash DAGs     dir=/home/erigon/data/dynamic-kurtosis-sequencer/ethash-dags count=2
[cdk-erigon-sequencer-001] [INFO] [08-23|12:58:16.043] Starting private RPC server              on=localhost:9092
[cdk-erigon-sequencer-001] [INFO] [08-23|12:58:16.043] new subscription to logs established 
[cdk-erigon-sequencer-001] fatal error: concurrent map read and map write
[cdk-erigon-sequencer-001] 
[cdk-erigon-sequencer-001] goroutine 95 [running]:
[cdk-erigon-sequencer-001] github.com/hashicorp/golang-lru/v2/simplelru.(*LRU[...]).Add(0x2f4f1e0, {0xc001652ee0, 0x20}, {})
[cdk-erigon-sequencer-001]  github.com/hashicorp/golang-lru/v2@v2.0.2/simplelru/lru.go:50 +0x45
[cdk-erigon-sequencer-001] github.com/ledgerwatch/erigon/zk/txpool.(*TxPool).fromDB(0xc0006b3440, {0x2f159a0, 0xc0008af590}, {0x2f331a0, 0xc001641e00}, {0x2f331a0?, 0xc001641e60?})
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/zk/txpool/pool.go:1645 +0x21f
[cdk-erigon-sequencer-001] github.com/ledgerwatch/erigon/zk/txpool.(*TxPool).OnNewBlock(0xc0006b3440, {0x2f159a0, 0xc0008af590}, 0xc001641da0, {{0x0, 0x0, 0x0}, {0x0, 0x0, 0x0}, ...}, ...)
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/zk/txpool/pool.go:402 +0x2de
[cdk-erigon-sequencer-001] github.com/ledgerwatch/erigon/zk/txpool.(*Fetch).handleStateChanges.func3({0x2f331a0?, 0xc001641e00?})
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/zk/txpool/fetch.go:499 +0xd2
[cdk-erigon-sequencer-001] github.com/gateway-fm/cdk-erigon-lib/kv/mdbx.(*MdbxKV).View(0xc00168dc20?, {0x2f159a0?, 0xc0008af590?}, 0xc001d71bc0)
[cdk-erigon-sequencer-001]  github.com/gateway-fm/cdk-erigon-lib@v0.0.0-20240805074757-5e3196248fde/kv/mdbx/kv_mdbx.go:664 +0xa6
[cdk-erigon-sequencer-001] github.com/ledgerwatch/erigon/zk/txpool.(*Fetch).handleStateChanges(0xc0006b97a0, {0x2f159a0?, 0xc0008af590?}, {0x2efb240, 0xc000bda0b0})
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/zk/txpool/fetch.go:498 +0x34e
[cdk-erigon-sequencer-001] github.com/ledgerwatch/erigon/zk/txpool.(*Fetch).ConnectCore.func1()
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/zk/txpool/fetch.go:116 +0x65
[cdk-erigon-sequencer-001] created by github.com/ledgerwatch/erigon/zk/txpool.(*Fetch).ConnectCore
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/zk/txpool/fetch.go:109 +0x56
[cdk-erigon-sequencer-001] 
[cdk-erigon-sequencer-001] goroutine 1 [runnable, locked to thread]:
[cdk-erigon-sequencer-001] github.com/hashicorp/golang-lru/v2/simplelru.(*LRU[...]).Add(0x2f4f1e0, {0xc0035dd5a0, 0x20}, {})
[cdk-erigon-sequencer-001]  github.com/hashicorp/golang-lru/v2@v2.0.2/simplelru/lru.go:58 +0x191
[cdk-erigon-sequencer-001] github.com/ledgerwatch/erigon/zk/txpool.(*TxPool).fromDB(0xc0006b3440, {0x2f159a0, 0xc0008af590}, {0x2f331a0, 0xc000626480}, {0x2f331a0?, 0xc0013cc480?})
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/zk/txpool/pool.go:1645 +0x21f
[cdk-erigon-sequencer-001] github.com/ledgerwatch/erigon/zk/txpool.(*TxPool).StartIfNotStarted(0xc0006b3440, {0x2f159a0, 0xc0008af590}, {0x2f1db68?, 0xc0012b5ce0?}, {0x2f331a0, 0xc0013cc480})
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/zk/txpool/pool_zk.go:270 +0x128
[cdk-erigon-sequencer-001] github.com/ledgerwatch/erigon/eth.New(0xc000336d20, 0x41605c0)
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/eth/backend.go:871 +0x645d
[cdk-erigon-sequencer-001] github.com/ledgerwatch/erigon/turbo/node.New(0xc00013c040?, 0x27092e5?)
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/turbo/node/node.go:114 +0x74
[cdk-erigon-sequencer-001] main.runErigon(0xc000937e40?)
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/cmd/cdk-erigon/main.go:65 +0x295
[cdk-erigon-sequencer-001] github.com/urfave/cli/v2.(*Command).Run(0xc000937e40, 0xc0016876c0, {0xc000126180, 0x6, 0x6})
[cdk-erigon-sequencer-001]  github.com/urfave/cli/v2@v2.25.7/command.go:274 +0x9eb
[cdk-erigon-sequencer-001] github.com/urfave/cli/v2.(*App).RunContext(0xc00021eb40, {0x2f159d8?, 0xc000130020}, {0xc000126180, 0x6, 0x6})
[cdk-erigon-sequencer-001]  github.com/urfave/cli/v2@v2.25.7/app.go:332 +0x616
[cdk-erigon-sequencer-001] github.com/urfave/cli/v2.(*App).Run(...)
[cdk-erigon-sequencer-001]  github.com/urfave/cli/v2@v2.25.7/app.go:309
[cdk-erigon-sequencer-001] main.main()
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/cmd/cdk-erigon/main.go:39 +0x85

Firstly zkProver got killed by oom due to high memory -that's how I got to the issue-, then I reproduced by manually stopping the executor during tx processing-> Sequencer invalid batch, the system does NOT recover by restarting executor neither by restarting sequencer.

Case 2:
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:03.560] executor result                          match=true grpcUrl=zkevm-stateless-executor-001:50071 batch=31 counters="map[A:480 B:617 D:3 K:6 M:0 P:414 S:6193 SHA:0]" exec-root=0x5eb232c14b92ae20f5e48c6718cc06b6befef1254258b63ea2af76ba753ff2b0 our-root=0x5eb232c14b92ae20f5e48c6718cc06b6befef1254258b63ea2af76ba753ff2b0 exec-old-root=0x5c14ad62e29aade91c9a0d50c63ee1c79d6347edb01be2abcef0d6ab6cb8d46f our-old-root=0x5c14ad62e29aade91c9a0d50c63ee1c79d6347edb01be2abcef0d6ab6cb8d46f blocks-count=1
[cdk-erigon-sequencer-001] [WARN] [08-23|13:10:03.560] Counter undershoot                       counter=P erigon=403 legacy=414 batch=31
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:03.560] [Verifier] Writing batch to stream       batch=31
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.793] [5/14 Execution] Increment trie hashes started previousRootHeight=50 calculatingRootHeight=51
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.795] [5/14 Execution] Regeneration trie hashes finished. Commiting batch 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.795] [5/14 Execution] Increment ended 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.796] [5/14 Execution] Finish block 51 with 1 transactions... 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.796] [5/14 Execution] counters consumed       batch=32 counts="[SHA: 0][A: 1118][B: 1274][K: 11][M: 0][P: 403][S: 17691][D: 17]"
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.796] [5/14 Execution] Finish batch 32... 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.811] [5/14 Execution] Finished sequencing stage 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.813] [7/14 SequenceExecutorVerify] Starting sequencer verify stage 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.815] [7/14 SequenceExecutorVerify] Finished sequencer verify stage 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.815] [8/14 HashState] Started 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.816] [8/14 HashState] Finished 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.817] [9/14 CallTraces] Started 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.817] [9/14 CallTraces] Finished 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.817] [10/14 AccountHistoryIndex] Started 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.818] [10/14 AccountHistoryIndex] Finished 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.818] [11/14 StorageHistoryIndex] Started 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.819] [11/14 StorageHistoryIndex] Finished 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.819] [12/14 LogIndex] Started 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.819] [] Unwinding started                     from=51 to=50 storage=false codes=true
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.819] [] Unwinding started                     from=51 to=50 storage=false codes=false
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.820] [] Unwinding started                     from=51 to=50 storage=true codes=false
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.820] [] Unwind trie hashes started 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.820] []                                       last root=0x6685dc0a40317a70ab6580d901ab813568adfe90a24b6fc97b20011902dd45e3
[cdk-erigon-sequencer-001] [WARN] [08-23|13:10:06.820] quit channel is nil, creating a new one 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.820] [12/14 LogIndex] Finished 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.821] [14/14 Finish] Started 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.821] [14/14 Finish] Finished 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.821] Timings (slower than 50ms)               Execution=3.282s
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.821] RPC Daemon notified of new headers       from=50 to=51 hash=0x51b5a1a0d0f2d4cd99861c38b0556167b7d5c4f8aa19b55850c2b3cddd10c533 header sending=17.745µs log sending=390ns
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.822] [1/14 L1Syncer] Starting L1 sync stage 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.822] [1/14 L1Syncer] Saving L1 syncer progress latestCheckedBlock=424 newVerificationsCount=0 newSequencesCount=0
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.822] [] Trie root matches                     hash=0x5eb232c14b92ae20f5e48c6718cc06b6befef1254258b63ea2af76ba753ff2b0
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.822] [] Unwind ended 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.822] [1/14 L1Syncer] Finished L1 sync stage  
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.822] [2/14 L1SequencerSyncer] Starting L1 Sequencer sync stage 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.822] [2/14 L1SequencerSyncer] Finished L1 Sequencer sync stage 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.822] [3/14 L1InfoTree] Starting L1 Info Tree stage 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.823] [3/14 L1InfoTree] Info tree updates      count=0
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.823] [3/14 L1InfoTree] Finished L1 Info Tree stage 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.823] [4/14 L1BlockSync] Starting L1 block sync stage 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.823] [4/14 L1BlockSync] Skipping L1 block sync stage 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.823] [4/14 L1BlockSync] Finished L1 block sync stage 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.823] [5/14 Execution] Starting sequencing stage 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.824] [5/14 Execution] Starting batch 33... 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.824] [5/14 Execution] Starting block 52 (forkid 9)... 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.824] [5/14 Execution] Waiting for txs from the pool... 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:06.830] Sending request to grpc server           grpcUrl=zkevm-stateless-executor-001:50071 ourRoot=0x6685dc0a40317a70ab6580d901ab813568adfe90a24b6fc97b20011902dd45e3 oldRoot=0x5eb232c14b92ae20f5e48c6718cc06b6befef1254258b63ea2af76ba753ff2b0 batch=32 witness-size="50 kB" data-stream-size="556 B"
[cdk-erigon-sequencer-001] [EROR] [08-23|13:10:06.833] [Verifier] Error                         err="failed to process stateless batch: rpc error: code = Unavailable desc = connection error: desc = \"transport: Error while dialing: dial tcp: lookup zkevm-stateless-executor-001 on 127.0.0.11:53: no such host\""
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:10.084] [5/14 Execution] Increment trie hashes started previousRootHeight=51 calculatingRootHeight=52
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:10.086] [5/14 Execution] Regeneration trie hashes finished. Commiting batch 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:10.086] [5/14 Execution] Increment ended 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:10.087] [5/14 Execution] Finish block 52 with 1 transactions... 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:10.087] [5/14 Execution] counters consumed       batch=33 counts="[SHA: 0][A: 1118][B: 1274][K: 11][M: 0][P: 403][S: 17691][D: 17]"
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:10.087] [5/14 Execution] Finish batch 33... 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:10.089] [5/14 Execution] Finished sequencing stage 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:10.089] [7/14 SequenceExecutorVerify] Starting sequencer verify stage 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:10:15.164] [txpool] stat                            pending=1 baseFee=0 queued=0 alloc=55.8MB sys=124.5MB
[cdk-erigon-sequencer-001] [EROR] [08-23|13:11:10.090] [7/14 SequenceExecutorVerify] identified an invalid batch with number 32 

In this case, the system recovered after restarting executor and sequencer, and resumed processing.

Steps to reproduce the behaviour

Run the network with kurtosis While sending txs, stop executor for a while (1 minute seems enough) Check Sequencer logs The final behavior seems to be different depending on the exact moment you stop executor and/or the amount and size of txs being send and/or some random/unknown factors.

xavier-romero commented 2 months ago

Also found that behavior repeating same test. In this case again, sequencer won't recover after recover, instead it throws a panic (by restarting sequencer with executor already running)

[cdk-erigon-sequencer-001] [INFO] [08-23|13:27:30.308] Build info                               git_branch= git_tag= git_commit=
[cdk-erigon-sequencer-001] [INFO] [08-23|13:27:30.308] Poseidon hashing                         Accelerated=true
[cdk-erigon-sequencer-001] [INFO] [08-23|13:27:30.308] Starting Erigon on dynamic chain         chain=dynamic-kurtosis
[cdk-erigon-sequencer-001] [INFO] [08-23|13:27:30.309] Maximum peer count                       ETH=0 total=0
[cdk-erigon-sequencer-001] [INFO] [08-23|13:27:30.310] starting HTTP APIs                       APIs=eth,debug,net,trace,web3,erigon,zkevm,txpool
[cdk-erigon-sequencer-001] [INFO] [08-23|13:27:30.310] torrent verbosity                        level=WRN
[cdk-erigon-sequencer-001] [INFO] [08-23|13:27:32.412] Set global gas cap                       cap=50000000
[cdk-erigon-sequencer-001] [WARN] [08-23|13:27:32.415] NetworkID is not set for dynamic chain   chain=dynamic-kurtosis networkID=1
[cdk-erigon-sequencer-001] [INFO] [08-23|13:27:32.415] [Downloader] Runnning with               ipv6-enabled=true ipv4-enabled=true download.rate=16mb upload.rate=4mb
[cdk-erigon-sequencer-001] [INFO] [08-23|13:27:32.415] Opening Database                         label=chaindata path=/home/erigon/data/dynamic-kurtosis-sequencer/chaindata
[cdk-erigon-sequencer-001] [INFO] [08-23|13:27:32.420] Initialised chain configuration          config="{ChainID: 10101, Homestead: 0, DAO: 0, Tangerine Whistle: 0, Spurious Dragon: 0, Byzantium: 0, Constantinople: 0, Petersburg: 0, Istanbul: 0, Muir Glacier: 0, Berlin: 0, London: 18446744073709551615, Arrow Glacier: 9999999999999999999999999999999999999999999999999, Gray Glacier: 9999999999999999999999999999999999999999999999999, Terminal Total Difficulty: 58750000000000000000000, Merge Netsplit: <nil>, Shanghai: 18446744073709551615, Cancun: 18446744073709551615, Prague: 18446744073709551615, Engine: ethash}" genesis=0x75aedf14f686d79c7bb46a03afc30ee9f02a00108f83751e7a43ecdee98f6756
[cdk-erigon-sequencer-001] [INFO] [08-23|13:27:32.420] Effective                                prune_flags= snapshot_flags= history.v3=false
[cdk-erigon-sequencer-001] [INFO] [08-23|13:27:32.425] Initialising Ethereum protocol           network=1
[cdk-erigon-sequencer-001] [INFO] [08-23|13:27:32.425] Disk storage enabled for ethash DAGs     dir=/home/erigon/data/dynamic-kurtosis-sequencer/ethash-dags count=2
[cdk-erigon-sequencer-001] [INFO] [08-23|13:27:32.436] Starting private RPC server              on=localhost:9092
[cdk-erigon-sequencer-001] [INFO] [08-23|13:27:32.436] new subscription to logs established 
[cdk-erigon-sequencer-001] [INFO] [08-23|13:27:32.538] [txpool] Started 
[cdk-erigon-sequencer-001] panic: runtime error: index out of range [1] with length 0
[cdk-erigon-sequencer-001] 
[cdk-erigon-sequencer-001] goroutine 1 [running]:
[cdk-erigon-sequencer-001] github.com/ledgerwatch/erigon/zk/txpool.BestQueue.Swap(...)
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/zk/txpool/pool.go:2401
[cdk-erigon-sequencer-001] container/heap.down({0x2f1aac0, 0xc0019a37c0}, 0x0, 0x947)
[cdk-erigon-sequencer-001]  container/heap/heap.go:114 +0x4b
[cdk-erigon-sequencer-001] container/heap.Pop({0x2f1aac0, 0xc0019a37c0})
[cdk-erigon-sequencer-001]  container/heap/heap.go:62 +0x5b
[cdk-erigon-sequencer-001] github.com/ledgerwatch/erigon/zk/txpool.(*SubPool).PopBest(0xc0019a37a0)
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/zk/txpool/pool.go:2255 +0x28
[cdk-erigon-sequencer-001] github.com/ledgerwatch/erigon/zk/txpool.promote(0xc0013da210, 0xc0019a3740, 0xc0019a37a0, 0x3b9aca00, 0xc003249380, 0xc000ee79f0)
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/zk/txpool/pool.go:1337 +0x7de
[cdk-erigon-sequencer-001] github.com/ledgerwatch/erigon/zk/txpool.(*TxPool).addTxs(0xc000ebd440, 0xd7, {0x2f084d0, 0xc0001273f8}, 0x104d908?, {{0xc003e1a000, 0x100a, 0x1400}, {0xc003f00000, 0x140c8, ...}, ...}, ...)
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/zk/txpool/pool.go:1052 +0x9ab
[cdk-erigon-sequencer-001] github.com/ledgerwatch/erigon/zk/txpool.(*TxPool).fromDB(0xc000ebd440, {0x2f159a0, 0xc000ee62d0}, {0x2f331a0, 0xc0013dcfc0}, {0x2f331a0?, 0xc0013dc5a0?})
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/zk/txpool/pool.go:1702 +0x93a
[cdk-erigon-sequencer-001] github.com/ledgerwatch/erigon/zk/txpool.(*TxPool).StartIfNotStarted(0xc000ebd440, {0x2f159a0, 0xc000ee62d0}, {0x2f1db68?, 0xc0011e62a0?}, {0x2f331a0, 0xc0013dc5a0})
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/zk/txpool/pool_zk.go:270 +0x128
[cdk-erigon-sequencer-001] github.com/ledgerwatch/erigon/eth.New(0xc000352d20, 0x41605c0)
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/eth/backend.go:871 +0x645d
[cdk-erigon-sequencer-001] github.com/ledgerwatch/erigon/turbo/node.New(0xc0000ba060?, 0x27092e5?)
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/turbo/node/node.go:114 +0x74
[cdk-erigon-sequencer-001] main.runErigon(0xc001093a20?)
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/cmd/cdk-erigon/main.go:65 +0x295
[cdk-erigon-sequencer-001] github.com/urfave/cli/v2.(*Command).Run(0xc001093a20, 0xc0006916c0, {0xc0000522a0, 0x6, 0x6})
[cdk-erigon-sequencer-001]  github.com/urfave/cli/v2@v2.25.7/command.go:274 +0x9eb
[cdk-erigon-sequencer-001] github.com/urfave/cli/v2.(*App).RunContext(0xc00102a780, {0x2f159d8?, 0xc000056028}, {0xc0000522a0, 0x6, 0x6})
[cdk-erigon-sequencer-001]  github.com/urfave/cli/v2@v2.25.7/app.go:332 +0x616
[cdk-erigon-sequencer-001] github.com/urfave/cli/v2.(*App).Run(...)
[cdk-erigon-sequencer-001]  github.com/urfave/cli/v2@v2.25.7/app.go:309
[cdk-erigon-sequencer-001] main.main()
[cdk-erigon-sequencer-001]  github.com/ledgerwatch/erigon/cmd/cdk-erigon/main.go:39 +0x85
kstoykov commented 1 month ago

These issues are fixed in beta18.x