diff --git a/crates/fuel-core/src/service/sub_services.rs b/crates/fuel-core/src/service/sub_services.rs
index 4fd45534b24..03003319235 100644
--- a/crates/fuel-core/src/service/sub_services.rs
+++ b/crates/fuel-core/src/service/sub_services.rs
@@ -182,7 +182,7 @@ pub fn init_sub_services(
let genesis_block_height = *genesis_block.header().height();
let settings = consensus_parameters_provider.clone();
let block_stream = importer_adapter.events_shared_result();
- let metadata = StructuredStorage::new(database.gas_price().clone());
+ let metadata = database.gas_price().clone();
let gas_price_service_v0 = new_gas_price_service_v0(
config.clone().into(),
@@ -190,7 +190,7 @@ pub fn init_sub_services(
settings,
block_stream,
database.gas_price().clone(),
- metadata,
+ StructuredStorage::new(metadata),
database.on_chain().clone(),
)?;
diff --git a/crates/fuel-gas-price-algorithm/src/v1.rs b/crates/fuel-gas-price-algorithm/src/v1.rs
index 10f71d1d3d9..ac670d7b38f 100644
--- a/crates/fuel-gas-price-algorithm/src/v1.rs
+++ b/crates/fuel-gas-price-algorithm/src/v1.rs
@@ -65,18 +65,20 @@ impl AlgorithmV1 {
pub type Height = u32;
pub type Bytes = u64;
+
pub trait UnrecordedBlocks {
- fn insert(&mut self, height: Height, bytes: Bytes) -> Result<(), Error>;
- fn remove(&mut self, height: &Height) -> Result