Author

Topic: Question about Pruning, Classic, forks, etc. (Read 630 times)

staff
Activity: 3458
Merit: 6793
Just writing some code
February 27, 2016, 09:10:34 PM
#4

Pruning and forks are two completely unrelated things.


OK my logic was: the blockchain is used to validate transactions sequentially, the war over max block size is resulting in several code bases with soon-to-be incompatible blocks, at some point there will likely be a fork, so therefore a pruned blockchain might not be ideal for revalidating several months worth of mining and transactions, and/or choosing the right fork. Make sense?
Choosing which fork to use is by whichever client you choose to use. In the case of a fork where two blockchain do survive and are viable, pruning would probably not be a good idea. However, no one can really say what will happen and how pruned and unpruned nodes will respond and what would need to be done (whether reindex or redownload) if you switch blockchains after several blocks into a fork. Such a thing has never been done before. Until the fork does happen though, it is safe to use a pruned node, and when the fork does happen, it should (hopefully) happen without issue and there will be consensus.
hero member
Activity: 686
Merit: 504
February 27, 2016, 08:44:48 PM
#3

Pruning and forks are two completely unrelated things.


OK my logic was: the blockchain is used to validate transactions sequentially, the war over max block size is resulting in several code bases with soon-to-be incompatible blocks, at some point there will likely be a fork, so therefore a pruned blockchain might not be ideal for revalidating several months worth of mining and transactions, and/or choosing the right fork. Make sense?
staff
Activity: 3458
Merit: 6793
Just writing some code
February 27, 2016, 03:53:23 PM
#2
Hello, newb here wondering about the wisdom of running pruning on my Core 0.12 node. I set prune=10000, which I believe that should store quite a few old transactions. The 61GB blockchain got pruned down quickly to 12GB and the node seems to be running fine.

However I notice that Classic people are mining blocks, and am contemplating what it will mean down the road if blocks need to be rolled back or there is a hard fork. I don't fully understand the technical ramifications of pruning, but my thought is that nodes that are pruned may need to reindex so perhaps this is not the best choice? Thanks for any insights.
Pruning and forks are two completely unrelated things.

With block file pruning, you are only storing some amount of the blockchain. It will always contain the most recent blocks that your node knows about.

Forks are simply new blockchains that stem off of the existing one. With Bitcoin Classic, new blocks are mined which signal forking. When you receive those blocks, the current blocks are still valid so your node accepts them and adds the block to its database and it removes an older block to maintain the number you specified. Forks will not roll anything back and nothing in the blockchain will be rolled back unless there is some major bug and accidental fork that happens like the one that happened in 2013.
hero member
Activity: 686
Merit: 504
February 27, 2016, 03:49:59 PM
#1
Hello, newb here wondering about the wisdom of running pruning on my Core 0.12 node. I set prune=10000, which I believe that should store quite a few old transactions. The 61GB blockchain got pruned down quickly to 12GB and the node seems to be running fine.

However I notice that Classic people are mining blocks, and am contemplating what it will mean down the road if blocks need to be rolled back or there is a hard fork. I don't fully understand the technical ramifications of pruning, but my thought is that nodes that are pruned may need to reindex so perhaps this is not the best choice? Thanks for any insights.
Jump to: