1
liuguichao 2019-06-05 13:32:34 +08:00
|
2
duyuyouci OP @liuguichao 感谢🙏,我研究研究
|
4
robinlovemaggie 2019-06-05 15:09:40 +08:00
字面意思:因为(查询)结果对象没有返回数据行,所以被自动关闭。这不像是错误,倒是像是 warning。
|
5
duyuyouci OP |
6
duyuyouci OP @robinlovemaggie 确实不会引起系统错误,但是会影响用户使用😂
|
7
rogwan 2019-06-05 16:41:31 +08:00 via Android
@duyuyouci 你说的这个问题我没有遇到完全一样的,但是 celery 阻塞假死,导致数据连接出错的情况到是遇到几次。后来处理耗时短的业务就直接 Thread 了,耗时长的加回滚,和异常重连,基本就解决啦。
|
8
liuguichao 2019-06-05 17:45:02 +08:00
还有一种可能,遍历 ResultProxy 记录之前,需要先判断一下是否有返回行,直接 for 遍历会出错。
https://docs.sqlalchemy.org/en/13/core/connections.html?highlight=resultproxy#sqlalchemy.engine.ResultProxy.returns_rows returns_rows True if this ResultProxy returns rows. I.e. if it is legal to call the methods fetchone(), fetchmany() fetchall(). |