I have a Metamask account A which has a days-old pending transaction which will not succeed:
What happened, more or less:
- A has balance of 11 ETH
- Tx1: A tries to send 10 ETH to B (pending)
- Tx2: A tries to send 10 ETH to C (pending)
- Tx1 succeeds, A has balance of 1 ETH
- Tx2 will not succeed. It's still pending.
I now want to send 4 ETH to account A, then send 5 ETH from A to D. It seems like this should be possible.
I want Tx2 to fail or be ignored. There is a cancellation button but it comes with a fee. Also I do not want to send ANY eth to C.
How can I add 4 ETH to A, then send 5 ETH A->D without sending any ETH A->C and without paying a fee to cancel it?
It seems like it should be theoretically possible to publish a new transaction Tx3 which has the same nonce as Tx2 and since Tx3 can complete whereas Tx2 can't, Tx2 will become irrelevant since it's nonce will now be too small. Can I, for example, construct Tx3 in geth CLI and have metamask sign it? Or is there another way to send a new transaction directly from Metamask with the same nonce as the last pending transaction? Or is there another way out of this?