apache / apache/iotdb

python客户端偶尔报错TTransportException

未关闭
#3,146 2 条评论 4 个 reaction 已指派 0 人 在 GitHub 查看
Module - Python Client
主要语言
Java
星标
6.4k
派生
1.2k
平均合并
1 天 23 小时
30 天内合并 PR
115

描述

运行中偶尔出现这个错误,报错堆栈信息如下:
2021-05-08 10:39:59,082 - 12348-ThreadPoolExecutor-34_2 - .\base\abstract_processor.py[line:80] - ERROR: ('Could not set time zone because: ', TTransportException('Transport not open'))
Traceback (most recent call last):
File "E:\python\python-3.7.9\Lib\site-packages\iotdb\Session.py", line 729, in set_time_zone
status = self.__client.setTimeZone(request)
File "E:\python\python-3.7.9\Lib\site-packages\iotdb\thrift\rpc\TSIService.py", line 666, in setTimeZone
self.send_setTimeZone(req)
File "E:\python\python-3.7.9\Lib\site-packages\iotdb\thrift\rpc\TSIService.py", line 675, in send_setTimeZone
self._oprot.trans.flush()
File "E:\python\python-3.7.9\Lib\site-packages\thrift\transport\TTransport.py", line 304, in flush
self.__trans.write(buf)
File "E:\python\python-3.7.9\Lib\site-packages\thrift\transport\TSocket.py", line 149, in write
message='Transport not open')
thrift.transport.TTransport.TTransportException: Transport not open

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "D:\obj\windows-release\37amd64_Release\msi_python\zip_amd64\thread.py", line 57, in run
File ".\base\abstract_processor.py", line 73, in _job
result_data = self.process(data, time)
File ".\temp_stability_processor.py", line 16, in process
collecton_list = self.get_meter_collection(data['cust_id'], data['id'])
File ".\base\abstract_processor.py", line 57, in get_meter_collection
collecton_list = self._iotdb.query(sql, (self._tenant_id, cust_id, meter_id))
File ".\db\iot_db.py", line 29, in query
session = self.get_db()
File ".\db\iot_db.py", line 22, in get_db
session.open(False)
File "E:\python\python-3.7.9\Lib\site-packages\iotdb\Session.py", line 134, in open
self.set_time_zone(self.__zone_id)
File "E:\python\python-3.7.9\Lib\site-packages\iotdb\Session.py", line 736, in set_time_zone
raise RuntimeError("Could not set time zone because: ", e)
RuntimeError: ('Could not set time zone because: ', TTransportException('Transport not open'))

版本信息:
客户端apache-iotdb==0.12.0,服务端0.12.1

贡献指南

打开贡献指南

调研方向

Start with the Python client's Session.py open and set_time_zone methods, then trace the application calls through iot_db.py get_db and query. Reproduce the intermittent Transport not open error using client 0.12.0 with server 0.12.1 and determine whether the failure is tied to connection handling or the version mismatch; done means the cause and a verified fix or regression coverage are identified.

由索引模型根据 Issue 内容生成。

评估

技术栈
python
领域
databases
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
需要澄清
新手友好度
25/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。