pub struct SqlCatalog { /* private fields */ }Implementations§
Source§impl SqlCatalog
impl SqlCatalog
pub async fn new( url: &str, name: &str, object_store: ObjectStoreBuilder, ) -> Result<Self, Error>
pub fn catalog_list(&self) -> Arc<SqlCatalogList>
Trait Implementations§
Source§impl Catalog for SqlCatalog
impl Catalog for SqlCatalog
Source§fn create_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
namespace: &'life1 Namespace,
properties: Option<HashMap<String, String>>,
) -> Pin<Box<dyn Future<Output = Result<HashMap<String, String>, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn create_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
namespace: &'life1 Namespace,
properties: Option<HashMap<String, String>>,
) -> Pin<Box<dyn Future<Output = Result<HashMap<String, String>, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Create a namespace in the catalog
Source§fn drop_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 Namespace,
) -> Pin<Box<dyn Future<Output = Result<(), IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn drop_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 Namespace,
) -> Pin<Box<dyn Future<Output = Result<(), IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Drop a namespace in the catalog
Source§fn load_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 Namespace,
) -> Pin<Box<dyn Future<Output = Result<HashMap<String, String>, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn load_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 Namespace,
) -> Pin<Box<dyn Future<Output = Result<HashMap<String, String>, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Load the namespace properties from the catalog
Source§fn update_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 Namespace,
_updates: Option<HashMap<String, String>>,
_removals: Option<Vec<String>>,
) -> Pin<Box<dyn Future<Output = Result<(), IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn update_namespace<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 Namespace,
_updates: Option<HashMap<String, String>>,
_removals: Option<Vec<String>>,
) -> Pin<Box<dyn Future<Output = Result<(), IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Update the namespace properties in the catalog
Source§fn namespace_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 Namespace,
) -> Pin<Box<dyn Future<Output = Result<bool, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn namespace_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
_namespace: &'life1 Namespace,
) -> Pin<Box<dyn Future<Output = Result<bool, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Check if a namespace exists
Source§fn list_tabulars<'life0, 'life1, 'async_trait>(
&'life0 self,
namespace: &'life1 Namespace,
) -> Pin<Box<dyn Future<Output = Result<Vec<Identifier>, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn list_tabulars<'life0, 'life1, 'async_trait>(
&'life0 self,
namespace: &'life1 Namespace,
) -> Pin<Box<dyn Future<Output = Result<Vec<Identifier>, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Lists all tables, views, and materialized views in the given namespace. Read more
Source§fn list_namespaces<'life0, 'life1, 'async_trait>(
&'life0 self,
_parent: Option<&'life1 str>,
) -> Pin<Box<dyn Future<Output = Result<Vec<Namespace>, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn list_namespaces<'life0, 'life1, 'async_trait>(
&'life0 self,
_parent: Option<&'life1 str>,
) -> Pin<Box<dyn Future<Output = Result<Vec<Namespace>, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Lists all namespaces under an optional parent namespace. Read more
Source§fn tabular_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
identifier: &'life1 Identifier,
) -> Pin<Box<dyn Future<Output = Result<bool, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn tabular_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
identifier: &'life1 Identifier,
) -> Pin<Box<dyn Future<Output = Result<bool, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Checks if a table, view, or materialized view exists in the catalog. Read more
Source§fn drop_table<'life0, 'life1, 'async_trait>(
&'life0 self,
identifier: &'life1 Identifier,
) -> Pin<Box<dyn Future<Output = Result<(), IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn drop_table<'life0, 'life1, 'async_trait>(
&'life0 self,
identifier: &'life1 Identifier,
) -> Pin<Box<dyn Future<Output = Result<(), IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Drops a table from the catalog and deletes all associated data and metadata files. Read more
Source§fn drop_view<'life0, 'life1, 'async_trait>(
&'life0 self,
identifier: &'life1 Identifier,
) -> Pin<Box<dyn Future<Output = Result<(), IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn drop_view<'life0, 'life1, 'async_trait>(
&'life0 self,
identifier: &'life1 Identifier,
) -> Pin<Box<dyn Future<Output = Result<(), IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Drops a view from the catalog and deletes its metadata. Read more
Source§fn drop_materialized_view<'life0, 'life1, 'async_trait>(
&'life0 self,
identifier: &'life1 Identifier,
) -> Pin<Box<dyn Future<Output = Result<(), IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn drop_materialized_view<'life0, 'life1, 'async_trait>(
&'life0 self,
identifier: &'life1 Identifier,
) -> Pin<Box<dyn Future<Output = Result<(), IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Drops a materialized view from the catalog and deletes its metadata and data files. Read more
Source§fn load_tabular<'life0, 'async_trait>(
self: Arc<Self>,
identifier: &'life0 Identifier,
) -> Pin<Box<dyn Future<Output = Result<Tabular, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn load_tabular<'life0, 'async_trait>(
self: Arc<Self>,
identifier: &'life0 Identifier,
) -> Pin<Box<dyn Future<Output = Result<Tabular, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Loads a table, view, or materialized view from the catalog. Read more
Source§fn create_table<'async_trait>(
self: Arc<Self>,
identifier: Identifier,
create_table: CreateTable,
) -> Pin<Box<dyn Future<Output = Result<Table, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
fn create_table<'async_trait>(
self: Arc<Self>,
identifier: Identifier,
create_table: CreateTable,
) -> Pin<Box<dyn Future<Output = Result<Table, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
Creates a new table in the catalog with the specified configuration. Read more
Source§fn create_view<'async_trait>(
self: Arc<Self>,
identifier: Identifier,
create_view: CreateView<Option<()>>,
) -> Pin<Box<dyn Future<Output = Result<View, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
fn create_view<'async_trait>(
self: Arc<Self>,
identifier: Identifier,
create_view: CreateView<Option<()>>,
) -> Pin<Box<dyn Future<Output = Result<View, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
Creates a new view in the catalog with the specified configuration. Read more
Source§fn create_materialized_view<'async_trait>(
self: Arc<Self>,
identifier: Identifier,
create_view: CreateMaterializedView,
) -> Pin<Box<dyn Future<Output = Result<MaterializedView, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
fn create_materialized_view<'async_trait>(
self: Arc<Self>,
identifier: Identifier,
create_view: CreateMaterializedView,
) -> Pin<Box<dyn Future<Output = Result<MaterializedView, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
Creates a new materialized view in the catalog with the specified configuration. Read more
Source§fn update_table<'async_trait>(
self: Arc<Self>,
commit: CommitTable,
) -> Pin<Box<dyn Future<Output = Result<Table, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
fn update_table<'async_trait>(
self: Arc<Self>,
commit: CommitTable,
) -> Pin<Box<dyn Future<Output = Result<Table, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
Updates a table’s metadata by applying the specified commit operation. Read more
Source§fn update_view<'async_trait>(
self: Arc<Self>,
commit: CommitView<Option<()>>,
) -> Pin<Box<dyn Future<Output = Result<View, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
fn update_view<'async_trait>(
self: Arc<Self>,
commit: CommitView<Option<()>>,
) -> Pin<Box<dyn Future<Output = Result<View, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
Updates a view’s metadata by applying the specified commit operation. Read more
Source§fn update_materialized_view<'async_trait>(
self: Arc<Self>,
commit: CommitView<FullIdentifier>,
) -> Pin<Box<dyn Future<Output = Result<MaterializedView, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
fn update_materialized_view<'async_trait>(
self: Arc<Self>,
commit: CommitView<FullIdentifier>,
) -> Pin<Box<dyn Future<Output = Result<MaterializedView, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
Updates a materialized view’s metadata by applying the specified commit operation. Read more
Source§fn register_table<'life0, 'async_trait>(
self: Arc<Self>,
identifier: Identifier,
metadata_location: &'life0 str,
) -> Pin<Box<dyn Future<Output = Result<Table, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn register_table<'life0, 'async_trait>(
self: Arc<Self>,
identifier: Identifier,
metadata_location: &'life0 str,
) -> Pin<Box<dyn Future<Output = Result<Table, IcebergError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Registers an existing table in the catalog using its metadata location. Read more
Auto Trait Implementations§
impl Freeze for SqlCatalog
impl !RefUnwindSafe for SqlCatalog
impl Send for SqlCatalog
impl Sync for SqlCatalog
impl Unpin for SqlCatalog
impl !UnwindSafe for SqlCatalog
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
Mutably borrows from an owned value. Read more
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> 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>
Converts
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>
Converts
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