diff --git a/data b/data index bba57b141..dbdbc721a 160000 --- a/data +++ b/data @@ -1 +1 @@ -Subproject commit bba57b141aed0f2fdf58ba806458ce0eca7750f4 +Subproject commit dbdbc721ab34c7928cea4c9f486f0f303bee5302 diff --git a/ferry/database/queries/create_metadata.sql b/ferry/database/queries/create_metadata.sql new file mode 100644 index 000000000..535fcf262 --- /dev/null +++ b/ferry/database/queries/create_metadata.sql @@ -0,0 +1,6 @@ +CREATE TABLE metadata ( + id SERIAL PRIMARY KEY, + last_update TIMESTAMP DEFAULT CURRENT_TIMESTAMP +); + +UPDATE metadata SET last_update = NOW() WHERE id = 1; diff --git a/ferry/database/sync_db.py b/ferry/database/sync_db.py index 4f33bf665..c65df0213 100644 --- a/ferry/database/sync_db.py +++ b/ferry/database/sync_db.py @@ -133,12 +133,19 @@ def sync_db(tables: dict[str, pd.DataFrame], database_connect_string: str): print("\033[F", end="") print("Reindexing... ✔") - # Print row counts for each table. - print("\n[Table Statistics]") with database.session_scope(db.Session) as db_session: + print("\nCreating metadata...") + with open(queries_dir / "create_metadata.sql") as file: + sql = file.read() + db_session.execute(text(sql)) + print("\033[F", end="") + print("Creating metadata... ✔") + + # Print row counts for each table. + print("\n[Table Statistics]") with open(queries_dir / "table_sizes.sql") as file: - SUMMARY_SQL = file.read() + sql = file.read() - result = db_session.execute(text(SUMMARY_SQL)) + result = db_session.execute(text(sql)) for table_counts in result: print(f"{table_counts[1]:>25} - {table_counts[2]:6} rows")