Я использую truffle migrate
на главной. Также с помощью geth. Изначально я оставил цену на газ и газ пустыми в truffle.js, но теперь это выглядит так:
live: {
network_id: 1,
host: "127.0.0.1",
port: 8545,
from: "3984bc76cb775d7866d1cd55c4f49e3d13d411d4",
gas: 40000,
gasPrice: 22000000000 // Specified in Wei
}
Кажется, у меня ситуация, когда у меня либо слишком много газа, либо недостаточно, и у меня нет возможности получить нужное количество.
< {
< "jsonrpc": "2.0",
< "id": 2,
< "error": {
< "code": -32000,
< "message": "insufficient funds for gas * price + value"
< }
< }
Error encountered, bailing. Network state unknown. Review successful transactions manually.
Error: insufficient funds for gas * price + value
...or...
< {
< "jsonrpc": "2.0",
< "id": 2,
< "error": {
< "code": -32000,
< "message": "exceeds block gas limit"
< }
< }
Error encountered, bailing. Network state unknown. Review successful transactions manually.
Error: exceeds block gas limit
Когда я запускаю web3.eth.getBlock("latest")
в консоли, я получаю gasLimit: 5000
. Когда я устанавливаю газ на 5000, я получаю сообщение о недостаточности средств. Когда я устанавливаю его на 5001, я получаю «Превышен лимит газа для блока».
Итак, все это, кажется, говорит мне, что gasLimit должен быть установлен на 5000 или менее 5000, но в этом случае у меня недостаточно средств для выполнения транзакции. Давайте посмотрим...
У меня есть:
gas: 5000, gasPrice: 22000000000 // Указано в Wei
5000 * 22000000000 = 1,1 * 10 ^ 14 = 110,000,000,000,000 Wei 1,1 * 10 ^ 14/10 ^ 18 (количество Wei в 1 эфире) = 1,1 * 10 ^ -4 ETH
Вот учетная запись, которую я использую: https://etherscan.io/address/0x3984bc76c76d41175dress/0x3984bc76c76d41175ddress/0x3984bc76c76d41175d1 Как видите, средства у него есть. 0,01738465 Эфир на момент написания, если быть точным.