You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hey I saw that you have the Idle processing in the MQ pallet enabled, this was recently discovered to mark messages incorrectly as overweight.
(Feel free to close at any time, this issue is just meant as an advisory)
Issue
The bug was accidentially introduced by #3844 and fixed in #6205. It is awaiting backports for versions 1.10 up to stable2409.
Impact
The MQ pallet can - under specific circumstances - mark a message as permanently overweight and put it into an overweight queue instead of processing it. The message can still be executed manually, but it is not automatic (like it should). Someone wrote a bot for this: unofficial link.
I only saw this happen once recently, so impact should hopefully be limited:
Work Around
A. Disable the Idle processing with type IdleMaxServiceWeight = (). This means that incoming messages will only be process in on_initialize - potentially increasing the latency of incoming messages by one block.
B. Another way is to manually call message_queue::execute_overweight on all messages that got stuck. Eg with the bot linked above.
The text was updated successfully, but these errors were encountered:
@ggwpez I tried message_queue::execute_overweight using Chopsticks and got error messageQueue.InsufficientWeight, so it seems like those 2 enqueued overweight are not related to IdleMaxServiceWeight
Okay, i also just tried it - indeed it seems to be properly overweight and not due to the bug.
I see that you have the normal and idle service weight configured to the same value; AFAIK this mitigates the issue.
Going to close now.
Hey I saw that you have the Idle processing in the MQ pallet enabled, this was recently discovered to mark messages incorrectly as overweight.
(Feel free to close at any time, this issue is just meant as an advisory)
Issue
The bug was accidentially introduced by #3844 and fixed in #6205. It is awaiting backports for versions
1.10
up tostable2409
.Impact
The MQ pallet can - under specific circumstances - mark a message as permanently overweight and put it into an overweight queue instead of processing it. The message can still be executed manually, but it is not automatic (like it should). Someone wrote a bot for this: unofficial link.
I only saw this happen once recently, so impact should hopefully be limited:
Work Around
A. Disable the Idle processing with
type IdleMaxServiceWeight = ()
. This means that incoming messages will only be process inon_initialize
- potentially increasing the latency of incoming messages by one block.B. Another way is to manually call
message_queue::execute_overweight
on all messages that got stuck. Eg with the bot linked above.The text was updated successfully, but these errors were encountered: