-
Notifications
You must be signed in to change notification settings - Fork 834
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Besu Chain is stuck if too many smartcontract deployment requests in TX pool #7589
Comments
Not sure if you have tuned some options, so in case I will suggest to try the following:
after this tuning you should not experience nonce gap issues anymore (actual result could depend on the fact that other sender and pending txs are present in the pool) and if you still see that txs are still not included due to "max selection timeout issue" or other issues, let me know, so we can investigate further. |
I cannot exactly answer the question but I have recently raised the similar issue. I am unable to deploy smart contracts on my private network using Metamask. Can you please help? |
@fab-10 hi Fabio, sorry for late due to I was on my holiday this week. |
I suppose you are running a *BFT network, so in that case, if the issue is that a tx takes too long to execute, then you can try to adjust this option https://besu.hyperledger.org/development/private-networks/reference/cli/options#poa-block-txs-selection-max-time to something more than 100, so block creation could take more than 2 seconds. If also that does not solve your problem, then it will be great if you can share how to reproduce the issue. |
Description
As an Besu Client, I set Besu blockperiod as 2 seconds,
I built a smartcontract, and use one single account to deploy this smartcontract 800 times. the deployment requests are come into 800 transactions.
then I submitted 800 transactions in transaction pool with nonce gap, for example, one account latest nonce is 5, and I set the 800 transaction's nonce get start with 10, then all the 800 transactions with nonce number is 10-810, and they will stay in transaction pool and wait the nonce gap is fixed.
s
so that after I fixed nonce from 5-9, then the whole TX pool seems be stuck, sometimes it will gave a "max selection timeout issue", and it can't generate the blocker anymore, when all the transactions was deleted after it's expired(13 hours), even the chain can generate the new block, when I submit several TX without nonce gap with same account address, it seems the TX was missed, I can't find it on chain or TX pool.
Acceptance Criteria
Steps to Reproduce (Bug)
Expected behavior: [What you expect to happen]
When the nonce gap was fixed, all the 800 transactions will be submitted on chain, and block can be generated in a right way.
Actual behavior: [What actually happens]
The chain is stucked, and no new block is generated.
Frequency: [What percentage of the time does it occur?]
100%
Logs (if a bug)
Please post relevant logs from Besu (and the consensus client, if running proof of stake) from before and after the issue.
Versions (Add all that apply)
besu --version
] Besu 23 ~ 24.7.0java -version
] JDK17 for Besu23, JDK21 for Besu 24cat /etc/*release
] Redhatuname -a
]vmware -v
]docker version
]Smart contract information (If you're reporting an issue arising from deploying or calling a smart contract, please supply related information)
solc --version
]Additional Information (Add any of the following or anything else that may be relevant)
The text was updated successfully, but these errors were encountered: