开发者社区> 问答> 正文

PyODPS脚本任务不定时出现 IncompleteRead问题

unliklll 2019-07-19 13:27:19 153

from odps import ODPS
from odps import options

options.tunnel.use_instance_tunnel = True
options.tunnel.limit_instance_tunnel = False

sql_query="select * from dwd.table_name where day='20190101'"
instance = o.run_sql(sql_query)
instance.wait_for_success()

with instance.open_reader() as reader:

print(u'共加载到%d条数据' % reader.count)
for item in reader:
    print (item)

使用上述方法读取odps上的数据时,会不定时的出现:

......
http.client.IncompleteRead: IncompleteRead(284 bytes read, 2785 more expected)

During handling of the above exception, another exception occurred:

......

raise ProtocolError('Connection broken:%r' %e, e)
urllib3,exceptions.ProtocolError:('Connection broken:IncompleteRead(7455 bytes read)',IncompleteRead(7455 bytes read) )

安装pyodps时,需要urllib3依赖,从错误日志中可以看出,上述现象和odps.tunnel.io.reader_c.TunnelRecordReader.__next__
odps.tunnel.io.reader_c.BaseTunnelRecordReader.read 有关系。

请问,这是什么原因导致的,怎样解决?

分享到
取消 提交回答
全部回答(0)
+ 订阅

时时分享云计算技术内容,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

推荐文章