【详述】通过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)