pub struct NamespaceManifestPayload {Show 20 fields
pub namespace_id: NamespaceId,
pub content_store_id: ContentStoreId,
pub created_at_ms: u64,
pub created_by: ActorId,
pub access: NamespaceAccess,
pub fork_basis: Option<ForkBasis>,
pub status: NamespaceStatus,
pub writer: Option<WriterBlock>,
pub last_folded_wal_no: WalNo,
pub retention_floor_wal_no: WalNo,
pub manifest_no: ManifestNo,
pub compactor_epoch: u64,
pub head_seq: ChangeSeq,
pub head_commit_id: CommitId,
pub base_seq: ChangeSeq,
pub writer_epoch: WriterEpoch,
pub next_inode_id: InodeId,
pub next_run_no: RunNo,
pub retention_floor_seq: ChangeSeq,
pub runs: Vec<MetadataRunRef>,
}Expand description
Carries one complete namespace file-set description inside a manifest envelope.
See manifest publication.
Fields§
§namespace_id: NamespaceIdNamespace whose materialized state this manifest describes.
content_store_id: ContentStoreIdContent domain shared by this namespace and its forks.
created_at_ms: u64Namespace creation stamp in Unix milliseconds.
created_by: ActorIdActor that created the namespace, as supplied by the application.
access: NamespaceAccessAccess mode, fixed at creation.
fork_basis: Option<ForkBasis>Permanent fork provenance and source checkpoint identity.
status: NamespaceStatusTerminal deletion and retirement state.
writer: Option<WriterBlock>Writer that acquired the current epoch.
last_folded_wal_no: WalNoHighest WAL number represented by the runs.
retention_floor_wal_no: WalNoWAL number covered by the manifest whose head established the floor.
manifest_no: ManifestNoPositive publication number matching the manifest object key.
compactor_epoch: u64Stops a stale streaming compactor at its next check when a newer runtime claims it. Streaming compaction rebuilds a whole family group and publishes once at the end. Grep publishes each bounded step, so a lost race costs only one step.
head_seq: ChangeSeqMaterialized head sequence, or the final namespace sequence on deletion.
head_commit_id: CommitIdCommit identity used when no newer data segment exists.
base_seq: ChangeSeqOldest run sequence still represented by runs.
writer_epoch: WriterEpochCurrent writer fencing epoch.
next_inode_id: InodeIdFirst inode identity available after replaying the manifest snapshot.
next_run_no: RunNoRun number the next producer allocates. Every run’s run_no is below it.
retention_floor_seq: ChangeSeqEarliest sequence for which retained history remains readable.
runs: Vec<MetadataRunRef>Complete set of metadata runs required to reconstruct the snapshot.
Implementations§
Source§impl NamespaceManifestPayload
impl NamespaceManifestPayload
Sourcepub fn initial(
namespace_id: NamespaceId,
content_store_id: ContentStoreId,
created_at_ms: u64,
created_by: ActorId,
access: NamespaceAccess,
) -> Self
pub fn initial( namespace_id: NamespaceId, content_store_id: ContentStoreId, created_at_ms: u64, created_by: ActorId, access: NamespaceAccess, ) -> Self
Constructs manifest 1 with the root inode reserved.
Sourcepub fn ensure_successor_identity(
&self,
successor: &NamespaceManifestPayload,
) -> Result<(), ManifestIdentityDrift>
pub fn ensure_successor_identity( &self, successor: &NamespaceManifestPayload, ) -> Result<(), ManifestIdentityDrift>
Rejects changes to permanent identity and terminal lifecycle state.