-
Notifications
You must be signed in to change notification settings - Fork 622
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ReshardingV3] Storage - FlatState #11909
Comments
Prerequisite: Reworking flat state key prefixCurrent Situation
Goals
Proposed Changes
Implementation DetailsCurrent implementationCurrently, query to get all keys for shard_uid in range [L, R) is equivalent to iter_flat_state_entries(shard_uid_bytes + L, shard_uid_bytes + R). We needed that because of "fixed accounts" feature in shard layout. As it is now removed, shard uid is no longer required. We need to modify only the
Except for the second case, range is Translating TrieKey range [L, R) to DBCol::FlatState queriesDepends on the first byte of the keys (trie key type)
Migration Process
Resharding State Update (continuous)
For instant resharding, we are likely to know the range of accounts to remove as well. Alternative ideasThis is definitely nontrivial logic, so other helpful alternatives could be considered:
|
@Longarithm In Instant Resharding, how fast do you think can we split the queued and buffered receipts? Would we need and additional tricks to make it work? |
I think we should update these receipts lazily, as described here: #11966 |
Superseded by #12174 |
Answer questions
The text was updated successfully, but these errors were encountered: