Skip to content

trulens.core.database.migrations.data

trulens.core.database.migrations.data

Attributes

sql_alchemy_migration_versions module-attribute

sql_alchemy_migration_versions: List[int] = [
    1,
    2,
    3,
    4,
    5,
    6,
    7,
    8,
    9,
    10,
]

DB versions.

sqlalchemy_upgrade_paths module-attribute

sqlalchemy_upgrade_paths: Dict[
    int, Tuple[int, Callable[[DB]]]
] = {}

A DAG of upgrade functions to get to most recent DB.

Classes

Functions

_get_sql_alchemy_compatibility_version

_get_sql_alchemy_compatibility_version(version: int) -> int

Gets the last compatible version of a DB that needed data migration.

PARAMETER DESCRIPTION
version

The alembic version

TYPE: int

RETURNS DESCRIPTION
int

An alembic version of the oldest compatible DB

TYPE: int

_sql_alchemy_serialization_asserts

_sql_alchemy_serialization_asserts(db: DB) -> None

Checks that data migrated JSONs can be deserialized from DB to Python objects.

PARAMETER DESCRIPTION
db

The database object

TYPE: DB

RAISES DESCRIPTION
VersionException

raises if a serialization fails

data_migrate

data_migrate(db: DB, from_version: Optional[str])

Makes any data changes needed for upgrading from the from_version to the current version.

PARAMETER DESCRIPTION
db

The database instance.

TYPE: DB

from_version

The version to migrate data from.

TYPE: Optional[str]

RAISES DESCRIPTION
VersionException

Can raise a migration or validation upgrade error.