Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Omni-node: fix manual seal + asset hub polkadot scenario #5932

Open
serban300 opened this issue Oct 4, 2024 · 0 comments
Open

Omni-node: fix manual seal + asset hub polkadot scenario #5932

serban300 opened this issue Oct 4, 2024 · 0 comments
Labels
T0-node This PR/Issue is related to the topic “node”.

Comments

@serban300
Copy link
Contributor

When starting an asset hub polkadot node with manual seal:

polkadot-parachain --chain asset-hub-polkadot --dev-block-time 3000 --tmp

We get errors that go like:

2024-10-04 20:40:11 [Parachain] ❗️ Inherent extrinsic returned unexpected error: Error at calling runtime api: Execution failed: Execution aborted due to trap: wasm trap: wasm `unreachable` instruction executed
WASM backtrace:
error while executing at wasm backtrace:
    0: 0x1be1 - <unknown>!rust_begin_unwind
    1: 0x199e - <unknown>!core::panicking::panic_fmt::h3ab5417155b7ba3b
    2: 0x16c3 - <unknown>!core::result::unwrap_failed::h9bf99bca88ba05dc
    3: 0x3b9e4 - <unknown>!<cumulus_pallet_parachain_system::pallet::Call<T> as frame_support::traits::dispatch::UnfilteredDispatchable>::dispatch_bypass_filter::hb411780f0f813d4a
    4: 0x9a150 - <unknown>!<shell_runtime::Call as sp_runtime::traits::Dispatchable>::dispatch::hfa16958ca768b7fa
    5: 0x60b70 - <unknown>!frame_executive::Executive<System,Block,Context,UnsignedValidator,AllPallets,COnRuntimeUpgrade>::apply_extrinsic::h665bdef660f803fa
    6: 0x5efb3 - <unknown>!BlockBuilder_apply_extrinsic. Dropping.    
2024-10-04 20:40:11 [Parachain] panicked at 'set_validation_data inherent needs to be present in every block!', /build/pallets/parachain-system/src/lib.rs:135:13  

I think the issue is that the version of the code that is in the chainspec is outdated and probably the Parachain data inherent is incompatible with what we mock. When you actually run a parachain node it doesn't matter if the code in the spec is outdated, because it connects to the peers and gets the on-chain version. But when you run with manual seal, it tries to run the version that's in the spec.

So I think that the solution is to update the asset-hub-polkadot chainspec: https://github.com/paritytech/polkadot-sdk/blob/master/cumulus/parachains/chain-specs/asset-hub-polkadot.json using chain-spec-builder update-code.

@serban300 serban300 added the T0-node This PR/Issue is related to the topic “node”. label Oct 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
T0-node This PR/Issue is related to the topic “node”.
Projects
Status: Milestone 2
Development

No branches or pull requests

1 participant