4 ms·
This is false. Geth full sync mode has every block with every transaction executed from genesis. What is pruned in 'full sync' mode is the per account/contract
by yokem55 4y ago
This is false. Geth full sync mode has every block with every transaction executed from genesis. What is pruned in 'full sync' mode is the per account/contract history. But since you are executing every transaction from genesis, you can know that you are in fact getting the correct state of the chain. And if you want, you can even do some thing like:
1) Do a full sync with a pruned current state database.
2) Delete the state database, leaving the 'ancient-data' (all the historical, already executed blocks)
3) Unplug the machine from the internet.
4) Restart geth in archive sync mode.
5) And after a while you will have an archive node (all the account history cleanly indexed separately), 100% derived from the blocks you synced in full mode.
- wyager 4y agoYou said "this is false" and then said a bunch of stuff that's entirely consistent with my (true) statement.
- yokem55 4y agoYour implication was that full nodes are less secure. That specifically is false. You do not need to know the full indexed history of an account to know what its current balance is. There is zero loss of security in not knowing what a specific account's balance was 1,000,000 blocks ago if you have executed through every transaction and every block that has ever been committed to the chain.
- wyager 4y ago> There is zero loss of security The loss of security is to the network. When there are only like 12 actual full nodes, the network is effectively centralized. Also, please stop calling lightweight pruned nodes "full nodes". It's totally dishonest to try to imply the same security level of a bitcoin full node when it's actually a much weaker security model. I know you're not the only person doing this, but nothing is stopping you from using more honest terminology.
- timcavel 4y ago
- yokem55 4y ago>It's totally dishonest to try to imply the same security level of a bitcoin full node when it's actually a much weaker security model. What precicely is weaker about it? If you think ethereum full nodes have weaker security, what exactly is missing? Full nodes have 100% of the current state, 100% of the the blocks, and 100% of the transactions, and you serve those blocks and transactions to the rest of the network just as easily as an archive node. And if independent verification of the history of a particular account is needed, it can be done, without any dependency on any other archive nodes. > I know you're not the only person doing this, but nothing is stopping you from using more honest terminology. You aren't the only btc maxi who hand waives around this bs, nothing is stopping you from being less ignorant.
- wyager 4y ago> What precicely is weaker about it? Here's a thought experiment for you; why don't you just get rid of all the "archive" nodes? > Full nodes have 100% of the current state Only if you redefine "current state" to be "not actually the entire state of the blockchain".
- yokem55 4y ago> Here's a thought experiment for you; why don't you just get rid of all the "archive" nodes? By all means, do it. Blow them all away. You can still transact on the chain and send or recieve funds from any other valid address or call contract functions just fine. And then anyone who wants to do things like run a block explorer or look at how a particular account's balance has changed over time can resync to an archive node *using only the contents of a full node*. Archive nodes just retain additional account level indexing of what the block history (and all the transactions contained in those blocks) already contains. > Only if you redefine "current state" to be "not actually the entire state of the blockchain". 'Current state'⋮ At the present time, what is the balance of any abritrary account? What is in the current storage of any arbitrary deployed contract? Full nodes have 100% of that, without querying anything from any other node.