1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
//! Per-core actor runtime for Ursula.
//!
//! Module map:
//!
//! - [`cold_store`]: opendal-backed cold tier handle and object path helpers.
//! - [`request`]: HTTP/gRPC request and response value types for each engine op.
//! - [`command`]: the replicated [`GroupWriteCommand`] envelope around the
//! canonical [`ursula_stream::StreamCommand`], plus `From` conversions from
//! request values into that command.
//! - [`error`]: runtime-level error type [`RuntimeError`].
//! - [`engine`]: the `GroupEngine` trait, factory, metrics, and the boxed-future
//! type aliases that form the replaceable per-group engine boundary, plus the
//! in-memory implementation under [`engine::in_memory`].
//! - [`runtime`]: `ShardRuntime`, `RuntimeConfig`, and per-core worker spawn.
//! - [`core_worker`]: single-thread actor that owns groups for one core.
//! - [`group_actor`]: per-group mailbox actor running inside a core worker.
//! - [`ops`]: declarative manifest of the uniform runtime operations; expands
//! into the per-operation actor and client plumbing.
//! - [`metrics`]: runtime metrics shared across cores; lock-free counters.
pub use RaftUncommittedAdmission;
pub use ColdIndexPage;
pub use ColdIndexPageCache;
pub use ColdIndexPageKey;
pub use ColdIndexPageStore;
pub use ColdStoreColdIndexPageStore;
pub use InMemoryColdIndexPageStore;
pub use cold_index_prefix;
pub use load_cold_chunks_from_pages;
pub use replace_cold_chunk_index_pages;
pub use replace_cold_chunk_index_pages_with_rollback;
pub use rollback_cold_index_pages;
pub use select_cold_chunk_compaction;
pub use write_cold_chunk_index_pages;
pub use write_external_segment_index_pages;
pub use ColdReadCacheParams;
pub use ColdStore;
pub use ColdStoreEvent;
pub use ColdStoreFault;
pub use ColdStoreFaultContext;
pub use ColdStoreFaultEffect;
pub use ColdStoreHandle;
pub use ColdStoreInfo;
pub use ColdStoreOperation;
pub use new_cold_chunk_path;
pub use new_external_payload_path;
pub use spawn_cold_compaction_worker_if_configured;
pub use spawn_cold_flush_worker_if_configured;
pub use spawn_cold_gc_worker_if_configured;
pub use GroupSnapshot;
pub use GroupWriteCommand;
pub use GroupAckColdGcFuture;
pub use GroupAdvanceRetentionFuture;
pub use GroupAppendBatchFuture;
pub use GroupAppendBatchResponse;
pub use GroupAppendFuture;
pub use GroupAppendTransactionFuture;
pub use GroupBootstrapStreamFuture;
pub use GroupBucketUsageFuture;
pub use GroupCloseStreamFuture;
pub use GroupColdHotBacklogFuture;
pub use GroupCompactColdFuture;
pub use GroupCreateStreamFuture;
pub use GroupDeleteSnapshotFuture;
pub use GroupDeleteStreamFuture;
pub use GroupEngine;
pub use GroupEngineCreateFuture;
pub use GroupEngineError;
pub use GroupEngineFactory;
pub use GroupEngineMetrics;
pub use GroupFlushColdFuture;
pub use GroupGetStreamAttrsFuture;
pub use GroupHeadStreamFuture;
pub use GroupImportGroupStateFuture;
pub use GroupInfraError;
pub use GroupInstallSnapshotFuture;
pub use GroupLeaderHint;
pub use GroupPlanColdFlushFuture;
pub use GroupPlanColdGcFuture;
pub use GroupPlanNextColdFlushBatchFuture;
pub use GroupPublishSnapshotFuture;
pub use GroupPurgeBucketFuture;
pub use GroupReadSnapshotFuture;
pub use GroupReadStreamFuture;
pub use GroupReadStreamPartsFuture;
pub use GroupRequireLiveReadOwnerFuture;
pub use GroupSetBucketQuotaFuture;
pub use GroupShutdownFuture;
pub use GroupSnapshotFuture;
pub use GroupTouchStreamAccessFuture;
pub use GroupUpdateStreamAttrsFuture;
pub use GroupWriteBatchFuture;
pub use GroupWriteFuture;
pub use GroupWriteResponse;
pub use InMemoryGroupEngine;
pub use InMemoryGroupEngineFactory;
pub use ErrorStatus;
pub use RuntimeError;
pub use RuntimeMailboxSnapshot;
pub use RuntimeMetrics;
pub use RuntimeMetricsSnapshot;
pub use AckColdGcResponse;
pub use AdvanceRetentionRequest;
pub use AdvanceRetentionResponse;
pub use AppendBatchRequest;
pub use AppendBatchResponse;
pub use AppendExternalRequest;
pub use AppendRequest;
pub use AppendResponse;
pub use AppendTransactionRequest;
pub use AppendTransactionResponse;
pub use BootstrapStreamRequest;
pub use BootstrapStreamResponse;
pub use BootstrapUpdate;
pub use CloseStreamRequest;
pub use CloseStreamResponse;
pub use ColdHotBacklog;
pub use ColdWriteAdmission;
pub use CompactColdRequest;
pub use CompactColdResponse;
pub use CreateStreamExternalRequest;
pub use CreateStreamRequest;
pub use CreateStreamResponse;
pub use DeleteSnapshotRequest;
pub use DeleteStreamRequest;
pub use DeleteStreamResponse;
pub use FlushColdRequest;
pub use FlushColdResponse;
pub use GetStreamAttrsRequest;
pub use GetStreamAttrsResponse;
pub use GroupReadStreamBody;
pub use GroupReadStreamParts;
pub use HeadStreamRequest;
pub use HeadStreamResponse;
pub use ImportGroupStateRequest;
pub use ImportGroupStateResponse;
pub use PlanColdFlushRequest;
pub use PlanGroupColdFlushRequest;
pub use PublishSnapshotRequest;
pub use PublishSnapshotResponse;
pub use PurgeBucketResponse;
pub use ReadSnapshotRequest;
pub use ReadSnapshotResponse;
pub use ReadStreamRequest;
pub use ReadStreamResponse;
pub use SetBucketQuotaRequest;
pub use SetBucketQuotaResponse;
pub use StreamAppendCount;
pub use TouchStreamAccessResponse;
pub use UpdateStreamAttrsRequest;
pub use UpdateStreamAttrsResponse;
pub use PurgeBucketReport;
pub use RuntimeConfig;
pub use RuntimeThreading;
pub use ShardRuntime;
pub use InlineSnapshotStore;
pub use S3SnapshotStore;
pub use SharedSnapshotStore;
pub use SnapshotBytesIterator;
pub use SnapshotCompression;
pub use SnapshotKey;
pub use SnapshotLocation;
pub use SnapshotPointer;
pub use SnapshotReferenceConfig;
pub use SnapshotStore;
pub use SnapshotStoreError;
pub use SnapshotStoreFuture;
pub use default_snapshot_store;
pub use snapshot_store_from_config;
pub use ColdConfig;
pub use COMMITTED_WRITE_UNIT_BYTES;
pub use ColdChunkRef;
pub use ColdFlushCandidate;
pub use ColdGcEntry;
pub use ColdGcTarget;
pub use ExternalPayloadRef;
pub use ProducerRequest;
pub use StreamAttrs;
pub use StreamErrorCode;
pub use StreamErrorContext;
pub use StreamIntegritySnapshot;
pub use StreamRecordRange;
pub use StreamSnapshot;