From e7f942e636733d5dc738f9a12d3b097a9782e823 Mon Sep 17 00:00:00 2001 From: Andrey Date: Fri, 7 Feb 2025 12:53:39 +0200 Subject: [PATCH 1/4] Update delete subscriptions. --- moonstreamapi/moonstreamapi/actions.py | 38 ++++++++++++-------------- moonstreamapi/moonstreamapi/version.py | 2 +- 2 files changed, 18 insertions(+), 22 deletions(-) diff --git a/moonstreamapi/moonstreamapi/actions.py b/moonstreamapi/moonstreamapi/actions.py index f75715e0b..d4e74cb21 100644 --- a/moonstreamapi/moonstreamapi/actions.py +++ b/moonstreamapi/moonstreamapi/actions.py @@ -615,35 +615,31 @@ def delete_seer_subscription( """ ## Delete subscription from db - + associated_jobs = db_session.query(AbiSubscriptions.abi_job_id).filter( + AbiSubscriptions.subscription_id == subscription_id + ).all() + job_ids = [job_id for (job_id,) in associated_jobs] + # Delete subscription from db + try: db_session.query(AbiSubscriptions).filter( AbiSubscriptions.subscription_id == subscription_id ).delete(synchronize_session=False) db_session.commit() except Exception as e: - logger.error(f"Error delete subscription from db: {str(e)}") - db_session.rollback() - - not_connected_abi_jobs = ( - db_session.query(AbiJobs) - .join(AbiSubscriptions, AbiJobs.id == AbiSubscriptions.abi_job_id, isouter=True) - .filter(AbiSubscriptions.subscription_id == None) - .cte("not_connected_abi_jobs") - ) - - ## Delete abi jobs from db - - try: - db_session.query(AbiJobs).filter( - AbiJobs.id.in_(db_session.query(not_connected_abi_jobs.c.id)) - ).delete(synchronize_session=False) - - db_session.commit() - except Exception as e: - logger.error(f"Error delete abi jobs from db: {str(e)}") + logger.error(f"Error deleting subscription from db: {str(e)}") db_session.rollback() + return + if job_ids: + try: + db_session.query(AbiJobs).filter( + AbiJobs.id.in_(job_ids) + ).delete(synchronize_session=False) + db_session.commit() + except Exception as e: + logger.error(f"Error deleting abi jobs from db: {str(e)}") + db_session.rollback() def add_abi_to_db( db_session: Session, diff --git a/moonstreamapi/moonstreamapi/version.py b/moonstreamapi/moonstreamapi/version.py index 932ff9532..f4edd8a43 100644 --- a/moonstreamapi/moonstreamapi/version.py +++ b/moonstreamapi/moonstreamapi/version.py @@ -2,4 +2,4 @@ Moonstream library and API version. """ -MOONSTREAMAPI_VERSION = "0.4.11" +MOONSTREAMAPI_VERSION = "0.4.12" From ee8166388bc08c9337170b966488325005afad2c Mon Sep 17 00:00:00 2001 From: Andrey Date: Fri, 7 Feb 2025 12:55:13 +0200 Subject: [PATCH 2/4] Delete comment. --- moonstreamapi/moonstreamapi/actions.py | 1 - 1 file changed, 1 deletion(-) diff --git a/moonstreamapi/moonstreamapi/actions.py b/moonstreamapi/moonstreamapi/actions.py index d4e74cb21..16957396a 100644 --- a/moonstreamapi/moonstreamapi/actions.py +++ b/moonstreamapi/moonstreamapi/actions.py @@ -611,7 +611,6 @@ def delete_seer_subscription( ) -> None: """ Delete seer subscription from db - If there are no more subscriptions for this address,abi_selector delete all abis """ ## Delete subscription from db From 3210080f7d9c2191430d27df5569e57030a50086 Mon Sep 17 00:00:00 2001 From: Andrey Date: Fri, 7 Feb 2025 14:36:01 +0200 Subject: [PATCH 3/4] Remove any delete from abi_jobs. --- moonstreamapi/moonstreamapi/actions.py | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/moonstreamapi/moonstreamapi/actions.py b/moonstreamapi/moonstreamapi/actions.py index 16957396a..4a4400ece 100644 --- a/moonstreamapi/moonstreamapi/actions.py +++ b/moonstreamapi/moonstreamapi/actions.py @@ -612,13 +612,6 @@ def delete_seer_subscription( """ Delete seer subscription from db """ - - ## Delete subscription from db - associated_jobs = db_session.query(AbiSubscriptions.abi_job_id).filter( - AbiSubscriptions.subscription_id == subscription_id - ).all() - job_ids = [job_id for (job_id,) in associated_jobs] - # Delete subscription from db try: db_session.query(AbiSubscriptions).filter( @@ -630,15 +623,6 @@ def delete_seer_subscription( db_session.rollback() return - if job_ids: - try: - db_session.query(AbiJobs).filter( - AbiJobs.id.in_(job_ids) - ).delete(synchronize_session=False) - db_session.commit() - except Exception as e: - logger.error(f"Error deleting abi jobs from db: {str(e)}") - db_session.rollback() def add_abi_to_db( db_session: Session, From 9dfe09efe4bb7036584be6a1d342009c9b2f3869 Mon Sep 17 00:00:00 2001 From: Andrey Date: Fri, 7 Feb 2025 14:42:19 +0200 Subject: [PATCH 4/4] Add comment. --- moonstreamapi/moonstreamapi/actions.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/moonstreamapi/moonstreamapi/actions.py b/moonstreamapi/moonstreamapi/actions.py index 4a4400ece..a2d4ad43a 100644 --- a/moonstreamapi/moonstreamapi/actions.py +++ b/moonstreamapi/moonstreamapi/actions.py @@ -612,9 +612,10 @@ def delete_seer_subscription( """ Delete seer subscription from db """ - + ### TEMPORARY disable deleting abi jobs from db + ### TODO(ANDREY): fix this try: - db_session.query(AbiSubscriptions).filter( + db_session.query(AbiSubscriptions).filter( AbiSubscriptions.subscription_id == subscription_id ).delete(synchronize_session=False) db_session.commit() @@ -623,7 +624,6 @@ def delete_seer_subscription( db_session.rollback() return - def add_abi_to_db( db_session: Session, user_id: uuid.UUID,