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

Failed transaction (eth-js rpc error) when speeding up a transaction #9317

Closed
leafcutterant opened this issue Aug 27, 2020 · 21 comments
Closed
Labels
area-gas needs-reproduction needs-triage Sev2-normal Normal severity; minor loss of service or inconvenience. stale issues and PRs marked as stale team-confirmations-planning (only for internal use within Confirmations team) type-bug

Comments

@leafcutterant
Copy link

leafcutterant commented Aug 27, 2020

Describe the bug
Speeding up a transaction (with new custom gas price value) results in a failed transaction message every time, instead of sending the updated transaction.

To Reproduce

  1. Send initial transaction
  2. Choose Speed up
  3. On the Advanced tab, enter a slightly higher custom gas price than the initial one
  4. Press Send
  5. The new transaction is not sent, this error is displayed as a notification:

Failed transaction
Transaction failed! Error: [ethjs-rpc] rpc error with payload {"id":{thirteenDecimalDigits},"jsonrpc":"2.0","params":["0x{hundredsOfHexDigits}"],"method":"eth_sendRawTransaction"} [object Object]

  1. The activity history incorrectly shows even the original transaction as failed
  2. If I press Retry, I get a similarnotification as above, but maybe with different id and params
  3. Once the initial transaction is confirmed, the activity history forgets the whole thing and marks the transaction as successful

Expected behavior
The updated transaction is sent and Metamask registers the change

Browser details:
Mozilla Firefox 68.12.0esr (64-bit)
MetaMask 8.0.9

@storming0x
Copy link

Same error in MM 8.0.8 Chrome Version 85.0.4183.83 (Official Build) (64-bit)

@gwenvador
Copy link

I also have the same issue with MM 8.0.8 and Brave Version 1.13.82. It is random as sometimes it works, sometimes not. I would say it fails 75% of the time and quite often with ledger wallet interaction.

This is terrible user experience as when the error occur we cannot interact with the transaction anymore it just says failed. I have to manually speed the transaction via myetherwallet which is pretty difficult and cumbersome.

@yarco
Copy link

yarco commented Sep 14, 2020

same thing

@fourthespada
Copy link

Facing the same issue on Chrome Version 85.0.4183.102 (Official Build) (64-bit).

Tried to speed up an transaction underestimated by metamask, and tried speed up with average, then retry with high afterwards.

@bobtista
Copy link

Same thing, just cost me a lot of money

@blueberry6401
Copy link

Will this be fixed any time soon? Even if I tried create a new transaction with the same nonce, it failed, sometimes it works.

@gwenvador
Copy link

Hopefully with more people reporting this issue this will get more visibility. This is in my opinion quite a big issue as once the transaction is failed when speeding up it is stuck without being able to do anything..
I can't find how to create a new transaction with the same nonce with metamask (only manually via myetherwallet).

@faustiandilemma
Copy link

Same thing just happened to me.

@gwenvador
Copy link

One thing that might fix temporary is to reset metamask (Settings -> Advanced -> Reset). This reset the transactions history not your seed.
I have also noticed that the issue happens again when I switch to a new hardware wallet (connecting to a new address). Multiple hardware wallet still not supported (pretty lame)..

@jacobc-eth jacobc-eth added type-bug Sev2-normal Normal severity; minor loss of service or inconvenience. L34-advancedGas labels Nov 9, 2020
@john-light
Copy link

I am also having trouble speeding up transactions, except I got a different error than the OP reported:

speedupfail

This was a normal ETH transfer, gas limit 21,000 and gas price 80gwei so the "underpriced" error message is confusing.

Let me know if this should be a separate issue.

@tmashuang
Copy link
Contributor

Related to #9053

@mehmet-demir
Copy link

mehmet-demir commented Dec 12, 2020

Same problem with Brave Version 1.18.70 Chromium: 87.0.4280.101 (Official Build) (64-bit).

Failed transaction

@Gudahtt
Copy link
Member

Gudahtt commented Jan 13, 2021

Thanks for the report! Is anyone still able to reproduce this on the latest version of MetaMask? I tried speeding up a few transactions and didn't encounter this.

@michalisFr
Copy link

michalisFr commented Feb 15, 2021

I've encountered the same error with the speed up button and when doing it manually, ie change the nonce to the tx I want to speed up. It seems though that if I enter a gas price above a certain level it goes through. For example, I had a tx at 124 gwei. Then I sped it up at 138. My attempts to speed it up further (manually) with a new tx failed when I entered gas prices in the range 140-150, but it went through when I entered 154 gwei.

Chrome version: 88.0.4324.150
Metamask version: 9.0.5

@fourthespada
Copy link

Yes, I haven't faced the exact issue since then either, and I conjecture that it's as the above poster suggested... there seems to be a minimum gas fee increase requirement of 10%. Not sure if this is an infura limitation or something else, haven't been able to find a source that explains it. Now there is a new error that comes back specifically states the increase is not enough - so it is a different error message than when the bug was originally submitted (infura API perhaps updated to return a clearer message?). I cannot recall if I tested this via the wallet or via uniswap.

@SaiyajiiN1
Copy link

i think time its come for switch wallet.. thanks metamask but because of this error i reset my acc 2times and lost all authorization for spend tokens the fees is too much now.. cya

@manavsharma136
Copy link

i am doing speed up transaction and it is showing error message of nonce and speed up doesnt happen any solution

@metasiva
Copy link

One thing that might fix temporary is to reset metamask (Settings -> Advanced -> Reset). This reset the transactions history not your seed.
I have also noticed that the issue happens again when I switch to a new hardware wallet (connecting to a new address). Multiple hardware wallet still not supported (pretty lame)..

It is not working for me. For me all transaction failed with "Error: [ethjs-query] while formatting outputs from RPC" Code - 32602.
Can't able to do any transactions.

@hilvmason hilvmason added the team-confirmations-secure-ux DEPRECATED: please use "team-confirmations" label instead label Apr 22, 2022
@hilvmason hilvmason added the team-confirmations-planning (only for internal use within Confirmations team) label Jun 5, 2023
@hilvmason hilvmason removed the team-confirmations-secure-ux DEPRECATED: please use "team-confirmations" label instead label Jun 5, 2023
@johnnyshankman
Copy link

johnnyshankman commented Jun 18, 2023

I get code -32000 and something about a replaced tx. I'm using a Ledger. It's as is it kills itself BECAUSE it's a replaced tx, which is the whole point. Resetting and sending an empty tx with the same nonce does not work. It just will not let me speed up or cancel anything at all. It's as is the RPC is giving an error code the MM does not expect in this scenario. Nonce 1006 is definitely still pending atm.
Screen Shot 2023-06-18 at 3 57 02 PM

@github-actions
Copy link
Contributor

This issue has been automatically marked as stale because it has not had recent activity in the last 90 days. It will be closed in 45 days if there is no further activity. The MetaMask team intends on reviewing this issue before close, and removing the stale label if it is still a bug. We welcome new comments on this issue. We do not intend on closing issues if they report bugs that are still reproducible. Thank you for your contributions.

@github-actions github-actions bot added the stale issues and PRs marked as stale label Sep 16, 2023
brad-decker added a commit that referenced this issue Sep 26, 2023
## **Description**
Our fork of ethjs-query has been namespaced to the `@metamask/`
namespace, and updated with mostly development only fixes. There is one
exception which is the reason for this pull request which is the removal
of a try/catch that was catching too broadly and wrapping legitimate
errors in a new Error object that claimed the issue was with the
formatting of the output. In most cases this is incorrect and results in
a wide swath of errors being lumped together inside of sentry. This
change will result in the real errors being surfaced, after which we can
decide where to prioritize efforts to resolve RPC issues.

This PR progresses, and is expected to change the stack trace for the
following issues:
#9317 
#10519 
#10619
#11488 
#11974 
#13395 
#14298 
#14365 
#15250 
#17073 
#17803 
#19697 
#20699 

We are closing these issues opened automatically by sentry-io which are
not fully resolved but should result in better errors and stack traces:

fixes #10552 
fixes #14660 
fixes #14676 
fixes #14730 
fixes #14801
fixes #15065 

## **Manual testing steps**
1. Attempt to reproduce any of the bugs listed, 17073 was the easiest to
reproduce for me. This involves getting test currency from the wemix
faucet as listed in the issue and initiating a transaction between two
accounts you own.
2. On develop you'll see an 'error formatting outputs' error text
similar to what is reported in the issue.
3. On this branch you'll get the original error, without the wrapped
'formatting' error. including a different stack trace.

## **Pre-merge author checklist**

- [x] I’ve followed [MetaMask Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md).
- [x] I've clearly explained:
  - [x] What problem this PR is solving.
  - [x] How this problem was solved.
  - [x] How reviewers can test my changes.
- [x] I’ve indicated what issue this PR is linked to: Fixes #???
- [x] I’ve included tests if applicable.
- [x] I’ve documented any added code.
- [x] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)).
- [x] I’ve properly set the pull request status:
  - [ ] In case it's not yet "ready for review", I've set it to "draft".
- [x] In case it's "ready for review", I've changed it from "draft" to
"non-draft".

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.

---------

Co-authored-by: MetaMask Bot <[email protected]>
Copy link
Contributor

This issue was closed because there has been no follow up activity in the last 45 days. If you feel this was closed in error, please reopen and provide evidence on the latest release of the extension. Thank you for your contributions.

@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Oct 31, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-gas needs-reproduction needs-triage Sev2-normal Normal severity; minor loss of service or inconvenience. stale issues and PRs marked as stale team-confirmations-planning (only for internal use within Confirmations team) type-bug
Projects
None yet
Development

No branches or pull requests