Skip to content

Does it stuck if send a nonce gaped set-code-tx that has the same auth&from? #31690

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

Open
rekyyang opened this issue Apr 22, 2025 · 3 comments
Open

Comments

@rekyyang
Copy link
Contributor

rekyyang commented Apr 22, 2025

Image

if a gap-nonce-tx with same from&auth arrived first time, checkDelegationLimit would return at line-618, because this tx has gaped nonce, it couldn't be executed.

And if I want to replace it, checkDelegationLimit would return ErrOutOfOrderTxFromDelegated because it has no pending

And if I want to fix the gap, because the from & the auth has the same address, checkDelegationLimit would return ErrInflightTxLimitReached?

@rekyyang rekyyang changed the title Does deadlock exist if send a nonce gaped set-code-tx that has the same auth&from? Does it stuck if send a nonce gaped set-code-tx that has the same auth&from? Apr 22, 2025
@rjl493456442
Copy link
Member

Sorry I don't quite understand your question.

If the sender has delegation or pending authorization, the nonce-gapped tx will be rejected in the first place. Why do you want to replace it?

@rekyyang
Copy link
Contributor Author

sorry, I misunderstand the code... I'll close this ticket

@rekyyang rekyyang reopened this Apr 23, 2025
@rekyyang
Copy link
Contributor Author

rekyyang commented Apr 23, 2025

sorry, I test this case and there are some questions I want to ask 🙏

My test case is (disable local tx):

  1. prepare a account A without auth, nonce is 0
  2. send a tx from A, and auth a contract to A, tx nonce is 3, auth nonce is 4 (this tx will be queued)
  3. I can only send nonce 0 1 2 tx to fill the gap ONE BY ONE, but I cannot replace the first nonce 3 gapped auth tx directly
    Is it expected? If I send a gaped auth tx with a large gap, I have to wait the tx expire or fill the gap one by one(by the way, I mean I cannot send a bunch of txs to fill the gap one time)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants