Oracle SQLcl 25.1.1项目stage阶段变更日志顺序错误求助
解决Oracle SQLcl 25.1.1.0 Project功能Stage阶段Changelog顺序问题
针对你遇到的stage阶段生成的stage.changelog.xml存在对象创建与权限、索引顺序颠倒的问题,给你几个可行的解决方向:
手动修正并锁定Changelog
- 生成
stage.changelog.xml后,直接编辑文件:将模式间权限授予语句移到对应的表/视图创建语句之后,把物化视图索引移到物化视图创建语句之后 - 在项目根目录的
.gitignore中添加dist/releases/next/changes/base-release/stage.changelog.xml,防止后续project stage命令覆盖修改后的内容 - 后续执行
project stage时,加上--no-changelog参数,跳过自动生成changelog的步骤,直接使用你修正后的文件
- 生成
调整Project初始化的模式顺序
重新执行project init,先指定PROJECT_DATA模式,再指定PROJECT_CORE模式(因为权限依赖是PROJECT_CORE访问PROJECT_DATA的对象,按依赖顺序初始化可能让工具自动识别正确的生成顺序),之后重新走project export和project stage流程,验证顺序是否正常分模式拆分Export操作
- 先单独对
PROJECT_DATA模式执行:project export --schema PROJECT_DATA,提交到git - 再对
PROJECT_CORE模式执行:project export --schema PROJECT_CORE,提交到git - 最后执行
project stage,让工具按照导出的先后顺序生成依赖正确的changelog
- 先单独对
向Oracle反馈bug
这是SQLcl 25.1.1版本Project功能的明显缺陷,收集以下信息提交给Oracle Support:- 你执行的完整
project init命令参数 - 两个模式的对象依赖关系(比如
PROJECT_CORE对PROJECT_DATA对象的权限配置、物化视图的依赖源) - 错误顺序的
stage.changelog.xml片段 - 你的SQLcl版本信息(25.1.1.0 build:25.1.1.120.1002)
- 你执行的完整
内容的提问来源于stack exchange,提问作者Ricardo F
相关产品推荐
相关产品推荐

