Skip to content

[encointer] Barrier error for unpaid superuser XCM authorizeUpgrade from relay #244

@brenzi

Description

@brenzi

In order to test the upcoming 1.2 release for Encointer, we upgraded Encointer on rococo to commit 35048df which worked well. Then, to test new storage migrations, we wanted to test a newer commit 503e481 but executing XCM failed there.

As we almost copy-pasted the Barrier setting from asset hub, this could be relevant for other system chains too.

pub type Barrier = TrailingSetTopicAsId<
DenyThenTry<
DenyReserveTransferToRelayChain,
(
TakeWeightCredit,
// Expected responses are OK.
AllowKnownQueryResponses<PolkadotXcm>,
// Allow XCMs with some computed origins to pass through.
WithComputedOrigin<
(
// If the message is one that immediately attempts to pay for execution, then
// allow it.
AllowTopLevelPaidExecutionFrom<Everything>,
// Parent, its pluralities (i.e. governance bodies), parent's treasury and
// sibling bridge hub get free execution.
AllowExplicitUnpaidExecutionFrom<(ParentOrParentsPlurality,)>,
// Subscriptions for version tracking are OK.
AllowSubscriptionsFrom<ParentRelayOrSiblingParachains>,
),
UniversalLocation,
ConstU32<8>,
>,
),
>,
>;

We tried sending XCMv3 and XCMv4. Here's the send authorizeUpgrade call for XCM V4

Apply that with chopsticks

npx @acala-network/chopsticks@latest xcm -r=configs/rococo.yml -p=configs/encointer-rococo.yml

Yields messageQueue.ProcessingFailed: Unsupported

xcm::weight                  TRACE: FixedWeightBounds message: Xcm([Transact { origin_kind: Superuser, require_weight_at_most: Weight { ref_time: 4000000, proof_size: 100 }, call: "0x01025254b692414f6cd14dc96353eb1323beef8538373eccc268c390357e22b04b7d00" }, SetTopic([6, 124, 134, 201, 16, 109, 26, 229, 183, 186, 118, 102, 38, 5, 192, 211, 203, 208, 105, 70, 83, 156, 31, 107, 164, 28, 189, 2, 22, 126, 70, 33])])
xcm::execute                 TRACE: origin: Location { parents: 1, interior: Here }, message: Xcm([Transact { origin_kind: Superuser, require_weight_at_most: Weight { ref_time: 4000000, proof_size: 100 }, call: "0x01025254b692414f6cd14dc96353eb1323beef8538373eccc268c390357e22b04b7d00" }, SetTopic([6, 124, 134, 201, 16, 109, 26, 229, 183, 186, 118, 102, 38, 5, 192, 211, 203, 208, 105, 70, 83, 156, 31, 107, 164, 28, 189, 2, 22, 126, 70, 33])]), weight_credit: Weight { ref_time: 0, proof_size: 0 }
xcm::barriers                TRACE: TrailingSetTopicAsId origin: Location { parents: 1, interior: Here }, instructions: [Transact { origin_kind: Superuser, require_weight_at_most: Weight { ref_time: 4000000, proof_size: 100 }, call: "0x01025254b692414f6cd14dc96353eb1323beef8538373eccc268c390357e22b04b7d00" }, SetTopic([6, 124, 134, 201, 16, 109, 26, 229, 183, 186, 118, 102, 38, 5, 192, 211, 203, 208, 105, 70, 83, 156, 31, 107, 164, 28, 189, 2, 22, 126, 70, 33])], max_weight: Weight { ref_time: 2004000000, proof_size: 100 }, properties: Properties { weight_credit: Weight { ref_time: 0, proof_size: 0 }, message_id: None }
xcm::barriers                TRACE: TakeWeightCredit origin: Location { parents: 1, interior: Here }, instructions: [Transact { origin_kind: Superuser, require_weight_at_most: Weight { ref_time: 4000000, proof_size: 100 }, call: "0x01025254b692414f6cd14dc96353eb1323beef8538373eccc268c390357e22b04b7d00" }], max_weight: Weight { ref_time: 2004000000, proof_size: 100 }, properties: Properties { weight_credit: Weight { ref_time: 0, proof_size: 0 }, message_id: Some([6, 124, 134, 201, 16, 109, 26, 229, 183, 186, 118, 102, 38, 5, 192, 211, 203, 208, 105, 70, 83, 156, 31, 107, 164, 28, 189, 2, 22, 126, 70, 33]) }
xcm::barriers                TRACE: AllowKnownQueryResponses origin: Location { parents: 1, interior: Here }, instructions: [Transact { origin_kind: Superuser, require_weight_at_most: Weight { ref_time: 4000000, proof_size: 100 }, call: "0x01025254b692414f6cd14dc96353eb1323beef8538373eccc268c390357e22b04b7d00" }], max_weight: Weight { ref_time: 2004000000, proof_size: 100 }, properties: Properties { weight_credit: Weight { ref_time: 0, proof_size: 0 }, message_id: Some([6, 124, 134, 201, 16, 109, 26, 229, 183, 186, 118, 102, 38, 5, 192, 211, 203, 208, 105, 70, 83, 156, 31, 107, 164, 28, 189, 2, 22, 126, 70, 33]) }
xcm::barriers                TRACE: WithComputedOrigin origin: Location { parents: 1, interior: Here }, instructions: [Transact { origin_kind: Superuser, require_weight_at_most: Weight { ref_time: 4000000, proof_size: 100 }, call: "0x01025254b692414f6cd14dc96353eb1323beef8538373eccc268c390357e22b04b7d00" }], max_weight: Weight { ref_time: 2004000000, proof_size: 100 }, properties: Properties { weight_credit: Weight { ref_time: 0, proof_size: 0 }, message_id: Some([6, 124, 134, 201, 16, 109, 26, 229, 183, 186, 118, 102, 38, 5, 192, 211, 203, 208, 105, 70, 83, 156, 31, 107, 164, 28, 189, 2, 22, 126, 70, 33]) }
xcm::barriers                TRACE: AllowTopLevelPaidExecutionFrom origin: Location { parents: 1, interior: Here }, instructions: [Transact { origin_kind: Superuser, require_weight_at_most: Weight { ref_time: 4000000, proof_size: 100 }, call: "0x01025254b692414f6cd14dc96353eb1323beef8538373eccc268c390357e22b04b7d00" }], max_weight: Weight { ref_time: 2004000000, proof_size: 100 }, properties: Properties { weight_credit: Weight { ref_time: 0, proof_size: 0 }, message_id: Some([6, 124, 134, 201, 16, 109, 26, 229, 183, 186, 118, 102, 38, 5, 192, 211, 203, 208, 105, 70, 83, 156, 31, 107, 164, 28, 189, 2, 22, 126, 70, 33]) }
xcm::barriers                TRACE: AllowExplicitUnpaidExecutionFrom origin: Location { parents: 1, interior: Here }, instructions: [Transact { origin_kind: Superuser, require_weight_at_most: Weight { ref_time: 4000000, proof_size: 100 }, call: "0x01025254b692414f6cd14dc96353eb1323beef8538373eccc268c390357e22b04b7d00" }], max_weight: Weight { ref_time: 2004000000, proof_size: 100 }, properties: Properties { weight_credit: Weight { ref_time: 0, proof_size: 0 }, message_id: Some([6, 124, 134, 201, 16, 109, 26, 229, 183, 186, 118, 102, 38, 5, 192, 211, 203, 208, 105, 70, 83, 156, 31, 107, 164, 28, 189, 2, 22, 126, 70, 33]) }
xcm::barriers                TRACE: AllowSubscriptionsFrom origin: Location { parents: 1, interior: Here }, instructions: [Transact { origin_kind: Superuser, require_weight_at_most: Weight { ref_time: 4000000, proof_size: 100 }, call: "0x01025254b692414f6cd14dc96353eb1323beef8538373eccc268c390357e22b04b7d00" }], max_weight: Weight { ref_time: 2004000000, proof_size: 100 }, properties: Properties { weight_credit: Weight { ref_time: 0, proof_size: 0 }, message_id: Some([6, 124, 134, 201, 16, 109, 26, 229, 183, 186, 118, 102, 38, 5, 192, 211, 203, 208, 105, 70, 83, 156, 31, 107, 164, 28, 189, 2, 22, 126, 70, 33]) }
xcm::should_execute          TRACE: did not pass barrier: origin: Location { parents: 1, interior: Here }, instructions: [Transact { origin_kind: Superuser, require_weight_at_most: Weight { ref_time: 4000000, proof_size: 100 }, call: "0x01025254b692414f6cd14dc96353eb1323beef8538373eccc268c390357e22b04b7d00" }], max_weight: Weight { ref_time: 2004000000, proof_size: 100 }, properties: Properties { weight_credit: Weight { ref_time: 0, proof_size: 0 }, message_id: Some([6, 124, 134, 201, 16, 109, 26, 229, 183, 186, 118, 102, 38, 5, 192, 211, 203, 208, 105, 70, 83, 156, 31, 107, 164, 28, 189, 2, 22, 126, 70, 33]) }
xcm::should_execute          TRACE: did not pass barrier: origin: Location { parents: 1, interior: Here }, instructions: [Transact { origin_kind: Superuser, require_weight_at_most: Weight { ref_time: 4000000, proof_size: 100 }, call: "0x01025254b692414f6cd14dc96353eb1323beef8538373eccc268c390357e22b04b7d00" }], max_weight: Weight { ref_time: 2004000000, proof_size: 100 }, properties: Properties { weight_credit: Weight { ref_time: 0, proof_size: 0 }, message_id: Some([6, 124, 134, 201, 16, 109, 26, 229, 183, 186, 118, 102, 38, 5, 192, 211, 203, 208, 105, 70, 83, 156, 31, 107, 164, 28, 189, 2, 22, 126, 70, 33]) }
xcm::execute                 TRACE: Barrier blocked execution! Error: <wasm:stripped>. (origin: Location { parents: 1, interior: Here }, message: Xcm([Transact { origin_kind: Superuser, require_weight_at_most: Weight { ref_time: 4000000, proof_size: 100 }, call: "0x01025254b692414f6cd14dc96353eb1323beef8538373eccc268c390357e22b04b7d00" }, SetTopic([6, 124, 134, 201, 16, 109, 26, 229, 183, 186, 118, 102, 38, 5, 192, 211, 203, 208, 105, 70, 83, 156, 31, 107, 164, 28, 189, 2, 22, 126, 70, 33])]), properties: Properties { weight_credit: Weight { ref_time: 0, proof_size: 0 }, message_id: Some([6, 124, 134, 201, 16, 109, 26, 229, 183, 186, 118, 102, 38, 5, 192, 211, 203, 208, 105, 70, 83, 156, 31, 107, 164, 28, 189, 2, 22, 126, 70, 33]) })

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions