执行DML,任务状态一直处于Pending,实际任务已经执行完成

【详述】通过DML语句,执行Insert overwrite partition从hive写入数据到starrocks内表中,数据已经覆盖写入完成,但是查看元数据表task_run查看任务状态,一直处于Pending状态
【背景】
1.回溯历史7天数据,分区写入,明细表
2.操作步骤如下:
a.JDBC连接一台Follower节点
b.删除taskName为xxx的任务,命令为drop task fintech_fintech_fpt_dwm_trd_finance_flow_detail_di_20240819
c.执行b操作的原因主要是为了防止上一次的任务正在运行,导入本次插入操作也同时运行,影响数据的最终一致性
d.创建一个跟b一样的任务名fintech_fintech_fpt_dwm_trd_finance_flow_detail_di_20240819,SQL为:
submit /+set_var(query_timeout=100000)/ TASK fintech.fintech_fintech_fpt_dwm_trd_flow_detail_di_20240819 PROPERTIES(“query_timeout”=“100000”)
as insert overwrite fintech.fintech_fpt_dwm_trd_finance_flow_detail_di partition (pt=‘20240819’) SELECT * FROM hive_external_catalog_idc.fintech.fintech_fpt_dwm_trd_flow_detail_di Where pt=‘20240819’
e.通过SELECT QUERY_ID,STATE,PROGRESS,ERROR_CODE,ERROR_MESSAGE FROM information_schema.task_runs WHERE database =‘fintech’ and task_name = ‘fintech_fintech_fpt_dwm_trd_finance_flow_detail_di_20240819’ order by CREATE_TIME desc limit 1确认判断State的值,判断任务是否已经完成
f.观测Fe的日志,事务已经完成提交,但是任务状态一直为Pending,导致我调度任务一直阻塞,等待任务状态什么时候变更为SUCCESS,但实际上数据已经完成写入了

还有观测到一个问题是follower节点上的fe日志会有relay上一次queryId状态的问题,不知道是否跟这个原因有关
【业务影响】 影响每日同步调度任务
【是否存算分离】否
【StarRocks版本】例如:3.2.8
【集群规模】例如:3fe+10be
【机器信息】
【联系方式】
相关信息截图:





fe-follower上的日志 (16.2 KB)

这个是在 leader fe 上执行的么

不是,是JDBC连接follewer节点提交的任务

看一下任务执行完成后,连接 leader fe 查看 task_runs 表的信息

我上面的截图就是task_run的信息,任务其实在fe.log中已经发现完成,但是并不修改task_run的任务状态

目前我将任务从follower节点变更为leader节点进行提交,目前还没发现类似的问题,所以是不是可以排查下从follower提交任务会出现这样的问题呢

这个是连接的leader fe 查的么,leader 上的信息应该是最准的

这个当时是在follower节点上通过mysql客户端查看的。话说如果连接到leader fe的客户端,查询的结果会存在不一致?数据不是强一致性吗,follower节点应该一直是同步leader的fe数据吧,而且我们目前各Fe节点的ReplayedJournalId基本都是保持一致的,差值没超过1

你们集群是哪个版本的,之前有修过一个 follower 节点状态同步的问题

3.2.8