TaaviE/Loosindus

StatementError: (sqlalchemy.exc.InvalidRequestError) Can't reconnect until invalid transaction is rolled back [SQ...

Closed this issue · 2 comments

Flask-Security/Login does not roll back unexpected SSL connection losses that could be caused by various reasons.

Sentry Issue: JOLOD-1F

InvalidRequestError: Can't reconnect until invalid transaction is rolled back
  File "sqlalchemy/engine/base.py", line 1125, in _execute_context
    conn = self._revalidate_connection()
  File "sqlalchemy/engine/base.py", line 427, in _revalidate_connection
    "Can't reconnect until invalid "

StatementError: (sqlalchemy.exc.InvalidRequestError) Can't reconnect until invalid transaction is rolled back [SQL: 'SELECT "user".id AS user_id, "user".email AS user_email, "user".username AS user_username, "user".password AS user_password, "user".active AS user_active, "user".confirmed_at AS user_confirmed_at, "user".last_login_at AS user_last_login_at, "user".current_login_at AS user_current_login_at, "user".last_login_ip AS user_last_login_ip, "user".last_activity_at AS user_last_activity_at, "user".last_activity_ip AS user_last_activity_ip, "user".current_login_ip AS user_current_login_ip, "user".language AS user_language, "user".login_count AS user_login_count \nFROM "user" \nWHERE "user".id = %(id_1)s \n LIMIT %(param_1)s'] [parameters: [{}]]
(23 additional frame(s) were not displayed)
...
  File "sqlalchemy/engine/base.py", line 1413, in _handle_dbapi_exception
    exc_info
  File "sqlalchemy/util/compat.py", line 265, in raise_from_cause
    reraise(type(exception), exception, tb=exc_tb, cause=cause)
  File "sqlalchemy/util/compat.py", line 248, in reraise
    raise value.with_traceback(tb)
  File "sqlalchemy/engine/base.py", line 1125, in _execute_context
    conn = self._revalidate_connection()
  File "sqlalchemy/engine/base.py", line 427, in _revalidate_connection
    "Can't reconnect until invalid "

InvalidRequestError: Can't reconnect until invalid transaction is rolled back
  File "sqlalchemy/engine/base.py", line 1125, in _execute_context
    conn = self._revalidate_connection()
  File "sqlalchemy/engine/base.py", line 427, in _revalidate_connection
    "Can't reconnect until invalid "

StatementError: (sqlalchemy.exc.InvalidRequestError) Can't reconnect until invalid transaction is rolled back [SQL: 'SELECT "user".id AS user_id, "user".email AS user_email, "user".username AS user_username, "user".password AS user_password, "user".active AS user_active, "user".confirmed_at AS user_confirmed_at, "user".last_login_at AS user_last_login_at, "user".current_login_at AS user_current_login_at, "user".last_login_ip AS user_last_login_ip, "user".last_activity_at AS user_last_activity_at, "user".last_activity_ip AS user_last_activity_ip, "user".current_login_ip AS user_current_login_ip, "user".language AS user_language, "user".login_count AS user_login_count \nFROM "user" \nWHERE "user".id = %(id_1)s \n LIMIT %(param_1)s'] [parameters: [{}]]
(19 additional frame(s) were not displayed)
...
  File "sqlalchemy/engine/base.py", line 1413, in _handle_dbapi_exception
    exc_info
  File "sqlalchemy/util/compat.py", line 265, in raise_from_cause
    reraise(type(exception), exception, tb=exc_tb, cause=cause)
  File "sqlalchemy/util/compat.py", line 248, in reraise
    raise value.with_traceback(tb)
  File "sqlalchemy/engine/base.py", line 1125, in _execute_context
    conn = self._revalidate_connection()
  File "sqlalchemy/engine/base.py", line 427, in _revalidate_connection
    "Can't reconnect until invalid "

StatementError: (sqlalchemy.exc.InvalidRequestError) Can't reconnect until invalid transaction is rolled back [SQL: 'SELECT "user".id AS user_id, "user".email AS user_email, "user".username AS user_username, "user".password AS user_password, "user".active AS user_active, "user".confirmed_at AS user_confirmed_at, "user".last_login_at AS user_last_login_at, "user".current_login_at AS user_current_login_at, "user".last_login_ip AS user_last_login_ip, "user".last_activity_at AS user_last_activity_at, "user".last_activity_ip AS user_last_activity_ip, "user".current_login_ip AS user_current_login_ip, "user".language AS user_language, "user".login_count AS user_login_count \nFROM "user" \nWHERE "user".id = %(id_1)s \n LIMIT %(param_1)s'] [parameters: [{}]]

Sentry issue: JOLOD-8M

Fixed with SQLAlchemy pool pre-ping