feat(ds-workflow-tab): DS 工作流可视化的架构、契约与执行清单 - #45
Open
88fantasy wants to merge 1 commit into
Open
Conversation
平台侧透传 Gravitino「按外部运行标识查询」的接口,并为 GRAVITINO 服务补齐 externalRunKeys 配置项;同时落地本需求的三份设计文档与一份平台缺陷记录。 绑定链已在五节点沙箱端到端验证: - 批(Spark):注入 ds-<clusterId>-<taskInstanceId> → OpenLineage → Gravitino, 两组用例的行数与实际写入逐值一致(700/234、900/225) - 流(Flink):作业名嵌同一标识 → Doris job_name 前缀匹配 → job_id 与引擎 REST 返回一致,速率非零 文档: - 架构设计更新为「已验证稿」:静默错误补至 7 类、新增「平台前置缺陷」一节、 原遗留缺口 G1-G5 全部关闭 - 新增实施方案:接口契约、配置、前端规范、验收步骤 - 新增执行任务清单:4 个 Wave / 13 个任务,含并行分组与状态回写规范 - 新增平台缺陷记录:DS 分发包缺全部任务插件、DS 的 S3 凭据漂移; 两条均独立于本需求但阻断其落地 .gitignore 新增 .scratch/:需求推导过程留在本地,不进仓库
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
这个 PR 是什么
DolphinScheduler 工作流可视化需求的设计交付:架构、接口契约、执行任务清单,以及支撑它们的平台侧透传代码。功能实现不在本 PR,由执行清单驱动后续开发。
改动范围
LineageV2Controller/GravitinoLineageClient透传「按外部运行标识查询」端点(各 +5 行)+ 对应测试GRAVITINO/service_ddl.json新增externalRunKeys参数.gitignore新增.scratch/绑定链已端到端验证
需求的技术命门是「调度任务 ↔ 计算作业」的归属。DS 的
app_link字段对 Flink/Spark 恒为 null(3.3/3.4 执行器重构引入的上游回归,已源码复核 + 接口实测),因此改用注入式标识,两条链均在五节点沙箱跑通:ds-<clusterId>-<taskInstanceId>→ OpenLineage → Gravitino。两组用例的行数与实际写入逐值一致(700/234、900/225)job_name前缀匹配 → 取出的job_id与引擎 REST 返回完全一致,速率非零选注入而非名字匹配,是因为失败方式不同:注入在链路断裂时静默缺失(显示为未绑定),名字匹配会给出看起来正确的错误数字。
见
docs/ds-平台缺陷-任务插件缺失与S3凭据漂移-2026-08-25.md:request parameter {0} is not valid,真因只在服务端日志。平台装出来的 DS 目前不可用。两条建议单独排期修复,不必等本需求实现。
测试
LineageV2ControllerTest+GravitinoLineageClientTest:15 passed / 0 failedspotless:apply,diff 未产生额外改动审阅建议
代码只有 10 行透传,重点在文档:架构设计的 §2.4(7 类静默错误)与 §9.1(已验证结论),以及执行清单的并行分组与验证判据。