I'm getting a weird error and have no idea how to handle that.
Seems like something changes between db.session.add and db.session.commit. But not sure how to prevent that. I have a feeling that is something deal with atomic transaction. But not sure how to fix that. Any suggestions?
RuntimeError: deque mutated during iteration
db.session.flush()
File "sqlalchemy/orm/scoping.py", line 162, in do
return getattr(self.registry(), name)(*args, **kwargs)
File "sqlalchemy/orm/session.py", line 2496, in flush
self._flush(objects)
File "sqlalchemy/orm/session.py", line 2637, in _flush
transaction.rollback(_capture_exception=True)
File "sqlalchemy/util/langhelpers.py", line 69, in __exit__
exc_value, with_traceback=exc_tb,
File "sqlalchemy/util/compat.py", line 178, in raise_
raise exception
File "sqlalchemy/orm/session.py", line 2597, in _flush
flush_context.execute()
File "sqlalchemy/orm/unitofwork.py", line 422, in execute
rec.execute(self)
File "sqlalchemy/orm/unitofwork.py", line 589, in execute
uow,
File "sqlalchemy/orm/persistence.py", line 264, in save_obj
) in states_to_update
File "sqlalchemy/orm/persistence.py", line 1434, in _finalize_insert_update_commands
mapper.dispatch.after_update(mapper, connection, state)
File "sqlalchemy/event/attr.py", line 321, in __call__
for fn in self.listeners: