Mist Ethereum Wallet – Transactions hung at 0 of 12 confirmations
Quick summary: if you are using the Mist Ethereum Wallet (version 0.9.2, but appears to occur still in 0.9.3 which is the latest as of this post) and you send ether (ETH, the cryptocurrency of the Ethereum blockchain) without enough gas, transactions make get stuck. For those interested, sending an amount of ether (or doing pretty much anything on the Ethereum blockchain) requires fees, similar to any other processing fees…except these have cool names like “gas.” There is a “gas price” (called GWEI) and a “gas limit” (commonly called “gas”). GWEI is just a measurement of how much ether (ETH) – G is giga (like in gigawatt) and WEI is a very small fraction of one ETH (one ether). It takes 1 to the 18th power (1 quintillion) WEI to make an ETH. So a GigaWEI (GWEI) is 1 to the 9th power WEI, so it is still a small fraction of an ETH. Longer and better explanation here.
There are many rationales for the transaction fees (paying miners to do crypto-calculations, cause it costs them electricity), but they do make sense – you want work done, whether that is moving ETH around or working a smart contract, then there is a small fee.
I wish I would have known this before I tried to send my first ETH. My first attempt got stuck, because I didn’t know what gas and GWEI were, and like any cheap skate I went low and my transaction hung.
I’ve seen several people have this same issue
Details on fix I used:
For background, apparently each of the transactions are done in order, and there is a variable called “nonce” which determines the order. If one of the transactions get stuck for some reason (in my case I believe it was not enough gas) it appears that the others just sit there. It also appears that if there isn’t a first transaction (i.e., nonce=0) then nothing is done.
I went to the Developer UI (Develop->Toggle developer tools-Wallet UI and at the prompt at the bottom executed this command:
Transactions.find().fetch()
This brings back an array of the pending transactions (in my case, there were three). Clicking on the triangle to expand the array, I went to each in turn (starting with the oldest one) and in the object list of fields (JSON I believe) I found the “_id” field. Then to delete the transactions, for each one I executed:
Transactions.remove(“tx_dc8a792605”)
where “tx_dc8a792605” is replaced by the value in the “_id” field.
As soon as I did this, the transactions were removed from the list of Latest Transactions.
After I removed all of them, I stopped and restarted Ethereum Wallet. Then I tried to send my transaction again. This time it decremented ETH from my Wallet, and, when I click on the arrow by the transaction in the Latest Transactions list, I can see in etherscan.io that the transaction was getting confirmations….but these were not reflected in the Ethereum Wallet UI. It still said 0 of 12. I continued to watch on etherscan and as soon as the transaction received enough confirmations it went through.
So – semi-fixed. The transaction went through, ETH decremented correctly (and displayed) on the wallet, but the transaction still says 0 of 12 confirmations.
Your are my hero! Thank ou soo much, googlet a lot and this solutuion was the cleanest and easyiest of them all and it worked perfect :) thanks a lot!!!
Glad that it helped!