Author

Topic: Autopruning (Read 957 times)

legendary
Activity: 1260
Merit: 1003
December 03, 2014, 03:23:40 PM
#4
Una idea muy buena, porque de aquí a pocos años la cadena de bloques se puede volver descomunal para mucha gente.
legendary
Activity: 1974
Merit: 1029
December 03, 2014, 03:09:58 PM
#3
Si pones el limite de 2gb y tu transacción es super antigua... por lo que sea no esta en esos 2 gb se descarga la transacción automáticamente de la cadena de bloques supongo no?

Como dije, al activar el pruning no hay soporte de monedero. No se pueden enviar ni recibir BTC.
newbie
Activity: 49
Merit: 0
December 03, 2014, 02:47:01 PM
#2
Si pones el limite de 2gb y tu transacción es super antigua... por lo que sea no esta en esos 2 gb se descarga la transacción automáticamente de la cadena de bloques supongo no?
legendary
Activity: 1974
Merit: 1029
December 03, 2014, 12:30:55 PM
#1
Finalmente parece que el autopruning (esto de poder decirle a Bitcoin Core "no me ocupes más de 5 Gb") no va a estar listo para la próxima versión 0.10 Sad. Sin embargo podemos probar el pull request individual para ver si funciona bien o si, en cambio, aparece algún problemilla Wink.

Es incompatible con el wallet, por lo que no sirve para mantener saldos ni enviar/recibir transacciones. También es incompatible con el parámetro -txindex.

Yo lo estoy probando con un límite de 2 Gb y de momento me tira bien. El directorio blocks alcanza los 2.1 Gb y rápidamente vuelve a un poco menos de 2, para ir subiendo de nuevo según se va descargando la cadena de bloques. Sí que hay que descargarla entera de todas formas, para que Bitcoin Core construya y mantenga el UTXO set (la lista de coins gastables), necesario para validar las transacciones que viajan constantemente por la red.

Si queréis probarlo, estos son los pasos, según se ven en reddit:

Code:
$ git clone https://github.com/bitcoin/bitcoin bitcoin-github
$ cd bitcoin-github
$ vim .git/config

En este punto, añadir las siguientes líneas al final del archivo:

Code:
[remote "upstream-pull"]
        fetch = +refs/pull/*:refs/remotes/upstream-pull/*
        url = https://github.com/bitcoin/bitcoin.git

Ojo, que esos espacios del principio son tabuladores.

Guardamos el archivo y continuamos:

Code:
$ git fetch upstream-pull
$ git checkout upstream-pull/4701/head

Listo! Ahora compilamos como siempre:

Code:
$ ./autogen.sh
$ ./configure --with-incompatible-bdb --without-gui

Si el configure falla con "configure: error: No working boost sleep implementation found.", no es difícil arreglarlo pero no quiero alargar más este mensaje. Si a alguien le peta, que grite Tongue.

Code:
$ make

Y tras esto y 20 minutos en mi cutre portátil, los ejecutables bitcoind, bitcoin-cli y bitcoin-tx aparecen bajo el directorio src.

En este punto yo detuve mi instancia de bitcoind, me guardé una copia del directorio ~/.bitcoin por ahí, creé un nuevo directorio ~/.bitcoin y le puse dentro el bitcoin.conf siguiente:

Code:
rpcuser=foo
rpcpassword=bar
prune=2000

Ejecuté src/bitcoind y a disfrutar! El parámetro prune indica Mb.

Añadir que eso de "4701" se puede sustituir por cualquier otro pull request para probar cualquier otra cosa que esté en desarrollo. Venga, animaos alguien, que no sea yo el único pringao de toda España/LatAm que lo prueba.
Jump to: