diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index b41d37df..42febf05 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -24,6 +24,7 @@ - Replaced entity with getter (#652) - Resolved TODO in Dockerfile (#680) - Resolved TODO at src/reporter/tests/test_timescale_types.py (#667) +- Resolved TODO in sql_translator.py (#710) ### Bug fixes diff --git a/src/translators/sql_translator.py b/src/translators/sql_translator.py index fe66fc03..41efd5f9 100644 --- a/src/translators/sql_translator.py +++ b/src/translators/sql_translator.py @@ -12,6 +12,7 @@ import dateutil.parser from typing import Any, List, Optional, Sequence from uuid import uuid4 +import crate from cache.factory import get_cache, is_cache_available from translators.insert_splitter import to_insert_batches @@ -1122,10 +1123,14 @@ def query(self, try: self.cursor.execute(op) + except crate.client.exceptions.ProgrammingError as e: + err_msg = self.sql_error_handler(e) + self.logger.error(str(e),exc_info=True) + entities = [] + if err_msg: + message = err_msg + except Exception as e: - # TODO due to this except in case of sql errors, - # all goes fine, and users gets 404 as result - # Reason 1: fiware_service_path column in legacy dbs. err_msg = self.sql_error_handler(e) self.logger.error(str(e), exc_info=True) entities = []