Author: Leo Wandersleb 2021-02-28 03:41:06
Published on: 2021-02-28T03:41:06+00:00
A developer named Keagan McClelland has come up with an idea for a "partially" pruned node to help reduce the load of bootstrapping other nodes and increase data redundancy in the network. Currently, full nodes have two options: either pruning everything except the most recent blocks down to cache size or keeping everything since genesis. However, this proposal would allow a node to randomly prune some historical blocks if it passes some predicate. The uniqueness of the node's hash should ensure that no block is systematically overrepresented in the set of nodes choosing this storage scheme. Once the node's initial block download (IBD) is complete, it would advertise its seed and threshold as a peer service so that nodes could deterministically deduce which of its peers had which blocks.Igor Cota responded to this proposal, suggesting that it may be better for the node to decide on a range of blocks to keep beforehand, rather than making the decision block-by-block. He felt that ranges would better serve other nodes due to the sequential nature of IBD, and it may be computationally lighter as well. He also encouraged Keagan to read Ryosuke Abe's paper proposing a DHT scheme to solve the same problem.Keagan is working on a draft BIP for this proposal, but he is open to feedback on the initial design before going into specification levels of detail. He is looking for thoughts on the protocol design itself and the barriers to putting this kind of functionality into Core.
Updated on: 2023-06-14T18:39:25.333298+00:00