Remove dummy entries in Blockstore special columns (part 2) #33649
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.
Problem
#33511 previously attempted to make
Blockstore::open()
code remove dummy entries to enable the special case check that #33534 added. However, this change was flawed:Blockstore::initialize_transaction_status_index()
Blockstore::initialize_transaction_status_index()
would only get called if theTransactionStatusIndex
entries are not populatedTransactionStatusIndex
entries and the special columns dummy entries at the same timeThus, the logic to cleanup the dummy entries would only get called if
TransactionStatusIndex
entries are absent. But, the case where we need to clean up dummy entries is the case where TransactionStatusIndex` entries are present.Summary of Changes
TransactionStatusIndex
entriesTransactionStatusIndex
entries untouched as @CriesofCarrots previously expressed an idea to me of being able to use values in these entries to detect when the ledger is fully cleaned of old-key formats