Skip to content

Commit 509d487

Browse files
authored
Merge pull request #320 from NotHimmel/v5.6
docs: update 5.6 release notes and bug fix.
2 parents 6068dc3 + 7d2528a commit 509d487

6 files changed

Lines changed: 123 additions & 88 deletions

File tree

CN/modules/ROOT/pages/1.adoc

Lines changed: 59 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -4,78 +4,94 @@
44

55
== 版本概览
66

7-
[*发布日期:2026 年 6 月 17 日*]
7+
[*发布日期:2026 年 9 月 17 日*]
88

9-
IvorySQL 5.4 基于 PostgreSQL 18.4 构建,包含多项错误修复。有关更新的完整列表,请访问我们的 https://docs.ivorysql.org/[文档站点]。
9+
IvorySQL 5.6 将 PostgreSQL 内核升级至 18.6,并针对 Oracle 兼容性、内存安全、客户端接口和扩展构建提供多项修复。有关更新的完整列表,请访问我们的 https://docs.ivorysql.org/[文档站点]。
1010

11-
== 增强内容
11+
== 上游更新
12+
13+
由于在发布准备过程中发现了回归问题,PostgreSQL 18.5 未发布。
1214

13-
- PostgreSQL 18.4
15+
- PostgreSQL 18.6
1416

15-
1. 修复处理启动数据包时可能出现的无限递归问题
16-
2. 修复内存分配计算中的各种整数溢出问题
17-
3. 修复 pg_createsubscriber 中订阅名称未正确添加引号的问题
18-
4. 修复逻辑复制源检查中对象名称未正确添加引号的问题
19-
5. 修复 `ts_headline()` 中未拒绝超长选项的问题
20-
6. 修复恢复属性 MCV 统计信息时错误输入的检测问题
17+
1. 通过新增的服务器参数 `output_plugin_libraries`,将逻辑解码输出插件限制为该参数指定的集合
18+
2. 修复 contrib/pgcrypto 的 PGP 加密,使其能够检测不支持的加密算法
19+
3. 修复 psql:即使脚本中的 `COPY ... FROM STDIN` 命令在发送 `PGRES_COPY_IN` 前失败,也能跳过该命令后的内联数据
20+
4. 在此前未执行检查的位置检查数据类型的 `USAGE` 权限
21+
5. 角色变更后,使依赖角色的缓存计划失效
22+
6. 确保并行 GIN 索引构建能够正确更新表的 `pg_class.reltuples` 值
2123

22-
更多详情,请参阅 https://www.postgresql.org/docs/release/18.4/[PostgreSQL 18.4 发布说明]。
24+
更多详情,请参阅 https://www.postgresql.org/docs/release/18.6/[PostgreSQL 18.6 发布说明]。
2325

24-
== 新特性
26+
== 增强内容
2527

26-
- 升级至 PG 18.4 内核:Feature https://github.com/IvorySQL/IvorySQL/pull/1344[#1344] +
27-
PostgreSQL 内核已升级至 18.4 版本。
28+
- 升级至 PG 18.6 内核:Feature https://github.com/IvorySQL/IvorySQL/pull/1719[#1719] +
29+
PostgreSQL 内核已升级至 18.6 版本。
2830

29-
- [IvorySQL Skills](https://github.com/IvorySQL/skills)
30-
帮助 AI 助手成为 IvorySQL 数据库专家.
31+
- AI 辅助贡献指南:Feature https://github.com/IvorySQL/IvorySQL/pull/1473[#1473] +
32+
制定相关指南,涵盖许可证合规、人工审查与签署责任、AI 工具归属标注、AI 生成代码占比披露,以及负责任地参与代码审查
3133

32-
- http://trial.ivorysql.org/[在线体验]:IvorySQL 5.4:Feature https://github.com/IvorySQL/ivorysql-wasm/pull/10[#10] +
33-
上线交互式浏览器环境,用户可实时体验与评估 IvorySQL 5.4,无需安装。
34+
- IvorySQL 5.6 http://trial.ivorysql.org/[在线体验]:Feature https://github.com/IvorySQL/ivorysql-wasm/pull/12[#12] +
35+
现已提供交互式浏览器环境,用户可实时体验与评估 IvorySQL 5.6,无需安装。
3436

35-
- 全平台打包+
36-
为 X86、ARM、MIPS、龙芯架构等平台提供多架构安装介质
37+
- 全平台打包 +
38+
为 X86、ARM、MIPS 和龙芯架构提供多平台安装介质
3739

3840
- 容器化部署支持 +
39-
支持通过 Docker Compose、Podman、Swarm、Helm 以及 IvorySQL 5.4 Operator 一键部署单机或高可用的 IvorySQL 5.4 集群。
41+
支持通过 Docker Compose、Podman、Swarm、Helm 以及 IvorySQL 5.6 Operator 快速部署单机或高可用的 IvorySQL 5.6 集群。
4042

41-
- 发布 IvorySQL Cloud 5.4(统一全生命周期与可视化控制平台) +
42-
提供可视化托管控制平台,覆盖订阅、端到端的全生命周期编排以及生态集成
43+
- 发布 IvorySQL Cloud 5.6(数据库全生命周期可视化管理平台) +
44+
提供全托管的可视化控制平台,负责 IvorySQL 5.6 数据库订阅、端到端的全生命周期编排,并集成周边生态服务
4345

44-
- PostgreSQL Extensions +
45-
新增支持 10 个 PostgreSQL 扩展:pg_cron、pgAudit、PostGIS、pgRouting、PGroonga、ddlx、pgsql-http、system_stats、plpgsql_check、pgvector
46+
- 扩展 +
47+
支持 34 个额外的扩展和工具:AGE、ddlx、pg_ai_query、pg_bigm、pg_bulkload、pg_cron、pg_curl、pg_hint_plan、pg_jieba、pg_partman、pg_profile、pg_readonly、pg_repack、pg_show_plans、pg_stat_monitor、pg_textsearch、pgagent、pgaudit、pgBackRest、pgBouncer、PgDog、pgnodemx、PGroonga、pgRouting、pgsql-http、pgtt、pgvector、plpgsql_check、PostGIS、redis_fdw、set_user、system_stats、wal2json、zhparser
4648

47-
- 增强了 EXTRACT 函数,在 SQL 查询中接受更多语法变体。: PR https://github.com/IvorySQL/IvorySQL/pull/1222[#1222]
49+
== 缺陷修复
50+
51+
- 修复 Oracle 兼容的 interval 乘除法中可能发生的溢出和 NaN 处理不当问题:PR https://github.com/IvorySQL/IvorySQL/pull/1211[#1211]
52+
- 禁止通过 ALTER USER/ROLE/DATABASE SET 持久化 ivorysql.compatible\_mode,并封堵 SET ... TO DEFAULT 和针对该参数执行 RESET 的绕过方式:PR https://github.com/IvorySQL/IvorySQL/pull/1372[#1372]
53+
- 修复表达式求值期间,带包限定符的变量引用被解析为无关局部变量的问题:PR https://github.com/IvorySQL/IvorySQL/pull/1381[#1381]
54+
- 修复使用 GCC 14 及更高版本时的构建失败问题:PR https://github.com/IvorySQL/IvorySQL/pull/1385[#1385]
55+
- 修复序列中相互冲突或重复的 SHARD 选项校验问题:PR https://github.com/IvorySQL/IvorySQL/pull/1401[#1401]
56+
- 修复第三方 PostgreSQL 扩展针对 IvorySQL 构建时的失败问题:PR https://github.com/IvorySQL/IvorySQL/pull/1448[#1448]
57+
- 使 ivorysql.enable\_case\_switch 在 SHOW ALL 中可见,并可通过配置文件进行配置:PR https://github.com/IvorySQL/IvorySQL/pull/1450[#1450]
58+
- 修复 DBMS\_UTILITY 回溯和调用栈输出中缺少包名及模式限定错误的问题:PR https://github.com/IvorySQL/IvorySQL/pull/1471[#1471]
59+
- 修复 REGEXP\_COUNT、REGEXP\_SUBSTR、REGEXP\_INSTR 和 REGEXP\_REPLACE 中换行符处理错误以及 m/n 选项行为异常的问题:PR https://github.com/IvorySQL/IvorySQL/pull/1489[#1489]
60+
- 修复 Ivyresult 提前返回路径上的内存泄漏问题:PR https://github.com/IvorySQL/IvorySQL/pull/1556[#1556]
61+
- 修复 psql 命名绑定查询转义和 \\bind 处理中发生的堆缓冲区越界问题:PR https://github.com/IvorySQL/IvorySQL/pull/1569[#1569]
62+
- 修复 XML 函数使用过长的命名空间前缀或 URL 时发生的堆缓冲区溢出问题:PR https://github.com/IvorySQL/IvorySQL/pull/1827[#1827]
4863

4964
== 源码仓库
5065

51-
IvorySQL 的主要代码仓库
66+
IvorySQL 的开发工作主要在以下四个代码仓库中进行
5267

5368
- IvorySQL 数据库源码:https://github.com/IvorySQL/IvorySQL
5469
- IvorySQL 官网:https://github.com/IvorySQL/Ivory-www
55-
- IvorySQL 文档:https://github.com/IvorySQL/IvorySQL-docs
70+
- IvorySQL 文档:https://github.com/IvorySQL/IvorySQL_docs
5671
- IvorySQL Docker:https://github.com/IvorySQL/docker_library
5772

5873
== 贡献者名单
5974

6075
以下人员(按字母顺序)作为补丁作者、提交者、审阅者、测试者或问题报告者,为本次发布做出了贡献。
6176

62-
* 3296442201
63-
* Adria0615
64-
* anapplebeee
77+
* 123123213weqw
78+
* Aias00
79+
* ai-yang
80+
* btlqql
6581
* Cédric Villemain
82+
* db-nikhil
83+
* digoal
84+
* enkilee
85+
* goeason-world
6686
* Grant Zhou
67-
* jerome-peng
68-
* liketoochao
69-
* movead123
70-
* msdnchina
71-
* Pierre Forstmann
72-
* Rophy Tsai
87+
* lispking
88+
* messere1
7389
* tian1220A
74-
* xiaoyu509
75-
* yes7rose
90+
* xuhuicai
91+
* yaozichen2025
7692
* Yasir Hussain Shah
77-
* z20081120087
78-
* zuinuan123
93+
* yyqdbngt
94+
* Z95-cmyk
7995
* 高雪玉
8096
* 韩建桥
8197
* 矫顺田
@@ -90,3 +106,5 @@ IvorySQL 的主要代码仓库:
90106
* 严少安
91107
* 赵法威
92108
* 张哲
109+
110+
https://github.com/IvorySQL/IvorySQL/compare/IvorySQL_5.4\...IvorySQL_5.6[完整变更记录]

CN/modules/ROOT/pages/5.14.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ sudo make USE_PGXS=1 \
6969

7070
== 配置预加载
7171

72-
在 `postgresql.conf` 中将 pgnodemx 追加到已有的 `shared_preload_libraries`,不要删除 IvorySQL 原有预加载库。
72+
在 `ivorysql.conf` 中将 pgnodemx 追加到已有的 `shared_preload_libraries`,不要删除 IvorySQL 原有预加载库。
7373

7474
[source,ini]
7575
----

CN/modules/ROOT/pages/7.3.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ ERROR: relation "Normal_3" does not exist
112112
LINE 1: select * from "Normal_3";
113113
114114
ivorysql=# drop table "NORMAL_1";
115-
DROP TABLE
115+
ERROR: relation "NORMAL_1" does not exist
116116
ivorysql=# drop table "Normal_2";
117117
DROP TABLE
118118
ivorysql=# drop table "normal_3";

EN/modules/ROOT/pages/1.adoc

Lines changed: 60 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -1,51 +1,65 @@
1-
21
:sectnums:
32
:sectnumlevels: 5
43

54

65
== Version Overview
76

8-
[*Release Date: June 17, 2026*]
7+
[*Release Date: September 17, 2026*]
98

10-
IvorySQL 5.4 is built on PostgreSQL 18.4 and includes a variety of bug fixes. For a comprehensive list of updates, please visit our [documentation site](https://docs.ivorysql.org/).
9+
IvorySQL 5.6 updates the PostgreSQL core to version 18.6 and delivers fixes for Oracle compatibility, memory safety, client interfaces, and extension builds. For a comprehensive list of updates, please visit our https://docs.ivorysql.org/[documentation site].
1110

12-
== Enhancements
11+
== Upstream Updates
1312

14-
- PostgreSQL 18.4
13+
PostgreSQL 18.5 was not released because a regression was discovered during release preparation.
1514

16-
1. Prevent unbounded recursion while processing startup packets.
17-
2. Fix assorted integer overflows in memory-allocation calculations.
18-
3. Properly quote subscription names in pg_createsubscriber.
19-
4. Properly quote object names in logical replication origin checks.
20-
5. Reject over-length options in `ts_headline()`.
21-
6. Detect faulty input when restoring attribute MCV statistics.
15+
- PostgreSQL 18.6
2216

23-
For further details, visit https://www.postgresql.org/docs/release/18.4/[PostgreSQL's release notes].
17+
1. Restrict logical decoding output plugins to the set specified by a new server parameter `output_plugin_libraries`.
18+
2. Fix contrib/pgcrypto's PGP encryption to detect unsupported ciphers.
19+
3. Fix psql to skip in-line data following a scripted `COPY ... FROM STDIN` command, even if the `COPY` fails before sending `PGRES_COPY_IN`.
20+
4. Check for `USAGE` privilege on data types in places that formerly failed to check that.
21+
5. Invalidate role-dependent cached plans after role changes.
22+
6. Ensure that parallel GIN index builds update the table's `pg_class.reltuples` value correctly.
2423

25-
== New Features
24+
For further details, visit https://www.postgresql.org/docs/release/18.6/[PostgreSQL 18.6 release notes].
2625

27-
- Upgrade to PG 18.4 kernel: Feature https://github.com/IvorySQL/IvorySQL/pull/1344[#1344] +
28-
PostgreSQL kernel upgraded to version 18.4.
26+
== Enhancements
2927

30-
- [IvorySQL Skills](https://github.com/IvorySQL/skills)
31-
Empowering AI assistants to become IvorySQL database experts.
28+
- Upgrade to PG 18.6 kernel: Feature https://github.com/IvorySQL/IvorySQL/pull/1719[#1719] +
29+
PostgreSQL kernel upgraded to version 18.6.
3230

33-
- http://trial.ivorysql.org/[Online Experience]: IvorySQL 5.4: Feature https://github.com/IvorySQL/ivorysql-wasm/pull/10[#10] +
34-
An interactive, browser-based environment will be launched to allow users to explore and evaluate IvorySQL 5.4 in real time — no installation required.
31+
- AI-assisted contribution guidelines: Feature https://github.com/IvorySQL/IvorySQL/pull/1473[#1473] +
32+
Establish guidelines covering licensing compliance, human review and sign-off responsibilities, AI tool attribution, disclosure of AI-generated code percentages, and responsible participation in code reviews.
3533

36-
- Packaging for All Platforms: +
37-
Provides multi-platform media packages for X86, ARM, MIPS, LoongArch architecture.
34+
- IvorySQL 5.6 http://trial.ivorysql.org/[Online Experience]: Feature https://github.com/IvorySQL/ivorysql-wasm/pull/12[#12] +
35+
An interactive, browser-based environment is now available, allowing users to explore and evaluate IvorySQL 5.6 in real time — no installation required.
36+
37+
- Packaging for All Platforms +
38+
Provides multi-platform media packages for X86, ARM, MIPS, and LoongArch architectures.
3839

3940
- Containerized Deployment Support +
40-
Supports one-click deployment of standalone or highly available IvorySQL 5.4 clusters via Docker Compose, Podman, Swarm, Helm, and the IvorySQL 5.4 Operator.
41+
Supports quick deployment of standalone or highly available IvorySQL 5.6 clusters via Docker Compose, Podman, Swarm, Helm, and the IvorySQL 5.6 Operator.
42+
43+
- IvorySQL Cloud 5.6 released (Visual Database Lifecycle Management Platform) +
44+
Offers a fully managed, graphical control plane that handles IvorySQL 5.6 database subscriptions, orchestrates end-to-end lifecycle operations, and integrates surrounding ecosystem services.
4145

42-
- IvorySQL Cloud 5.4 released (Visual Database Lifecycle Management Platform) +
43-
Offers a fully managed, graphical control plane that handles IvorySQL 5.4 database subscriptions, orchestrates end-to-end lifecycle operations, and integrates surrounding ecosystem services.
46+
- Extensions +
47+
Support for 34 Additional Extensions and Tools: AGE, ddlx, pg_ai_query, pg_bigm, pg_bulkload, pg_cron, pg_curl, pg_hint_plan, pg_jieba, pg_partman, pg_profile, pg_readonly, pg_repack, pg_show_plans, pg_stat_monitor, pg_textsearch, pgagent, pgaudit, pgBackRest, pgBouncer, PgDog, pgnodemx, PGroonga, pgRouting, pgsql-http, pgtt, pgvector, plpgsql_check, PostGIS, redis_fdw, set_user, system_stats, wal2json, zhparser.
4448

45-
- PostgreSQL Extensions +
46-
Support for 10 Additional PostgreSQL Extensions: pg_cron, pgAudit, PostGIS, pgRouting, PGroonga, ddlx, pgsql-http, system_stats, plpgsql_check, pgvector.
49+
== Fixed Issues
4750

48-
- Enhanced the EXTRACT function support to accept additional syntax variations in SQL queries: PR https://github.com/IvorySQL/IvorySQL/pull/1222[#1222]
51+
- Fix potential overflow and NaN mishandling in Oracle-compatible interval multiplication and division: PR https://github.com/IvorySQL/IvorySQL/pull/1211[#1211]
52+
- Disallow persisting ivorysql.compatible\_mode through ALTER USER/ROLE/DATABASE SET, and close the SET ... TO DEFAULT and parameter-specific RESET bypasses: PR https://github.com/IvorySQL/IvorySQL/pull/1372[#1372]
53+
- Fix package-qualified variable references resolving to unrelated local variables during expression evaluation: PR https://github.com/IvorySQL/IvorySQL/pull/1381[#1381]
54+
- Fix build failures with GCC 14 and later: PR https://github.com/IvorySQL/IvorySQL/pull/1385[#1385]
55+
- Fix validation of conflicting or repeated SHARD options on sequences: PR https://github.com/IvorySQL/IvorySQL/pull/1401[#1401]
56+
- Fix build failures of third-party PostgreSQL extensions against IvorySQL: PR https://github.com/IvorySQL/IvorySQL/pull/1448[#1448]
57+
- Make ivorysql.enable\_case\_switch visible in SHOW ALL and configurable in configuration files: PR https://github.com/IvorySQL/IvorySQL/pull/1450[#1450]
58+
- Fix missing package names and wrong schema qualification in DBMS\_UTILITY backtrace and call-stack output: PR https://github.com/IvorySQL/IvorySQL/pull/1471[#1471]
59+
- Fix incorrect newline handling and m/n option behavior in REGEXP\_COUNT, REGEXP\_SUBSTR, REGEXP\_INSTR, and REGEXP\_REPLACE: PR https://github.com/IvorySQL/IvorySQL/pull/1489[#1489]
60+
- Fix Ivyresult memory leaks on early-return paths: PR https://github.com/IvorySQL/IvorySQL/pull/1556[#1556]
61+
- Fix heap buffer overruns in psql named-bind query escaping and \\bind handling: PR https://github.com/IvorySQL/IvorySQL/pull/1569[#1569]
62+
- Fix heap buffer overflows when long namespace prefixes or URLs are used in XML functions: PR https://github.com/IvorySQL/IvorySQL/pull/1827[#1827]
4963

5064
== Source Code
5165

@@ -60,34 +74,37 @@ IvorySQL's development is maintained across four main repositories:
6074

6175
The following individuals (in alphabetical order) have contributed to this release as patch authors, committers, reviewers, testers, or reporters of issues.
6276

63-
* 3296442201
64-
* Adria0615
65-
* anapplebeee
77+
* 123123213weqw
78+
* Aias00
79+
* ai-yang
80+
* btlqql
6681
* Cédric Villemain
82+
* db-nikhil
83+
* digoal
84+
* enkilee
6785
* Fawei Zhao
6886
* Ge Sui
87+
* goeason-world
6988
* Grant Zhou
7089
* hanjianqiao
71-
* jerome-peng
72-
* liketoochao
73-
* movead123
74-
* msdnchina
75-
* Pierre Forstmann
76-
* Rophy Tsai
77-
* Shawn Yan
90+
* lispking
91+
* messere1
92+
* NotHimmel
7893
* Shuntian Jiao
7994
* Steven Niu
8095
* tian1220A
81-
* xiaoyu509
82-
* Xiaohui Liu
8396
* Xiangyu Liang
97+
* Xiaohui Liu
8498
* Xinjie LYU
8599
* Xueyu Gao
86-
* yes7rose
100+
* xuhuicai
101+
* yaozichen2025
87102
* Yasir Hussain Shah
88-
* z20081120087
103+
* yyqdbngt
104+
* Z95-cmyk
89105
* Zhe Zhang
90-
* Zhenhao Pan
91106
* Zheng Tao
107+
* Zhenhao Pan
92108
* Zhuoyan Shi
93-
* zuinuan123
109+
110+
https://github.com/IvorySQL/IvorySQL/compare/IvorySQL_5.4\...IvorySQL_5.6[Complete Changelog]

EN/modules/ROOT/pages/5.14.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ Confirm that the selected `pg_config` belongs to IvorySQL 5.4 before compiling:
6969

7070
== Configure preloading
7171

72-
Append pgnodemx to the existing `shared_preload_libraries` value in `postgresql.conf`. Do not remove IvorySQL's existing preload libraries.
72+
Append pgnodemx to the existing `shared_preload_libraries` value in `ivorysql.conf`. Do not remove IvorySQL's existing preload libraries.
7373

7474
[source,ini]
7575
----

EN/modules/ROOT/pages/7.3.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ ERROR: relation "Normal_3" does not exist
113113
LINE 1: select * from "Normal_3";
114114
115115
ivorysql=# drop table "NORMAL_1";
116-
DROP TABLE
116+
ERROR: relation "NORMAL_1" does not exist
117117
ivorysql=# drop table "Normal_2";
118118
DROP TABLE
119119
ivorysql=# drop table "normal_3";

0 commit comments

Comments
 (0)