¿La actualización de Bitcoin core 0.12 a 0.13 requiere una nueva descarga de blockchain?

Aparentemente, Bitcoin Core 0.13 descargará parte de la cadena de bloques nuevamente, aunque 0.12 ya lo guardó en el disco.

My debug.logmuestra el último bloque que descargó con 0.12:

2016-08-15 09:07:28 UpdateTip: new best=000000000041eb2ccd0ed06d5bb632cf27b7ed584a669660cac28e1b71973720  height=922283  log2_work=67.979045  tx=10868067  date=2016-08-15 09:02:06 progress=1.000000  cache=7.3MiB(3942tx)

Más adelante, algunos extractos relevantes del debug.log:

2016-08-15 09:40:14 Bitcoin version v0.13.0rc3
[...]
2016-08-15 09:40:28 LoadBlockIndexDB: hashBestChain=000000000041eb2ccd0ed06d5bb632cf27b7ed584a669660cac28e1b71973720 height=922283 date=2016-08-15 09:02:06 progress=0.999999
2016-08-15 09:40:28 init message: Rewinding blocks...
[...]
2016-08-15 09:47:48 UpdateTip: new best=0000000000211a4d54bceb763ea690a4171a734c48d36f7d8e30b51d6df6ea85 height=828576 version=0x20000000 log2_work=67.431752 tx=10111478 date='2016-05-12 19:05:48' progress=0.997200 cache=3.1MiB(7756tx)
2016-08-15 09:47:50 UpdateTip: new best=00000000000f0d5edcaeba823db17f366be49a80d91d15b77747c2e017b8c20a height=828575 version=0x20000000 log2_work=67.431752 tx=10108953 date='2016-05-12 19:05:43' progress=0.997200 cache=3.3MiB(9069tx)
2016-08-15 09:47:52 UpdateTip: new best=000000009c9e433e9a79e5b9e42c80848978d76c7078e0d35c706eea35dc4602 height=828574 version=0x20000000 log2_work=67.431752 tx=10106552 date='2016-05-10 19:28:48' progress=0.997141 cache=3.6MiB(11260tx)
2016-08-15 09:47:52 UpdateTip: new best=0000000000002fa99e0fa83ba05aa380f392c625e11807018c7ab2f84f773331 height=828575 version=0x20000000 log2_work=67.431758 tx=10106553 date='2016-05-10 17:32:25' progress=0.997138 cache=3.6MiB(11261tx)
[...]
2016-08-15 09:47:53 UpdateTip: new best=00000000004f22c4274b2358897f2b4abf001918629e241130fd3d1eafc4bfe6 height=829552 version=0x20000000 log2_work=67.44607 tx=10117642 date='2016-05-13 07:36:33' progress=0.997218 cache=4.4MiB(13128tx)
2016-08-15 09:47:53 UpdateTip: new best=0000000000f6287b3a4e30d86b07733862a6d5da4c00a897e2958f3831a6c6e8 height=829553 version=0x20000000 log2_work=67.44607 tx=10117643 date='2016-05-13 07:56:35' progress=0.997218 cache=4.4MiB(13129tx)

Entonces aparentemente estaba rebobinando los bloques en el disco y luego leyendo algunos de ellos nuevamente desde el disco. Sin embargo, en este momento, se está obteniendo de la red.

Respuestas (1)

El motivo no es estrictamente la actualización de 0.12 a 0.13, sino de una versión que no soporta SegWit a una que sí, después de que SegWit se active en la red.

Bitcoin Core 0.13 viene con las preparaciones de código para SegWit, aunque solo están habilitadas para testnet. Varios mineros han ejecutado el código de prelanzamiento para 0.13 en testnet con anticipación, lo que provocó que testnet ya cambiara a SegWit.

El problema es que no tiene los datos testigo de los bloques desde que se activa, por lo que 0.13 decidió ignorar esos bloques en el disco y descargarlos nuevamente.

Estoy haciendo una sincronización en este momento con la versión 12. ¿Se descargarán los datos de los testigos o necesito 13 para obtener los datos de los testigos?
No conoce el concepto de testigos, por lo que no puede descargarlos. Sin embargo, como segwit no se activó en la red principal, ningún bloque tiene testigos y no será necesario rebobinar si actualiza a 0.13 antes de que se active segwit.