port(storage): use the cached block height from the database at the time of creation of the view #2646
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.
Linked Issues/PRs
Description
The most important changes include adding metadata support to the
GenericDatabase
, modifying type definitions to include height metadata, and updating various methods to use the new database structure.Database Structure Improvements:
crates/fuel-core/src/database.rs
: Added metadata support to theGenericDatabase
and updated type definitions to include height metadata. This includes changes to methods such asnew
,in_memory
, andlatest_view
. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13]crates/fuel-core/src/state.rs
: Updated type definitions forIterableKeyValueView
andKeyValueView
to include height metadata. Modified theTransactableStorage
trait to use the new types. [1] [2] [3]Code Refactoring:
crates/fuel-core/src/state/generic_database.rs
: Refactored theGenericDatabase
struct to include metadata and updated various trait implementations to support the new structure. [1] [2] [3] [4] [5] [6] [7]Performance Improvements:
crates/fuel-core/src/database.rs
: Improved thelatest_height
method to use metadata for fetching the latest height, enhancing performance.Test Updates:
crates/fuel-core/src/service/genesis/importer/import_task.rs
: Updated tests to use the newKeyValueView
andIterableKeyValueView
types with height metadata.Checklist
Before requesting review
After merging, notify other teams
[Add or remove entries as needed]