Při pádu během zpracování POSTu se nepošle mail
Například:
Traceback (most recent call last):
File "/aux/akce/mo/osmo/venv/lib/python3.11/site-packages/flask/app.py", line 2548, in __call__
return self.wsgi_app(environ, start_response)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/aux/akce/mo/osmo/venv/lib/python3.11/site-packages/flask/app.py", line 2528, in wsgi_app
response = self.handle_exception(e)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/aux/akce/mo/osmo/venv/lib/python3.11/site-packages/flask/app.py", line 1718, in handle_exception
self.log_exception(exc_info)
File "/aux/akce/mo/osmo/venv/lib/python3.11/site-packages/mo/web/__init__.py", line 38, in log_exception
err_attrs['User'] = f'#{g.user.user_id}'
^^^^^^^^^^^^^^
File "/aux/akce/mo/osmo/venv/lib/python3.11/site-packages/sqlalchemy/orm/attributes.py", line 482, in __get__
return self.impl.get(state, dict_)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/aux/akce/mo/osmo/venv/lib/python3.11/site-packages/sqlalchemy/orm/attributes.py", line 942, in get
value = self._fire_loader_callables(state, key, passive)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/aux/akce/mo/osmo/venv/lib/python3.11/site-packages/sqlalchemy/orm/attributes.py", line 973, in _fire_loader_callables
return state._load_expired(state, passive)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/aux/akce/mo/osmo/venv/lib/python3.11/site-packages/sqlalchemy/orm/state.py", line 712, in _load_expired
self.manager.expired_attribute_loader(self, toload, passive)
File "/aux/akce/mo/osmo/venv/lib/python3.11/site-packages/sqlalchemy/orm/loading.py", line 1451, in load_scalar_attributes
result = load_on_ident(
^^^^^^^^^^^^^^
File "/aux/akce/mo/osmo/venv/lib/python3.11/site-packages/sqlalchemy/orm/loading.py", line 407, in load_on_ident
return load_on_pk_identity(
^^^^^^^^^^^^^^^^^^^^
File "/aux/akce/mo/osmo/venv/lib/python3.11/site-packages/sqlalchemy/orm/loading.py", line 530, in load_on_pk_identity
session.execute(
File "/aux/akce/mo/osmo/venv/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 1711, in execute
conn = self._connection_for_bind(bind)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/aux/akce/mo/osmo/venv/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 1552, in _connection_for_bind
return self._transaction._connection_for_bind(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/aux/akce/mo/osmo/venv/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 721, in _connection_for_bind
self._assert_active()
File "/aux/akce/mo/osmo/venv/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 601, in _assert_active
raise sa_exc.PendingRollbackError(
sqlalchemy.exc.PendingRollbackError: This Session's transaction has been rolled back due to a previous exception during flush. To begin a
new transaction with this Session, first issue Session.rollback(). Original exception was: (psycopg2.errors.ForeignKeyViolation) update
or delete on table "users" violates foreign key constraint "points_history_participant_id_fkey" on table "points_history"
DETAIL: Key (user_id)=(46643) is still referenced from table "points_history".
[SQL: DELETE FROM users WHERE users.user_id = %(user_id)s]
[parameters: {'user_id': 46643}]
(Background on this error at: https://sqlalche.me/e/14/gkpj) (Background on this error at: https://sqlalche.me/e/14/7s2a)
2024-03-26 16:34:32 2001:718:1e03:810::e9 POST "/org/user/46643/delete" HTTP/2.0 500 t=495 rxb=136 txb=0 pid=25625 user=1