MetaMask / metamask-extension

:globe_with_meridians: :electric_plug: The MetaMask browser extension enables browsing Ethereum blockchain enabled websites
https://metamask.io
Other
11.87k stars 4.85k forks source link

Private Network TXs forever pending #3480

Closed elie222 closed 6 years ago

elie222 commented 6 years ago

I'm using Truffle and MetaMask and the transactions are forever pending. I see in Ganache that they've gone through and the blockchain state has been updated, but MetaMask and my client are not getting these updates and display old state.

In MetaMask the TX shows as forever pending.

elie222 commented 6 years ago

If I then retry do the tx with higher gas, it says failed because the account has a nonce of 1 and not 0. But the client still doesn't show the most up to date data when querying the blockchain although Ganache and truffle develop console do.

elie222 commented 6 years ago

So there are some real issues here. In the truffle console the tx has gone through. If I open Brave with MetaMask it shows the most up to date state. But my Chrome MetaMask seems to be stuck and is always showing the old state. I have the state logs for each browser's MetaMask, is there someone I can email it to?

tmashuang commented 6 years ago

I believe this is a duplicate issue of the larger #199. Closing in favor #1999, will reopen if that is not the case.

zuuubu commented 5 years ago

I have part of this problem - I see that the transaction is confirmed in Metamask (I also get notification about it) but my transaction is never resolved in client javascript. When error occurs, it's caught, but otherwise it looks like its pending indefinitely. Here is the code snippet:

contract.deployed().then(function(instance){
    instance.createVoting(hexBallotName, hexOptions, {from:currentAccount})
    .then(function(result){
         console.log(result); // <- never happens
    }).catch(function (error){
        console.log(error); // <- this does happen when invoked
    });
});

I use my private blockchain and truffle, I've tried this with Chrome, Firefox and Brave. Also, when I use plain web3 without Metamask, promise resolves.