INSERT INTO 超时报错

【详述】跑任务经常超时,一天(p20250209)大概是500g的数据量,SQL如下
insert into t_ods_file_md5_thw
(md5, key, min_time)
select md5, key, ‘2025-02-09’ min_time
from
(
select /*+ SET_VAR(pipeline_dop=24, parallel_fragment_exec_instance_num=24) */
DISTINCT md5, key
from t_ods_file_md5_p PARTITION (p20250209)
where md5 is not null and key is not null and start_time is not null and end_time is not null
) t10
【报错】2013 - Lost connection to MySQL server during query 时间: 14420.106s
【业务影响】各种超时
【是否存算分离】存算一体
【StarRocks版本】3.5.1
【集群规模】3fe + 5be
【机器信息】24核、500g内存、万兆网卡、磁盘是HDD的
【表模型】明细表插入聚合表
【导入或者导出方式】insert into select …
【联系方式】社区群26-奋斗小青年
【其他报错信息】
2025-07-29 15:13:07.605+08:00 WARN (starrocks-mysql-nio-pool-6655|175216) [ThriftRPCRequestExecutor.call():80] Call thrift rpc failed, addr: TNetworkAddress(hostname:192.168.10.239, port:9021), retried: 0
org.apache.thrift.transport.TTransportException: java.net.SocketTimeoutException: Read timed out
at org.apache.thrift.transport.TIOStreamTransport.read(TIOStreamTransport.java:172)
at org.apache.thrift.transport.TTransport.readAll(TTransport.java:100)
at org.apache.thrift.protocol.TBinaryProtocol.readAll(TBinaryProtocol.java:519)
at org.apache.thrift.protocol.TBinaryProtocol.readI32(TBinaryProtocol.java:387)
at org.apache.thrift.protocol.TBinaryProtocol.readMessageBegin(TBinaryProtocol.java:271)
at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:79)
at com.starrocks.thrift.FrontendService$Client.recv_forward(FrontendService.java:903)
at com.starrocks.thrift.FrontendService$Client.forward(FrontendService.java:890)
at com.starrocks.qe.LeaderOpExecutor.lambda$forward$0(LeaderOpExecutor.java:201)
at com.starrocks.rpc.ThriftRPCRequestExecutor.call(ThriftRPCRequestExecutor.java:67)
at com.starrocks.rpc.ThriftRPCRequestExecutor.call(ThriftRPCRequestExecutor.java:48)
at com.starrocks.qe.LeaderOpExecutor.forward(LeaderOpExecutor.java:197)
at com.starrocks.qe.LeaderOpExecutor.execute(LeaderOpExecutor.java:118)
at com.starrocks.qe.StmtExecutor.forwardToLeader(StmtExecutor.java:1037)
at com.starrocks.qe.StmtExecutor.execute(StmtExecutor.java:653)
at com.starrocks.qe.ConnectProcessor.handleQuery(ConnectProcessor.java:423)
at com.starrocks.qe.ConnectProcessor.dispatch(ConnectProcessor.java:633)
at com.starrocks.qe.ConnectProcessor.processOnce(ConnectProcessor.java:982)
at com.starrocks.mysql.nio.ReadListener.lambda$handleEvent$0(ReadListener.java:71)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:842)
Caused by: java.net.SocketTimeoutException: Read timed out
at java.base/sun.nio.ch.NioSocketImpl.timedRead(NioSocketImpl.java:288)
at java.base/sun.nio.ch.NioSocketImpl.implRead(NioSocketImpl.java:314)
at java.base/sun.nio.ch.NioSocketImpl.read(NioSocketImpl.java:355)
at java.base/sun.nio.ch.NioSocketImpl$1.read(NioSocketImpl.java:808)
at java.base/java.net.Socket$SocketInputStream.read(Socket.java:966)
at java.base/java.io.BufferedInputStream.fill(BufferedInputStream.java:244)
at java.base/java.io.BufferedInputStream.read1(BufferedInputStream.java:284)
at java.base/java.io.BufferedInputStream.read(BufferedInputStream.java:343)
at org.apache.thrift.transport.TIOStreamTransport.read(TIOStreamTransport.java:170)
… 21 more
2025-07-29 15:13:07.606+08:00 WARN (starrocks-mysql-nio-pool-6655|175216) [StmtExecutor.execute():844] execute Exception, sql insert into t_ods_file_cs_data_p
( id, dsf, fdfd, sc_time )
select id, dsf, fdfd, sc_time
from
(

				select /*+ SET_VAR(pipeline_dop=24, parallel_fragment_exec_instance_num=24) */
							 id
						 , dsf
						 , fdfd
						 , date_trunc('day',start_time) sc_time
				 from t_ods_file_cs_data_p_day PARTITION ('p20250101')
				 where id is not null and `dsf` is not null and  fdfd is not null and start_time is not null 

)t10
org.apache.thrift.transport.TTransportException: java.net.SocketTimeoutException: Read timed out
at org.apache.thrift.transport.TIOStreamTransport.read(TIOStreamTransport.java:172)
at org.apache.thrift.transport.TTransport.readAll(TTransport.java:100)
at org.apache.thrift.protocol.TBinaryProtocol.readAll(TBinaryProtocol.java:519)
at org.apache.thrift.protocol.TBinaryProtocol.readI32(TBinaryProtocol.java:387)
at org.apache.thrift.protocol.TBinaryProtocol.readMessageBegin(TBinaryProtocol.java:271)
at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:79)
at com.starrocks.thrift.FrontendService$Client.recv_forward(FrontendService.java:903)
at com.starrocks.thrift.FrontendService$Client.forward(FrontendService.java:890)
at com.starrocks.qe.LeaderOpExecutor.lambda$forward$0(LeaderOpExecutor.java:201)
at com.starrocks.rpc.ThriftRPCRequestExecutor.call(ThriftRPCRequestExecutor.java:67)
at com.starrocks.rpc.ThriftRPCRequestExecutor.call(ThriftRPCRequestExecutor.java:48)
at com.starrocks.qe.LeaderOpExecutor.forward(LeaderOpExecutor.java:197)
at com.starrocks.qe.LeaderOpExecutor.execute(LeaderOpExecutor.java:118)
at com.starrocks.qe.StmtExecutor.forwardToLeader(StmtExecutor.java:1037)
at com.starrocks.qe.StmtExecutor.execute(StmtExecutor.java:653)
at com.starrocks.qe.ConnectProcessor.handleQuery(ConnectProcessor.java:423)
at com.starrocks.qe.ConnectProcessor.dispatch(ConnectProcessor.java:633)
at com.starrocks.qe.ConnectProcessor.processOnce(ConnectProcessor.java:982)
at com.starrocks.mysql.nio.ReadListener.lambda$handleEvent$0(ReadListener.java:71)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:842)
Caused by: java.net.SocketTimeoutException: Read timed out
at java.base/sun.nio.ch.NioSocketImpl.timedRead(NioSocketImpl.java:288)
at java.base/sun.nio.ch.NioSocketImpl.implRead(NioSocketImpl.java:314)
at java.base/sun.nio.ch.NioSocketImpl.read(NioSocketImpl.java:355)
at java.base/sun.nio.ch.NioSocketImpl$1.read(NioSocketImpl.java:808)
at java.base/java.net.Socket$SocketInputStream.read(Socket.java:966)
at java.base/java.io.BufferedInputStream.fill(BufferedInputStream.java:244)
at java.base/java.io.BufferedInputStream.read1(BufferedInputStream.java:284)
at java.base/java.io.BufferedInputStream.read(BufferedInputStream.java:343)
at org.apache.thrift.transport.TIOStreamTransport.read(TIOStreamTransport.java:170)
… 21 more
2025-07-29 16:36:34.612+08:00 WARN (starrocks-mysql-nio-pool-7504|185663) [ReadListener.lambda$handleEvent$0():85] Exception happened in one session(com.starrocks.qe.ConnectContext@6ab387cc).
java.io.IOException: Connection timed out
at java.base/sun.nio.ch.SocketDispatcher.read0(Native Method)
at java.base/sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:47)
at java.base/sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:330)
at java.base/sun.nio.ch.IOUtil.read(IOUtil.java:296)
at java.base/sun.nio.ch.IOUtil.read(IOUtil.java:259)
at java.base/sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:417)
at org.xnio.nio.NioSocketConduit.read(NioSocketConduit.java:289)
at org.xnio.conduits.ConduitStreamSourceChannel.read(ConduitStreamSourceChannel.java:127)
at org.xnio.channels.Channels.readBlocking(Channels.java:344)
at com.starrocks.mysql.MysqlChannel.realNetRead(MysqlChannel.java:168)
at com.starrocks.mysql.MysqlChannel.readAllPlain(MysqlChannel.java:157)
at com.starrocks.mysql.MysqlChannel.readAll(MysqlChannel.java:150)
at com.starrocks.mysql.MysqlChannel.fetchOnePacket(MysqlChannel.java:181)
at com.starrocks.qe.ConnectProcessor.processOnce(ConnectProcessor.java:971)
at com.starrocks.mysql.nio.ReadListener.lambda$handleEvent$0(ReadListener.java:71)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:842)
2025-07-29 15:08:02.665+08:00 WARN (starrocks-mysql-nio-pool-7501|185256) [ConnectProcessor.handleQuery():440] Failed to parse SQL: insert into t_ods_file_tl_day_p
( id, lg, la, tr_time)
select id, lg, la, tr_time
from
(
select /*+ SET_VAR(pipeline_dop=24, parallel_fragment_exec_instance_num=24) /
id
, round(lg,4) lg
, round(la,4) la
, date_trunc(‘day’,start_time) tr_time
from t_ods_file_tl_day_p_day PARTITION (‘p20250101’)
where id is not null and lg is not null and la is not null and start_time is not null
and DATE_FORMAT(start_time,’%H:%i:%s’) between ‘06:00:00’ and ‘12:00:00’
group by id, round(lg,4), round(la,4), date_trunc(‘day’,start_time)
having count(
) < 10000
)t10
where lg is not null and la is not null, because.
com.starrocks.common.AnalysisException: This command is not supported in the prepared statement protocol yet
at com.starrocks.common.ErrorReport.reportAnalysisException(ErrorReport.java:80)
at com.starrocks.common.ErrorReport.reportAnalysisException(ErrorReport.java:63)
at com.starrocks.qe.ConnectProcessor.handleQuery(ConnectProcessor.java:371)
at com.starrocks.qe.ConnectProcessor.dispatch(ConnectProcessor.java:633)
at com.starrocks.qe.ConnectProcessor.processOnce(ConnectProcessor.java:982)
at com.starrocks.mysql.nio.ReadListener.lambda$handleEvent$0(ReadListener.java:71)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:842)