Tengo una cadena de bloques corrupta y quiero reiniciar la cadena. ¿Qué necesito eliminar para comenzar a descargar la cadena desde cero?
Sé que hay 2 carpetas ethereum (estoy en OSX):
$home/.ethereum
$home/Libary/Ethereum
Actualicé geth recientemente a "Homestead" 1.3.5 y obtuve un error en la terminal como:
E0306 ... 3211 trie.go:309] Dangling hash node ref 3c6233326.... leveldb: not found
y a veces recibo una advertencia de bloque defectuoso:
Bad block #1102797
Para geth, elimine $home/Libary/Ethereum/chaindata
. Eso debería eliminar la propia cadena de bloques y permitirle sincronizar desde cero. También es probable que desee realizar una sincronización rápida después para volver rápidamente a la cadena --fast
.
geth
a recargar la cadena o directo con geth --fast
?geth --fast --cache=512 console
es como yo personalmente empezaría geth :Drm -R ~/Library/Ethereum/geth/chaindata/
geth removedb
También puede usar geth removedb
para eliminar la cadena de bloques y las bases de datos estatales.
geth removedb
Remove local database? [y/N]
Después de eliminar las bases de datos antiguas, ejecute geth --fast --cache=1024
(consulte la respuesta a esta pregunta de @eth
).
Tenga en cuenta que usar geth --fast
le impedirá usar debug.traceTransaction(...)
los bloques que se --fast
descargaron. Más información en ¿Cómo verificar el seguimiento de la VM usando Geth? y ¿Cómo se puede detectar el estado de la transacción de un error lanzado cuando el gas puede ser exactamente el mismo que el gas utilizado para una transacción exitosa? .
Consulte también ¿Qué es la sincronización "rápida" de Geth y por qué es más rápida? .
Para otros sistemas operativos , el valor predeterminado datadir
es:
Mac: ~/Library/Ethereum
Linux: ~/.ethereum
Windows: %APPDATA%/Ethereum
Elimine el chaindata
subdirectorio que encuentre.
Ejecute geth --fast --cache=1024
una forma recomendada de sincronizar la cadena rápidamente (no olvide usar una más grande --cache
con un valor como 1024; de lo contrario, el valor predeterminado es 16 y no se sincronizará tan rápido).
xpnimi