python 执行 ob mysql 报错不可读

【 使用环境 】测试环境
【 OB or 其他组件 】OB
【 使用版本 】4.3.0

使用 python 连接 obmysql 连接是正常的,也可以正常执行sql。但是当sql有问题的时候,错误不可读。。这种如何解决?

例如我执行一条 select sleep(30) ,10s超时的时候,报错如下:

Traceback (most recent call last):
  File "/.local/lib/python3.9/site-packages/jobs/sql_job.py", line 71, in execute
    raise err
  File "/.local/lib/python3.9/site-packages/jobs/sql_job.py", line 65, in execute
    conn.execute(sql)
  File "/.local/lib/python3.9/site-packages/jobs/connection.py", line 56, in execute
    self.connection.commit()
  File "/.local/lib/python3.9/site-packages/mysql/connector/connection.py", line 1314, in commit
    self._execute_query("COMMIT")
  File "/.local/lib/python3.9/site-packages/mysql/connector/connection.py", line 1332, in _execute_query
    self.handle_unread_result()
  File "/.local/lib/python3.9/site-packages/mysql/connector/connection.py", line 1574, in handle_unread_result
    raise InternalError("Unread result found")
mysql.connector.errors.InternalError: Unread result found

这情况正常应该是 query timeout 之类的错误

这个报错好像是python的,ob报错不是这样的

ob 官方有什么推荐的用 python 连 obmysql 的方式吗?我知道这是python的,用的驱动是 pymysql ,感觉并不是很适配

试试obclient
https://www.oceanbase.com/softwarecenter

你这个怎么触发的;我按你的超时正常抛出4012超时错误的

还有什么别的适配问题吗?可以给出大概的叙述,我本地测试下,看能否兼容掉

我感觉你可以试下换成原生mysql,再次执行下。看是否会也这个报错不;