Enum mz_adapter::catalog::CatalogItem
source · pub enum CatalogItem {
Table(Table),
Source(Source),
Log(Log),
View(View),
MaterializedView(MaterializedView),
Sink(Sink),
Index(Index),
Type(Type),
Func(Func),
Secret(Secret),
Connection(Connection),
}
Variants§
Table(Table)
Source(Source)
Log(Log)
View(View)
MaterializedView(MaterializedView)
Sink(Sink)
Index(Index)
Type(Type)
Func(Func)
Secret(Secret)
Connection(Connection)
Implementations§
source§impl CatalogItem
impl CatalogItem
sourcepub fn typ(&self) -> CatalogItemType
pub fn typ(&self) -> CatalogItemType
Returns a string indicating the type of this catalog entry.
pub fn desc( &self, name: &FullItemName ) -> Result<Cow<'_, RelationDesc>, CatalogError>
pub fn desc_opt(&self) -> Option<Cow<'_, RelationDesc>>
pub fn func(&self, entry: &CatalogEntry) -> Result<&'static Func, CatalogError>
pub fn source_desc( &self, entry: &CatalogEntry ) -> Result<Option<&SourceDesc<ReferencedConnection>>, CatalogError>
sourcepub fn is_progress_source(&self) -> bool
pub fn is_progress_source(&self) -> bool
Reports whether this catalog entry is a progress source.
sourcepub fn references(&self) -> &ResolvedIds
pub fn references(&self) -> &ResolvedIds
Collects the identifiers of the objects that were encountered when resolving names in the item’s DDL statement.
sourcepub fn uses(&self) -> BTreeSet<GlobalId>
pub fn uses(&self) -> BTreeSet<GlobalId>
Collects the identifiers of the objects used by this CatalogItem
.
Like CatalogItem::references()
but also includes objects that are not directly
referenced. For example this will include any catalog objects used to implement functions
and casts in the item.
sourcepub fn conn_id(&self) -> Option<&IdHandle<u32>>
pub fn conn_id(&self) -> Option<&IdHandle<u32>>
Returns the connection ID that this item belongs to, if this item is temporary.
sourcepub fn is_temporary(&self) -> bool
pub fn is_temporary(&self) -> bool
Indicates whether this item is temporary or not.
pub fn rename_schema_refs( &self, database_name: &str, cur_schema_name: &str, new_schema_name: &str ) -> Result<CatalogItem, (String, String)>
sourcepub fn rename_item_refs(
&self,
from: FullItemName,
to_item_name: String,
rename_self: bool
) -> Result<CatalogItem, String>
pub fn rename_item_refs( &self, from: FullItemName, to_item_name: String, rename_self: bool ) -> Result<CatalogItem, String>
Returns a clone of self
with all instances of from
renamed to to
(with the option of including the item’s own name) or errors if request
is ambiguous.
sourcepub fn is_compute_object_on_cluster(&self) -> Option<StorageInstanceId>
pub fn is_compute_object_on_cluster(&self) -> Option<StorageInstanceId>
If the object is considered a “compute object” (i.e., it is managed by the compute controller), this function returns its cluster ID. Otherwise, it returns nothing.
This function differs from cluster_id
because while all
compute objects run on a cluster, the converse is not true.
pub fn cluster_id(&self) -> Option<StorageInstanceId>
sourcepub fn custom_logical_compaction_window(&self) -> Option<Duration>
pub fn custom_logical_compaction_window(&self) -> Option<Duration>
The custom compaction window, if any has been set.
sourcepub fn initial_logical_compaction_window(&self) -> Option<Duration>
pub fn initial_logical_compaction_window(&self) -> Option<Duration>
The initial compaction window, for objects that have one; that is, tables, sources, indexes, and MVs.
If custom_logical_compaction_window()
returns something, use
that. Otherwise, use a sensible default (currently 1s).
For objects that do not have the concept of compaction window, return nothing.
sourcepub fn is_retained_metrics_object(&self) -> bool
pub fn is_retained_metrics_object(&self) -> bool
Whether the item’s logical compaction window is controlled by the METRICS_RETENTION system var.
pub fn to_serialized(&self) -> String
pub fn into_serialized(self) -> String
Trait Implementations§
source§impl Clone for CatalogItem
impl Clone for CatalogItem
source§fn clone(&self) -> CatalogItem
fn clone(&self) -> CatalogItem
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for CatalogItem
impl Debug for CatalogItem
source§impl Serialize for CatalogItem
impl Serialize for CatalogItem
source§fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>( &self, __serializer: __S ) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where __S: Serializer,
Auto Trait Implementations§
impl !RefUnwindSafe for CatalogItem
impl Send for CatalogItem
impl Sync for CatalogItem
impl Unpin for CatalogItem
impl !UnwindSafe for CatalogItem
Blanket Implementations§
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
source§impl<T> FutureExt for T
impl<T> FutureExt for T
source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request
source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> PreferredContainer for Twhere
T: Clone,
impl<T> PreferredContainer for Twhere T: Clone,
source§impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
impl<P, R> ProtoType<R> for Pwhere R: RustType<P>,
source§fn into_rust(self) -> Result<R, TryFromProtoError>
fn into_rust(self) -> Result<R, TryFromProtoError>
RustType::from_proto
.source§fn from_rust(rust: &R) -> P
fn from_rust(rust: &R) -> P
RustType::into_proto
.