Skip to content

Commit dddc0ee

Browse files
authoredJan 27, 2025
Merge pull request #2245 from input-output-hk/ensemble/move_split_snapshotter
split snapshotter
2 parents c519913 + cf2654d commit dddc0ee

File tree

18 files changed

+519
-456
lines changed

18 files changed

+519
-456
lines changed
 

‎Cargo.lock

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎mithril-aggregator/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "mithril-aggregator"
3-
version = "0.6.19"
3+
version = "0.6.20"
44
description = "A Mithril Aggregator server"
55
authors = { workspace = true }
66
edition = { workspace = true }

‎mithril-aggregator/src/artifact_builder/cardano_database.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -137,9 +137,9 @@ mod tests {
137137
use crate::{
138138
artifact_builder::{MockAncillaryFileUploader, MockImmutableFilesUploader},
139139
immutable_file_digest_mapper::MockImmutableFileDigestMapper,
140+
services::DumbSnapshotter,
140141
test_tools::TestLogger,
141142
tools::url_sanitizer::SanitizedUrlWithTrailingSlash,
142-
DumbSnapshotter,
143143
};
144144

145145
use super::*;

‎mithril-aggregator/src/artifact_builder/cardano_database_artifacts/ancillary.rs

+5-5
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ use mithril_common::{
1616

1717
use crate::{
1818
file_uploaders::{GcpUploader, LocalUploader},
19-
snapshotter::OngoingSnapshot,
20-
DumbUploader, FileUploader, Snapshotter,
19+
services::{OngoingSnapshot, Snapshotter},
20+
DumbUploader, FileUploader,
2121
};
2222

2323
/// The [AncillaryFileUploader] trait allows identifying uploaders that return locations for ancillary archive files.
@@ -211,10 +211,10 @@ mod tests {
211211
};
212212
use uuid::Uuid;
213213

214-
use crate::{
215-
test_tools::TestLogger, CompressedArchiveSnapshotter, DumbSnapshotter,
216-
SnapshotterCompressionAlgorithm,
214+
use crate::services::{
215+
CompressedArchiveSnapshotter, DumbSnapshotter, SnapshotterCompressionAlgorithm,
217216
};
217+
use crate::test_tools::TestLogger;
218218

219219
use super::*;
220220

‎mithril-aggregator/src/artifact_builder/cardano_database_artifacts/immutable.rs

+8-9
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,8 @@ use mithril_common::{
1717

1818
use crate::{
1919
file_uploaders::{GcpUploader, LocalUploader},
20-
DumbUploader, FileUploader, Snapshotter,
20+
services::Snapshotter,
21+
DumbUploader, FileUploader,
2122
};
2223

2324
fn immmutable_file_number_extractor(file_uri: &str) -> StdResult<Option<String>> {
@@ -224,11 +225,11 @@ mod tests {
224225
use mockall::predicate::{always, eq};
225226
use uuid::Uuid;
226227

227-
use crate::{
228-
snapshotter::{MockSnapshotter, OngoingSnapshot},
229-
test_tools::TestLogger,
230-
CompressedArchiveSnapshotter, DumbSnapshotter, SnapshotterCompressionAlgorithm,
228+
use crate::services::{
229+
CompressedArchiveSnapshotter, DumbSnapshotter, MockSnapshotter, OngoingSnapshot,
230+
SnapshotterCompressionAlgorithm,
231231
};
232+
use crate::test_tools::TestLogger;
232233

233234
use super::*;
234235

@@ -767,8 +768,7 @@ mod tests {
767768

768769
let url_prefix =
769770
SanitizedUrlWithTrailingSlash::parse("http://test.com:8080/base-root").unwrap();
770-
let uploader =
771-
LocalUploader::new(url_prefix, &target_dir, TestLogger::stdout()).unwrap();
771+
let uploader = LocalUploader::new(url_prefix, &target_dir, TestLogger::stdout());
772772
let location = ImmutableFilesUploader::batch_upload(
773773
&uploader,
774774
&[archive_1.clone(), archive_2.clone()],
@@ -802,8 +802,7 @@ mod tests {
802802

803803
let url_prefix =
804804
SanitizedUrlWithTrailingSlash::parse("http://test.com:8080/base-root").unwrap();
805-
let uploader =
806-
LocalUploader::new(url_prefix, &target_dir, TestLogger::stdout()).unwrap();
805+
let uploader = LocalUploader::new(url_prefix, &target_dir, TestLogger::stdout());
807806

808807
ImmutableFilesUploader::batch_upload(&uploader, &[archive])
809808
.await

‎mithril-aggregator/src/artifact_builder/cardano_immutable_files_full.rs

+6-2
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,10 @@ use std::path::Path;
77
use std::sync::Arc;
88
use thiserror::Error;
99

10-
use crate::{snapshotter::OngoingSnapshot, FileUploader, Snapshotter};
10+
use crate::{
11+
services::{OngoingSnapshot, Snapshotter},
12+
FileUploader,
13+
};
1114

1215
use super::ArtifactBuilder;
1316
use mithril_common::logging::LoggerExtensions;
@@ -178,7 +181,8 @@ mod tests {
178181
use mithril_common::{entities::CompressionAlgorithm, test_utils::fake_data};
179182

180183
use crate::{
181-
file_uploaders::MockFileUploader, test_tools::TestLogger, DumbSnapshotter, DumbUploader,
184+
file_uploaders::MockFileUploader, services::DumbSnapshotter, test_tools::TestLogger,
185+
DumbUploader,
182186
};
183187

184188
use super::*;

‎mithril-aggregator/src/dependency_injection/builder.rs

+13-13
Original file line numberDiff line numberDiff line change
@@ -75,19 +75,19 @@ use crate::{
7575
},
7676
services::{
7777
AggregatorSignableSeedBuilder, AggregatorUpkeepService, BufferedCertifierService,
78-
CardanoTransactionsImporter, CertifierService, EpochServiceDependencies, MessageService,
79-
MithrilCertifierService, MithrilEpochService, MithrilMessageService, MithrilProverService,
78+
CardanoTransactionsImporter, CertifierService, CompressedArchiveSnapshotter,
79+
DumbSnapshotter, EpochServiceDependencies, MessageService, MithrilCertifierService,
80+
MithrilEpochService, MithrilMessageService, MithrilProverService,
8081
MithrilSignedEntityService, MithrilStakeDistributionService, ProverService,
81-
SignedEntityService, SignedEntityServiceArtifactsDependencies, StakeDistributionService,
82-
UpkeepService, UsageReporter,
82+
SignedEntityService, SignedEntityServiceArtifactsDependencies, Snapshotter,
83+
SnapshotterCompressionAlgorithm, StakeDistributionService, UpkeepService, UsageReporter,
8384
},
8485
store::CertificatePendingStorer,
8586
tools::{CExplorerSignerRetriever, GenesisToolsDependency, SignersImporter},
86-
AggregatorConfig, AggregatorRunner, AggregatorRuntime, CompressedArchiveSnapshotter,
87-
Configuration, DependencyContainer, DumbSnapshotter, DumbUploader, EpochSettingsStorer,
88-
ImmutableFileDigestMapper, LocalSnapshotUploader, MetricsService, MithrilSignerRegisterer,
89-
MultiSigner, MultiSignerImpl, SingleSignatureAuthenticator, SnapshotUploaderType, Snapshotter,
90-
SnapshotterCompressionAlgorithm, VerificationKeyStorer,
87+
AggregatorConfig, AggregatorRunner, AggregatorRuntime, Configuration, DependencyContainer,
88+
DumbUploader, EpochSettingsStorer, ImmutableFileDigestMapper, LocalSnapshotUploader,
89+
MetricsService, MithrilSignerRegisterer, MultiSigner, MultiSignerImpl,
90+
SingleSignatureAuthenticator, SnapshotUploaderType, VerificationKeyStorer,
9191
};
9292

9393
const SQLITE_FILE: &str = "aggregator.sqlite3";
@@ -490,7 +490,7 @@ impl DependenciesBuilder {
490490
self.configuration.get_server_url()?,
491491
&snapshot_artifacts_dir,
492492
logger,
493-
)?))
493+
)))
494494
}
495495
}
496496
} else {
@@ -1283,7 +1283,7 @@ impl DependenciesBuilder {
12831283
ancillary_url_prefix,
12841284
&target_dir,
12851285
logger,
1286-
)?)])
1286+
))])
12871287
}
12881288
}
12891289
} else {
@@ -1321,7 +1321,7 @@ impl DependenciesBuilder {
13211321
immutable_url_prefix,
13221322
&target_dir,
13231323
logger,
1324-
)?)])
1324+
))])
13251325
}
13261326
}
13271327
} else {
@@ -1364,7 +1364,7 @@ impl DependenciesBuilder {
13641364
digests_url_prefix,
13651365
&target_dir,
13661366
logger,
1367-
)?)])
1367+
))])
13681368
}
13691369
}
13701370
} else {

‎mithril-aggregator/src/dependency_injection/containers.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -36,12 +36,12 @@ use crate::{
3636
multi_signer::MultiSigner,
3737
services::{
3838
CertifierService, EpochService, MessageService, ProverService, SignedEntityService,
39-
StakeDistributionService, TransactionStore, UpkeepService,
39+
Snapshotter, StakeDistributionService, TransactionStore, UpkeepService,
4040
},
4141
signer_registerer::SignerRecorder,
4242
store::CertificatePendingStorer,
4343
EpochSettingsStorer, MetricsService, SignerRegisterer, SignerRegistrationRoundOpener,
44-
SingleSignatureAuthenticator, Snapshotter, VerificationKeyStorer,
44+
SingleSignatureAuthenticator, VerificationKeyStorer,
4545
};
4646

4747
/// EpochServiceWrapper wraps a [EpochService]

‎mithril-aggregator/src/file_uploaders/local_snapshot_uploader.rs

+6-9
Original file line numberDiff line numberDiff line change
@@ -28,15 +28,15 @@ impl LocalSnapshotUploader {
2828
server_url_prefix: SanitizedUrlWithTrailingSlash,
2929
target_location: &Path,
3030
logger: Logger,
31-
) -> StdResult<Self> {
31+
) -> Self {
3232
let logger = logger.new_with_component_name::<Self>();
3333
debug!(logger, "New LocalSnapshotUploader created"; "server_url_prefix" => &server_url_prefix.as_str());
3434

35-
Ok(Self {
35+
Self {
3636
server_url_prefix,
3737
target_location: target_location.to_path_buf(),
3838
logger,
39-
})
39+
}
4040
}
4141
}
4242

@@ -100,8 +100,7 @@ mod tests {
100100
let url_prefix =
101101
SanitizedUrlWithTrailingSlash::parse("http://test.com:8080/base-root").unwrap();
102102
let uploader =
103-
LocalSnapshotUploader::new(url_prefix, target_dir.path(), TestLogger::stdout())
104-
.unwrap();
103+
LocalSnapshotUploader::new(url_prefix, target_dir.path(), TestLogger::stdout());
105104
let location = uploader
106105
.upload(&archive)
107106
.await
@@ -120,8 +119,7 @@ mod tests {
120119
SanitizedUrlWithTrailingSlash::parse("http://test.com:8080/base-root/").unwrap(),
121120
target_dir.path(),
122121
TestLogger::stdout(),
123-
)
124-
.unwrap();
122+
);
125123
uploader.upload(&archive).await.unwrap();
126124

127125
assert!(target_dir
@@ -140,8 +138,7 @@ mod tests {
140138
SanitizedUrlWithTrailingSlash::parse("http://test.com:8080/base-root/").unwrap(),
141139
target_dir.path(),
142140
TestLogger::stdout(),
143-
)
144-
.unwrap();
141+
);
145142
uploader
146143
.upload(source_dir.path())
147144
.await

‎mithril-aggregator/src/file_uploaders/local_uploader.rs

+6-8
Original file line numberDiff line numberDiff line change
@@ -26,15 +26,15 @@ impl LocalUploader {
2626
server_url_prefix: SanitizedUrlWithTrailingSlash,
2727
target_location: &Path,
2828
logger: Logger,
29-
) -> StdResult<Self> {
29+
) -> Self {
3030
let logger = logger.new_with_component_name::<Self>();
3131
debug!(logger, "New LocalUploader created"; "server_url_prefix" => &server_url_prefix.as_str());
3232

33-
Ok(Self {
33+
Self {
3434
server_url_prefix,
3535
target_location: target_location.to_path_buf(),
3636
logger,
37-
})
37+
}
3838
}
3939
}
4040

@@ -101,7 +101,7 @@ mod tests {
101101

102102
let url_prefix =
103103
SanitizedUrlWithTrailingSlash::parse("http://test.com:8080/base-root").unwrap();
104-
let uploader = LocalUploader::new(url_prefix, &target_dir, TestLogger::stdout()).unwrap();
104+
let uploader = LocalUploader::new(url_prefix, &target_dir, TestLogger::stdout());
105105
let location = FileUploader::upload(&uploader, &archive)
106106
.await
107107
.expect("local upload should not fail");
@@ -125,8 +125,7 @@ mod tests {
125125
SanitizedUrlWithTrailingSlash::parse("http://test.com:8080/base-root/").unwrap(),
126126
&target_dir,
127127
TestLogger::stdout(),
128-
)
129-
.unwrap();
128+
);
130129
FileUploader::upload(&uploader, &archive).await.unwrap();
131130

132131
assert!(target_dir.join(archive.file_name().unwrap()).exists());
@@ -146,8 +145,7 @@ mod tests {
146145
SanitizedUrlWithTrailingSlash::parse("http://test.com:8080/base-root/").unwrap(),
147146
&target_dir,
148147
TestLogger::stdout(),
149-
)
150-
.unwrap();
148+
);
151149
FileUploader::upload(&uploader, &source_dir)
152150
.await
153151
.expect_err("Uploading a directory should fail");

‎mithril-aggregator/src/lib.rs

-5
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ mod multi_signer;
2727
mod runtime;
2828
pub mod services;
2929
mod signer_registerer;
30-
mod snapshotter;
3130
mod store;
3231
mod tools;
3332

@@ -49,10 +48,6 @@ pub use signer_registerer::{
4948
MithrilSignerRegisterer, SignerRecorder, SignerRegisterer, SignerRegistrationError,
5049
SignerRegistrationRound, SignerRegistrationRoundOpener,
5150
};
52-
pub use snapshotter::{
53-
CompressedArchiveSnapshotter, DumbSnapshotter, SnapshotError, Snapshotter,
54-
SnapshotterCompressionAlgorithm,
55-
};
5651
pub use store::{CertificatePendingStorer, EpochSettingsStorer, VerificationKeyStorer};
5752
pub use tools::{
5853
CExplorerSignerRetriever, SignersImporter, SignersImporterPersister, SignersImporterRetriever,

‎mithril-aggregator/src/services/mod.rs

+2
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ mod message;
1616
mod prover;
1717
mod signable_builder;
1818
mod signed_entity;
19+
mod snapshotter;
1920
mod stake_distribution;
2021
mod upkeep;
2122
mod usage_reporter;
@@ -27,6 +28,7 @@ pub use message::*;
2728
pub use prover::*;
2829
pub use signable_builder::*;
2930
pub use signed_entity::*;
31+
pub use snapshotter::*;
3032
pub use stake_distribution::*;
3133
pub use upkeep::*;
3234
pub use usage_reporter::*;

0 commit comments

Comments
 (0)