Insufficient funds for gas * price + value

  • Sending Address has over 1 Eth in current Balance.

    Using the Geth console, I can send many transactions of any amount less than .033

    eth.sendTransaction({to:'0x8B9da75fda99bAd680154050Ba386523CA3AD112', 
    from:'0x62396567241bC92Ee3D082AC3C4144511Ec6c773',
    value:web3.toWei(.033,'ether'),gas:30000})
    
    "0x113dd5b9c8bb6d48fe2b3ef16576905f6e46aa4ed6cd080120a2aaf54113e7b4"
    

    If I try to send .034 ETH or greater, then I always get this error.

    eth.sendTransaction({to:'0x8B9da75fda99bAd680154050Ba386523CA3AD112',
    from:'0x62396567241bC92Ee3D082AC3C4144511Ec6c773',value:web3.toWei(.034
    ,'ether'),gas:30000}) Insufficient funds for gas * price + value
    at web3.js:3119:20
    at web3.js:6023:15
    at web3.js:4995:36
    at :1:1

    are you using that in a private chain or in the public one?

    default geth setup on public chain. Here is .sh #!/usr/bin/env bash echo "Starting geth" screen -dmS geth /usr/bin/geth --rpc --rpcapi="db,eth,net,web3,personal,web3" --verbosity 3

    what is the balance of 0x62396567241bC92Ee3D082AC3C4144511Ec6c773

    0.7 ETH and I had 1.5 ETH in the account with the same problem. I can send many small transactions, but nothing larger than .33

    yeah me too , private chain ;networkId 1108; seems all right, when i invoke a contract ,then error

  • It seems to be a bug in geth, try the solution presented here : https://github.com/ethereum/go-ethereum/issues/2173

    they assume that the solution is :

    Convert all values to hex (with bc if you use bash)

    Make sure to specify both gas and gasPrice! Enclose all values in single quotes eth.sendTransaction({from:'0x123456', to:'0x123456', value: '0x8AC4270ACC4B7FF7', gas: '0x5208', gasPrice: '0x4A817C800'});"

    Thanks for the suggestion. I was able to solve my issue by upgrading geth to: Geth/v1.4.16-stable/linux/go1.6.2

    hex value fixed my issue

  • I wanted to add an important information:

    gas * price + value really means MAXGas * price.

    In my case transactions failed from time to time when gas price increased because gas limit was set too high! Even if you know that it won't be that expensive you should use a reasonable amount.

    Thank you! This is exactly what if was in my case!

    Thank you! this is my case!

  • I was able to solve my issue by upgrading geth to: Geth/v1.4.16-stable/linux/go1.6.2

    This error is common if you don't have enough eth in your account, if your node isn't in sync with the network, or if you don't specify a gas price or something else is slightly wrong with the command. In this case, I'm guessing it was the attacks on the network causing your node not to be 100% in line with reality or timing out or something similar, which is why upgrading fixed it.

    After upgrading I was able to send 40 valid transactions. But after I sent the transactions I found that my node was stuck on one block for 30 minutes. I then stopped Geth and ran the geth upgradedb command. Waiting for this command to finish. Hopefully everything will be resolved now.

    I should manually specify gas price?

    I would recommend it. Usually I do 21000000000 but I've been using 25000000000 lately. Not sure if it actually makes a difference.

    Also had this issue when accidentally upgraded t0 Geth/v1.5 beta

  • i solved this by reducing my gas

    Where did you reduce the gas?

    The example of @manas-agrawal show how to set a reasonalbe gas value for a private chain.

  • gas:4.7M, gasPrice:101 GWei => error: insufficient funds.
    gas:3.7M, gasPrice:101 GWei => it works ok.
    gas:4.7M, gasPrice:100 GWei => error: insufficient funds.
    gas:4.7M, gasPrice:90 GWei  => error: insufficient funds.
    gas:4.7M, gasPrice:70 GWei  => it works ok.
    gas:4.7M, gasPrice:80 GWei  => it works ok.
    gas:4.7M, gasPrice:85 GWei  => error: insufficient funds.
    gas:4.7M, gasPrice:82 GWei  => it works ok.
    ...
    gas:1.0M, gasPrice:10 GWei  => it works ok.
    

    So, there is a (variable?) limit for gas*gasPrice that throws the error. Using gas and prices lower and far from this limit is probably the safer approach.

  • In my private Ethereum Blockchain network, I resolved the issue by changing the chainId variable in my genesis block code to any random number except 0.

    Please find the code for my genesis block below:

    {
    "config":{
            "chainId": 45,
            "homesteadBlock": 0,
            "eip155Block": 0,
            "eip158Block": 0,
            "byzantiumBlock": 12
        },
      "alloc"      : {},
      "coinbase"   : "0x0000000000000000000000000000000000000000",
      "difficulty" : "0x20000",
      "extraData"  : "",
      "gasLimit"   : "0x2fefd8",
      "nonce"      : "0x0000000000000042",
      "mixhash"    : "0x0000000000000000000000000000000000000000000000000000000000000000",
      "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
      "timestamp"  : "0x00"
    }
    

    I hope it might be helpful for you.

    Does not work. It is already 2019 in my case. Still facing this issue.

    (I'd write a full answer, but haven't the reputation). The reason for this answer is that if the tx signer is misconfigured, the error cited will awkwardly and unhelpfully be thrown. Check if the chain you're using has Homestead (**EIP2**) _and/or_ **EIP155** configured for its current block number. Transaction configuration (what fields need to be filled or omitted) will depend on the interface you're using and your chain's protocol current upgrades. See https://github.com/etclabscore/core-geth/blob/master/core/types/transaction_signing.go#L42 for code reference.

License under CC-BY-SA with attribution


Content dated before 7/24/2021 11:53 AM