From 61fa5139cbcf040776886e43b255fb8cf780b17b Mon Sep 17 00:00:00 2001 From: Cihan Andac Date: Mon, 11 Mar 2024 16:59:37 +0100 Subject: [PATCH] Fix: transaction commits --- backend/src/intk_vanabbe/src/intk_vanabbe/browser/admin.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/backend/src/intk_vanabbe/src/intk_vanabbe/browser/admin.py b/backend/src/intk_vanabbe/src/intk_vanabbe/browser/admin.py index 5198b4a..26457c8 100644 --- a/backend/src/intk_vanabbe/src/intk_vanabbe/browser/admin.py +++ b/backend/src/intk_vanabbe/src/intk_vanabbe/browser/admin.py @@ -1369,6 +1369,7 @@ def sync_new_objects(self, date_from, start_range="0", end_range='5000'): records = root.findall(".//record") for record in records: + transaction.begin() # Extract element dc_record = record.find(".//dc_record") log_to_file(f"{counter}. object") @@ -1399,10 +1400,13 @@ def sync_new_objects(self, date_from, start_range="0", end_range='5000'): import_one_exhibition(self, dc_record=dc_record, container=container, container_en=container_en, catalog=catalog) else: pass + + transaction.commit() except Exception as e: log_to_file( f"Error importing record: {record}. error = {e}" ) + transaction.abort() counter = counter + 1 @@ -1447,11 +1451,9 @@ def serial_import(self): log_to_file(f"Starting the sync function for the date after {date_from}") log_to_file(f"total count of objects for update = {total_count}") - transaction.begin() for offset in range(int(start_range), int(total_count), 500): try: self.sync_new_objects(start_range=offset, end_range=offset+500, date_from=date_from) - transaction.commit() except Exception as e: log_to_file(f"Failure processing batch {offset}-{offset+500}: {e}")