Actualizando geth después de EIP150 Hardfork

Debido al reciente EIP150 Hardfork en Ethereum, mi nodo Geth necesitaba una actualización de v1.4.10 a v1.4.18:

cd ethereum
wget "https://github.com/ethereum/go-ethereum/releases/download/v1.4.18/geth-linux-amd64-1.4.18-ef9265d0.tar.gz"
tar -zxvf geth-linux-amd64-1.4.18-ef9265d0.tar.gz
pkill geth
mv geth geth.old
cp geth-linux-amd64-1.4.18-ef9265d0/geth ./geth
nohup ./geth --rpc --testnet &

Después de iniciar, parece que geth se atasca procesando el mismo bloque todo el tiempo:

E1025 10:36:10.603692 core/blockchain.go:1170] Bad block #1808134 (0x53b51f327d1844b2c1abc0f9440eae479636fd6c6e88101a4af9d3ea90cdc547)
E1025 10:36:10.603739 core/blockchain.go:1171]     gas used error (2831504 / 2838374)
E1025 10:36:16.271015 core/blockchain.go:1170] Bad block #1808134 (0x53b51f327d1844b2c1abc0f9440eae479636fd6c6e88101a4af9d3ea90cdc547)
E1025 10:36:16.271061 core/blockchain.go:1171]     gas used error (2831504 / 2838374)
E1025 10:36:18.351420 core/blockchain.go:1170] Bad block #1808134 (0x53b51f327d1844b2c1abc0f9440eae479636fd6c6e88101a4af9d3ea90cdc547)
E1025 10:36:18.351452 core/blockchain.go:1171]     gas used error (2831504 / 2838374)
E1025 10:36:18.895763 core/blockchain.go:1170] Bad block #1808134 (0x53b51f327d1844b2c1abc0f9440eae479636fd6c6e88101a4af9d3ea90cdc547)
E1025 10:36:18.895794 core/blockchain.go:1171]     gas used error (2831504 / 2838374)
E1025 10:36:19.900784 core/blockchain.go:1170] Bad block #1808134 (0x53b51f327d1844b2c1abc0f9440eae479636fd6c6e88101a4af9d3ea90cdc547)
E1025 10:36:19.900810 core/blockchain.go:1171]     gas used error (2831504 / 2838374)
E1025 10:36:20.094734 core/blockchain.go:1170] Bad block #1808134 (0x53b51f327d1844b2c1abc0f9440eae479636fd6c6e88101a4af9d3ea90cdc547)
E1025 10:36:20.094771 core/blockchain.go:1171]     gas used error (2831504 / 2838374)

¿Alguna idea de por qué hace esto? ¿Cómo puedo arreglarlo? ¡Gracias!

Respuestas (2)

Es un error después de un hard fork reciente.

https://github.com/ethereum/go-ethereum/issues/3183

Reconstruir toda la cadena de bloques desde cero lo solucionó, pero hubiera preferido una solución más rápida. ¿Algunas ideas?

En otro nodo, obtuve un resultado similar después de actualizar:

E1027 08:05:06.621020 core/blockchain.go:1170] Bad block #1813322 (0x2612c6b92ced0ae0d7cff7a303f47eab31600df326dfa6b131f4f05ca5df69fd)
E1027 07:59:03.702864 core/blockchain.go:1171]     gas used error (216232 / 219832)
E1027 07:59:03.702699 core/blockchain.go:1170] Bad block #1813322 (0x2612c6b92ced0ae0d7cff7a303f47eab31600df326dfa6b131f4f05ca5df69fd)
E1027 07:57:56.040060 core/blockchain.go:1171]     gas used error (216232 / 219832)
Recibo un error similar para bloquear 1809368en la red de prueba. Esta fue una sincronización desde cero. Lo dejé toda la noche y ahora son errores sólidos.