2

upward message event

What is the reason of OverweightEnqueued event?

There is the place of code where event OverweightEnqueued produced...

enter image description here

7
  • 1
    Could you share your call and parameters? Sep 26, 2022 at 16:36
  • Amplitude runtime: polkadot.js.org/apps/… hex-encoded call 0x0c00290001010002140004000000000b00a0724e180913000000000b00a0724e18090006000b007083d05d06381700e8030000e803000000900100140d0100040001003121
    – rust.dev
    Sep 26, 2022 at 16:48
  • 1
    Try reduce this requireWeightAtMost: 7,000,000,000,000. Sep 26, 2022 at 16:52
  • what does parameter means? is there some example for this parameter for opening hrmp?
    – rust.dev
    Sep 26, 2022 at 17:32
  • Try reduce to 500_000_000_000 or 5_000_000_000 (. I think it is safety measure in current XCM configs to allow bad configuration taking too much money. Sep 26, 2022 at 19:39

1 Answer 1

4

Well, this is because requireWeightAtMost you specified is greater than umpMaxIndividualWeight, you should use the values from my answer in your other question(5,000,000,000), hrmp.hrmpInitOpenChannel does not need so much weight. And I'll explain to you why.

First, you need to know that resources available to chains are limited, and weights are the mechanism used to manage the time it takes to validate a block.The amount of weight a block may contain is limited. Therefore, relaychain limits the max used weight of individual ump's transact, to ensure that other transactions can be successfully executed. You can find the limit in configuration. Obviously, your 7,000,000,000,000 is greater than 20,000,000,000, then put into the overweight queue and may be dispatched later by service_overweight(still may error due to WeightOverLimit). enter image description here enter image description here Then,

what does parameter means?

It means the most weight you are willing to pay for the transact call(here is hrmp.hrmpInitOpenChannel).If the weight required by this transact call(about 786524000) exceeds the requireWeightAtMost you specified, it will fail with MaxWeightInvalid. If not and lower than umpMaxIndividualWeight, it'll be executed(make sure other values are correct) and the surplus weight will be refunded by the RefundSurplus instruction.

7

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.