Skip to content

Catching DatabaseError does not work #47

@Oskar-Bonde

Description

@Oskar-Bonde

The following code does not catch the DatabaseError:

try:
    query table that does not exists 
except DatabaseError:
    pass

Here is the error message:

[ERROR] DatabaseError: (aurora_data_api.exceptions.ER_UNDEF_TABLE) ERROR: relation "public.test" does not exist; Position: 28; SQLState: 42P01
[SQL: select schema_version from public.test;]
(Background on this error at: https://sqlalche.me/e/20/4xp6)
Traceback (most recent call last):
  File "/var/task/aws_lambda_powertools/logging/logger.py", line 468, in decorate
    return lambda_handler(event, context, *args, **kwargs)
  ...
  File "/var/task/sqlalchemy/engine/base.py", line 1416, in execute
    return meth(
  File "/var/task/sqlalchemy/sql/elements.py", line 516, in _execute_on_connection
    return connection._execute_clauseelement(
  File "/var/task/sqlalchemy/engine/base.py", line 1638, in _execute_clauseelement
    ret = self._execute_context(
  File "/var/task/sqlalchemy/engine/base.py", line 1843, in _execute_context
    return self._exec_single_context(
  File "/var/task/sqlalchemy/engine/base.py", line 1983, in _exec_single_context
    self._handle_dbapi_exception(
  File "/var/task/sqlalchemy/engine/base.py", line 2352, in _handle_dbapi_exception
    raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
  File "/var/task/sqlalchemy/engine/base.py", line 1964, in _exec_single_context
    self.dialect.do_execute(
  File "/var/task/sqlalchemy/engine/default.py", line 942, in do_execute
    cursor.execute(statement, parameters)
  File "/var/task/aurora_data_api/__init__.py", line 287, in execute
    raise self._get_database_error(e) from e

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions