Skip to content

Commit dbdb137

Browse files
Alenarsfauvel
authored andcommitted
Use new BlockNumber type in mithril-signer
Aggregator still doesn't compile.
1 parent 3156a94 commit dbdb137

10 files changed

+131
-83
lines changed

mithril-signer/src/cardano_transactions_importer.rs

Lines changed: 85 additions & 47 deletions
Large diffs are not rendered by default.

mithril-signer/src/configuration.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -132,8 +132,8 @@ impl Configuration {
132132
db_directory: PathBuf::new(),
133133
network: "devnet".to_string(),
134134
network_magic: Some(42),
135-
network_security_parameter: 2160,
136-
preload_security_parameter: 30,
135+
network_security_parameter: BlockNumber(2160),
136+
preload_security_parameter: BlockNumber(30),
137137
party_id: Some(party_id),
138138
run_interval: 5000,
139139
data_stores_directory: PathBuf::new(),
@@ -151,7 +151,7 @@ impl Configuration {
151151
metrics_server_port: 9090,
152152
allow_unparsable_block: false,
153153
enable_transaction_pruning: false,
154-
transactions_import_block_chunk_size: 1000,
154+
transactions_import_block_chunk_size: BlockNumber(1000),
155155
cardano_transactions_block_streamer_max_roll_forwards_per_poll: 1000,
156156
}
157157
}
@@ -215,16 +215,16 @@ pub struct DefaultConfiguration {
215215
pub metrics_server_port: u16,
216216

217217
/// Network security parameter
218-
pub network_security_parameter: BlockNumber,
218+
pub network_security_parameter: u64,
219219

220220
/// Transaction pruning toggle
221221
pub enable_transaction_pruning: bool,
222222

223223
/// Preload security parameter
224-
pub preload_security_parameter: BlockNumber,
224+
pub preload_security_parameter: u64,
225225

226226
/// Chunk size for importing transactions
227-
pub transactions_import_block_chunk_size: BlockNumber,
227+
pub transactions_import_block_chunk_size: u64,
228228

229229
/// The maximum number of roll forwards during a poll of the block streamer when importing transactions.
230230
pub cardano_transactions_block_streamer_max_roll_forwards_per_poll: u32,

mithril-signer/src/runtime/runner.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -577,7 +577,7 @@ mod tests {
577577
));
578578
let metrics_service = Arc::new(MetricsService::new().unwrap());
579579
let signed_entity_type_lock = Arc::new(SignedEntityTypeLock::default());
580-
let security_parameter = 0;
580+
let security_parameter = BlockNumber(0);
581581
let cardano_transactions_preloader = Arc::new(CardanoTransactionsPreloader::new(
582582
signed_entity_type_lock.clone(),
583583
transactions_importer.clone(),

mithril-signer/src/transactions_importer_by_chunk.rs

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ impl TransactionsImporter for TransactionsImporterByChunk {
4747
.highest_transaction_block_number_getter
4848
.get()
4949
.await?
50-
.unwrap_or(0);
50+
.unwrap_or(BlockNumber(0));
5151

5252
while intermediate_up_to < up_to_beacon {
5353
let next_up_to = (intermediate_up_to + self.chunk_size).min(up_to_beacon);
@@ -92,7 +92,9 @@ mod tests {
9292
})
9393
}
9494

95-
fn create_transaction_importer_mock(expected_values: Vec<u64>) -> MockTransactionImporterImpl {
95+
fn create_transaction_importer_mock(
96+
expected_values: Vec<BlockNumber>,
97+
) -> MockTransactionImporterImpl {
9698
let mut seq = Sequence::new();
9799
let mut wrapped_importer = MockTransactionImporterImpl::new();
98100
for expected_value in expected_values {
@@ -108,8 +110,8 @@ mod tests {
108110

109111
#[tokio::test]
110112
async fn test_import_nothing_to_do_when_highest_block_number_lower_or_equal_up_to_beacon() {
111-
let highest_block_number = 10;
112-
let chunk_size = 5;
113+
let highest_block_number = BlockNumber(10);
114+
let chunk_size = BlockNumber(5);
113115

114116
let highest_transaction_block_number_getter =
115117
create_highest_transaction_block_number_getter_mock(highest_block_number);
@@ -133,7 +135,7 @@ mod tests {
133135
#[tokio::test]
134136
async fn test_import_even_when_highest_block_number_is_none() {
135137
let highest_block_number = None;
136-
let chunk_size = 5;
138+
let chunk_size = BlockNumber(5);
137139
let up_to_beacon = chunk_size - 1;
138140

139141
let highest_transaction_block_number_getter = Arc::new({
@@ -156,8 +158,8 @@ mod tests {
156158

157159
#[tokio::test]
158160
async fn test_import_only_once_when_block_delta_less_than_chunk_size() {
159-
let highest_block_number = 10;
160-
let chunk_size = 5;
161+
let highest_block_number = BlockNumber(10);
162+
let chunk_size = BlockNumber(5);
161163
let up_to_beacon = highest_block_number + chunk_size - 1;
162164

163165
let highest_transaction_block_number_getter =
@@ -176,8 +178,8 @@ mod tests {
176178

177179
#[tokio::test]
178180
async fn test_import_multiple_times_when_block_delta_is_not_a_multiple_of_chunk_size() {
179-
let highest_block_number = 10;
180-
let chunk_size = 5;
181+
let highest_block_number = BlockNumber(10);
182+
let chunk_size = BlockNumber(5);
181183
let up_to_beacon = highest_block_number + chunk_size * 2 + 1;
182184

183185
let highest_transaction_block_number_getter =
@@ -200,8 +202,8 @@ mod tests {
200202

201203
#[tokio::test]
202204
async fn test_import_multiple_times_when_block_delta_is_a_multiple_of_chunk_size() {
203-
let highest_block_number = 10;
204-
let chunk_size = 5;
205+
let highest_block_number = BlockNumber(10);
206+
let chunk_size = BlockNumber(5);
205207
let up_to_beacon = highest_block_number + chunk_size * 2;
206208

207209
let highest_transaction_block_number_getter =

mithril-signer/src/transactions_importer_with_pruner.rs

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ impl TransactionsImporter for TransactionsImporterWithPruner {
5252
debug!(
5353
self.logger,
5454
"Transaction Import finished - Pruning transactions included in block range roots";
55-
"number_of_blocks_to_keep" => number_of_blocks_to_keep,
55+
"number_of_blocks_to_keep" => *number_of_blocks_to_keep,
5656
);
5757
self.transaction_pruner
5858
.prune(number_of_blocks_to_keep)
@@ -117,12 +117,15 @@ mod tests {
117117
},
118118
);
119119

120-
importer.import(100).await.expect("Import should not fail");
120+
importer
121+
.import(BlockNumber(100))
122+
.await
123+
.expect("Import should not fail");
121124
}
122125

123126
#[tokio::test]
124127
async fn test_does_prune_if_a_block_number_is_configured() {
125-
let expected_block_number: BlockNumber = 5;
128+
let expected_block_number = BlockNumber(5);
126129
let importer = TransactionsImporterWithPruner::new_with_mock(
127130
Some(expected_block_number),
128131
|mock| {
@@ -136,6 +139,9 @@ mod tests {
136139
},
137140
);
138141

139-
importer.import(100).await.expect("Import should not fail");
142+
importer
143+
.import(BlockNumber(100))
144+
.await
145+
.expect("Import should not fail");
140146
}
141147
}

mithril-signer/src/transactions_importer_with_vacuum.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,10 @@ mod tests {
122122

123123
let initial_size = db_path.metadata().unwrap().len();
124124

125-
importer.import(100).await.expect("Import should not fail");
125+
importer
126+
.import(BlockNumber(100))
127+
.await
128+
.expect("Import should not fail");
126129

127130
let after_import_size = db_path.metadata().unwrap().len();
128131

mithril-signer/tests/create_cardano_transaction_single_signature.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ mod test_extensions;
22

33
use mithril_common::{
44
crypto_helper::tests_setup,
5-
entities::{ChainPoint, Epoch, SignedEntityTypeDiscriminants, TimePoint},
5+
entities::{BlockNumber, ChainPoint, Epoch, SignedEntityTypeDiscriminants, TimePoint},
66
test_utils::MithrilFixtureBuilder,
77
};
88

@@ -24,7 +24,7 @@ async fn test_create_cardano_transaction_single_signature() {
2424
slot_number: 100,
2525
// Note: the starting block number must be greater than the cardano_transactions_signing_config.step
2626
// so first block range root computation is not on block 0.
27-
block_number: 100,
27+
block_number: BlockNumber(100),
2828
block_hash: "block_hash-100".to_string(),
2929
},
3030
};

mithril-signer/tests/create_immutable_files_full_single_signature.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ mod test_extensions;
22

33
use mithril_common::{
44
crypto_helper::tests_setup,
5-
entities::{ChainPoint, Epoch, TimePoint},
5+
entities::{BlockNumber, ChainPoint, Epoch, TimePoint},
66
test_utils::MithrilFixtureBuilder,
77
};
88

@@ -20,7 +20,7 @@ async fn test_create_immutable_files_full_single_signature() {
2020
immutable_file_number: 1,
2121
chain_point: ChainPoint {
2222
slot_number: 1,
23-
block_number: 100,
23+
block_number: BlockNumber(100),
2424
block_hash: "block_hash-100".to_string(),
2525
},
2626
};

mithril-signer/tests/era_switch.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,10 @@ mod test_extensions;
22

33
use mithril_common::{
44
crypto_helper::tests_setup,
5-
entities::{ChainPoint, Epoch, TimePoint},
5+
entities::{BlockNumber, ChainPoint, Epoch, TimePoint},
66
era::{EraMarker, SupportedEra},
77
test_utils::MithrilFixtureBuilder,
88
};
9-
109
use test_extensions::StateMachineTester;
1110

1211
#[rustfmt::skip]
@@ -20,7 +19,7 @@ async fn era_fail_at_startup() {
2019
immutable_file_number: 1,
2120
chain_point: ChainPoint {
2221
slot_number: 1,
23-
block_number: 100,
22+
block_number: BlockNumber(100),
2423
block_hash: "block_hash-100".to_string(),
2524
},
2625
};

mithril-signer/tests/test_extensions/state_machine_tester.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ use mithril_common::{
1515
chain_observer::{ChainObserver, FakeObserver},
1616
digesters::{DumbImmutableDigester, DumbImmutableFileObserver, ImmutableFileObserver},
1717
entities::{
18-
CardanoTransactionsSigningConfig, ChainPoint, Epoch, SignedEntityConfig,
18+
BlockNumber, CardanoTransactionsSigningConfig, ChainPoint, Epoch, SignedEntityConfig,
1919
SignedEntityTypeDiscriminants, SignerWithStake, SlotNumber, TimePoint,
2020
},
2121
era::{adapters::EraReaderDummyAdapter, EraChecker, EraMarker, EraReader, SupportedEra},
@@ -129,8 +129,8 @@ impl StateMachineTester {
129129
immutable_observer.clone(),
130130
));
131131
let cardano_transactions_signing_config = CardanoTransactionsSigningConfig {
132-
security_parameter: 0,
133-
step: 30,
132+
security_parameter: BlockNumber(0),
133+
step: BlockNumber(30),
134134
};
135135
let certificate_handler = Arc::new(FakeAggregator::new(
136136
SignedEntityConfig {
@@ -203,7 +203,7 @@ impl StateMachineTester {
203203
let metrics_service = Arc::new(MetricsService::new().unwrap());
204204
let expected_metrics_service = Arc::new(MetricsService::new().unwrap());
205205
let signed_entity_type_lock = Arc::new(SignedEntityTypeLock::default());
206-
let security_parameter = 0;
206+
let security_parameter = BlockNumber(0);
207207
let cardano_transactions_preloader = Arc::new(CardanoTransactionsPreloader::new(
208208
signed_entity_type_lock.clone(),
209209
transactions_importer.clone(),
@@ -451,7 +451,7 @@ impl StateMachineTester {
451451
let slot_number = block_number;
452452
ScannedBlock::new(
453453
block_hash,
454-
block_number,
454+
BlockNumber(block_number),
455455
slot_number,
456456
vec![format!("tx_hash-{block_number}-1")],
457457
)
@@ -488,7 +488,7 @@ impl StateMachineTester {
488488

489489
let chain_point = ChainPoint {
490490
slot_number: rollback_to_slot_number,
491-
block_number: rollback_to_slot_number,
491+
block_number: BlockNumber(rollback_to_slot_number),
492492
block_hash: format!("block_hash-{rollback_to_slot_number}"),
493493
};
494494
self.block_scanner.add_backward(chain_point);

0 commit comments

Comments
 (0)