CockroachDB¶
CockroachDB adapters with automatic transaction retry logic. Available in asyncpg and psycopg variants.
CockroachDB + AsyncPG¶
Configuration¶
- class sqlspec.adapters.cockroach_asyncpg.CockroachAsyncpgConfig[source]¶
Bases:
AsyncDatabaseConfig[PoolConnectionProxy,Pool,CockroachAsyncpgDriver]Configuration for CockroachDB using AsyncPG.
- driver_type¶
alias of
CockroachAsyncpgDriver
- connection_type¶
alias of
PoolConnectionProxy
- __init__(*, connection_config=None, connection_instance=None, migration_config=None, statement_config=None, driver_features=None, bind_key=None, extension_config=None, observability_config=None, **kwargs)[source]¶
- provide_connection(*args, **kwargs)[source]¶
Provide a database connection context manager.
- Return type:
CockroachAsyncpgConnectionContext
- provide_session(*_args, statement_config=None, follower_reads=None, staleness=None, **_kwargs)[source]¶
Provide a database session context manager.
- Return type:
CockroachAsyncpgSessionContext
- get_signature_namespace()[source]¶
Get the signature namespace for this database configuration.
Returns a dictionary of type names to objects (classes, functions, or other callables) that should be registered with Litestar’s signature namespace to prevent serialization attempts on database-specific structures.
Driver¶
- class sqlspec.adapters.cockroach_asyncpg.CockroachAsyncpgDriver[source]¶
Bases:
AsyncpgDriverCockroachDB AsyncPG driver with retry support.
- __init__(connection, statement_config=None, driver_features=None)[source]¶
Initialize driver adapter with connection and configuration.
- Parameters:
connection¶ (
PoolConnectionProxy) – Database connection instancestatement_config¶ (
StatementConfig|None) – Statement configuration for the driverdriver_features¶ (
dict[str, typing.Any] |None) – Driver-specific features like extensions, secrets, and connection callbacksobservability¶ – Optional runtime handling lifecycle hooks, observers, and spans
- async dispatch_execute(cursor, statement)[source]¶
Execute single SQL statement.
Handles both SELECT queries and non-SELECT operations.
- async dispatch_execute_many(cursor, statement)[source]¶
Execute SQL with multiple parameter sets using AsyncPG’s executemany.
- async dispatch_execute_script(cursor, statement)[source]¶
Execute SQL script with statement splitting and parameter handling.
- handle_database_exceptions()[source]¶
Handle database exceptions with PostgreSQL error codes.
- Return type:
CockroachAsyncpgExceptionHandler
- property data_dictionary: CockroachAsyncpgDataDictionary¶
Get the data dictionary for this driver.
- Returns:
Data dictionary instance for metadata queries
Retry Configuration¶
- class sqlspec.adapters.cockroach_asyncpg.core.CockroachAsyncpgRetryConfig[source]¶
Bases:
objectCockroachDB asyncpg transaction retry configuration.
- classmethod from_features(driver_features)[source]¶
Build retry config from driver feature mappings.
- Return type:
- __init__(max_retries=10, base_delay_ms=50.0, max_delay_ms=5000.0, enable_logging=True)¶
CockroachDB + Psycopg¶
Sync Configuration¶
- class sqlspec.adapters.cockroach_psycopg.CockroachPsycopgSyncConfig[source]¶
Bases:
SyncDatabaseConfig[CrdbConnection,ConnectionPool,CockroachPsycopgSyncDriver]Configuration for CockroachDB synchronous connections using psycopg.
- driver_type¶
alias of
CockroachPsycopgSyncDriver
- __init__(*, connection_config=None, connection_instance=None, migration_config=None, statement_config=None, driver_features=None, bind_key=None, extension_config=None, observability_config=None, **kwargs)[source]¶
- provide_connection(*args, **kwargs)[source]¶
Provide a database connection context manager.
- Return type:
CockroachPsycopgSyncConnectionContext
- provide_session(*_args, statement_config=None, follower_reads=None, staleness=None, **_kwargs)[source]¶
Provide a database session context manager.
- Return type:
CockroachPsycopgSyncSessionContext
- get_signature_namespace()[source]¶
Get the signature namespace for this database configuration.
Returns a dictionary of type names to objects (classes, functions, or other callables) that should be registered with Litestar’s signature namespace to prevent serialization attempts on database-specific structures.
Async Configuration¶
- class sqlspec.adapters.cockroach_psycopg.CockroachPsycopgAsyncConfig[source]¶
Bases:
AsyncDatabaseConfig[AsyncCrdbConnection,AsyncConnectionPool,CockroachPsycopgAsyncDriver]Configuration for CockroachDB async connections using psycopg.
- driver_type¶
alias of
CockroachPsycopgAsyncDriver
- __init__(*, connection_config=None, connection_instance=None, migration_config=None, statement_config=None, driver_features=None, bind_key=None, extension_config=None, observability_config=None, **kwargs)[source]¶
- provide_connection(*args, **kwargs)[source]¶
Provide a database connection context manager.
- Return type:
CockroachPsycopgAsyncConnectionContext
- provide_session(*_args, statement_config=None, follower_reads=None, staleness=None, **_kwargs)[source]¶
Provide a database session context manager.
- Return type:
CockroachPsycopgAsyncSessionContext
- async provide_pool(*args, **kwargs)[source]¶
Provide pool instance.
- Return type:
AsyncConnectionPool
- get_signature_namespace()[source]¶
Get the signature namespace for this database configuration.
Returns a dictionary of type names to objects (classes, functions, or other callables) that should be registered with Litestar’s signature namespace to prevent serialization attempts on database-specific structures.
Sync Driver¶
- class sqlspec.adapters.cockroach_psycopg.CockroachPsycopgSyncDriver[source]¶
Bases:
PsycopgSyncDriverCockroachDB sync driver using psycopg.crdb.
- handle_database_exceptions()[source]¶
Handle database-specific exceptions and wrap them appropriately.
- Return type:
CockroachPsycopgSyncExceptionHandler
- property data_dictionary: CockroachPsycopgSyncDataDictionary¶
Get the data dictionary for this driver.
- Returns:
Data dictionary instance for metadata queries
Async Driver¶
- class sqlspec.adapters.cockroach_psycopg.CockroachPsycopgAsyncDriver[source]¶
Bases:
PsycopgAsyncDriverCockroachDB async driver using psycopg.crdb.
- async dispatch_execute_many(cursor, statement)[source]¶
Execute SQL with multiple parameter sets (async).
- async dispatch_execute_script(cursor, statement)[source]¶
Execute SQL script with multiple statements (async).
- handle_database_exceptions()[source]¶
Handle database-specific exceptions and wrap them appropriately.
- Return type:
CockroachPsycopgAsyncExceptionHandler
- property data_dictionary: CockroachPsycopgAsyncDataDictionary¶
Get the data dictionary for this driver.
- Returns:
Data dictionary instance for metadata queries
Retry Configuration¶
- class sqlspec.adapters.cockroach_psycopg.core.CockroachPsycopgRetryConfig[source]¶
Bases:
objectCockroachDB psycopg transaction retry configuration.
- classmethod from_features(driver_features)[source]¶
Build retry config from driver feature mappings.
- Return type:
- __init__(max_retries=10, base_delay_ms=50.0, max_delay_ms=5000.0, enable_logging=True)¶