geth, how long (in terms of blocks) will a state tree node put into the death row before being pruned? Does this vary among different sync mode? And can we configure it?
Besides state trees are pruned, will blocks/ transactions/ transaction receipts stored in
geth node be 'pruned' after certain period of time? Or do they persist unless i re-sync the client?
Edited on 2 Nov 2017: For the 2nd question, this post answered that only state trees are pruned. Blocks or any other data remain since a joining node needs these data to sync.
Edited on 13 Nov 2017: For the 1st question, seems Vitalik's state trie pruning was not implemented. (Ref: this PR). So that's no such death row (mentioned by Vitalik) config in
geth. And EIP-161 seems to be the only state trie pruning technique available in
geth now. So in full sync mode, no past states of existent accounts are pruned and all state tries from genesis block to current block are kept. And in fast sync mode, only state tries of recent blocks with dead accounts pruned are stored. Am I correct?