We recently attempted a runtime upgrade on our parachain testnet (wss://moonbeam-integration-parachain.polkadex.trade) and made some modifications to the validate_unsigned code, specifically eliminating the following section: https://github.com/Polkadex-Substrate/parachain/blob/zk-upgrade/pallets/thea-message-handler/src/lib.rs#L253-L287.

However, despite the changes, we encounter the error referenced in https://github.com/Polkadex-Substrate/parachain/blob/zk-upgrade/pallets/thea-message-handler/src/lib.rs#L265 when sending usigned transaction using subxt client post-upgrade. Interestingly, this error should no longer exist as its associated code has been removed.

It's worth noting that we have updated the spec version in runtime, confirming that the runtime update was executed successfully.

Could you suggest what might be preventing the successful implementation of our code upgrade?

Error:- enter image description here


  • When we tried to send an unsigned transaction using Polkadot.js - it worked. It looks like it's happening because of subxt.
  • Have you tried to run your parachain build with latest code on a local environment? Commented Jul 18, 2023 at 9:38
  • Could you update your github links with permanent links ? Your second link is now pointing to a line which has a function argument instead one of the errors. Thanks! Commented Jul 18, 2023 at 14:34
  • Also would be good to know in which Block# the runtime upgraded enacted, and in which block your unsigned transaction is included. Commented Jul 18, 2023 at 14:37
  • Hey @AlejandroMartínez, I updated the link. Also at block no 55234 [polkadot.js.org/apps/… upgrade got enacted. And we sent an unsigned transaction around 55240.
    – ZKT
    Commented Jul 19, 2023 at 5:39
  • I cannot find the custom Error with code 1 in your codebase, would be great if you could point to it. The rest of logs you are observing is the node banning that concrete tx from being sent again to avoid spam, to get rid of that you will need to restart the node that has banned it. Commented Jul 19, 2023 at 10:19

1 Answer 1


Would be good in the future if you could explain how you are performing runtime upgrades in subxt because there is at least two ways to do that.

However, I think you are running into https://github.com/paritytech/subxt/issues/1319 and it was a bug subxt where the metadata was updated on a "too early block". That is fixed now.

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.