paritytech / zombienet

A cli tool to easily spawn ephemeral Polkadot/Substrate networks and perform tests against them.
https://paritytech.github.io/zombienet/
GNU General Public License v3.0
157 stars 92 forks source link

`hrmp_channels` instruction will cause errors #1798

Closed imstar15 closed 4 months ago

imstar15 commented 4 months ago

Issue Description

I launch rococo, shibuya, turing by zombienet. But hrmp_channels instruction will cause errors.

shibuya.toml

[settings]
provider = "native"
timeout = 1000

[relaychain]
default_command = "../polkadot-sdk/target/release/polkadot"
chain = "rococo-local"

    [[relaychain.nodes]]
    name = "alice"
    ws_port = 60613
    rpc_port = 8850

    [[relaychain.nodes]]
    name = "bob"
    ws_port = 60614
    rpc_port = 8851

[[parachains]]
id = 2114
cumulus_based = true
chain = "turing-dev"

    [parachains.collator]
    name = "turing-col-1"
    command = "./target/release/oak-collator"
    ws_port = 9946
    rpc_port = 8855

[[parachains]]
id = 2000
cumulus_based = true
chain = "shibuya-dev"

    [parachains.collator]
    name = "shibuya-col-1"
    command = "../Astar/target/release/astar-collator"
    args = ["--enable-evm-rpc"]    # EVM RPC for Metamsk: http://localhost:9948 and Shibuya Chain Id: 81
    ws_port = 9948
    rpc_port = 8867

[[hrmp_channels]]
sender = 2114
recipient = 2000
max_capacity = 8
max_message_size = 102400

[[hrmp_channels]]
sender = 2000
recipient = 2114
max_capacity = 8
max_message_size = 102400

Steps to reproduce the issue

  1. Compile polkadot, shibuya, turing Compile turing
    cargo build --release --features turing-node,dev-queue
  2. zombienet spawn shibuya.toml
  3. Watch shibuya log

Errors:


2024-05-14 22:38:06 [Parachain] panicked at 'assertion failed: `(left == right)`
  left: `0x0000000000000000000000000000000000000000000000000000000000000000`,
 right: `0x4029a4c7ae6ff1e4d75fe0a41eb0071908c975715fd3b82648a17f4454eb345b`', /Users/star/.cargo/git/checkouts/polkadot-sdk-cff69157b985ed76/c8d2251/cumulus/pallets/parachain-system/src/lib.rs:1100:9
2024-05-14 22:38:06 [Parachain] 1 storage transactions are left open by the runtime. Those will be rolled back.
2024-05-14 22:38:06 [Parachain] 1 storage transactions are left open by the runtime. Those will be rolled back.
2024-05-14 22:38:06 [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: 0x5b119f - <unknown>!rust_begin_unwind
    1: 0x9ba8 - <unknown>!core::panicking::panic_fmt::hf5c4cd929d4aaa9e
    2: 0x9ff5 - <unknown>!core::panicking::assert_failed_inner::h2aa5e8e7fe201c6e
    3: 0x2af87f - <unknown>!core::panicking::assert_failed::h1066327ba7ba8be1
    4: 0x466058 - <unknown>!cumulus_pallet_parachain_system::<impl cumulus_pallet_parachain_system::pallet::Pallet<T>>::process_inbound_downward_messages::h0a45336d5425a849
    5: 0x197dc0 - <unknown>!frame_support::storage::transactional::with_storage_layer::h1a2bde8a99ac2ddf
    6: 0x1347b5 - <unknown>!<cumulus_pallet_parachain_system::pallet::Call<T> as frame_support::traits::dispatch::UnfilteredDispatchable>::dispatch_bypass_filter::{{closure}}::hdc556a85627f4c7d
    7: 0x13b9b2 - <unknown>!environmental::local_key::LocalKey<T>::with::h35f41a40deb514f7
    8: 0xeffc9 - <unknown>!<shibuya_runtime::RuntimeCall as frame_support::traits::dispatch::UnfilteredDispatchable>::dispatch_bypass_filter::ha92cf22ae817bd0d
    9: 0xf50c5 - <unknown>!<shibuya_runtime::RuntimeCall as sp_runtime::traits::Dispatchable>::dispatch::h1b46c2bc44c9d48e
   10: 0x51187a - <unknown>!<fp_self_contained::checked_extrinsic::CheckedExtrinsic<AccountId,Call,Extra,SelfContainedSignedInfo> as sp_runtime::traits::Applyable>::apply::hbc8808dc5b8fdf86
   11: 0x1e7e82 - <unknown>!frame_executive::Executive<System,Block,Context,UnsignedValidator,AllPalletsWithSystem,COnRuntimeUpgrade>::apply_extrinsic::h08484a85d07bedbc
   12: 0x5a4de8 - <unknown>!BlockBuilder_apply_extrinsic. Dropping.
2024-05-14 22:38:06 [Parachain] panicked at 'set_validation_data inherent needs to be present in every block!', /Users/star/.cargo/git/checkouts/polkadot-sdk-cff69157b985ed76/c8d2251/cumulus/pallets/parachain-system/src/lib.rs:248:13

Describe the results you received

Shibuya will report errors and can't produce block

Describe the results you expected

Zombienet version

v1.3.102

Provider

Native

Provider version

## For binaries
polkadot v1.11.0 https://github.com/paritytech/polkadot-sdk/releases/tag/polkadot-v1.11.0
shibuya v5.36.0 https://github.com/AstarNetwork/Astar/releases/tag/v5.36.0
turing v2.1.4 https://github.com/AstarNetwork/Astar/releases/tag/v5.36.0

Upstream Latest Release

Yes

Additional environment details

Additional environment details

Additional information

No response

Screenshots

image
imstar15 commented 4 months ago

The error is throwed from here:

https://github.com/paritytech/polkadot-sdk/blob/c8d2251cafadc108ba2f1f8a3208dc547ff38901/cumulus/pallets/parachain-system/src/lib.rs#L1100

It's a asset instruction.

assert_eq!(dmq_head.head(), expected_dmq_mqc_head);

dmq_head.head(): 0x0000000000000000000000000000000000000000000000000000000000000000 expected_dmq_mqc_head: 0x4029a4c7ae6ff1e4d75fe0a41eb0071908c975715fd3b82648a17f4454eb345b

chrisli30 commented 4 months ago

@pepoviola, Hi Javier could you help shed some light on this issue? All of our demos in https://github.com/OAK-Foundation/xcm-demo require HRMP channels to work with Shiden and Moonriver, but we are blocked as the HRMP tag is no longer functional.

pepoviola commented 4 months ago

Hi @imstar15 / @chrisli30, this is an issue in polkadot (https://github.com/paritytech/polkadot-sdk/pull/1616) you can use the workaround provided in the pr. At some point we will include the workaround to resolve this from zombienet.

Thx!

chrisli30 commented 4 months ago

Hi @imstar15 / @chrisli30, this is an issue in polkadot (paritytech/polkadot-sdk#1616) you can use the workaround provided in the pr. At some point we will include the workaround to resolve this from zombienet.

Thx!

Awesome, thank you for the quick response. Yes, we can manage with the workaround at the moment. 👍

We’ll give it a try and resolve this issue if we succeed.

pepoviola commented 4 months ago

Hi @chrisli30, did you manage to make it works with the workaround? Thx!

chrisli30 commented 4 months ago

Javier, yes! Thanks for the instructions. We are unblocke and can close this issue for now. 👍

cc @imstar15