When adding many batchAll TXs containing mint() and freeze() assets to AssetHub Rococo chain, there are times when TXs in rpc -> author -> pendingExtrinsics() just sit there and don't get collected to be put in the block.

This stops my script because it is synchronously adding transactions after the previous one is Finalized.

  • It is not a nonce issue, because nonce issues provide an error when it happens. .
  • It is not a block limit issue, because that also provides an error when it happens.

Could it be to do with how many TXs the RPCs allowed from one connection?

Could the RPC perhaps have a tag that only allows a certain amount per period of time?

The pending extrinsic eventually disappears, which is probably because the lifetime has expired.

Then i have to manualy resubmit it for it to be included.

What is the likely problem in this situation?

  • 1
    Nodes usually have a certain maximum value of transactions allowed in the transaction pool. Configured via --pool-limit and defaults to 8192. But this might not be the problem, I'm just speaking from the top of my head. Commented Jan 30 at 2:08
  • You might want to check the logs of the node. -ltxpool=trace should give you more information Commented Jan 30 at 2:10
  • thanks, seems like i should run my own RPC if i want to change the limit and check logs. Commented Jan 30 at 9:54
  • however i am not sure --pool-limit is the issue because i am feeding in 1 TX at a time. I am waiting until the TX is included in block then i am feeding another. Commented Jan 30 at 10:11
  • if i submit a transaction after finalization it works very well, just a little bit slower of course. Commented Jan 31 at 13:47


Your Answer

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