From e20d0689e8b8bcecce8fdaff2ee7b3548bdbbdb2 Mon Sep 17 00:00:00 2001 From: Dylan De Faoite Date: Wed, 4 Mar 2026 21:18:59 +0000 Subject: [PATCH] fix(celery): adjust try-catch logic to improve error handling Capturing the instantiation of the database and dataset manager objects inside the try-catch will cause errors if something else fails. If an exception occurs and the dataset_manager is not initialised, the code inside the catch block will fail. --- server/queue/tasks.py | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/server/queue/tasks.py b/server/queue/tasks.py index f2f3268..a089596 100644 --- a/server/queue/tasks.py +++ b/server/queue/tasks.py @@ -2,17 +2,15 @@ import pandas as pd from server.queue.celery_app import celery from server.analysis.enrichment import DatasetEnrichment +from server.db.database import PostgresConnector +from server.core.datasets import DatasetManager @celery.task(bind=True, max_retries=3) def process_dataset(self, dataset_id: int, posts: list, topics: dict): + db = PostgresConnector() + dataset_manager = DatasetManager(db) try: - from server.db.database import PostgresConnector - from server.core.datasets import DatasetManager - - db = PostgresConnector() - dataset_manager = DatasetManager(db) - df = pd.DataFrame(posts) processor = DatasetEnrichment(df, topics)