Java连接器写入超时, 查询正常 (期间写入时间乱序数据)

【TDengine 使用环境】
测试

【TDengine 版本】

3.3.8.4

image

【操作系统以及版本】

Ubuntu

【部署方式】

容器

【集群节点数】

1

【集群副本数】

1

【描述业务影响】

Java连接器写入超时, 但查询正常 (WebSocketDriver).报错信息:

java.sql.SQLException: ERROR (0x231e): java.util.concurrent.TimeoutException: ERROR (0x231e): failed to complete the task:{“action”:“insert”,“args”:{“req_id”:174,“protocol”:1,“precision”:“ms”,“data”: xxx

【问题复现路径/shan】

在测试过程中, 两个写入任务: 1. 每秒写入10000条时间正序数据; 2.每秒写入1000条时间乱序数据; 执行大概10分钟后, 两个写入任务都开始超时, 无法继续写入. 但查询仍然正常;

【遇到的问题:问题现象及影响】

【资源配置】

12核, 32GB

【报错完整截图】(不要大段的粘贴报错代码,论坛直接看报错代码不直观)

报错信息能否拿个全一些的,看着不完整

Caused by: java.sql.SQLException: ERROR (0x231e): java.util.concurrent.TimeoutException: ERROR (0x231e): failed to complete the task:{“action”:“insert”,“args”:{“req_id”:174,“protocol”:1,“precision”:“ms”,“data”:"device_location,device_code=device_9000 longitude=149.397198f64,latitude=11.602611f64,speed=11.602611f32,direction=235i32,recv_time=1765278724152i64,cell_signal=0i32,gps_signal=3i32,location_type=2i8,mnc=0i32,mcc=460i32,lac=23053i32,cell_id=414251774i64,mileage=319473i64,battery=73i32,fuel_cut=0i32,fuel_value1=781i32,fuel_value2=377i32,fuel_value3=358i32,acc=0i8,lock_rope=1i8,lock_status=1i8,temperature1=67.6f32,temperature2=31.1f32,temperature3=-23.0f32,temperature4=59.8f32,temperature5=43.8f32,temperature6=-21.7f32,humidity1=78f32,humidity2=66f32,humidity3=13f32,humidity4=67f32,humidity5=91f32,humidity6=44f32,awaken=0i8,motor=0i8,door=1i8,power_status=-1i8 1764876639000\n

… <省略其他数据行> …

“ttl”:0}} within the specified time : 60000,MILLISECONDS
at com.taosdata.jdbc.TSDBError.createSQLException(TSDBError.java:99)
at com.taosdata.jdbc.ws.Transport.send(Transport.java:156)
at com.taosdata.jdbc.ws.Transport.send(Transport.java:115)
at com.taosdata.jdbc.ws.WSConnection.write(WSConnection.java:174)
at com.taosdata.jdbc.AbstractConnection.write(AbstractConnection.java:522)
at com.taosdata.jdbc.AbstractConnection.write(AbstractConnection.java:537)
at com.joint.test.db.tdengine.TdengineTestDriver.writePoints(TdengineTestDriver.java:54)

taos jdbc driver 版本是多少

<!-- TdEngine-JDBC驱动 -->
<dependency>
    <groupId>com.taosdata.jdbc</groupId>
    <artifactId>taos-jdbcdriver</artifactId>
    <version>3.7.8</version>
</dependency>

方便远程一下吗,需要排查 Adapter 日志。腾讯会议:417-585-376

老师, 我这边pc没有麦, 日志文件我导给你如何?

问题出现后,打开 taosAdapter debug 日志。

curl --location --request PUT 'http://127.0.0.1:6041/config' \
-u root:taosdata \
--data '{"log.level": "debug"}'

然后再有几次写入。贴一下 Adapter相关日志。

深入分析可能还需要远程,建议找一个手机用另一个账号接入。一会儿这个会议失效了,你可以新建一个会议。