diff --git a/src/connectors/postgres_connector.py b/src/connectors/postgres_connector.py index c9763e3..05243f4 100644 --- a/src/connectors/postgres_connector.py +++ b/src/connectors/postgres_connector.py @@ -49,6 +49,18 @@ class PostgreSQLConnector: def __exit__(self, exc_type, exc_val, exc_tb): """Context manager exit.""" + if exc_type is None: + # No exception, commit before closing + try: + self.connection.commit() + except Exception as e: + logger.warning(f"Failed to commit on exit: {e}") + else: + # Exception occurred, rollback + try: + self.connection.rollback() + except Exception as e: + logger.warning(f"Failed to rollback on exit: {e}") self.disconnect() def execute(self, query: str, params: Optional[tuple] = None) -> None: