本文介绍PolarDB PostgreSQL版(兼容Oracle)的产品功能动态,包括内核小版本的更新说明。
您可在控制台查看内核小版本号,也可以通过
SHOW polardb_version;
语句查看。PolarDB PostgreSQL版(兼容Oracle)内核小版本号于北京时间2025年02月26日更新为6位格式,您可查看PolarDB内核小版本号格式更新确认变更细节以及内核小版本号更新前后对应关系。
2.0.14.17.36.0(2025.09)
新增功能
说明 | 相关文档 |
新增DynamoDB兼容性能力。 | - |
新增在 | - |
新增子函数能够使用包变量和外部变量作为其参数默认值的功能。 | |
新增对Oracle内置包 | |
新增支持Oracle风格的 | - |
新增对关联数组构造器的支持,以兼容Oracle语法。 | |
新增在 | |
新增对集合类型的 | |
新增支持高权限账号将 | - |
新增支持使用 | - |
新增 | |
新增支持使用 | - |
新增对Oracle内置包 | |
新增对 | - |
新增对 | |
新增支持普通用户使用 | - |
新增在PL/SQL表达式中通过 | - |
新增在包中支持定义同名的函数和存储过程(重载),以兼容Oracle的PL/SQL规范。 | - |
新增连接级别的 | - |
新增支持使用 | - |
新增支持在函数中通过 | - |
升级 | |
新增支持用户创建 | - |
新增连接级别的权限管理功能。此功能用于精细化控制特定连接的权限,提升数据库安全性。 | - |
新增支持函数的返回值 | - |
新增对Oracle内置包 | |
新增支持在Standby集群上挂载只读(RO)节点。此功能允许Standby集群对外提供正常的只读服务。 | - |
新增在创建包时,其所在的Schema拥有比 | - |
新增支持将集合类型中的 | |
新增 | - |
新增支持关联数组与特定字符串格式之间的 | - |
新增支持普通函数能够使用包变量作为其参数默认值的功能,提升了代码的灵活性和模块化程度。 | - |
新增对Oracle内置包 DBMS_LOB中部分函数的兼容支持,增强了对大对象(LOB)类型的操作能力。 | - |
新增对物化视图的本地替换操作支持。 | - |
新增支持游标默认为 | - |
性能优化
说明 |
优化分区表父表的查询性能,新增支持在其上使用扫描Hint,如 |
优化子查询的性能,新增通过 |
优化 |
优化 |
缺陷修复
说明 |
修复在游标名称因超长(超过63字节)被截断时,可能导致 |
修复在创建聚合函数时若缺少必要参数,会导致数据库发生 |
修复向量化引擎在列存索引只读节点上的适配问题,确保其在该类节点上稳定运行。 |
修复在包内定义的游标无法引用同包内其他函数的问题。 |
修复在PL/SQL块中,特定事务上下文处理不当可能引发的逻辑错误问题。 |
修复Serverless集群在扩容期间,因并行缓存下刷错误的缓存ID而可能导致的集群崩溃问题。 |
修复在回放两阶段事务(2PC)过程中,可能导致slab内存持续上涨的问题。 |
修复在游标SQL的子查询中,当使用 |
修复 |
修复在PL事务提交时,使用 |
修复 |
修复在包函数的参数默认值使用了包变量,且包初始化块中调用的函数包含 |
修复 |
修复 |
修复在 |
修复在 |
修复因字符排序规则处理不当,导致无法调用使用不同排序规则的子函数的问题。 |
2.0.14.17.35.0(2025.08)
新增功能
说明 | 相关文档 |
新增支持用户名大小写不敏感。开启后,创建全大写名称的对象时将自动转换为小写。 | - |
新增支持 | - |
新增 | - |
新增 | - |
新增支持 | - |
新增支持二维/三维 | - |
新增 | - |
新增支持在触发器(trigger)的子函数中使用 | - |
新增支持集合类型字段作为 | |
新增 | |
新增支持 | - |
新增支持在游标(cursor)定义中使用通用表达式(CTE)。 | - |
新增支持使用 | - |
新增支持在用户会话级别下使用 | - |
新增支持 | - |
新增支持多重嵌套同义词指向表和视图等数据库对象。 | - |
新增 | - |
新增支持 | - |
新增 | |
新增支持控制在分区表上创建索引时默认使用全局索引(global index)而非本地索引(local index)。 | - |
新增支持子查询的 | - |
新增支持在JOIN条件表达式中使用同名别名引用不同表列。 | - |
新增支持在子查询中引用上层查询 | - |
性能优化
说明 |
优化PolarDB PostgreSQL分布式版集群下使用 |
优化NVL2在处理不同数据类型参数时的内部逻辑。 |
优化PL/SQL中选择性是否使用表达式缓存(expression cache)与类型转换缓存(cast cache),有效解决了在频繁提交的短事务场景下,这两类缓存可能导致的内存过度消耗问题,增强了系统在高并发事务处理下的稳定性。 |
优化表大小缓存(RSC)在 |
优化隐式类型转换的比较规则。升级后的规则更符合字符串与数字混合计算的直觉和逻辑,提升了数据比较的准确性和SQL兼容性。 |
优化并行回放功能,使其覆盖所有数据库恢复(recovery)场景。 |
优化分区表(PTS)的查询代价估算模型。优化后的模型在分区数量非常多的场景下能够提供更精准的代价估算,帮助查询优化器选择更高效的执行计划。 |
优化 |
优化后台刷脏(checkpoint)进程的I/O合并逻辑。 |
缺陷修复
说明 |
修复当游标(cursor)名称过长(超过64个字符)被截断时,可能会意外移除必要的 |
修复在回放两阶段提交事务的过程中,可能导致slab内存持续上涨的内存泄漏问题。 |
修复从对象存储(OSS)进行数据备份恢复时,有概率发生集群崩溃的问题。 |
修复在Serverless形态下,集群扩容过程中由于并行缓存刷入了错误的缓存ID而可能引发集群崩溃的问题。 |
修复在 |
修复资源管理器中关于 |
修复日志索引(LogIndex)的LSN迭代器在特定场景下可能读取到旧的LSN(日志序列号)的问题。 |
修复表大小缓存(RSC)功能在处理全局表空间时的逻辑缺陷问题。 |
修复 |
修复密码加密检查钩子(password_encryption checkhook)中缺少对系统表的访问条件的问题。 |
修复当包(package)中的 |
修复在 |
修复日志索引(LogIndex)的按需回放功能中存在的内存泄漏问题。 |
修复共享内存参数 |
修复当事务回滚(rollback)到一个已存在的同名保存点(SAVEPOINT)时,回滚行为与预期不一致的问题。 |
修复 |
修复在连接表达式中,当使用相同别名引用不同表中的列时可能出现的解析错误问题。 |
2.0.14.17.34.0(2025.07)
新增功能
说明 | 相关文档 |
支持切换分区表默认创建的索引类型,可设置为 | |
支持在分区键为C Collation且使用LIKE前缀表达式的情况下,能够进行分区裁剪。 | - |
支持函数调用时,普通函数优先级高于同名的指向函数的同义词。 | - |
支持在包内创建同名的公有变量和私有变量。 | |
支持将集合类型变量作为包函数中参数的默认值。 | |
支持在包中使用 | |
支持在 | |
支持在PL/SQL的 | |
支持 | - |
支持 | |
支持 | |
支持 | - |
支持在 | |
支持 | |
支持DO匿名块绑定无类型参数。 | - |
支持在触发器中使用 | - |
升级CALL函数的语法逻辑,支持更加丰富的JDBC绑定参数用法。 | |
支持子函数使用外部声明的游标。 | - |
支持在包中的游标SQL定义中使用包函数。 | - |
支持DBMS_OBFUSCATION_TOOLKIT包中使用DES和3DES加解密算法。 | |
支持在JOIN条件表达式中合法条件下使用重复别名。 | - |
支持从子查询中获取rowid列。 | - |
性能优化
说明 |
优化 |
优化向量化引擎 |
优化分区表计划加速(PartitionedTable Scan)的代价模型,使其在分区数较多的场景下估计的更加准确。 |
缺陷修复
说明 |
修改 |
修复JSON复合类型类型的get、get_Object和get_Array方式无法返回NULL的问题。 |
修复集合类型中变长元素的typmod信息丢失而导致长度约束失效的问题。 |
修复PL/SQL上下文中错误的内存释放问题。 |
修复包中OUT参数在入参时未被正确赋值为NULL的问题。 |
修复PL/SQL中 |
修复包记录字段作为参数传递时被错误修改的问题。 |
修复自治事务可能死锁的问题。 |
修复子函数参数具有默认值时,参数类型校验逻辑错误的问题。 |
修复Date数据类型的兼容问题及支持 |
2.0.14.17.33.0(2025.06)
新增功能
说明 | 相关文档 |
时空数据库(Ganos)升级至7.6版本。 | |
支持在子函数中使用 | |
支持三维关联数组及内置方法。 | |
兼容DISTINCT聚集函数。 | |
支持集合类型MULTISET CAST操作,可将查询结果转换成指定的集合类型。 | |
支持将 | |
支持在控制台修改 | |
支持在控制台修改 | |
支持JDBC驱动使用函数的 | |
支持在 | 无 |
支持忽略 | 无 |
支持局部函数调用包函数。 | 无 |
支持 | 无 |
支持 | 无 |
支持 | 无 |
支持一维 | 无 |
支持 | 无 |
支持游标参数使用 | 无 |
支持 | 无 |
支持 | 无 |
支持使用 | 无 |
更新 | 无 |
支持 | 无 |
支持在错误日志中输出Search Path信息。 | 无 |
支持PL/SQL中的错误日志明细打印。 | 无 |
单条审计日志的长度更新为32 KB。 | 无 |
性能优化
说明 | |
优化 | |
提升 |
缺陷修复
说明 |
修复大写列名未适配 |
修复PL事务中 |
修复PL/SQL中错误的上下文切换导致的稳定性问题。 |
修复 |
修复并行回放中 |
修复 |
2.0.14.17.32.0(2025.05)
新增功能
说明 | 相关文档 |
时空数据库(Ganos)升级至7.5版本。 | |
支持兼容Oracle形式的 | 无 |
支持 | 无 |
支持 | 无 |
支持带引号的 | 无 |
支持对 | 无 |
支持调用存储过程或函数时使用保留关键字作为函数参数名。 | 无 |
支持将 | 无 |
| 无 |
支持 | 无 |
不支持将 | 无 |
支持 | |
支持SQL查询中表外层嵌套若干层括号的用法。 | 无 |
支持在PL/SQL中 | 无 |
支持 | 无 |
支持将 | 无 |
支持 | 无 |
支持在 | 无 |
支持物化视图(Materialized View)REFRESH ON DEMAND的语法。 | 无 |
支持 | 无 |
支持 | 无 |
允许定义视图时跳过更新检查字段。 | 无 |
支持 | 无 |
支持以 | 无 |
SER_TAB_PARTITIONS视图中的HIGH_VALUE列实现与Oracle的兼容。 | 无 |
支持FORCE UNDER创建子类。 | 无 |
子查询中,使用了包变量作为查询条件或参数。 | 无 |
CREATE TABLE语句现已支持CACHE和NOCACHE语法。 | 无 |
ALTER TYPE语句现已支持通过ADD/DROP语法同时增加或删除多个列。 | 无 |
支持 | 无 |
XMLType类型新增Extract、GetStringVal、 Extract、ExtractValue、ExistsNode和Xmlsequence函数。提升XML数据的解析与处理能力。 | |
分区表的ROW触发器现已支持ALTER TRIGGER ENABLE/DISABLE语法。 | |
| 无 |
缺陷修复
说明 | |
修复 | |
修复函数中DETERMINISTIC语义的定义。 | |
修复Function Out参数注册后在短路求值场景并未执行的问题。 | |
修复pkgvar节点未进行解析和处理输出的问题。 | |
修复集合类型中 |
2.0.14.15.31.0(2025.04)
新增功能
说明 | 相关文档 |
时空数据库(Ganos)升级至7.4版本。 | |
兼容Oracle形式的 | 无 |
支持创建表DDL语句的MONITORING关键字,以启用监视相关的统计信息收集。 | 无 |
支持Package中的函数依赖于当前包中后续创建的类型。 | 无 |
支持使用 | 无 |
支持创建基于SCHEMA和DATABASE的DDL触发器。 | 无 |
支持使用ALTER TRIGGER ENABLE/DISABLE管理系统触发器。 | 无 |
支持SELECT中FROM子句包括别名的子查询使用括号创建临时表。 | 无 |
支持带引号的ROWNUM用法。 | 无 |
支持ALL_COL_COMMENTS视图,用于展示数据库中所有表、视图和相关列的注释信息。 | 无 |
支持MERGE INTO子查询。 | 无 |
支持USERENV函数,用于获取当前用户会话信息。 | 无 |
支持访问Package名称时忽略大小写。 | 无 |
优化V$SESSION视图,新增 |
性能优化
说明 | 相关文档 |
优化DBMS_UTILITY.FORMAT_CALL_STACK格式,避免多余FORMAT_CALL_STACK信息打印。 | |
优化关联数组作为函数参数时的执行效率,降低关联数组的默认内存大小,提高内存使用效率。 | 无 |
缺陷修复
说明 |
修复存储过程中使用 |
修复DBMS_APPLICATION_INFO中函数的STRICT属性导致NULL空值无法设置的问题。 |
修复大写列名导致ORDER BY等子句无法识别的问题。 |
修复使用嵌套聚合语法创建的视图在查看定义时崩溃的问题。 |
修复存储过程OUT包含变长类型和集合类型时的RECORD场景报错问题。 |
修复PL/SQL中事务提交后,可能使用到已释放资源所有者问题。 |
修复触发器子函数中使用 |
修复INSERT/UPDATE集合类型元素时未处理 |
修复DATE类型在JSON和XML中丢失时分秒精度的问题。 |
2.0.14.15.30.0(2025.03)
新增功能
说明 | 相关文档 |
新增 | |
将同步DDL的等待延迟到提交事务阶段。 | 无 |
支持Cursor命名参数使用 | 无 |
支持在同一语句中使用相同别名的不同列名,即支持基于 | 无 |
支持函数的OUT参数适配数字类型的隐式类型转换。 | 无 |
缺陷修复
说明 |
修复在跨分区更新及分区裁剪场景下可能出现的Global Index报错问题。 |
修复在Global Index作为外键的情况下,Attach子分区可能出现错误的问题。 |
禁止在包含Global Index的分区表上Attach外表。 |
2.0.14.15.29.0(2025.02)
新增功能
说明 | 相关文档 |
时空数据库(Ganos)升级至7.3版本。 | |
支持在控制台修改基于代价的查询变换(CBQT)相关参数。 | |
支持结构迁移中存在多余的 | 无 |
| 无 |
性能优化
说明 |
提升数据迁移过程中 |
2.0.14.13.28.0(2025.01)
新增功能
说明 | 相关文档 |
支持计划固定(STATEMENT OUTLINE)功能,为某类SQL自动增加HINT,在不影响业务应用程序的情况下,精确控制SQL执行计划。 | |
支持基于代价的查询变换(CBQT,Cost Based Query Transformation)框架,能够基于代价的查询变换,大幅提升某些复杂查询的执行效率。 | |
支持子连接下推的查询改写功能,能够提升含有IN/ANY子句的SQL的执行效率。 | |
时空数据库(Ganos)升级至7.2版本。 | |
新增Polar_AI扩展,集成先进的AI模型和算法,使得数据库能够执行机器学习和自然语言处理等任务。 | |
| |
支持在控制台修改 | |
支持在控制台修改 | |
分层存储按时间线归档时支持 | |
支持在使用全局索引的分区表中进行并发更新或删除的场景下,通过行锁等待后获取最新的数据行,并基于该最新行进行条件计算,然后执行相应的操作。 | 无 |
支持 | 无 |
支持 | 无 |
支持SYS.ODCIVarchar2List类型。 | 无 |
支持DBMS_TRANSACTION内置包。 | 无 |
支持UTL_TCP内置包。 | 无 |
支持DBMS_SQL、DBMS_OUTPUT等内置包中的关联数组。 | |
支持 | 无 |
支持定义游标(CURSOR)时指定参数默认值。 | |
支持集合类型范围删除。 | 无 |
支持使用 | 无 |
性能优化
说明 | 相关文档 |
支持向量索引迭代扫描。 |
缺陷修复
说明 |
修复索引推荐在JOIN场景下未推荐索引的问题。 |
修复全局索引在某些场景下的代价高估问题。 |
修复分布式查询超长行(单行超 4MB)表时 |
修复 |
修复在包创建和使用过程中遇到的稳定性问题。 |
修复包中不同函数引用其他包 |
修复函数返回包变量 |
修复 |