From 27f4beb50ca99da02cf1d12da8f8f80251a6c465 Mon Sep 17 00:00:00 2001 From: sanj <67624670+iodrift@users.noreply.github.com> Date: Mon, 12 Aug 2024 22:31:07 -0700 Subject: [PATCH] Auto-update: Mon Aug 12 22:31:07 PDT 2024 --- sijapi/database.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/sijapi/database.py b/sijapi/database.py index fcbdc5f..78a58f6 100644 --- a/sijapi/database.py +++ b/sijapi/database.py @@ -53,9 +53,10 @@ class QueryTracking(Base): query = Column(Text, nullable=False) args = Column(JSONB) executed_at = Column(DateTime(timezone=True), server_default=func.now()) - completed_by = Column(ARRAY(String), default=[]) + completed_by = Column(JSONB, default={}) result_checksum = Column(String(32)) + class Database: @classmethod def init(cls, config_name: str): @@ -169,18 +170,22 @@ class Database: l.error(f"Error in async sync operations: {str(e)}") l.error(f"Traceback: {traceback.format_exc()}") - async def add_query_to_tracking(self, query: str, kwargs: dict): + + + async def add_query_to_tracking(self, query: str, kwargs: dict, result_checksum: str = None): async with self.sessions[self.local_ts_id]() as session: new_query = QueryTracking( - ts_id=self.local_ts_id, + origin_ts_id=self.local_ts_id, query=query, args=json_dumps(kwargs), - completed_by={self.local_ts_id: True} + completed_by={self.local_ts_id: True}, + result_checksum=result_checksum ) session.add(new_query) await session.commit() l.info(f"Added query to tracking: {query[:50]}...") + async def sync_db(self): current_time = time.time() if current_time - self.last_sync_time < 30: