Skip to content

Commit d7f8858

Browse files
committed
apollo_l1_provider: re-write FinalityTooHigh error as LatestBlockNumberTooLow
1 parent bb4944b commit d7f8858

File tree

5 files changed

+23
-22
lines changed

5 files changed

+23
-22
lines changed

crates/apollo_central_sync/src/sources/base_layer.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@ pub enum BaseLayerSourceError {
1414
#[error("Base layer source creation error: {0}.")]
1515
BaseLayerSourceCreationError(String),
1616
#[error(
17-
"Finality is too high: finality: {finality}, latest L1 block number: \
18-
{latest_l1_block_number}"
17+
"Latest L1 block number is too low: latest L1 block number: {latest_l1_block_number}, \
18+
finality: {finality}"
1919
)]
20-
FinalityTooHigh { finality: u64, latest_l1_block_number: u64 },
20+
LatestBlockNumberTooLow { latest_l1_block_number: u64, finality: u64 },
2121
}
2222

2323
pub trait BaseLayerSourceErrorTrait: std::error::Error + Sync + Send {}
@@ -46,9 +46,9 @@ impl<
4646
.latest_l1_block_number()
4747
.await
4848
.map_err(|e| BaseLayerSourceError::BaseLayerContractError(Box::new(e)))?;
49-
let latest_l1_block_number = latest_l1_block_number
50-
.checked_sub(finality)
51-
.ok_or(BaseLayerSourceError::FinalityTooHigh { finality, latest_l1_block_number })?;
49+
let latest_l1_block_number = latest_l1_block_number.checked_sub(finality).ok_or(
50+
BaseLayerSourceError::LatestBlockNumberTooLow { latest_l1_block_number, finality },
51+
)?;
5252
// TODO(guyn): There's no way to actually get an Ok(None) from this function. Consider
5353
// adding a check against the type of error we get back from get_proved_block_at() and
5454
// converting that into Ok(None) if we are truly convinced that there are no proved blocks

crates/apollo_l1_gas_price/src/l1_gas_price_scraper.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -41,10 +41,10 @@ pub enum L1GasPriceScraperError<T: BaseLayerContract + Send + Sync> {
4141
#[error(transparent)]
4242
NetworkError(ClientError),
4343
#[error(
44-
"Finality is too high: finality: {finality}, latest L1 block number: \
45-
{latest_l1_block_number}"
44+
"Latest L1 block number is too low: latest L1 block number: {latest_l1_block_number}, \
45+
finality: {finality}"
4646
)]
47-
FinalityTooHigh { finality: u64, latest_l1_block_number: u64 },
47+
LatestBlockNumberTooLow { latest_l1_block_number: u64, finality: u64 },
4848
}
4949

5050
pub struct L1GasPriceScraper<B: BaseLayerContract> {
@@ -158,9 +158,9 @@ impl<B: BaseLayerContract + Send + Sync + Debug> L1GasPriceScraper<B> {
158158
.map_err(L1GasPriceScraperError::BaseLayerError)?;
159159
let latest_l1_block_number = latest_l1_block_number
160160
.checked_sub(self.config.finality)
161-
.ok_or(L1GasPriceScraperError::FinalityTooHigh {
162-
finality: self.config.finality,
161+
.ok_or(L1GasPriceScraperError::LatestBlockNumberTooLow {
163162
latest_l1_block_number,
163+
finality: self.config.finality,
164164
})?;
165165
Ok(latest_l1_block_number)
166166
}

crates/apollo_l1_gas_price/src/l1_gas_price_scraper_test.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -319,7 +319,7 @@ async fn base_layer_returns_block_number_below_finality_causes_error() {
319319
// The scraper should return a finality too high error.
320320
assert_matches!(
321321
scraper.update_prices(&mut block_number).await,
322-
Err(L1GasPriceScraperError::FinalityTooHigh { .. })
322+
Err(L1GasPriceScraperError::LatestBlockNumberTooLow { .. })
323323
);
324324
}
325325

crates/apollo_l1_provider/src/l1_scraper.rs

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -128,9 +128,9 @@ impl<BaseLayerType: BaseLayerContract + Send + Sync + Debug> L1Scraper<BaseLayer
128128
.await
129129
.map_err(L1ScraperError::BaseLayerError)?;
130130
let latest_l1_block_number = latest_l1_block_number.checked_sub(finality).ok_or(
131-
L1ScraperError::FinalityTooHigh {
132-
finality,
131+
L1ScraperError::LatestBlockNumberTooLow {
133132
latest_l1_block_no_finality: latest_l1_block_number,
133+
finality,
134134
},
135135
)?;
136136
debug!("Latest L1 block number: {latest_l1_block_number:?}");
@@ -259,7 +259,7 @@ impl<BaseLayerType: BaseLayerContract + Send + Sync + Debug> L1Scraper<BaseLayer
259259
.map_err(L1ScraperError::BaseLayerError)?;
260260
let latest_l1_block_number = latest_l1_block_number
261261
.checked_sub(self.config.finality)
262-
.ok_or(L1ScraperError::FinalityTooHigh {
262+
.ok_or(L1ScraperError::LatestBlockNumberTooLow {
263263
finality: self.config.finality,
264264
latest_l1_block_no_finality: latest_l1_block_number,
265265
})?;
@@ -437,10 +437,10 @@ pub enum L1ScraperError<BaseLayerType: BaseLayerContract + Send + Sync + Debug>
437437
#[error("Base layer error: {0}")]
438438
BaseLayerError(BaseLayerType::Error),
439439
#[error(
440-
"Could not find block number. Finality {finality:?}, latest block: \
441-
{latest_l1_block_no_finality:?}"
440+
"Latest L1 block number is too low: latest L1 block number: \
441+
{latest_l1_block_no_finality:?}, finality: {finality:?}"
442442
)]
443-
FinalityTooHigh { finality: u64, latest_l1_block_no_finality: L1BlockNumber },
443+
LatestBlockNumberTooLow { latest_l1_block_no_finality: L1BlockNumber, finality: u64 },
444444
#[error("Block number {block_number} not found")]
445445
LatestL1BlockNumberNoBlockFound { block_number: L1BlockNumber },
446446
#[error("Failed to calculate hash: {0}")]
@@ -462,9 +462,10 @@ impl<BaseLayerType: BaseLayerContract + Send + Sync + Debug> PartialEq
462462
fn eq(&self, other: &Self) -> bool {
463463
match (self, other) {
464464
(Self::BaseLayerError(e1), Self::BaseLayerError(e2)) => e1 == e2,
465-
(this @ Self::FinalityTooHigh { .. }, other @ Self::FinalityTooHigh { .. }) => {
466-
this == other
467-
}
465+
(
466+
this @ Self::LatestBlockNumberTooLow { .. },
467+
other @ Self::LatestBlockNumberTooLow { .. },
468+
) => this == other,
468469
(Self::HashCalculationError(e1), Self::HashCalculationError(e2)) => e1 == e2,
469470
(Self::NetworkError(e1), Self::NetworkError(e2)) => e1 == e2,
470471
(this @ Self::L1ReorgDetected { .. }, other @ Self::L1ReorgDetected { .. }) => {

crates/apollo_l1_provider/src/l1_scraper_tests.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,7 @@ async fn base_layer_returns_block_number_below_finality_causes_error() {
193193
// The scraper should return a finality too high error.
194194
assert_matches!(
195195
scraper.send_events_to_l1_provider().await,
196-
Err(L1ScraperError::FinalityTooHigh { .. })
196+
Err(L1ScraperError::LatestBlockNumberTooLow { .. })
197197
);
198198
}
199199

0 commit comments

Comments
 (0)