This repository was archived by the owner on Aug 19, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 182
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
blukat29
reviewed
Oct 25, 2023
Co-authored-by: Yunjong Jeong (ollie) <jeongyoonjong@gmail.com>
blukat29
previously approved these changes
Oct 27, 2023
ian0371
reviewed
Nov 2, 2023
hyeonLewis
reviewed
Nov 3, 2023
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In the proposed changes, I think bx to bc-1 and bv to the current
is the correct explanation. Isn't it?
@hyeonLewis, Exactly. Thank you. Updated. |
blukat29
reviewed
Nov 3, 2023
blukat29
previously approved these changes
Nov 8, 2023
Co-authored-by: Yunjong Jeong (ollie) <jeongyoonjong@gmail.com>
blukat29
approved these changes
Nov 9, 2023
ian0371
approved these changes
Nov 9, 2023
hyeonLewis
approved these changes
Nov 10, 2023
9 tasks
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Proposed changes
Initially, LivePruning was only available for nodes starting from the genesis block, but not for those with non-empty chaindata (current block number > genesis block). This PR now allows for easy switching between LivePruning and non-LivePruning, enabling greater flexibility. The following description explains how this feature functions.
In the example chain, LivePruning was initially disabled. Subsequently, the node operator restarted the node with LivePruning at block number
bx
.Before LivePruning, the node stored hashes with 32 bytes (legacy node) or 39 bytes (seven zero bytes). After block number
bx
, it switched to storing unique 39-byte hashes and began removing dirty trie nodes.The operator later restarted the node without LivePruning at block
bc
, then re-enabled LivePruning at blockbv
. After this point, the cleaner loop only removes hashes with a unique counter, within the range ofbx
tobc-1
andbv
to thecurrent block
. This ensures that nodes potentially referenced by others are not removed.Usage
Changed
Removed database write and delete operations that indicate LivePruning enable and disable.
Types of changes
Please put an x in the boxes related to your change.
Checklist
Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.
$ make test
)Related issues
Further comments
If this is a relatively large or complex change, kick off the discussion by explaining why you chose the solution you did and what alternatives you considered, etc...