Amazon Aurora PostgreSQL 的引擎版本
在下文中,您可以了解有关 与 PostgreSQL 兼容的 Aurora 数据库引擎的支持版本的信息。Aurora 数据库具有两个版本号:Aurora 版本号和数据库引擎版本号。要确定 Aurora PostgreSQL 数据库的版本号,请参阅 确定您的 Amazon Aurora PostgreSQL 版本。
要确定 AWS 区域中有哪些 PostgreSQL 引擎版本可用,请使用 describe-db-engine-versions AWS CLI 命令。例如:
aws rds describe-db-engine-versions --engine aurora-postgresql --query '*[].[EngineVersion]' --output text --region
your-AWS-Region
有关 AWS 区域的列表,请参阅 Aurora PostgreSQL 区域可用性。
主题
- 与 PostgreSQL 11.8 兼容的版本 3.3
- 与 PostgreSQL 11.7 兼容的版本 3.2
- 与 PostgreSQL 11.6 兼容的版本 3.1
- 与 PostgreSQL 11.4 兼容的版本 3.0
- 与 PostgreSQL 10.13 兼容的版本 2.6
- 与 PostgreSQL 10.12 兼容的版本 2.5
- 与 PostgreSQL 10.11 兼容的版本 2.4
- 与 PostgreSQL 10.7 兼容的版本 2.3
- 与 PostgreSQL 10.6 兼容的版本 2.2
- 与 PostgreSQL 10.5 兼容的版本 2.1
- 与 PostgreSQL 10.4 兼容的版本 2.0
- 与 PostgreSQL 9.6.18 兼容的版本 1.8
- 与 PostgreSQL 9.6.17 兼容的版本 1.7
- 与 PostgreSQL 9.6.16 兼容的版本 1.6
- 与 PostgreSQL 9.6.12 兼容的版本 1.5
- 与 PostgreSQL 9.6.11 兼容的版本 1.4
- 与 PostgreSQL 9.6.9 兼容的版本 1.3
- 与 PostgreSQL 9.6.8 兼容的版本 1.2
- 与 PostgreSQL 9.6.6 兼容的版本 1.1 已弃用
- 与 PostgreSQL 9.6.3 兼容的版本 1.0 已弃用
有关扩展和模块的信息,请参阅 Amazon Aurora PostgreSQL 的扩展和模块。
支持以下 Aurora PostgreSQL 版本。
与 PostgreSQL 11.8 兼容的版本 3.3
该 Aurora PostgreSQL 版本与 PostgreSQL 11.8 兼容。有关 11.8 版中的改进的更多信息,请参阅 PostgreSQL 11.8 版
版本 3.3.1
You can find the following improvements in this engine update.
Critical stability enhancements
-
Fixed a bug which materializes when the
NOT EXISTS
operator incorrectly returns TRUE which can only happen under the following unusual set of circumstances:-
A query is using the
NOT EXISTS
operator. -
The column or columns being evaluated against the outer query in the
NOT EXISTS
subquery contain a NULL value. -
There is not a another predicate in the subquery that removes the need for the evaluation of the NULL values.
-
The filter used in the subquery does not use an index seek for its execution.
-
The operator is not converted to a join by the query optimizer.
-
版本 3.3.0
新功能
-
增加了对 RDKit 扩展版本 3.8 的支持。
RDKit 扩展为化学信息学提供了建模功能。化学信息学用于存储、索引、搜索、检索和应用有关化合物的信息。例如,使用 RDKit 扩展,您可以构建分子模型、搜索分子结构以及读取或创建各种符号的分子。您还可以对从 ChEMBL 网站
或 SMILES 文件加载的数据进行研究。简化分子输入线输入系统 (SMILES) 是一种用于表示分子和反应的印刷符号。有关更多信息,请参阅 RDKit 文档中的 RDKit 数据库盒 。 -
增加了对最低 TLS 版本的支持
从 PostgreSQL 12 中向后移植了对最低传输层安全性 (TLS) 版本的支持。它允许 Aurora PostgreSQL 服务器约束允许客户端通过两个新的 PostgreSQL 参数连接的 TLS 协议。这些参数包括 ssl_min_protocol_version
和 ssl_max_protocol_version 。例如,要将与 Aurora PostgreSQL 服务器的客户端连接限制为至少 TLS 1.2 协议版本,请将 ssl_min_protocol_version
设置为TLSv1.2
。 -
增加了对于
pglogical
扩展版本 2.2.2 的支持。pglogical
扩展是一个逻辑流复制系统,它提供 PostgreSQL 本机逻辑复制所不具备的其他功能。功能包括冲突处理、行筛选、DDL/序列复制和延迟应用。您可以使用pglogical
扩展来设置 Aurora PostgreSQL 集群之间、RDS PostgreSQL 与 Aurora PostgreSQL 之间以及与在 RDS 外部运行的 PostgreSQL 数据库之间的复制。 -
Aurora 动态调整集群存储空间的大小。通过动态调整大小,当您从 Aurora 数据库集群中删除数据时,该数据库集群的存储空间会自动减少。有关更多信息,请参阅存储扩展。
注意 动态调整大小功能正在分阶段部署到 Aurora 可用的 AWS 区域。根据集群所在的区域,此功能可能尚不可用。有关更多信息,请参阅新增功能公告
。
关键的稳定性增强功能
-
修复了一个与堆页面扩展相关的错误,该错误在极少数情况下会延长恢复时间并影响可用性。
高优先级稳定性增强功能
-
修复了 Aurora 全局数据库中的一个错误,该错误可能导致在辅助 AWS 区域中升级数据库引擎时出现延迟。有关更多信息,请参阅 使用 Amazon Aurora 全局数据库。
-
修复了一个在极少数情况下导致数据库升级到引擎版本 11.8 发生延迟的错误。
其他改进和增强功能
-
修复了在写入器实例上创建具有大量子事务的工作负载时 Aurora 副本崩溃的错误。
-
修复了以下错误:由于内存泄漏和用于跟踪活动事务的内存耗尽而导致写入器实例崩溃。
-
修复了在 PostgreSQL 后端启动期间没有可用内存时,由于初始化不正确而导致崩溃的错误。
-
修复了一个 Aurora PostgreSQL Serverless 数据库集群可能在扩展事件后返回以下错误的错误:
错误:预编译语句“S_6”已存在
。 -
修复了启用数据库活动流时使用 PostGIS 发出
CREATE EXTENSION
命令时的内存不足问题。 -
修复了以下错误:
SELECT
查询可能会错误地返回错误Attempting to read past EOF of relation rrrr. blockno=bbb nblocks=nnn (正在尝试读取过去的 rrrr. blockno=bbb nblocks=nnn 关系 EOF)
。 -
修复了一个由于数据库存储增长的错误处理而导致数据库短暂不可用的错误。
-
修复了 Aurora PostgreSQL Serverless 中的一个错误,该错误导致在以前空闲的连接上执行的查询被延迟到扩展操作完成之后。
-
修复了以下错误:启用了数据库活动流的 Aurora PostgreSQL 数据库集群可能会报告活动记录的潜在丢失时段的开始,但不报告连接恢复。
与 PostgreSQL 11.7 兼容的版本 3.2
该 Aurora PostgreSQL 版本与 PostgreSQL 11.7 兼容。有关 11.7 版中的改进的更多信息,请参阅 PostgreSQL 11.7 版
版本 3.2.4
You can find the following improvements in this engine update.
Critical stability enhancements
-
Fixed a bug which materializes when the
NOT EXISTS
operator incorrectly returns TRUE which can only happen under the following unusual set of circumstances:-
A query is using the
NOT EXISTS
operator. -
The column or columns being evaluated against the outer query in the
NOT EXISTS
subquery contain a NULL value. -
There is not a another predicate in the subquery that removes the need for the evaluation of the NULL values.
-
The filter used in the subquery does not use an index seek for its execution.
-
The operator is not converted to a join by the query optimizer.
-
版本 3.2.3
您可以在此引擎更新中发现下列改进。
关键的稳定性增强功能
-
无
高优先级稳定性增强功能
-
无
其他改进和增强功能
-
修复了 Aurora PostgreSQL Serverless 中的一个错误,该错误导致在以前空闲的连接上运行的查询被延迟到扩展操作完成。
-
修复了一个错误,该错误可能会在多个读取器实例重新启动或重新加入集群时导致繁重的子事务工作负载短暂不可用。
版本 3.2.2
您可以在此引擎更新中发现下列改进。
关键的稳定性增强功能
-
修复了一个与堆页面扩展相关的错误,该错误在极少数情况下会延长恢复时间并影响可用性。
高优先级稳定性增强功能
-
修复了 Aurora 全局数据库中的一个错误,该错误可能导致在辅助区域中升级数据库引擎时出现延迟。有关更多信息,请参阅 使用 Amazon Aurora 全局数据库。
-
修复了一个在极少数情况下导致数据库升级到引擎版本 11.7 发生延迟的错误。
其他改进和增强功能
-
修复了一个由于数据库存储增长的错误处理而导致数据库短暂不可用的错误。
-
修复了一个 SELECT 查询可能会错误地返回错误
正在尝试读取过去的 rrrr. blockno=bbb nblocks=nnn 关系 EOF
的错误。 -
修复了一个 Aurora PostgreSQL 无服务器数据库集群可能在扩展事件后返回以下错误的错误:
错误:预编译语句“S_6”已存在
。
版本 3.2.1
新功能
-
增加了对 Amazon Aurora PostgreSQL 全局数据库的支持。有关更多信息,请参阅 使用 Amazon Aurora 全局数据库。
-
增加了为 Aurora PostgreSQL 配置全局数据库的恢复点目标 (RPO) 的功能。有关更多信息,请参阅 管理 Aurora 全局数据库的恢复。
您可以在此引擎更新中发现下列改进。
关键的稳定性增强功能
无。
高优先级稳定性增强功能
-
改进了应用 DROP TABLE 和 TRUNCATE TABLE 操作时读取实例的性能和可用性。
-
修复了诊断模块中的一个小但连续的内存泄漏,该漏洞可能会导致较小的数据库实例类型上出现内存不足的情况。
-
修复了
PostGIS
扩展中可能会导致数据库重新启动的错误。这已报告给 PostGIS 社区,如 https://trac.osgeo.org/postgis/ticket/4646中所示。 -
修复了由于存储引擎中不正确的错误处理而导致读取请求可能停止响应的错误。
-
修复了因某些查询而失败并导致消息
ERROR: found xmin xxxxxx from before relfrozenxid yyyyyyy (错误: 从 relfrozenxid yyyyyyy 之前找到 xmin xxxxxx)
的错误。在将读取实例提升为写入实例后,可能会发生这种情况。 -
修复了 Aurora 无服务器数据库集群在回滚扩展尝试时可能会崩溃的错误。
其他改进和增强功能
-
改进了从存储中读取许多行的查询的性能。
-
改进了繁重的读取工作负载期间读取器数据库实例的性能和可用性。
-
在可能的情况下,使相关的 IN 和 NOT IN 子查询能够转换为联接。
-
通过使用多列统计信息或索引(如果可用),改进了筛选估计以增强半联接筛选器下推。
-
提高了
pg_prewarm
扩展的读取性能。 -
修复了 Aurora 无服务器数据库集群在扩展事件之后可能会报告消息
ERROR: incorrect binary data format in bind parameter ... (错误: 绑定参数中的二进制数据格式不正确...)
的错误。 -
修复了无服务器数据库集群在扩展事件之后可能会报告消息
ERROR: insufficient data left in message (错误: 消息中留下的数据不足)
的错误。 -
修复了 Aurora 无服务器数据库集群可能会遇到延长或失败的扩展尝试的错误。
-
修复了导致以下消息的错误:
ERROR: could not create file "base/xxxxxx/yyyyyyy" as a previous version still exists on disk: Success. (错误:无法创建文件“base/xxxxxx/yyyyyyy”,因为磁盘上仍然存在以前的版本:成功。)Please contact AWS customer support (错误: 无法创建文件“base/xxxxxx/yyyyyyy”,因为以前的版本仍然存在于磁盘上: 成功。请联系 AWS 客户支持)
。在对象创建期间,在 PostgreSQL 的 32 位对象标识符已换行后,可能会发生这种情况。 -
修复了将
wal_level
值从logical
更改为replica
时未删除 PostgreSQL 逻辑复制的预写日志 (WAL) 段文件的错误。 -
修复了
pg_hint_plan
扩展中多语句查询在启用enable_hint_table
时可能会导致崩溃的错误。在 PostgreSQL 社区中对此进行跟踪,如 https://github.com/ossc-db/pg_hint_plan/issues/25所示。 -
修复了在 Aurora 无服务器数据库集群中的扩展事件之后 JDBC 客户端可能会报告消息
java.io.IOException: Unexpected packet type: 75 (java.io.IOException: 意外的数据包类型: 75)
的错误。 -
修复了 PostgreSQL 逻辑复制中导致消息
ERROR: snapshot reference is not owned by resource owner TopTransaction (错误: 快照引用不由资源所有者 TopTransaction 拥有)
的错误。 -
更改了以下扩展:
-
orafce
更新为版本 3.8 -
pgTAP
更新为版本 1.1
-
-
提供了对故障注入查询的支持。
与 PostgreSQL 11.6 兼容的版本 3.1
该 Aurora PostgreSQL 版本与 PostgreSQL 11.6 兼容。有关 11.6 版中的改进的更多信息,请参阅 PostgreSQL 11.6 版
该版本包含多个关键的稳定性增强功能。Amazon 强烈建议您将使用旧版 PostgreSQL 11 引擎的 Aurora PostgreSQL 集群升级到此版本。
版本 3.1.3
关键的稳定性增强功能
-
无
高优先级稳定性增强功能
-
修复了由于错误处理不当而导致从存储中读取过程可能停止响应的错误。
其他改进和增强功能
-
无
版本 3.1.2
此版本包含一个关键的稳定性增强功能。Amazon 强烈建议您将与 Aurora PostgreSQL 11 兼容的旧集群更新为此版本。
关键的稳定性增强功能
-
修复了读取器数据库实例可能暂时使用过时数据的错误。这可能会导致错误的结果,例如行过多或过少。此错误不会保留在存储中,在数据库页面包含已从缓存中逐出的行时清除。在单个事务中的子事务超过 64 个导致主数据库实例进入事务快照溢出状态时,会发生这种情况。在包含超过 64 个子事务的顶级事务中,使用 SQL 保存点或 PostgreSQL 异常处理程序的应用程序容易受到此错误的影响。
高优先级稳定性增强功能
-
修复了在尝试加入数据库集群时可能导致读取器数据库实例崩溃进而导致不可用的错误。在某些情况下,当大量的子事务导致主数据库实例处于事务快照溢出状态时,会发生这种情况。在这种情况下,在清除了快照溢出之前,无法加入读取器数据库实例。
其他改进和增强功能
-
修复了阻止 Performance Insights 确定正在运行的语句的查询 ID 的错误。
版本 3.1.1
您可以在此引擎更新中发现下列改进。
关键的稳定性增强功能
-
修复了由于底层存储的自我修复功能导致数据库实例可能会短暂不可用的错误。
高优先级稳定性增强功能
-
修复了数据库引擎可能会崩溃导致不可用的错误。这种情况发生在扫描 B 树索引包含的非键列时。这仅适用于 PostgreSQL 11“包含列”索引。
-
修复了可能导致数据库引擎崩溃进而导致不可用的错误。如果新建立的数据库连接在成功进行身份验证后,在初始化期间遇到与资源耗尽相关的错误,则会发生这种情况。
其他改进和增强功能
-
提供对可能导致数据库引擎崩溃进而导致不可用的
pg_hint_plan
扩展的修复。开源问题可以在 https://github.com/ossc-db/pg_hint_plan/pull/45上跟踪。 -
修正了表单
ALTER FUNCTION ... OWNER TO ...
的 SQL 可能会错误报告ERROR: improper qualified name (too many dotted names)
的错误。 -
通过预取改进了
GIN
索引 vacuum 的性能。 -
修复了开源 PostgreSQL 中的一个错误,该错误可能导致数据库引擎崩溃进而导致不可用。此错误发生在并行 B 树索引扫描期间。此问题已报告给 PostgreSQL 社区。
-
改进了内存中 B 树索引扫描的性能。
版本 3.1.0
您可以在此引擎版本中找到以下新功能和改进。
新功能
-
支持将数据导出到 Amazon S3。有关更多信息,请参阅将数据从 Aurora PostgreSQL 数据库集群导出到 Amazon S3。
-
支持 Amazon Aurora Machine Learning。有关更多信息,请参阅 将机器学习 (ML) 与 Aurora PostgreSQL 结合使用。
-
SQL 处理增强功能包括:
-
优化了使用
apg_enable_not_in_transform
参数的NOT IN
。 -
增强了使用
apg_enable_semijoin_push_down
参数的哈希联接的半联接筛选器下推功能。 -
优化了使用
apg_enable_remove_redundant_inner_joins
参数的冗余内部联接删除功能。 -
改进了与
ansi_constraint_trigger_ordering
、ansi_force_foreign_key_checks
和ansi_qualified_update_set_target
参数的 ANSI 兼容性选项。
有关更多信息,请参阅 Amazon Aurora PostgreSQL 个参数。
-
-
新的和更新的 PostgreSQL 扩展包括:
-
新的
aws_ml
扩展。有关更多信息,请参阅将机器学习 (ML) 与 Aurora PostgreSQL 结合使用。 -
新的
aws_s3
扩展。有关更多信息,请参阅将数据从 Aurora PostgreSQL 数据库集群导出到 Amazon S3。 -
对
apg_plan_mgmt
扩展的更新。有关更多信息,请参阅 管理 Aurora PostgreSQL 的查询执行计划。
-
关键的稳定性增强功能
-
修复了一个与在临时表上创建 B 树索引有关的错误。在极少数情况下,此错误可能会导致恢复时间延长,并影响可用性。
-
修复了一个在 Aurora PostgreSQL 充当 RDS PostgreSQL 实例的物理副本时与复制有关的错误。在极少数情况下,此错误会导致日志写入失败,从而可能导致恢复时间延长,并影响可用性。
-
修复了一个与处理高 I/O 延迟的读取有关的错误。在极少数情况下,此错误可能会导致恢复时间延长,并影响可用性。
高优先级稳定性增强功能
-
修复了一个与逻辑复制相关的错误,此错误导致
wal
分段不能正确地从存储中删除。这可能会引起存储膨胀。要监控此情况,请查看TransactionLogDiskUsage
参数。 -
修复了多个错误,这些错误会导致 Aurora 在 B 树索引的预取操作期间崩溃。
-
修复了使用逻辑复制时 Aurora 重新启动可能超时的错误。
-
增强了对缓冲区缓存中的数据块执行的验证检查。这改善了 Aurora 对不一致性的检测。
其他改进和增强功能
-
查询计划管理扩展
apg_plan_mgmt
具有改进的算法,用于管理高度分区表的计划生成。 -
通过改进缓冲区缓存恢复算法,缩短了具有大型缓存的实例的启动时间。
-
通过使用对 PostgreSQL
LWLock
优先级的更改,改善了高事务速率工作负载下只读节点应用过程的性能。这些更改可以防止 PostgreSQLProcArray
处于严重争用状态时只读节点应用过程获得的资源不足。 -
改进了 Vacuum、表扫描和索引扫描期间批量读取的处理。这将导致更大的吞吐量和更低的 CPU 消耗。
-
修复了一个错误,即只读节点在 PostgreSQL
SLRU
截断操作的重播过程中可能会崩溃。 -
修复了一个错误,即在极少数情况下,数据库写入可能会在 Aurora 日志记录的 6 个副本之一返回错误之后停滞。
-
修复了一个与逻辑复制相关的错误,即单个事务大小超过 1 GB 可能会导致引擎崩溃。
-
修复了启用集群缓存管理时只读节点上的内存泄漏。
-
修复了一个错误,即如果源快照包含大量未记录的关系,导入 RDS PostgreSQL 快照可能会停止响应。
-
修复了 Aurora 存储守护程序可能在高 I/O 负载下崩溃的错误。
-
修复了一个与只读节点的
hot_standby_feedback
相关的错误,即只读节点可能会向写入节点报告错误的事务 ID 纪元。这可能会导致写入节点忽略hot_standby_feedback
并使只读节点上的快照失效。 -
修复了一个错误,即在无法正确处理
CREATE DATABASE
语句期间会发生存储错误。该错误会导致生成的数据库无法访问。正确的行为是使数据库创建操作失败,并将适当的错误返回给用户。 -
改进了当只读节点尝试连接到写入节点时对 PostgreSQL 快照溢出的处理。在此更改之前,如果写入节点处于快照溢出状态,则只读节点将无法加入。PostgreSQL 日志文件中将会出现一条消息,格式为
DEBUG: recovery snapshot waiting for non-overflowed snapshot or until oldest active xid on standby is at least
。当单个事务创建的子事务数超过 64 个时,会发生快照溢出。xxxxxxx
(nowyyyyyyy
) -
修复了一个与公用表表达式相关的错误,该错误导致当 CTE 中存在 NOT IN 类时不正确地引发如下的错误:
CTE with NOT IN fails with ERROR: could not find CTE
。CTE-Name
-
修复了一个与
aurora_replica_status
表中的不正确last_error_timestamp
值相关的错误。 -
修复了一个错误,以避免使用属于临时对象的数据块填充共享缓冲区。这些数据块正确地位于 PostgreSQL 后端本地缓冲区中。
-
更改了以下扩展:
-
pg_hint_plan
更新为版本 1.3.4。 -
增加了
plprofiler
版本 4.1。 -
增加了
pgTAP
版本 1.0.0。
-
与 PostgreSQL 11.4 兼容的版本 3.0
该 Aurora PostgreSQL 版本与 PostgreSQL 11.4 兼容。有关 11.4 版中的改进的更多信息,请参阅 PostgreSQL 11.4 版
您可以在此引擎更新中发现下列改进。
改进
-
该版本包含 版本 2.3.5 中的所有修复、功能和改进。
-
分区 – 分区改进包括对哈希分区的支持、支持默认分区的创建以及基于关键列更新将动态行移动到另一个分区。
-
性能 – 性能改进包括创建索引时的并行度、具体化视图、哈希联接和顺序扫描,以便让操作性能更好。
-
存储过程 – SQL 存储过程现在增加对嵌套事务的支持。
-
Autovacuum 改进 – 为了提供有价值的日志记录,
rds.force_autovacuum_logging
参数默认设置为 ON (打开),且log_autovacuum_min_duration
参数设置为 10 秒。为了增强 autovacuum 的效力,autovacuum_max_workers
和autovacuum_vacuum_cost_limit
参数的值基于主机内容容量来计算,以便提供更大的默认值。 -
改进的事务超时 –
idle_in_transaction_session_timeout
参数设置为 12 小时。闲置超过 12 小时的任何会话会终止。 -
tsearch2
模块不再受支持 – 如果您的应用程序使用tsearch2
函数,请更新它以使用核心 PostgreSQL 引擎提供的等效函数。有关 tsearch2 模块的更多信息,请参阅 PostgreSQL tsearch2。 -
chkpass
模块不再受支持 – 有关 chkpass 模块的更多信息,请参阅 PostgreSQL chkpass。 -
更新了以下扩展名:
-
address_standardizer
更新为版本 2.5.1 -
address_standardizer_data_us
更新为版本 2.5.1 -
btree_gin
更新为版本 1.3 -
citext
更新为版本 1.5 -
cube
更新为版本 1.4 -
hstore
更新为版本 1.5 -
ip4r
更新为版本 2.2 -
isn
更新为版本 1.2 -
orafce
更新为版本 3.7 -
pg_hint_plan
更新为版本 1.3.4 -
pg_prewarm
更新为版本 1.2 -
pg_repack
更新为版本 1.4.4 -
pg_trgm
更新为版本 1.4 -
pgaudit
更新为版本 1.3 -
pgrouting
更新为版本 2.6.1 -
pgtap
更新为版本 1.0.0 -
plcoffee
更新为版本 2.3.8 -
plls
更新为版本 2.3.8 -
plv8
更新为版本 2.3.8 -
postgis
更新为版本 2.5.1 -
postgis_tiger_geocoder
更新为版本 2.5.1 -
postgis_topology
更新为版本 2.5.1 -
rds_activity_stream
更新为版本 1.3
-
与 PostgreSQL 10.13 兼容的版本 2.6
该 Aurora PostgreSQL 版本与 PostgreSQL 10.13 兼容。有关 10.13 版中的改进的更多信息,请参阅 PostgreSQL 10.13 版
版本 2.6.1
You can find the following improvements in this engine update.
Critical stability enhancements
-
Fixed a bug which materializes when the
NOT EXISTS
operator incorrectly returns TRUE which can only happen under the following unusual set of circumstances:-
A query is using the
NOT EXISTS
operator. -
The column or columns being evaluated against the outer query in the
NOT EXISTS
subquery contain a NULL value. -
There is not a another predicate in the subquery that removes the need for the evaluation of the NULL values.
-
The filter used in the subquery does not use an index seek for its execution.
-
The operator is not converted to a join by the query optimizer.
-
版本 2.6.0
您可以在此引擎更新中发现下列改进。
新功能
-
增加了对 RDKit 扩展版本 3.8 的支持。
RDKit 扩展为化学信息学提供了建模功能。化学信息学用于存储、索引、搜索、检索和应用有关化合物的信息。例如,使用 RDKit 扩展,您可以构建分子模型、搜索分子结构以及读取或创建各种符号的分子。您还可以对从 ChEMBL 网站
或 SMILES 文件加载的数据进行研究。简化分子输入线输入系统 (SMILES) 是一种用于表示分子和反应的印刷符号。有关更多信息,请参阅 RDKit 文档中的 RDKit 数据库盒 。 -
增加了对于
pglogical
扩展版本 2.2.2 的支持。pglogical
扩展是一个逻辑流复制系统,它提供 PostgreSQL 本机逻辑复制所不具备的其他功能。功能包括冲突处理、行筛选、DDL/序列复制和延迟应用。您可以使用pglogical
扩展来设置 Aurora PostgreSQL 集群之间、RDS PostgreSQL 与 Aurora PostgreSQL 之间以及与在 RDS 外部运行的 PostgreSQL 数据库之间的复制。 -
Aurora 动态调整集群存储空间的大小。通过动态调整大小,当您从 Aurora 数据库集群中删除数据时,该数据库集群的存储空间会自动减少。有关更多信息,请参阅存储扩展。
注意 动态调整大小功能正在分阶段部署到 Aurora 可用的 AWS 区域。根据集群所在的区域,此功能可能尚不可用。有关更多信息,请参阅新增功能公告
。
关键的稳定性增强功能
-
修复了一个与堆页面扩展相关的错误,该错误在极少数情况下会延长恢复时间并影响可用性。
高优先级稳定性增强功能
-
修复了从 10.11 升级 Aurora 全局数据库集群时的错误。
-
修复了 Aurora 全局数据库中的一个错误,该错误可能导致在辅助 AWS 区域中升级数据库引擎时出现延迟。有关更多信息,请参阅 使用 Amazon Aurora 全局数据库。
-
修复了一个在极少数情况下导致数据库升级到引擎版本 10.13 发生延迟的错误。
其他改进和增强功能
-
修复了在写入器实例上创建具有大量子事务的工作负载时 Aurora 副本崩溃的错误。
-
修复了以下错误:由于内存泄漏和用于跟踪活动事务的内存耗尽而导致写入器实例崩溃。
-
修复了在 PostgreSQL 后端启动期间没有可用内存时,由于初始化不正确而导致崩溃的错误。
-
修复了一个 Aurora PostgreSQL Serverless 数据库集群可能在扩展事件后返回以下错误的错误:
错误:预编译语句“S_6”已存在
。 -
修复了启用数据库活动流时使用 PostGIS 发出
CREATE EXTENSION
命令时的内存不足问题。 -
修复了以下错误:
SELECT
查询可能会错误地返回错误Attempting to read past EOF of relation rrrr. blockno=bbb nblocks=nnn (正在尝试读取过去的 rrrr. blockno=bbb nblocks=nnn 关系 EOF)
。 -
修复了一个由于数据库存储增长的错误处理而导致数据库短暂不可用的错误。
-
修复了 Aurora PostgreSQL Serverless 中的一个错误,该错误导致在以前空闲的连接上执行的查询被延迟到扩展操作完成之后。
-
修复了以下错误:启用了数据库活动流的 Aurora PostgreSQL 数据库集群可能会报告活动记录的潜在丢失时段的开始,但不报告连接恢复。
与 PostgreSQL 10.12 兼容的版本 2.5
该 Aurora PostgreSQL 版本与 PostgreSQL 10.12 兼容。有关 10.12 版中的改进的更多信息,请参阅 PostgreSQL 10.12 版
版本 2.5.4
You can find the following improvements in this engine update.
Critical stability enhancements
-
Fixed a bug which materializes when the
NOT EXISTS
operator incorrectly returns TRUE which can only happen under the following unusual set of circumstances:-
A query is using the
NOT EXISTS
operator. -
The column or columns being evaluated against the outer query in the
NOT EXISTS
subquery contain a NULL value. -
There is not a another predicate in the subquery that removes the need for the evaluation of the NULL values.
-
The filter used in the subquery does not use an index seek for its execution.
-
The operator is not converted to a join by the query optimizer.
-
版本 2.5.3
您可以在此引擎更新中发现下列改进。
关键的稳定性增强功能
-
无
高优先级稳定性增强功能
-
无
其他改进和增强功能
-
修复了 Aurora PostgreSQL Serverless 中的一个错误,该错误导致在以前空闲的连接上运行的查询被延迟到扩展操作完成。
-
修复了一个错误,该错误可能会在多个读取器实例重新启动或重新加入集群时导致繁重的子事务工作负载短暂不可用。
-
修复了 Aurora PostgreSQL 全局数据库中的一个错误,该错误导致升级辅助集群可能会因校验和版本控制不正确而导致失败。这可能需要重新创建辅助集群。
版本 2.5.2
您可以在此引擎更新中发现下列改进。
关键的稳定性增强功能
-
修复了一个与堆页面扩展相关的错误,该错误在极少数情况下会延长恢复时间并影响可用性。
高优先级稳定性增强功能
-
修复了 Aurora 全局数据库中的一个错误,该错误可能导致在辅助区域中升级数据库引擎时出现延迟。有关更多信息,请参阅 使用 Amazon Aurora 全局数据库。
-
修复了一个在极少数情况下导致数据库升级到引擎版本 10.12 发生延迟的错误。
其他改进和增强功能
-
修复了一个由于数据库存储增长的错误处理而导致数据库短暂不可用的错误。
-
修复了一个 SELECT 查询可能会错误地返回错误
正在尝试读取过去的 rrrr. blockno=bbb nblocks=nnn 关系 EOF
的错误。 -
修复了一个 Aurora PostgreSQL 无服务器数据库集群可能在扩展事件后返回以下错误的错误:
错误:预编译语句“S_6”已存在
。
版本 2.5.1
新功能
-
增加了对 Amazon Aurora PostgreSQL 全局数据库的支持。有关更多信息,请参阅 使用 Amazon Aurora 全局数据库。
-
增加了为 Aurora PostgreSQL 配置全局数据库的恢复点目标 (RPO) 的功能。有关更多信息,请参阅 管理 Aurora 全局数据库的恢复。
您可以在此引擎更新中发现下列改进。
关键的稳定性增强功能
无。
高优先级稳定性增强功能
-
改进了应用 DROP TABLE 和 TRUNCATE TABLE 操作时读取实例的性能和可用性。
-
修复了诊断模块中的一个小但连续的内存泄漏,该漏洞可能会导致较小的数据库实例类型上出现内存不足的情况。
-
修复了
PostGIS
扩展中可能会导致数据库重新启动的错误。这已报告给 PostGIS 社区,如 https://trac.osgeo.org/postgis/ticket/4646中所示。 -
修复了由于存储引擎中不正确的错误处理而导致读取请求可能停止响应的错误。
-
修复了因某些查询而失败并导致消息
ERROR: found xmin xxxxxx from before relfrozenxid yyyyyyy (错误: 从 relfrozenxid yyyyyyy 之前找到 xmin xxxxxx)
的错误。在将读取实例提升为写入实例后,可能会发生这种情况。 -
修复了 Aurora 无服务器数据库集群在回滚扩展尝试时可能会崩溃的错误。
其他改进和增强功能
-
改进了从存储中读取许多行的查询的性能。
-
改进了繁重的读取工作负载期间读取器数据库实例的性能和可用性。
-
在可能的情况下,使相关的 IN 和 NOT IN 子查询能够转换为联接。
-
提高了
pg_prewarm
扩展的读取性能。 -
修复了 Aurora 无服务器数据库集群在扩展事件之后可能会报告消息
ERROR: incorrect binary data format in bind parameter ... (错误: 绑定参数中的二进制数据格式不正确...)
的错误。 -
修复了无服务器数据库集群在扩展事件之后可能会报告消息
ERROR: insufficient data left in message (错误: 消息中留下的数据不足)
的错误。 -
修复了 Aurora 无服务器数据库集群可能会遇到延长或失败的扩展尝试的错误。
-
修复了导致以下消息的错误:
ERROR: could not create file "base/xxxxxx/yyyyyyy" as a previous version still exists on disk: Success. (错误:无法创建文件“base/xxxxxx/yyyyyyy”,因为磁盘上仍然存在以前的版本:成功。)Please contact AWS customer support (错误: 无法创建文件“base/xxxxxx/yyyyyyy”,因为以前的版本仍然存在于磁盘上: 成功。请联系 AWS 客户支持)
。在对象创建期间,在 PostgreSQL 的 32 位对象标识符已换行后,可能会发生这种情况。 -
修复了将
wal_level
值从logical
更改为replica
时未删除 PostgreSQL 逻辑复制的预写日志 (WAL) 段文件的错误。 -
修复了
pg_hint_plan
扩展中多语句查询在启用enable_hint_table
时可能会导致崩溃的错误。在 PostgreSQL 社区中对此进行跟踪,如 https://github.com/ossc-db/pg_hint_plan/issues/25所示。 -
修复了在 Aurora 无服务器数据库集群中的扩展事件之后 JDBC 客户端可能会报告消息
java.io.IOException: Unexpected packet type: 75 (java.io.IOException: 意外的数据包类型: 75)
的错误。 -
修复了 PostgreSQL 逻辑复制中导致消息
ERROR: snapshot reference is not owned by resource owner TopTransaction (错误: 快照引用不由资源所有者 TopTransaction 拥有)
的错误。 -
更改了以下扩展:
-
orafce
更新为版本 3.8
-
与 PostgreSQL 10.11 兼容的版本 2.4
该 Aurora PostgreSQL 版本与 PostgreSQL 10.11 兼容。有关 10.11 版中的改进的更多信息,请参阅 PostgreSQL 10.11 版
该版本包含多个关键的稳定性增强功能。Amazon 强烈建议您将使用旧版 PostgreSQL 10 引擎的 Aurora PostgreSQL 集群升级到此版本。
版本 2.4.3
关键的稳定性增强功能
-
无
高优先级稳定性增强功能
-
修复了由于错误处理不当而导致从存储中读取过程可能停止响应的错误。
其他改进和增强功能
-
无
版本 2.4.2
您可以在此引擎更新中发现下列改进。
关键的稳定性增强功能
-
修复了读取器数据库实例可能暂时使用过时数据的错误。这可能会导致错误的结果,例如行过多或过少。此错误不会保留在存储中,在数据库页面包含已从缓存中逐出的行时清除。在单个事务中的子事务超过 64 个导致主数据库实例进入事务快照溢出状态时,会发生这种情况。在包含超过 64 个子事务的顶级事务中,使用 SQL 保存点或 PostgreSQL 异常处理程序的应用程序容易受到此错误的影响。
高优先级稳定性增强功能
-
修复了在尝试加入数据库集群时可能导致读取器数据库实例崩溃进而导致不可用的错误。在某些情况下,当大量的子事务导致主数据库实例处于事务快照溢出状态时,会发生这种情况。在这种情况下,在清除了快照溢出之前,无法加入读取器数据库实例。
其他改进和增强功能
-
修复了阻止 Performance Insights 确定正在运行的语句的查询 ID 的错误。
版本 2.4.1
您可以在此引擎更新中发现下列改进。
关键的稳定性增强功能
-
修复了由于底层存储的自我修复功能导致数据库实例可能会短暂不可用的错误。
高优先级稳定性增强功能
-
修复了可能导致数据库引擎崩溃进而导致不可用的错误。如果新建立的数据库连接在成功进行身份验证后,在初始化期间遇到与资源耗尽相关的错误,则会发生这种情况。
其他改进和增强功能
-
提供对可能导致数据库引擎崩溃进而导致不可用的
pg_hint_plan
扩展的修复。开源问题可以在 https://github.com/ossc-db/pg_hint_plan/pull/45上跟踪。 -
修正了表单
ALTER FUNCTION ... OWNER TO ...
的 SQL 可能会错误报告ERROR: improper qualified name (too many dotted names)
的错误。 -
通过预取改进了
GIN
索引 vacuum 的性能。 -
修复了开源 PostgreSQL 中的一个错误,该错误可能导致数据库引擎崩溃进而导致不可用。此错误发生在并行 B 树索引扫描期间。此问题已报告给 PostgreSQL 社区。
-
改进了内存中 B 树索引扫描的性能。
-
对 Aurora PostgreSQL 的稳定性和可用性的其他一般性改进。
版本 2.4.0
您可以在此引擎版本中找到以下新功能和改进。
新功能
-
支持将数据导出到 Amazon S3。有关更多信息,请参阅将数据从 Aurora PostgreSQL 数据库集群导出到 Amazon S3。
-
支持 Amazon Aurora Machine Learning。有关更多信息,请参阅 将机器学习 (ML) 与 Aurora PostgreSQL 结合使用。
-
SQL 处理增强功能包括:
-
优化了使用
apg_enable_not_in_transform
参数的NOT IN
。 -
增强了使用
apg_enable_semijoin_push_down
参数的哈希联接的半联接筛选器下推功能。 -
优化了使用
apg_enable_remove_redundant_inner_joins
参数的冗余内部联接删除功能。 -
改进了与
ansi_constraint_trigger_ordering
、ansi_force_foreign_key_checks
和ansi_qualified_update_set_target
参数的 ANSI 兼容性选项。
有关更多信息,请参阅 Amazon Aurora PostgreSQL 个参数。
-
-
新的和更新的 PostgreSQL 扩展包括:
-
新的
aws_ml
扩展。有关更多信息,请参阅将机器学习 (ML) 与 Aurora PostgreSQL 结合使用。 -
新的
aws_s3
扩展。有关更多信息,请参阅将数据从 Aurora PostgreSQL 数据库集群导出到 Amazon S3。 -
对
apg_plan_mgmt
扩展的更新。有关更多信息,请参阅 管理 Aurora PostgreSQL 的查询执行计划。
-
关键的稳定性增强功能
-
修复了一个在临时表上创建 B 树索引有关的错误。在极少数情况下,此错误可能会导致恢复时间延长,并影响可用性。
-
修复了一个在 Aurora PostgreSQL 充当 RDS PostgreSQL 实例的物理副本时与复制有关的错误。在极少数情况下,此错误会导致日志写入失败,从而可能导致恢复时间延长,并影响可用性。
-
修复了一个与处理高 I/O 延迟的读取有关的错误。在极少数情况下,此错误可能会导致恢复时间延长,并影响可用性。
高优先级稳定性增强功能
-
修复了一个与逻辑复制相关的错误,此错误导致
wal
分段不能正确地从存储中删除。这可能会引起存储膨胀。要监控此情况,请查看TransactionLogDiskUsage
参数。 -
修复了多个错误,这些错误会导致 Aurora 在 B 树索引的预取操作期间崩溃。
-
修复了使用逻辑复制时 Aurora 重新启动可能超时的错误。
-
增强了对缓冲区缓存中的数据块执行的验证检查。这改善了 Aurora 对不一致性的检测。
其他改进和增强功能
-
查询计划管理扩展
apg_plan_mgmt
具有改进的算法,用于管理高度分区表的计划生成。 -
通过改进缓冲区缓存恢复算法,缩短了具有大型缓存的实例的启动时间。
-
通过使用对 PostgreSQL
LWLock
优先级的更改,改善了高事务速率工作负载下只读节点应用过程的性能。这些更改可以防止 PostgreSQLProcArray
处于严重争用状态时只读节点应用过程获得的资源不足。 -
改进了 Vacuum、表扫描和索引扫描期间批量读取的处理。这将导致更大的吞吐量和更低的 CPU 消耗。
-
修复了一个错误,即只读节点在 PostgreSQL
SLRU
截断操作的重播过程中可能会崩溃。 -
修复了一个错误,即在极少数情况下,数据库写入可能会在 Aurora 日志记录的 6 个副本之一返回错误之后停滞。
-
修复了一个与逻辑复制相关的错误,即单个事务大小超过 1 Gb 可能会导致引擎崩溃。
-
修复了启用集群缓存管理时只读节点上的内存泄漏。
-
修复了一个错误,即如果源快照包含大量未记录的关系,导入 RDS PostgreSQL 快照可能会停止响应。
-
修复了 Aurora 存储守护程序可能在高 I/O 负载下崩溃的错误。
-
修复了一个与只读节点的
hot_standby_feedback
相关的错误,即只读节点可能会向写入节点报告错误的事务 ID 纪元。这可能会导致写入节点忽略hot_standby_feedback
并使只读节点上的快照失效。 -
修复了一个错误,即在无法正确处理
CREATE DATABASE
语句期间会发生存储错误。该错误会导致生成的数据库无法访问。正确的行为是使数据库创建操作失败,并将适当的错误返回给用户。 -
改进了当只读节点尝试连接到写入节点时对 PostgreSQL 快照溢出的处理。在此更改之前,如果写入节点处于快照溢出状态,则只读节点将无法加入。PostgreSQL 日志文件中将会出现一条消息,格式为
DEBUG: recovery snapshot waiting for non-overflowed snapshot or until oldest active xid on standby is at least
。当单个事务创建的子事务数超过 64 个时,会发生快照溢出。xxxxxxx
(nowyyyyyyy
) -
修复了一个与公用表表达式相关的错误,该错误导致当 CTE 中存在 NOT IN 类时不正确地引发如下的错误:
CTE with NOT IN fails with ERROR: could not find CTE
。CTE-Name
-
修复了一个与
aurora_replica_status
表中的不正确last_error_timestamp
值相关的错误。 -
修复了一个错误,以避免使用属于临时对象的数据块填充共享缓冲区。这些数据块正确地位于 PostgreSQL 后端本地缓冲区中。
-
改进了 GIN 索引的 Vacuum 清理性能。
-
修复了一个错误,即在极少数情况下,即使复制流处于空闲状态,Aurora 充当 RDS PostgreSQL 实例的副本时也可能表现出 100% 的 CPU 利用率。
-
从 PostgreSQL 11 逆向移植了一个更改,这改进了孤立的临时表的清理。如果没有此更改,则在极少数情况下,孤立的临时表可能会导致事务 ID 重叠。有关更多信息,请参阅此 PostgreSQL 社区提交
。 -
修复了一个错误,即写入器实例在未初始化的启动过程中可能接受来自读取器实例的复制注册请求。
-
更改了以下扩展:
-
pg_hint_plan
更新为版本 1.3.3。 -
增加了
plprofiler
版本 4.1。
-
与 PostgreSQL 10.7 兼容的版本 2.3
该 Aurora PostgreSQL 版本与 PostgreSQL 10.7 兼容。有关 10.7 版中的改进的更多信息,请参阅 PostgreSQL 10.7 版
版本 2.3.5
您可以在此引擎更新中发现下列改进。
改进
-
修复了会导致数据库实例重启的错误。
-
修复了在存在 PostgreSQL 后端的情况下使用逻辑复制会导致崩溃的错误。
-
修复了在故障转移期间发生读取时会导致重启的错误。
-
修复了逻辑复制的
wal2json
模块错误。 -
修复了会导致元数据不一致的错误。
版本 2.3.3
您可以在此引擎更新中发现下列改进。
改进
-
提供了针对 PostgreSQL 社区安全问题 CVE-2019-10130 的向后移植修复。
-
提供了针对 PostgreSQL 社区安全问题 CVE-2019-10164 的向后移植修复。
-
修复了一个错误,即数据活动流可能消耗过多 CPU 时间。
-
修复了一个错误,即扫描 B 树索引的并行线程可能会在磁盘读取后停止响应。
-
修复了一个错误,即对公用表表达式 (CTE) 使用
not in
谓词会返回以下错误:“ERROR: bad levelsup for CTE (错误: CTE 的错误级别)”。 -
修复了一个错误,即在对通用搜索树 (GiST) 索引应用修改时,读取节点重放过程可能停止响应。
-
修复了一个错误,即在故障转移到读取节点后,可见性映射页面可能包含不正确的冻结位。
-
在索引维护期间优化了写入节点和读取节点之间的日志流量。
-
修复了一个错误,即在执行 B 树索引扫描时,读取节点上的查询可能会发生崩溃。
-
修复了一个错误,即已针对冗余内部联接删除优化的查询可能会发生崩溃。
-
函数
aurora_stat_memctx_usage
现在报告给定上下文名称的实例数。 -
修复了一个错误,即函数
aurora_stat_memctx_usage
报告了错误的结果。 -
修复了一个错误,即读取节点重放过程可能会等待停止超出配置的
max_standby_streaming_delay
值的相互冲突的查询。 -
当活动连接与中继过程发生冲突时,现在会在读取节点上记录其他信息。
-
提供了针对 PostgreSQL 社区错误 #15677 的向后移植修复,从分区表中进行删除时可能会发生崩溃。
版本 2.3.1
您可以在此引擎更新中发现下列改进。
改进
-
修复了导致引擎崩溃的与 I/O 预取有关的多个漏洞。
版本 2.3.0
您可以在此引擎更新中发现下列改进。
新功能
-
现在 Aurora PostgreSQL 在扫描 B 树索引时执行 I/O 预取。这大幅提高了对未缓存数据进行 B 树扫描的性能。
改进
-
修复了可能导致读取节点失败并显示错误“too many LWLocks taken (采用了太多 LWLocks)”的漏洞。
-
解决了导致读取节点在集群处于繁重写入工作负载下时无法启动的众多问题。
-
修复了使用
aurora_stat_memctx_usage()
函数可能导致崩溃的漏洞。 -
改进了表扫描使用的缓存替换策略,以最大限度减少缓冲区缓存的颠簸。
与 PostgreSQL 10.6 兼容的版本 2.2
该 Aurora PostgreSQL 版本与 PostgreSQL 10.6 兼容。有关 10.6 版中的改进的更多信息,请参阅 PostgreSQL 10.6 版
版本 2.2.1
您可以在此引擎更新中发现下列改进。
改进
-
提高了逻辑复制的稳定性。
-
修复了可能导致运行查询时出错的错误。报告的消息将是“CLOG 段 123 不存在:无此文件或目录”的形式。
-
将支持的 IAM 密码的大小增加到 8KB。
-
提高了高吞吐量写入工作负载下性能的一致性。
-
修复了可能导致只读副本在重启时崩溃的错误。
-
修复了可能导致运行查询时出错的错误。报告的消息将是“SQL 错误:正在尝试读取过去的关系 EOF”的形式。
-
修复了可能导致重启后内存使用量增加的错误。
-
修复了可能导致包含大量子事务的事务失败的错误。
-
合并了使用 GIN 索引时处理潜在故障的社区 PostgreSQL 中的补丁。有关更多信息,请参阅 https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=f9e66f2fbbb49a493045c8d8086a9b15d95b8f18
。 -
修复了可能导致从 PostgreSQL 的 RDS 的快照导入失败的错误。
版本 2.2.0
您可以在此引擎更新中发现下列改进。
新功能
-
增加了受限密码管理功能。“受限密码管理”允许您使用参数
rds.restrict_password_commands
和角色rds_password
限制哪些用户可以管理用户密码和密码失效时间更改。有关更多信息,请参阅 限制密码管理。
与 PostgreSQL 10.5 兼容的版本 2.1
该 Aurora PostgreSQL 版本与 PostgreSQL 10.5 兼容。有关 10.5 版中的改进的更多信息,请参阅 PostgreSQL 10.5 版
版本 2.1.1
您可以在此引擎更新中发现下列改进。
改进
-
修复了可能导致运行查询时出错的错误。报告的消息将是“CLOG 段 123 不存在:无此文件或目录”的形式。
-
将支持的 IAM 密码的大小增加到 8KB。
-
提高了高吞吐量写入工作负载下性能的一致性。
-
修复了可能导致只读副本在重启时崩溃的错误。
-
修复了可能导致运行查询时出错的错误。报告的消息将是“SQL 错误:正在尝试读取过去的关系 EOF”的形式。
-
修复了可能导致重启后内存使用量增加的错误。
-
修复了可能导致包含大量子事务的事务失败的错误。
-
合并了使用 GIN 索引时处理潜在故障的社区 PostgreSQL 中的补丁。有关更多信息,请参阅 https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=f9e66f2fbbb49a493045c8d8086a9b15d95b8f18
。 -
修复了可能导致从 PostgreSQL 的 RDS 的快照导入失败的错误。
版本 2.1.0
您可以在此引擎更新中发现下列改进。
新功能
-
Aurora 查询计划管理的一般可用性,使客户能够跟踪和管理其应用程序使用的任何或所有查询计划、控制查询优化程序计划选择以及确保相当高的稳定应用程序性能。有关更多信息,请参阅 管理 Aurora PostgreSQL 的查询执行计划。
-
将
libprotobuf
扩展更新为 1.3.0 版。这由 PostGIS 扩展使用。 -
将
pg_similarity
扩展更新为 1.0 版。 -
将
log_fdw
扩展更新为 1.1 版。 -
将
pg_hint_plan
扩展更新为 1.3.1 版。
改进
-
现在对写入器和读取器节点之间的网络流量进行压缩以降低网络利用率。这降低了因网络饱和导致读取节点不可用的几率。
-
为 PostgreSQL 子事务实现了高性能、可扩展的子系统。这提高了广泛使用保存点和
PL/pgSQL
异常处理程序的应用程序的性能。 -
rds_superuser
角色现在可以在每个会话、数据库或角色级别设置以下参数:-
log_duration
-
log_error_verbosity
-
log_executor_stats
-
log_lock_waits
-
log_min_duration_statement
-
log_min_error_statement
-
log_min_messages
-
log_parser_stats
-
log_planner_stats
-
log_replication_commands
-
log_statement_stats
-
log_temp_files
-
-
修复了一个错误,即,SQL 命令“ALTER FUNCTION ...OWNER TO ...”可能失败,并显示错误“improper qualified name (too many dotted names) (不适当的限定名 (用点分隔的名称太多))”。
-
修复了一个错误,即,当提交一个包含 200 万个以上的子事务的事务时可能发生崩溃。
-
修复了与 GIN 索引相关的社区 PostgreSQL 代码中的错误,该错误可能导致 Aurora 存储卷变得不可用。
-
修复了一个错误,即,RDS for PostgreSQL 实例的 Aurora PostgreSQL 副本无法启动,并报告错误:“PANIC: could not locate a valid checkpoint record (PANIC: 无法找到有效的检查点记录)”。
-
修复了一个错误,即,将无效参数传递给
aurora_stat_backend_waits
函数会导致发生崩溃。
已知问题
-
Aurora PostgreSQL 中不支持
pageinspect
扩展。
与 PostgreSQL 10.4 兼容的版本 2.0
该 Aurora PostgreSQL 版本与 PostgreSQL 10.4 兼容。有关 10.4 版中的改进的更多信息,请参阅 PostgreSQL 10.4 版
版本 2.0.1
您可以在此引擎更新中发现下列改进。
改进
-
修复了可能导致运行查询时出错的错误。报告的消息将是“CLOG 段 123 不存在:无此文件或目录”的形式。
-
将支持的 IAM 密码的大小增加到 8KB。
-
提高了高吞吐量写入工作负载下性能的一致性。
-
修复了可能导致只读副本在重启时崩溃的错误。
-
修复了可能导致运行查询时出错的错误。报告的消息将是“SQL 错误:正在尝试读取过去的关系 EOF”的形式。
-
修复了可能导致重启后内存使用量增加的错误。
-
修复了可能导致包含大量子事务的事务失败的错误。
-
合并了使用 GIN 索引时处理潜在故障的社区 PostgreSQL 中的补丁。有关更多信息,请参阅 https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=f9e66f2fbbb49a493045c8d8086a9b15d95b8f18
。 -
修复了可能导致从 PostgreSQL 的 RDS 的快照导入失败的错误。
版本 2.0.0
您可以在此引擎更新中发现下列改进。
改进
-
该版本包含 与 PostgreSQL 9.6.9 兼容的版本 1.3 中的所有修复、功能和改进。
-
临时文件大小限制可由用户配置。您需要 rds_superuser 角色才能修改
temp_file_limit
参数。 -
更新了
PostGIS
扩展使用的GDAL
库。 -
将
ip4r
扩展更新为 2.1.1 版。 -
将
pg_repack
扩展更新为 1.4.3 版。 -
将
plv8
扩展更新为 2.1.2 版。 -
并行查询 – 在创建新的 Aurora PostgreSQL 2.0 版实例时,将为
default.postgres10
参数组启用并行查询。max_parallel_workers_per_gather
参数默认设置为 2,但您可以修改该参数以支持特定的工作负载要求。 -
修复了读取节点在特定类型的可用空间从写入节点更改后可能崩溃的错误。
与 PostgreSQL 9.6.18 兼容的版本 1.8
该 Aurora PostgreSQL 版本与 PostgreSQL 9.6.18 兼容。有关 9.6.18 版中的改进的更多信息,请参阅 PostgreSQL 9.6.18 版
补丁版本
版本 1.8.0
您可以在此引擎更新中发现下列改进。
关键的稳定性增强功能
-
修复了一个与堆页面扩展相关的错误,该错误在极少数情况下会延长恢复时间并影响可用性。
其他改进和增强功能
-
修复了在写入器实例上创建具有大量子事务的工作负载时 Aurora 副本崩溃的错误。
-
修复了以下错误:由于内存泄漏和用于跟踪活动事务的内存耗尽而导致写入器实例崩溃。
-
修复了在 PostgreSQL 后端启动期间没有可用内存时,由于初始化不正确而导致崩溃的错误。
-
修复了 BTree 预取期间,在依赖于索引中包含的形状和数据的特定条件下发生的崩溃。
-
修复了以下错误:
SELECT
查询可能会错误地返回错误Attempting to read past EOF of relation rrrr. blockno=bbb nblocks=nnn (正在尝试读取过去的 rrrr. blockno=bbb nblocks=nnn 关系 EOF)
。 -
修复了一个由于数据库存储增长的错误处理而导致数据库短暂不可用的错误。
与 PostgreSQL 9.6.17 兼容的版本 1.7
该 Aurora PostgreSQL 版本与 PostgreSQL 9.6.17 兼容。有关 9.6.17 版中的改进的更多信息,请参阅 PostgreSQL 9.6.17 版
版本 1.7.3
您可以在此引擎更新中发现下列改进。
关键的稳定性增强功能
-
无
高优先级稳定性增强功能
-
无
其他改进和增强功能
-
修复了一个错误,该错误可能会在多个读取器实例重新启动或重新加入集群时导致繁重的子事务工作负载短暂不可用。
版本 1.7.2
您可以在此引擎更新中发现下列改进。
关键的稳定性增强功能
-
修复了一个与堆页面扩展相关的错误,该错误在极少数情况下会延长恢复时间并影响可用性。
高优先级稳定性增强
无
其他改进和增强功能
-
修复了一个由于数据库存储增长的错误处理而导致数据库短暂不可用的错误。
-
修复了一个 SELECT 查询可能会错误地返回错误
正在尝试读取过去的 rrrr. blockno=bbb nblocks=nnn 关系 EOF
的错误。 -
修复了内部指标收集器的问题,该问题可能导致数据库实例上的 CPU 峰值不稳定。
版本 1.7.1
您可以在此引擎更新中发现下列改进。
关键的稳定性增强功能
无。
高优先级稳定性增强功能
-
改进了应用 DROP TABLE 和 TRUNCATE TABLE 操作时读取实例的性能和可用性。
-
修复了诊断模块中的一个小但连续的内存泄漏,该漏洞可能会导致较小的数据库实例类型上出现内存不足的情况。
-
修复了
PostGIS
扩展中可能会导致数据库重新启动的错误。这已报告给 PostGIS 社区,如 https://trac.osgeo.org/postgis/ticket/4646中所示。 -
修复了由于存储引擎中不正确的错误处理而导致读取请求可能停止响应的错误。
-
修复了因某些查询而失败并导致消息
ERROR: found xmin xxxxxx from before relfrozenxid yyyyyyy (错误: 从 relfrozenxid yyyyyyy 之前找到 xmin xxxxxx)
的错误。在将读取实例提升为写入实例后,可能会发生这种情况。
其他改进和增强功能
-
改进了从存储中读取许多行的查询的性能。
-
改进了繁重的读取工作负载期间读取器数据库实例的性能和可用性。
-
修复了导致以下消息的错误:
ERROR: could not create file "base/xxxxxx/yyyyyyy" as a previous version still exists on disk: Success. (错误:无法创建文件“base/xxxxxx/yyyyyyy”,因为磁盘上仍然存在以前的版本:成功。)Please contact AWS customer support (错误: 无法创建文件“base/xxxxxx/yyyyyyy”,因为以前的版本仍然存在于磁盘上: 成功。请联系 AWS 客户支持)
。在对象创建期间,在 PostgreSQL 的 32 位对象标识符已换行后,可能会发生这种情况。 -
修复了
pg_hint_plan
扩展中多语句查询在启用enable_hint_table
时可能会导致崩溃的错误。在 PostgreSQL 社区中对此进行跟踪,如 https://github.com/ossc-db/pg_hint_plan/issues/25所示。 -
更改了以下扩展:
-
orafce
更新为版本 3.8
-
与 PostgreSQL 9.6.16 兼容的版本 1.6
该 Aurora PostgreSQL 版本与 PostgreSQL 9.6.16 兼容。有关 9.6.16 版中的改进的更多信息,请参阅 PostgreSQL 9.6.16 版
该版本包含多个关键的稳定性增强功能。Amazon 强烈建议您将使用旧版 PostgreSQL 9.6 引擎的 Aurora PostgreSQL 集群升级到此版本。
版本 1.6.3
关键的稳定性增强功能
-
无
高优先级稳定性增强功能
-
修复了由于错误处理不当而导致从存储中读取过程可能停止响应的错误。
其他改进和增强功能
-
无
版本 1.6.2
您可以在此引擎更新中发现下列改进。
关键的稳定性增强功能
-
修复了读取器数据库实例可能暂时使用过时数据的错误。这可能会导致错误的结果,例如行过多或过少。此错误不会保留在存储中,在数据库页面包含已从缓存中逐出的行时清除。在单个事务中的子事务超过 64 个导致主数据库实例进入事务快照溢出状态时,会发生这种情况。在包含超过 64 个子事务的顶级事务中,使用 SQL 保存点或 PostgreSQL 异常处理程序的应用程序容易受到此错误的影响。
高优先级稳定性增强功能
-
修复了在尝试加入数据库集群时可能导致读取器数据库实例崩溃进而导致不可用的错误。在某些情况下,当大量的子事务导致主数据库实例处于事务快照溢出状态时,会发生这种情况。在这种情况下,在清除了快照溢出之前,无法加入读取器数据库实例。
其他改进和增强功能
-
修复了阻止 Performance Insights 确定正在运行的语句的查询 ID 的错误。
版本 1.6.1
您可以在此引擎更新中发现下列改进。
关键的稳定性增强功能
-
无
高优先级稳定性增强功能
-
修复了可能导致数据库引擎崩溃进而导致不可用的错误。如果新建立的数据库连接在成功进行身份验证后,在初始化期间遇到与资源耗尽相关的错误,则会发生这种情况。
其他改进和增强功能
-
提供了对 Aurora PostgreSQL 的稳定性和可用性的其他常规改进。
版本 1.6.0
您可以在此引擎版本中找到以下新功能和改进。
新功能
-
对
apg_plan_mgmt
扩展的更新。有关更多信息,请参阅 管理 Aurora PostgreSQL 的查询执行计划。
关键的稳定性增强功能
-
修复了一个在临时表上创建 B 树索引有关的错误。在极少数情况下,此错误可能会导致恢复时间延长,并影响可用性。
-
修复了一个在 Aurora PostgreSQL 充当 RDS PostgreSQL 实例的物理副本时与复制有关的错误。在极少数情况下,此错误会导致日志写入失败,从而可能导致恢复时间延长,并影响可用性。
-
修复了一个与处理高 I/O 延迟的读取有关的错误。在极少数情况下,此错误可能会导致恢复时间延长,并影响可用性。
高优先级稳定性增强功能
-
修复了多个错误,这些错误会导致 Aurora 在 B 树索引的预取操作期间崩溃。
-
增强了对缓冲区缓存中的数据块执行的验证检查。这改善了 Aurora 对不一致性的检测。
其他改进和增强功能
-
查询计划管理扩展
apg_plan_mgmt
具有改进的算法,用于管理高度分区表的计划生成。 -
通过改进缓冲区缓存恢复算法,缩短了具有大型缓存的实例的启动时间。
-
通过使用对 PostgreSQL
LWLock
优先级的更改,改善了高事务速率工作负载下只读节点应用过程的性能。这些更改可以防止 PostgreSQLProcArray
处于严重争用状态时只读节点应用过程获得的资源不足。 -
修复了一个错误,即只读节点在 PostgreSQL
SLRU
截断操作的重播过程中可能会崩溃。 -
修复了一个错误,即在极少数情况下,数据库写入可能会在 Aurora 日志记录的 6 个副本之一返回错误之后停滞。
-
修复了启用集群缓存管理时只读节点上的内存泄漏。
-
修复了一个错误,即如果源快照包含大量未记录的关系,导入 RDS PostgreSQL 快照可能会停止响应。
-
修复了一个与只读节点的
hot_standby_feedback
相关的错误,即只读节点可能会向写入节点报告错误的事务 ID 纪元。这可能会导致写入节点忽略hot_standby_feedback
并使只读节点上的快照失效。 -
修复了一个错误,即在无法正确处理
CREATE DATABASE
语句期间会发生存储错误。该错误会导致生成的数据库无法访问。正确的行为是使数据库创建操作失败,并将适当的错误返回给用户。 -
改进了当只读节点尝试连接到写入节点时对 PostgreSQL 快照溢出的处理。在此更改之前,如果写入节点处于快照溢出状态,则只读节点将无法加入。PostgreSQL 日志文件中将会出现一条消息,格式为
DEBUG: recovery snapshot waiting for non-overflowed snapshot or until oldest active xid on standby is at least
。当单个事务创建的子事务数超过 64 个时,会发生快照溢出。xxxxxxx
(nowyyyyyyy
) -
修复了一个与公用表表达式相关的错误,该错误导致当 CTE 中存在 NOT IN 类时不正确地引发如下的错误:
CTE with NOT IN fails with ERROR: could not find CTE
。CTE-Name
-
修复了一个与
aurora_replica_status
表中的不正确last_error_timestamp
值相关的错误。 -
修复了一个错误,以避免使用属于临时对象的数据块填充共享缓冲区。这些数据块正确地位于 PostgreSQL 后端本地缓冲区中。
-
修复了一个错误,即在极少数情况下,即使复制流处于空闲状态,Aurora 充当 RDS PostgreSQL 实例的副本时也可能表现出 100% 的 CPU 利用率。
-
从 PostgreSQL 11 逆向移植了一个更改,这改进了孤立的临时表的清理。如果没有此更改,则在极少数情况下,孤立的临时表可能会导致事务 ID 重叠。有关更多信息,请参阅此 PostgreSQL 社区提交
。 -
修复了一个错误,即写入器实例在未初始化的启动过程中可能接受来自读取器实例的复制注册请求。
-
更改了以下扩展:
-
pg_hint_plan
更新为版本 1.2.5。
-
与 PostgreSQL 9.6.12 兼容的版本 1.5
该 Aurora PostgreSQL 版本与 PostgreSQL 9.6.12 兼容。有关 9.6.12 版中的改进的更多信息,请参阅 PostgreSQL 9.6.12 版
版本 1.5.3
您可以在此引擎更新中发现下列改进。
改进
-
修复了会导致数据库实例重启的错误。
-
修复了在故障转移期间发生读取时会导致重启的错误。
-
修复了会导致元数据不一致的错误。
版本 1.5.2
您可以在此引擎更新中发现下列改进。
改进
-
提供了针对 PostgreSQL 社区安全问题 CVE-2019-10130 的向后移植修复。
-
修复了一个错误,即在对通用搜索树 (GiST) 索引应用修改时,读取节点重放过程可能停止响应。
-
修复了一个错误,即在故障转移到读取节点后,可见性映射页面可能包含不正确的冻结位。
-
修复了一个错误,即错误报告了错误“relation
relation-name
does not exist (关系 relation-name 不存在)”。 -
在索引维护期间优化了写入节点和读取节点之间的日志流量。
-
修复了一个错误,即在执行 B 树索引扫描时,读取节点上的查询可能会发生崩溃。
-
函数
aurora_stat_memctx_usage
现在报告给定上下文名称的实例数。 -
修复了一个错误,即函数
aurora_stat_memctx_usage
报告了错误的结果。 -
修复了一个错误,即读取节点重放过程可能会等待停止超出配置的
max_standby_streaming_delay
的相互冲突的查询。 -
当活动连接与中继过程发生冲突时,现在会在读取节点上记录其他信息。
版本 1.5.1
您可以在此引擎更新中发现下列改进。
改进
-
修复了导致引擎崩溃的与 I/O 预取有关的多个错误。
版本 1.5.0
您可以在此引擎更新中发现下列改进。
新功能
-
现在 Aurora PostgreSQL 在扫描 B 树索引时执行 I/O 预取。这大幅提高了对未缓存数据进行 B 树扫描的性能。
改进
-
解决了导致读取节点在集群处于繁重写入工作负载下时无法启动的众多问题。
-
修复了使用
aurora_stat_memctx_usage()
函数可能导致崩溃的漏洞。 -
改进了表扫描使用的缓存替换策略,以最大限度减少缓冲区缓存的颠簸。
与 PostgreSQL 9.6.11 兼容的版本 1.4
该 Aurora PostgreSQL 版本与 PostgreSQL 9.6.11 兼容。有关 9.6.11 版中的改进的更多信息,请参阅 PostgreSQL 9.6.11 版
您可以在此引擎更新中发现下列改进。
新功能
-
增加了对
pg_similarity
扩展版本 1.0 的支持。
改进
-
该版本包含 与 PostgreSQL 9.6.9 兼容的版本 1.3 中的所有修复、功能和改进。
-
现在对写入器和读取器节点之间的网络流量进行压缩以降低网络利用率。这降低了因网络饱和导致读取节点不可用的几率。
-
子事务的性能在高并发工作负载下有所提高。
-
将
pg_hint_plan
扩展更新为 1.2.3 版。 -
修复了在繁忙的系统上,包含数百万个子事务的提交(有时还启用了提交时间戳)可能造成 Aurora 崩溃的问题。
-
修复了包含
VALUES
的INSERT
语句可能失败并显示消息“正在尝试读取过去的关系 EOF”的问题。 -
将
apg_plan_mgmt
扩展升级到版本 1.0.1。有关详细信息,请参阅 Aurora PostgreSQL apg_plan_mgmt 扩展版本 1.0.1。apg_plan_mgmt
扩展用于查询计划管理。有关如何安装、升级和使用apg_plan_mgmt
扩展的更多消息,请参阅 管理 Aurora PostgreSQL 的查询执行计划。
与 PostgreSQL 9.6.9 兼容的版本 1.3
该 Aurora PostgreSQL 版本与 PostgreSQL 9.6.9 兼容。有关 9.6.9 版中的改进的更多信息,请参阅 PostgreSQL 9.6.9 版
版本 1.3.2
您可以在此引擎更新中发现下列改进。
新功能
-
增加了
ProcArrayGroupUpdate
等待事件。
改进
-
修复了可能导致运行查询时出错的错误。报告的消息将是“CLOG 段 123 不存在:无此文件或目录”的形式。
-
将支持的 IAM 密码的大小增加到 8KB。
-
提高了高吞吐量写入工作负载下性能的一致性。
-
修复了可能导致只读副本在重启时崩溃的错误。
-
修复了可能导致运行查询时出错的错误。报告的消息将是“SQL 错误:正在尝试读取过去的关系 EOF”的形式。
-
修复了可能导致重启后内存使用量增加的错误。
-
修复了可能导致包含大量子事务的事务失败的错误。
-
合并了使用 GIN 索引时处理潜在故障的社区 PostgreSQL 中的补丁。有关更多信息,请参阅 https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=f9e66f2fbbb49a493045c8d8086a9b15d95b8f18
。 -
修复了可能导致从 PostgreSQL 的 RDS 的快照导入失败的错误。
版本 1.3.0
您可以在此引擎更新中发现下列改进。
改进
-
该版本包含 与 PostgreSQL 9.6.8 兼容的版本 1.2 中的所有修复、功能和改进。
-
更新了
PostGIS
扩展使用的 GDAL 库。 -
更新了以下 PostgreSQL 扩展:
-
ip4r
更新为 2.1.1 版。 -
pgaudit
更新为 1.1.1 版。 -
pg_repack
更新为 1.4.3 版。 -
plv8
更新为 2.1.2 版。
-
-
修复了监控系统中的一个问题,在本地磁盘使用率较高时,该问题可能会错误地导致故障转移。
-
修复了 Aurora PostgreSQL 可能反复崩溃并报告以下消息的错误:
PANIC: new_record_total_len (8201) must be less than BLCKSZ (8192), rmid (6), info (32)
-
修复了一个错误,即,Aurora PostgreSQL 读取节点可能由于大型缓冲区缓存恢复而无法重新加入集群。在 r4.16xlarge 以外的实例上不太可能会出现该问题。
-
修复了一个错误,即,插入到从 9.4 之前的引擎版本导入的空 GIN 索引叶页面可能导致 Aurora 存储卷变得不可用。
-
修复了一个错误,即,在极少数情况下,在事务提交期间发生的崩溃可能导致进行提交的事务丢失
CommitTs
数据。事务的实际持久性不会受到该错误的影响。 -
修复了
PostGIS
扩展中的一个错误,即,PostGIS
可能会在gserialized_gist_picksplit_2d()
函数中发生崩溃。 -
在小于 r4.8xl 的实例上,在具有大量写入流量期间提高了只读节点的稳定性。这明确解决了写入器和读取器之间的网络带宽受到限制的问题。
-
修复了一个错误,即,作为 RDS for PostgreSQL 实例的复制目标的 Aurora PostgreSQL 实例由于以下错误而崩溃:
FATAL: could not open file "base/16411/680897_vm": No such file or directory" during "xlog redo at 782/3122D540 for Storage/TRUNCATE"
-
修复了只读节点上的内存泄漏,即,“aurora wal 重放进程”的堆大小将继续增长。可以通过增强监控观察到该问题。
-
修复了一个错误,即,Aurora PostgreSQL 无法启动,并在 PostgreSQL 日志中报告以下消息:
FATAL: Storage initialization failed.
-
修复了大量写入工作负载的性能限制,该问题导致在
LWLock:buffer_content
和IO:ControlFileSyncUpdate
事件上等待。 -
修复了一个错误,即读取节点在特定类型的可用空间从写入节点更改后可能崩溃。
与 PostgreSQL 9.6.8 兼容的版本 1.2
该 Aurora PostgreSQL 版本与 PostgreSQL 9.6.8 兼容。有关 9.6.8 版中的改进的更多信息,请参阅 PostgreSQL 9.6.8 版
版本 1.2.2
您可以在此引擎更新中发现下列改进。
新功能
-
增加了
ProcArrayGroupUpdate
等待事件。
改进
-
修复了可能导致运行查询时出错的错误。报告的消息将是“CLOG 段 123 不存在:无此文件或目录”的形式。
-
将支持的 IAM 密码的大小增加到 8KB。
-
提高了高吞吐量写入工作负载下性能的一致性。
-
修复了可能导致只读副本在重启时崩溃的错误。
-
修复了可能导致运行查询时出错的错误。报告的消息将是“SQL 错误:正在尝试读取过去的关系 EOF”的形式。
-
修复了可能导致重启后内存使用量增加的错误。
-
修复了可能导致包含大量子事务的事务失败的错误。
-
合并了使用 GIN 索引时处理潜在故障的社区 PostgreSQL 中的补丁。有关更多信息,请参阅 https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=f9e66f2fbbb49a493045c8d8086a9b15d95b8f18
。 -
修复了可能导致从 PostgreSQL 的 RDS 的快照导入失败的错误。
版本 1.2.0
您可以在此引擎更新中发现下列改进。
新功能
-
引入
aurora_stat_memctx_usage()
函数。此函数可为每个 PostgreSQL 后端报告内部的内存上下文使用情况。可以使用此函数帮助确定某些后端占用大量内存的原因。
改进
-
该版本包含 与 PostgreSQL 9.6.6 兼容的版本 1.1 已弃用 中的所有修复、功能和改进。
-
更新以下 PostgreSQL 扩展:
-
pg_hint_plan
更新为版本 1.2.2 -
plv8
更新为版本 2.1.0
-
-
提高写入器和读取器节点之间的流量效率。
-
改进连接建立性能。
-
改进在出现内存不足错误时 PostgreSQL 错误日志中提供的诊断数据。
-
进行了多次修复以提高将快照从 Amazon RDS for PostgreSQL 导入到 与 PostgreSQL 兼容的 Aurora 的可靠性和性能。
-
进行了多次修复,以提高 Aurora PostgreSQL 读取节点的可靠性和性能。
-
修复了一个问题,其中原本空闲的实例会在 Aurora 存储卷上生成不必要的读取流量。
-
修复了在插入期间遇到重复序列值的问题。只有在从 RDS for PostgreSQL 向 Aurora PostgreSQL 中迁移快照时,才会出现该问题。该修复可防止在执行迁移时引入问题。在此版本前迁移的实例仍然会遇到重复键错误。
-
修复了一个问题:使用复制迁移到 Aurora PostgreSQL 的 RDS for PostgreSQL 实例在插入/更新 GIST 索引时内存不足或导致 GIST 索引出现其他问题。
-
修复了清理操作无法更新数据库的对应
pg_database.datfrozenxid
值的问题。 -
修复了一个问题,其中创建新 MultiXact(竞争性行级别锁定)会导致 Aurora PostgreSQL 在引擎重启后在对同一关系的第一次访问中无限期停止响应。
-
修复了在调用
fdw
时无法终止或取消 PostgreSQL 后端的问题。 -
修复了 Aurora 存储守护程序始终充分利用的 vCPU 的问题。对于较小的实例类(如 r4.large),这个问题尤其明显,会导致空闲时 CPU 使用率达到 25%–50%。
-
修复了 Aurora PostgreSQL 写入器节点进行虚假故障转移的问题。
-
修复了一个问题:在极少数情况下,Aurora PostgreSQL 读取节点报告以下问题:
"FATAL: lock buffer_io is not held"
-
修复了一个错误,其中过期的 relcache 条目会停止对关系执行清理并推动系统接近事务 ID 重叠。此修复是计划在未来的次要版本中发布的 PostgreSQL 社区补丁的端口。
-
修复了一个问题,其中在扩展关系时出现的故障导致 Aurora 在扫描部分扩展的关系时崩溃。
与 PostgreSQL 9.6.6 兼容的版本 1.1 已弃用
该 Aurora PostgreSQL 版本与 PostgreSQL 9.6.6 兼容。有关 9.6.6 版中的改进的更多信息,请参阅 PostgreSQL 9.6.6 版
您可以在此引擎更新中发现下列改进:
新功能
-
引入了
aurora_stat_utils
扩展。该扩展包含两个函数:-
aurora_wait_report() 函数,用于等待事件监控
-
aurora_log_report(),用于日志记录写入监控
-
-
添加了对以下扩展的支持:
-
orafce 3.6.1
-
pgrouting 2.4.2
-
postgresql-hll 2.10.2
-
prefix 1.2.6
-
改进
-
该版本包含 版本 1.0.11 中的所有修复、功能和改进。
-
更新了以下 PostgreSQL 扩展:
-
postgis 扩展已更新为 2.3.4 版本
-
geos 库已更新为 3.6.2 版本
-
pg_repack 已更新为 1.4.2 版本
-
-
已启用对 pg_statistic 关系的访问。
-
已禁用“effective_io_concurrency”guc 参数,因为它不适用于 Aurora 存储。
-
已将“hot_standby_feedback”guc 参数更改为不可修改并将值设置为“1”。
-
在 vacuum 操作期间提高了堆页面读取性能。
-
提高了读取节点上的快照冲突解决性能。
-
提高了读取节点上的事务快照获取性能。
-
提高了 GIN 元数据页面更新写入性能。
-
在启动期间提高了缓冲区缓存恢复性能。
-
修复了一个错误,它在启动时恢复准备的事务期间导致数据库引擎崩溃。
-
修复了一个错误,它在具有大量准备的事务时可能导致无法启动读取节点。
-
修复了一个错误,它可能导致读取节点报告以下问题:
ERROR: could not access status of transaction 6080077
DETAIL:* *Could not open file "pg_subtrans/005C": No such file or directory.
-
修复了一个错误,在从 RDS PostgreSQL 复制到 Aurora PostgreSQL 时,它可能导致以下错误:
FATAL: lock buffer_content is not held
CONTEXT: xlog redo at 46E/F1330870 for Storage/TRUNCATE: base/13322/8058750 to 0 blocks flags 7
-
修复了一个错误,在从 RDS PostgreSQL 复制到 Aurora PostgreSQL 时重放 multixact WAL 记录期间,该问题可能导致 Aurora PostgreSQL 停止响应。
-
提供了多种改进以提高将快照从 RDS PostgreSQL 导入到 Aurora PostgreSQL 的可靠性。
与 PostgreSQL 9.6.3 兼容的版本 1.0 已弃用
该 Aurora PostgreSQL 版本与 PostgreSQL 9.6.3 兼容。有关 9.6.3 版中的改进的更多信息,请参阅 PostgreSQL 9.6.3 版
此版本包括以下补丁版本:
版本 1.0.11
您可以在此引擎更新中发现下列改进:
-
修复了可能导致结果错误的并行查询处理的问题。
-
修复了从 Amazon RDS for PostgreSQL 复制期间出现的可见性图处理问题,该问题可能导致 Aurora 存储卷变得不可用。
-
更正了 pg-repack 扩展。
-
实现了用于维护全新节点的改进。
-
修复了可能导致引擎崩溃的问题。
版本 1.0.10
此更新包含新功能。您现在可以将 Amazon RDS PostgreSQL 数据库实例复制到 Aurora PostgreSQL。有关更多信息,请参阅使用 Amazon Aurora PostgreSQL 进行复制。
您可以在此引擎更新中发现下列改进:
-
添加了当缓存存在并且参数更改导致不一致的缓冲区缓存、存储格式或大小时的错误日志记录。
-
修复了大型页面存在不兼容的参数值时导致引擎重新启动的问题。
-
改进了在读取节点上回放提前写入日志 (WAL) 期间对多个截断表语句的处理。
-
降低了静态内存开销以减少内存不足错误。
-
修复了在执行 GiST 索引插入时可能导致内存不足错误的问题。
-
改进了从 RDS PostgreSQL 导入快照的过程,从而无需在未初始化的页面上执行真空操作。
-
修复了导致准备好的事务在引擎崩溃之后恢复到之前的状态的问题。
-
实现了用于防止读取节点过期的改进。
-
实现了用于减少引擎重新启动所需停机时间的改进。
-
修复了可能导致引擎崩溃的问题。
版本 1.0.9
在此引擎更新中,我们修复了以下问题:当从 RDS PostgreSQL 导入包含未初始化页面的快照时,Aurora 存储卷变得不可用。
版本 1.0.8
您可以在此引擎更新中发现下列改进:
-
修复了
shared_preload_libraries
实例参数包含pg_hint_plan
时阻止引擎启动的问题。 -
修复了并行扫描过程中可能出现的错误“Attempt to fetch heap block XXX is beyond end of heap (YYY blocks)”。
-
改进了为了真空操作预取读取的效果。
-
修复了通过 RDS PostgreSQL 导入快照 (可能在源快照中包含不兼容的 pg_internal.init 文件时失败) 的问题。
-
修复了以下问题:读取节点崩溃,并返回消息“aurora wal replay process (PID XXX) was terminated by signal 11: Segmentation fault”。当阅读器对未缓存的可见性图页面应用了可见性图更改之后,该问题会出现。
版本 1.0.7
这是 Amazon 与 PostgreSQL 兼容的 Aurora 第一个公开发布的版本。