I am confused about the behavior of the
check-block command. I was expecting it to re-execute the block, but it seems like this is not the case.
For example, the following command:
➜ ~ RUST_LOG=runtime=trace,executor=trace,info ./polkadot check-block --database paritydb --base-path ... --wasm-runtime-overrides ./wasm --chain kusama 0x7a0fcaf6fde9be14aeaf57b84a95f4286ba8d9435bd9c5426a1fbfd0954e8bd6 2022-12-12 16:58:15.286 INFO main wasm_overrides: Found wasm override. version=kusama-9340 (parity-kusama-0.tx17.au2) file=./wasm/kusama_runtime.wasm 2022-12-12 16:58:17.993 TRACE main executor: Executing function function=BabeApi_configuration 2022-12-12 16:58:20.618 TRACE main executor: Request for native execution failed native=kusama-9300 (parity-kusama-0.tx14.au2) chain=kusama-9340 (parity-kusama-0.tx17.au2) 2022-12-12 16:58:20.922 ERROR tokio-runtime-worker sc_service::task_manager: Essential task `txpool-background` failed. Shutting down service. 2022-12-12 16:58:20.922 ERROR tokio-runtime-worker sc_service::task_manager: Essential task `transaction-pool-task-0` failed. Shutting down service. 2022-12-12 16:58:20.922 ERROR tokio-runtime-worker sc_service::task_manager: Essential task `transaction-pool-task-1` failed. Shutting down service. Completed in 207 ms. 2022-12-12 16:58:21.129 INFO main sc_service::chain_ops::import_blocks: 🎉 Imported 1 blocks. Best: #15719798
executor logs show that
Core_execute_block runtime API was not called.
My goal is to re-execute the previous block(s) with a
--wasm-override that does NOT have the runtime logs disabled, so I can see all the runtime logs.
So, the real question is, what is
check-block even doing, and if it is not the above requirement, what alternative exist?
try-runtime-cli has a command that can also execute past blocks, but it is a bit harder to work with.