Skip to main content

coven_replication/sync/
mod.rs

1#[cfg(test)]
2mod blob_content_hash_tests;
3// Shared backoff math: the sync loop and the blob engine's per-upload wait
4// (`crate::blob::retry`) both count attempts in multiples of one base interval,
5// so the formula is `pub(crate)`.
6pub(crate) mod backoff;
7pub mod cycle;
8pub mod store;
9// Exercises the register clock through `Database::hlc()`.
10#[cfg(test)]
11mod cycle_tests;
12mod error;
13#[cfg(test)]
14mod exact_founder_graph_tests;
15#[cfg(test)]
16mod hlc_register_tests;
17#[cfg(test)]
18mod local_replay_blob_cleanup_tests;
19#[cfg(test)]
20mod local_replay_causality_tests;
21#[cfg(test)]
22mod local_replay_invariant_tests;
23pub(crate) mod loop_policy;
24#[cfg(test)]
25mod pull_tests;
26#[cfg(test)]
27mod refresh_tests;
28#[cfg(test)]
29mod scoped_write_routing_tests;
30pub(crate) mod status;
31#[cfg(test)]
32mod store_history_checkpoint_tests;
33pub mod sync_loop;
34#[cfg(any(test, feature = "test-utils"))]
35pub mod test_helpers;
36#[cfg(any(test, feature = "test-utils"))]
37pub mod test_owner_graph;
38
39#[cfg(test)]
40mod tests;
41pub use error::SyncError;
42pub use loop_policy::{SyncLoopAlerts, SyncLoopSuccess};
43pub use status::DeviceActivity;
44pub use store::MemberAdmission;
45pub use store::Store;
46pub use store::{
47    AdmittingDeviceJoinProgress, DeviceJoinAbandonment, DeviceJoinAction, DeviceJoinActivation,
48    DeviceJoinApproval, DeviceJoinApprovalPolicy, DeviceJoinDriveOutcome, DeviceJoinError,
49    DeviceJoinJournalDatabase, DeviceJoinJournalRecord, DeviceJoinOffer, DeviceJoinOfferBundle,
50    DeviceJoinReadiness, DeviceJoinRole, DeviceJoinStatus, DeviceJoinTransportError,
51    DeviceJoinTransportKind, DeviceJoinTransportParams, DeviceJoinTransportTiming,
52    DeviceProviderAccessAdministrator, DeviceProviderAccessRequest,
53    DeviceProviderAdmissionApproval, DeviceProviderAdmissionCompletion, DeviceProviderReadiness,
54    DeviceRegistrationRequest, JoinedStore, JoiningDeviceJoinProgress,
55    JoiningDeviceJoinProgressObserver, ProviderReadyDeviceBootstrap, ProvisionalDeviceBootstrap,
56    SamePrincipalDeviceJoin,
57};
58pub use store::{
59    BlobCacheError, BlobStream, EagerCacheFillError, EagerCacheFillProgress, EagerCacheFillStatus,
60};
61pub use store::{HeldStoreCoordinate, HeldStorePosition, HeldStorePositionReason};
62pub use sync_loop::{
63    BlockedOperation, BlockedOperationId, RetryStuckReclaimError, SyncLoopFailure, SyncLoopStatus,
64};