发行说明 | IvorySQL 3.0 发版
截至目前,IvorySQL已成功发布10个版本,并最新推出了IvorySQL 3.0。此版本不仅继承了PostgreSQL 16.0的最新内核和功能,还扩展了更多企业级特性。
相比于PostgreSQL社区版,IvorySQL 3.0在兼容性和易用性方面实现了显著提升,同时为适应容器化和云端环境提供了更为全面的支持。3.0具备更为完善的数据库特性和创新的功能,提供高度的SQL和PL/SQL兼容性,并充分利用PostgreSQL开源生态,为企业用户在OLTP业务上提供更加高效、稳定和灵活的平滑去“O”解决方案。
01 版本介绍
02 已知问题
03 增强功能
3.1. IvorySQL 框架
添加双Parser支持不同的数据库parser 添加双端口支持不同的数据库端口号 添加 initdb -m,支持postgres模式或Oracle模式
3.2. SQL兼容
兼容oracle merge command 兼容oracle q转义 兼容oracle like
3.3. PL/SQL兼容
解决PL/SQL创建函数/存储过程存在问题 兼容Oracle匿名块 在 SQL parser中创建函数或过程支持嵌套子过程 嵌套的子进程和函数is/as不需要声明
3.4. 其它
在action中增加meson编译 支持meson编译 添加兼容的测试用例 添加contrib回归 兼容btree_gist索引 兼容btree_gin索引 添加Oracle数据类型 GIN索引操作 添加Oracle数据类型 Gist索引操作 兼容Oracle内置数据类型与内置函数 添加plisql扩展
04 问题修复
2)字符类型null值的运算符结果不正确。
3)还原备份时出错。
4)ivorysql_ora部分测试用例失败。
5)nls参数指定ff精度与表指定精度的三种关系下,对超出长度的数据处理不一致。
6)日期格式中的DD HH.MI,SS AM中数据出现特殊符号后的数据处理与Oracle不一致。
7)对日期格式,各部分位数校验均存在问题。
8)NLS相关参数校验问题。
9)解决NLS参数设置为12小时制,默认完成AM/PM关键字的规则与Oracle不一致问题。
10)带默认值创建的函数/存储过程xx_arguments视图中DEFAULTED字段值为N问题。
11)无权限的函数/存储过程 可以被all_procedures/all_arguments/all_source视图查看。
12)当自增列类型为numer类型,且指定了精度时,by default on null插入null值时,不是插入的具体序列值,而是插入的null值。
说明:关于新增功能更多介绍请参考本文档中心功能列表
05 源代码
06 版本差异
贡献人员
Dear Developer:
感谢您对此版本付出的努力,以下个人作为补丁作者、提交者、审阅者、测试者或问题报告者为本版本做出了贡献。
Pro development & testing team
By IvorySQL社区
IvorySQL
一款开源的兼容Oracle的PostgreSQL