paritytech / polkadot

Polkadot Node Implementation
GNU General Public License v3.0
7.12k stars 1.58k forks source link

exception when run polkadot. #3714

Closed fntz closed 3 years ago

fntz commented 3 years ago

Hello everyone, I want to run polkadot with chain: rococo, but I get an exception:

Thread 'tokio-runtime-worker' panicked at 'Digest item must match that calculated.', /usr/local/cargo/git/checkouts/substrate-7e08433d4c370a21/91061a7/frame/executive/src/lib.rs:467

Full exception is:

Thread 'tokio-runtime-worker' panicked at 'Digest item must match that calculated.', /usr/local/cargo/git/checkouts/substrate-7e08433d4c370a21/91061a7/frame/executive/src/lib.rs:467

This is a bug. Please report it at:

    https://github.com/paritytech/polkadot/issues/new

2021-08-24 22:31:42 Succesfully imported finalized header with hash 0xb35c5d84785a4d69993abc89c9f9d2ad40ce603fe207ca4812323cc92cfc980d!    
^CDigestItem: given=DigestItem::Consensus([66, 69, 69, 70], [3, 79, 165, 125, 94, 185, 203, 152, 15, 157, 116, 223, 133, 146, 53, 235, 26, 113, 168, 43, 49, 48, 184, 159, 220, 103, 42, 189, 45, 154, 205, 49, 62]), expected=DigestItem::Consensus([66, 69, 69, 70], [3, 146, 2, 164, 191, 17, 161, 230, 58, 128, 33, 193, 23, 148, 163, 14, 120, 5, 132, 233, 138, 77, 29, 37, 69, 161, 116, 97, 147, 155, 159, 221, 75])

====================

Version: 0.9.9-1-e3901b89c-x86_64-linux-gnu

   0: sp_panic_handler::set::{{closure}}
   1: std::panicking::rust_panic_with_hook
             at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/std/src/panicking.rs:595:17
   2: std::panicking::begin_panic::{{closure}}
   3: std::sys_common::backtrace::__rust_end_short_backtrace
   4: std::panicking::begin_panic
   5: frame_executive::Executive<System,Block,Context,UnsignedValidator,AllPallets,COnRuntimeUpgrade>::final_checks
   6: tracing::span::Span::in_scope
   7: frame_executive::Executive<System,Block,Context,UnsignedValidator,AllPallets,COnRuntimeUpgrade>::execute_block
   8: <rococo_runtime::Runtime as sp_api::runtime_decl_for_Core::Core<sp_runtime::generic::block::Block<sp_runtime::generic::header::Header<u32,sp_runtime::traits::BlakeTwo256>,sp_runtime::generic::unchecked_extrinsic::UncheckedExtrinsic<sp_runtime::multiaddress::MultiAddress<<<sp_runtime::MultiSignature as sp_runtime::traits::Verify>::Signer as sp_runtime::traits::IdentifyAccount>::AccountId,()>,rococo_runtime::Call,sp_runtime::MultiSignature,(frame_system::extensions::check_spec_version::CheckSpecVersion<rococo_runtime::Runtime>,frame_system::extensions::check_tx_version::CheckTxVersion<rococo_runtime::Runtime>,frame_system::extensions::check_genesis::CheckGenesis<rococo_runtime::Runtime>,frame_system::extensions::check_mortality::CheckMortality<rococo_runtime::Runtime>,frame_system::extensions::check_nonce::CheckNonce<rococo_runtime::Runtime>,frame_system::extensions::check_weight::CheckWeight<rococo_runtime::Runtime>,pallet_transaction_payment::ChargeTransactionPayment<rococo_runtime::Runtime>)>>>>::execute_block
   9: sp_api::runtime_decl_for_Core::execute_block_native_call_generator::{{closure}}
  10: std::thread::local::LocalKey<T>::with
  11: sc_executor::native_executor::WasmExecutor::with_instance::{{closure}}
  12: sc_executor::wasm_runtime::RuntimeCache::with_instance
  13: <sc_executor::native_executor::NativeExecutor<D> as sp_core::traits::CodeExecutor>::call
  14: sp_state_machine::execution::StateMachine<B,H,N,Exec>::execute_aux
  15: sp_state_machine::execution::StateMachine<B,H,N,Exec>::execute_using_consensus_failure_handler
  16: sp_api::runtime_decl_for_Core::execute_block_call_api_at
  17: <rococo_runtime::RuntimeApiImpl<__SR_API_BLOCK__,RuntimeApiImplCall> as sp_api::Core<__SR_API_BLOCK__>>::Core_execute_block_runtime_api_impl
  18: sp_api::Core::execute_block_with_context
  19: sc_service::client::client::Client<B,E,Block,RA>::prepare_block_storage_changes
  20: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
  21: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
  22: <sc_consensus_babe::BabeBlockImport<Block,Client,Inner> as sc_consensus::block_import::BlockImport<Block>>::import_block::{{closure}}
  23: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
  24: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
  25: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
  26: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
  27: <futures_util::future::future::map::Map<Fut,F> as core::future::future::Future>::poll
  28: <futures_util::future::select::Select<A,B> as core::future::future::Future>::poll
  29: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
  30: <tracing_futures::Instrumented<T> as core::future::future::Future>::poll
  31: futures_executor::local_pool::block_on
  32: tokio::runtime::task::core::Core<T,S>::poll
  33: <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
  34: tokio::runtime::task::raw::poll
  35: tokio::runtime::blocking::pool::Inner::run
  36: tokio::runtime::context::enter
  37: std::sys_common::backtrace::__rust_begin_short_backtrace
  38: core::ops::function::FnOnce::call_once{{vtable.shim}}
  39: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
             at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/alloc/src/boxed.rs:1546:9
      <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
             at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/alloc/src/boxed.rs:1546:9
      std::sys::unix::thread::Thread::new::thread_start
             at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/std/src/sys/unix/thread.rs:71:17
  40: start_thread
  41: __clone

Thread 'tokio-runtime-worker' panicked at 'Dige

I run polkadot as:

./polkadot --base-path /mnt/volume_fra1_02/rococo --pruning archive --name sync-rococo --rpc-external --rpc-cors all --ws-external --no-telemetry --no-prometheus --in-peers 100 --max-parallel-downloads 25 --out-peers 100 --chain rococo
bkchr commented 3 years ago

Try running with --execution wasm

fntz commented 3 years ago

@bkchr yep, it works. But why the reason ? (just for clarification and understanding)

bkchr commented 3 years ago

We don't take care that much of versioning for Rococo, because it is just a test net that we can restart at any time.

Basically this boils down to a mismatch between the native and the wasm runtime.