Repository navigation
Conversation
This was referenced Oct 9, 2026
efeire
marked this pull request as ready for review
October 10, 2026 06:57
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.
Summary
Refs #11452。从数据库菜单接入 Oracle/OceanBase Oracle Scheduler 作业管理,提供定义读取、创建、修改、启用、禁用及删除。先预览再明确执行,执行后读回;浏览刷新不启动作业,新建默认禁用,修改前先禁用。旧式 DBMS_JOB 单独只读展示。写入仅支持限定版本和作业类型,命名程序/计划、远程和未知版本不开放重写。
原修改预览只显示旧 NEXT_RUN_DATE,无法说明请求的新计划影响。现在分开显示旧时间、请求 start/end/repeat 及引擎新时间或明确未知原因。Oracle 仅对支持的明确 offset 和内置日历表达式调用 SYS.DBMS_SCHEDULER 只求值,命名及组合计划保持 unknown;评估失败不阻断原脱敏预览,不执行作业。OceanBase 当前版本缺少该接口,明确显示 unsupported,不用旧时间冒充新时间。
Evidence
Before: 修改 Scheduler 的 start/end/repeat 后预览,旧界面只显示原 NEXT_RUN_DATE,不能说明新计划的实际影响。
After: 作业组件、新计划影响组件及身份回归有通过记录。OB 4.2.5.7 Web GUI 的创建、默认禁用、显式启用/禁用、删除及跨 owner 零写入已由独立字典/计数核对;新计划求值仍 unsupported,计划修改的具体限制见下列验收范围。Oracle 求值/DST、完整并发权限矩阵及原生 Tauri 未验证。
回归与验收范围
OceanBase 4.2.5.7 实库复现带 schema 的作业名被原样存入当前用户,导致确认创建后按目标身份读回为空。现要求变更连接登录用户与目标 owner 精确一致,并向 OceanBase Scheduler 传入未限定名称;Oracle 保留原限定名。新增回归旧实现失败,修后通过。
修复创建后未保留所选身份,真实挂载回归旧版失败,修后相关前端 27 项通过;Oracle 管理模块 52 项通过,格式及差异检查通过。Spec 无新增发现,Standards 无规范违反。
修复版 Web GUI 已完成正确 owner 下创建、默认禁用超过两个调度窗口不执行、显式启用后独立计数增长、禁用后间隔 12 秒计数不变、删除后独立字典为空。明确起止时间及 +08:00 创建后精确读回,创建后直接编辑身份正确。SYS 跨 owner preview/apply 均拒绝且独立确认零写入。全部测试作业、用户、连接和自有服务已清理。
当前 OceanBase 4.2.5.7 修改 repeat_interval 返回 ORA-00600,独立确认原定义保留,未计为通过。空结束时间读回 4000-01-01 保持 unverified;新计划求值 unsupported。普通 owner 历史视图受限,未伪造计数。身份读取失败注入、完整并发与权限矩阵、Oracle/OCI 和 Tauri 仍未覆盖。
Merge Danger
Door: two-way(代码);已经执行的数据或 DDL 变更按实际状态单独恢复。
Blast Radius: 数据库工具
启用到期作业可能立即执行动作,代码回退不能撤销。多步失败须核对步骤和状态;禁用/删除不使用 FORCE,不自动停止运行中的作业。unknown/unsupported 不是验收通过。
自动化状态与界面预览
自动预览只代表对应提交和沙盒场景,不能替代目标数据库的实库验收。
界面预览
当前提交的自动预览记录。以下沙盒截图/录屏展示相关界面,不能代替目标数据库验收;实际测试结果与未验范围见Evidence。