vastdb.transaction

VAST Database transaction.

A transcation is used as a context manager, since every Database-related operation in VAST requires a transaction.

with session.transaction() as tx:

tx.bucket(“bucket”).create_schema(“schema”)

exception vastdb.transaction.NoAdbcConnectionError[source]

Bases: Exception

No Adbc Connection Error.

class vastdb.transaction.Transaction(_rpc: Session, txid: int | None = None, _adbc_driver_path: str | None = None, _adbc_conn: AdbcConnection | None = None, _end_user: str | None = None)[source]

Bases: object

A holder of a single VAST transaction.

property active_txid: int

Return active transaction ID.

property adbc_conn: AdbcConnection

ADBC connection in transaction.

audit_log(fail_if_missing=True) Table | None[source]

Return VAST Audit Log table.

bucket(name: str) Bucket[source]

Return a VAST Bucket, if exists.

catalog(snapshot: Bucket | None = None, fail_if_missing=True) Table | None[source]

Return VAST Catalog table.

catalog_snapshots() Iterable[Bucket][source]

Return VAST Catalog bucket snapshots.

property is_active: bool

Return whether transaction is active.

table_from_metadata(metadata: TableMetadata) ITable[source]

Create Table from TableMetadata.

txid: int | None = None
exception vastdb.transaction.TransactionNotActiveError[source]

Bases: Exception

Transaction is not active error.