1pub mod actor; pub mod admission_control; pub mod aries_recovery; pub mod cdc; pub mod checkpoint; pub mod columnar_compression;
82pub mod correctness_testing; pub mod database; pub mod durable_storage; pub mod durability_contract; pub mod encryption; pub mod ffi;
88pub mod group_commit; pub mod hlc; pub mod hybrid_store; pub mod io_isolation; pub mod ipc; #[cfg(unix)]
94pub mod ipc_server; pub mod learned_index_integration;
96pub mod lock; pub mod lscs;
98pub mod mvcc_concurrent; pub mod mvcc_new;
100pub mod mvcc_snapshot;
101pub mod page_manager;
102pub mod pitr; pub mod production_wal; pub mod ssi; pub mod ssi_scaling; pub mod storage_engine;
107pub mod streaming_iterator; pub mod transaction; pub mod txn_arena; pub mod txn_wal;
111pub mod upgrade_contract; pub mod wal_fencing; pub mod wal_integration;
114pub mod zero_copy_safety; pub mod adaptive_learned_index;
118pub mod adaptive_memtable; pub mod deferred_index; pub mod dirty_tracking; pub mod index_policy; pub mod queue_index; pub mod batch_wal; pub mod key_buffer; pub mod lockfree_memtable; pub mod packed_row; pub mod clr_learned_index; pub mod lockfree_epoch; pub mod hierarchical_ts; pub mod shard_coalesced; pub mod polymorphic_value; pub mod epoch_arena; pub mod stratified_skiplist; pub mod columnar_wal; pub mod generational_slab; pub mod rl_workload; #[cfg(unix)]
140pub mod io_uring_wal; pub mod cow_btree; pub mod epoch_mvcc; pub mod page_cache; pub mod row_format; pub mod tiered_memtable; pub mod tournament_tree; pub mod vectorized_scan; pub mod zero_copy_serde; pub mod namespace; pub mod backend;
157pub mod backup;
158pub mod block_checksum;
159pub mod bloom;
160pub mod compression;
161pub mod dict_compression;
162pub mod direct_io;
163#[cfg(unix)]
164pub mod io_uring;
165pub mod manifest;
166pub mod memory;
167pub mod parallel_merge;
168pub mod payload;
169pub mod prefetch;
170pub mod sketches;
171pub mod two_level_index;
172pub mod validation;
173pub mod version_store;
174pub mod zero_copy;
175
176pub use columnar_compression::{
178 ColumnEncoder, DeltaEncoder, DictionaryEncoder, EncodingStats, EncodingType, RleEncoder,
179};
180pub use learned_index_integration::{
181 HybridIndex, IndexManager, IndexType, KeyStats, PointLookupExecutor,
182};
183pub use lscs::{
184 ColumnDef, ColumnGroup, ColumnType, ColumnarMemtable, Lscs, LscsConfig, LscsRecoveryStats,
185 LscsStats, TableSchema,
186};
187#[allow(deprecated)]
188pub use mvcc_snapshot::{
189 MvccStore, Snapshot as MvccSnapshot, Timestamp, TransactionManager, TxnId, TxnStatus,
190 VersionChain, VersionInfo,
191};
192pub use page_manager::{
193 DEFAULT_PAGE_SIZE, DbHeader, FORMAT_VERSION, FreePageHeader, PageId, PageManager,
194 PageManagerStats, PageType, SOCHDB_MAGIC,
195};
196pub use storage_engine::{
197 ColumnId, ColumnIterator, Row, RowId, StorageEngine, StorageEngineType, StorageStats,
198 TxnHandle, open_storage_engine,
199};
200pub use transaction::{
201 DurabilityLevel, IsolationLevel, RecoveryStats as TxnRecoveryStats, TransactionCoordinator,
202 TransactionHandle,
203};
204pub use txn_wal::{CrashRecoveryStats, TxnWal, TxnWalBuffer, TxnWalEntry, TxnWalStats};
205pub use wal_integration::{
206 GroupCommitBuffer, MvccTransactionManager, RecoveryStats, Transaction, TxnState,
207 WalStorageManager,
208};
209
210pub use adaptive_learned_index::{AdaptiveLearnedIndex, LearnedIndexStats, PiecewiseLinearModel};
212pub use adaptive_memtable::{
213 AdaptiveMemtableConfig, AdaptiveMemtableSizer, AdaptiveMemtableStats,
214 DEFAULT_BASE_SIZE, MAX_MEMTABLE_SIZE, MIN_MEMTABLE_SIZE,
215};
216pub use batch_wal::{
217 BatchAccumulator, BatchedWalReader, BatchedWalStats, BatchedWalWriter, ConcurrentBatchedWal,
218 DEFAULT_MAX_BATCH_BYTES, DEFAULT_MAX_BATCH_SIZE,
219};
220pub use clr_learned_index::{ClrIndex, ClrLookupResult, ClrStats, IndexedSortedRun};
221pub use key_buffer::{
222 ArenaKey,
223 ArenaKeyHandle,
224 BatchKeyGenerator,
225 InternedTablePrefix,
226 KeyArena,
228 KeyBuffer,
229 MAX_KEY_LENGTH,
230};
231pub use lockfree_memtable::{
232 HazardDomain,
233 INLINE_VALUE_SIZE,
234 LockFreeMemTable,
235 LockFreeVersion,
236 LockFreeVersionChain,
237 ValueStorage,
239};
240pub use packed_row::{
241 PackedColumnDef, PackedColumnType, PackedRow, PackedRowBuilder, PackedTableSchema,
242};
243
244pub use backend::{LocalFsBackend, ObjectMetadata, StorageBackend};
246pub use backup::{BackupManager, BackupMetadata};
247pub use block_checksum::{
248 BlockChecksumConfig, BlockChecksumStats, BlockType as BlockChecksumType, BlockWriter, ChecksummedBlock,
249};
250pub use bloom::{BlockedBloomFilter, BloomFilter, LevelAdaptiveFPR, UnifiedBloomFilter};
251pub use compression::{CompressionEngine, CompressionStats, StorageTier};
252pub use manifest::{FileMetadata, LsmState, Manifest, VersionEdit};
253pub use memory::{MemoryBudget, MemoryTracker, WriteBufferManager, WriteBufferStats};
254pub use mvcc_new::{
255 ColumnGroupRef, ReadVersion, Snapshot, SnapshotGuard, VersionGuard, VersionSet,
256 VersionSetStats, VersionSetStatsSnapshot,
257};
258pub use payload::{CompressionType, PayloadStats, PayloadStore};
259pub use sketches::{AdaptiveSketch, CountMinSketch, DDSketch, ExponentialHistogram, HyperLogLog};
260pub use two_level_index::{
261 BlockIndexEntry, BlockIndexReader, FencePointer, TemporalKey, TwoLevelIndex,
262};
263pub use validation::{SSTableValidator, validate_sstable_file};
264
265pub use durable_storage::{ArenaMvccMemTable, DurableStorage, EphemeralHandle, MvccMemTable, TransactionMode};
267
268pub use mvcc_concurrent::{
270 ConcurrentMvcc, HlcTimestamp, ReaderSlot,
271 ConcurrentVersionChain, ConcurrentVersionEntry,
272 VersionStore, VersionStoreStats, WriterGuard,
273};
274
275pub mod version_set;
277pub mod concurrent_art;
278pub mod sstable;
279pub mod wal_segment;
280pub mod compaction_policy;
281pub mod optimized_scan;
282
283pub use version_set::{
285 FileMetadata as VersionFileMetadata, ImmutableMemTable, ImmutableMemTableRef,
286 LevelMetadata, SuperVersion, SuperVersionHandle, VersionSet as CowVersionSet,
287};
288pub use concurrent_art::ConcurrentART;
289pub use sstable::{
290 BlockBuilder, BlockIterator, BlockHandle, BlockType,
291 FilterPolicy, BloomFilterPolicy, RibbonFilterPolicy, XorFilterPolicy, FilterReader,
292 SSTableFormat, Header, Footer, Section, SectionType,
293 SSTableBuilder, SSTableBuilderOptions, SSTableBuilderResult,
294 SSTable, TableMetadata, ReadOptions, BlockCache,
295};
296pub use wal_segment::{
297 WalSegmentManager, SegmentConfig, SegmentHeader, SegmentMetadata,
298 CheckpointRecord, SegmentStats, RecoveryIterator, WalEntry,
299};
300pub use compaction_policy::{
301 CompactionConfig, CompactionFile, CompactionJob, CompactionPicker,
302 CompactionPriority, CompactionReason, CompactionState, CompactionStats,
303 CompactionStrategy, LeveledCompactionPicker, RetentionConfig,
304 UniversalCompactionPicker, VersionPruner,
305};
306pub use optimized_scan::{
307 EntrySource, FileRange, LevelFiles, RangeScanner, ScanConfig, ScanStats,
308 TournamentTree, VersionedEntry,
309};
310pub use cow_btree::{BTreeEntry, BTreeSnapshot, CowBTree, Node, SearchResult};
311pub use epoch_mvcc::{
312 CommitResult, EpochManager, EpochMvccStore, EpochSnapshot, EpochTransaction,
313 EpochVersionChain, GcStats, StoreStats, VersionEntry,
314};
315pub use page_cache::{CacheStats, ClockProCache, CachedPage, PageId as CachePageId, PageState};
316pub use row_format::{Slot, SlotRow, SlotRowArena, SlotRowHandle, SlotRowFlags};
317pub use tiered_memtable::{HotEntry, SortedBatch, TieredMemTable};
318pub use vectorized_scan::{
319 ColumnVector, ComparisonOp, Int64Comparison, VectorBatch, VectorPredicate,
320 VectorizedScanConfig, VectorizedScanStats, DEFAULT_BATCH_SIZE,
321 SimdVisibilityFilter, SoaBatch, SoaScanIterator, SoaScanStats, SoaSource,
323 StreamingScanIterator, ValueHandle, VersionedSlice,
324};
325pub use zero_copy_serde::{
326 FieldDescriptor, MmapWalReader, SerdeStats, WalBatchReader, WalBatchWriter,
327 WalEntryBuilder, WalEntryHeader, WalEntryReader, WalEntryType, ZeroCopyHeader,
328 FORMAT_VERSION as SERDE_FORMAT_VERSION, HEADER_SIZE as SERDE_HEADER_SIZE, ZERO_COPY_MAGIC,
329};
330
331pub use txn_arena::{
333 ArenaWriteSet, BytesRef, KeyFingerprint, TxnArena, TxnWriteBuffer, WriteOp,
334};
335
336pub use dirty_tracking::{
338 BatchedDirtyTracker, DirtyEvent, DirtyTrackingStats, TxnDirtyBuffer,
339};
340
341pub use index_policy::{
343 BalancedTableIndex, IndexPolicy, SortedRun, TableIndexConfig, TableIndexRegistry,
344};
345
346pub use queue_index::{
348 CompositeQueueKey, QueueIndex, QueueIndexConfig, QueueIndexStats, QueueTableRegistry,
349};
350
351pub use cdc::{CdcConfig, CdcEmitter, CdcError, CdcEvent, CdcLog, CdcOperation, CdcSubscriber};
353
354pub use database::{
356 ColumnDef as DbColumnDef,
357 ColumnType as DbColumnType,
358 ColumnarQueryResult, Database,
360 DatabaseConfig,
361 GroupCommitSettings,
362 QueryBuilder,
363 QueryResult,
364 QueryRowIterator,
365 RecoveryStats as DbRecoveryStats,
366 Stats as DbStats,
367 SyncMode,
368 TableSchema as DbTableSchema,
369 TxnHandle as KernelTxnHandle,
370 VectorSearchResult,
371};