use crate::storage_adapter::StorageSpace;
pub const RETIRED_JSON_SPACE: StorageSpace = crate::storage_spaces::RETIRED_JSON_SPACE;
pub const TRACKED_STATE_TREE_CHUNK_SPACE: StorageSpace =
crate::tracked_state::TRACKED_STATE_TREE_CHUNK_SPACE;
pub const REPOSITORY_PROTOCOL_SPACE: StorageSpace = crate::init::REPOSITORY_PROTOCOL_SPACE;
pub const TRACKED_STATE_CHANGE_LOCATOR_SPACE: StorageSpace =
crate::tracked_state::TRACKED_STATE_CHANGE_LOCATOR_SPACE;
pub const TRACKED_STATE_COMMIT_DELTA_SEGMENT_SPACE: StorageSpace =
crate::tracked_state::TRACKED_STATE_COMMIT_DELTA_SEGMENT_SPACE;
pub const HOT_ROW_SPACE: StorageSpace = crate::hot_state::ROW_SPACE;
pub const HOT_FILE_SPACE: StorageSpace = crate::hot_state::FILE_SPACE;
pub const HOT_DIFF_SPACE: StorageSpace = crate::hot_state::DIFF_SPACE;
pub const TRACKED_WORKING_DIFF_MARKER_SPACE: StorageSpace =
crate::hot_state::TRACKED_WORKING_DIFF_MARKER_SPACE;
pub const CERTIFIED_ROW_BATCH_SPACE: StorageSpace = crate::hot_state::CERTIFIED_ROW_BATCH_SPACE;
pub const BRANCH_HEAD_CONTROL_SPACE: StorageSpace = crate::branch::BRANCH_HEAD_CONTROL_SPACE;
pub const HOT_DETERMINISTIC_IDENTITY_WITNESS_SPACE: StorageSpace =
crate::hot_state::DETERMINISTIC_IDENTITY_WITNESS_SPACE;
pub const HOT_COLLECTION_CONTROL_SPACE: StorageSpace = crate::hot_state::COLLECTION_CONTROL_SPACE;
pub const PACKED_CURRENT_BASE_SPACE: StorageSpace = crate::hot_state::PACKED_CURRENT_BASE_SPACE;
pub const PACKED_CURRENT_BASE_CONTROL_SPACE: StorageSpace =
crate::hot_state::PACKED_CURRENT_BASE_CONTROL_SPACE;
pub const PACKED_CURRENT_EXCLUSIVE_SCHEMA_BASE_SPACE: StorageSpace =
crate::hot_state::PACKED_CURRENT_EXCLUSIVE_SCHEMA_BASE_SPACE;
pub const ROOT_CURRENT_BASE_SPACE: StorageSpace = crate::hot_state::ROOT_CURRENT_BASE_SPACE;
pub const ROW_GROUP_MANIFEST_SPACE: StorageSpace =
crate::columnar_row_group::ROW_GROUP_MANIFEST_SPACE;
pub const ROW_GROUP_COLUMN_SPACE: StorageSpace = crate::columnar_row_group::ROW_GROUP_COLUMN_SPACE;
pub const TRACKED_STATE_COMMIT_STATE_MANIFEST_SPACE: StorageSpace =
crate::tracked_state::TRACKED_STATE_COMMIT_STATE_MANIFEST_SPACE;
pub const TRACKED_STATE_COMMIT_MUTATION_INVENTORY_SPACE: StorageSpace =
crate::tracked_state::TRACKED_STATE_COMMIT_MUTATION_INVENTORY_SPACE;
pub const MUTATION_DIRECTORY_NODE_SPACE: StorageSpace =
crate::tracked_state::MUTATION_DIRECTORY_NODE_SPACE;
pub const TRACKED_STATE_COMMIT_HISTORY_DEFERRED_SPACE: StorageSpace =
crate::tracked_state::TRACKED_STATE_COMMIT_HISTORY_DEFERRED_SPACE;
pub const CURRENT_STATE_DATA_PART_SPACE: StorageSpace =
crate::tracked_state::CURRENT_STATE_DATA_PART_SPACE;
pub const SCOPED_RANGE_NODE_SPACE: StorageSpace = crate::tracked_state::SCOPED_RANGE_NODE_SPACE;
pub const HOT_INDEX_SPACE: StorageSpace = crate::hot_state::INDEX_SPACE;
pub const BINARY_CAS_MANIFEST_SPACE: StorageSpace = crate::binary_cas::BINARY_CAS_MANIFEST_SPACE;
pub const BINARY_CAS_MANIFEST_CHUNK_SPACE: StorageSpace =
crate::binary_cas::BINARY_CAS_MANIFEST_CHUNK_SPACE;
pub const BINARY_CAS_CHUNK_SPACE: StorageSpace = crate::binary_cas::BINARY_CAS_CHUNK_SPACE;
pub const BINARY_CAS_CHUNK_PRESENCE_SPACE: StorageSpace =
crate::binary_cas::BINARY_CAS_CHUNK_PRESENCE_SPACE;
pub const BINARY_CAS_CHUNK_DEMAND_SPACE: StorageSpace =
crate::binary_cas::BINARY_CAS_CHUNK_DEMAND_SPACE;
pub const COMMIT_SPACE: StorageSpace = crate::changelog::COMMIT_SPACE;
pub const CHANGE_SPACE: StorageSpace = crate::changelog::CHANGE_SPACE;
pub const REVISION_SPACE: StorageSpace = crate::storage_adapter::REVISION_SPACE;
pub const EXECUTE_IDEMPOTENCY_RECEIPT_SPACE: StorageSpace =
crate::session::EXECUTE_IDEMPOTENCY_RECEIPT_SPACE;
pub const UPLOAD_STATE_SPACE: StorageSpace = crate::session::UPLOAD_STATE_SPACE;
pub const UPLOAD_MANIFEST_LEAF_SPACE: StorageSpace = crate::session::UPLOAD_MANIFEST_LEAF_SPACE;
pub const SYNC_SEQUENCE_SPACE: StorageSpace = crate::sync::SYNC_SEQUENCE_SPACE;
pub const SYNC_REPOSITORY_EVENT_SPACE: StorageSpace = crate::sync::SYNC_REPOSITORY_EVENT_SPACE;
pub const SYNC_REPLICA_RETIREMENT_SPACE: StorageSpace = crate::sync::SYNC_REPLICA_RETIREMENT_SPACE;
pub const SYNC_REPLICA_STATE_SPACE: StorageSpace = crate::sync::SYNC_REPLICA_STATE_SPACE;
pub const SYNC_MATERIALIZED_STATE_ALIAS_SPACE: StorageSpace =
crate::sync::SYNC_MATERIALIZED_STATE_ALIAS_SPACE;
pub const SYNC_CHECKPOINT_SOURCE_SPACE: StorageSpace = crate::sync::SYNC_CHECKPOINT_SOURCE_SPACE;
pub const SYNC_UPLOAD_GENERATION_SPACE: StorageSpace = crate::sync::SYNC_UPLOAD_GENERATION_SPACE;
pub const SYNC_UPLOAD_PROOF_SPACE: StorageSpace = crate::sync::SYNC_UPLOAD_PROOF_SPACE;
pub const PARTIAL_REPLICA_STATE_SPACE: StorageSpace = crate::sync::PARTIAL_REPLICA_STATE_SPACE;
pub const PARTIAL_BRANCH_PUSH_SPACE: StorageSpace = crate::sync::PARTIAL_BRANCH_PUSH_SPACE;
pub const PARTIAL_BRANCH_MERGE_SPACE: StorageSpace = crate::sync::PARTIAL_BRANCH_MERGE_SPACE;
pub const PARTIAL_ATTEMPT_RESTART_SPACE: StorageSpace = crate::sync::PARTIAL_ATTEMPT_RESTART_SPACE;
pub const PARTIAL_AUTHORITY_MERGE_RECEIPT_SPACE: StorageSpace =
crate::sync::PARTIAL_AUTHORITY_MERGE_RECEIPT_SPACE;
pub const PARTIAL_GLOBAL_MERGE_SPACE: StorageSpace = crate::sync::PARTIAL_GLOBAL_MERGE_SPACE;
pub const NATIVE_GLOBAL_MIGRATION_RECEIPT_SPACE: StorageSpace =
crate::sync::NATIVE_GLOBAL_MIGRATION_RECEIPT_SPACE;
pub const NATIVE_GLOBAL_RETENTION_SPACE: StorageSpace = crate::gc::NATIVE_GLOBAL_RETENTION_SPACE;
pub const NATIVE_UPLOAD_ATTEMPT_SPACE: StorageSpace = crate::gc::NATIVE_UPLOAD_ATTEMPT_SPACE;
pub const PARTIAL_READ_INTEREST_SPACE: StorageSpace = crate::sync::PARTIAL_READ_INTEREST_SPACE;
pub const CHECKPOINT_RECOVERY_REF_SPACE: StorageSpace = crate::gc::CHECKPOINT_RECOVERY_REF_SPACE;
pub const CHECKPOINT_GC_STATE_SPACE: StorageSpace = crate::gc::CHECKPOINT_GC_STATE_SPACE;
pub const COMMIT_RETIREMENT_INTENT_SPACE: StorageSpace = crate::gc::COMMIT_RETIREMENT_INTENT_SPACE;
pub const NATIVE_BASELINE_LEASE_SPACE: StorageSpace = crate::gc::NATIVE_BASELINE_LEASE_SPACE;
pub const REPOSITORY_EPOCH_SPACE: StorageSpace = crate::storage_adapter::REPOSITORY_EPOCH_SPACE;
pub const ALL_STORAGE_SPACES: &[StorageSpace] = crate::storage_spaces::ALL_STORAGE_SPACES;
#[cfg(test)]
mod tests {
use super::*;
const PUBLISHED: &[StorageSpace] = &[
RETIRED_JSON_SPACE,
TRACKED_STATE_TREE_CHUNK_SPACE,
REPOSITORY_PROTOCOL_SPACE,
TRACKED_STATE_CHANGE_LOCATOR_SPACE,
TRACKED_STATE_COMMIT_DELTA_SEGMENT_SPACE,
HOT_ROW_SPACE,
HOT_FILE_SPACE,
HOT_DIFF_SPACE,
TRACKED_WORKING_DIFF_MARKER_SPACE,
BRANCH_HEAD_CONTROL_SPACE,
HOT_COLLECTION_CONTROL_SPACE,
PACKED_CURRENT_BASE_SPACE,
PACKED_CURRENT_BASE_CONTROL_SPACE,
PACKED_CURRENT_EXCLUSIVE_SCHEMA_BASE_SPACE,
ROOT_CURRENT_BASE_SPACE,
ROW_GROUP_MANIFEST_SPACE,
ROW_GROUP_COLUMN_SPACE,
TRACKED_STATE_COMMIT_STATE_MANIFEST_SPACE,
TRACKED_STATE_COMMIT_MUTATION_INVENTORY_SPACE,
MUTATION_DIRECTORY_NODE_SPACE,
TRACKED_STATE_COMMIT_HISTORY_DEFERRED_SPACE,
CURRENT_STATE_DATA_PART_SPACE,
SCOPED_RANGE_NODE_SPACE,
HOT_INDEX_SPACE,
HOT_DETERMINISTIC_IDENTITY_WITNESS_SPACE,
BINARY_CAS_MANIFEST_SPACE,
BINARY_CAS_MANIFEST_CHUNK_SPACE,
BINARY_CAS_CHUNK_SPACE,
BINARY_CAS_CHUNK_PRESENCE_SPACE,
BINARY_CAS_CHUNK_DEMAND_SPACE,
COMMIT_SPACE,
CHANGE_SPACE,
REVISION_SPACE,
EXECUTE_IDEMPOTENCY_RECEIPT_SPACE,
UPLOAD_STATE_SPACE,
UPLOAD_MANIFEST_LEAF_SPACE,
SYNC_SEQUENCE_SPACE,
SYNC_REPOSITORY_EVENT_SPACE,
SYNC_REPLICA_STATE_SPACE,
SYNC_MATERIALIZED_STATE_ALIAS_SPACE,
SYNC_CHECKPOINT_SOURCE_SPACE,
SYNC_UPLOAD_GENERATION_SPACE,
SYNC_UPLOAD_PROOF_SPACE,
PARTIAL_REPLICA_STATE_SPACE,
PARTIAL_BRANCH_PUSH_SPACE,
PARTIAL_READ_INTEREST_SPACE,
PARTIAL_BRANCH_MERGE_SPACE,
PARTIAL_AUTHORITY_MERGE_RECEIPT_SPACE,
PARTIAL_ATTEMPT_RESTART_SPACE,
NATIVE_GLOBAL_MIGRATION_RECEIPT_SPACE,
PARTIAL_GLOBAL_MERGE_SPACE,
SYNC_REPLICA_RETIREMENT_SPACE,
CHECKPOINT_RECOVERY_REF_SPACE,
CHECKPOINT_GC_STATE_SPACE,
COMMIT_RETIREMENT_INTENT_SPACE,
crate::checkpoint::CHECKPOINT_INVENTORY_SPACE,
NATIVE_BASELINE_LEASE_SPACE,
NATIVE_UPLOAD_ATTEMPT_SPACE,
NATIVE_GLOBAL_RETENTION_SPACE,
REPOSITORY_EPOCH_SPACE,
];
#[test]
fn the_published_handles_are_exactly_the_registry() {
assert_eq!(
PUBLISHED, ALL_STORAGE_SPACES,
"the published space handles drifted from ALL_STORAGE_SPACES; \
add the new space here, or point the stale handle back at its \
registry row",
);
}
}