Author

Topic: le mode "pruning" sera enfin introduit à la version 0.11 ! (Read 4004 times)

legendary
Activity: 1512
Merit: 1011
Nouveau test sur la fonction "Pruning" de la v0.12 de Bitcoin Core : Je ne peux toujours pas miner (P2Pool voit que j'ai des blocks manquants (pruned data, le RPC de bitcoin core informe le serveur de minage).

Re-téléchargement de toute la blockchain (et reconstruction) pour revenir au mode normal.  Undecided

Je voulais cantonner Bitcoin Core à 50Go.
Actuellement, la blockchain fait 70,2 Go.
legendary
Activity: 1512
Merit: 1011
sinon, tu refile le "vieux" SSD (qui ne vieillit pas justement) à ta voisine/mémère qui a un vieux clou qui rame ... elle va être content (ça pousse, fiston maintenant !), puis te refile du pognon/biffeton.

et tu t'achète un plus gros SSD.  Cheesy

moi, aussi, j'ai des SSD partout de 64Go à 512Go ... mais c'est idiot, maintenant, je change plus mes disques durs (ben oui, je les migre sur les nouveaux PC portable ou tours diverses) et donc, les 64Go sont un peu petit pour certains choix.
legendary
Activity: 2128
Merit: 1120
les derniers SSD 250Go sont à 85 euros sur amazon.  Grin

Si j'utilise déjà 200Go ça ne sera pas assez.
Il me faut un deuxième SSD à la place du lecteur CD.
legendary
Activity: 1512
Merit: 1011
les derniers SSD 250Go sont à 85 euros sur amazon.  Grin
legendary
Activity: 2128
Merit: 1120
 
Quelqu'un peut uploader une version pruné de la blockchain ?
J'ai très peu de place sur mon SSD.
Ce serait vraiment cool si je pouvais avoir une node, même partielle.

Et si on enlève la ligne de commande dans le bitcoin.conf du PRUNE du dessus ... le Bitcoin Core doit ré-indexer toute la blockchain locale.  Lips sealed
Bon, on va donc attendre que ces messieurs développeurs ... trouvent une parade (il faudrait que le Bitcoin Core supporte le mode SPV pour que le mode PRUNE et le WALLET puissent fonctionner de concert ainsi, le wallet utilise la blockchain locale pour se remplir puis le mode SPV quand les blocks ont été prunés/élagués).
Le minage et le stockage UTXO est possible en mode PRUNE.
L'utilisation (dépense) et la visualisation de ses bitcoins (WALLET) est impossible en mode PRUNE.

Ah c'est nul :/
On dirait presque que c'est volontaire.


J'ai plus qu'à faire ça : http://www.it-connect.fr/remplacez-votre-lecteur-cd-par-un-disque-dur/
legendary
Activity: 1512
Merit: 1011
 Undecided Bon, en relisant un peu sur tout ce qui a été dit sur le forum partie anglaise ... la seule chose qui pose un problème est que ce mode n'est prévu que pour les clients sur PC léger.

Ainsi, activer le PRUNE=50000 (limite à 50Go donc) ... désactive complétement l'utilisation du WALLET.



Et si on enlève la ligne de commande dans le bitcoin.conf du PRUNE du dessus ... le Bitcoin Core doit ré-indexer toute la blockchain locale.  Lips sealed

Bon, on va donc attendre que ces messieurs développeurs ... trouvent une parade (il faudrait que le Bitcoin Core supporte le mode SPV pour que le mode PRUNE et le WALLET puissent fonctionner de concert ainsi, le wallet utilise la blockchain locale pour se remplir puis le mode SPV quand les blocks ont été prunés/élagués).

C'est pas demain la veille même si une augmentation de la taille de block pourrait pousser le développement par là ...  Tongue

---

Le minage et le stockage UTXO est possible en mode PRUNE.
L'utilisation (dépense) et la visualisation de ses bitcoins (WALLET) est impossible en mode PRUNE.

legendary
Activity: 1512
Merit: 1011
Remise en place de la ligne de commande -prune.
La limite, de mon coté, est portée à 50 Go.

Le répertoire blockchain pèse actuellement 46,5 Go.

Je vais voir ce que ça entraine lors du minage/utilisation avant le pruning ... puis après.
On génère 131 Mo tous les 2 jours, ça ne devrait plus être très long pour voir ce changement ...

La taille de 50 Go est une limite visuelle chez moi : elle représente 1/3 de la taille de la partition du SSD.
legendary
Activity: 1512
Merit: 1011
Bon, en fait, c'est pas trop ce que j'attendais ... c'est un peu "trop simple" comme fonction.  Undecided

Même si je comprends qu'il faille l'utiliser d'abord pour voir ce que ça donne, je pensais à un trucs un peu plus perspicace comme la suppression aléatoire de blocs ... pour que si tout le monde utilise cette fonction, on est pas tous les mêmes blocs manquant.  Tongue

J'ai pu voir ce que je voulais dans le debug.log par le fait que les gens qui demandent des vérifications reçoivent une erreur de script (error input) ... ça veut dire qu'ils vont demander à quelqu'un d'autre pour savoir si la transaction est valide (double-spend).

J'ai supprimé l'argument dans le bitcoin.conf nommé prune=40000

Un message m'a demandé que pour continuer (après le redémarrage), je dois refaire un -reindex pour reconstruire la blockchain LOCALE.

On clique oui, et ça repart en -reindex tout seul ... c'est au moins de moins à prévoir en ligne de commande.  Kiss
legendary
Activity: 1512
Merit: 1011
En tout cas, le debug.log est assez bien renseigné pour voir ce qui se passe ... j'ai rajouté un coloriage dans baretail pour suivre s'il y a un problème affilé au mot "prun".
legendary
Activity: 1512
Merit: 1011
Effectivement, ça vire des blocks ...

Code:
2015-06-23 12:26:23 Opened LevelDB successfully
2015-06-23 12:26:27 LoadBlockIndexDB: last block file = 287
2015-06-23 12:26:27 LoadBlockIndexDB: last block file info: CBlockFileInfo(blocks=129, size=85358209, heights=362042...362170, time=2015-06-22...2015-06-23)
2015-06-23 12:26:27 Checking all blk files are present...
2015-06-23 12:26:28 LoadBlockIndexDB: transaction index disabled
2015-06-23 12:26:28 LoadBlockIndexDB: hashBestChain=0000000000000000075a99c534d63592ff height=362170 date=2015-06-23 12:19:23 progress=0.999993
2015-06-23 12:26:28 init message: Vérification des blocs en cours...
2015-06-23 12:26:28 Verifying last 288 blocks at level 3
2015-06-23 12:26:37 No coin database inconsistencies in last 1 blocks (1824 transactions)
2015-06-23 12:26:37  block index           14063ms
2015-06-23 12:26:37 Unsetting NODE_NETWORK on prune mode
2015-06-23 12:26:39 Prune: UnlinkPrunedFiles deleted blk/rev (00000)
2015-06-23 12:26:39 Prune: UnlinkPrunedFiles deleted blk/rev (00001)
2015-06-23 12:26:39 Prune: UnlinkPrunedFiles deleted blk/rev (00002)
2015-06-23 12:26:39 Prune: UnlinkPrunedFiles deleted blk/rev (00003)
2015-06-23 12:26:39 Prune: UnlinkPrunedFiles deleted blk/rev (00004)
2015-06-23 12:26:39 Prune: UnlinkPrunedFiles deleted blk/rev (00005)
2015-06-23 12:26:39 Prune: UnlinkPrunedFiles deleted blk/rev (00006)
2015-06-23 12:26:39 Prune: UnlinkPrunedFiles deleted blk/rev (00007)
2015-06-23 12:26:39 Prune: UnlinkPrunedFiles deleted blk/rev (00008)
2015-06-23 12:26:39 Prune: UnlinkPrunedFiles deleted blk/rev (00009)
2015-06-23 12:26:39 Prune: UnlinkPrunedFiles deleted blk/rev (00010)
2015-06-23 12:26:39 Wallet disabled!
2015-06-23 12:26:39 init message: Activation de la meilleure chaîne...
2015-06-23 12:26:39 mapBlockIndex.size() = 362262
2015-06-23 12:26:39 nBestHeight = 362170
2015-06-23 12:26:39 setKeyPool.size() = 0
2015-06-23 12:26:39 mapWallet.size() = 0
2015-06-23 12:26:39 mapAddressBook.size() = 0
2015-06-23 12:26:39 init message: Chargement des adresses…
2015-06-23 12:26:39 Loaded 18507 addresses from peers.dat  171ms
2015-06-23 12:26:39 dnsseed thread start
2015-06-23 12:26:39 upnp thread start
2015-06-23 12:26:39 init message: Chargement terminé


j'ai les 10 premiers BLK dans le dossier "blockchain" de bitcoin core qui sont plus là ... (j'ai mis 40000Mb dans le rêglage sachant que la blockchain fait 41,2Go actuellement)
legendary
Activity: 1652
Merit: 1000
Bitcoin enthusiast!
La communication avec un wallet SPV devrait aussi fonctionner parce que tu n'as pas besoin de toute la blockchain pour ça mais juste les UTXOs disponibles à priori
Bref tu devrais pouvoir faire comme avant, sauf que tu ne seras plus une "full node" dans le sens ou tu ne seras plus capable de vérifier que ta blockchain est bien la plus longue en partant du genesis block par toi même ou de permettre à un autre de synchroniser son bitcoind avec une fresh install (vu que tu n'as plus l'historique de la blockchain tu ne peux plus la transmettre...)
legendary
Activity: 1512
Merit: 1011
 Sad ah bon ?

je pensais que le mode pruning réorganisait les blocks pour, quand même, qu'on puisse m'utiliser lorsqu'un SPV me contacte ...  Undecided

du coup, je vois pas trop à quoi c'est utile car ça fait disparaître la vitesse de vérification du réseau en somme ...  Lips sealed
legendary
Activity: 1652
Merit: 1000
Bitcoin enthusiast!
Je pense que tu peux miner, mais tu n'es plus une full node car tu n'as plus tout l'historique des blocs, ie on ne peut plus recontruire la blockchain depuis le genesis bloc si on ne se connecte que chez toi.
legendary
Activity: 1512
Merit: 1011
ça veut dire que je peux plus miner ?  Sad (la P2Pool pioche dans bitcoin core pour vérifier, je crois ...)
legendary
Activity: 1652
Merit: 1000
Bitcoin enthusiast!
Le problème avec le pruning, c'est que ta node n'est plus une full node ensuite et tu n'as pas toute la blockchain...
legendary
Activity: 1512
Merit: 1011
la v0.11 RC2 est déjà disponible à cet effet ... https://bitcoin.org/bin/bitcoin-core-0.11.0/test/
je vais tester cela demain, j'ai un peu de temps pour voir ce que ça donne.  Smiley

le mode pruning comporte certaines limites évidemment :
- on ne peut pas toucher aux 288 derniers blocks (soit 2 jours).
- on ne peut pas descendre à moins de 550 Mo de blockchain (ce qui est tout-à-fait raisonnable avec une blockchain de 41,2Go actuellement).

je vais procédé par tatonnement :
- on va déjà faire 35000Mo ...
- puis 1 semaine plus tard, on retire encore 5Go et ainsi de suite en surveillant le debug.log et les nodes/SPV qui viennent sniffer les blocks.
legendary
Activity: 1512
Merit: 1011
https://github.com/bitcoin/bitcoin/pull/5863

 Grin Cheesy je suis content !

Les nodes Bitcoin Core (sans wallet !) vont pouvoir enfin nettoyer la blockchain des transactions inutiles archivées !

Quote
To summarize autoprune: this adds a -prune=N option to bitcoind, which if set to N>0 will enable autoprune.

 When autopruning is enabled, block and undo files will be deleted to try to keep total space used by those files to below the prune target

maintenant, je suis d'accord pour les blocks de 20Mb !  Kiss
Jump to: