async_db

class mautrix.util.async_db.Database

Bases: abc.ABC

__init__(url, upgrade_table, db_args=None, log=None)
Parameters
Return type

None

abstract acquire()
Return type

mautrix.util.async_db.database.AcquireResult

classmethod create(url, *, db_args=None, upgrade_table=None, log=None)
Parameters
Return type

mautrix.util.async_db.Database

async execute(query, *args, timeout=None)
Parameters
  • query (str) –

  • args (Any) –

  • timeout (Optional[float]) –

Return type

str

async fetch(query, *args, timeout=None)
Parameters
  • query (str) –

  • args (Any) –

  • timeout (Optional[float]) –

Return type

List[Record]

async fetchrow(query, *args, timeout=None)
Parameters
  • query (str) –

  • args (Any) –

  • timeout (Optional[float]) –

Return type

Record

async fetchval(query, *args, column=0, timeout=None)
Parameters
  • query (str) –

  • args (Any) –

  • column (int) –

  • timeout (Optional[float]) –

Return type

Any

override_pool(db)
Parameters

db (mautrix.util.async_db.Database) –

Return type

None

schemes: Dict[str, Type[mautrix.util.async_db.Database]] = {'postgres': <class 'mautrix.util.async_db.PostgresDatabase'>, 'postgresql': <class 'mautrix.util.async_db.PostgresDatabase'>, 'sqlite': <class 'mautrix.util.async_db.SQLiteDatabase'>, 'sqlite3': <class 'mautrix.util.async_db.SQLiteDatabase'>}
async start()
Return type

None

abstract async stop()
Return type

None

log: logging.Logger
scheme: str
url: str
upgrade_table: mautrix.util.async_db.UpgradeTable
class mautrix.util.async_db.UpgradeTable

Bases: object

__init__(allow_unsupported=False, version_table_name='version', database_name='database', log=None)
Parameters
Return type

None

register(index=- 1, description='', _outer_fn=None, transaction=True)
Parameters
  • index (int) –

  • description (str) –

  • _outer_fn (Optional[Upgrade]) –

  • transaction (bool) –

Return type

Union[Upgrade, Callable[[Upgrade], Upgrade]]

async upgrade(db)
Parameters

db (mautrix.util.async_db.Database) –

Return type

None

upgrades: List[Upgrade]
allow_unsupported: bool
database_name: str
version_table_name: str
log: TraceLogger
mautrix.util.async_db.register_upgrade(index=- 1, description='')
Parameters
  • index (int) –

  • description (str) –

Return type

Callable[[Upgrade], Upgrade]

class mautrix.util.async_db.PostgresDatabase

Bases: mautrix.util.async_db.Database

__init__(url, upgrade_table, db_args=None, log=None)
Parameters
Return type

None

acquire()
Return type

mautrix.util.async_db.database.AcquireResult

override_pool(db)
Parameters

db (mautrix.util.async_db.PostgresDatabase) –

Return type

None

property pool: asyncpg.pool.Pool
scheme: str = 'postgres'
async start()
Return type

None

async stop()
Return type

None

class mautrix.util.async_db.SQLiteDatabase

Bases: mautrix.util.async_db.Database

__init__(url, upgrade_table, db_args=None, log=None)
Parameters
Return type

None

acquire()
Return type

mautrix.util.async_db.aiosqlite.TxnConnection

scheme = 'sqlite'
async start()
Return type

None

async stop()
Return type

None