MCPcopy Create free account
hub / github.com/RocketMap/RocketMap / verify_database_schema

Function verify_database_schema

pogom/models.py:938–961  ·  view source on GitHub ↗
(db)

Source from the content-addressed store, hash-verified

936
937
938def verify_database_schema(db):
939 if not Versions.table_exists():
940 db.create_tables([Versions])
941
942 if ScannedLocation.table_exists():
943 # Versions table didn't exist, but there were tables. This must mean the user
944 # is coming from a database that existed before we started tracking the schema
945 # version. Perform a full upgrade.
946 InsertQuery(Versions, {Versions.key: 'schema_version', Versions.val: 0}).execute()
947 database_migrate(db, 0)
948 else:
949 InsertQuery(Versions, {Versions.key: 'schema_version', Versions.val: db_schema_version}).execute()
950
951 else:
952 db_ver = Versions.get(Versions.key == 'schema_version').val
953
954 if db_ver < db_schema_version:
955 database_migrate(db, db_ver)
956
957 elif db_ver > db_schema_version:
958 log.error("Your database version (%i) appears to be newer than the code supports (%i).",
959 db_ver, db_schema_version)
960 log.error("Please upgrade your code base or drop all tables in your database.")
961 sys.exit(1)
962
963
964def database_migrate(db, old_ver):

Callers 1

create_tablesFunction · 0.85

Calls 1

database_migrateFunction · 0.85

Tested by

no test coverage detected