dolphinscheduler依赖关系保存不成功(调度最大的坑)

在使用dolphinscheduler之后,感觉其他方面都不错,就是在提供的界面为各个任务设置依赖关系时总是保存不成功,简直令人抓狂。

分析原因

在这里插入图片描述
在通过箭头配置好依赖关系后,点击保存,返回工作流,查看甘特图,发现执行顺序和我们预想不一致。,试着启动工作流,发现执行顺序果然不对。
难道是没保存成功?多次点击保存后无果,觉得是前端图形识别的问题,由于没学过前端知识,无法验证

解决方案

相信老铁已经想到我要干嘛了,既然不知道是否保存依赖关系是否成功,那去元数据看一下不就知道了。
元数据存储在mysql,由于表格众多,我只说用到的表
核心表Schema:dolphinscheduler.t_ds_process_definition
具体看 dolphinscheduler核心表介绍

只说几个字段

name 工作流名称
locations 节点坐标信息
connects 节点连线信息

查看name确定要查看的工作流 DAG_DetailsImport

节点坐标信息 locations
{“tasks-83371”:{“name”:“EventImport”,“targetarr”:"",“nodenumber”:“0”,“x”:124,“y”:154},
“tasks-3941”:{“name”:“BuryingPointAttribute”,“targetarr”:"",“nodenumber”:“0”,“x”:303,“y”:154},
“tasks-26798”:{“name”:“EventsToAttribute”,“targetarr”:"",“nodenumber”:“0”,“x”:482,“y”:154}}

节点连线信息 connects
[]
这两个字段信息存在的问题

1.targearr 数据都为空
2.connects 数据为空数组

所以可以确定未保存成功

接下来我们修改元数据
{“tasks-83371”:{“name”:“EventImport”,“targetarr”:"",“nodenumber”:“0”,“x”:124,“y”:154},
“tasks-3941”:{“name”:“BuryingPointAttribute”,“targetarr”:“tasks-83371”,“nodenumber”:“0”,“x”:303,“y”:154},
“tasks-26798”:{“name”:“EventsToAttribute”,“targetarr”:“tasks-3941”,“nodenumber”:“0”,“x”:482,“y”:154}}

我们补充上targearr的数据
x 为任务节点的横坐标,y 为纵坐标
targearr 为本节点的上一个节点taskid,所以第一个节点给空就行
第二个节点targearr的值就是第一个节点的taskid,以此类推…

[{“endPointSourceId”:“tasks-83371”,“endPointTargetId”:“tasks-3941”},
{“endPointSourceId”:“tasks-3941”,“endPointTargetId”:“tasks-26798”}]
这个是真正的连接信息
endPointSourceId 前一个节点taskid
endPointTargetId 后一个节点taskid
所以假设3个节点,就两条连接信息
更新完之后,返回界面,点开工作流,点击格式化,格式化就是那个像播放按钮的按键,我们发现连线正常了。点击保存

在这里插入图片描述
大家注意观察数据,应该能发现一些规律,我的表述不是很清晰,还请见谅!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值