44 lines
1.3 KiB
Rust
44 lines
1.3 KiB
Rust
mod config;
|
|
mod keys;
|
|
mod memory;
|
|
mod pack;
|
|
use std::collections::HashSet;
|
|
use std::path::Path;
|
|
|
|
use rocksdb::checkpoint::Checkpoint;
|
|
use rocksdb::{ColumnFamily, DB, Direction, IteratorMode, Options, WriteBatch};
|
|
use serde::{Deserialize, Serialize};
|
|
|
|
use crate::repository::blob_store::{ExternalRawStoreDb, ExternalRepoBytesDb, RawObjectStore};
|
|
|
|
use config::*;
|
|
pub use config::{
|
|
ALL_COLUMN_FAMILY_NAMES, CF_MANIFEST_ANTI_ROLLBACK, CF_RAW_BY_HASH, CF_REPOSITORY_VIEW,
|
|
CF_RRDP_SOURCE, CF_RRDP_SOURCE_MEMBER, CF_RRDP_URI_OWNER, column_family_descriptors,
|
|
};
|
|
use keys::*;
|
|
pub(crate) use memory::memory_db_snapshot_for_column_families;
|
|
pub use memory::{
|
|
RocksDbColumnFamilyMemoryProperties, RocksDbMemoryDbSnapshot, RocksDbMemoryProperties,
|
|
RocksDbMemorySnapshot, RocksDbMemoryTotals,
|
|
};
|
|
use pack::compute_sha256_32;
|
|
pub use pack::{PackBytes, PackFile, PackTime};
|
|
|
|
pub struct RocksStore {
|
|
db: DB,
|
|
external_raw_store: Option<ExternalRawStoreDb>,
|
|
external_repo_bytes: Option<ExternalRepoBytesDb>,
|
|
}
|
|
include!("storage/models_core.rs");
|
|
include!("storage/models_summary.rs");
|
|
include!("storage/store_lifecycle.rs");
|
|
include!("storage/store_repository.rs");
|
|
include!("storage/store_manifest.rs");
|
|
include!("storage/store_transport_rrdp.rs");
|
|
include!("storage/verification.rs");
|
|
|
|
#[cfg(test)]
|
|
#[path = "storage/tests.rs"]
|
|
mod tests;
|