1mod checkpoint;
13mod client;
14mod codec;
15mod discovery;
16mod error;
17mod log;
18mod outbox;
19mod persistence;
20mod receiver;
21mod retry;
22mod snapshot;
23mod transport;
24mod types;
25mod wire;
26
27pub use checkpoint::{
28 FileSyncCheckpointStore, InMemorySyncCheckpointStore, SyncCheckpointStore,
29 SYNC_CHECKPOINT_FORMAT_V1,
30};
31pub use client::FollowerSyncClient;
32pub use discovery::{discover_dns_sync_peers, SyncPeerAddress, SyncPeerScheme};
33pub use error::{SyncError, SyncResult};
34pub use log::{
35 FileReplicationLog, InMemoryReplicationLog, ReplicationLog, REPLICATION_LOG_FORMAT_V1,
36};
37pub use outbox::{FileSyncOutbox, InMemorySyncOutbox, SyncOutbox, SYNC_OUTBOX_FORMAT_V1};
38pub use receiver::{SyncReceiveAck, SyncReceiverState};
39pub use retry::{SyncPushMetrics, SyncRetryPolicy};
40pub use snapshot::{ReplicationSnapshot, ReplicationSnapshotRecord, SYNC_SNAPSHOT_FORMAT_V1};
41pub use transport::{decode_sync_message, HttpSyncTransport, SyncTransport};
42pub use types::{
43 compute_events_hash, HeartbeatMessage, LeaderElection, NodeRole, PeerInfo, SyncMessage,
44 SyncStatus,
45};
46pub use wire::{
47 decode_sync_envelope, encode_sync_envelope_v1, SyncEnvelopeV1, SYNC_WIRE_SCHEMA_V1,
48};
49
50#[cfg(test)]
51pub(crate) use transport::read_http_request_body;
52
53#[cfg(test)]
54mod sync_tests;