{"format": 1, "mode": "release", "from_release": null, "to_release": {"date": "2013-12-05", "build": "9.3.2", "major": "9.3", "minor": 2, "manual": "9.3", "status": "stable", "doc_git": "", "version": "9.3.2", "eol_date": "2018-11-08", "date_text": "2013-12-05", "supported": false, "manual_url": "/docs/9.3/release-9-3-2.html", "source_url": "/docs/release/9.3.2/", "entry_count": 38, "placeholder": false, "content_hash": "8734b25b4bb6065b112f0a3eb0167b085a579c169a7b13c5dc3f53ab168b2c50", "manual_build": "9.3.25", "source_as_of": "", "changes_count": 38, "doc_loaded_at": "2026-09-26T02:56:46.133805", "migration_html": "<p>对于运行 9.3.X 的用户，不需要进行转储/恢复。</p>\n<p>不过，本版本纠正了若干潜在的数据损坏问题。请参见下面前三条变更日志，以确认你的安装是否受影响以及可以采取什么措施。</p>\n<p>不过，如果你是从早于 9.3.1 的版本升级，请参见<a href=\"/docs/9.3/release-9-3-1.html\" title=\"E.25. 版本 9.3.1\">第 E.25 节</a>。</p>", "compatibility_count": 0, "label": "9.3.2", "status_label": "历史版本", "eol": "2018-11-08", "age_days": 4682, "support_days": -2883}, "groups": [{"date": "2013-12-05", "build": "9.3.2", "major": "9.3", "minor": 2, "manual": "9.3", "status": "stable", "doc_git": "", "version": "9.3.2", "eol_date": "2018-11-08", "date_text": "2013-12-05", "supported": false, "manual_url": "/docs/9.3/release-9-3-2.html", "source_url": "/docs/release/9.3.2/", "entry_count": 38, "placeholder": false, "content_hash": "8734b25b4bb6065b112f0a3eb0167b085a579c169a7b13c5dc3f53ab168b2c50", "manual_build": "9.3.25", "source_as_of": "", "changes_count": 38, "doc_loaded_at": "2026-09-26T02:56:46.133805", "migration_html": "<p>对于运行 9.3.X 的用户，不需要进行转储/恢复。</p>\n<p>不过，本版本纠正了若干潜在的数据损坏问题。请参见下面前三条变更日志，以确认你的安装是否受影响以及可以采取什么措施。</p>\n<p>不过，如果你是从早于 9.3.1 的版本升级，请参见<a href=\"/docs/9.3/release-9-3-1.html\" title=\"E.25. 版本 9.3.1\">第 E.25 节</a>。</p>", "compatibility_count": 0, "label": "9.3.2", "status_label": "历史版本", "eol": "2018-11-08", "age_days": 4682, "support_days": -2883, "entries": [{"id": "9.3.2-abf63764d111cc9f", "cves": [], "html": "<p>修复 <code>VACUUM</code> 判断是否可以更新 <code>relfrozenxid</code> 的测试（Andres Freund）</p>\n<p>某些情况下，<code>VACUUM</code>（手工或自动）可能错误地推进表的 <code>relfrozenxid</code> 值，使元组逃过冻结，导致这些行在经过 2^31 个事务后变得不可见。由于需要多次错误推进才会发生实际丢失，数据丢失的概率相当低，但并非为零。在 9.2.0 及更高版本中，丢失概率更高，而且这一缺陷还可能导致 <span>“<span>could not access status of transaction</span>”</span> 错误。从 9.0.4、8.4.8 或更早版本升级的用户不受影响，但之后的所有版本都包含该缺陷。</p>\n<p>升级后，在把 <a href=\"/docs/9.3/runtime-config-client.html#GUC-VACUUM-FREEZE-TABLE-AGE\"><code>vacuum_freeze_table_age</code></a> 设为零的情况下对所有数据库中的所有表执行清理，可以缓解此问题。这会修复任何潜伏的损坏，但无法修复所有既有的数据错误。不过，如果安装在其生命周期内执行的事务少于 2^31 个更新（可用 <code>SELECT txid_current() &lt; 2^31</code> 检查），则在执行此清理之后即可认为该安装是安全的。</p>", "text": "修复 VACUUM 判断是否可以更新 relfrozenxid 的测试（Andres Freund） 某些情况下，VACUUM（手工或自动）可能错误地推进表的 relfrozenxid 值，使元组逃过冻结，导致这些行在经过 2^31 个事务后变得不可见。由于需要多次错误推进才会发生实际丢失，数据丢失的概率相当低，但并非为零。在 9.2.0 及更高版本中，丢失概率更高，而且这一缺陷还可能导致 “could not access status of transaction” 错误。从 9.0.4、8.4.8 或更早版本升级的用户不受影响，但之后的所有版本都包含该缺陷。 升级后，在把 vacuum_freeze_table_age 设为零的情况下对所有数据库中的所有表执行清理，可以缓解此问题。这会修复任何潜伏的损坏，但无法修复所有既有的数据错误。不过，如果安装在其生命周期内执行的事务少于 2^31 个更新（可用 SELECT txid_current() < 2^31 检查），则在执行此清理之后即可认为该安装是安全的。", "title": "修复 VACUUM 判断是否可以更新 relfrozenxid 的测试", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "0e4d67f0544ea3c9b775745358e9aaae876e2b01af47f415e7591e3375b750e4", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix VACUUM's tests to see whether it can update relfrozenxid (Andres Freund) In some cases VACUUM (either manual or autovacuum) could incorrectly advance a table's relfrozenxid value, allowing tuples to escape freezing, causing those rows to become invisible once 2^31 transactions have elapsed. The probability of data loss is fairly low since multiple incorrect advancements would need to happen before actual loss occurs, but it's not zero. In 9.2.0 and later, the probability of loss is higher, and it's also possible to get could not access status of transaction errors as a consequence of this bug. Users upgrading from releases 9.0.4 or 8.4.8 or earlier are not affected, but all later versions contain the bug. The issue can be ameliorated by, after upgrading, vacuuming all tables in all databases while having vacuum_freeze_table_age set to zero. This will fix any latent corruption but will not be able to fix all pre-existing data errors. However, an installation can be presumed safe after performing this vacuuming if it has executed fewer than 2^31 update transactions in its lifetime (check this with SELECT txid_current() < 2^31).", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/001", "db_id": "e856fecdad9ecd4960731d940a36a796", "patch_ids": [], "statement_hash": "2120ae1b60ab99c872851c49d00100a9ec8458028d02a05da1fb5639c6e4b18c", "relations": [{"rule": 2, "type": "equivalent", "target": "40a37229f32a1a4d8227503685cb88c7", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2120ae1b60ab99c872851c49d00100a9ec8458028d02a05da1fb5639c6e4b18c"}}], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "40a37229f32a1a4d8227503685cb88c7", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "修复 VACUUM 判断是否可以更新 relfrozenxid 的测试", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2120ae1b60ab99c872851c49d00100a9ec8458028d02a05da1fb5639c6e4b18c"}, "url": "/docs/compare/?release=9.2.6#9.2.6-abf63764d111cc9f", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}]}, {"id": "9.3.2-64ede22a07e66998", "cves": [], "html": "<p>修复 MultiXactId 冻结中的多个缺陷（Andres Freund、Álvaro Herrera）</p>\n<p>这些缺陷可能导致 <span>“<span>could not access status of transaction</span>”</span> 错误，或者出现重复或消失的行。从 9.3.0 之前版本升级的用户不受影响。</p>\n<p>升级后，在把 <a href=\"/docs/9.3/runtime-config-client.html#GUC-VACUUM-FREEZE-TABLE-AGE\"><code>vacuum_freeze_table_age</code></a> 设为零的情况下对所有数据库中的所有表执行清理，可以缓解此问题。这会修复潜伏的损坏，但无法修复所有既有的数据错误。</p>\n<p>另外一个独立的问题是，这些缺陷还可能导致备库与主库失去同步，从而表现出主库中不存在的数据错误。因此建议，升级后把运行过 9.3.0 和 9.3.1 的备库从主库重新克隆（例如用新的基础备份）。</p>", "text": "修复 MultiXactId 冻结中的多个缺陷（Andres Freund、Álvaro Herrera） 这些缺陷可能导致 “could not access status of transaction” 错误，或者出现重复或消失的行。从 9.3.0 之前版本升级的用户不受影响。 升级后，在把 vacuum_freeze_table_age 设为零的情况下对所有数据库中的所有表执行清理，可以缓解此问题。这会修复潜伏的损坏，但无法修复所有既有的数据错误。 另外一个独立的问题是，这些缺陷还可能导致备库与主库失去同步，从而表现出主库中不存在的数据错误。因此建议，升级后把运行过 9.3.0 和 9.3.1 的备库从主库重新克隆（例如用新的基础备份）。", "title": "修复 MultiXactId 冻结中的多个缺陷", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "6185901b0fcdc8357fa8e916099d0a09038a895ed18787dfa04d13b71097b8d0", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix multiple bugs in MultiXactId freezing (Andres Freund, Álvaro Herrera) These bugs could lead to could not access status of transaction errors, or to duplicate or vanishing rows. Users upgrading from releases prior to 9.3.0 are not affected. The issue can be ameliorated by, after upgrading, vacuuming all tables in all databases while having vacuum_freeze_table_age set to zero. This will fix latent corruption but will not be able to fix all pre-existing data errors. As a separate issue, these bugs can also cause standby servers to get out of sync with the primary, thus exhibiting data errors that are not in the primary. Therefore, it's recommended that 9.3.0 and 9.3.1 standby servers be re-cloned from the primary (e.g., with a new base backup) after upgrading.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/002", "db_id": "1b6363f3bcc7033477d717376f544f87", "patch_ids": [], "statement_hash": "e258168b4f9ec309b8a01c74f70a4ae86078ea96f736ceee58dc4f8f13607fcd", "relations": [], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.3.2-75430459b83c6fcc", "cves": [], "html": "<p>修复热备启动期间 <code>pg_clog</code> 和 <code>pg_subtrans</code> 的初始化（Andres Freund、Heikki Linnakangas）</p>\n<p>这一缺陷会把已提交事务标记为未提交，从而在备库开始接受热备查询的那一刻造成数据丢失。除非备库启动时主库自上次检查点以来执行了大量更新事务，否则这种损坏的可能性很小。症状包括行缺失、本应删除的行仍可见，以及已更新行的过时版本与新版本同时可见。</p>\n<p>该缺陷是在 9.3.0、9.2.5、9.1.10 和 9.0.14 版本中引入的。只运行过更早版本的备库没有风险。建议曾运行过任何含缺陷版本的备库在升级后从主库重新克隆（例如用新的基础备份）。</p>", "text": "修复热备启动期间 pg_clog 和 pg_subtrans 的初始化（Andres Freund、Heikki Linnakangas） 这一缺陷会把已提交事务标记为未提交，从而在备库开始接受热备查询的那一刻造成数据丢失。除非备库启动时主库自上次检查点以来执行了大量更新事务，否则这种损坏的可能性很小。症状包括行缺失、本应删除的行仍可见，以及已更新行的过时版本与新版本同时可见。 该缺陷是在 9.3.0、9.2.5、9.1.10 和 9.0.14 版本中引入的。只运行过更早版本的备库没有风险。建议曾运行过任何含缺陷版本的备库在升级后从主库重新克隆（例如用新的基础备份）。", "title": "修复热备启动期间 pg_clog 和 pg_subtrans 的初始化", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "6dae40bcb201811047a319c5216ac6bec23e8131658441c15860b671bc23ed18", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix initialization of pg_clog and pg_subtrans during hot standby startup (Andres Freund, Heikki Linnakangas) This bug can cause data loss on standby servers at the moment they start to accept hot-standby queries, by marking committed transactions as uncommitted. The likelihood of such corruption is small unless, at the time of standby startup, the primary server has executed many updating transactions since its last checkpoint. Symptoms include missing rows, rows that should have been deleted being still visible, and obsolete versions of updated rows being still visible alongside their newer versions. This bug was introduced in versions 9.3.0, 9.2.5, 9.1.10, and 9.0.14. Standby servers that have only been running earlier releases are not at risk. It's recommended that standby servers that have ever run any of the buggy releases be re-cloned from the primary (e.g., with a new base backup) after upgrading.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/003", "db_id": "4354cc947d1a9e224823cb48f97baa29", "patch_ids": [], "statement_hash": "4611244681fcbdfbcafaa4c61bd63516f6a7f240970fa8e7ac1910a4cda32913", "relations": [{"rule": 2, "type": "equivalent", "target": "0ef1879d1e53afd7f1388c2bfb67b1d4", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "4611244681fcbdfbcafaa4c61bd63516f6a7f240970fa8e7ac1910a4cda32913"}}, {"rule": 2, "type": "equivalent", "target": "901efd8aebaf77a6339dc8eb68def63e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "4611244681fcbdfbcafaa4c61bd63516f6a7f240970fa8e7ac1910a4cda32913"}}, {"rule": 2, "type": "equivalent", "target": "be0f921e1ac97bf95d24f7ccbbfc3cd4", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "4611244681fcbdfbcafaa4c61bd63516f6a7f240970fa8e7ac1910a4cda32913"}}], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "901efd8aebaf77a6339dc8eb68def63e", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "修复热备启动期间 pg_clog 和 pg_subtrans 的初始化", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "4611244681fcbdfbcafaa4c61bd63516f6a7f240970fa8e7ac1910a4cda32913"}, "url": "/docs/compare/?release=9.2.6#9.2.6-75430459b83c6fcc", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}, {"db_id": "0ef1879d1e53afd7f1388c2bfb67b1d4", "kind": "equivalent", "version": "9.1.11", "label": "9.1.11", "title": "修复热备启动期间 pg_clog 和 pg_subtrans 的初始化", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "4611244681fcbdfbcafaa4c61bd63516f6a7f240970fa8e7ac1910a4cda32913"}, "url": "/docs/compare/?release=9.1.11#9.1.11-75430459b83c6fcc", "source_url": "/docs/release/9.1.11/#id-1.11.6.18.5"}, {"db_id": "be0f921e1ac97bf95d24f7ccbbfc3cd4", "kind": "equivalent", "version": "9.0.15", "label": "9.0.15", "title": "修复热备启动期间 pg_clog 和 pg_subtrans 的初始化", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "4611244681fcbdfbcafaa4c61bd63516f6a7f240970fa8e7ac1910a4cda32913"}, "url": "/docs/compare/?release=9.0.15#9.0.15-75430459b83c6fcc", "source_url": "/docs/release/9.0.15/#id-1.11.6.13.5"}]}, {"id": "9.3.2-0e6e3d0a52c792a6", "cves": [], "html": "<p>修复更新链遍历中的多个缺陷（Andres Freund、Álvaro Herrera）</p>\n<p>在存在并发更新的情况下，这些缺陷可能导致错误行为，例如锁定甚至更新错误的行。也可能出现虚假的 <span>“<span>unable to fetch updated version of tuple</span>”</span> 错误。</p>", "text": "修复更新链遍历中的多个缺陷（Andres Freund、Álvaro Herrera） 在存在并发更新的情况下，这些缺陷可能导致错误行为，例如锁定甚至更新错误的行。也可能出现虚假的 “unable to fetch updated version of tuple” 错误。", "title": "修复更新链遍历中的多个缺陷", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "0fac57dc8691e5b58aedbc17953d183d8d9cf31eb630723dfdc82a17ea3e5623", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix multiple bugs in update chain traversal (Andres Freund, Álvaro Herrera) These bugs could result in incorrect behavior, such as locking or even updating the wrong row, in the presence of concurrent updates. Spurious unable to fetch updated version of tuple errors were also possible.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/004", "db_id": "812fa8047af2146fff23d34b2ae83c19", "patch_ids": [], "statement_hash": "8669746ada314dadd486d5dfc162a6a690d8b2dcd4d2721a70371aaa32008da3", "relations": [], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.3.2-1895d11a55da5937", "cves": [], "html": "<p>修复快速路径锁定中的悬空指针问题（Tom Lane）</p>\n<p>这可能导致共享内存中锁数据结构的损坏，造成 <span>“<span>lock already held</span>”</span> 和其他奇怪的错误。</p>", "text": "修复快速路径锁定中的悬空指针问题（Tom Lane） 这可能导致共享内存中锁数据结构的损坏，造成 “lock already held” 和其他奇怪的错误。", "title": "修复快速路径锁定中的悬空指针问题", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "2281a33a72c79d471ed91e5a642290940d5f53ada32063fe715c56e34374ff67", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix dangling-pointer problem in fast-path locking (Tom Lane) This could lead to corruption of the lock data structures in shared memory, causing lock already held and other odd errors.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/005", "db_id": "c517f677b2703c4049cc3bf0adc59a4b", "patch_ids": [], "statement_hash": "020f282ee518184028bea679963a34d1570c06bcb386bbea1109a99c6d72a8bc", "relations": [{"rule": 2, "type": "equivalent", "target": "2486a4438d3abc57225f8f26b280fe9f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "020f282ee518184028bea679963a34d1570c06bcb386bbea1109a99c6d72a8bc"}}], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "2486a4438d3abc57225f8f26b280fe9f", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "修复快速路径锁定中的悬空指针问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "020f282ee518184028bea679963a34d1570c06bcb386bbea1109a99c6d72a8bc"}, "url": "/docs/compare/?release=9.2.6#9.2.6-1895d11a55da5937", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}]}, {"id": "9.3.2-1675fea819ed3975", "cves": [], "html": "<p>修复超时管理中的多种竞态条件（Tom Lane）</p>\n<p>这些错误可能导致服务器进程因阻塞了 SIGALRM 和/或 SIGINT 而失去响应。</p>", "text": "修复超时管理中的多种竞态条件（Tom Lane） 这些错误可能导致服务器进程因阻塞了 SIGALRM 和/或 SIGINT 而失去响应。", "title": "修复超时管理中的多种竞态条件", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "b583cee72f41a3aa14422b1d6cd2c771844b1891711ea86d49421c4768b529d9", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix assorted race conditions in timeout management (Tom Lane) These errors could result in a server process becoming unresponsive because it had blocked SIGALRM and/or SIGINT.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/006", "db_id": "06841a4a99b2134624db55e0b32c88ae", "patch_ids": [], "statement_hash": "fb0558c6c9f2b3883ba2a8f96796235d91e3956c93b7f2051e613032f3787656", "relations": [], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.3.2-3c68846981b0ce05", "cves": [], "html": "<p>在 WAL 重放期间截断 <code>pg_multixact</code> 内容（Andres Freund）</p>\n<p>这避免了备库中磁盘空间消耗不断增加。</p>", "text": "在 WAL 重放期间截断 pg_multixact 内容（Andres Freund） 这避免了备库中磁盘空间消耗不断增加。", "title": "在 WAL 重放期间截断 pg_multixact 内容", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "1f0e1d3f4baab9df0a9d0dd015b5991613eb990edad968ec1234a9d36ac3aa2e", "section_path": ["变更"], "commit_groups": [], "identity_text": "Truncate pg_multixact contents during WAL replay (Andres Freund) This avoids ever-increasing disk space consumption in standby servers.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/007", "db_id": "cd2378a1b741e9efcd50ec64673f309e", "patch_ids": [], "statement_hash": "29faa1b46cf68bb6bb0936f1efff9ff5cbf3126d3a02443747732ea2953a8938", "relations": [{"rule": 2, "type": "equivalent", "target": "2ab09ab16fc74bcd964e8dbf67d0b5a0", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "29faa1b46cf68bb6bb0936f1efff9ff5cbf3126d3a02443747732ea2953a8938"}}, {"rule": 2, "type": "equivalent", "target": "714c9a65006f2669cc88af918eeedf2d", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "29faa1b46cf68bb6bb0936f1efff9ff5cbf3126d3a02443747732ea2953a8938"}}, {"rule": 2, "type": "equivalent", "target": "bba9adb4cf79576fe7660d52aac70f83", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "29faa1b46cf68bb6bb0936f1efff9ff5cbf3126d3a02443747732ea2953a8938"}}], "version": "9.3.2", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "714c9a65006f2669cc88af918eeedf2d", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "在 WAL 重放期间截断 pg_multixact 内容", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "29faa1b46cf68bb6bb0936f1efff9ff5cbf3126d3a02443747732ea2953a8938"}, "url": "/docs/compare/?release=9.2.6#9.2.6-3c68846981b0ce05", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}, {"db_id": "2ab09ab16fc74bcd964e8dbf67d0b5a0", "kind": "equivalent", "version": "9.1.11", "label": "9.1.11", "title": "在 WAL 重放期间截断 pg_multixact 内容", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "29faa1b46cf68bb6bb0936f1efff9ff5cbf3126d3a02443747732ea2953a8938"}, "url": "/docs/compare/?release=9.1.11#9.1.11-3c68846981b0ce05", "source_url": "/docs/release/9.1.11/#id-1.11.6.18.5"}, {"db_id": "bba9adb4cf79576fe7660d52aac70f83", "kind": "equivalent", "version": "9.0.15", "label": "9.0.15", "title": "在 WAL 重放期间截断 pg_multixact 内容", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "29faa1b46cf68bb6bb0936f1efff9ff5cbf3126d3a02443747732ea2953a8938"}, "url": "/docs/compare/?release=9.0.15#9.0.15-3c68846981b0ce05", "source_url": "/docs/release/9.0.15/#id-1.11.6.13.5"}]}, {"id": "9.3.2-95f7664f268523da", "cves": [], "html": "<p>确保防回卷 <code>VACUUM</code> 在仅验证了没有元组需要冻结时也把该页计为已扫描（Sergey Burladyan、Jeff Janes）</p>\n<p>这一缺陷可能导致 <code>relfrozenxid</code> 未能推进，使该表仍被认为需要再次防回卷清理。最坏情况下，数据库甚至可能为防止回卷而关闭。</p>", "text": "确保防回卷 VACUUM 在仅验证了没有元组需要冻结时也把该页计为已扫描（Sergey Burladyan、Jeff Janes） 这一缺陷可能导致 relfrozenxid 未能推进，使该表仍被认为需要再次防回卷清理。最坏情况下，数据库甚至可能为防止回卷而关闭。", "title": "确保防回卷 VACUUM 在仅验证了没有元组需要冻结时也把该页计为已扫描", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "a07069e7032656a65069bd4efc178198f7dc2888af77d5127282c75fe898994e", "section_path": ["变更"], "commit_groups": [], "identity_text": "Ensure an anti-wraparound VACUUM counts a page as scanned when it's only verified that no tuples need freezing (Sergey Burladyan, Jeff Janes) This bug could result in failing to advance relfrozenxid, so that the table would still be thought to need another anti-wraparound vacuum. In the worst case the database might even shut down to prevent wraparound.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/008", "db_id": "7ea998c16fef7ac669aedea035a9af76", "patch_ids": [], "statement_hash": "d8c65a4738849d16aa8bcf7fda08e5a8994a997950a31a7af75ae91f79fe481b", "relations": [{"rule": 2, "type": "equivalent", "target": "eaa899b49990c5cfa6a56551435f82af", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "d8c65a4738849d16aa8bcf7fda08e5a8994a997950a31a7af75ae91f79fe481b"}}], "version": "9.3.2", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "eaa899b49990c5cfa6a56551435f82af", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "确保防回卷 VACUUM 在仅验证了没有元组需要冻结时也把该页计为已扫描", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "d8c65a4738849d16aa8bcf7fda08e5a8994a997950a31a7af75ae91f79fe481b"}, "url": "/docs/compare/?release=9.2.6#9.2.6-95f7664f268523da", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}]}, {"id": "9.3.2-4a2502503c9e8c8a", "cves": [], "html": "<p>修复 MultiXactId 的全表清理请求机制（Andres Freund）</p>\n<p>这一缺陷可能导致大量无用的自动清理活动。</p>", "text": "修复 MultiXactId 的全表清理请求机制（Andres Freund） 这一缺陷可能导致大量无用的自动清理活动。", "title": "修复 MultiXactId 的全表清理请求机制", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "3f56c100bd44499009ab5999f0f527fc6effd236fb2714c58700cccf8c112d68", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix full-table-vacuum request mechanism for MultiXactIds (Andres Freund) This bug could result in large amounts of useless autovacuum activity.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/009", "db_id": "0922e503f06f580d6cbde92ddd0c55c0", "patch_ids": [], "statement_hash": "f765cb9fecbdeeed7e685561e3eae8347f214c6d5c348909e25f87d18f78fa2c", "relations": [], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.3.2-8f37e9445b864c31", "cves": [], "html": "<p>修复 GIN 索引 posting 树页面删除中的竞态条件（Heikki Linnakangas）</p>\n<p>这可能导致瞬时的错误结果或查询失败。</p>", "text": "修复 GIN 索引 posting 树页面删除中的竞态条件（Heikki Linnakangas） 这可能导致瞬时的错误结果或查询失败。", "title": "修复 GIN 索引 posting 树页面删除中的竞态条件", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "91c8de29d0767b8dc6411f04e599bafa6ec014779ade9cf26fab54b16b59c731", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix race condition in GIN index posting tree page deletion (Heikki Linnakangas) This could lead to transient wrong answers or query failures.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/010", "db_id": "c05264daf32f008727a03c0e9d1634dc", "patch_ids": [], "statement_hash": "361069838280eea16e9ef539e7627e35249581b15690457108420218bf8de9a0", "relations": [{"rule": 2, "type": "equivalent", "target": "789d7ff24e2fea7a05dbdfb17d12c20d", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "361069838280eea16e9ef539e7627e35249581b15690457108420218bf8de9a0"}}, {"rule": 2, "type": "equivalent", "target": "96fd2c00f600bb1490cdeef970027a27", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "361069838280eea16e9ef539e7627e35249581b15690457108420218bf8de9a0"}}, {"rule": 2, "type": "equivalent", "target": "e61288b4d8d31e702a099b6c442953d6", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "361069838280eea16e9ef539e7627e35249581b15690457108420218bf8de9a0"}}], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "e61288b4d8d31e702a099b6c442953d6", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "修复 GIN 索引 posting 树页面删除中的竞态条件", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "361069838280eea16e9ef539e7627e35249581b15690457108420218bf8de9a0"}, "url": "/docs/compare/?release=9.2.6#9.2.6-8f37e9445b864c31", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}, {"db_id": "96fd2c00f600bb1490cdeef970027a27", "kind": "equivalent", "version": "9.1.11", "label": "9.1.11", "title": "修复 GIN 索引 posting 树页面删除中的竞态条件", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "361069838280eea16e9ef539e7627e35249581b15690457108420218bf8de9a0"}, "url": "/docs/compare/?release=9.1.11#9.1.11-8f37e9445b864c31", "source_url": "/docs/release/9.1.11/#id-1.11.6.18.5"}, {"db_id": "789d7ff24e2fea7a05dbdfb17d12c20d", "kind": "equivalent", "version": "9.0.15", "label": "9.0.15", "title": "修复 GIN 索引 posting 树页面删除中的竞态条件", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "361069838280eea16e9ef539e7627e35249581b15690457108420218bf8de9a0"}, "url": "/docs/compare/?release=9.0.15#9.0.15-8f37e9445b864c31", "source_url": "/docs/release/9.0.15/#id-1.11.6.13.5"}]}, {"id": "9.3.2-842756fb73bbad02", "cves": [], "html": "<p>修复 SP-GiST 索引创建期间的 <span>“<span>unexpected spgdoinsert() failure</span>”</span> 错误（Teodor Sigaev）</p>", "text": "修复 SP-GiST 索引创建期间的 “unexpected spgdoinsert() failure” 错误（Teodor Sigaev）", "title": "修复 SP-GiST 索引创建期间的 “unexpected spgdoinsert() failure” 错误", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "2a5d1537535ba108c10568526b596f39a18cfb6f76e742546ae4c5126c4202dd", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix unexpected spgdoinsert() failure error during SP-GiST index creation (Teodor Sigaev)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/011", "db_id": "2b98839819d91f11cc4139cc49119418", "patch_ids": [], "statement_hash": "9c38bae562368fd9cea0a62122d3cf8c44e2d57919b1618df75fe92f145c52b0", "relations": [{"rule": 2, "type": "equivalent", "target": "8109c1b7fda854702607ce1bf1c239d5", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9c38bae562368fd9cea0a62122d3cf8c44e2d57919b1618df75fe92f145c52b0"}}], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "8109c1b7fda854702607ce1bf1c239d5", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "修复 SP-GiST 索引创建期间的“unexpected spgdoinsert() failure”错误", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9c38bae562368fd9cea0a62122d3cf8c44e2d57919b1618df75fe92f145c52b0"}, "url": "/docs/compare/?release=9.2.6#9.2.6-76c1c6d73605b653", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}]}, {"id": "9.3.2-40631a93b70407c8", "cves": [], "html": "<p>修复物化视图中的若干缺陷（Kevin Grittner、Andres Freund）</p>", "text": "修复物化视图中的若干缺陷（Kevin Grittner、Andres Freund）", "title": "修复物化视图中的若干缺陷", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "058a6dc4171d343a955a2a631d616119dc6467c666416ebd006bbf1a5cdb1464", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix assorted bugs in materialized views (Kevin Grittner, Andres Freund)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/012", "db_id": "2a8aa9f122833b6e7a52bc794321b9e7", "patch_ids": [], "statement_hash": "9d228b7870fd554936311323ec23889a2e3dd401ed1d6683068d5ec0e9c0dfcf", "relations": [], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.3.2-9034970fc9ec3117", "cves": [], "html": "<p>重新允许出现在带别名的 JOIN 内的重复表别名（Tom Lane）</p>\n<p>历史上，<span>PostgreSQL</span> 一直接受类似这样的查询：</p>\n<pre> SELECT ... FROM tab1 x CROSS JOIN (tab2 x CROSS JOIN tab3 y) z \n</pre>\n<p>，尽管严格解读 SQL 标准会禁止表别名 <code>x</code> 的重复使用。9.3.0 中一个 misguided 的变更导致它拒绝了一些以前被接受的情况。现已恢复先前行为。</p>", "text": "重新允许出现在带别名的 JOIN 内的重复表别名（Tom Lane） 历史上，PostgreSQL 一直接受类似这样的查询： SELECT ... FROM tab1 x CROSS JOIN (tab2 x CROSS JOIN tab3 y) z ，尽管严格解读 SQL 标准会禁止表别名 x 的重复使用。9.3.0 中一个 misguided 的变更导致它拒绝了一些以前被接受的情况。现已恢复先前行为。", "title": "重新允许出现在带别名的 JOIN 内的重复表别名", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "6c683bd1ee857d1c90b5e348568a33f2028e95665ffa525ea132acba1e1b17f8", "section_path": ["变更"], "commit_groups": [], "identity_text": "Re-allow duplicate table aliases if they're within aliased JOINs (Tom Lane) Historically PostgreSQL has accepted queries like SELECT ... FROM tab1 x CROSS JOIN (tab2 x CROSS JOIN tab3 y) z although a strict reading of the SQL standard would forbid the duplicate usage of table alias x. A misguided change in 9.3.0 caused it to reject some such cases that were formerly accepted. Restore the previous behavior.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/013", "db_id": "7cc52a2e6a62ebc55979a61a74228127", "patch_ids": [], "statement_hash": "7fa85afd8b96a7da5589675dc4947d57aec95a6750bf99f7a2bd5fb97483feee", "relations": [], "version": "9.3.2", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.3.2-121ab8a03eaa5bea", "cves": [], "html": "<p>避免展平 <code>SELECT</code> 列表中包含包裹在子 <code>SELECT</code> 中的易变函数的子查询（Tom Lane）</p>\n<p>这避免了因易变函数被额外求值而导致的意外结果。</p>", "text": "避免展平 SELECT 列表中包含包裹在子 SELECT 中的易变函数的子查询（Tom Lane） 这避免了因易变函数被额外求值而导致的意外结果。", "title": "避免展平 SELECT 列表中包含包裹在子 SELECT 中的易变函数的子查询", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "36f673840f0b68373a4bec3cac1343cbc17356df61e0c217db78552e5897858d", "section_path": ["变更"], "commit_groups": [], "identity_text": "Avoid flattening a subquery whose SELECT list contains a volatile function wrapped inside a sub-SELECT (Tom Lane) This avoids unexpected results due to extra evaluations of the volatile function.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/014", "db_id": "df73986505d42b26f2af65e7291f2c03", "patch_ids": [], "statement_hash": "f1ea247a1af9ea49cc4c1f3f7800a33edd46ef276b227c080eb986bde425a4bb", "relations": [{"rule": 2, "type": "equivalent", "target": "097f89eb3d95a428d6d9eb09740567b8", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f1ea247a1af9ea49cc4c1f3f7800a33edd46ef276b227c080eb986bde425a4bb"}}, {"rule": 2, "type": "equivalent", "target": "e9f8dfb4a813cd5095b24d286270230d", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f1ea247a1af9ea49cc4c1f3f7800a33edd46ef276b227c080eb986bde425a4bb"}}, {"rule": 2, "type": "equivalent", "target": "f9bdc2a201976a72575aab9fdbdd57b1", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f1ea247a1af9ea49cc4c1f3f7800a33edd46ef276b227c080eb986bde425a4bb"}}], "version": "9.3.2", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "f9bdc2a201976a72575aab9fdbdd57b1", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "避免展平 SELECT 列表中包含包裹在子 SELECT 中的易变函数的子查询", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f1ea247a1af9ea49cc4c1f3f7800a33edd46ef276b227c080eb986bde425a4bb"}, "url": "/docs/compare/?release=9.2.6#9.2.6-121ab8a03eaa5bea", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}, {"db_id": "e9f8dfb4a813cd5095b24d286270230d", "kind": "equivalent", "version": "9.1.11", "label": "9.1.11", "title": "避免展平 SELECT 列表中包含包裹在子 SELECT 中的易变函数的子查询", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f1ea247a1af9ea49cc4c1f3f7800a33edd46ef276b227c080eb986bde425a4bb"}, "url": "/docs/compare/?release=9.1.11#9.1.11-121ab8a03eaa5bea", "source_url": "/docs/release/9.1.11/#id-1.11.6.18.5"}, {"db_id": "097f89eb3d95a428d6d9eb09740567b8", "kind": "equivalent", "version": "9.0.15", "label": "9.0.15", "title": "避免展平 SELECT 列表中包含包裹在子 SELECT 中的易变函数的子查询", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f1ea247a1af9ea49cc4c1f3f7800a33edd46ef276b227c080eb986bde425a4bb"}, "url": "/docs/compare/?release=9.0.15#9.0.15-121ab8a03eaa5bea", "source_url": "/docs/release/9.0.15/#id-1.11.6.13.5"}]}, {"id": "9.3.2-2cfc143b9d165255", "cves": [], "html": "<p>修复规划器对外连接中嵌套的非简单变量子查询输出的处理（Tom Lane）</p>\n<p>这一错误可能为涉及 <code>JOIN</code> 语法中多级子查询的查询生成错误的计划。</p>", "text": "修复规划器对外连接中嵌套的非简单变量子查询输出的处理（Tom Lane） 这一错误可能为涉及 JOIN 语法中多级子查询的查询生成错误的计划。", "title": "修复规划器对外连接中嵌套的非简单变量子查询输出的处理", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "ada1ec4664f7285e5b564fd30bda2445696ab35d571a477e36c3f2f7fecc4f3d", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix planner's processing of non-simple-variable subquery outputs nested within outer joins (Tom Lane) This error could lead to incorrect plans for queries involving multiple levels of subqueries within JOIN syntax.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/015", "db_id": "83db0c7067a3dd635b0fc421851c89f0", "patch_ids": [], "statement_hash": "eedf8e5c1fb5dfd7ba629eddc6543b5925c6245cd1a3b2fed4c345035f8a955f", "relations": [{"rule": 2, "type": "equivalent", "target": "bfd610ae371a5c43bd8012820ecdbb5c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "eedf8e5c1fb5dfd7ba629eddc6543b5925c6245cd1a3b2fed4c345035f8a955f"}}, {"rule": 2, "type": "equivalent", "target": "e43436cc1913184a43329fe231db587c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "eedf8e5c1fb5dfd7ba629eddc6543b5925c6245cd1a3b2fed4c345035f8a955f"}}, {"rule": 2, "type": "equivalent", "target": "eb5dca2b440ae228ba854c17897dc4be", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "eedf8e5c1fb5dfd7ba629eddc6543b5925c6245cd1a3b2fed4c345035f8a955f"}}], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "eb5dca2b440ae228ba854c17897dc4be", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "修复规划器对外连接中嵌套的非简单变量子查询输出的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "eedf8e5c1fb5dfd7ba629eddc6543b5925c6245cd1a3b2fed4c345035f8a955f"}, "url": "/docs/compare/?release=9.2.6#9.2.6-2cfc143b9d165255", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}, {"db_id": "e43436cc1913184a43329fe231db587c", "kind": "equivalent", "version": "9.1.11", "label": "9.1.11", "title": "修复规划器对外连接中嵌套的非简单变量子查询输出的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "eedf8e5c1fb5dfd7ba629eddc6543b5925c6245cd1a3b2fed4c345035f8a955f"}, "url": "/docs/compare/?release=9.1.11#9.1.11-2cfc143b9d165255", "source_url": "/docs/release/9.1.11/#id-1.11.6.18.5"}, {"db_id": "bfd610ae371a5c43bd8012820ecdbb5c", "kind": "equivalent", "version": "9.0.15", "label": "9.0.15", "title": "修复规划器对外连接中嵌套的非简单变量子查询输出的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "eedf8e5c1fb5dfd7ba629eddc6543b5925c6245cd1a3b2fed4c345035f8a955f"}, "url": "/docs/compare/?release=9.0.15#9.0.15-2cfc143b9d165255", "source_url": "/docs/release/9.0.15/#id-1.11.6.13.5"}]}, {"id": "9.3.2-a8a348edddbc0196", "cves": [], "html": "<p>修复同一非严格表达式出现在多个 <code>WHERE</code> 和外连接 <code>JOIN</code> 等值子句中时的错误规划（Tom Lane）</p>", "text": "修复同一非严格表达式出现在多个 WHERE 和外连接 JOIN 等值子句中时的错误规划（Tom Lane）", "title": "修复同一非严格表达式出现在多个 WHERE 和外连接 JOIN 等值子句中时的错误规划", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "e3a850ddf6442b802a47bbdf0a2809e696511c0747cc49904f7a75f451a3993d", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix incorrect planning in cases where the same non-strict expression appears in multiple WHERE and outer JOIN equality clauses (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/016", "db_id": "e60892c36d1507ec27e6b3b2c9dd065f", "patch_ids": [], "statement_hash": "1a07cde888787578e0cd41391ad15a4d650634bbefd7c44ec3fd05e42482c962", "relations": [{"rule": 2, "type": "equivalent", "target": "7fb0525b25e0ba989e91179903b4e15d", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1a07cde888787578e0cd41391ad15a4d650634bbefd7c44ec3fd05e42482c962"}}], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "7fb0525b25e0ba989e91179903b4e15d", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "修复同一非严格表达式出现在多个 WHERE 和外连接 JOIN 等值子句中时的错误规划", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1a07cde888787578e0cd41391ad15a4d650634bbefd7c44ec3fd05e42482c962"}, "url": "/docs/compare/?release=9.2.6#9.2.6-a8a348edddbc0196", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}]}, {"id": "9.3.2-38b7b29ad3fce8c3", "cves": [], "html": "<p>修复对子查询的整行引用导致规划器崩溃的问题（Tom Lane）</p>", "text": "修复对子查询的整行引用导致规划器崩溃的问题（Tom Lane）", "title": "修复对子查询的整行引用导致规划器崩溃的问题", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "412ac78a3f4fc515185c01ccda6211c2bce9451bef109ba0d5b5f68481ae58b5", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix planner crash with whole-row reference to a subquery (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/017", "db_id": "a569976016af70e6b700555b04ab6a5d", "patch_ids": [], "statement_hash": "179c1e2f723447912f0b97ac0f27d79b59627b35ba60a2e92d50e1e687c869e6", "relations": [{"rule": 2, "type": "equivalent", "target": "a9ca73f6071f71970df2f90376ffdad3", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "179c1e2f723447912f0b97ac0f27d79b59627b35ba60a2e92d50e1e687c869e6"}}], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "a9ca73f6071f71970df2f90376ffdad3", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "修复对子查询的整行引用导致规划器崩溃的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "179c1e2f723447912f0b97ac0f27d79b59627b35ba60a2e92d50e1e687c869e6"}, "url": "/docs/compare/?release=9.2.6#9.2.6-38b7b29ad3fce8c3", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}]}, {"id": "9.3.2-48d46053c2c2eef4", "cves": [], "html": "<p>修复继承树的优化 MIN()/MAX() 计划生成错误（Tom Lane）</p>\n<p>当 MIN()/MAX() 的参数是表达式而不是简单变量时，规划器可能失败。</p>", "text": "修复继承树的优化 MIN()/MAX() 计划生成错误（Tom Lane） 当 MIN()/MAX() 的参数是表达式而不是简单变量时，规划器可能失败。", "title": "修复继承树的优化 MIN()/MAX() 计划生成错误", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "cea3433b008f7c49859e05e9da2ee8207bd997bc151d0b278522d86eab2b4d01", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix incorrect generation of optimized MIN()/MAX() plans for inheritance trees (Tom Lane) The planner could fail in cases where the MIN()/MAX() argument was an expression rather than a simple variable.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/018", "db_id": "c8d909f561ae33e6df161be0742d3c51", "patch_ids": [], "statement_hash": "cdc4f628005617b6d51f3e5befa42b906f36bae45e9832781c08e18b4b81bd61", "relations": [{"rule": 2, "type": "equivalent", "target": "339ffd90456fa9cba8be03a6d01df826", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cdc4f628005617b6d51f3e5befa42b906f36bae45e9832781c08e18b4b81bd61"}}, {"rule": 2, "type": "equivalent", "target": "f01f8238f135123e84d73bcc9822e19d", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cdc4f628005617b6d51f3e5befa42b906f36bae45e9832781c08e18b4b81bd61"}}], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "f01f8238f135123e84d73bcc9822e19d", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "修复继承树的优化 MIN()/MAX() 计划生成错误", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cdc4f628005617b6d51f3e5befa42b906f36bae45e9832781c08e18b4b81bd61"}, "url": "/docs/compare/?release=9.2.6#9.2.6-48d46053c2c2eef4", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}, {"db_id": "339ffd90456fa9cba8be03a6d01df826", "kind": "equivalent", "version": "9.1.11", "label": "9.1.11", "title": "修复继承树的优化 MIN()/MAX() 计划生成错误", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cdc4f628005617b6d51f3e5befa42b906f36bae45e9832781c08e18b4b81bd61"}, "url": "/docs/compare/?release=9.1.11#9.1.11-48d46053c2c2eef4", "source_url": "/docs/release/9.1.11/#id-1.11.6.18.5"}]}, {"id": "9.3.2-79374173a62be50b", "cves": [], "html": "<p>修复临时文件被过早删除的问题（Andres Freund）</p>", "text": "修复临时文件被过早删除的问题（Andres Freund）", "title": "修复临时文件被过早删除的问题", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "e5e91dd3a5106b0714f7cf93ae357cce871b0b72eb44ebc2466cb59f7abc8403", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix premature deletion of temporary files (Andres Freund)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/019", "db_id": "794c783639e28fe65ce37ad20e41d06f", "patch_ids": [], "statement_hash": "3119a2cb4319db76d2a1881224b309ca85f6beeebce5a68d55b6318fc5c29355", "relations": [{"rule": 2, "type": "equivalent", "target": "0215f444a73bfa2ac623668492cbf9da", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3119a2cb4319db76d2a1881224b309ca85f6beeebce5a68d55b6318fc5c29355"}}, {"rule": 2, "type": "equivalent", "target": "60928172601d5b6dda085390441c12fa", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3119a2cb4319db76d2a1881224b309ca85f6beeebce5a68d55b6318fc5c29355"}}, {"rule": 2, "type": "equivalent", "target": "eea4af0d1602c8ce09fc3f6cf6e9923f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3119a2cb4319db76d2a1881224b309ca85f6beeebce5a68d55b6318fc5c29355"}}], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "60928172601d5b6dda085390441c12fa", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "修复临时文件被过早删除的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3119a2cb4319db76d2a1881224b309ca85f6beeebce5a68d55b6318fc5c29355"}, "url": "/docs/compare/?release=9.2.6#9.2.6-79374173a62be50b", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}, {"db_id": "eea4af0d1602c8ce09fc3f6cf6e9923f", "kind": "equivalent", "version": "9.1.11", "label": "9.1.11", "title": "修复临时文件被过早删除的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3119a2cb4319db76d2a1881224b309ca85f6beeebce5a68d55b6318fc5c29355"}, "url": "/docs/compare/?release=9.1.11#9.1.11-79374173a62be50b", "source_url": "/docs/release/9.1.11/#id-1.11.6.18.5"}, {"db_id": "0215f444a73bfa2ac623668492cbf9da", "kind": "equivalent", "version": "9.0.15", "label": "9.0.15", "title": "修复临时文件被过早删除的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3119a2cb4319db76d2a1881224b309ca85f6beeebce5a68d55b6318fc5c29355"}, "url": "/docs/compare/?release=9.0.15#9.0.15-79374173a62be50b", "source_url": "/docs/release/9.0.15/#id-1.11.6.13.5"}]}, {"id": "9.3.2-fec2762a1428e381", "cves": [], "html": "<p>防止打印范围值时的事务内内存泄漏（Tom Lane）</p>\n<p>此修复实际上消除了任何数据类型输出函数中的瞬时内存泄漏，但已知只有范围类型曾出现显著问题。</p>", "text": "防止打印范围值时的事务内内存泄漏（Tom Lane） 此修复实际上消除了任何数据类型输出函数中的瞬时内存泄漏，但已知只有范围类型曾出现显著问题。", "title": "防止打印范围值时的事务内内存泄漏", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "c0f815efe44a4d5ad93c7c35306eab22cdd02d4e772a81c88c35a260a8a55ef8", "section_path": ["变更"], "commit_groups": [], "identity_text": "Prevent intra-transaction memory leak when printing range values (Tom Lane) This fix actually cures transient memory leaks in any datatype output function, but range types are the only ones known to have had a significant problem.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/020", "db_id": "fa91aece2c4def2398ffacd427ff008f", "patch_ids": [], "statement_hash": "fcb0b015590f6d5b196f3085f0ec4717cc0e91e1131380314f3bedc5204621de", "relations": [{"rule": 2, "type": "equivalent", "target": "e4f07bc495985d5f3a2f0c0033ac58a0", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "fcb0b015590f6d5b196f3085f0ec4717cc0e91e1131380314f3bedc5204621de"}}], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "e4f07bc495985d5f3a2f0c0033ac58a0", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "防止打印范围值时的事务内内存泄漏", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "fcb0b015590f6d5b196f3085f0ec4717cc0e91e1131380314f3bedc5204621de"}, "url": "/docs/compare/?release=9.2.6#9.2.6-fec2762a1428e381", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}]}, {"id": "9.3.2-90a54ef53ec1a6ab", "cves": [], "html": "<p>修复重新加载配置文件时的内存泄漏（Heikki Linnakangas、Hari Babu）</p>", "text": "修复重新加载配置文件时的内存泄漏（Heikki Linnakangas、Hari Babu）", "title": "修复重新加载配置文件时的内存泄漏", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "63d0d58faedfdc27e4ace6df3ba19a7d42abe3e701773aa1260092b45e0c5e47", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix memory leaks when reloading configuration files (Heikki Linnakangas, Hari Babu)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/021", "db_id": "689c631466c0b6adce0979675ef45beb", "patch_ids": [], "statement_hash": "f9852c818db6a2cab68f7033e99e94f8b57a72c40d8e7661d219a0a79b408418", "relations": [], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.3.2-055b1e1aac0d3e9e", "cves": [], "html": "<p>防止 NOT NULL 和 CHECK 约束违规消息中错误地显示已删除的列（Michael Paquier、Tom Lane）</p>", "text": "防止 NOT NULL 和 CHECK 约束违规消息中错误地显示已删除的列（Michael Paquier、Tom Lane）", "title": "防止 NOT NULL 和 CHECK 约束违规消息中错误地显示已删除的列", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "586d005abc73af1d69b3646614a68b286614dcb0a83f50548d4419357b72be8b", "section_path": ["变更"], "commit_groups": [], "identity_text": "Prevent incorrect display of dropped columns in NOT NULL and CHECK constraint violation messages (Michael Paquier and Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/022", "db_id": "9a9cdbc2ea819cba1ca239f19de50ecc", "patch_ids": [], "statement_hash": "5e971ef7855dd62c24022dabf41e47ec1898e43ffb391ade31e97b7155bf615b", "relations": [{"rule": 2, "type": "equivalent", "target": "f042db5bc5ef684661e5a3ee5d1741d4", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5e971ef7855dd62c24022dabf41e47ec1898e43ffb391ade31e97b7155bf615b"}}], "version": "9.3.2", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "f042db5bc5ef684661e5a3ee5d1741d4", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "防止 NOT NULL 和 CHECK 约束违规消息中错误地显示已删除的列", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5e971ef7855dd62c24022dabf41e47ec1898e43ffb391ade31e97b7155bf615b"}, "url": "/docs/compare/?release=9.2.6#9.2.6-055b1e1aac0d3e9e", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}]}, {"id": "9.3.2-d351937490906535", "cves": [], "html": "<p>允许窗口函数使用默认参数和命名参数记法（Tom Lane）</p>\n<p>此前这些情况很可能崩溃。</p>", "text": "允许窗口函数使用默认参数和命名参数记法（Tom Lane） 此前这些情况很可能崩溃。", "title": "允许窗口函数使用默认参数和命名参数记法", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "5b500017abb9ef4cdeeea04082ca2d21fdb9098ebed936deecb5e21e7519c47a", "section_path": ["变更"], "commit_groups": [], "identity_text": "Allow default arguments and named-argument notation for window functions (Tom Lane) Previously, these cases were likely to crash.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/023", "db_id": "db2d61b2cd6d9a46030ac60bebe9d59a", "patch_ids": [], "statement_hash": "a2c8bf238db48fc6d86051097c35bfa514e17314aae8a44ceef651dbb5b64d5b", "relations": [{"rule": 2, "type": "equivalent", "target": "08d74fbaaca370df8f0371f1ccab6f9a", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a2c8bf238db48fc6d86051097c35bfa514e17314aae8a44ceef651dbb5b64d5b"}}], "version": "9.3.2", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "08d74fbaaca370df8f0371f1ccab6f9a", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "允许窗口函数使用默认参数和命名参数记法", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a2c8bf238db48fc6d86051097c35bfa514e17314aae8a44ceef651dbb5b64d5b"}, "url": "/docs/compare/?release=9.2.6#9.2.6-d351937490906535", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}]}, {"id": "9.3.2-af3ff91a92da5ba7", "cves": [], "html": "<p>在漂亮打印规则和视图时抑制每行末尾的空白（Tom Lane）</p>\n<p>9.3.0 生成这种空白的情况比以前的版本多得多。为减少意外的行为变化，在所有情况下都抑制不必要的空白。</p>", "text": "在漂亮打印规则和视图时抑制每行末尾的空白（Tom Lane） 9.3.0 生成这种空白的情况比以前的版本多得多。为减少意外的行为变化，在所有情况下都抑制不必要的空白。", "title": "在漂亮打印规则和视图时抑制每行末尾的空白", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "c1624e96032f7fde41237d2ddb819e47eb265958bf7bc70f6d2d907f24bad8cd", "section_path": ["变更"], "commit_groups": [], "identity_text": "Suppress trailing whitespace on each line when pretty-printing rules and views (Tom Lane) 9.3.0 generated such whitespace in many more cases than previous versions did. To reduce unexpected behavioral changes, suppress unnecessary whitespace in all cases.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/024", "db_id": "6a6cbee5c8cab149f0519af4218fbd5a", "patch_ids": [], "statement_hash": "e20ceb63a0290ebeed33f0a665ba4e0b33e245e3befa8d6c792a83cc2d94fe23", "relations": [], "version": "9.3.2", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.3.2-33766060b5f495ac", "cves": [], "html": "<p>修复规则打印中可能读取越过内存末尾的问题（Peter Eisentraut）</p>", "text": "修复规则打印中可能读取越过内存末尾的问题（Peter Eisentraut）", "title": "修复规则打印中可能读取越过内存末尾的问题", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "b7e02dbd5dcef5e0a25f1d8c9c6836cfec403ca5c343aa0aedf299f85ce04093", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix possible read past end of memory in rule printing (Peter Eisentraut)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/025", "db_id": "52a1895a8d0fca9d245787982a39c754", "patch_ids": [], "statement_hash": "5e488ca5a20725bf6dbab20d569a58aa64ec0fa9a96803f768b8335050d79762", "relations": [{"rule": 2, "type": "equivalent", "target": "5f850f0c90891244795995e7648334db", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5e488ca5a20725bf6dbab20d569a58aa64ec0fa9a96803f768b8335050d79762"}}, {"rule": 2, "type": "equivalent", "target": "ced8771b6066f828b8d7a8a2dfbfed08", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5e488ca5a20725bf6dbab20d569a58aa64ec0fa9a96803f768b8335050d79762"}}, {"rule": 2, "type": "equivalent", "target": "faa18fe51c0b4eebc64a07aeca34c7e2", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5e488ca5a20725bf6dbab20d569a58aa64ec0fa9a96803f768b8335050d79762"}}], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "faa18fe51c0b4eebc64a07aeca34c7e2", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "修复规则打印中可能读取越过内存末尾的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5e488ca5a20725bf6dbab20d569a58aa64ec0fa9a96803f768b8335050d79762"}, "url": "/docs/compare/?release=9.2.6#9.2.6-33766060b5f495ac", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}, {"db_id": "5f850f0c90891244795995e7648334db", "kind": "equivalent", "version": "9.1.11", "label": "9.1.11", "title": "修复规则打印中可能读取越过内存末尾的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5e488ca5a20725bf6dbab20d569a58aa64ec0fa9a96803f768b8335050d79762"}, "url": "/docs/compare/?release=9.1.11#9.1.11-33766060b5f495ac", "source_url": "/docs/release/9.1.11/#id-1.11.6.18.5"}, {"db_id": "ced8771b6066f828b8d7a8a2dfbfed08", "kind": "equivalent", "version": "9.0.15", "label": "9.0.15", "title": "修复规则打印中可能读取越过内存末尾的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5e488ca5a20725bf6dbab20d569a58aa64ec0fa9a96803f768b8335050d79762"}, "url": "/docs/compare/?release=9.0.15#9.0.15-33766060b5f495ac", "source_url": "/docs/release/9.0.15/#id-1.11.6.13.5"}]}, {"id": "9.3.2-f956ca6666def5ba", "cves": [], "html": "<p>修复 <code>int2vector</code> 和 <code>oidvector</code> 值的数组切片（Tom Lane）</p>\n<p>这类表达式现在会被隐式提升为常规的 <code>int2</code> 或 <code>oid</code> 数组。</p>", "text": "修复 int2vector 和 oidvector 值的数组切片（Tom Lane） 这类表达式现在会被隐式提升为常规的 int2 或 oid 数组。", "title": "修复 int2vector 和 oidvector 值的数组切片", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "61fb352f48de36bbce9e4cb28c4b4585b2bae1aa1de7eaeb58693792f2e64d20", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix array slicing of int2vector and oidvector values (Tom Lane) Expressions of this kind are now implicitly promoted to regular int2 or oid arrays.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/026", "db_id": "13f4e2e1a5cc3f7f7d5cd9798bd393be", "patch_ids": [], "statement_hash": "77021f1107eec1c16ba347fb52395459b31a1b7c467927781e0dcbdef259a31e", "relations": [{"rule": 2, "type": "equivalent", "target": "54de529e59b6fc81b5ec0feceb0e20de", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "77021f1107eec1c16ba347fb52395459b31a1b7c467927781e0dcbdef259a31e"}}, {"rule": 2, "type": "equivalent", "target": "6a8247adb515ac81561744f033628349", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "77021f1107eec1c16ba347fb52395459b31a1b7c467927781e0dcbdef259a31e"}}, {"rule": 2, "type": "equivalent", "target": "9be7bb1fc5e28d74cd34bda19911fca0", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "77021f1107eec1c16ba347fb52395459b31a1b7c467927781e0dcbdef259a31e"}}], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "9be7bb1fc5e28d74cd34bda19911fca0", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "修复 int2vector 和 oidvector 值的数组切片", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "77021f1107eec1c16ba347fb52395459b31a1b7c467927781e0dcbdef259a31e"}, "url": "/docs/compare/?release=9.2.6#9.2.6-f956ca6666def5ba", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}, {"db_id": "6a8247adb515ac81561744f033628349", "kind": "equivalent", "version": "9.1.11", "label": "9.1.11", "title": "修复 int2vector 和 oidvector 值的数组切片", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "77021f1107eec1c16ba347fb52395459b31a1b7c467927781e0dcbdef259a31e"}, "url": "/docs/compare/?release=9.1.11#9.1.11-f956ca6666def5ba", "source_url": "/docs/release/9.1.11/#id-1.11.6.18.5"}, {"db_id": "54de529e59b6fc81b5ec0feceb0e20de", "kind": "equivalent", "version": "9.0.15", "label": "9.0.15", "title": "修复 int2vector 和 oidvector 值的数组切片", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "77021f1107eec1c16ba347fb52395459b31a1b7c467927781e0dcbdef259a31e"}, "url": "/docs/compare/?release=9.0.15#9.0.15-f956ca6666def5ba", "source_url": "/docs/release/9.0.15/#id-1.11.6.13.5"}]}, {"id": "9.3.2-e59b45268ce11fd8", "cves": [], "html": "<p>修复把空 <code>hstore</code> 值转换为 <code>json</code> 时返回有效 JSON 值的问题（Oskari Saarenmaa）</p>", "text": "修复把空 hstore 值转换为 json 时返回有效 JSON 值的问题（Oskari Saarenmaa）", "title": "修复把空 hstore 值转换为 json 时返回有效 JSON 值的问题", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "d4413fbe298a411a7f2f67d18ac94a7314a4a854bd9a59badca193224b7115a9", "section_path": ["变更"], "commit_groups": [], "identity_text": "Return a valid JSON value when converting an empty hstore value to json (Oskari Saarenmaa)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/027", "db_id": "3c62ddd324805a37d1c93045864c41f4", "patch_ids": [], "statement_hash": "382a38aec81ad0c3724666e1b8c682fbba9584a799f8860967974834f908caea", "relations": [], "version": "9.3.2", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.3.2-2601ea65701174a1", "cves": [], "html": "<p>修复使用 SQL 标准的简单 GMT 偏移时区时的错误行为（Tom Lane）</p>\n<p>某些情况下，系统会使用简单 GMT 偏移值，而本应使用选择简单偏移之前一直生效的常规时区设置。此变更还使 <code>timeofday</code> 函数遵循简单 GMT 偏移时区。</p>", "text": "修复使用 SQL 标准的简单 GMT 偏移时区时的错误行为（Tom Lane） 某些情况下，系统会使用简单 GMT 偏移值，而本应使用选择简单偏移之前一直生效的常规时区设置。此变更还使 timeofday 函数遵循简单 GMT 偏移时区。", "title": "修复使用 SQL 标准的简单 GMT 偏移时区时的错误行为", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "3aa45ba4b24ef1b9df6cf1053d4bcc469a8b69b6f55ad427a622dde194e27673", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix incorrect behaviors when using a SQL-standard, simple GMT offset timezone (Tom Lane) In some cases, the system would use the simple GMT offset value when it should have used the regular timezone setting that had prevailed before the simple offset was selected. This change also causes the timeofday function to honor the simple GMT offset zone.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/028", "db_id": "f1d86dae08007c1335fbfc248ad1a360", "patch_ids": [], "statement_hash": "67dd61049240b5988b7f043b8d3441b90c3b1fb5a7b74cca1158b9396c686fd1", "relations": [{"rule": 2, "type": "equivalent", "target": "3d339135edb8ea26c5e04a90151ef218", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "67dd61049240b5988b7f043b8d3441b90c3b1fb5a7b74cca1158b9396c686fd1"}}, {"rule": 2, "type": "equivalent", "target": "44fdc680cd1d9122e644c1e0adf20d98", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "67dd61049240b5988b7f043b8d3441b90c3b1fb5a7b74cca1158b9396c686fd1"}}, {"rule": 2, "type": "equivalent", "target": "7ecc9260dc6a5f36975948d07c98263a", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "67dd61049240b5988b7f043b8d3441b90c3b1fb5a7b74cca1158b9396c686fd1"}}], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "3d339135edb8ea26c5e04a90151ef218", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "修复使用 SQL 标准的简单 GMT 偏移时区时的错误行为", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "67dd61049240b5988b7f043b8d3441b90c3b1fb5a7b74cca1158b9396c686fd1"}, "url": "/docs/compare/?release=9.2.6#9.2.6-2601ea65701174a1", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}, {"db_id": "7ecc9260dc6a5f36975948d07c98263a", "kind": "equivalent", "version": "9.1.11", "label": "9.1.11", "title": "修复使用 SQL 标准的简单 GMT 偏移时区时的错误行为", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "67dd61049240b5988b7f043b8d3441b90c3b1fb5a7b74cca1158b9396c686fd1"}, "url": "/docs/compare/?release=9.1.11#9.1.11-2601ea65701174a1", "source_url": "/docs/release/9.1.11/#id-1.11.6.18.5"}, {"db_id": "44fdc680cd1d9122e644c1e0adf20d98", "kind": "equivalent", "version": "9.0.15", "label": "9.0.15", "title": "修复使用 SQL 标准的简单 GMT 偏移时区时的错误行为", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "67dd61049240b5988b7f043b8d3441b90c3b1fb5a7b74cca1158b9396c686fd1"}, "url": "/docs/compare/?release=9.0.15#9.0.15-2601ea65701174a1", "source_url": "/docs/release/9.0.15/#id-1.11.6.13.5"}]}, {"id": "9.3.2-bdebcc31fe0dc7c0", "cves": [], "html": "<p>防止记录 Windows 错误码翻译时可能出现的不当行为（Tom Lane）</p>", "text": "防止记录 Windows 错误码翻译时可能出现的不当行为（Tom Lane）", "title": "防止记录 Windows 错误码翻译时可能出现的不当行为", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "b534a69735517531237cb1d9be94f15b96841831c95d9f3733b41e4921cbb667", "section_path": ["变更"], "commit_groups": [], "identity_text": "Prevent possible misbehavior when logging translations of Windows error codes (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/029", "db_id": "13b0387ae30ee6ae7463f9d748e7dcf1", "patch_ids": [], "statement_hash": "2f81cdd275a66bb7372ad55845ae169c02ed02ad108b59507118f7bf2cadec3b", "relations": [{"rule": 2, "type": "equivalent", "target": "11c80cc0b7a2fc53ad9812bcf14375c2", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2f81cdd275a66bb7372ad55845ae169c02ed02ad108b59507118f7bf2cadec3b"}}, {"rule": 2, "type": "equivalent", "target": "54820da474bebf8b921bae7f57eada98", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2f81cdd275a66bb7372ad55845ae169c02ed02ad108b59507118f7bf2cadec3b"}}, {"rule": 2, "type": "equivalent", "target": "aeede94f946c1ded6bedcaa1abc527b3", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2f81cdd275a66bb7372ad55845ae169c02ed02ad108b59507118f7bf2cadec3b"}}], "version": "9.3.2", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "aeede94f946c1ded6bedcaa1abc527b3", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "防止记录 Windows 错误码翻译时可能出现的不当行为", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2f81cdd275a66bb7372ad55845ae169c02ed02ad108b59507118f7bf2cadec3b"}, "url": "/docs/compare/?release=9.2.6#9.2.6-bdebcc31fe0dc7c0", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}, {"db_id": "54820da474bebf8b921bae7f57eada98", "kind": "equivalent", "version": "9.1.11", "label": "9.1.11", "title": "防止记录 Windows 错误码翻译时可能出现的不当行为", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2f81cdd275a66bb7372ad55845ae169c02ed02ad108b59507118f7bf2cadec3b"}, "url": "/docs/compare/?release=9.1.11#9.1.11-bdebcc31fe0dc7c0", "source_url": "/docs/release/9.1.11/#id-1.11.6.18.5"}, {"db_id": "11c80cc0b7a2fc53ad9812bcf14375c2", "kind": "equivalent", "version": "9.0.15", "label": "9.0.15", "title": "防止记录 Windows 错误码翻译时可能出现的不当行为", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2f81cdd275a66bb7372ad55845ae169c02ed02ad108b59507118f7bf2cadec3b"}, "url": "/docs/compare/?release=9.0.15#9.0.15-bdebcc31fe0dc7c0", "source_url": "/docs/release/9.0.15/#id-1.11.6.13.5"}]}, {"id": "9.3.2-e12c41883839f84f", "cves": [], "html": "<p>正确地为 <span>pg_ctl</span> 生成的命令行加引号（Naoya Anzai、Tom Lane）</p>\n<p>此修复仅适用于 Windows。</p>", "text": "正确地为 pg_ctl 生成的命令行加引号（Naoya Anzai、Tom Lane） 此修复仅适用于 Windows。", "title": "正确地为 pg_ctl 生成的命令行加引号", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "7c654722e991126168400db1cb093d0408c5692c6d3cdb6f49dcd2208b8b9736", "section_path": ["变更"], "commit_groups": [], "identity_text": "Properly quote generated command lines in pg_ctl (Naoya Anzai and Tom Lane) This fix applies only to Windows.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/030", "db_id": "bbe0bde4d80cb9deabba661cfb328a9b", "patch_ids": [], "statement_hash": "9e1fc4c55afd877c990135b900334b6624f58a4c56a45b03050a34c9fd4e355f", "relations": [{"rule": 2, "type": "equivalent", "target": "06ef602928ccb464f7de8ec282bf722b", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9e1fc4c55afd877c990135b900334b6624f58a4c56a45b03050a34c9fd4e355f"}}, {"rule": 2, "type": "equivalent", "target": "8b28d4028101ea2d3477d14a5442e5f3", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9e1fc4c55afd877c990135b900334b6624f58a4c56a45b03050a34c9fd4e355f"}}, {"rule": 2, "type": "equivalent", "target": "b1f08684e6cfbb31c79a0dccb63be1f8", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9e1fc4c55afd877c990135b900334b6624f58a4c56a45b03050a34c9fd4e355f"}}], "version": "9.3.2", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "b1f08684e6cfbb31c79a0dccb63be1f8", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "正确地为 pg_ctl 生成的命令行加引号", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9e1fc4c55afd877c990135b900334b6624f58a4c56a45b03050a34c9fd4e355f"}, "url": "/docs/compare/?release=9.2.6#9.2.6-e12c41883839f84f", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}, {"db_id": "06ef602928ccb464f7de8ec282bf722b", "kind": "equivalent", "version": "9.1.11", "label": "9.1.11", "title": "正确地为 pg_ctl 生成的命令行加引号", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9e1fc4c55afd877c990135b900334b6624f58a4c56a45b03050a34c9fd4e355f"}, "url": "/docs/compare/?release=9.1.11#9.1.11-e12c41883839f84f", "source_url": "/docs/release/9.1.11/#id-1.11.6.18.5"}, {"db_id": "8b28d4028101ea2d3477d14a5442e5f3", "kind": "equivalent", "version": "9.0.15", "label": "9.0.15", "title": "正确地为 pg_ctl 生成的命令行加引号", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9e1fc4c55afd877c990135b900334b6624f58a4c56a45b03050a34c9fd4e355f"}, "url": "/docs/compare/?release=9.0.15#9.0.15-e12c41883839f84f", "source_url": "/docs/release/9.0.15/#id-1.11.6.13.5"}]}, {"id": "9.3.2-7dc92563d1e4f087", "cves": [], "html": "<p>修复当源数据库通过 <code>ALTER DATABASE SET</code> 设置 <a href=\"/docs/9.3/runtime-config-client.html#GUC-DEFAULT-TRANSACTION-READ-ONLY\"><code>default_transaction_read_only</code></a> 时 <span>pg_dumpall</span> 无法工作的问题（Kevin Grittner）</p>\n<p>此前，生成的脚本在恢复期间会失败。</p>", "text": "修复当源数据库通过 ALTER DATABASE SET 设置 default_transaction_read_only 时 pg_dumpall 无法工作的问题（Kevin Grittner） 此前，生成的脚本在恢复期间会失败。", "title": "修复当源数据库通过 ALTER DATABASE SET 设置 default_transaction_read_only 时 pg_dumpall 无法工作的问题", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "ddc1f4d975a82f4f14f87600c1439f1a838c022e32eb2c8312fa545b25203fe5", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix pg_dumpall to work when a source database sets default_transaction_read_only via ALTER DATABASE SET (Kevin Grittner) Previously, the generated script would fail during restore.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/031", "db_id": "6185cd94f5d883265aac461185ec82d6", "patch_ids": [], "statement_hash": "f566ed1155756fc0be4b5b06a7f2b4ae5f91129a5576307b194edab556032b8c", "relations": [{"rule": 2, "type": "equivalent", "target": "48525738e3d068e0af15f93585c27c23", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f566ed1155756fc0be4b5b06a7f2b4ae5f91129a5576307b194edab556032b8c"}}, {"rule": 2, "type": "equivalent", "target": "9f630319d7135ae6876108b30d324497", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f566ed1155756fc0be4b5b06a7f2b4ae5f91129a5576307b194edab556032b8c"}}, {"rule": 2, "type": "equivalent", "target": "af9bf6db44c025c5eb9a27b06c7074d4", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f566ed1155756fc0be4b5b06a7f2b4ae5f91129a5576307b194edab556032b8c"}}], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "af9bf6db44c025c5eb9a27b06c7074d4", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "修复当源数据库通过 ALTER DATABASE SET 设置 default_transaction_read_only 时 pg_dumpall 无法工作的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f566ed1155756fc0be4b5b06a7f2b4ae5f91129a5576307b194edab556032b8c"}, "url": "/docs/compare/?release=9.2.6#9.2.6-7dc92563d1e4f087", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}, {"db_id": "9f630319d7135ae6876108b30d324497", "kind": "equivalent", "version": "9.1.11", "label": "9.1.11", "title": "修复当源数据库通过 ALTER DATABASE SET 设置 default_transaction_read_only 时 pg_dumpall 无法工作的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f566ed1155756fc0be4b5b06a7f2b4ae5f91129a5576307b194edab556032b8c"}, "url": "/docs/compare/?release=9.1.11#9.1.11-7dc92563d1e4f087", "source_url": "/docs/release/9.1.11/#id-1.11.6.18.5"}, {"db_id": "48525738e3d068e0af15f93585c27c23", "kind": "equivalent", "version": "9.0.15", "label": "9.0.15", "title": "修复当源数据库通过 ALTER DATABASE SET 设置 default_transaction_read_only 时 pg_dumpall 无法工作的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f566ed1155756fc0be4b5b06a7f2b4ae5f91129a5576307b194edab556032b8c"}, "url": "/docs/compare/?release=9.0.15#9.0.15-7dc92563d1e4f087", "source_url": "/docs/release/9.0.15/#id-1.11.6.13.5"}]}, {"id": "9.3.2-fd2d07ba9b5b16f9", "cves": [], "html": "<p>修复 <span>pg_isready</span> 对其 <code>-d</code> 选项的处理（Fabrízio de Royes Mello、Fujii Masao）</p>", "text": "修复 pg_isready 对其 -d 选项的处理（Fabrízio de Royes Mello、Fujii Masao）", "title": "修复 pg_isready 对其 -d 选项的处理", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "fd64c58ce171947d9e1dfb440780373349f8848f1346d7fecf0c8c89dcc9f255", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix pg_isready to handle its -d option properly (Fabrízio de Royes Mello and Fujii Masao)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/032", "db_id": "c418e806b87a2ad6c90a4f9ae8cf7e02", "patch_ids": [], "statement_hash": "248aac8e2dd51b41a1cf5f821b20fd505bd7386d293f1cd94f9b52ad7490ac07", "relations": [], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.3.2-8489ea4021807f56", "cves": [], "html": "<p>修复 <span>pg_receivexlog</span> 中 WAL 文件名的解析（Heikki Linnakangas）</p>\n<p>这一错误导致一旦写入了至少 4 GB 的 WAL，<span>pg_receivexlog</span> 在停止后就无法重新开始流式传输。</p>", "text": "修复 pg_receivexlog 中 WAL 文件名的解析（Heikki Linnakangas） 这一错误导致一旦写入了至少 4 GB 的 WAL，pg_receivexlog 在停止后就无法重新开始流式传输。", "title": "修复 pg_receivexlog 中 WAL 文件名的解析", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "ae1ea9d2488ed82637c3a97846160fac9768e1b05bd209f0b84cc4ef1b727c4b", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix parsing of WAL file names in pg_receivexlog (Heikki Linnakangas) This error made pg_receivexlog unable to restart streaming after stopping, once at least 4 GB of WAL had been written.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/033", "db_id": "6b9ec59135660279eab21c7fe7c09afb", "patch_ids": [], "statement_hash": "9e0bb146aaea34eda665f9f9d5c72c0f57e703268ba201bbf7f66701fb14cf9a", "relations": [], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.3.2-6353f7dc27472b60", "cves": [], "html": "<p>让 <span>pg_upgrade</span> 正确报告磁盘空间不足失败（Peter Eisentraut）</p>", "text": "让 pg_upgrade 正确报告磁盘空间不足失败（Peter Eisentraut）", "title": "让 pg_upgrade 正确报告磁盘空间不足失败", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "72ca179a6f1014162fc17cf666edc4ea62da421920173a30573f5a7c4a25c2d9", "section_path": ["变更"], "commit_groups": [], "identity_text": "Report out-of-disk-space failures properly in pg_upgrade (Peter Eisentraut)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/034", "db_id": "906b285f5b497e10e96883d9a815c216", "patch_ids": [], "statement_hash": "f100979f35c639a11e2a156288b583d81ae09b6f454631fa26c7449a0a1f277b", "relations": [], "version": "9.3.2", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.3.2-c42e3aa7be61a159", "cves": [], "html": "<p>让 <span>ecpg</span> 以大小写敏感方式搜索带引号的游标名（Zoltán Böszörményi）</p>", "text": "让 ecpg 以大小写敏感方式搜索带引号的游标名（Zoltán Böszörményi）", "title": "让 ecpg 以大小写敏感方式搜索带引号的游标名", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "6df5cbd43360788b6b5779a71cab630f9d5042c45ce1635dd94e00855f77f7f4", "section_path": ["变更"], "commit_groups": [], "identity_text": "Make ecpg search for quoted cursor names case-sensitively (Zoltán Böszörményi)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/035", "db_id": "664f2a70f76b238ff7461dd363b63e85", "patch_ids": [], "statement_hash": "ebd5c332236992b1020dd35801d4cc84554af80d2fb34ab014f90b36cbf4e1c4", "relations": [{"rule": 2, "type": "equivalent", "target": "9c81d9ba335c94e5da5b3d4e1131fc37", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ebd5c332236992b1020dd35801d4cc84554af80d2fb34ab014f90b36cbf4e1c4"}}, {"rule": 2, "type": "equivalent", "target": "c56f1d7cc6c344b0e448dd10bfeaf87b", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ebd5c332236992b1020dd35801d4cc84554af80d2fb34ab014f90b36cbf4e1c4"}}], "version": "9.3.2", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "c56f1d7cc6c344b0e448dd10bfeaf87b", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "让 ecpg 以大小写敏感方式搜索带引号的游标名", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ebd5c332236992b1020dd35801d4cc84554af80d2fb34ab014f90b36cbf4e1c4"}, "url": "/docs/compare/?release=9.2.6#9.2.6-c42e3aa7be61a159", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}, {"db_id": "9c81d9ba335c94e5da5b3d4e1131fc37", "kind": "equivalent", "version": "9.1.11", "label": "9.1.11", "title": "让 ecpg 以大小写敏感方式搜索带引号的游标名", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ebd5c332236992b1020dd35801d4cc84554af80d2fb34ab014f90b36cbf4e1c4"}, "url": "/docs/compare/?release=9.1.11#9.1.11-c42e3aa7be61a159", "source_url": "/docs/release/9.1.11/#id-1.11.6.18.5"}]}, {"id": "9.3.2-169a7568a70cb421", "cves": [], "html": "<p>修复 <span>ecpg</span> 对声明为 <code>varchar</code> 的变量列表的处理（Zoltán Böszörményi）</p>", "text": "修复 ecpg 对声明为 varchar 的变量列表的处理（Zoltán Böszörményi）", "title": "修复 ecpg 对声明为 varchar 的变量列表的处理", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "121fa10fd9b56cf238b3c1cb1fc0cb82f1aa650be0e89cdf1984b3b484ce6e21", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix ecpg's processing of lists of variables declared varchar (Zoltán Böszörményi)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/036", "db_id": "6884256e8627c74d9b8423dfb2718376", "patch_ids": [], "statement_hash": "9f7d0c921686af985b2a7e97d9f422fe9d039b0e5ac979b9a2c70d647b0fe2b5", "relations": [{"rule": 2, "type": "equivalent", "target": "2ddb8bb0d99ab38a47d5d489357b1f83", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9f7d0c921686af985b2a7e97d9f422fe9d039b0e5ac979b9a2c70d647b0fe2b5"}}, {"rule": 2, "type": "equivalent", "target": "409d0da964e2a790d4e8a35adbf048e0", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9f7d0c921686af985b2a7e97d9f422fe9d039b0e5ac979b9a2c70d647b0fe2b5"}}, {"rule": 2, "type": "equivalent", "target": "48a2db9656972f75ddf74f63fdada832", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9f7d0c921686af985b2a7e97d9f422fe9d039b0e5ac979b9a2c70d647b0fe2b5"}}], "version": "9.3.2", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "48a2db9656972f75ddf74f63fdada832", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "修复 ecpg 对声明为 varchar 的变量列表的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9f7d0c921686af985b2a7e97d9f422fe9d039b0e5ac979b9a2c70d647b0fe2b5"}, "url": "/docs/compare/?release=9.2.6#9.2.6-169a7568a70cb421", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}, {"db_id": "2ddb8bb0d99ab38a47d5d489357b1f83", "kind": "equivalent", "version": "9.1.11", "label": "9.1.11", "title": "修复 ecpg 对声明为 varchar 的变量列表的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9f7d0c921686af985b2a7e97d9f422fe9d039b0e5ac979b9a2c70d647b0fe2b5"}, "url": "/docs/compare/?release=9.1.11#9.1.11-169a7568a70cb421", "source_url": "/docs/release/9.1.11/#id-1.11.6.18.5"}, {"db_id": "409d0da964e2a790d4e8a35adbf048e0", "kind": "equivalent", "version": "9.0.15", "label": "9.0.15", "title": "修复 ecpg 对声明为 varchar 的变量列表的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9f7d0c921686af985b2a7e97d9f422fe9d039b0e5ac979b9a2c70d647b0fe2b5"}, "url": "/docs/compare/?release=9.0.15#9.0.15-169a7568a70cb421", "source_url": "/docs/release/9.0.15/#id-1.11.6.13.5"}]}, {"id": "9.3.2-94e75e89effc8fe3", "cves": [], "html": "<p>让 <code>contrib/lo</code> 防御不正确的触发器定义（Marc Cousin）</p>", "text": "让 contrib/lo 防御不正确的触发器定义（Marc Cousin）", "title": "让 contrib/lo 防御不正确的触发器定义", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "19a94c48a0476749b046f6a5a768cc86414d1018c40dc4a59005fd4e42c723de", "section_path": ["变更"], "commit_groups": [], "identity_text": "Make contrib/lo defend against incorrect trigger definitions (Marc Cousin)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/037", "db_id": "6f70c73a712890b7ccaf0fd83dbdabaa", "patch_ids": [], "statement_hash": "0db6010f21580c107f19f45f9efc17bc08327c585441aa7875034bd49f0ebe3c", "relations": [{"rule": 2, "type": "equivalent", "target": "2f8e51d914589bae202909aaf246a538", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0db6010f21580c107f19f45f9efc17bc08327c585441aa7875034bd49f0ebe3c"}}, {"rule": 2, "type": "equivalent", "target": "496c8f49b5a01ad5bd55d5f53020526d", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0db6010f21580c107f19f45f9efc17bc08327c585441aa7875034bd49f0ebe3c"}}, {"rule": 2, "type": "equivalent", "target": "62aeb6faec8c5b77f9bb01b48e03c696", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0db6010f21580c107f19f45f9efc17bc08327c585441aa7875034bd49f0ebe3c"}}], "version": "9.3.2", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "2f8e51d914589bae202909aaf246a538", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "让 contrib/lo 防御不正确的触发器定义", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0db6010f21580c107f19f45f9efc17bc08327c585441aa7875034bd49f0ebe3c"}, "url": "/docs/compare/?release=9.2.6#9.2.6-94e75e89effc8fe3", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}, {"db_id": "496c8f49b5a01ad5bd55d5f53020526d", "kind": "equivalent", "version": "9.1.11", "label": "9.1.11", "title": "让 contrib/lo 防御不正确的触发器定义", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0db6010f21580c107f19f45f9efc17bc08327c585441aa7875034bd49f0ebe3c"}, "url": "/docs/compare/?release=9.1.11#9.1.11-94e75e89effc8fe3", "source_url": "/docs/release/9.1.11/#id-1.11.6.18.5"}, {"db_id": "62aeb6faec8c5b77f9bb01b48e03c696", "kind": "equivalent", "version": "9.0.15", "label": "9.0.15", "title": "让 contrib/lo 防御不正确的触发器定义", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0db6010f21580c107f19f45f9efc17bc08327c585441aa7875034bd49f0ebe3c"}, "url": "/docs/compare/?release=9.0.15#9.0.15-94e75e89effc8fe3", "source_url": "/docs/release/9.0.15/#id-1.11.6.13.5"}]}, {"id": "9.3.2-eaeafa79cd57e97b", "cves": [], "html": "<p>把时区数据文件更新为 <span>tzdata</span> 版本 2013h，以反映阿根廷、巴西、约旦、利比亚、列支敦士登、摩洛哥和巴勒斯坦的夏令时法规变更。另外，新增印度尼西亚的时区缩写 WIB、WIT、WITA。</p>", "text": "把时区数据文件更新为 tzdata 版本 2013h，以反映阿根廷、巴西、约旦、利比亚、列支敦士登、摩洛哥和巴勒斯坦的夏令时法规变更。另外，新增印度尼西亚的时区缩写 WIB、WIT、WITA。", "title": "把时区数据文件更新为 tzdata 版本 2013h，以反映阿根廷、巴西、约旦、利比亚、列支敦士登、摩洛哥和巴勒斯坦的夏令时法规变更。另外，新增印度尼西亚的时区缩写 WIB、WIT、WITA。", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.3.2/#id-1.11.6.28.5", "source_hash": "d3c55877b3d6f9247c68d1738d2e6e2c385bd03687a37412e5673a1173491117", "section_path": ["变更"], "commit_groups": [], "identity_text": "Update time zone data files to tzdata release 2013h for DST law changes in Argentina, Brazil, Jordan, Libya, Liechtenstein, Morocco, and Palestine. Also, new timezone abbreviations WIB, WIT, WITA for Indonesia.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.3.2/changes/038", "db_id": "873dbd191790e30b273777ef978761ed", "patch_ids": [], "statement_hash": "a19549acc73fc0d26f6eb4c09c6a93500ce32e170f9c7570ae6ca1ca0bcafc8f", "relations": [{"rule": 2, "type": "equivalent", "target": "424125e8e6a645f6b06c795a699f69d0", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a19549acc73fc0d26f6eb4c09c6a93500ce32e170f9c7570ae6ca1ca0bcafc8f"}}, {"rule": 2, "type": "equivalent", "target": "7be18ae3b11bb3941b2b0b756054a0c8", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a19549acc73fc0d26f6eb4c09c6a93500ce32e170f9c7570ae6ca1ca0bcafc8f"}}, {"rule": 2, "type": "equivalent", "target": "7c44c32d94b8860307e11c5103c052c9", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a19549acc73fc0d26f6eb4c09c6a93500ce32e170f9c7570ae6ca1ca0bcafc8f"}}], "version": "9.3.2", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "424125e8e6a645f6b06c795a699f69d0", "kind": "equivalent", "version": "9.2.6", "label": "9.2.6", "title": "把时区数据文件更新为 tzdata 版本 2013h for DST law changes in Argentina, Brazil, Jordan, Libya, Liechtenstein, Morocco, and Palestine。Also, new timezone abbreviations WIB, WIT, WITA for Indonesia.", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a19549acc73fc0d26f6eb4c09c6a93500ce32e170f9c7570ae6ca1ca0bcafc8f"}, "url": "/docs/compare/?release=9.2.6#9.2.6-c44e740c2c08d47e", "source_url": "/docs/release/9.2.6/#id-1.11.6.23.5"}, {"db_id": "7be18ae3b11bb3941b2b0b756054a0c8", "kind": "equivalent", "version": "9.1.11", "label": "9.1.11", "title": "把时区数据文件更新为 tzdata 版本 2013h for DST law changes in Argentina, Brazil, Jordan, Libya, Liechtenstein, Morocco, and Palestine。Also, new timezone abbreviations WIB, WIT, WITA for Indonesia.", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a19549acc73fc0d26f6eb4c09c6a93500ce32e170f9c7570ae6ca1ca0bcafc8f"}, "url": "/docs/compare/?release=9.1.11#9.1.11-c44e740c2c08d47e", "source_url": "/docs/release/9.1.11/#id-1.11.6.18.5"}, {"db_id": "7c44c32d94b8860307e11c5103c052c9", "kind": "equivalent", "version": "9.0.15", "label": "9.0.15", "title": "把时区数据文件更新为 tzdata 版本 2013h for DST law changes in Argentina, Brazil, Jordan, Libya, Liechtenstein, Morocco, and Palestine。Also, new timezone abbreviations WIB, WIT, WITA for Indonesia.", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a19549acc73fc0d26f6eb4c09c6a93500ce32e170f9c7570ae6ca1ca0bcafc8f"}, "url": "/docs/compare/?release=9.0.15#9.0.15-c44e740c2c08d47e", "source_url": "/docs/release/9.0.15/#id-1.11.6.13.5"}]}]}], "stats": [{"key": "all", "label": "全部变更", "count": 38}, {"key": "feature", "label": "新功能", "count": 0}, {"key": "bugfix", "label": "BUG 修复", "count": 24}, {"key": "security", "label": "安全相关", "count": 0}, {"key": "performance", "label": "性能改进", "count": 0}, {"key": "compatibility", "label": "兼容性变化", "count": 0}, {"key": "improvement", "label": "其他改进", "count": 14}], "total": 38, "release_count": 1, "cross_major": false, "cve_count": 0, "cves": [], "cve_available": true, "remaining_cves": [], "security_regressions": [], "warnings": [], "candidate_count": 38, "already_in_source_count": 0, "duplicate_count": 0, "excluded_count": 0, "exclusions": [], "source_as_of": "2026-09-26", "security_as_of": "2026-09-26"}