pub struct CatalogManifestStore { /* private fields */ }Expand description
Catalog view over the same append-only authority used for leader fencing.
Implementations§
Source§impl CatalogManifestStore
impl CatalogManifestStore
Sourcepub async fn operation_status(
&self,
operation_id: TopologyOperationId,
) -> Result<Option<TopologyAdmissionStatus>, TopologyError>
pub async fn operation_status( &self, operation_id: TopologyOperationId, ) -> Result<Option<TopologyAdmissionStatus>, TopologyError>
Read the definitive payload-bound status of a reserved topology request.
§Errors
Fails on unavailable/corrupt evidence or the bounded read deadline.
Sourcepub fn new(authority: Arc<LeaderLeaseStore>) -> Self
pub fn new(authority: Arc<LeaderLeaseStore>) -> Self
Share the exact append-only authority used by the leader lease manager.
Sourcepub async fn topology_state(
&self,
) -> Result<TopologyCatalogState, TopologyError>
pub async fn topology_state( &self, ) -> Result<TopologyCatalogState, TopologyError>
Read explicit logical topology metadata from the same catalog/leader authority.
§Errors
Fails closed when the authority or referenced catalog/deployment is invalid.
Sourcepub async fn live_topology_commit(
&self,
) -> Result<Option<TopologyCommit>, TopologyError>
pub async fn live_topology_commit( &self, ) -> Result<Option<TopologyCommit>, TopologyError>
Commit of a topology migration that still owns startup and recovery; None once settled.
§Errors
Fails closed when the authority or referenced topology evidence is invalid.
Sourcepub async fn topology_journal_usage(
&self,
) -> Result<TopologyJournalUsage, TopologyError>
pub async fn topology_journal_usage( &self, ) -> Result<TopologyJournalUsage, TopologyError>
Retained topology request identities against the fixed journal capacity.
§Errors
Fails closed when the authority is invalid or the read exceeds its deadline.
Sourcepub async fn committed_topology_subscriptions(
&self,
) -> Result<Vec<OutputDistributionCertificate>, TopologyError>
pub async fn committed_topology_subscriptions( &self, ) -> Result<Vec<OutputDistributionCertificate>, TopologyError>
Subscription certificates preserved by the newest committed migration.
§Errors
Fails closed when the authority or referenced migration root is invalid.
Sourcepub async fn load_with_topology(
&self,
) -> Result<Option<(CatalogManifest, TopologyCatalogState)>, TopologyError>
pub async fn load_with_topology( &self, ) -> Result<Option<(CatalogManifest, TopologyCatalogState)>, TopologyError>
Load the catalog and its topology metadata from one immutable authority snapshot.
§Errors
Fails closed on missing/corrupt content or inconsistent adoption/deployment authority.
Sourcepub async fn parent_topology_catalog(
&self,
expected_current: &CatalogManifestRef,
) -> Result<Option<CatalogManifest>, TopologyError>
pub async fn parent_topology_catalog( &self, expected_current: &CatalogManifestRef, ) -> Result<Option<CatalogManifest>, TopologyError>
Load the exact parent catalog while checking the current committed inventory.
§Errors
Rejects changed authority, invalid retained evidence or the bounded read deadline.
Sourcepub async fn original_topology_catalog(
&self,
expected_current: &CatalogManifestRef,
) -> Result<Option<CatalogManifest>, TopologyError>
pub async fn original_topology_catalog( &self, expected_current: &CatalogManifestRef, ) -> Result<Option<CatalogManifest>, TopologyError>
Load the complete adopted startup catalog while checking the exact current inventory. Removed objects remain startup assertions and are never recreated.
§Errors
Rejects changed authority, invalid retained evidence or the bounded read deadline.
Sourcepub async fn retired_topology_names(
&self,
) -> Result<BTreeSet<String>, TopologyError>
pub async fn retired_topology_names( &self, ) -> Result<BTreeSet<String>, TopologyError>
Read object names retired by the bounded, retained committed topology journal.
§Errors
Rejects invalid retained evidence, changed committed authority or the read deadline.
Sourcepub async fn retired_topology_generations(
&self,
) -> Result<BTreeMap<String, u64>, TopologyError>
pub async fn retired_topology_generations( &self, ) -> Result<BTreeMap<String, u64>, TopologyError>
Read the latest retired incarnation of each name for safe future-only recreation.
§Errors
Rejects invalid retained evidence, changed committed authority or the read deadline.
Sourcepub async fn adopt_legacy_topology(
&self,
proof: &LeaderProof,
operation_id: TopologyOperationId,
expected_manifest: &CatalogManifestRef,
expected_deployment: &str,
) -> Result<TopologyAdoptionOutcome, TopologyError>
pub async fn adopt_legacy_topology( &self, proof: &LeaderProof, operation_id: TopologyOperationId, expected_manifest: &CatalogManifestRef, expected_deployment: &str, ) -> Result<TopologyAdoptionOutcome, TopologyError>
Explicitly adopt a sealed legacy inventory without changing the processing graph.
Requires a coordinated binary upgrade; this is not runtime migration admission.
§Errors
Rejects stale leader proof, divergent reference/deployment, invalid data or authority I/O.
Sourcepub async fn load(
&self,
) -> Result<Option<CatalogManifest>, CatalogManifestError>
pub async fn load( &self, ) -> Result<Option<CatalogManifest>, CatalogManifestError>
Load the sealed catalog, or None before the first successful seal.
§Errors
Fails on object-store I/O, malformed JSON, or an invalid inventory.
Sourcepub async fn seal(
&self,
manifest: &CatalogManifest,
proof: &LeaderProof,
) -> Result<CatalogSealOutcome, CatalogManifestError>
pub async fn seal( &self, manifest: &CatalogManifest, proof: &LeaderProof, ) -> Result<CatalogSealOutcome, CatalogManifestError>
CAS-append the first inventory under an exact leader proof.
A concurrent exact inventory is idempotent. Any different winner fails closed.
§Errors
Fails for an invalid proposal, divergent winner, or object-store I/O.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for CatalogManifestStore
impl !UnwindSafe for CatalogManifestStore
impl Freeze for CatalogManifestStore
impl Send for CatalogManifestStore
impl Sync for CatalogManifestStore
impl Unpin for CatalogManifestStore
impl UnsafeUnpin for CatalogManifestStore
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Layered].