Skip to content
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

fix(transaction-service): 🐛 Fix transactions stuck in Linea mempool #728

Merged
merged 1 commit into from
Oct 22, 2024

Conversation

TheDivic
Copy link
Collaborator

📖 Context

Type of change

  • Non-breaking change (backwards compatible)

Why are we doing this?

  • Every few transactions on Linea would get stuck forever in the mempool so we would have to call the /admin/cancel endpoint to cancel them.
  • If a relayer transaction get stuck the relayer basically goes out of service. If enough relayers go out of service, Linea goes down.

What did we do?

  • Linea released a custom RPC endpoint linea_estimateGas which is not fully EVM compatible. See: https://docs.linea.build/developers/reference/api/linea-estimategas
  • Added support for that RPC call when sending transactions.
  • Updated viem to latest version so I can use the viem/linea package.
  • 🚨 Didn't add that to validation and simulation, pushed a hotfix to unblock our clients. This is tech debt.

How Has This Been Tested?

  • Gasless transfer
  • Mint NFT
  • 🚨 I noticed that most of our transactions are getting frontran now, we're in communication with the Linea team to try and fix it.

@TheDivic TheDivic added the 🐛 Bug Something isn't working label Oct 21, 2024
@TheDivic TheDivic self-assigned this Oct 21, 2024
@TheDivic TheDivic requested a review from veljkovranic October 21, 2024 13:49
@TheDivic TheDivic merged commit 281c816 into master Oct 22, 2024
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🐛 Bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant