Celery SQLAlchemy issue

一个基于Flask + SQLAlchemy + Celery的后端任务平台,主要用到异步运行Ansible任务。
因业务需要, 前两天升级了mysql配置,升级过程中重启了mysql服务。

下午,在执行Ansible后台任务的时候报错:

1
StatementError("(sqlalchemy.exc.InvalidRequestError) Can't reconnect until invalid transaction is rolled back")

排查下来发现,mysql重启后,如果不一并重启Flask和Celery进程,就会报出上述错误。

参考:https://groups.google.com/forum/#!topic/sqlalchemy/h9U0Kmx_vMU