-
Notifications
You must be signed in to change notification settings - Fork 5k
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
Some transactions have unusually high gas cost #787
Comments
I found this kind of bug is related to the amount of function arguments. I tested it with this contract:
} If I use a web UI to call this contract. The functions with 3 or 4 arguments will cost arround 2.6 ETH. But if they are called through browser-solidity after created, it will cost less than 0.001 ETH. The browser-solidity is also using the web3 object injected by Metamask. |
It's actually even weirder that the gas estimate would be different through browser-solidity than through another method, unless browser-solidity is doing its own gas estimation via ethereumjs-vm... |
Ok, I've tested your theory, @Chillli, but I've failed to reproduce. I don't think this is just a matter of number of arguments, there's something else, too. Could you do me a favor and reproduce the bug, then while you can see it, paste a UI State Log here? I think this could really help us narrow down the cause. |
@karlfloersch Sorry, looks like that link was somehow pointing at the wrong thing. Try this one: Hope you can log it! People have been reporting this for like a week, but we haven't been able to reproduce! |
} This is when I use the function with 3 arguments. |
Here is the entire file content: Download the React DevTools and use an HTTP server (instead of a file: URL) for a better development experience: https://fb.me/react-devtools |
@FlySwatter I've found a pattern around when the error is coming up. I've noticed that sending ETH to any contract address has extremely high transaction fees. However, sending ETH to normal addresses are fine. For consistency, I reinstalled MetaMask, created a new vault and made sure to be on Morden. I've tested this with 3 contract addresses with varying amounts of ETH and 2 account addresses. |
Well that's very easy to test, thanks! We'll be hopefully tracking this down once and for all tomorrow, lots of fresh leads.
|
Found it. Turns out |
It seems that this is still an issue, even though the gas prices are orders of magnitude more reasonable. The issue is, when sending transactions to contracts gas is pretty costly (about 1 ETH for 0.1 ETH transaction) and the actual transactions never go through. To test this, simply try sending a transaction on the Morden network to an account: and then to a contract: The first one (normal accounts) go through, but the 2nd (contract address) doesn't ever appear in EtherScan. |
Several users have reported this, but haven't included reproduction steps.
A new member of our Slack just claimed this occurs "if there are 3 or more arguments" to the transaction data.
That seems like a good lead!
Since Parity does our gas estimating, this may end up being a bug over there.
The text was updated successfully, but these errors were encountered: