Hot answers tagged

6

There are three things pruned Bitcoin Core nodes (as of version 0.21.0) cannot do: Serve historical blocks to new nodes that are trying to bootstrap. Rescan for old wallet transactions after importing more addresses. The getrawtransaction RPC for retrieving arbitrary transactions. Validation (and security in general) are unaffected.


6

does such a node support the syncing of other nodes in the network? Nodes that are pruned unset the NODE_NETWORK flag, which means that they don't advertise themselves as a potential source for block synchronization. Nodes won't consider peers without this flag as a potential source for downloading blocks. In such an early state, before pruning kicked in, ...


5

Pruning Blockchain, what does it remove? What Raw block data for blocks older than a given height. If we look at https://bitcoincore.org/en/releases/0.11.0/, it says This release supports running a fully validating node without maintaining a copy of the raw block and undo data on disk. To recap, there are four types of data related to the blockchain in the ...


4

Your points 1 & 2 are both correct. The good news is the only time those old blocks get requested is by new nodes that are still bootstrapping and downloading the blockchain for the first time. As long as those old blocks are available and accessible somewhere, those new nodes will sync up just fine. Another fact about pruned nodes is they are required ...


3

Alice will be able to download just the missing blocks, since her node has already validated the blockchain up until that point. However she will need to synchronize from an unpruned node, since pruned nodes aren't usually storing blocks that are a month old.


3

Pruned nodes still contribute to the network. They still receive, send, and validate all blocks and transactions on the network. This by itself is beneficial to the network. Additionally, pruned nodes will have the most recent blocks (by default, at least 1 days worth) so they can also serve those blocks.


2

Nodes don't stop working after being offline, regardless of how long, and regardless of whether they're pruned or not. After some amount of time (a few days at most), nodes cannot synchronize from other pruned nodes anymore, but that's ok; there are plenty of non-pruned nodes.


2

One way of looking at validation (in Bitcoin, and related systems) is to see the UTXO set as the primary data set a node operates on. Blocks are simply "patches" to the UTXO set, saying what entries can be deleted from it, and which new ones to create. Of course, blocks are more than that; they are also authenticated - they carry data with them to ...


2

Bitcoin Core doesn't have such a feature. The prune depth controls how many blocks are kept, and you can change that (-prune=N option on the command line or prune=N in bitcoin.conf), but once a block is pruned, it is gone. If you want to add blocks back, for now you'll need to resync from scratch. There is no technical reason for this; it's perfectly ...


2

As Pseudonymous already stated, pruned nodes do not advertise the NODE_NETWORK service, which indicates that a node will serve the full history of blocks. Corollary, a pruned node will not assist other nodes in their initial synchronization. However, since Bitcoin Core 0.16, pruned nodes advertise NODE_NETWORK_LIMITED as specified by BIP159. A node ...


2

Note that transaction history is not stored in a tree nor is there a Merkle tree for all of the transactions in the blockchain. Merkle trees are only used for constructing the merkle root in blocks and constructing transaction inclusion proofs for SPV nodes. If you reduce the blockchain to only the data absolutely needed for a node to verify new transactions,...


1

You're trying to use an optional feature of Bitcoin Core: the ability to query for old transactions. This functionality needs: (a) the full blockchain (where else would it get the transaction from) (b) an index by txid so it doesn't need to read through 270 GB to find what you're looking for. The error message you get is telling you that this (b) index is ...


Only top voted, non community-wiki answers of a minimum length are eligible