{"format": 1, "mode": "release", "from_release": null, "to_release": {"date": "2021-02-11", "build": "9.5.25", "major": "9.5", "minor": 25, "manual": "9.5", "status": "stable", "doc_git": "", "version": "9.5.25", "eol_date": "2021-02-11", "date_text": "2021-02-11", "supported": false, "manual_url": "/docs/9.5/release-9-5-25.html", "source_url": "/docs/release/9.5.25/", "entry_count": 32, "placeholder": false, "content_hash": "c04dae05ce6c774f0727739fd8e8282ecd955bbaa74b27c812fc6995200d5111", "manual_build": "9.5.25", "source_as_of": "", "changes_count": 32, "doc_loaded_at": "2026-09-26T02:56:44.718140", "migration_html": "<p>    对于运行 9.5.X 的用户，不需要转储/恢复。\n   </p><p>    不过，请看下面的第一条变更日志条目，它描述了升级之后可能宜对索引执行\n    REINDEX 的几种情况。\n  </p><p>    另外，如果你是从 9.5.20 之前的版本升级，参见<a href=\"/docs/9.5/release-9-5-20.html\" title=\"E.6. 版本 9.5.20\">第 E.6 节</a>。\n  </p>", "compatibility_count": 0, "label": "9.5.25", "status_label": "历史版本", "eol": "2021-02-11", "age_days": 2057, "support_days": -2057}, "groups": [{"date": "2021-02-11", "build": "9.5.25", "major": "9.5", "minor": 25, "manual": "9.5", "status": "stable", "doc_git": "", "version": "9.5.25", "eol_date": "2021-02-11", "date_text": "2021-02-11", "supported": false, "manual_url": "/docs/9.5/release-9-5-25.html", "source_url": "/docs/release/9.5.25/", "entry_count": 32, "placeholder": false, "content_hash": "c04dae05ce6c774f0727739fd8e8282ecd955bbaa74b27c812fc6995200d5111", "manual_build": "9.5.25", "source_as_of": "", "changes_count": 32, "doc_loaded_at": "2026-09-26T02:56:44.718140", "migration_html": "<p>    对于运行 9.5.X 的用户，不需要转储/恢复。\n   </p><p>    不过，请看下面的第一条变更日志条目，它描述了升级之后可能宜对索引执行\n    REINDEX 的几种情况。\n  </p><p>    另外，如果你是从 9.5.20 之前的版本升级，参见<a href=\"/docs/9.5/release-9-5-20.html\" title=\"E.6. 版本 9.5.20\">第 E.6 节</a>。\n  </p>", "compatibility_count": 0, "label": "9.5.25", "status_label": "历史版本", "eol": "2021-02-11", "age_days": 2057, "support_days": -2057, "entries": [{"id": "9.5.25-81c964275820e048", "cves": [], "html": "<p>      修复 <code>CREATE INDEX CONCURRENTLY</code>，使其等待并发的预备事务（Andrey Borodin）\n     </p><p>      在 <code>CREATE INDEX CONCURRENTLY</code> 等待所有并发事务完成以便能看到它们插入的行的那个时刻，出于同样的原因，它也必须等待所有预备事务完成。此前没有这样做，意味着预备事务插入的行可能被遗漏在新索引之外，导致依赖该索引的查询漏掉这些行。在启用了预备事务的安装（<code>max_prepared_transactions</code> &gt; 0）中，如果并发构建索引时可能发生过此问题，建议对这些索引执行 REINDEX。\n     </p>", "text": "修复 CREATE INDEX CONCURRENTLY，使其等待并发的预备事务（Andrey Borodin） 在 CREATE INDEX CONCURRENTLY 等待所有并发事务完成以便能看到它们插入的行的那个时刻，出于同样的原因，它也必须等待所有预备事务完成。此前没有这样做，意味着预备事务插入的行可能被遗漏在新索引之外，导致依赖该索引的查询漏掉这些行。在启用了预备事务的安装（max_prepared_transactions > 0）中，如果并发构建索引时可能发生过此问题，建议对这些索引执行 REINDEX。", "title": "修复 CREATE INDEX CONCURRENTLY，使其等待并发的预备事务", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "0faf2bbac81ece94ec7b6de91d93a3bc1b01235eacbcc3167f0a15aa4db1f037", "section_path": ["变更"], "commit_groups": [["179775135", "77a0e14f0", "86a5b309c", "8a54e12a3", "be843ce29", "d1ab4bf6e", "d683d6528"]], "identity_text": "Fix CREATE INDEX CONCURRENTLY to wait for concurrent prepared transactions (Andrey Borodin) At the point where CREATE INDEX CONCURRENTLY waits for all concurrent transactions to complete so that it can see rows they inserted, it must also wait for all prepared transactions to complete, for the same reason. Its failure to do so meant that rows inserted by prepared transactions might be omitted from the new index, causing queries relying on the index to miss such rows. In installations that have enabled prepared transactions (max_prepared_transactions > 0), it's recommended to reindex any concurrently-built indexes in case this problem occurred when they were built.", "commit_aliases": ["179775135", "77a0e14f0", "86a5b309c", "8a54e12a3", "be843ce29", "d1ab4bf6e", "d683d6528"], "source_commits": ["77a0e14f0"], "source_entry_id": "9.5.25/changes/001", "db_id": "0f5ca552229f4cf0b365389e270b9d9b", "patch_ids": ["97b1d3e873fa67283982d5e8259af9c7"], "statement_hash": "2ac677409e14ebb68239db9c8ed7a0f26edefa130e42c52e25a29e018f03d965", "relations": [{"rule": 2, "type": "equivalent", "target": "07d3d3811277eb54d17d13eaa7e634c6", "evidence": {"same_day": true, "patch_ids": ["97b1d3e873fa67283982d5e8259af9c7"], "statement_hash": "2ac677409e14ebb68239db9c8ed7a0f26edefa130e42c52e25a29e018f03d965"}}, {"rule": 2, "type": "equivalent", "target": "0e2152ee469b5ec3ecab1df56db3fb68", "evidence": {"same_day": true, "patch_ids": ["97b1d3e873fa67283982d5e8259af9c7"], "statement_hash": "2ac677409e14ebb68239db9c8ed7a0f26edefa130e42c52e25a29e018f03d965"}}, {"rule": 2, "type": "equivalent", "target": "323d4ca7c2f120f59863b8d4527719a7", "evidence": {"same_day": true, "patch_ids": ["97b1d3e873fa67283982d5e8259af9c7"], "statement_hash": "2ac677409e14ebb68239db9c8ed7a0f26edefa130e42c52e25a29e018f03d965"}}, {"rule": 2, "type": "equivalent", "target": "494a295340e76f95a26a570b2ff33795", "evidence": {"same_day": true, "patch_ids": ["97b1d3e873fa67283982d5e8259af9c7"], "statement_hash": "2ac677409e14ebb68239db9c8ed7a0f26edefa130e42c52e25a29e018f03d965"}}, {"rule": 2, "type": "equivalent", "target": "8dc698bfe18b10f76b21f4930769f7e0", "evidence": {"same_day": true, "patch_ids": ["97b1d3e873fa67283982d5e8259af9c7"], "statement_hash": "2ac677409e14ebb68239db9c8ed7a0f26edefa130e42c52e25a29e018f03d965"}}], "version": "9.5.25", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "323d4ca7c2f120f59863b8d4527719a7", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "修复 CREATE INDEX CONCURRENTLY，使其等待并发的预备事务", "evidence": {"same_day": true, "patch_ids": ["97b1d3e873fa67283982d5e8259af9c7"], "statement_hash": "2ac677409e14ebb68239db9c8ed7a0f26edefa130e42c52e25a29e018f03d965"}, "url": "/docs/compare/?release=13.2#13.2-4a1b9e91efb7fc9f", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "8dc698bfe18b10f76b21f4930769f7e0", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "修复 CREATE INDEX CONCURRENTLY，使其等待并发的预备事务", "evidence": {"same_day": true, "patch_ids": ["97b1d3e873fa67283982d5e8259af9c7"], "statement_hash": "2ac677409e14ebb68239db9c8ed7a0f26edefa130e42c52e25a29e018f03d965"}, "url": "/docs/compare/?release=12.6#12.6-c5b6979fbe37c39d", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "07d3d3811277eb54d17d13eaa7e634c6", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "修复 CREATE INDEX CONCURRENTLY，使其等待并发的预备事务", "evidence": {"same_day": true, "patch_ids": ["97b1d3e873fa67283982d5e8259af9c7"], "statement_hash": "2ac677409e14ebb68239db9c8ed7a0f26edefa130e42c52e25a29e018f03d965"}, "url": "/docs/compare/?release=11.11#11.11-81c964275820e048", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "0e2152ee469b5ec3ecab1df56db3fb68", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "修复 CREATE INDEX CONCURRENTLY，使其等待并发的预备事务", "evidence": {"same_day": true, "patch_ids": ["97b1d3e873fa67283982d5e8259af9c7"], "statement_hash": "2ac677409e14ebb68239db9c8ed7a0f26edefa130e42c52e25a29e018f03d965"}, "url": "/docs/compare/?release=10.16#10.16-81c964275820e048", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "494a295340e76f95a26a570b2ff33795", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "修复 CREATE INDEX CONCURRENTLY，使其等待并发的预备事务", "evidence": {"same_day": true, "patch_ids": ["97b1d3e873fa67283982d5e8259af9c7"], "statement_hash": "2ac677409e14ebb68239db9c8ed7a0f26edefa130e42c52e25a29e018f03d965"}, "url": "/docs/compare/?release=9.6.21#9.6.21-81c964275820e048", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-b286a87dbff41cdd", "cves": [], "html": "<p>      避免对计划包含 MergeAppend 节点的游标应用 <code>WHERE CURRENT\n      OF</code> 时出现错误结果（Tom Lane）\n     </p><p>      这种情况不受支持（一般而言，使用 <code>ORDER BY</code> 的游标不保证是简单可更新的）；但代码此前没有拒绝它，并且可能静默地给出假匹配。\n     </p>", "text": "避免对计划包含 MergeAppend 节点的游标应用 WHERE CURRENT OF 时出现错误结果（Tom Lane） 这种情况不受支持（一般而言，使用 ORDER BY 的游标不保证是简单可更新的）；但代码此前没有拒绝它，并且可能静默地给出假匹配。", "title": "避免对计划包含 MergeAppend 节点的游标应用 WHERE CURRENT OF 时出现错误结果", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "6be39a7033a754a018a055e07a3891d854a28ff9a223d7b6f5df5f5705916083", "section_path": ["变更"], "commit_groups": [["0ab177bec", "188cd4f44", "625315996", "794562d07", "a0efda88a", "fac54bd5e", "fe8edbb82"]], "identity_text": "Avoid incorrect results when WHERE CURRENT OF is applied to a cursor whose plan contains a MergeAppend node (Tom Lane) This case is unsupported (in general, a cursor using ORDER BY is not guaranteed to be simply updatable); but the code previously did not reject it, and could silently give false matches.", "commit_aliases": ["0ab177bec", "188cd4f44", "625315996", "794562d07", "a0efda88a", "fac54bd5e", "fe8edbb82"], "source_commits": ["0ab177bec"], "source_entry_id": "9.5.25/changes/002", "db_id": "e280f6264d6446f12b5fc663be20c138", "patch_ids": ["38b1c111b5f9ebc4acf9ca1df259369b"], "statement_hash": "2360c3ad0202ac6ae5635e1cc059f548862ac24c5ce1d7f8e3285a3149a96e5d", "relations": [{"rule": 2, "type": "equivalent", "target": "27d819cb6c154a99d33d813f2b4c69a7", "evidence": {"same_day": true, "patch_ids": ["38b1c111b5f9ebc4acf9ca1df259369b"], "statement_hash": "2360c3ad0202ac6ae5635e1cc059f548862ac24c5ce1d7f8e3285a3149a96e5d"}}, {"rule": 2, "type": "equivalent", "target": "80d2453523b17611e982d13c5cc9f7cb", "evidence": {"same_day": true, "patch_ids": ["38b1c111b5f9ebc4acf9ca1df259369b"], "statement_hash": "2360c3ad0202ac6ae5635e1cc059f548862ac24c5ce1d7f8e3285a3149a96e5d"}}, {"rule": 2, "type": "equivalent", "target": "a5f7bcd7a1cdefc425094fb36ed76c62", "evidence": {"same_day": true, "patch_ids": ["38b1c111b5f9ebc4acf9ca1df259369b"], "statement_hash": "2360c3ad0202ac6ae5635e1cc059f548862ac24c5ce1d7f8e3285a3149a96e5d"}}, {"rule": 2, "type": "equivalent", "target": "bc5409d53746f1d0c45c008d0bca2582", "evidence": {"same_day": true, "patch_ids": ["38b1c111b5f9ebc4acf9ca1df259369b"], "statement_hash": "2360c3ad0202ac6ae5635e1cc059f548862ac24c5ce1d7f8e3285a3149a96e5d"}}, {"rule": 2, "type": "equivalent", "target": "ee5c00578e2d4ad12fd8731e16c988e5", "evidence": {"same_day": true, "patch_ids": ["38b1c111b5f9ebc4acf9ca1df259369b"], "statement_hash": "2360c3ad0202ac6ae5635e1cc059f548862ac24c5ce1d7f8e3285a3149a96e5d"}}], "version": "9.5.25", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "bc5409d53746f1d0c45c008d0bca2582", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "避免将 WHERE CURRENT OF 应用于计划中包含 MergeAppend 节点的游标时产生错误结果", "evidence": {"same_day": true, "patch_ids": ["38b1c111b5f9ebc4acf9ca1df259369b"], "statement_hash": "2360c3ad0202ac6ae5635e1cc059f548862ac24c5ce1d7f8e3285a3149a96e5d"}, "url": "/docs/compare/?release=13.2#13.2-ed0ebabe1f9c3168", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "ee5c00578e2d4ad12fd8731e16c988e5", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "避免将 WHERE CURRENT OF 应用于计划中包含 MergeAppend 节点的游标时产生错误结果", "evidence": {"same_day": true, "patch_ids": ["38b1c111b5f9ebc4acf9ca1df259369b"], "statement_hash": "2360c3ad0202ac6ae5635e1cc059f548862ac24c5ce1d7f8e3285a3149a96e5d"}, "url": "/docs/compare/?release=12.6#12.6-f78308ca6776e765", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "a5f7bcd7a1cdefc425094fb36ed76c62", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "避免将 WHERE CURRENT OF 应用于计划中包含 MergeAppend 节点的游标时产生错误结果", "evidence": {"same_day": true, "patch_ids": ["38b1c111b5f9ebc4acf9ca1df259369b"], "statement_hash": "2360c3ad0202ac6ae5635e1cc059f548862ac24c5ce1d7f8e3285a3149a96e5d"}, "url": "/docs/compare/?release=11.11#11.11-a9312974ced005aa", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "27d819cb6c154a99d33d813f2b4c69a7", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "避免将 WHERE CURRENT OF 应用于计划中包含 MergeAppend 节点的游标时产生错误结果", "evidence": {"same_day": true, "patch_ids": ["38b1c111b5f9ebc4acf9ca1df259369b"], "statement_hash": "2360c3ad0202ac6ae5635e1cc059f548862ac24c5ce1d7f8e3285a3149a96e5d"}, "url": "/docs/compare/?release=10.16#10.16-a9312974ced005aa", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "80d2453523b17611e982d13c5cc9f7cb", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "避免对计划包含 MergeAppend 节点的游标应用 WHERE CURRENT OF 时出现错误结果", "evidence": {"same_day": true, "patch_ids": ["38b1c111b5f9ebc4acf9ca1df259369b"], "statement_hash": "2360c3ad0202ac6ae5635e1cc059f548862ac24c5ce1d7f8e3285a3149a96e5d"}, "url": "/docs/compare/?release=9.6.21#9.6.21-b286a87dbff41cdd", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-c1bc33c06f395eb7", "cves": [], "html": "<p>      修复对计划包含自定义扫描节点的游标应用 <code>WHERE CURRENT OF</code>\n      时的崩溃（David Geier）\n     </p>", "text": "修复对计划包含自定义扫描节点的游标应用 WHERE CURRENT OF 时的崩溃（David Geier）", "title": "修复对计划包含自定义扫描节点的游标应用 WHERE CURRENT OF 时的崩溃", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "2a2d97118e37a77bedefea3521543fdcb2b932985c27eff8b3a0ec79ce2783d2", "section_path": ["变更"], "commit_groups": [["33a46993f", "5cd94de77", "60661bbf2", "ba80489c6", "de622e677", "f0f53195b", "ffbf17463"]], "identity_text": "Fix crash when WHERE CURRENT OF is applied to a cursor whose plan contains a custom scan node (David Geier)", "commit_aliases": ["33a46993f", "5cd94de77", "60661bbf2", "ba80489c6", "de622e677", "f0f53195b", "ffbf17463"], "source_commits": ["33a46993f"], "source_entry_id": "9.5.25/changes/003", "db_id": "f9fab3a8ecb8966f5d82c5738764a72e", "patch_ids": ["e603172c9317ea579bcd7e2327a67eb1"], "statement_hash": "80ac1d84bbe849fbfd99e6b2ebb05b087cc9b198d1d7226f71d05dc0267bda45", "relations": [{"rule": 2, "type": "equivalent", "target": "1f4bca1e8e9ca8e06d6506c54320998a", "evidence": {"same_day": true, "patch_ids": ["e603172c9317ea579bcd7e2327a67eb1"], "statement_hash": "80ac1d84bbe849fbfd99e6b2ebb05b087cc9b198d1d7226f71d05dc0267bda45"}}, {"rule": 2, "type": "equivalent", "target": "5ca19e92fed1253a2a1a4170e7b5d2b4", "evidence": {"same_day": true, "patch_ids": ["e603172c9317ea579bcd7e2327a67eb1"], "statement_hash": "80ac1d84bbe849fbfd99e6b2ebb05b087cc9b198d1d7226f71d05dc0267bda45"}}, {"rule": 2, "type": "equivalent", "target": "68632768d31a602355d03c17b2e425d0", "evidence": {"same_day": true, "patch_ids": ["e603172c9317ea579bcd7e2327a67eb1"], "statement_hash": "80ac1d84bbe849fbfd99e6b2ebb05b087cc9b198d1d7226f71d05dc0267bda45"}}, {"rule": 2, "type": "equivalent", "target": "88eaa7fb83eff169caf25792dac1690b", "evidence": {"same_day": true, "patch_ids": ["e603172c9317ea579bcd7e2327a67eb1"], "statement_hash": "80ac1d84bbe849fbfd99e6b2ebb05b087cc9b198d1d7226f71d05dc0267bda45"}}, {"rule": 2, "type": "equivalent", "target": "de934059b476915fdb43a48fbb971a52", "evidence": {"same_day": true, "patch_ids": ["e603172c9317ea579bcd7e2327a67eb1"], "statement_hash": "80ac1d84bbe849fbfd99e6b2ebb05b087cc9b198d1d7226f71d05dc0267bda45"}}], "version": "9.5.25", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "5ca19e92fed1253a2a1a4170e7b5d2b4", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "修复将 WHERE CURRENT OF 应用于计划中包含自定义扫描节点的游标时的崩溃", "evidence": {"same_day": true, "patch_ids": ["e603172c9317ea579bcd7e2327a67eb1"], "statement_hash": "80ac1d84bbe849fbfd99e6b2ebb05b087cc9b198d1d7226f71d05dc0267bda45"}, "url": "/docs/compare/?release=13.2#13.2-1e078dc3a91ff272", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "88eaa7fb83eff169caf25792dac1690b", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "修复将 WHERE CURRENT OF 应用于计划中包含自定义扫描节点的游标时的崩溃", "evidence": {"same_day": true, "patch_ids": ["e603172c9317ea579bcd7e2327a67eb1"], "statement_hash": "80ac1d84bbe849fbfd99e6b2ebb05b087cc9b198d1d7226f71d05dc0267bda45"}, "url": "/docs/compare/?release=12.6#12.6-6e369b06b576090c", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "68632768d31a602355d03c17b2e425d0", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "修复将 WHERE CURRENT OF 应用于计划中包含自定义扫描节点的游标时的崩溃", "evidence": {"same_day": true, "patch_ids": ["e603172c9317ea579bcd7e2327a67eb1"], "statement_hash": "80ac1d84bbe849fbfd99e6b2ebb05b087cc9b198d1d7226f71d05dc0267bda45"}, "url": "/docs/compare/?release=11.11#11.11-3f9247f6d8415936", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "de934059b476915fdb43a48fbb971a52", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "修复将 WHERE CURRENT OF 应用于计划中包含自定义扫描节点的游标时的崩溃", "evidence": {"same_day": true, "patch_ids": ["e603172c9317ea579bcd7e2327a67eb1"], "statement_hash": "80ac1d84bbe849fbfd99e6b2ebb05b087cc9b198d1d7226f71d05dc0267bda45"}, "url": "/docs/compare/?release=10.16#10.16-3f9247f6d8415936", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "1f4bca1e8e9ca8e06d6506c54320998a", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "修复对计划包含自定义扫描节点的游标应用 WHERE CURRENT OF 时的崩溃", "evidence": {"same_day": true, "patch_ids": ["e603172c9317ea579bcd7e2327a67eb1"], "statement_hash": "80ac1d84bbe849fbfd99e6b2ebb05b087cc9b198d1d7226f71d05dc0267bda45"}, "url": "/docs/compare/?release=9.6.21#9.6.21-c1bc33c06f395eb7", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-960072b119c01e5d", "cves": [], "html": "<p>      修复规划器对在某个连接层级计算且仅在同一层级使用的占位符的处理（Tom Lane）\n     </p><p>      这一疏漏可能导致<span>“<span>failed to build any <em><code>N</code></em>-way\n      joins</span>”</span>规划器错误。\n     </p>", "text": "修复规划器对在某个连接层级计算且仅在同一层级使用的占位符的处理（Tom Lane） 这一疏漏可能导致“failed to build any N-way joins”规划器错误。", "title": "修复规划器对在某个连接层级计算且仅在同一层级使用的占位符的处理", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "af31e0476e4f3bb7dd5a11be62b466a27bafd58f5ab6d5b05476155e245e0729", "section_path": ["变更"], "commit_groups": [["4f728a1f5", "666a4de93", "785f4462d", "8c5da2d51", "ab4cbb4bc", "b1738ff6a", "caecab229"]], "identity_text": "Fix planner's handling of a placeholder that is computed at some join level and used only at that same level (Tom Lane) This oversight could lead to failed to build any N-way joins planner errors.", "commit_aliases": ["4f728a1f5", "666a4de93", "785f4462d", "8c5da2d51", "ab4cbb4bc", "b1738ff6a", "caecab229"], "source_commits": ["8c5da2d51"], "source_entry_id": "9.5.25/changes/004", "db_id": "fff234c32ceec3672aa25ef7361e9b80", "patch_ids": ["a2e2b2cba805a92ec1e77f5f6a296c5a"], "statement_hash": "2eb8a946403c9afcf850315ef4f572f4938134b2d0e465ba39e50bddf29f5a1a", "relations": [{"rule": 2, "type": "equivalent", "target": "48a7de712fb5de14ea19ebc80469927c", "evidence": {"same_day": true, "patch_ids": ["a2e2b2cba805a92ec1e77f5f6a296c5a"], "statement_hash": "2eb8a946403c9afcf850315ef4f572f4938134b2d0e465ba39e50bddf29f5a1a"}}, {"rule": 2, "type": "equivalent", "target": "77473fe2cfe10e0160889736972a06bd", "evidence": {"same_day": true, "patch_ids": ["a2e2b2cba805a92ec1e77f5f6a296c5a"], "statement_hash": "2eb8a946403c9afcf850315ef4f572f4938134b2d0e465ba39e50bddf29f5a1a"}}, {"rule": 2, "type": "equivalent", "target": "a206cad7f02e74fc8eb8d57be50fd1af", "evidence": {"same_day": true, "patch_ids": ["a2e2b2cba805a92ec1e77f5f6a296c5a"], "statement_hash": "2eb8a946403c9afcf850315ef4f572f4938134b2d0e465ba39e50bddf29f5a1a"}}, {"rule": 2, "type": "equivalent", "target": "c422b4ed815bf8c817f929e16ecd21b0", "evidence": {"same_day": true, "patch_ids": ["a2e2b2cba805a92ec1e77f5f6a296c5a"], "statement_hash": "2eb8a946403c9afcf850315ef4f572f4938134b2d0e465ba39e50bddf29f5a1a"}}, {"rule": 2, "type": "equivalent", "target": "eb7959f448c582f05eb9fcf11d288e8c", "evidence": {"same_day": true, "patch_ids": ["a2e2b2cba805a92ec1e77f5f6a296c5a"], "statement_hash": "2eb8a946403c9afcf850315ef4f572f4938134b2d0e465ba39e50bddf29f5a1a"}}], "version": "9.5.25", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "a206cad7f02e74fc8eb8d57be50fd1af", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "修复规划器对在某个连接层级计算、且仅在同一层级使用的占位符的处理", "evidence": {"same_day": true, "patch_ids": ["a2e2b2cba805a92ec1e77f5f6a296c5a"], "statement_hash": "2eb8a946403c9afcf850315ef4f572f4938134b2d0e465ba39e50bddf29f5a1a"}, "url": "/docs/compare/?release=13.2#13.2-8c5f37c59d39702d", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "eb7959f448c582f05eb9fcf11d288e8c", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "修复规划器对在某个连接层级计算、且仅在同一层级使用的占位符的处理", "evidence": {"same_day": true, "patch_ids": ["a2e2b2cba805a92ec1e77f5f6a296c5a"], "statement_hash": "2eb8a946403c9afcf850315ef4f572f4938134b2d0e465ba39e50bddf29f5a1a"}, "url": "/docs/compare/?release=12.6#12.6-def1840d7338062d", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "77473fe2cfe10e0160889736972a06bd", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "修复规划器对在某个连接层级计算、且仅在同一层级使用的占位符的处理", "evidence": {"same_day": true, "patch_ids": ["a2e2b2cba805a92ec1e77f5f6a296c5a"], "statement_hash": "2eb8a946403c9afcf850315ef4f572f4938134b2d0e465ba39e50bddf29f5a1a"}, "url": "/docs/compare/?release=11.11#11.11-99eb04b12c8604e1", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "48a7de712fb5de14ea19ebc80469927c", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "修复规划器对在某个连接层级计算、且仅在同一层级使用的占位符的处理", "evidence": {"same_day": true, "patch_ids": ["a2e2b2cba805a92ec1e77f5f6a296c5a"], "statement_hash": "2eb8a946403c9afcf850315ef4f572f4938134b2d0e465ba39e50bddf29f5a1a"}, "url": "/docs/compare/?release=10.16#10.16-99eb04b12c8604e1", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "c422b4ed815bf8c817f929e16ecd21b0", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "修复规划器对在某个连接层级计算且仅在同一层级使用的占位符的处理", "evidence": {"same_day": true, "patch_ids": ["a2e2b2cba805a92ec1e77f5f6a296c5a"], "statement_hash": "2eb8a946403c9afcf850315ef4f572f4938134b2d0e465ba39e50bddf29f5a1a"}, "url": "/docs/compare/?release=9.6.21#9.6.21-960072b119c01e5d", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-274f83cea6213b4d", "cves": [], "html": "<p>      更谨慎地判断索引访问方法是否支持 mark/restore（Andrew Gierth）\n     </p><p>      这防止了罕见边界情况下缺少支持函数的错误。\n     </p>", "text": "更谨慎地判断索引访问方法是否支持 mark/restore（Andrew Gierth） 这防止了罕见边界情况下缺少支持函数的错误。", "title": "更谨慎地判断索引访问方法是否支持 mark/restore", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "bd58c35e80cac0a6693696bc933d5a47b386940429ab1a20cdbb41f77b8bb797", "section_path": ["变更"], "commit_groups": [["018e7d98d", "321c87e5c", "59ed45e27", "6402afd98", "660b89928", "6dda05704", "ae5aa26dc"]], "identity_text": "Be more careful about whether index AMs support mark/restore (Andrew Gierth) This prevents errors about missing support functions in rare edge cases.", "commit_aliases": ["018e7d98d", "321c87e5c", "59ed45e27", "6402afd98", "660b89928", "6dda05704", "ae5aa26dc"], "source_commits": ["59ed45e27"], "source_entry_id": "9.5.25/changes/005", "db_id": "e30a1be42c0ba1ec75f41eaad102da5e", "patch_ids": ["749840e3c6ceb36efe87cb701e4462d4"], "statement_hash": "f53f3f70ebe52fca4dd085ea8ca596c6215cae44cf52ad6aa3c0ca701f01c185", "relations": [{"rule": 2, "type": "equivalent", "target": "57b6c2a714b843a87d0747aa8252c1f6", "evidence": {"same_day": true, "patch_ids": ["749840e3c6ceb36efe87cb701e4462d4"], "statement_hash": "f53f3f70ebe52fca4dd085ea8ca596c6215cae44cf52ad6aa3c0ca701f01c185"}}, {"rule": 2, "type": "equivalent", "target": "5ccd5b246b38d774e71b7453a3682bd7", "evidence": {"same_day": true, "patch_ids": ["749840e3c6ceb36efe87cb701e4462d4"], "statement_hash": "f53f3f70ebe52fca4dd085ea8ca596c6215cae44cf52ad6aa3c0ca701f01c185"}}, {"rule": 2, "type": "equivalent", "target": "ac4838555b4a14755d3dc36a71dcf02f", "evidence": {"same_day": true, "patch_ids": ["749840e3c6ceb36efe87cb701e4462d4"], "statement_hash": "f53f3f70ebe52fca4dd085ea8ca596c6215cae44cf52ad6aa3c0ca701f01c185"}}, {"rule": 2, "type": "equivalent", "target": "e72e53f518365fa9545ab0f09475a9af", "evidence": {"same_day": true, "patch_ids": ["749840e3c6ceb36efe87cb701e4462d4"], "statement_hash": "f53f3f70ebe52fca4dd085ea8ca596c6215cae44cf52ad6aa3c0ca701f01c185"}}, {"rule": 2, "type": "equivalent", "target": "e74a9337e2fcd7bc439207ba18a84bdb", "evidence": {"same_day": true, "patch_ids": ["749840e3c6ceb36efe87cb701e4462d4"], "statement_hash": "f53f3f70ebe52fca4dd085ea8ca596c6215cae44cf52ad6aa3c0ca701f01c185"}}], "version": "9.5.25", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "5ccd5b246b38d774e71b7453a3682bd7", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "更谨慎地判断索引访问方法是否支持标记/恢复", "evidence": {"same_day": true, "patch_ids": ["749840e3c6ceb36efe87cb701e4462d4"], "statement_hash": "f53f3f70ebe52fca4dd085ea8ca596c6215cae44cf52ad6aa3c0ca701f01c185"}, "url": "/docs/compare/?release=13.2#13.2-81bc777702fa6586", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "ac4838555b4a14755d3dc36a71dcf02f", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "更谨慎地判断索引访问方法是否支持标记/恢复", "evidence": {"same_day": true, "patch_ids": ["749840e3c6ceb36efe87cb701e4462d4"], "statement_hash": "f53f3f70ebe52fca4dd085ea8ca596c6215cae44cf52ad6aa3c0ca701f01c185"}, "url": "/docs/compare/?release=12.6#12.6-3ad714e7827b363a", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "57b6c2a714b843a87d0747aa8252c1f6", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "更谨慎地判断索引访问方法是否支持标记/恢复", "evidence": {"same_day": true, "patch_ids": ["749840e3c6ceb36efe87cb701e4462d4"], "statement_hash": "f53f3f70ebe52fca4dd085ea8ca596c6215cae44cf52ad6aa3c0ca701f01c185"}, "url": "/docs/compare/?release=11.11#11.11-bbf1e02f10d8af58", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "e74a9337e2fcd7bc439207ba18a84bdb", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "更谨慎地判断索引访问方法是否支持标记/恢复", "evidence": {"same_day": true, "patch_ids": ["749840e3c6ceb36efe87cb701e4462d4"], "statement_hash": "f53f3f70ebe52fca4dd085ea8ca596c6215cae44cf52ad6aa3c0ca701f01c185"}, "url": "/docs/compare/?release=10.16#10.16-bbf1e02f10d8af58", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "e72e53f518365fa9545ab0f09475a9af", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "更谨慎地判断索引访问方法是否支持 mark/restore", "evidence": {"same_day": true, "patch_ids": ["749840e3c6ceb36efe87cb701e4462d4"], "statement_hash": "f53f3f70ebe52fca4dd085ea8ca596c6215cae44cf52ad6aa3c0ca701f01c185"}, "url": "/docs/compare/?release=9.6.21#9.6.21-274f83cea6213b4d", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-20ea2774f094b7d5", "cves": [], "html": "<p>      修复 <code>ALTER DEFAULT PRIVILEGES</code> 安全处理重复参数的问题（Michael Paquier）\n     </p><p>      同一条命令中重复的角色或模式名可能导致<span>“<span>tuple already updated\n      by self</span>”</span>错误或唯一约束冲突。\n     </p>", "text": "修复 ALTER DEFAULT PRIVILEGES 安全处理重复参数的问题（Michael Paquier） 同一条命令中重复的角色或模式名可能导致“tuple already updated by self”错误或唯一约束冲突。", "title": "修复 ALTER DEFAULT PRIVILEGES 安全处理重复参数的问题", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "0efb26291cf108e8c2faefd8b35216c9e8c9e7d33c911dc4f7e4a81af8012d51", "section_path": ["变更"], "commit_groups": [["0ddb529cf", "1c3a4d44d", "21378e1fe", "31e0f9d76", "5ad672fc2", "74ee3abcf", "7dc3be9df"]], "identity_text": "Fix ALTER DEFAULT PRIVILEGES to handle duplicated arguments safely (Michael Paquier) Duplicate role or schema names within the same command could lead to tuple already updated by self errors or unique-constraint violations.", "commit_aliases": ["0ddb529cf", "1c3a4d44d", "21378e1fe", "31e0f9d76", "5ad672fc2", "74ee3abcf", "7dc3be9df"], "source_commits": ["0ddb529cf"], "source_entry_id": "9.5.25/changes/006", "db_id": "e9014b95101a24369f0504a5e24d5026", "patch_ids": ["a0c6a2e491da1fb8e4b1a21f34272605"], "statement_hash": "108f17490f863784eb6f9bdbade7fa76b54b75d89fcc6c1a882af5d59652cb24", "relations": [{"rule": 2, "type": "equivalent", "target": "033e71517443ed8592642e7692090256", "evidence": {"same_day": true, "patch_ids": ["a0c6a2e491da1fb8e4b1a21f34272605"], "statement_hash": "108f17490f863784eb6f9bdbade7fa76b54b75d89fcc6c1a882af5d59652cb24"}}, {"rule": 2, "type": "equivalent", "target": "9ed5f0e33fbbefff8170d512c8e42a97", "evidence": {"same_day": true, "patch_ids": ["a0c6a2e491da1fb8e4b1a21f34272605"], "statement_hash": "108f17490f863784eb6f9bdbade7fa76b54b75d89fcc6c1a882af5d59652cb24"}}, {"rule": 2, "type": "equivalent", "target": "c8c62e21e0bd403c5dab1f4ed86dfad6", "evidence": {"same_day": true, "patch_ids": ["a0c6a2e491da1fb8e4b1a21f34272605"], "statement_hash": "108f17490f863784eb6f9bdbade7fa76b54b75d89fcc6c1a882af5d59652cb24"}}, {"rule": 2, "type": "equivalent", "target": "cda3edcd94b5fcfc7addadcb6b6dcb74", "evidence": {"same_day": true, "patch_ids": ["a0c6a2e491da1fb8e4b1a21f34272605"], "statement_hash": "108f17490f863784eb6f9bdbade7fa76b54b75d89fcc6c1a882af5d59652cb24"}}, {"rule": 2, "type": "equivalent", "target": "f580b4b2ea35354c971a0096c1ffcc3d", "evidence": {"same_day": true, "patch_ids": ["a0c6a2e491da1fb8e4b1a21f34272605"], "statement_hash": "108f17490f863784eb6f9bdbade7fa76b54b75d89fcc6c1a882af5d59652cb24"}}], "version": "9.5.25", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "033e71517443ed8592642e7692090256", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "修复 ALTER DEFAULT PRIVILEGES，使其安全地处理重复参数", "evidence": {"same_day": true, "patch_ids": ["a0c6a2e491da1fb8e4b1a21f34272605"], "statement_hash": "108f17490f863784eb6f9bdbade7fa76b54b75d89fcc6c1a882af5d59652cb24"}, "url": "/docs/compare/?release=13.2#13.2-4b47c52c3d1e42d3", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "cda3edcd94b5fcfc7addadcb6b6dcb74", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "修复 ALTER DEFAULT PRIVILEGES，使其安全地处理重复参数", "evidence": {"same_day": true, "patch_ids": ["a0c6a2e491da1fb8e4b1a21f34272605"], "statement_hash": "108f17490f863784eb6f9bdbade7fa76b54b75d89fcc6c1a882af5d59652cb24"}, "url": "/docs/compare/?release=12.6#12.6-436d765ebc16733b", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "f580b4b2ea35354c971a0096c1ffcc3d", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "修复 ALTER DEFAULT PRIVILEGES，使其安全地处理重复参数", "evidence": {"same_day": true, "patch_ids": ["a0c6a2e491da1fb8e4b1a21f34272605"], "statement_hash": "108f17490f863784eb6f9bdbade7fa76b54b75d89fcc6c1a882af5d59652cb24"}, "url": "/docs/compare/?release=11.11#11.11-2083a0cb1e3c3453", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "c8c62e21e0bd403c5dab1f4ed86dfad6", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "修复 ALTER DEFAULT PRIVILEGES，使其安全地处理重复参数", "evidence": {"same_day": true, "patch_ids": ["a0c6a2e491da1fb8e4b1a21f34272605"], "statement_hash": "108f17490f863784eb6f9bdbade7fa76b54b75d89fcc6c1a882af5d59652cb24"}, "url": "/docs/compare/?release=10.16#10.16-2083a0cb1e3c3453", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "9ed5f0e33fbbefff8170d512c8e42a97", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "修复 ALTER DEFAULT PRIVILEGES 安全处理重复参数的问题", "evidence": {"same_day": true, "patch_ids": ["a0c6a2e491da1fb8e4b1a21f34272605"], "statement_hash": "108f17490f863784eb6f9bdbade7fa76b54b75d89fcc6c1a882af5d59652cb24"}, "url": "/docs/compare/?release=9.6.21#9.6.21-20ea2774f094b7d5", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-3008e1f8b4e3be59", "cves": [], "html": "<p>      当 <code>pg_authid</code> 变化时刷新与 ACL 相关的缓存（Noah Misch）\n     </p><p>      这一更改确保与权限相关的决策能及时反映\n      <code>ALTER ROLE ... [NO] INHERIT</code> 的结果。\n     </p>", "text": "当 pg_authid 变化时刷新与 ACL 相关的缓存（Noah Misch） 这一更改确保与权限相关的决策能及时反映 ALTER ROLE ... [NO] INHERIT 的结果。", "title": "当 pg_authid 变化时刷新与 ACL 相关的缓存", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "1bf06603d5a7df326ade343321dc2567712e259f96d752e651ac897047eec088", "section_path": ["变更"], "commit_groups": [["08db7c63f", "90383a613", "9f8a48bb2", "b81d3791e", "c96698806", "d7c197f46", "e83e8509b"], ["14649bf50", "3f920e876", "d176b9d5e"]], "identity_text": "Flush ACL-related caches when pg_authid changes (Noah Misch) This change ensures that permissions-related decisions will promptly reflect the results of ALTER ROLE ... [NO] INHERIT.", "commit_aliases": ["08db7c63f", "14649bf50", "3f920e876", "90383a613", "9f8a48bb2", "b81d3791e", "c96698806", "d176b9d5e", "d7c197f46", "e83e8509b"], "source_commits": ["14649bf50", "90383a613"], "source_entry_id": "9.5.25/changes/007", "db_id": "0e9618c2858aa82275318a85f0170c94", "patch_ids": ["8261d1d2792ddf98e1639c826e0fca5a", "85c598aa5938b7851f892ebc19b03c85"], "statement_hash": "f55e706a15a623bb3ea44d542a02fce04b8937ca32553a1dc86b0ea042bfc81f", "relations": [{"rule": 2, "type": "equivalent", "target": "10c22711cf4429b157373c6219ddca31", "evidence": {"same_day": true, "patch_ids": ["8261d1d2792ddf98e1639c826e0fca5a", "85c598aa5938b7851f892ebc19b03c85"], "statement_hash": "f55e706a15a623bb3ea44d542a02fce04b8937ca32553a1dc86b0ea042bfc81f"}}, {"rule": 2, "type": "equivalent", "target": "30b26947bab50767cbf4a381a86dcf86", "evidence": {"same_day": true, "patch_ids": ["8261d1d2792ddf98e1639c826e0fca5a", "85c598aa5938b7851f892ebc19b03c85"], "statement_hash": "f55e706a15a623bb3ea44d542a02fce04b8937ca32553a1dc86b0ea042bfc81f"}}, {"rule": 2, "type": "equivalent", "target": "95cb8893e5af3468866ac5a73d78c2f3", "evidence": {"same_day": true, "patch_ids": ["8261d1d2792ddf98e1639c826e0fca5a", "85c598aa5938b7851f892ebc19b03c85"], "statement_hash": "f55e706a15a623bb3ea44d542a02fce04b8937ca32553a1dc86b0ea042bfc81f"}}, {"rule": 2, "type": "equivalent", "target": "a188239a764bd7a2b1e76a548e2b8013", "evidence": {"same_day": true, "patch_ids": ["8261d1d2792ddf98e1639c826e0fca5a", "85c598aa5938b7851f892ebc19b03c85"], "statement_hash": "f55e706a15a623bb3ea44d542a02fce04b8937ca32553a1dc86b0ea042bfc81f"}}, {"rule": 2, "type": "equivalent", "target": "ca24cf617886cda982c367f2998358ba", "evidence": {"same_day": true, "patch_ids": ["8261d1d2792ddf98e1639c826e0fca5a", "85c598aa5938b7851f892ebc19b03c85"], "statement_hash": "f55e706a15a623bb3ea44d542a02fce04b8937ca32553a1dc86b0ea042bfc81f"}}], "version": "9.5.25", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "10c22711cf4429b157373c6219ddca31", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "在 pg_authid 变更时清除 ACL 相关缓存", "evidence": {"same_day": true, "patch_ids": ["8261d1d2792ddf98e1639c826e0fca5a", "85c598aa5938b7851f892ebc19b03c85"], "statement_hash": "f55e706a15a623bb3ea44d542a02fce04b8937ca32553a1dc86b0ea042bfc81f"}, "url": "/docs/compare/?release=13.2#13.2-d17a09f2cbc4b675", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "ca24cf617886cda982c367f2998358ba", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "在 pg_authid 变更时清除 ACL 相关缓存", "evidence": {"same_day": true, "patch_ids": ["8261d1d2792ddf98e1639c826e0fca5a", "85c598aa5938b7851f892ebc19b03c85"], "statement_hash": "f55e706a15a623bb3ea44d542a02fce04b8937ca32553a1dc86b0ea042bfc81f"}, "url": "/docs/compare/?release=12.6#12.6-d4fb84be01500688", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "a188239a764bd7a2b1e76a548e2b8013", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "在 pg_authid 变更时清除 ACL 相关缓存", "evidence": {"same_day": true, "patch_ids": ["8261d1d2792ddf98e1639c826e0fca5a", "85c598aa5938b7851f892ebc19b03c85"], "statement_hash": "f55e706a15a623bb3ea44d542a02fce04b8937ca32553a1dc86b0ea042bfc81f"}, "url": "/docs/compare/?release=11.11#11.11-db16fa14eaf58336", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "95cb8893e5af3468866ac5a73d78c2f3", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "在 pg_authid 变更时清除 ACL 相关缓存", "evidence": {"same_day": true, "patch_ids": ["8261d1d2792ddf98e1639c826e0fca5a", "85c598aa5938b7851f892ebc19b03c85"], "statement_hash": "f55e706a15a623bb3ea44d542a02fce04b8937ca32553a1dc86b0ea042bfc81f"}, "url": "/docs/compare/?release=10.16#10.16-db16fa14eaf58336", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "30b26947bab50767cbf4a381a86dcf86", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "当 pg_authid 变化时刷新与 ACL 相关的缓存", "evidence": {"same_day": true, "patch_ids": ["8261d1d2792ddf98e1639c826e0fca5a", "85c598aa5938b7851f892ebc19b03c85"], "statement_hash": "f55e706a15a623bb3ea44d542a02fce04b8937ca32553a1dc86b0ea042bfc81f"}, "url": "/docs/compare/?release=9.6.21#9.6.21-3008e1f8b4e3be59", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-97757803e9a177b4", "cves": [], "html": "<p>      防止对有歧义的 <code>CREATE TABLE LIKE</code> 子句的错误处理（Tom Lane）\n     </p><p> <code>LIKE</code> 子句在新表初始创建之后会被重新检查，以处理索引等的导入。这一重新检查有可能找到同名的另一张表，导致意外的行为；一个例子是新表是与 <code>LIKE</code> 目标同名的临时表。\n     </p>", "text": "防止对有歧义的 CREATE TABLE LIKE 子句的错误处理（Tom Lane） LIKE 子句在新表初始创建之后会被重新检查，以处理索引等的导入。这一重新检查有可能找到同名的另一张表，导致意外的行为；一个例子是新表是与 LIKE 目标同名的临时表。", "title": "防止对有歧义的 CREATE TABLE LIKE 子句的错误处理", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "a595a0e4306d2c75f32a4cd8a4d363264bd5c0d112c041818f9a9317492d1a50", "section_path": ["变更"], "commit_groups": [["28bb8c496", "5f9b05ada", "d98e27dc6", "dffc82a5b", "f00c44002", "f7f83a55b", "fb500296d"]], "identity_text": "Prevent misprocessing of ambiguous CREATE TABLE LIKE clauses (Tom Lane) A LIKE clause is re-examined after initial creation of the new table, to handle importation of indexes and such. It was possible for this re-examination to find a different table of the same name, causing unexpected behavior; one example is where the new table is a temporary table of the same name as the LIKE target.", "commit_aliases": ["28bb8c496", "5f9b05ada", "d98e27dc6", "dffc82a5b", "f00c44002", "f7f83a55b", "fb500296d"], "source_commits": ["fb500296d"], "source_entry_id": "9.5.25/changes/008", "db_id": "26a2e31b5f68c9ae150acdd4523c267e", "patch_ids": ["ccd0a42fc952ae4b62a27ed30a0bf08d"], "statement_hash": "9e3e1d81e0e836e660fe572e4863d78cb1e67f2d84a93b39a583ca1849b67876", "relations": [{"rule": 2, "type": "equivalent", "target": "23f4a26e88e89ca226925b4c412eb711", "evidence": {"same_day": true, "patch_ids": ["ccd0a42fc952ae4b62a27ed30a0bf08d"], "statement_hash": "9e3e1d81e0e836e660fe572e4863d78cb1e67f2d84a93b39a583ca1849b67876"}}, {"rule": 2, "type": "equivalent", "target": "40e0b6c50a33af0b42faa8dc56ce327c", "evidence": {"same_day": true, "patch_ids": ["ccd0a42fc952ae4b62a27ed30a0bf08d"], "statement_hash": "9e3e1d81e0e836e660fe572e4863d78cb1e67f2d84a93b39a583ca1849b67876"}}, {"rule": 2, "type": "equivalent", "target": "88e4d65708e50deaf6646f984e32063d", "evidence": {"same_day": true, "patch_ids": ["ccd0a42fc952ae4b62a27ed30a0bf08d"], "statement_hash": "9e3e1d81e0e836e660fe572e4863d78cb1e67f2d84a93b39a583ca1849b67876"}}, {"rule": 2, "type": "equivalent", "target": "d23597eae668e6657fa42f0942d31d09", "evidence": {"same_day": true, "patch_ids": ["ccd0a42fc952ae4b62a27ed30a0bf08d"], "statement_hash": "9e3e1d81e0e836e660fe572e4863d78cb1e67f2d84a93b39a583ca1849b67876"}}, {"rule": 2, "type": "equivalent", "target": "dab4ca2474b40c1def5d933f49644da5", "evidence": {"same_day": true, "patch_ids": ["ccd0a42fc952ae4b62a27ed30a0bf08d"], "statement_hash": "9e3e1d81e0e836e660fe572e4863d78cb1e67f2d84a93b39a583ca1849b67876"}}], "version": "9.5.25", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "23f4a26e88e89ca226925b4c412eb711", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "防止错误处理有歧义的 CREATE TABLE LIKE 子句", "evidence": {"same_day": true, "patch_ids": ["ccd0a42fc952ae4b62a27ed30a0bf08d"], "statement_hash": "9e3e1d81e0e836e660fe572e4863d78cb1e67f2d84a93b39a583ca1849b67876"}, "url": "/docs/compare/?release=13.2#13.2-481d2262162e5363", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "d23597eae668e6657fa42f0942d31d09", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "防止错误处理有歧义的 CREATE TABLE LIKE 子句", "evidence": {"same_day": true, "patch_ids": ["ccd0a42fc952ae4b62a27ed30a0bf08d"], "statement_hash": "9e3e1d81e0e836e660fe572e4863d78cb1e67f2d84a93b39a583ca1849b67876"}, "url": "/docs/compare/?release=12.6#12.6-402f740b85b2629f", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "88e4d65708e50deaf6646f984e32063d", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "防止错误处理有歧义的 CREATE TABLE LIKE 子句", "evidence": {"same_day": true, "patch_ids": ["ccd0a42fc952ae4b62a27ed30a0bf08d"], "statement_hash": "9e3e1d81e0e836e660fe572e4863d78cb1e67f2d84a93b39a583ca1849b67876"}, "url": "/docs/compare/?release=11.11#11.11-ccab9d4a9d7653dd", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "40e0b6c50a33af0b42faa8dc56ce327c", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "防止错误处理有歧义的 CREATE TABLE LIKE 子句", "evidence": {"same_day": true, "patch_ids": ["ccd0a42fc952ae4b62a27ed30a0bf08d"], "statement_hash": "9e3e1d81e0e836e660fe572e4863d78cb1e67f2d84a93b39a583ca1849b67876"}, "url": "/docs/compare/?release=10.16#10.16-ccab9d4a9d7653dd", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "dab4ca2474b40c1def5d933f49644da5", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "防止对有歧义的 CREATE TABLE LIKE 子句的错误处理", "evidence": {"same_day": true, "patch_ids": ["ccd0a42fc952ae4b62a27ed30a0bf08d"], "statement_hash": "9e3e1d81e0e836e660fe572e4863d78cb1e67f2d84a93b39a583ca1849b67876"}, "url": "/docs/compare/?release=9.6.21#9.6.21-97757803e9a177b4", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-9c9ac22a7d1f47f8", "cves": [], "html": "<p>      调整 <code>CREATE TABLE LIKE</code> 中操作的顺序，使索引在外键约束构建之前被克隆（Tom Lane）\n     </p><p>      这修复了外层 <code>CREATE TABLE</code> 中声明的自引用外键约束依赖于来自 <code>LIKE</code> 子句的索引的情况。\n     </p>", "text": "调整 CREATE TABLE LIKE 中操作的顺序，使索引在外键约束构建之前被克隆（Tom Lane） 这修复了外层 CREATE TABLE 中声明的自引用外键约束依赖于来自 LIKE 子句的索引的情况。", "title": "调整 CREATE TABLE LIKE 中操作的顺序，使索引在外键约束构建之前被克隆", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "fb6b4f12d27c1edcc94cc8aa9b62fd8c87c71f89c7877a5b37e6d11b30f03a39", "section_path": ["变更"], "commit_groups": [["159b6775f", "513db7b70", "6631d5f26", "87ab46421", "97390fe8a", "98f3f1d5c", "c690ebbef"]], "identity_text": "Rearrange order of operations in CREATE TABLE LIKE so that indexes are cloned before building foreign key constraints (Tom Lane) This fixes the case where a self-referential foreign key constraint declared in the outer CREATE TABLE depends on an index that's coming from the LIKE clause.", "commit_aliases": ["159b6775f", "513db7b70", "6631d5f26", "87ab46421", "97390fe8a", "98f3f1d5c", "c690ebbef"], "source_commits": ["6631d5f26"], "source_entry_id": "9.5.25/changes/009", "db_id": "b903829f119022d2c32f8c760c34c854", "patch_ids": ["83544fb9faed1caeaaa43c4794a999e9"], "statement_hash": "f8104c118d31dc4b71dcf243fe3bddd5b8593756af22533e15a149f878c2de3b", "relations": [{"rule": 2, "type": "equivalent", "target": "5c2c210d0d41728735f79ce7cc2e5c3a", "evidence": {"same_day": true, "patch_ids": ["83544fb9faed1caeaaa43c4794a999e9"], "statement_hash": "f8104c118d31dc4b71dcf243fe3bddd5b8593756af22533e15a149f878c2de3b"}}, {"rule": 2, "type": "equivalent", "target": "80bae2d134a0e89de77980d6d9dfece0", "evidence": {"same_day": true, "patch_ids": ["83544fb9faed1caeaaa43c4794a999e9"], "statement_hash": "f8104c118d31dc4b71dcf243fe3bddd5b8593756af22533e15a149f878c2de3b"}}, {"rule": 2, "type": "equivalent", "target": "8a18b068a7a2bf7287ee527d712b070f", "evidence": {"same_day": true, "patch_ids": ["83544fb9faed1caeaaa43c4794a999e9"], "statement_hash": "f8104c118d31dc4b71dcf243fe3bddd5b8593756af22533e15a149f878c2de3b"}}, {"rule": 2, "type": "equivalent", "target": "cd6614377025c75b71756ee4b9b3a5a4", "evidence": {"same_day": true, "patch_ids": ["83544fb9faed1caeaaa43c4794a999e9"], "statement_hash": "f8104c118d31dc4b71dcf243fe3bddd5b8593756af22533e15a149f878c2de3b"}}, {"rule": 2, "type": "equivalent", "target": "fc47a4e8119a4993b02c5720841b1780", "evidence": {"same_day": true, "patch_ids": ["83544fb9faed1caeaaa43c4794a999e9"], "statement_hash": "f8104c118d31dc4b71dcf243fe3bddd5b8593756af22533e15a149f878c2de3b"}}], "version": "9.5.25", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "8a18b068a7a2bf7287ee527d712b070f", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "调整 CREATE TABLE LIKE 中的操作顺序，在构建外键约束之前克隆索引", "evidence": {"same_day": true, "patch_ids": ["83544fb9faed1caeaaa43c4794a999e9"], "statement_hash": "f8104c118d31dc4b71dcf243fe3bddd5b8593756af22533e15a149f878c2de3b"}, "url": "/docs/compare/?release=13.2#13.2-236f0aeae4fb3282", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "cd6614377025c75b71756ee4b9b3a5a4", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "调整 CREATE TABLE LIKE 中的操作顺序，在构建外键约束之前克隆索引", "evidence": {"same_day": true, "patch_ids": ["83544fb9faed1caeaaa43c4794a999e9"], "statement_hash": "f8104c118d31dc4b71dcf243fe3bddd5b8593756af22533e15a149f878c2de3b"}, "url": "/docs/compare/?release=12.6#12.6-803eac80cf0ee388", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "80bae2d134a0e89de77980d6d9dfece0", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "调整 CREATE TABLE LIKE 中的操作顺序，在构建外键约束之前克隆索引", "evidence": {"same_day": true, "patch_ids": ["83544fb9faed1caeaaa43c4794a999e9"], "statement_hash": "f8104c118d31dc4b71dcf243fe3bddd5b8593756af22533e15a149f878c2de3b"}, "url": "/docs/compare/?release=11.11#11.11-478f181bb1c6a748", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "5c2c210d0d41728735f79ce7cc2e5c3a", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "调整 CREATE TABLE LIKE 中的操作顺序，在构建外键约束之前克隆索引", "evidence": {"same_day": true, "patch_ids": ["83544fb9faed1caeaaa43c4794a999e9"], "statement_hash": "f8104c118d31dc4b71dcf243fe3bddd5b8593756af22533e15a149f878c2de3b"}, "url": "/docs/compare/?release=10.16#10.16-478f181bb1c6a748", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "fc47a4e8119a4993b02c5720841b1780", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "调整 CREATE TABLE LIKE 中操作的顺序，使索引在外键约束构建之前被克隆", "evidence": {"same_day": true, "patch_ids": ["83544fb9faed1caeaaa43c4794a999e9"], "statement_hash": "f8104c118d31dc4b71dcf243fe3bddd5b8593756af22533e15a149f878c2de3b"}, "url": "/docs/compare/?release=9.6.21#9.6.21-9c9ac22a7d1f47f8", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-875df186a7acd301", "cves": [], "html": "<p>      禁止把继承子表转换为视图（Tom Lane）\n     </p>", "text": "禁止把继承子表转换为视图（Tom Lane）", "title": "禁止把继承子表转换为视图", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "15091d4950ea3fde1ac0cc20235df172f2825730e92a3999ff122fa281f55438", "section_path": ["变更"], "commit_groups": [["4353bc878", "580069037", "5ad03374b", "7736ab05f", "ad85e5efa", "dd705a039", "f73321957"]], "identity_text": "Disallow converting an inheritance child table to a view (Tom Lane)", "commit_aliases": ["4353bc878", "580069037", "5ad03374b", "7736ab05f", "ad85e5efa", "dd705a039", "f73321957"], "source_commits": ["5ad03374b"], "source_entry_id": "9.5.25/changes/010", "db_id": "8ba9b28638ea299c1e985749523345bf", "patch_ids": ["836946a2bd2e3da747d1b07b44a23c75"], "statement_hash": "434aa69d3d17fa25d9921282c0e17d7bbca55de5c1d442d36de556cb83a32be4", "relations": [{"rule": 2, "type": "equivalent", "target": "12ef8b02516a4bf938446a4d0010aca5", "evidence": {"same_day": true, "patch_ids": ["836946a2bd2e3da747d1b07b44a23c75"], "statement_hash": "434aa69d3d17fa25d9921282c0e17d7bbca55de5c1d442d36de556cb83a32be4"}}, {"rule": 2, "type": "equivalent", "target": "49e84999d920619f74274e63abddbdcc", "evidence": {"same_day": true, "patch_ids": ["836946a2bd2e3da747d1b07b44a23c75"], "statement_hash": "434aa69d3d17fa25d9921282c0e17d7bbca55de5c1d442d36de556cb83a32be4"}}, {"rule": 2, "type": "equivalent", "target": "61efb2638743b6c6a19bd3c5ef0f7667", "evidence": {"same_day": true, "patch_ids": ["836946a2bd2e3da747d1b07b44a23c75"], "statement_hash": "434aa69d3d17fa25d9921282c0e17d7bbca55de5c1d442d36de556cb83a32be4"}}, {"rule": 2, "type": "equivalent", "target": "95bac125c0f7972cc51bb60f17c0542e", "evidence": {"same_day": true, "patch_ids": ["836946a2bd2e3da747d1b07b44a23c75"], "statement_hash": "434aa69d3d17fa25d9921282c0e17d7bbca55de5c1d442d36de556cb83a32be4"}}, {"rule": 2, "type": "equivalent", "target": "979f38103a244f175d742166a38b3027", "evidence": {"same_day": true, "patch_ids": ["836946a2bd2e3da747d1b07b44a23c75"], "statement_hash": "434aa69d3d17fa25d9921282c0e17d7bbca55de5c1d442d36de556cb83a32be4"}}], "version": "9.5.25", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "979f38103a244f175d742166a38b3027", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "禁止将继承子表转换为视图", "evidence": {"same_day": true, "patch_ids": ["836946a2bd2e3da747d1b07b44a23c75"], "statement_hash": "434aa69d3d17fa25d9921282c0e17d7bbca55de5c1d442d36de556cb83a32be4"}, "url": "/docs/compare/?release=13.2#13.2-3fb55a0b240e8013", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "95bac125c0f7972cc51bb60f17c0542e", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "禁止将继承子表转换为视图", "evidence": {"same_day": true, "patch_ids": ["836946a2bd2e3da747d1b07b44a23c75"], "statement_hash": "434aa69d3d17fa25d9921282c0e17d7bbca55de5c1d442d36de556cb83a32be4"}, "url": "/docs/compare/?release=12.6#12.6-dfe2f9b97f434670", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "61efb2638743b6c6a19bd3c5ef0f7667", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "禁止将继承子表转换为视图", "evidence": {"same_day": true, "patch_ids": ["836946a2bd2e3da747d1b07b44a23c75"], "statement_hash": "434aa69d3d17fa25d9921282c0e17d7bbca55de5c1d442d36de556cb83a32be4"}, "url": "/docs/compare/?release=11.11#11.11-b36aba62a30a6456", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "49e84999d920619f74274e63abddbdcc", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "禁止将继承子表转换为视图", "evidence": {"same_day": true, "patch_ids": ["836946a2bd2e3da747d1b07b44a23c75"], "statement_hash": "434aa69d3d17fa25d9921282c0e17d7bbca55de5c1d442d36de556cb83a32be4"}, "url": "/docs/compare/?release=10.16#10.16-b36aba62a30a6456", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "12ef8b02516a4bf938446a4d0010aca5", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "禁止把继承子表转换为视图", "evidence": {"same_day": true, "patch_ids": ["836946a2bd2e3da747d1b07b44a23c75"], "statement_hash": "434aa69d3d17fa25d9921282c0e17d7bbca55de5c1d442d36de556cb83a32be4"}, "url": "/docs/compare/?release=9.6.21#9.6.21-875df186a7acd301", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-3dd54f684c6c905c", "cves": [], "html": "<p>      确保已删除关系占用的磁盘空间在提交时被及时释放（Thomas Munro）\n     </p><p>      此前，如果被删除的关系跨越多个 1GB 段，只有第一段被立即截断。其他段只是被解除链接，只要还有其他后端打开着这些文件，这不会让内核释放存储。\n     </p>", "text": "确保已删除关系占用的磁盘空间在提交时被及时释放（Thomas Munro） 此前，如果被删除的关系跨越多个 1GB 段，只有第一段被立即截断。其他段只是被解除链接，只要还有其他后端打开着这些文件，这不会让内核释放存储。", "title": "确保已删除关系占用的磁盘空间在提交时被及时释放", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "12a014f4d38333fc8e452277fe93877cd3012e4db264d40c5f149d4a51b5427e", "section_path": ["变更"], "commit_groups": [["22701755d", "50f338574", "9f35f9437", "d0bbe2122", "d5706ad7b", "e00928de8", "fd3a75d82"]], "identity_text": "Ensure that disk space allocated for a dropped relation is released promptly at commit (Thomas Munro) Previously, if the dropped relation spanned multiple 1GB segments, only the first segment was truncated immediately. Other segments were simply unlinked, which doesn't authorize the kernel to release the storage so long as any other backends still have the files open.", "commit_aliases": ["22701755d", "50f338574", "9f35f9437", "d0bbe2122", "d5706ad7b", "e00928de8", "fd3a75d82"], "source_commits": ["e00928de8"], "source_entry_id": "9.5.25/changes/011", "db_id": "9df8843b80b823c7a414a43eef881153", "patch_ids": ["9a4fd327bc5dd3b37cfc3812f035c0d4"], "statement_hash": "aebfb9c3dffc144a48a2e672b5a0c64bb4ce8370cab25e69f7c81659350e83fe", "relations": [{"rule": 2, "type": "equivalent", "target": "03596b748ef6b859b5360dc3098acc41", "evidence": {"same_day": true, "patch_ids": ["9a4fd327bc5dd3b37cfc3812f035c0d4"], "statement_hash": "aebfb9c3dffc144a48a2e672b5a0c64bb4ce8370cab25e69f7c81659350e83fe"}}, {"rule": 2, "type": "equivalent", "target": "504fa4cb832d7d3abdd8340498c93a8e", "evidence": {"same_day": true, "patch_ids": ["9a4fd327bc5dd3b37cfc3812f035c0d4"], "statement_hash": "aebfb9c3dffc144a48a2e672b5a0c64bb4ce8370cab25e69f7c81659350e83fe"}}, {"rule": 2, "type": "equivalent", "target": "9363d693d2e0464a5a6f1e5ed52c50d7", "evidence": {"same_day": true, "patch_ids": ["9a4fd327bc5dd3b37cfc3812f035c0d4"], "statement_hash": "aebfb9c3dffc144a48a2e672b5a0c64bb4ce8370cab25e69f7c81659350e83fe"}}, {"rule": 2, "type": "equivalent", "target": "c9d3233197479c3689485c037f0828c1", "evidence": {"same_day": true, "patch_ids": ["9a4fd327bc5dd3b37cfc3812f035c0d4"], "statement_hash": "aebfb9c3dffc144a48a2e672b5a0c64bb4ce8370cab25e69f7c81659350e83fe"}}, {"rule": 2, "type": "equivalent", "target": "e41c7c0f90f56e4a2d06f7ae8276c637", "evidence": {"same_day": true, "patch_ids": ["9a4fd327bc5dd3b37cfc3812f035c0d4"], "statement_hash": "aebfb9c3dffc144a48a2e672b5a0c64bb4ce8370cab25e69f7c81659350e83fe"}}], "version": "9.5.25", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "e41c7c0f90f56e4a2d06f7ae8276c637", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "确保为已删除关系分配的磁盘空间在提交时及时释放", "evidence": {"same_day": true, "patch_ids": ["9a4fd327bc5dd3b37cfc3812f035c0d4"], "statement_hash": "aebfb9c3dffc144a48a2e672b5a0c64bb4ce8370cab25e69f7c81659350e83fe"}, "url": "/docs/compare/?release=13.2#13.2-c47a5cddf73ea8ed", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "c9d3233197479c3689485c037f0828c1", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "确保为已删除关系分配的磁盘空间在提交时及时释放", "evidence": {"same_day": true, "patch_ids": ["9a4fd327bc5dd3b37cfc3812f035c0d4"], "statement_hash": "aebfb9c3dffc144a48a2e672b5a0c64bb4ce8370cab25e69f7c81659350e83fe"}, "url": "/docs/compare/?release=12.6#12.6-d2890c650882e77f", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "504fa4cb832d7d3abdd8340498c93a8e", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "确保为已删除关系分配的磁盘空间在提交时及时释放", "evidence": {"same_day": true, "patch_ids": ["9a4fd327bc5dd3b37cfc3812f035c0d4"], "statement_hash": "aebfb9c3dffc144a48a2e672b5a0c64bb4ce8370cab25e69f7c81659350e83fe"}, "url": "/docs/compare/?release=11.11#11.11-de5fc2f596a1ad74", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "9363d693d2e0464a5a6f1e5ed52c50d7", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "确保为已删除关系分配的磁盘空间在提交时及时释放", "evidence": {"same_day": true, "patch_ids": ["9a4fd327bc5dd3b37cfc3812f035c0d4"], "statement_hash": "aebfb9c3dffc144a48a2e672b5a0c64bb4ce8370cab25e69f7c81659350e83fe"}, "url": "/docs/compare/?release=10.16#10.16-de5fc2f596a1ad74", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "03596b748ef6b859b5360dc3098acc41", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "确保已删除关系占用的磁盘空间在提交时被及时释放", "evidence": {"same_day": true, "patch_ids": ["9a4fd327bc5dd3b37cfc3812f035c0d4"], "statement_hash": "aebfb9c3dffc144a48a2e672b5a0c64bb4ce8370cab25e69f7c81659350e83fe"}, "url": "/docs/compare/?release=9.6.21#9.6.21-3dd54f684c6c905c", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-110768d662719e6b", "cves": [], "html": "<p>      修复 <code>COPY FROM</code> 中反斜线转义的多字节字符的处理（Heikki Linnakangas）\n     </p><p>      反斜线后跟多字节字符的情况没有被正确处理。在某些客户端字符编码下，这可能导致把多字节字符的一部分误解释为字段分隔符或复制数据结束标记。\n     </p>", "text": "修复 COPY FROM 中反斜线转义的多字节字符的处理（Heikki Linnakangas） 反斜线后跟多字节字符的情况没有被正确处理。在某些客户端字符编码下，这可能导致把多字节字符的一部分误解释为字段分隔符或复制数据结束标记。", "title": "修复 COPY FROM 中反斜线转义的多字节字符的处理", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "d24b85d35823d8cf94ca00c5d473e99864c622bd9639312cd7e81925aab7b32a", "section_path": ["变更"], "commit_groups": [["9b0ce8957", "aaf266157", "c06632e48", "c444472af", "c87cbd51e", "d9b4163c5", "e152ccc7f"]], "identity_text": "Fix handling of backslash-escaped multibyte characters in COPY FROM (Heikki Linnakangas) A backslash followed by a multibyte character was not handled correctly. In some client character encodings, this could lead to misinterpreting part of a multibyte character as a field separator or end-of-copy-data marker.", "commit_aliases": ["9b0ce8957", "aaf266157", "c06632e48", "c444472af", "c87cbd51e", "d9b4163c5", "e152ccc7f"], "source_commits": ["aaf266157"], "source_entry_id": "9.5.25/changes/012", "db_id": "cdac1aaac0da3071bf9f337dbf09252b", "patch_ids": ["461834a457f95e1e46e3f5f853762185"], "statement_hash": "a17e1d9ba5b15acc4ec34752b30d9a8117208c92aa6ae3f0a770360600bf6170", "relations": [{"rule": 2, "type": "equivalent", "target": "24a0975624b55034a36cc45c82dda4fa", "evidence": {"same_day": true, "patch_ids": ["461834a457f95e1e46e3f5f853762185"], "statement_hash": "a17e1d9ba5b15acc4ec34752b30d9a8117208c92aa6ae3f0a770360600bf6170"}}, {"rule": 2, "type": "equivalent", "target": "2ff2a9fef7757aea510f778f3aef08f9", "evidence": {"same_day": true, "patch_ids": ["461834a457f95e1e46e3f5f853762185"], "statement_hash": "a17e1d9ba5b15acc4ec34752b30d9a8117208c92aa6ae3f0a770360600bf6170"}}, {"rule": 2, "type": "equivalent", "target": "6a24303fb124f0e6a1b631499dbc5513", "evidence": {"same_day": true, "patch_ids": ["461834a457f95e1e46e3f5f853762185"], "statement_hash": "a17e1d9ba5b15acc4ec34752b30d9a8117208c92aa6ae3f0a770360600bf6170"}}, {"rule": 2, "type": "equivalent", "target": "94c3dc3f04b7d0b45cacb5b6966c3453", "evidence": {"same_day": true, "patch_ids": ["461834a457f95e1e46e3f5f853762185"], "statement_hash": "a17e1d9ba5b15acc4ec34752b30d9a8117208c92aa6ae3f0a770360600bf6170"}}, {"rule": 2, "type": "equivalent", "target": "c9c4eb396a62b6f9b564bb3623096201", "evidence": {"same_day": true, "patch_ids": ["461834a457f95e1e46e3f5f853762185"], "statement_hash": "a17e1d9ba5b15acc4ec34752b30d9a8117208c92aa6ae3f0a770360600bf6170"}}], "version": "9.5.25", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "94c3dc3f04b7d0b45cacb5b6966c3453", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "修复 COPY FROM 对反斜杠转义的多字节字符的处理", "evidence": {"same_day": true, "patch_ids": ["461834a457f95e1e46e3f5f853762185"], "statement_hash": "a17e1d9ba5b15acc4ec34752b30d9a8117208c92aa6ae3f0a770360600bf6170"}, "url": "/docs/compare/?release=13.2#13.2-5594565506cbb214", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "6a24303fb124f0e6a1b631499dbc5513", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "修复 COPY FROM 对反斜杠转义的多字节字符的处理", "evidence": {"same_day": true, "patch_ids": ["461834a457f95e1e46e3f5f853762185"], "statement_hash": "a17e1d9ba5b15acc4ec34752b30d9a8117208c92aa6ae3f0a770360600bf6170"}, "url": "/docs/compare/?release=12.6#12.6-3f4fe8706c75c1ad", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "c9c4eb396a62b6f9b564bb3623096201", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "修复 COPY FROM 对反斜杠转义的多字节字符的处理", "evidence": {"same_day": true, "patch_ids": ["461834a457f95e1e46e3f5f853762185"], "statement_hash": "a17e1d9ba5b15acc4ec34752b30d9a8117208c92aa6ae3f0a770360600bf6170"}, "url": "/docs/compare/?release=11.11#11.11-0183a142e1f34345", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "2ff2a9fef7757aea510f778f3aef08f9", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "修复 COPY FROM 对反斜杠转义的多字节字符的处理", "evidence": {"same_day": true, "patch_ids": ["461834a457f95e1e46e3f5f853762185"], "statement_hash": "a17e1d9ba5b15acc4ec34752b30d9a8117208c92aa6ae3f0a770360600bf6170"}, "url": "/docs/compare/?release=10.16#10.16-0183a142e1f34345", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "24a0975624b55034a36cc45c82dda4fa", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "修复 COPY FROM 中反斜线转义的多字节字符的处理", "evidence": {"same_day": true, "patch_ids": ["461834a457f95e1e46e3f5f853762185"], "statement_hash": "a17e1d9ba5b15acc4ec34752b30d9a8117208c92aa6ae3f0a770360600bf6170"}, "url": "/docs/compare/?release=9.6.21#9.6.21-110768d662719e6b", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-6f7d4b6f6c58285f", "cves": [], "html": "<p>      避免不带 <code>ANALYZE</code> 的 <code>EXPLAIN</code> 预先分配执行器哈希表（Alexey Bashtanov）\n     </p>", "text": "避免不带 ANALYZE 的 EXPLAIN 预先分配执行器哈希表（Alexey Bashtanov）", "title": "避免不带 ANALYZE 的 EXPLAIN 预先分配执行器哈希表", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "3ce759467897dbca4a3fa6ea85b9db9b71b9da456a9eccf36390e578812142a1", "section_path": ["变更"], "commit_groups": [["02a2dbe91", "1dbe627fd", "2cccb627f", "340ae3cfb", "57b5d8484", "888fa2bae", "ded7db4c1"]], "identity_text": "Avoid preallocating executor hash tables in EXPLAIN without ANALYZE (Alexey Bashtanov)", "commit_aliases": ["02a2dbe91", "1dbe627fd", "2cccb627f", "340ae3cfb", "57b5d8484", "888fa2bae", "ded7db4c1"], "source_commits": ["ded7db4c1"], "source_entry_id": "9.5.25/changes/013", "db_id": "d27d3b5f08c4411d7aebdd0545cecbf3", "patch_ids": ["4a1cf728756c647334f001b492e3a124"], "statement_hash": "6bf62155f5b3356397e868e401d1d5d6199e4addaf7ca2fe79a8b7ebb693e14b", "relations": [{"rule": 2, "type": "equivalent", "target": "2179731eec94fc15c1d8b1ddc8c9f578", "evidence": {"same_day": true, "patch_ids": ["4a1cf728756c647334f001b492e3a124"], "statement_hash": "6bf62155f5b3356397e868e401d1d5d6199e4addaf7ca2fe79a8b7ebb693e14b"}}, {"rule": 2, "type": "equivalent", "target": "613217020774168de821a221f85c7056", "evidence": {"same_day": true, "patch_ids": ["4a1cf728756c647334f001b492e3a124"], "statement_hash": "6bf62155f5b3356397e868e401d1d5d6199e4addaf7ca2fe79a8b7ebb693e14b"}}, {"rule": 2, "type": "equivalent", "target": "9268e2d4c38c84ac444c39db96ad5274", "evidence": {"same_day": true, "patch_ids": ["4a1cf728756c647334f001b492e3a124"], "statement_hash": "6bf62155f5b3356397e868e401d1d5d6199e4addaf7ca2fe79a8b7ebb693e14b"}}, {"rule": 2, "type": "equivalent", "target": "a014d0f294fb7a68feb1a3fbe56009c8", "evidence": {"same_day": true, "patch_ids": ["4a1cf728756c647334f001b492e3a124"], "statement_hash": "6bf62155f5b3356397e868e401d1d5d6199e4addaf7ca2fe79a8b7ebb693e14b"}}, {"rule": 2, "type": "equivalent", "target": "c66edfd9590fc963e116f02cecf827d1", "evidence": {"same_day": true, "patch_ids": ["4a1cf728756c647334f001b492e3a124"], "statement_hash": "6bf62155f5b3356397e868e401d1d5d6199e4addaf7ca2fe79a8b7ebb693e14b"}}], "version": "9.5.25", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "c66edfd9590fc963e116f02cecf827d1", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "在不带 ANALYZE 的 EXPLAIN 中，避免预先分配执行器 hash 表", "evidence": {"same_day": true, "patch_ids": ["4a1cf728756c647334f001b492e3a124"], "statement_hash": "6bf62155f5b3356397e868e401d1d5d6199e4addaf7ca2fe79a8b7ebb693e14b"}, "url": "/docs/compare/?release=13.2#13.2-82cfab27199806cf", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "613217020774168de821a221f85c7056", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "在不带 ANALYZE 的 EXPLAIN 中，避免预先分配执行器 hash 表", "evidence": {"same_day": true, "patch_ids": ["4a1cf728756c647334f001b492e3a124"], "statement_hash": "6bf62155f5b3356397e868e401d1d5d6199e4addaf7ca2fe79a8b7ebb693e14b"}, "url": "/docs/compare/?release=12.6#12.6-9f2e24cef700b29a", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "9268e2d4c38c84ac444c39db96ad5274", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "在不带 ANALYZE 的 EXPLAIN 中，避免预先分配执行器 hash 表", "evidence": {"same_day": true, "patch_ids": ["4a1cf728756c647334f001b492e3a124"], "statement_hash": "6bf62155f5b3356397e868e401d1d5d6199e4addaf7ca2fe79a8b7ebb693e14b"}, "url": "/docs/compare/?release=11.11#11.11-9f48e8cde1d885ff", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "2179731eec94fc15c1d8b1ddc8c9f578", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "在不带 ANALYZE 的 EXPLAIN 中，避免预先分配执行器 hash 表", "evidence": {"same_day": true, "patch_ids": ["4a1cf728756c647334f001b492e3a124"], "statement_hash": "6bf62155f5b3356397e868e401d1d5d6199e4addaf7ca2fe79a8b7ebb693e14b"}, "url": "/docs/compare/?release=10.16#10.16-9f48e8cde1d885ff", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "a014d0f294fb7a68feb1a3fbe56009c8", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "避免不带 ANALYZE 的 EXPLAIN 预先分配执行器哈希表", "evidence": {"same_day": true, "patch_ids": ["4a1cf728756c647334f001b492e3a124"], "statement_hash": "6bf62155f5b3356397e868e401d1d5d6199e4addaf7ca2fe79a8b7ebb693e14b"}, "url": "/docs/compare/?release=9.6.21#9.6.21-6f7d4b6f6c58285f", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-275abb16981ff38f", "cves": [], "html": "<p>      修复 <code>LISTEN</code>/<code>NOTIFY</code> 队列处理中新近引入的竞态条件（Tom Lane）\n     </p><p>      新监听的后端可能试图读取正在被截断的 SLRU 页，可能导致错误。\n     </p><p>      队列尾指针可能被设置为一个不等于任何后端队列位置的值，导致队列截断逻辑被有效禁用。继续使用 <code>NOTIFY</code> 随后会导致队列填满警告，最终在服务器重启之前无法再发送任何通知。\n     </p>", "text": "修复 LISTEN/NOTIFY 队列处理中新近引入的竞态条件（Tom Lane） 新监听的后端可能试图读取正在被截断的 SLRU 页，可能导致错误。 队列尾指针可能被设置为一个不等于任何后端队列位置的值，导致队列截断逻辑被有效禁用。继续使用 NOTIFY 随后会导致队列填满警告，最终在服务器重启之前无法再发送任何通知。", "title": "修复 LISTEN/NOTIFY 队列处理中新近引入的竞态条件", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "f8c115b0b7d1478414e6e462bfe38411a65beff442ae4adc4d20ab3622b9da24", "section_path": ["变更"], "commit_groups": [["40f2fbe71", "60d6c7143", "8a4069766", "9c83b54a9", "cbc7a7a10", "f5de090cc", "f6324bbbe"]], "identity_text": "Fix recently-introduced race conditions in LISTEN/NOTIFY queue handling (Tom Lane) A newly-listening backend could attempt to read SLRU pages that were in process of being truncated, possibly causing an error. The queue tail pointer could become set to a value that's not equal to the queue position of any backend, resulting in effective disabling of the queue truncation logic. Continued use of NOTIFY then led to queue-fill warnings, and eventually to inability to send any more notifies until the server is restarted.", "commit_aliases": ["40f2fbe71", "60d6c7143", "8a4069766", "9c83b54a9", "cbc7a7a10", "f5de090cc", "f6324bbbe"], "source_commits": ["60d6c7143"], "source_entry_id": "9.5.25/changes/014", "db_id": "8d4a739a104f6fcb2e552035812da17f", "patch_ids": ["ea98013d52c6be2ab647d4476de3a52f"], "statement_hash": "aef50eaf19ec84d11a1b8fcc54d19020bb098d8f07e2e15d8bcb78cc68ddd3f8", "relations": [{"rule": 2, "type": "equivalent", "target": "0bf73cc3e92e396b8b7b8ef47ad0ed94", "evidence": {"same_day": true, "patch_ids": ["ea98013d52c6be2ab647d4476de3a52f"], "statement_hash": "aef50eaf19ec84d11a1b8fcc54d19020bb098d8f07e2e15d8bcb78cc68ddd3f8"}}, {"rule": 2, "type": "equivalent", "target": "4f36e867669616cefd25a3591d90ffd3", "evidence": {"same_day": true, "patch_ids": ["ea98013d52c6be2ab647d4476de3a52f"], "statement_hash": "aef50eaf19ec84d11a1b8fcc54d19020bb098d8f07e2e15d8bcb78cc68ddd3f8"}}, {"rule": 2, "type": "equivalent", "target": "7440d30cb4ded44aef75709a7d425fe4", "evidence": {"same_day": true, "patch_ids": ["ea98013d52c6be2ab647d4476de3a52f"], "statement_hash": "aef50eaf19ec84d11a1b8fcc54d19020bb098d8f07e2e15d8bcb78cc68ddd3f8"}}, {"rule": 2, "type": "equivalent", "target": "7f1b660f6cf2d7c9e7f41a8bc976dc8c", "evidence": {"same_day": true, "patch_ids": ["ea98013d52c6be2ab647d4476de3a52f"]}}, {"rule": 2, "type": "equivalent", "target": "9eac3ad779207a104ee19f411657cc23", "evidence": {"same_day": true, "patch_ids": ["ea98013d52c6be2ab647d4476de3a52f"], "statement_hash": "aef50eaf19ec84d11a1b8fcc54d19020bb098d8f07e2e15d8bcb78cc68ddd3f8"}}], "version": "9.5.25", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "7f1b660f6cf2d7c9e7f41a8bc976dc8c", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "修复最近在 LISTEN/NOTIFY 队列处理中引入的竞争条件", "evidence": {"same_day": true, "patch_ids": ["ea98013d52c6be2ab647d4476de3a52f"]}, "url": "/docs/compare/?release=13.2#13.2-8b2573ca20f9058f", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "4f36e867669616cefd25a3591d90ffd3", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "修复最近在 LISTEN/NOTIFY 队列处理中引入的竞争条件", "evidence": {"same_day": true, "patch_ids": ["ea98013d52c6be2ab647d4476de3a52f"], "statement_hash": "aef50eaf19ec84d11a1b8fcc54d19020bb098d8f07e2e15d8bcb78cc68ddd3f8"}, "url": "/docs/compare/?release=12.6#12.6-4318846d64653bfa", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "0bf73cc3e92e396b8b7b8ef47ad0ed94", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "修复最近在 LISTEN/NOTIFY 队列处理中引入的竞争条件", "evidence": {"same_day": true, "patch_ids": ["ea98013d52c6be2ab647d4476de3a52f"], "statement_hash": "aef50eaf19ec84d11a1b8fcc54d19020bb098d8f07e2e15d8bcb78cc68ddd3f8"}, "url": "/docs/compare/?release=11.11#11.11-8bcb47c812aa446e", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "9eac3ad779207a104ee19f411657cc23", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "修复最近在 LISTEN/NOTIFY 队列处理中引入的竞争条件", "evidence": {"same_day": true, "patch_ids": ["ea98013d52c6be2ab647d4476de3a52f"], "statement_hash": "aef50eaf19ec84d11a1b8fcc54d19020bb098d8f07e2e15d8bcb78cc68ddd3f8"}, "url": "/docs/compare/?release=10.16#10.16-8bcb47c812aa446e", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "7440d30cb4ded44aef75709a7d425fe4", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "修复 LISTEN/NOTIFY 队列处理中新近引入的竞态条件", "evidence": {"same_day": true, "patch_ids": ["ea98013d52c6be2ab647d4476de3a52f"], "statement_hash": "aef50eaf19ec84d11a1b8fcc54d19020bb098d8f07e2e15d8bcb78cc68ddd3f8"}, "url": "/docs/compare/?release=9.6.21#9.6.21-275abb16981ff38f", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-c426e60c3567d25e", "cves": [], "html": "<p>      允许 <code>jsonb</code> 连接操作符处理 JSON 数据类型的所有组合（Tom Lane）\n     </p><p>      我们可以连接两个 JSON 对象或两个 JSON 数组。其他情况通过把非数组输入包装成单元素数组再执行数组连接来处理。此前，某些输入组合遵循此规则，另一些则任意地抛出错误。\n     </p>", "text": "允许 jsonb 连接操作符处理 JSON 数据类型的所有组合（Tom Lane） 我们可以连接两个 JSON 对象或两个 JSON 数组。其他情况通过把非数组输入包装成单元素数组再执行数组连接来处理。此前，某些输入组合遵循此规则，另一些则任意地抛出错误。", "title": "允许 jsonb 连接操作符处理 JSON 数据类型的所有组合", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "dcb4f4c66568eef7d36c26f5100c657a7d342bebadb3b311656c4fec9c6a3905", "section_path": ["变更"], "commit_groups": [["1d5f3f976", "38bef9e43", "38d30a14b", "542248f9d", "75c8ef5ae", "edcdbc44e", "ff5d5611c"]], "identity_text": "Allow the jsonb concatenation operator to handle all combinations of JSON data types (Tom Lane) We can concatenate two JSON objects or two JSON arrays. Handle other cases by wrapping non-array inputs in one-element arrays, then performing an array concatenation. Previously, some combinations of inputs followed this rule but others arbitrarily threw an error.", "commit_aliases": ["1d5f3f976", "38bef9e43", "38d30a14b", "542248f9d", "75c8ef5ae", "edcdbc44e", "ff5d5611c"], "source_commits": ["edcdbc44e"], "source_entry_id": "9.5.25/changes/015", "db_id": "b6c0b49e9ab8978617cd32bb25db2d9a", "patch_ids": ["5ed799927271d5a1dcd801fb141eeaf0"], "statement_hash": "403ddc45ba47e71aa239099a08f7217e5f8adfb12b59c6860d4d562f6053dd5d", "relations": [{"rule": 2, "type": "equivalent", "target": "0c2bc94740c986e4ff61424643df510c", "evidence": {"same_day": true, "patch_ids": ["5ed799927271d5a1dcd801fb141eeaf0"], "statement_hash": "403ddc45ba47e71aa239099a08f7217e5f8adfb12b59c6860d4d562f6053dd5d"}}, {"rule": 2, "type": "equivalent", "target": "7f671eec85cdff6361bb278d507f2096", "evidence": {"same_day": true, "patch_ids": ["5ed799927271d5a1dcd801fb141eeaf0"], "statement_hash": "403ddc45ba47e71aa239099a08f7217e5f8adfb12b59c6860d4d562f6053dd5d"}}, {"rule": 2, "type": "equivalent", "target": "87044083e958310e18dffe61a245164f", "evidence": {"same_day": true, "patch_ids": ["5ed799927271d5a1dcd801fb141eeaf0"], "statement_hash": "403ddc45ba47e71aa239099a08f7217e5f8adfb12b59c6860d4d562f6053dd5d"}}, {"rule": 2, "type": "equivalent", "target": "93d7b6ccd36ac19c542c07094682ad7b", "evidence": {"same_day": true, "patch_ids": ["5ed799927271d5a1dcd801fb141eeaf0"], "statement_hash": "403ddc45ba47e71aa239099a08f7217e5f8adfb12b59c6860d4d562f6053dd5d"}}, {"rule": 2, "type": "equivalent", "target": "b6ecd32d870e73bdcc62baa1fb18206e", "evidence": {"same_day": true, "patch_ids": ["5ed799927271d5a1dcd801fb141eeaf0"], "statement_hash": "403ddc45ba47e71aa239099a08f7217e5f8adfb12b59c6860d4d562f6053dd5d"}}], "version": "9.5.25", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "93d7b6ccd36ac19c542c07094682ad7b", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "允许 jsonb 连接操作符处理所有 JSON 数据类型组合", "evidence": {"same_day": true, "patch_ids": ["5ed799927271d5a1dcd801fb141eeaf0"], "statement_hash": "403ddc45ba47e71aa239099a08f7217e5f8adfb12b59c6860d4d562f6053dd5d"}, "url": "/docs/compare/?release=13.2#13.2-e3de59e9f6540723", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "87044083e958310e18dffe61a245164f", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "允许 jsonb 连接操作符处理所有 JSON 数据类型组合", "evidence": {"same_day": true, "patch_ids": ["5ed799927271d5a1dcd801fb141eeaf0"], "statement_hash": "403ddc45ba47e71aa239099a08f7217e5f8adfb12b59c6860d4d562f6053dd5d"}, "url": "/docs/compare/?release=12.6#12.6-5fcd429eb0b12445", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "0c2bc94740c986e4ff61424643df510c", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "允许 jsonb 连接操作符处理所有 JSON 数据类型组合", "evidence": {"same_day": true, "patch_ids": ["5ed799927271d5a1dcd801fb141eeaf0"], "statement_hash": "403ddc45ba47e71aa239099a08f7217e5f8adfb12b59c6860d4d562f6053dd5d"}, "url": "/docs/compare/?release=11.11#11.11-c23fbc12ac3d63aa", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "b6ecd32d870e73bdcc62baa1fb18206e", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "允许 jsonb 连接操作符处理所有 JSON 数据类型组合", "evidence": {"same_day": true, "patch_ids": ["5ed799927271d5a1dcd801fb141eeaf0"], "statement_hash": "403ddc45ba47e71aa239099a08f7217e5f8adfb12b59c6860d4d562f6053dd5d"}, "url": "/docs/compare/?release=10.16#10.16-c23fbc12ac3d63aa", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "7f671eec85cdff6361bb278d507f2096", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "允许 jsonb 连接操作符处理 JSON 数据类型的所有组合", "evidence": {"same_day": true, "patch_ids": ["5ed799927271d5a1dcd801fb141eeaf0"], "statement_hash": "403ddc45ba47e71aa239099a08f7217e5f8adfb12b59c6860d4d562f6053dd5d"}, "url": "/docs/compare/?release=9.6.21#9.6.21-c426e60c3567d25e", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-74da9d2a00b46289", "cves": [], "html": "<p>      修复 BRE 模式正则表达式中解析 <code>*</code> 量词时使用未初始化值的问题（Tom Lane）\n     </p><p>      这个错误可能导致量词表现为非贪婪，即表现得像完整正则表达式中的\n      <code>*?</code> 量词那样。\n     </p>", "text": "修复 BRE 模式正则表达式中解析 * 量词时使用未初始化值的问题（Tom Lane） 这个错误可能导致量词表现为非贪婪，即表现得像完整正则表达式中的 *? 量词那样。", "title": "修复 BRE 模式正则表达式中解析 * 量词时使用未初始化值的问题", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "860162dadd3cc9fba0d3d0ce03a6be081ab0cac1cde24cf2f7e896399c7261bd", "section_path": ["变更"], "commit_groups": [["085a1cfb3", "0c23f30fa", "2d540ac5f", "49c928c0c", "769908811", "8354371d0", "afcc8772e"]], "identity_text": "Fix use of uninitialized value while parsing a * quantifier in a BRE-mode regular expression (Tom Lane) This error could cause the quantifier to act non-greedy, that is behave like a *? quantifier would do in full regular expressions.", "commit_aliases": ["085a1cfb3", "0c23f30fa", "2d540ac5f", "49c928c0c", "769908811", "8354371d0", "afcc8772e"], "source_commits": ["0c23f30fa"], "source_entry_id": "9.5.25/changes/016", "db_id": "ce360f5d545a6cb90bf66bffaf9c2c45", "patch_ids": ["f24be14205c106551bb667154aa08f09"], "statement_hash": "3c9a5e1d9e972be54e82c8213c9cf18a49366243530e0b0fcb2323a0374f2cfb", "relations": [{"rule": 2, "type": "equivalent", "target": "74002289ed03d453966dc62f078aaba8", "evidence": {"same_day": true, "patch_ids": ["f24be14205c106551bb667154aa08f09"], "statement_hash": "3c9a5e1d9e972be54e82c8213c9cf18a49366243530e0b0fcb2323a0374f2cfb"}}, {"rule": 2, "type": "equivalent", "target": "99795ae89a9f2f0a886fb74a7ccfee0e", "evidence": {"same_day": true, "patch_ids": ["f24be14205c106551bb667154aa08f09"], "statement_hash": "3c9a5e1d9e972be54e82c8213c9cf18a49366243530e0b0fcb2323a0374f2cfb"}}, {"rule": 2, "type": "equivalent", "target": "a0afd625230c61a1d9194e23022131a1", "evidence": {"same_day": true, "patch_ids": ["f24be14205c106551bb667154aa08f09"], "statement_hash": "3c9a5e1d9e972be54e82c8213c9cf18a49366243530e0b0fcb2323a0374f2cfb"}}, {"rule": 2, "type": "equivalent", "target": "ccb52c73d830b6a15208b6b332ff4c5b", "evidence": {"same_day": true, "patch_ids": ["f24be14205c106551bb667154aa08f09"], "statement_hash": "3c9a5e1d9e972be54e82c8213c9cf18a49366243530e0b0fcb2323a0374f2cfb"}}, {"rule": 2, "type": "equivalent", "target": "e2f8fb6a9a20f77c454d599a131ff712", "evidence": {"same_day": true, "patch_ids": ["f24be14205c106551bb667154aa08f09"], "statement_hash": "3c9a5e1d9e972be54e82c8213c9cf18a49366243530e0b0fcb2323a0374f2cfb"}}], "version": "9.5.25", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "e2f8fb6a9a20f77c454d599a131ff712", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "修复解析 BRE 模式正则表达式中的 * 量词时使用未初始化值的问题", "evidence": {"same_day": true, "patch_ids": ["f24be14205c106551bb667154aa08f09"], "statement_hash": "3c9a5e1d9e972be54e82c8213c9cf18a49366243530e0b0fcb2323a0374f2cfb"}, "url": "/docs/compare/?release=13.2#13.2-3b1628b56821d4af", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "ccb52c73d830b6a15208b6b332ff4c5b", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "修复解析 BRE 模式正则表达式中的 * 量词时使用未初始化值的问题", "evidence": {"same_day": true, "patch_ids": ["f24be14205c106551bb667154aa08f09"], "statement_hash": "3c9a5e1d9e972be54e82c8213c9cf18a49366243530e0b0fcb2323a0374f2cfb"}, "url": "/docs/compare/?release=12.6#12.6-d58432140f841538", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "a0afd625230c61a1d9194e23022131a1", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "修复解析 BRE 模式正则表达式中的 * 量词时使用未初始化值的问题", "evidence": {"same_day": true, "patch_ids": ["f24be14205c106551bb667154aa08f09"], "statement_hash": "3c9a5e1d9e972be54e82c8213c9cf18a49366243530e0b0fcb2323a0374f2cfb"}, "url": "/docs/compare/?release=11.11#11.11-aa149163810a31e9", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "99795ae89a9f2f0a886fb74a7ccfee0e", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "修复解析 BRE 模式正则表达式中的 * 量词时使用未初始化值的问题", "evidence": {"same_day": true, "patch_ids": ["f24be14205c106551bb667154aa08f09"], "statement_hash": "3c9a5e1d9e972be54e82c8213c9cf18a49366243530e0b0fcb2323a0374f2cfb"}, "url": "/docs/compare/?release=10.16#10.16-aa149163810a31e9", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "74002289ed03d453966dc62f078aaba8", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "修复 BRE 模式正则表达式中解析 * 量词时使用未初始化值的问题", "evidence": {"same_day": true, "patch_ids": ["f24be14205c106551bb667154aa08f09"], "statement_hash": "3c9a5e1d9e972be54e82c8213c9cf18a49366243530e0b0fcb2323a0374f2cfb"}, "url": "/docs/compare/?release=9.6.21#9.6.21-74da9d2a00b46289", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-2b67fa6478ab6421", "cves": [], "html": "<p>      防止因错误检测 SLRU 日志回卷点而可能发生的的数据丢失（Noah Misch）\n     </p><p>      回卷点通常落在页中间，必须把它舍入到页边界，而这一步没有正确完成。除非安装已经到达距 SLRU 溢出不到一页的位置（在正常运行的系统中不太可能），否则不会出现问题。如果真的发生，之后会表现为<span>“<span>apparent wraparound</span>”</span>或<span>“<span>could not access\n      status of transaction</span>”</span>错误。\n     </p>", "text": "防止因错误检测 SLRU 日志回卷点而可能发生的的数据丢失（Noah Misch） 回卷点通常落在页中间，必须把它舍入到页边界，而这一步没有正确完成。除非安装已经到达距 SLRU 溢出不到一页的位置（在正常运行的系统中不太可能），否则不会出现问题。如果真的发生，之后会表现为“apparent wraparound”或“could not access status of transaction”错误。", "title": "防止因错误检测 SLRU 日志回卷点而可能发生的的数据丢失", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "622ae35637925cfd8894f6e7782c3fead9be1f05ee5efbe8f45faf069e46033b", "section_path": ["变更"], "commit_groups": [["1a31d8c52", "66087f7e9", "677f6cb1d", "6db992833", "6eb3fc7fc", "9afba9b0e", "c424c75f5"]], "identity_text": "Prevent possible data loss from incorrect detection of the wraparound point of an SLRU log (Noah Misch) The wraparound point typically falls in the middle of a page, which must be rounded off to a page boundary, and that was not done correctly. No issue could arise unless an installation had gotten to within one page of SLRU overflow, which is unlikely in a properly-functioning system. If this did happen, it would manifest in later apparent wraparound or could not access status of transaction errors.", "commit_aliases": ["1a31d8c52", "66087f7e9", "677f6cb1d", "6db992833", "6eb3fc7fc", "9afba9b0e", "c424c75f5"], "source_commits": ["c424c75f5"], "source_entry_id": "9.5.25/changes/017", "db_id": "a8dcf351c2c3ebb25cf0c94c4cdccd8b", "patch_ids": ["43edf42b8d0af7448c1134c6e0a51932"], "statement_hash": "74815865e964e4a540aa47551ac5f1743036a88d734402c5d1dbbc0f631dda41", "relations": [{"rule": 2, "type": "equivalent", "target": "15976083a26505a6d47ec9965e23b80b", "evidence": {"same_day": true, "patch_ids": ["43edf42b8d0af7448c1134c6e0a51932"], "statement_hash": "74815865e964e4a540aa47551ac5f1743036a88d734402c5d1dbbc0f631dda41"}}, {"rule": 2, "type": "equivalent", "target": "3e20cf24a2c485ff94decaa8471617f6", "evidence": {"same_day": true, "patch_ids": ["43edf42b8d0af7448c1134c6e0a51932"], "statement_hash": "74815865e964e4a540aa47551ac5f1743036a88d734402c5d1dbbc0f631dda41"}}, {"rule": 2, "type": "equivalent", "target": "8a91acd484f811761b08816ea4a34663", "evidence": {"same_day": true, "patch_ids": ["43edf42b8d0af7448c1134c6e0a51932"], "statement_hash": "74815865e964e4a540aa47551ac5f1743036a88d734402c5d1dbbc0f631dda41"}}, {"rule": 2, "type": "equivalent", "target": "9d6fefefda4424ff256117d078fb3a83", "evidence": {"same_day": true, "patch_ids": ["43edf42b8d0af7448c1134c6e0a51932"], "statement_hash": "74815865e964e4a540aa47551ac5f1743036a88d734402c5d1dbbc0f631dda41"}}, {"rule": 2, "type": "equivalent", "target": "d78826c6d098cf8fdd1a0a4ed2e9b95d", "evidence": {"same_day": true, "patch_ids": ["43edf42b8d0af7448c1134c6e0a51932"], "statement_hash": "74815865e964e4a540aa47551ac5f1743036a88d734402c5d1dbbc0f631dda41"}}], "version": "9.5.25", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "9d6fefefda4424ff256117d078fb3a83", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "防止因错误检测 SLRU 日志的回卷点而可能造成的数据丢失", "evidence": {"same_day": true, "patch_ids": ["43edf42b8d0af7448c1134c6e0a51932"], "statement_hash": "74815865e964e4a540aa47551ac5f1743036a88d734402c5d1dbbc0f631dda41"}, "url": "/docs/compare/?release=13.2#13.2-2eba45e485ce170f", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "15976083a26505a6d47ec9965e23b80b", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "防止因错误检测 SLRU 日志的回卷点而可能造成的数据丢失", "evidence": {"same_day": true, "patch_ids": ["43edf42b8d0af7448c1134c6e0a51932"], "statement_hash": "74815865e964e4a540aa47551ac5f1743036a88d734402c5d1dbbc0f631dda41"}, "url": "/docs/compare/?release=12.6#12.6-b019c5b0cb3344a6", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "3e20cf24a2c485ff94decaa8471617f6", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "防止因错误检测 SLRU 日志的回卷点而可能造成的数据丢失", "evidence": {"same_day": true, "patch_ids": ["43edf42b8d0af7448c1134c6e0a51932"], "statement_hash": "74815865e964e4a540aa47551ac5f1743036a88d734402c5d1dbbc0f631dda41"}, "url": "/docs/compare/?release=11.11#11.11-fcd856aa9415f57e", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "8a91acd484f811761b08816ea4a34663", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "防止因错误检测 SLRU 日志的回卷点而可能造成的数据丢失", "evidence": {"same_day": true, "patch_ids": ["43edf42b8d0af7448c1134c6e0a51932"], "statement_hash": "74815865e964e4a540aa47551ac5f1743036a88d734402c5d1dbbc0f631dda41"}, "url": "/docs/compare/?release=10.16#10.16-fcd856aa9415f57e", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "d78826c6d098cf8fdd1a0a4ed2e9b95d", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "防止因错误检测 SLRU 日志回卷点而可能发生的的数据丢失", "evidence": {"same_day": true, "patch_ids": ["43edf42b8d0af7448c1134c6e0a51932"], "statement_hash": "74815865e964e4a540aa47551ac5f1743036a88d734402c5d1dbbc0f631dda41"}, "url": "/docs/compare/?release=9.6.21#9.6.21-2b67fa6478ab6421", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-f9c9dac274a4b5c8", "cves": [], "html": "<p>      修复 walsender 进程在为逻辑解码发送新快照期间的内存泄漏（Amit Kapila）\n     </p>", "text": "修复 walsender 进程在为逻辑解码发送新快照期间的内存泄漏（Amit Kapila）", "title": "修复 walsender 进程在为逻辑解码发送新快照期间的内存泄漏", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "d2705da4eae681dda4108ea47f027f84d36eba682fc613b8ad59eee5a2f4d8f6", "section_path": ["变更"], "commit_groups": [["0685c5c1b", "0b2ae3c92", "4bccceaa9", "636b6f99c", "7adc408f4", "ee1b38f65", "f2b268ee0"]], "identity_text": "Fix memory leak in walsender processes while sending new snapshots for logical decoding (Amit Kapila)", "commit_aliases": ["0685c5c1b", "0b2ae3c92", "4bccceaa9", "636b6f99c", "7adc408f4", "ee1b38f65", "f2b268ee0"], "source_commits": ["4bccceaa9"], "source_entry_id": "9.5.25/changes/018", "db_id": "c9d476cdfa617702645106e5d7708479", "patch_ids": ["5a1af854c74760936661b82bc4b40315"], "statement_hash": "0ba2c7d74cf0adba0015be64d2a810dbd7a648f4709426abca4f90e2a93d379b", "relations": [{"rule": 2, "type": "equivalent", "target": "223acd474f4edb99eabbb5ddb2c1de17", "evidence": {"same_day": true, "patch_ids": ["5a1af854c74760936661b82bc4b40315"], "statement_hash": "0ba2c7d74cf0adba0015be64d2a810dbd7a648f4709426abca4f90e2a93d379b"}}, {"rule": 2, "type": "equivalent", "target": "248168c9b873abc8f01b193d4ea3db8b", "evidence": {"same_day": true, "patch_ids": ["5a1af854c74760936661b82bc4b40315"], "statement_hash": "0ba2c7d74cf0adba0015be64d2a810dbd7a648f4709426abca4f90e2a93d379b"}}, {"rule": 2, "type": "equivalent", "target": "992b0a7048f1421bf7e451c45670a527", "evidence": {"same_day": true, "patch_ids": ["5a1af854c74760936661b82bc4b40315"], "statement_hash": "0ba2c7d74cf0adba0015be64d2a810dbd7a648f4709426abca4f90e2a93d379b"}}, {"rule": 2, "type": "equivalent", "target": "a6aa39364fd044803679df8a8b257492", "evidence": {"same_day": true, "patch_ids": ["5a1af854c74760936661b82bc4b40315"], "statement_hash": "0ba2c7d74cf0adba0015be64d2a810dbd7a648f4709426abca4f90e2a93d379b"}}, {"rule": 2, "type": "equivalent", "target": "ae92861fd5ea74b7c9fbe52d83cb6080", "evidence": {"same_day": true, "patch_ids": ["5a1af854c74760936661b82bc4b40315"], "statement_hash": "0ba2c7d74cf0adba0015be64d2a810dbd7a648f4709426abca4f90e2a93d379b"}}], "version": "9.5.25", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "992b0a7048f1421bf7e451c45670a527", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "修复 WAL 发送进程进程为逻辑解码发送新快照时的内存泄漏", "evidence": {"same_day": true, "patch_ids": ["5a1af854c74760936661b82bc4b40315"], "statement_hash": "0ba2c7d74cf0adba0015be64d2a810dbd7a648f4709426abca4f90e2a93d379b"}, "url": "/docs/compare/?release=13.2#13.2-56ad1633a063bb4f", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "223acd474f4edb99eabbb5ddb2c1de17", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "修复 WAL 发送进程进程为逻辑解码发送新快照时的内存泄漏", "evidence": {"same_day": true, "patch_ids": ["5a1af854c74760936661b82bc4b40315"], "statement_hash": "0ba2c7d74cf0adba0015be64d2a810dbd7a648f4709426abca4f90e2a93d379b"}, "url": "/docs/compare/?release=12.6#12.6-8e850d071919e267", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "a6aa39364fd044803679df8a8b257492", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "修复 WAL 发送进程进程为逻辑解码发送新快照时的内存泄漏", "evidence": {"same_day": true, "patch_ids": ["5a1af854c74760936661b82bc4b40315"], "statement_hash": "0ba2c7d74cf0adba0015be64d2a810dbd7a648f4709426abca4f90e2a93d379b"}, "url": "/docs/compare/?release=11.11#11.11-fb0ceb94d9c75cbf", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "ae92861fd5ea74b7c9fbe52d83cb6080", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "修复 WAL 发送进程进程为逻辑解码发送新快照时的内存泄漏", "evidence": {"same_day": true, "patch_ids": ["5a1af854c74760936661b82bc4b40315"], "statement_hash": "0ba2c7d74cf0adba0015be64d2a810dbd7a648f4709426abca4f90e2a93d379b"}, "url": "/docs/compare/?release=10.16#10.16-fb0ceb94d9c75cbf", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "248168c9b873abc8f01b193d4ea3db8b", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "修复 walsender 进程在为逻辑解码发送新快照期间的内存泄漏", "evidence": {"same_day": true, "patch_ids": ["5a1af854c74760936661b82bc4b40315"], "statement_hash": "0ba2c7d74cf0adba0015be64d2a810dbd7a648f4709426abca4f90e2a93d379b"}, "url": "/docs/compare/?release=9.6.21#9.6.21-f9c9dac274a4b5c8", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-fc861b165d7e565a", "cves": [], "html": "<p>      修复 walsender 在终止复制之后接受其他命令的问题（Jeff Davis）\n     </p>", "text": "修复 walsender 在终止复制之后接受其他命令的问题（Jeff Davis）", "title": "修复 walsender 在终止复制之后接受其他命令的问题", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "63ee2da57e0ef0c6b111f6125ef4078b7ccfe6cc4fd4fd4cfb7317d480a87a58", "section_path": ["变更"], "commit_groups": [["133a0906d", "4ee058a3b", "706d84fe7", "a58db3aa1", "ac7df6e8f", "f10da1e9c", "fde5f130c"]], "identity_text": "Fix walsender to accept additional commands after terminating replication (Jeff Davis)", "commit_aliases": ["133a0906d", "4ee058a3b", "706d84fe7", "a58db3aa1", "ac7df6e8f", "f10da1e9c", "fde5f130c"], "source_commits": ["133a0906d"], "source_entry_id": "9.5.25/changes/019", "db_id": "e3632533a1b490faf0a6e7adf0c7bbe5", "patch_ids": ["114cacbd887f524b6efa39b9f1d67e16"], "statement_hash": "01c3cb4c26a2db836e3f6f75e2c3671456523c119069cb514345dd36e0043832", "relations": [{"rule": 2, "type": "equivalent", "target": "1bb31949c4d46ef10ecabc97100f5a93", "evidence": {"same_day": true, "patch_ids": ["114cacbd887f524b6efa39b9f1d67e16"], "statement_hash": "01c3cb4c26a2db836e3f6f75e2c3671456523c119069cb514345dd36e0043832"}}, {"rule": 2, "type": "equivalent", "target": "240031eb7995d8d60b8259f6c86980ea", "evidence": {"same_day": true, "patch_ids": ["114cacbd887f524b6efa39b9f1d67e16"], "statement_hash": "01c3cb4c26a2db836e3f6f75e2c3671456523c119069cb514345dd36e0043832"}}, {"rule": 2, "type": "equivalent", "target": "35f7f3f04c0302d296b43b7ec1d07903", "evidence": {"same_day": true, "patch_ids": ["114cacbd887f524b6efa39b9f1d67e16"], "statement_hash": "01c3cb4c26a2db836e3f6f75e2c3671456523c119069cb514345dd36e0043832"}}, {"rule": 2, "type": "equivalent", "target": "48424e1920bdbaf65bcbaa1ff3f5926f", "evidence": {"same_day": true, "patch_ids": ["114cacbd887f524b6efa39b9f1d67e16"], "statement_hash": "01c3cb4c26a2db836e3f6f75e2c3671456523c119069cb514345dd36e0043832"}}, {"rule": 2, "type": "equivalent", "target": "6ccf02ea61116b34c5472f0412965cd5", "evidence": {"same_day": true, "patch_ids": ["114cacbd887f524b6efa39b9f1d67e16"], "statement_hash": "01c3cb4c26a2db836e3f6f75e2c3671456523c119069cb514345dd36e0043832"}}], "version": "9.5.25", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "240031eb7995d8d60b8259f6c86980ea", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "修复 WAL 发送进程，使其在终止复制后接受其他命令", "evidence": {"same_day": true, "patch_ids": ["114cacbd887f524b6efa39b9f1d67e16"], "statement_hash": "01c3cb4c26a2db836e3f6f75e2c3671456523c119069cb514345dd36e0043832"}, "url": "/docs/compare/?release=13.2#13.2-0b79d4c96da2de06", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "35f7f3f04c0302d296b43b7ec1d07903", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "修复 WAL 发送进程，使其在终止复制后接受其他命令", "evidence": {"same_day": true, "patch_ids": ["114cacbd887f524b6efa39b9f1d67e16"], "statement_hash": "01c3cb4c26a2db836e3f6f75e2c3671456523c119069cb514345dd36e0043832"}, "url": "/docs/compare/?release=12.6#12.6-3c6889ebbbc7cca0", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "6ccf02ea61116b34c5472f0412965cd5", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "修复 WAL 发送进程，使其在终止复制后接受其他命令", "evidence": {"same_day": true, "patch_ids": ["114cacbd887f524b6efa39b9f1d67e16"], "statement_hash": "01c3cb4c26a2db836e3f6f75e2c3671456523c119069cb514345dd36e0043832"}, "url": "/docs/compare/?release=11.11#11.11-51aa84460a9a3edb", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "1bb31949c4d46ef10ecabc97100f5a93", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "修复 WAL 发送进程，使其在终止复制后接受其他命令", "evidence": {"same_day": true, "patch_ids": ["114cacbd887f524b6efa39b9f1d67e16"], "statement_hash": "01c3cb4c26a2db836e3f6f75e2c3671456523c119069cb514345dd36e0043832"}, "url": "/docs/compare/?release=10.16#10.16-51aa84460a9a3edb", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "48424e1920bdbaf65bcbaa1ff3f5926f", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "修复 walsender 在终止复制之后接受其他命令的问题", "evidence": {"same_day": true, "patch_ids": ["114cacbd887f524b6efa39b9f1d67e16"], "statement_hash": "01c3cb4c26a2db836e3f6f75e2c3671456523c119069cb514345dd36e0043832"}, "url": "/docs/compare/?release=9.6.21#9.6.21-fc861b165d7e565a", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-fb3daa89a2c822c7", "cves": [], "html": "<p>      避免检查带 <code>TRANSFORM</code> 选项的函数时\n      <code>pg_get_functiondef()</code> 的断言失败（Tom Lane）\n     </p>", "text": "避免检查带 TRANSFORM 选项的函数时 pg_get_functiondef() 的断言失败（Tom Lane）", "title": "避免检查带 TRANSFORM 选项的函数时 pg_get_functiondef() 的断言失败", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "ab5584987078be63391ffdfbc909158f8239e57a3fbd41e118c0a6d4f5d19dbc", "section_path": ["变更"], "commit_groups": [["07d46fceb", "41309f716", "4641b2a30", "57a7d6f49", "a26194f22", "a7cdd3f71", "d09e8789f"]], "identity_text": "Avoid assertion failure in pg_get_functiondef() when examining a function with a TRANSFORM option (Tom Lane)", "commit_aliases": ["07d46fceb", "41309f716", "4641b2a30", "57a7d6f49", "a26194f22", "a7cdd3f71", "d09e8789f"], "source_commits": ["41309f716"], "source_entry_id": "9.5.25/changes/020", "db_id": "165e7d1d8fb573ec5454891482affe6a", "patch_ids": ["45324432e8f42c11c163e8732655e2c4"], "statement_hash": "cd5237e6e37e33ccf257722ecdc180e95fb9a6a67b687a055a68c595db14770b", "relations": [{"rule": 2, "type": "equivalent", "target": "0327d4a9a7300867ae1eaabccbbc374c", "evidence": {"same_day": true, "patch_ids": ["45324432e8f42c11c163e8732655e2c4"], "statement_hash": "cd5237e6e37e33ccf257722ecdc180e95fb9a6a67b687a055a68c595db14770b"}}, {"rule": 2, "type": "equivalent", "target": "555b7d01a6a22019ea5aa215db2a86bc", "evidence": {"same_day": true, "patch_ids": ["45324432e8f42c11c163e8732655e2c4"], "statement_hash": "cd5237e6e37e33ccf257722ecdc180e95fb9a6a67b687a055a68c595db14770b"}}, {"rule": 2, "type": "equivalent", "target": "849c0755c372644197f02162cb31c956", "evidence": {"same_day": true, "patch_ids": ["45324432e8f42c11c163e8732655e2c4"], "statement_hash": "cd5237e6e37e33ccf257722ecdc180e95fb9a6a67b687a055a68c595db14770b"}}, {"rule": 2, "type": "equivalent", "target": "d16766bffb4fe7b7f7afd7b4f614b439", "evidence": {"same_day": true, "patch_ids": ["45324432e8f42c11c163e8732655e2c4"], "statement_hash": "cd5237e6e37e33ccf257722ecdc180e95fb9a6a67b687a055a68c595db14770b"}}, {"rule": 2, "type": "equivalent", "target": "e4b3bf9d7ccf2a0e1eeff95c46553257", "evidence": {"same_day": true, "patch_ids": ["45324432e8f42c11c163e8732655e2c4"], "statement_hash": "cd5237e6e37e33ccf257722ecdc180e95fb9a6a67b687a055a68c595db14770b"}}], "version": "9.5.25", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "0327d4a9a7300867ae1eaabccbbc374c", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "避免 pg_get_functiondef() 检查带有 TRANSFORM 选项的函数时发生断言失败", "evidence": {"same_day": true, "patch_ids": ["45324432e8f42c11c163e8732655e2c4"], "statement_hash": "cd5237e6e37e33ccf257722ecdc180e95fb9a6a67b687a055a68c595db14770b"}, "url": "/docs/compare/?release=13.2#13.2-410b354d77a1aa49", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "555b7d01a6a22019ea5aa215db2a86bc", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "避免 pg_get_functiondef() 检查带有 TRANSFORM 选项的函数时发生断言失败", "evidence": {"same_day": true, "patch_ids": ["45324432e8f42c11c163e8732655e2c4"], "statement_hash": "cd5237e6e37e33ccf257722ecdc180e95fb9a6a67b687a055a68c595db14770b"}, "url": "/docs/compare/?release=12.6#12.6-62b7e4a3a80e339f", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "e4b3bf9d7ccf2a0e1eeff95c46553257", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "避免 pg_get_functiondef() 检查带有 TRANSFORM 选项的函数时发生断言失败", "evidence": {"same_day": true, "patch_ids": ["45324432e8f42c11c163e8732655e2c4"], "statement_hash": "cd5237e6e37e33ccf257722ecdc180e95fb9a6a67b687a055a68c595db14770b"}, "url": "/docs/compare/?release=11.11#11.11-23bf9c390348a033", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "849c0755c372644197f02162cb31c956", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "避免 pg_get_functiondef() 检查带有 TRANSFORM 选项的函数时发生断言失败", "evidence": {"same_day": true, "patch_ids": ["45324432e8f42c11c163e8732655e2c4"], "statement_hash": "cd5237e6e37e33ccf257722ecdc180e95fb9a6a67b687a055a68c595db14770b"}, "url": "/docs/compare/?release=10.16#10.16-23bf9c390348a033", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "d16766bffb4fe7b7f7afd7b4f614b439", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "避免检查带 TRANSFORM 选项的函数时 pg_get_functiondef() 的断言失败", "evidence": {"same_day": true, "patch_ids": ["45324432e8f42c11c163e8732655e2c4"], "statement_hash": "cd5237e6e37e33ccf257722ecdc180e95fb9a6a67b687a055a68c595db14770b"}, "url": "/docs/compare/?release=9.6.21#9.6.21-fb3daa89a2c822c7", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-cc6d217bba445efd", "cves": [], "html": "<p>      在 <span>psql</span> 中，重新允许在 <code>\\connect</code>\n      命令的 <em><code>connection_string</code></em> 参数中包含密码（Tom Lane）\n     </p><p>      这过去可以工作，但最近的一次 bug 修复导致密码被忽略（结果是提示输入密码）。\n     </p>", "text": "在 psql 中，重新允许在 \\connect 命令的 connection_string 参数中包含密码（Tom Lane） 这过去可以工作，但最近的一次 bug 修复导致密码被忽略（结果是提示输入密码）。", "title": "在 psql 中，重新允许在 \\connect 命令的 connection_string 参数中包含密码", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "841e03c6006eb001794001b74cadd0f9296907400c4697971326745265e4db4f", "section_path": ["变更"], "commit_groups": [["3958abdad", "3f59a05f0", "72b930f50", "777ac03a6", "7e5e1bba0", "946277fd4", "e2d5de150"]], "identity_text": "In psql, re-allow including a password in a connection_string argument of a \\connect command (Tom Lane) This used to work, but a recent bug fix caused the password to be ignored (resulting in prompting for a password).", "commit_aliases": ["3958abdad", "3f59a05f0", "72b930f50", "777ac03a6", "7e5e1bba0", "946277fd4", "e2d5de150"], "source_commits": ["e2d5de150"], "source_entry_id": "9.5.25/changes/021", "db_id": "8448f70b74221637125f8f640aaa199c", "patch_ids": ["e02be74e0a481c81f894cd7a231efb62"], "statement_hash": "9b914552672df8415de82ef578971eece6fe580bed6eaaba49ccb7321b567710", "relations": [{"rule": 2, "type": "equivalent", "target": "09b5a087c22bf206ee9d103d890fa85a", "evidence": {"same_day": true, "patch_ids": ["e02be74e0a481c81f894cd7a231efb62"], "statement_hash": "9b914552672df8415de82ef578971eece6fe580bed6eaaba49ccb7321b567710"}}, {"rule": 2, "type": "equivalent", "target": "738cdf20526fdb30ff11c437290c0fcb", "evidence": {"same_day": true, "patch_ids": ["e02be74e0a481c81f894cd7a231efb62"], "statement_hash": "9b914552672df8415de82ef578971eece6fe580bed6eaaba49ccb7321b567710"}}, {"rule": 2, "type": "equivalent", "target": "8ff5c4e0e8e16923d3a32b4962370668", "evidence": {"same_day": true, "patch_ids": ["e02be74e0a481c81f894cd7a231efb62"], "statement_hash": "9b914552672df8415de82ef578971eece6fe580bed6eaaba49ccb7321b567710"}}, {"rule": 2, "type": "equivalent", "target": "9f809e3dbb722ce78c5acca3d5adea6d", "evidence": {"same_day": true, "patch_ids": ["e02be74e0a481c81f894cd7a231efb62"], "statement_hash": "9b914552672df8415de82ef578971eece6fe580bed6eaaba49ccb7321b567710"}}, {"rule": 2, "type": "equivalent", "target": "b212d7783359ee0af735b70cbfa125c2", "evidence": {"same_day": true, "patch_ids": ["e02be74e0a481c81f894cd7a231efb62"], "statement_hash": "9b914552672df8415de82ef578971eece6fe580bed6eaaba49ccb7321b567710"}}], "version": "9.5.25", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "09b5a087c22bf206ee9d103d890fa85a", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "在 psql 中，重新允许在 \\connect 命令的 connection_string 参数中包含密码", "evidence": {"same_day": true, "patch_ids": ["e02be74e0a481c81f894cd7a231efb62"], "statement_hash": "9b914552672df8415de82ef578971eece6fe580bed6eaaba49ccb7321b567710"}, "url": "/docs/compare/?release=13.2#13.2-eb6e05868ca5109d", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "9f809e3dbb722ce78c5acca3d5adea6d", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "在 psql 中，重新允许在 \\connect 命令的 connection_string 参数中包含密码", "evidence": {"same_day": true, "patch_ids": ["e02be74e0a481c81f894cd7a231efb62"], "statement_hash": "9b914552672df8415de82ef578971eece6fe580bed6eaaba49ccb7321b567710"}, "url": "/docs/compare/?release=12.6#12.6-e53e029b4fb54864", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "8ff5c4e0e8e16923d3a32b4962370668", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "在 psql 中，重新允许在 \\connect 命令的 connection_string 参数中包含密码", "evidence": {"same_day": true, "patch_ids": ["e02be74e0a481c81f894cd7a231efb62"], "statement_hash": "9b914552672df8415de82ef578971eece6fe580bed6eaaba49ccb7321b567710"}, "url": "/docs/compare/?release=11.11#11.11-cc6d217bba445efd", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "b212d7783359ee0af735b70cbfa125c2", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "在 psql 中，重新允许在 \\connect 命令的 connection_string 参数中包含密码", "evidence": {"same_day": true, "patch_ids": ["e02be74e0a481c81f894cd7a231efb62"], "statement_hash": "9b914552672df8415de82ef578971eece6fe580bed6eaaba49ccb7321b567710"}, "url": "/docs/compare/?release=10.16#10.16-cc6d217bba445efd", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "738cdf20526fdb30ff11c437290c0fcb", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "在 psql 中，重新允许在 \\connect 命令的 connection_string 参数中包含密码", "evidence": {"same_day": true, "patch_ids": ["e02be74e0a481c81f894cd7a231efb62"], "statement_hash": "9b914552672df8415de82ef578971eece6fe580bed6eaaba49ccb7321b567710"}, "url": "/docs/compare/?release=9.6.21#9.6.21-cc6d217bba445efd", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-96d9a76e16a1f628", "cves": [], "html": "<p>      修复 <span>psql</span> 的 <code>\\help</code> 命令的若干 bug（Kyotaro Horiguchi、Tom Lane）\n     </p><p>      带两个参数词的 <code>\\help</code> 未能只用第一个词找到命令说明，例如 <code>\\help reset all</code> 本应显示 <code>RESET</code>\n      的帮助但没有。此外，<code>\\help</code> 常常在应该调用分页器时没有调用。它还泄漏内存。\n     </p>", "text": "修复 psql 的 \\help 命令的若干 bug（Kyotaro Horiguchi、Tom Lane） 带两个参数词的 \\help 未能只用第一个词找到命令说明，例如 \\help reset all 本应显示 RESET 的帮助但没有。此外，\\help 常常在应该调用分页器时没有调用。它还泄漏内存。", "title": "修复 psql 的 \\help 命令的若干 bug", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "6746ea04990dd454920cea8831d00b31c29005c48edf8f6f1d459e1682e78f57", "section_path": ["变更"], "commit_groups": [["131825cd5", "2c2e134b7", "3fa7b9078", "564cb2579", "64bdb6e5f", "82f97d33f", "f76a85000"]], "identity_text": "Fix assorted bugs in psql's \\help command (Kyotaro Horiguchi, Tom Lane) \\help with two argument words failed to find a command description using only the first word, for example \\help reset all should show the help for RESET but did not. Also, \\help often failed to invoke the pager when it should. It also leaked memory.", "commit_aliases": ["131825cd5", "2c2e134b7", "3fa7b9078", "564cb2579", "64bdb6e5f", "82f97d33f", "f76a85000"], "source_commits": ["131825cd5"], "source_entry_id": "9.5.25/changes/022", "db_id": "5f9fcf85ceef837e2b39e03e87427df7", "patch_ids": ["91e559f30d2e8addfcd3208829625296"], "statement_hash": "86c9b0c47e8100f683719f024650d6409e0c0a09fcfb02ee61e642d3b06538ab", "relations": [{"rule": 2, "type": "equivalent", "target": "0e587f8ec96b375c129cb9dd61797406", "evidence": {"same_day": true, "patch_ids": ["91e559f30d2e8addfcd3208829625296"], "statement_hash": "86c9b0c47e8100f683719f024650d6409e0c0a09fcfb02ee61e642d3b06538ab"}}, {"rule": 2, "type": "equivalent", "target": "15b25825c44bc4b291b219deedb0738f", "evidence": {"same_day": true, "patch_ids": ["91e559f30d2e8addfcd3208829625296"], "statement_hash": "86c9b0c47e8100f683719f024650d6409e0c0a09fcfb02ee61e642d3b06538ab"}}, {"rule": 2, "type": "equivalent", "target": "49e7dc96e00deaa82f7a77442fd14b34", "evidence": {"same_day": true, "patch_ids": ["91e559f30d2e8addfcd3208829625296"], "statement_hash": "86c9b0c47e8100f683719f024650d6409e0c0a09fcfb02ee61e642d3b06538ab"}}, {"rule": 2, "type": "equivalent", "target": "8bebd658e1744553c03f57d186cc5766", "evidence": {"same_day": true, "patch_ids": ["91e559f30d2e8addfcd3208829625296"], "statement_hash": "86c9b0c47e8100f683719f024650d6409e0c0a09fcfb02ee61e642d3b06538ab"}}, {"rule": 2, "type": "equivalent", "target": "a44fc1e5b581c2dc76e0a121b458b562", "evidence": {"same_day": true, "patch_ids": ["91e559f30d2e8addfcd3208829625296"], "statement_hash": "86c9b0c47e8100f683719f024650d6409e0c0a09fcfb02ee61e642d3b06538ab"}}], "version": "9.5.25", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "a44fc1e5b581c2dc76e0a121b458b562", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "修复 psql 的 \\help 命令中的多种缺陷", "evidence": {"same_day": true, "patch_ids": ["91e559f30d2e8addfcd3208829625296"], "statement_hash": "86c9b0c47e8100f683719f024650d6409e0c0a09fcfb02ee61e642d3b06538ab"}, "url": "/docs/compare/?release=13.2#13.2-e90a55ab80aa53e9", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "8bebd658e1744553c03f57d186cc5766", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "修复 psql 的 \\help 命令中的多种缺陷", "evidence": {"same_day": true, "patch_ids": ["91e559f30d2e8addfcd3208829625296"], "statement_hash": "86c9b0c47e8100f683719f024650d6409e0c0a09fcfb02ee61e642d3b06538ab"}, "url": "/docs/compare/?release=12.6#12.6-245814368820fa83", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "49e7dc96e00deaa82f7a77442fd14b34", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "修复 psql 的 \\help 命令中的多种缺陷", "evidence": {"same_day": true, "patch_ids": ["91e559f30d2e8addfcd3208829625296"], "statement_hash": "86c9b0c47e8100f683719f024650d6409e0c0a09fcfb02ee61e642d3b06538ab"}, "url": "/docs/compare/?release=11.11#11.11-24cfe2632f495571", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "0e587f8ec96b375c129cb9dd61797406", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "修复 psql 的 \\help 命令中的多种缺陷", "evidence": {"same_day": true, "patch_ids": ["91e559f30d2e8addfcd3208829625296"], "statement_hash": "86c9b0c47e8100f683719f024650d6409e0c0a09fcfb02ee61e642d3b06538ab"}, "url": "/docs/compare/?release=10.16#10.16-24cfe2632f495571", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "15b25825c44bc4b291b219deedb0738f", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "修复 psql 的 \\help 命令的若干 bug", "evidence": {"same_day": true, "patch_ids": ["91e559f30d2e8addfcd3208829625296"], "statement_hash": "86c9b0c47e8100f683719f024650d6409e0c0a09fcfb02ee61e642d3b06538ab"}, "url": "/docs/compare/?release=9.6.21#9.6.21-96d9a76e16a1f628", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-e5db4b87c44aba02", "cves": [], "html": "<p>      在 <span>pg_rewind</span> 中，确保回卷备库服务器时所有\n      WAL 都被考虑到（Ian Barwick、Heikki Linnakangas）\n     </p>", "text": "在 pg_rewind 中，确保回卷备库服务器时所有 WAL 都被考虑到（Ian Barwick、Heikki Linnakangas）", "title": "在 pg_rewind 中，确保回卷备库服务器时所有 WAL 都被考虑到", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "7bfd4c99806f30241def537c73a5d4fd420e2feb24536db0177a8b8e8bab59bf", "section_path": ["变更"], "commit_groups": [["020f153db", "0740857de", "2b4f31303", "63e316f0b", "81e3c868f", "8b5c353ec", "abd0abfb7"], ["10d9c9d03", "3ea8e660c", "6ba581cf1", "98f8cdd48", "beb6b45ab", "d137b14c3", "e6dc04d43"], ["1dd608bba", "36a4ac20f", "45d363145", "a075c84f2", "ad3fb04b9", "cda50f211", "e41a2efbc"]], "identity_text": "In pg_rewind, ensure that all WAL is accounted for when rewinding a standby server (Ian Barwick, Heikki Linnakangas)", "commit_aliases": ["020f153db", "0740857de", "10d9c9d03", "1dd608bba", "2b4f31303", "36a4ac20f", "3ea8e660c", "45d363145", "63e316f0b", "6ba581cf1", "81e3c868f", "8b5c353ec", "98f8cdd48", "a075c84f2", "abd0abfb7", "ad3fb04b9", "beb6b45ab", "cda50f211", "d137b14c3", "e41a2efbc", "e6dc04d43"], "source_commits": ["1dd608bba", "81e3c868f", "beb6b45ab"], "source_entry_id": "9.5.25/changes/023", "db_id": "1d47de8a57452fe3c338210ffbd91e81", "patch_ids": ["5f4932b73328390ee5662160cbe90a71", "71c91d3a82ceaa59e7cac093de229314", "f375855d90ee10018cb753e0fcb48b10"], "statement_hash": "014ba33559110a324b22c635ae5f052eb12e2d55677225ec9841e4bfdda2818e", "relations": [{"rule": 2, "type": "equivalent", "target": "0d52501b668c02c4ed399b56199c008f", "evidence": {"same_day": true, "patch_ids": ["5f4932b73328390ee5662160cbe90a71", "71c91d3a82ceaa59e7cac093de229314", "f375855d90ee10018cb753e0fcb48b10"], "statement_hash": "014ba33559110a324b22c635ae5f052eb12e2d55677225ec9841e4bfdda2818e"}}, {"rule": 2, "type": "equivalent", "target": "5f906c0ba42fcccf9df10cc1fabcab65", "evidence": {"same_day": true, "patch_ids": ["5f4932b73328390ee5662160cbe90a71", "71c91d3a82ceaa59e7cac093de229314", "f375855d90ee10018cb753e0fcb48b10"], "statement_hash": "014ba33559110a324b22c635ae5f052eb12e2d55677225ec9841e4bfdda2818e"}}, {"rule": 2, "type": "equivalent", "target": "7c02c8d27f0f2fc55ec230579dfd0f9b", "evidence": {"same_day": true, "patch_ids": ["5f4932b73328390ee5662160cbe90a71", "71c91d3a82ceaa59e7cac093de229314", "f375855d90ee10018cb753e0fcb48b10"], "statement_hash": "014ba33559110a324b22c635ae5f052eb12e2d55677225ec9841e4bfdda2818e"}}, {"rule": 2, "type": "equivalent", "target": "999c85b5ef55bec51f9a0f8624f198fb", "evidence": {"same_day": true, "patch_ids": ["5f4932b73328390ee5662160cbe90a71", "71c91d3a82ceaa59e7cac093de229314", "f375855d90ee10018cb753e0fcb48b10"], "statement_hash": "014ba33559110a324b22c635ae5f052eb12e2d55677225ec9841e4bfdda2818e"}}, {"rule": 2, "type": "equivalent", "target": "f8986f1636c4d1816f59d95d9a0747b3", "evidence": {"same_day": true, "patch_ids": ["5f4932b73328390ee5662160cbe90a71", "71c91d3a82ceaa59e7cac093de229314", "f375855d90ee10018cb753e0fcb48b10"], "statement_hash": "014ba33559110a324b22c635ae5f052eb12e2d55677225ec9841e4bfdda2818e"}}], "version": "9.5.25", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "999c85b5ef55bec51f9a0f8624f198fb", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "在 pg_rewind 中，确保回退备库时计入所有 WAL", "evidence": {"same_day": true, "patch_ids": ["5f4932b73328390ee5662160cbe90a71", "71c91d3a82ceaa59e7cac093de229314", "f375855d90ee10018cb753e0fcb48b10"], "statement_hash": "014ba33559110a324b22c635ae5f052eb12e2d55677225ec9841e4bfdda2818e"}, "url": "/docs/compare/?release=13.2#13.2-68d6cfb174a9d797", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "0d52501b668c02c4ed399b56199c008f", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "在 pg_rewind 中，确保回退备库时计入所有 WAL", "evidence": {"same_day": true, "patch_ids": ["5f4932b73328390ee5662160cbe90a71", "71c91d3a82ceaa59e7cac093de229314", "f375855d90ee10018cb753e0fcb48b10"], "statement_hash": "014ba33559110a324b22c635ae5f052eb12e2d55677225ec9841e4bfdda2818e"}, "url": "/docs/compare/?release=12.6#12.6-55211c0a896ce5d0", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "f8986f1636c4d1816f59d95d9a0747b3", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "在 pg_rewind 中，确保回退备库时计入所有 WAL", "evidence": {"same_day": true, "patch_ids": ["5f4932b73328390ee5662160cbe90a71", "71c91d3a82ceaa59e7cac093de229314", "f375855d90ee10018cb753e0fcb48b10"], "statement_hash": "014ba33559110a324b22c635ae5f052eb12e2d55677225ec9841e4bfdda2818e"}, "url": "/docs/compare/?release=11.11#11.11-8c4048a956453e2c", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "7c02c8d27f0f2fc55ec230579dfd0f9b", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "在 pg_rewind 中，确保回退备库时计入所有 WAL", "evidence": {"same_day": true, "patch_ids": ["5f4932b73328390ee5662160cbe90a71", "71c91d3a82ceaa59e7cac093de229314", "f375855d90ee10018cb753e0fcb48b10"], "statement_hash": "014ba33559110a324b22c635ae5f052eb12e2d55677225ec9841e4bfdda2818e"}, "url": "/docs/compare/?release=10.16#10.16-8c4048a956453e2c", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "5f906c0ba42fcccf9df10cc1fabcab65", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "在 pg_rewind 中，确保回卷备库服务器时所有 WAL 都被考虑到", "evidence": {"same_day": true, "patch_ids": ["5f4932b73328390ee5662160cbe90a71", "71c91d3a82ceaa59e7cac093de229314", "f375855d90ee10018cb753e0fcb48b10"], "statement_hash": "014ba33559110a324b22c635ae5f052eb12e2d55677225ec9841e4bfdda2818e"}, "url": "/docs/compare/?release=9.6.21#9.6.21-e5db4b87c44aba02", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-246a05d6ec85f511", "cves": [], "html": "<p>      在部分客户端程序的连接失败错误消息中报告正确的数据库名（Álvaro Herrera）\n     </p><p>      如果数据库名是默认推断而非在命令行上给出的，<span>pg_dumpall</span>、<span>pgbench</span>、<span>oid2name</span>\n      和 <span>vacuumlo</span> 在连接失败之后会产生误导性的错误消息。\n     </p>", "text": "在部分客户端程序的连接失败错误消息中报告正确的数据库名（Álvaro Herrera） 如果数据库名是默认推断而非在命令行上给出的，pg_dumpall、pgbench、oid2name 和 vacuumlo 在连接失败之后会产生误导性的错误消息。", "title": "在部分客户端程序的连接失败错误消息中报告正确的数据库名", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "212106b2d79ef062adc8c499e7297a2b1ca7c8e6b60e3dda936535d7569152bf", "section_path": ["变更"], "commit_groups": [["11a708f81", "bcae842b9", "f17e8f33f", "f2dc96236", "fdd405c63", "fdf9d0054"]], "identity_text": "Report the correct database name in connection failure error messages from some client programs (Álvaro Herrera) If the database name was defaulted rather than given on the command line, pg_dumpall, pgbench, oid2name, and vacuumlo would produce misleading error messages after a connection failure.", "commit_aliases": ["11a708f81", "bcae842b9", "f17e8f33f", "f2dc96236", "fdd405c63", "fdf9d0054"], "source_commits": ["f2dc96236"], "source_entry_id": "9.5.25/changes/024", "db_id": "ae8df56bc2e6d9cfacb34fa93a1164e9", "patch_ids": ["2b87d6ffadc4f296858b94a2654cd70e"], "statement_hash": "b18e3c734bcc5032229b5acf57479a5e24ef13f1a8bed16d7fb261dbb6b947fa", "relations": [{"rule": 2, "type": "equivalent", "target": "2d89274d1836cabf0316bd99c10a7622", "evidence": {"same_day": true, "patch_ids": ["2b87d6ffadc4f296858b94a2654cd70e"], "statement_hash": "b18e3c734bcc5032229b5acf57479a5e24ef13f1a8bed16d7fb261dbb6b947fa"}}, {"rule": 2, "type": "equivalent", "target": "7ad568b9bae3112bc90120296eeaa02b", "evidence": {"same_day": true, "patch_ids": ["2b87d6ffadc4f296858b94a2654cd70e"], "statement_hash": "b18e3c734bcc5032229b5acf57479a5e24ef13f1a8bed16d7fb261dbb6b947fa"}}, {"rule": 2, "type": "equivalent", "target": "99907bc48e9c7e79be3ee046790b0db0", "evidence": {"same_day": true, "patch_ids": ["2b87d6ffadc4f296858b94a2654cd70e"], "statement_hash": "b18e3c734bcc5032229b5acf57479a5e24ef13f1a8bed16d7fb261dbb6b947fa"}}, {"rule": 2, "type": "equivalent", "target": "c8826738a862b233b1c200ad0693533a", "evidence": {"same_day": true, "patch_ids": ["2b87d6ffadc4f296858b94a2654cd70e"], "statement_hash": "b18e3c734bcc5032229b5acf57479a5e24ef13f1a8bed16d7fb261dbb6b947fa"}}, {"rule": 2, "type": "equivalent", "target": "cc31da39bb4e66c231813b95922060ea", "evidence": {"same_day": true, "patch_ids": ["2b87d6ffadc4f296858b94a2654cd70e"], "statement_hash": "b18e3c734bcc5032229b5acf57479a5e24ef13f1a8bed16d7fb261dbb6b947fa"}}], "version": "9.5.25", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "c8826738a862b233b1c200ad0693533a", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "在某些客户端程序的连接失败错误消息中报告正确的数据库名称", "evidence": {"same_day": true, "patch_ids": ["2b87d6ffadc4f296858b94a2654cd70e"], "statement_hash": "b18e3c734bcc5032229b5acf57479a5e24ef13f1a8bed16d7fb261dbb6b947fa"}, "url": "/docs/compare/?release=13.2#13.2-631064288b363529", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "cc31da39bb4e66c231813b95922060ea", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "在某些客户端程序的连接失败错误消息中报告正确的数据库名称", "evidence": {"same_day": true, "patch_ids": ["2b87d6ffadc4f296858b94a2654cd70e"], "statement_hash": "b18e3c734bcc5032229b5acf57479a5e24ef13f1a8bed16d7fb261dbb6b947fa"}, "url": "/docs/compare/?release=12.6#12.6-8c81f45f60567695", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "2d89274d1836cabf0316bd99c10a7622", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "在某些客户端程序的连接失败错误消息中报告正确的数据库名称", "evidence": {"same_day": true, "patch_ids": ["2b87d6ffadc4f296858b94a2654cd70e"], "statement_hash": "b18e3c734bcc5032229b5acf57479a5e24ef13f1a8bed16d7fb261dbb6b947fa"}, "url": "/docs/compare/?release=11.11#11.11-3921d801a3399e34", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "99907bc48e9c7e79be3ee046790b0db0", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "在某些客户端程序的连接失败错误消息中报告正确的数据库名称", "evidence": {"same_day": true, "patch_ids": ["2b87d6ffadc4f296858b94a2654cd70e"], "statement_hash": "b18e3c734bcc5032229b5acf57479a5e24ef13f1a8bed16d7fb261dbb6b947fa"}, "url": "/docs/compare/?release=10.16#10.16-3921d801a3399e34", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "7ad568b9bae3112bc90120296eeaa02b", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "在部分客户端程序的连接失败错误消息中报告正确的数据库名", "evidence": {"same_day": true, "patch_ids": ["2b87d6ffadc4f296858b94a2654cd70e"], "statement_hash": "b18e3c734bcc5032229b5acf57479a5e24ef13f1a8bed16d7fb261dbb6b947fa"}, "url": "/docs/compare/?release=9.6.21#9.6.21-246a05d6ec85f511", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-e1874e055351c880", "cves": [], "html": "<p>      修复 <code>contrib/auto_explain</code> 中的内存泄漏（Japin Li）\n     </p><p>      生成 <code>EXPLAIN</code> 输出期间消耗的内存直到当前事务结束（对顶层语句）或外围语句结束（对嵌套语句）才被释放。在启用\n      <code>log_nested_statements</code> 时这尤其成问题。\n     </p>", "text": "修复 contrib/auto_explain 中的内存泄漏（Japin Li） 生成 EXPLAIN 输出期间消耗的内存直到当前事务结束（对顶层语句）或外围语句结束（对嵌套语句）才被释放。在启用 log_nested_statements 时这尤其成问题。", "title": "修复 contrib/auto_explain 中的内存泄漏", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "7b6b2ce86fb4c60bdd6c0ce77f28e17954962f26ea68b748d47eb35961686500", "section_path": ["变更"], "commit_groups": [["2671125c7", "586891394", "5c0f7cc54", "5fc5ff61c", "608cf2bfd", "742846958", "f0f9ed68d"]], "identity_text": "Fix memory leak in contrib/auto_explain (Japin Li) Memory consumed while producing the EXPLAIN output was not freed until the end of the current transaction (for a top-level statement) or the end of the surrounding statement (for a nested statement). This was particularly a problem with log_nested_statements enabled.", "commit_aliases": ["2671125c7", "586891394", "5c0f7cc54", "5fc5ff61c", "608cf2bfd", "742846958", "f0f9ed68d"], "source_commits": ["f0f9ed68d"], "source_entry_id": "9.5.25/changes/025", "db_id": "9646d85b46ef7613b7ef4aa41fb2e20d", "patch_ids": ["dc14cd67e92555ceef2ed270089dd5e1"], "statement_hash": "a46614e10ae34455a21adac1096f3a1229a47bde413e0143cb34438f3de43156", "relations": [{"rule": 2, "type": "equivalent", "target": "125a647431ede2c2032d14ce96560341", "evidence": {"same_day": true, "patch_ids": ["dc14cd67e92555ceef2ed270089dd5e1"], "statement_hash": "a46614e10ae34455a21adac1096f3a1229a47bde413e0143cb34438f3de43156"}}, {"rule": 2, "type": "equivalent", "target": "2aa1cc21db3729625834a9d5f00dffdd", "evidence": {"same_day": true, "patch_ids": ["dc14cd67e92555ceef2ed270089dd5e1"], "statement_hash": "a46614e10ae34455a21adac1096f3a1229a47bde413e0143cb34438f3de43156"}}, {"rule": 2, "type": "equivalent", "target": "31b7e7cfcd30fd630156a1a080d270c7", "evidence": {"same_day": true, "patch_ids": ["dc14cd67e92555ceef2ed270089dd5e1"], "statement_hash": "a46614e10ae34455a21adac1096f3a1229a47bde413e0143cb34438f3de43156"}}, {"rule": 2, "type": "equivalent", "target": "6f110c32e58f350d28faf77fd7547609", "evidence": {"same_day": true, "patch_ids": ["dc14cd67e92555ceef2ed270089dd5e1"], "statement_hash": "a46614e10ae34455a21adac1096f3a1229a47bde413e0143cb34438f3de43156"}}, {"rule": 2, "type": "equivalent", "target": "72ec61dbf91db72872519615cff377a7", "evidence": {"same_day": true, "patch_ids": ["dc14cd67e92555ceef2ed270089dd5e1"], "statement_hash": "a46614e10ae34455a21adac1096f3a1229a47bde413e0143cb34438f3de43156"}}], "version": "9.5.25", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "125a647431ede2c2032d14ce96560341", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "修复 contrib/auto_explain 中的内存泄漏", "evidence": {"same_day": true, "patch_ids": ["dc14cd67e92555ceef2ed270089dd5e1"], "statement_hash": "a46614e10ae34455a21adac1096f3a1229a47bde413e0143cb34438f3de43156"}, "url": "/docs/compare/?release=13.2#13.2-cbe385d241588429", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "2aa1cc21db3729625834a9d5f00dffdd", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "修复 contrib/auto_explain 中的内存泄漏", "evidence": {"same_day": true, "patch_ids": ["dc14cd67e92555ceef2ed270089dd5e1"], "statement_hash": "a46614e10ae34455a21adac1096f3a1229a47bde413e0143cb34438f3de43156"}, "url": "/docs/compare/?release=12.6#12.6-0fc5da56017c1bf2", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "72ec61dbf91db72872519615cff377a7", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "修复 contrib/auto_explain 中的内存泄漏", "evidence": {"same_day": true, "patch_ids": ["dc14cd67e92555ceef2ed270089dd5e1"], "statement_hash": "a46614e10ae34455a21adac1096f3a1229a47bde413e0143cb34438f3de43156"}, "url": "/docs/compare/?release=11.11#11.11-e1874e055351c880", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "31b7e7cfcd30fd630156a1a080d270c7", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "修复 contrib/auto_explain 中的内存泄漏", "evidence": {"same_day": true, "patch_ids": ["dc14cd67e92555ceef2ed270089dd5e1"], "statement_hash": "a46614e10ae34455a21adac1096f3a1229a47bde413e0143cb34438f3de43156"}, "url": "/docs/compare/?release=10.16#10.16-e1874e055351c880", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "6f110c32e58f350d28faf77fd7547609", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "修复 contrib/auto_explain 中的内存泄漏", "evidence": {"same_day": true, "patch_ids": ["dc14cd67e92555ceef2ed270089dd5e1"], "statement_hash": "a46614e10ae34455a21adac1096f3a1229a47bde413e0143cb34438f3de43156"}, "url": "/docs/compare/?release=9.6.21#9.6.21-e1874e055351c880", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-7d5fc5711d25e4a5", "cves": [], "html": "<p>      在 <code>contrib/postgres_fdw</code> 中，避免删除用户映射或外部服务器对象时泄漏到远程服务器的打开连接（Bharath Rupireddy）\n     </p><p>      依赖于被删除用户映射或外部服务器的打开连接不再能被引用，但此前它们仍会在本地会话期间被保留。\n     </p>", "text": "在 contrib/postgres_fdw 中，避免删除用户映射或外部服务器对象时泄漏到远程服务器的打开连接（Bharath Rupireddy） 依赖于被删除用户映射或外部服务器的打开连接不再能被引用，但此前它们仍会在本地会话期间被保留。", "title": "在 contrib/postgres_fdw 中，避免删除用户映射或外部服务器对象时泄漏到远程服务器的打开连接", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "2b45d69b244cc7c9df99997593c1447df2bf2986b1b3dc70934007d793fe5402", "section_path": ["变更"], "commit_groups": [["03b7a1ee7", "294cdd7d0", "546f14374", "744357d84", "b5c73eef8", "e3ebcca84", "e792ca4ac"]], "identity_text": "In contrib/postgres_fdw, avoid leaking open connections to remote servers when a user mapping or foreign server object is dropped (Bharath Rupireddy) Open connections that depend on a dropped user mapping or foreign server can no longer be referenced, but formerly they were kept around anyway for the duration of the local session.", "commit_aliases": ["03b7a1ee7", "294cdd7d0", "546f14374", "744357d84", "b5c73eef8", "e3ebcca84", "e792ca4ac"], "source_commits": ["b5c73eef8"], "source_entry_id": "9.5.25/changes/026", "db_id": "d50c2a7314e2f31bc3bfd21c1d90889d", "patch_ids": ["3c76f22ef8913b94c4e6ead338845f49"], "statement_hash": "461409a705919445b3634fdc54051f13092bd1ba78d22aebeb8aa91ad8ac3cff", "relations": [{"rule": 2, "type": "equivalent", "target": "07b3d52fcd6588730c7b19a3496d631f", "evidence": {"same_day": true, "patch_ids": ["3c76f22ef8913b94c4e6ead338845f49"], "statement_hash": "461409a705919445b3634fdc54051f13092bd1ba78d22aebeb8aa91ad8ac3cff"}}, {"rule": 2, "type": "equivalent", "target": "412ddff9cf704bd6c0c68cf92fbc60a4", "evidence": {"same_day": true, "patch_ids": ["3c76f22ef8913b94c4e6ead338845f49"], "statement_hash": "461409a705919445b3634fdc54051f13092bd1ba78d22aebeb8aa91ad8ac3cff"}}, {"rule": 2, "type": "equivalent", "target": "83172563daa129fb8c64ae34ed53bf2f", "evidence": {"same_day": true, "patch_ids": ["3c76f22ef8913b94c4e6ead338845f49"], "statement_hash": "461409a705919445b3634fdc54051f13092bd1ba78d22aebeb8aa91ad8ac3cff"}}, {"rule": 2, "type": "equivalent", "target": "a2d068e904b5c1a58640118c8012a8c1", "evidence": {"same_day": true, "patch_ids": ["3c76f22ef8913b94c4e6ead338845f49"], "statement_hash": "461409a705919445b3634fdc54051f13092bd1ba78d22aebeb8aa91ad8ac3cff"}}, {"rule": 2, "type": "equivalent", "target": "f399b562c0bb929bd1ccbaae305e8cce", "evidence": {"same_day": true, "patch_ids": ["3c76f22ef8913b94c4e6ead338845f49"], "statement_hash": "461409a705919445b3634fdc54051f13092bd1ba78d22aebeb8aa91ad8ac3cff"}}], "version": "9.5.25", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "412ddff9cf704bd6c0c68cf92fbc60a4", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "在 contrib/postgres_fdw 中，避免删除用户映射或外部服务器对象时泄漏已打开的远程服务器连接", "evidence": {"same_day": true, "patch_ids": ["3c76f22ef8913b94c4e6ead338845f49"], "statement_hash": "461409a705919445b3634fdc54051f13092bd1ba78d22aebeb8aa91ad8ac3cff"}, "url": "/docs/compare/?release=13.2#13.2-b1d2521af8d5b287", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "07b3d52fcd6588730c7b19a3496d631f", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "在 contrib/postgres_fdw 中，避免删除用户映射或外部服务器对象时泄漏已打开的远程服务器连接", "evidence": {"same_day": true, "patch_ids": ["3c76f22ef8913b94c4e6ead338845f49"], "statement_hash": "461409a705919445b3634fdc54051f13092bd1ba78d22aebeb8aa91ad8ac3cff"}, "url": "/docs/compare/?release=12.6#12.6-3e8b8f5cb238e924", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "83172563daa129fb8c64ae34ed53bf2f", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "在 contrib/postgres_fdw 中，避免删除用户映射或外部服务器对象时泄漏已打开的远程服务器连接", "evidence": {"same_day": true, "patch_ids": ["3c76f22ef8913b94c4e6ead338845f49"], "statement_hash": "461409a705919445b3634fdc54051f13092bd1ba78d22aebeb8aa91ad8ac3cff"}, "url": "/docs/compare/?release=11.11#11.11-e21e489d6568f4c4", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "a2d068e904b5c1a58640118c8012a8c1", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "在 contrib/postgres_fdw 中，避免删除用户映射或外部服务器对象时泄漏已打开的远程服务器连接", "evidence": {"same_day": true, "patch_ids": ["3c76f22ef8913b94c4e6ead338845f49"], "statement_hash": "461409a705919445b3634fdc54051f13092bd1ba78d22aebeb8aa91ad8ac3cff"}, "url": "/docs/compare/?release=10.16#10.16-e21e489d6568f4c4", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "f399b562c0bb929bd1ccbaae305e8cce", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "在 contrib/postgres_fdw 中，避免删除用户映射或外部服务器对象时泄漏到远程服务器的打开连接", "evidence": {"same_day": true, "patch_ids": ["3c76f22ef8913b94c4e6ead338845f49"], "statement_hash": "461409a705919445b3634fdc54051f13092bd1ba78d22aebeb8aa91ad8ac3cff"}, "url": "/docs/compare/?release=9.6.21#9.6.21-7d5fc5711d25e4a5", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-ba78bf8e33b032ae", "cves": [], "html": "<p>      在 <code>contrib/pgcrypto</code> 中，检查 OpenSSL EVP 函数的错误返回（Michael Paquier）\n     </p><p>      我们并不真的预期这里会出错，但这一更改能让静态分析工具安静下来。\n     </p>", "text": "在 contrib/pgcrypto 中，检查 OpenSSL EVP 函数的错误返回（Michael Paquier） 我们并不真的预期这里会出错，但这一更改能让静态分析工具安静下来。", "title": "在 contrib/pgcrypto 中，检查 OpenSSL EVP 函数的错误返回", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "b7686f3261566e3af71bf8b171da401e70942fca3fae77cdaa312b3f49bf122e", "section_path": ["变更"], "commit_groups": [["28d1601ad", "5ba1df0f1", "95992e5ed", "b88afd8b6", "d7ecba937", "dfd8bf2b9", "f95d9fd81"]], "identity_text": "In contrib/pgcrypto, check for error returns from OpenSSL's EVP functions (Michael Paquier) We do not really expect errors here, but this change silences warnings from static analysis tools.", "commit_aliases": ["28d1601ad", "5ba1df0f1", "95992e5ed", "b88afd8b6", "d7ecba937", "dfd8bf2b9", "f95d9fd81"], "source_commits": ["f95d9fd81"], "source_entry_id": "9.5.25/changes/027", "db_id": "cbe074842e9ede704031080b60dea276", "patch_ids": ["816638745287462ad4cd0683af7bef88"], "statement_hash": "b49651f0b46e73a62dc0192cd979d9ad3784314b3e238a18f1a422b06027e0a3", "relations": [{"rule": 2, "type": "equivalent", "target": "611e79b45feb395f9f5b49589f5f36b0", "evidence": {"same_day": true, "patch_ids": ["816638745287462ad4cd0683af7bef88"], "statement_hash": "b49651f0b46e73a62dc0192cd979d9ad3784314b3e238a18f1a422b06027e0a3"}}, {"rule": 2, "type": "equivalent", "target": "a76720e667d44c9e133e8d3af6b1285e", "evidence": {"same_day": true, "patch_ids": ["816638745287462ad4cd0683af7bef88"], "statement_hash": "b49651f0b46e73a62dc0192cd979d9ad3784314b3e238a18f1a422b06027e0a3"}}, {"rule": 2, "type": "equivalent", "target": "cbb7bc3f0b65264df75ce5df285704b4", "evidence": {"same_day": true, "patch_ids": ["816638745287462ad4cd0683af7bef88"], "statement_hash": "b49651f0b46e73a62dc0192cd979d9ad3784314b3e238a18f1a422b06027e0a3"}}, {"rule": 2, "type": "equivalent", "target": "e812da2a129f90601c5b5a5f8bac146e", "evidence": {"same_day": true, "patch_ids": ["816638745287462ad4cd0683af7bef88"], "statement_hash": "b49651f0b46e73a62dc0192cd979d9ad3784314b3e238a18f1a422b06027e0a3"}}, {"rule": 2, "type": "equivalent", "target": "ea3d57be655e7c2c6425c025119b4135", "evidence": {"same_day": true, "patch_ids": ["816638745287462ad4cd0683af7bef88"], "statement_hash": "b49651f0b46e73a62dc0192cd979d9ad3784314b3e238a18f1a422b06027e0a3"}}], "version": "9.5.25", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "e812da2a129f90601c5b5a5f8bac146e", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "在 contrib/pgcrypto 中，检查 OpenSSL EVP 函数返回的错误", "evidence": {"same_day": true, "patch_ids": ["816638745287462ad4cd0683af7bef88"], "statement_hash": "b49651f0b46e73a62dc0192cd979d9ad3784314b3e238a18f1a422b06027e0a3"}, "url": "/docs/compare/?release=13.2#13.2-d090ef57bcc511ad", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "ea3d57be655e7c2c6425c025119b4135", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "在 contrib/pgcrypto 中，检查 OpenSSL EVP 函数返回的错误", "evidence": {"same_day": true, "patch_ids": ["816638745287462ad4cd0683af7bef88"], "statement_hash": "b49651f0b46e73a62dc0192cd979d9ad3784314b3e238a18f1a422b06027e0a3"}, "url": "/docs/compare/?release=12.6#12.6-2adaac067666f9cc", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "a76720e667d44c9e133e8d3af6b1285e", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "在 contrib/pgcrypto 中，检查 OpenSSL EVP 函数返回的错误", "evidence": {"same_day": true, "patch_ids": ["816638745287462ad4cd0683af7bef88"], "statement_hash": "b49651f0b46e73a62dc0192cd979d9ad3784314b3e238a18f1a422b06027e0a3"}, "url": "/docs/compare/?release=11.11#11.11-33f34c9aa327a532", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "611e79b45feb395f9f5b49589f5f36b0", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "在 contrib/pgcrypto 中，检查 OpenSSL EVP 函数返回的错误", "evidence": {"same_day": true, "patch_ids": ["816638745287462ad4cd0683af7bef88"], "statement_hash": "b49651f0b46e73a62dc0192cd979d9ad3784314b3e238a18f1a422b06027e0a3"}, "url": "/docs/compare/?release=10.16#10.16-33f34c9aa327a532", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "cbb7bc3f0b65264df75ce5df285704b4", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "在 contrib/pgcrypto 中，检查 OpenSSL EVP 函数的错误返回", "evidence": {"same_day": true, "patch_ids": ["816638745287462ad4cd0683af7bef88"], "statement_hash": "b49651f0b46e73a62dc0192cd979d9ad3784314b3e238a18f1a422b06027e0a3"}, "url": "/docs/compare/?release=9.6.21#9.6.21-ba78bf8e33b032ae", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-6616d6efb4e9d2ca", "cves": [], "html": "<p>      在 <code>contrib/pg_trgm</code> 的 GiST 索引支持中，避免\n      picksplit 恰好在两个索引项上被调用这一罕见情况下的崩溃（Andrew Gierth、Alexander Korotkov）\n     </p>", "text": "在 contrib/pg_trgm 的 GiST 索引支持中，避免 picksplit 恰好在两个索引项上被调用这一罕见情况下的崩溃（Andrew Gierth、Alexander Korotkov）", "title": "在 contrib/pg_trgm 的 GiST 索引支持中，避免 picksplit 恰好在两个索引项上被调用这一罕见情况下的崩溃", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "9465d225a0625dfd0e531a013a9590afcfdf07f0a32add78230d839864da027f", "section_path": ["变更"], "commit_groups": [["068de9dd4", "245a35f96", "3836d4b64", "48ab1fa30", "4b212b7c8", "7e3dc147d", "7f69ed4ae"]], "identity_text": "In contrib/pg_trgm's GiST index support, avoid crash in the rare case that picksplit is called on exactly two index items (Andrew Gierth, Alexander Korotkov)", "commit_aliases": ["068de9dd4", "245a35f96", "3836d4b64", "48ab1fa30", "4b212b7c8", "7e3dc147d", "7f69ed4ae"], "source_commits": ["4b212b7c8"], "source_entry_id": "9.5.25/changes/028", "db_id": "74aadc1d6ace914f0b99c2813ef8bd4c", "patch_ids": ["bf10d4e176177ff58451e29658a498b8"], "statement_hash": "a28ccd8a10f9e16697aee2864ad15cbcae28b5e44735ad28d769581822d0fa9a", "relations": [{"rule": 2, "type": "equivalent", "target": "13452285fa296349f6fd51c1b0a651da", "evidence": {"same_day": true, "patch_ids": ["bf10d4e176177ff58451e29658a498b8"], "statement_hash": "a28ccd8a10f9e16697aee2864ad15cbcae28b5e44735ad28d769581822d0fa9a"}}, {"rule": 2, "type": "equivalent", "target": "2772094820893c5e0c7f1677ce5ee6f8", "evidence": {"same_day": true, "patch_ids": ["bf10d4e176177ff58451e29658a498b8"], "statement_hash": "a28ccd8a10f9e16697aee2864ad15cbcae28b5e44735ad28d769581822d0fa9a"}}, {"rule": 2, "type": "equivalent", "target": "bcf925524e756e8bf9a4c6820b930067", "evidence": {"same_day": true, "patch_ids": ["bf10d4e176177ff58451e29658a498b8"], "statement_hash": "a28ccd8a10f9e16697aee2864ad15cbcae28b5e44735ad28d769581822d0fa9a"}}, {"rule": 2, "type": "equivalent", "target": "bf3eb6147a63892fe08868d269324a50", "evidence": {"same_day": true, "patch_ids": ["bf10d4e176177ff58451e29658a498b8"], "statement_hash": "a28ccd8a10f9e16697aee2864ad15cbcae28b5e44735ad28d769581822d0fa9a"}}, {"rule": 2, "type": "equivalent", "target": "c8ed84d747eac0b448c098c1b635f094", "evidence": {"same_day": true, "patch_ids": ["bf10d4e176177ff58451e29658a498b8"], "statement_hash": "a28ccd8a10f9e16697aee2864ad15cbcae28b5e44735ad28d769581822d0fa9a"}}], "version": "9.5.25", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "c8ed84d747eac0b448c098c1b635f094", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "在 contrib/pg_trgm 的 GiST 索引支持中，避免恰好对两个索引项调用 picksplit 这一罕见情况下的崩溃", "evidence": {"same_day": true, "patch_ids": ["bf10d4e176177ff58451e29658a498b8"], "statement_hash": "a28ccd8a10f9e16697aee2864ad15cbcae28b5e44735ad28d769581822d0fa9a"}, "url": "/docs/compare/?release=13.2#13.2-0873fefda9178ae4", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "bf3eb6147a63892fe08868d269324a50", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "在 contrib/pg_trgm 的 GiST 索引支持中，避免恰好对两个索引项调用 picksplit 这一罕见情况下的崩溃", "evidence": {"same_day": true, "patch_ids": ["bf10d4e176177ff58451e29658a498b8"], "statement_hash": "a28ccd8a10f9e16697aee2864ad15cbcae28b5e44735ad28d769581822d0fa9a"}, "url": "/docs/compare/?release=12.6#12.6-837ee7dac24eac0d", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "2772094820893c5e0c7f1677ce5ee6f8", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "在 contrib/pg_trgm 的 GiST 索引支持中，避免恰好对两个索引项调用 picksplit 这一罕见情况下的崩溃", "evidence": {"same_day": true, "patch_ids": ["bf10d4e176177ff58451e29658a498b8"], "statement_hash": "a28ccd8a10f9e16697aee2864ad15cbcae28b5e44735ad28d769581822d0fa9a"}, "url": "/docs/compare/?release=11.11#11.11-431ab861d1af6569", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "bcf925524e756e8bf9a4c6820b930067", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "在 contrib/pg_trgm 的 GiST 索引支持中，避免恰好对两个索引项调用 picksplit 这一罕见情况下的崩溃", "evidence": {"same_day": true, "patch_ids": ["bf10d4e176177ff58451e29658a498b8"], "statement_hash": "a28ccd8a10f9e16697aee2864ad15cbcae28b5e44735ad28d769581822d0fa9a"}, "url": "/docs/compare/?release=10.16#10.16-431ab861d1af6569", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "13452285fa296349f6fd51c1b0a651da", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "在 contrib/pg_trgm 的 GiST 索引支持中，避免 picksplit 恰好在两个索引项上被调用这一罕见情况下的崩溃", "evidence": {"same_day": true, "patch_ids": ["bf10d4e176177ff58451e29658a498b8"], "statement_hash": "a28ccd8a10f9e16697aee2864ad15cbcae28b5e44735ad28d769581822d0fa9a"}, "url": "/docs/compare/?release=9.6.21#9.6.21-6616d6efb4e9d2ca", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-373ecccbd4b5e54f", "cves": [], "html": "<p>      修复 <code>contrib/pg_prewarm</code> 和\n      <code>contrib/postgres_fdw</code> 中超时的计算错误（Alexey Kondratov、Tom Lane）\n     </p><p> <code>contrib/pg_prewarm</code> 的 autoprewarm 父进程的主循环把期望的睡眠时间低估了 1000 倍，导致消耗远超预期的 CPU。在等待远程服务器的结果时，<code>contrib/postgres_fdw</code>\n      把期望的超时高估了 1000 倍（不过这个错误已被 60 秒的钳制所缓解）。\n     </p><p>      这两个错误都源于把秒和微秒错误地转换为毫秒。引入新的 API\n      <code>TimestampDifferenceMilliseconds()</code>，使将来更容易做对。\n     </p>", "text": "修复 contrib/pg_prewarm 和 contrib/postgres_fdw 中超时的计算错误（Alexey Kondratov、Tom Lane） contrib/pg_prewarm 的 autoprewarm 父进程的主循环把期望的睡眠时间低估了 1000 倍，导致消耗远超预期的 CPU。在等待远程服务器的结果时，contrib/postgres_fdw 把期望的超时高估了 1000 倍（不过这个错误已被 60 秒的钳制所缓解）。 这两个错误都源于把秒和微秒错误地转换为毫秒。引入新的 API TimestampDifferenceMilliseconds()，使将来更容易做对。", "title": "修复 contrib/pg_prewarm 和 contrib/postgres_fdw 中超时的计算错误", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "b88e0e777b67f2a2cf3a7d5b52f9ae90ab0653e1c4910d5498849b8392881488", "section_path": ["变更"], "commit_groups": [["171c457cd", "210564a74", "3a89ea0eb", "afce7908d", "cd39c23a2", "e87139b43", "ec29427ce"]], "identity_text": "Fix miscalculation of timeouts in contrib/pg_prewarm and contrib/postgres_fdw (Alexey Kondratov, Tom Lane) The main loop in contrib/pg_prewarm's autoprewarm parent process underestimated its desired sleep time by a factor of 1000, causing it to consume much more CPU than intended. When waiting for a result from a remote server, contrib/postgres_fdw overestimated the desired timeout by a factor of 1000 (though this error had been mitigated by imposing a clamp to 60 seconds). Both of these errors stemmed from incorrectly converting seconds-and-microseconds to milliseconds. Introduce a new API TimestampDifferenceMilliseconds() to make it easier to get this right in the future.", "commit_aliases": ["171c457cd", "210564a74", "3a89ea0eb", "afce7908d", "cd39c23a2", "e87139b43", "ec29427ce"], "source_commits": ["210564a74"], "source_entry_id": "9.5.25/changes/029", "db_id": "07b621f1e6578253c7fab49295494cd7", "patch_ids": ["92dbdc6e22269c8e460d527a5cd5f5c2"], "statement_hash": "ed8c163247d164a4a09c090b5a674552b88992a60b771ccd6098530e5650148a", "relations": [{"rule": 2, "type": "equivalent", "target": "044720a8bfd18c6ea3257ec1d40b8784", "evidence": {"same_day": true, "patch_ids": ["92dbdc6e22269c8e460d527a5cd5f5c2"], "statement_hash": "ed8c163247d164a4a09c090b5a674552b88992a60b771ccd6098530e5650148a"}}, {"rule": 2, "type": "equivalent", "target": "16cb32fd5cd90108fc979b3098e1b881", "evidence": {"same_day": true, "patch_ids": ["92dbdc6e22269c8e460d527a5cd5f5c2"], "statement_hash": "ed8c163247d164a4a09c090b5a674552b88992a60b771ccd6098530e5650148a"}}, {"rule": 2, "type": "equivalent", "target": "2acf41a696d058fbc5eebaf7d10ddfe3", "evidence": {"same_day": true, "patch_ids": ["92dbdc6e22269c8e460d527a5cd5f5c2"], "statement_hash": "ed8c163247d164a4a09c090b5a674552b88992a60b771ccd6098530e5650148a"}}, {"rule": 2, "type": "equivalent", "target": "74a900e3ca707c8a971c55a3af1c980f", "evidence": {"same_day": true, "patch_ids": ["92dbdc6e22269c8e460d527a5cd5f5c2"], "statement_hash": "ed8c163247d164a4a09c090b5a674552b88992a60b771ccd6098530e5650148a"}}, {"rule": 2, "type": "equivalent", "target": "face4799abd6ac7f943912d2ad8e372f", "evidence": {"same_day": true, "patch_ids": ["92dbdc6e22269c8e460d527a5cd5f5c2"], "statement_hash": "ed8c163247d164a4a09c090b5a674552b88992a60b771ccd6098530e5650148a"}}], "version": "9.5.25", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "044720a8bfd18c6ea3257ec1d40b8784", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "修复 contrib/pg_prewarm 和 contrib/postgres_fdw 中错误的超时计算", "evidence": {"same_day": true, "patch_ids": ["92dbdc6e22269c8e460d527a5cd5f5c2"], "statement_hash": "ed8c163247d164a4a09c090b5a674552b88992a60b771ccd6098530e5650148a"}, "url": "/docs/compare/?release=13.2#13.2-460ef1dc991025d6", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "face4799abd6ac7f943912d2ad8e372f", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "修复 contrib/pg_prewarm 和 contrib/postgres_fdw 中错误的超时计算", "evidence": {"same_day": true, "patch_ids": ["92dbdc6e22269c8e460d527a5cd5f5c2"], "statement_hash": "ed8c163247d164a4a09c090b5a674552b88992a60b771ccd6098530e5650148a"}, "url": "/docs/compare/?release=12.6#12.6-7ca6e1828cc4b1c4", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "2acf41a696d058fbc5eebaf7d10ddfe3", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "修复 contrib/pg_prewarm 和 contrib/postgres_fdw 中错误的超时计算", "evidence": {"same_day": true, "patch_ids": ["92dbdc6e22269c8e460d527a5cd5f5c2"], "statement_hash": "ed8c163247d164a4a09c090b5a674552b88992a60b771ccd6098530e5650148a"}, "url": "/docs/compare/?release=11.11#11.11-6ffcdfeeb8e9ba4d", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "16cb32fd5cd90108fc979b3098e1b881", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "修复 contrib/pg_prewarm 和 contrib/postgres_fdw 中错误的超时计算", "evidence": {"same_day": true, "patch_ids": ["92dbdc6e22269c8e460d527a5cd5f5c2"], "statement_hash": "ed8c163247d164a4a09c090b5a674552b88992a60b771ccd6098530e5650148a"}, "url": "/docs/compare/?release=10.16#10.16-6ffcdfeeb8e9ba4d", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "74a900e3ca707c8a971c55a3af1c980f", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "修复 contrib/pg_prewarm 和 contrib/postgres_fdw 中超时的计算错误", "evidence": {"same_day": true, "patch_ids": ["92dbdc6e22269c8e460d527a5cd5f5c2"], "statement_hash": "ed8c163247d164a4a09c090b5a674552b88992a60b771ccd6098530e5650148a"}, "url": "/docs/compare/?release=9.6.21#9.6.21-373ecccbd4b5e54f", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-c67fe5e4004c975a", "cves": [], "html": "<p>      改进 <span>configure</span> 在 macOS 上选择\n      <code>PG_SYSROOT</code> 的启发式（Tom Lane）\n     </p><p>      当 Xcode 比底层操作系统更新时，新方法更可能产生理想的结果。选择与操作系统版本不匹配的 sysroot 可能导致不可用的可执行文件。\n     </p>", "text": "改进 configure 在 macOS 上选择 PG_SYSROOT 的启发式（Tom Lane） 当 Xcode 比底层操作系统更新时，新方法更可能产生理想的结果。选择与操作系统版本不匹配的 sysroot 可能导致不可用的可执行文件。", "title": "改进 configure 在 macOS 上选择 PG_SYSROOT 的启发式", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "76ce80fabad8c29c78f1213540cae6e6de6c360915792d65f61172b5f8282ae3", "section_path": ["变更"], "commit_groups": [["046c8face", "3934543c2", "4823621db", "5fa060c8f", "f44ae4db5", "f5d044eae", "fc6d08b27"], ["175f716a8", "561dd8d8a", "6671e8194", "9d23c15a0", "a3345383d", "cbcf7b130", "cbcff1729"]], "identity_text": "Improve configure's heuristics for selecting PG_SYSROOT on macOS (Tom Lane) The new method is more likely to produce desirable results when Xcode is newer than the underlying operating system. Choosing a sysroot that does not match the OS version may result in nonfunctional executables.", "commit_aliases": ["046c8face", "175f716a8", "3934543c2", "4823621db", "561dd8d8a", "5fa060c8f", "6671e8194", "9d23c15a0", "a3345383d", "cbcf7b130", "cbcff1729", "f44ae4db5", "f5d044eae", "fc6d08b27"], "source_commits": ["175f716a8", "3934543c2"], "source_entry_id": "9.5.25/changes/030", "db_id": "332172d08954d7c312db25147cab116e", "patch_ids": ["b98de5497cc4e1bedaa602e65ed903c3", "ffb94247fc42b8a6e9cf9a9bb7bd68ef"], "statement_hash": "16d396557e7e198bde05a3d447117a5a2e509700efc43f3a2dd68fa0bc0f941f", "relations": [{"rule": 2, "type": "equivalent", "target": "0d35ad6bcaa8006c1bfdbd27bc228140", "evidence": {"same_day": true, "patch_ids": ["b98de5497cc4e1bedaa602e65ed903c3", "ffb94247fc42b8a6e9cf9a9bb7bd68ef"], "statement_hash": "16d396557e7e198bde05a3d447117a5a2e509700efc43f3a2dd68fa0bc0f941f"}}, {"rule": 2, "type": "equivalent", "target": "28ae8e08a4c561e54d615965283db54d", "evidence": {"same_day": true, "patch_ids": ["b98de5497cc4e1bedaa602e65ed903c3", "ffb94247fc42b8a6e9cf9a9bb7bd68ef"], "statement_hash": "16d396557e7e198bde05a3d447117a5a2e509700efc43f3a2dd68fa0bc0f941f"}}, {"rule": 2, "type": "equivalent", "target": "6afa264d9210ef5c24db0048e08c4cbd", "evidence": {"same_day": true, "patch_ids": ["b98de5497cc4e1bedaa602e65ed903c3", "ffb94247fc42b8a6e9cf9a9bb7bd68ef"], "statement_hash": "16d396557e7e198bde05a3d447117a5a2e509700efc43f3a2dd68fa0bc0f941f"}}, {"rule": 2, "type": "equivalent", "target": "94f9a8122f50186e2c25690304ebbe59", "evidence": {"same_day": true, "patch_ids": ["b98de5497cc4e1bedaa602e65ed903c3", "ffb94247fc42b8a6e9cf9a9bb7bd68ef"], "statement_hash": "16d396557e7e198bde05a3d447117a5a2e509700efc43f3a2dd68fa0bc0f941f"}}, {"rule": 2, "type": "equivalent", "target": "ecda54d3e1145aa5606148955d54fd33", "evidence": {"same_day": true, "patch_ids": ["b98de5497cc4e1bedaa602e65ed903c3", "ffb94247fc42b8a6e9cf9a9bb7bd68ef"], "statement_hash": "16d396557e7e198bde05a3d447117a5a2e509700efc43f3a2dd68fa0bc0f941f"}}], "version": "9.5.25", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "ecda54d3e1145aa5606148955d54fd33", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "改进 configure 在 macOS 上选择 PG_SYSROOT 的启发式方法", "evidence": {"same_day": true, "patch_ids": ["b98de5497cc4e1bedaa602e65ed903c3", "ffb94247fc42b8a6e9cf9a9bb7bd68ef"], "statement_hash": "16d396557e7e198bde05a3d447117a5a2e509700efc43f3a2dd68fa0bc0f941f"}, "url": "/docs/compare/?release=13.2#13.2-7ed7f49fb60210a1", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "28ae8e08a4c561e54d615965283db54d", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "改进 configure 在 macOS 上选择 PG_SYSROOT 的启发式方法", "evidence": {"same_day": true, "patch_ids": ["b98de5497cc4e1bedaa602e65ed903c3", "ffb94247fc42b8a6e9cf9a9bb7bd68ef"], "statement_hash": "16d396557e7e198bde05a3d447117a5a2e509700efc43f3a2dd68fa0bc0f941f"}, "url": "/docs/compare/?release=12.6#12.6-6bc9f88081a9f69b", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "0d35ad6bcaa8006c1bfdbd27bc228140", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "改进 configure 在 macOS 上选择 PG_SYSROOT 的启发式方法", "evidence": {"same_day": true, "patch_ids": ["b98de5497cc4e1bedaa602e65ed903c3", "ffb94247fc42b8a6e9cf9a9bb7bd68ef"], "statement_hash": "16d396557e7e198bde05a3d447117a5a2e509700efc43f3a2dd68fa0bc0f941f"}, "url": "/docs/compare/?release=11.11#11.11-26c57269af904718", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "6afa264d9210ef5c24db0048e08c4cbd", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "改进 configure 在 macOS 上选择 PG_SYSROOT 的启发式方法", "evidence": {"same_day": true, "patch_ids": ["b98de5497cc4e1bedaa602e65ed903c3", "ffb94247fc42b8a6e9cf9a9bb7bd68ef"], "statement_hash": "16d396557e7e198bde05a3d447117a5a2e509700efc43f3a2dd68fa0bc0f941f"}, "url": "/docs/compare/?release=10.16#10.16-26c57269af904718", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "94f9a8122f50186e2c25690304ebbe59", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "改进 configure 在 macOS 上选择 PG_SYSROOT 的启发式", "evidence": {"same_day": true, "patch_ids": ["b98de5497cc4e1bedaa602e65ed903c3", "ffb94247fc42b8a6e9cf9a9bb7bd68ef"], "statement_hash": "16d396557e7e198bde05a3d447117a5a2e509700efc43f3a2dd68fa0bc0f941f"}, "url": "/docs/compare/?release=9.6.21#9.6.21-c67fe5e4004c975a", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-6cb74ef17cf0e1a6", "cves": [], "html": "<p>      在 macOS 上构建时，在链接步骤和编译步骤中一样指定\n      <code>-isysroot</code>（James Hilliard）\n     </p><p>      这同样改进了 Xcode 与操作系统不同步时的结果。\n     </p>", "text": "在 macOS 上构建时，在链接步骤和编译步骤中一样指定 -isysroot（James Hilliard） 这同样改进了 Xcode 与操作系统不同步时的结果。", "title": "在 macOS 上构建时，在链接步骤和编译步骤中一样指定 -isysroot", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "3fbf3ef2c9896419ad33ce337280e8e803c94bf7fcb1dde7573f850e308bbfd7", "section_path": ["变更"], "commit_groups": [["153bf8d20", "2bb8c0f1d", "49407dc32", "5b8360427", "9e9a31bd0", "d01e37845", "e7abc1111"]], "identity_text": "While building on macOS, specify -isysroot in link steps as well as compile steps (James Hilliard) This likewise improves the results when Xcode is out of sync with the operating system.", "commit_aliases": ["153bf8d20", "2bb8c0f1d", "49407dc32", "5b8360427", "9e9a31bd0", "d01e37845", "e7abc1111"], "source_commits": ["2bb8c0f1d"], "source_entry_id": "9.5.25/changes/031", "db_id": "2522eabd5feafb099b7f0b87e4ee4167", "patch_ids": ["80130960bc3c7445ce6eed2f109cc92b"], "statement_hash": "d045eecb04941f70ac530e0e53b2b1ef916a0750a18a1105c60364660f4df848", "relations": [{"rule": 2, "type": "equivalent", "target": "00db00872ee8dd93b8ad2fddef7d7caa", "evidence": {"same_day": true, "patch_ids": ["80130960bc3c7445ce6eed2f109cc92b"], "statement_hash": "d045eecb04941f70ac530e0e53b2b1ef916a0750a18a1105c60364660f4df848"}}, {"rule": 2, "type": "equivalent", "target": "8de8a5a4d24b7e9f21adea1c8492904a", "evidence": {"same_day": true, "patch_ids": ["80130960bc3c7445ce6eed2f109cc92b"], "statement_hash": "d045eecb04941f70ac530e0e53b2b1ef916a0750a18a1105c60364660f4df848"}}, {"rule": 2, "type": "equivalent", "target": "aeff8a687ff80c37bd0151fb3b282a9f", "evidence": {"same_day": true, "patch_ids": ["80130960bc3c7445ce6eed2f109cc92b"], "statement_hash": "d045eecb04941f70ac530e0e53b2b1ef916a0750a18a1105c60364660f4df848"}}, {"rule": 2, "type": "equivalent", "target": "c2af11e4ba24a0887d5a17c0dbbbcc87", "evidence": {"same_day": true, "patch_ids": ["80130960bc3c7445ce6eed2f109cc92b"], "statement_hash": "d045eecb04941f70ac530e0e53b2b1ef916a0750a18a1105c60364660f4df848"}}, {"rule": 2, "type": "equivalent", "target": "e12b96d5455ac0d984ccdbb7cc5e7b09", "evidence": {"same_day": true, "patch_ids": ["80130960bc3c7445ce6eed2f109cc92b"], "statement_hash": "d045eecb04941f70ac530e0e53b2b1ef916a0750a18a1105c60364660f4df848"}}], "version": "9.5.25", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "e12b96d5455ac0d984ccdbb7cc5e7b09", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "在 macOS 上构建时，在链接步骤和编译步骤中都指定 -isysroot", "evidence": {"same_day": true, "patch_ids": ["80130960bc3c7445ce6eed2f109cc92b"], "statement_hash": "d045eecb04941f70ac530e0e53b2b1ef916a0750a18a1105c60364660f4df848"}, "url": "/docs/compare/?release=13.2#13.2-a7db8bd1f039decd", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "c2af11e4ba24a0887d5a17c0dbbbcc87", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "在 macOS 上构建时，在链接步骤和编译步骤中都指定 -isysroot", "evidence": {"same_day": true, "patch_ids": ["80130960bc3c7445ce6eed2f109cc92b"], "statement_hash": "d045eecb04941f70ac530e0e53b2b1ef916a0750a18a1105c60364660f4df848"}, "url": "/docs/compare/?release=12.6#12.6-84b4eae14087132f", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "8de8a5a4d24b7e9f21adea1c8492904a", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "在 macOS 上构建时，在链接步骤和编译步骤中都指定 -isysroot", "evidence": {"same_day": true, "patch_ids": ["80130960bc3c7445ce6eed2f109cc92b"], "statement_hash": "d045eecb04941f70ac530e0e53b2b1ef916a0750a18a1105c60364660f4df848"}, "url": "/docs/compare/?release=11.11#11.11-d551fe959dfa4dbc", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "aeff8a687ff80c37bd0151fb3b282a9f", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "在 macOS 上构建时，在链接步骤和编译步骤中都指定 -isysroot", "evidence": {"same_day": true, "patch_ids": ["80130960bc3c7445ce6eed2f109cc92b"], "statement_hash": "d045eecb04941f70ac530e0e53b2b1ef916a0750a18a1105c60364660f4df848"}, "url": "/docs/compare/?release=10.16#10.16-d551fe959dfa4dbc", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "00db00872ee8dd93b8ad2fddef7d7caa", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "在 macOS 上构建时，在链接步骤和编译步骤中一样指定 -isysroot", "evidence": {"same_day": true, "patch_ids": ["80130960bc3c7445ce6eed2f109cc92b"], "statement_hash": "d045eecb04941f70ac530e0e53b2b1ef916a0750a18a1105c60364660f4df848"}, "url": "/docs/compare/?release=9.6.21#9.6.21-6cb74ef17cf0e1a6", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}, {"id": "9.5.25-26398dcabece8712", "cves": [], "html": "<p>      更新时区数据文件到 <span>tzdata</span> 版本 2021a，涉及俄罗斯（伏尔加格勒时区）和南苏丹的夏令时法规变更，以及澳大利亚、巴哈马、伯利兹、百慕大、加纳、以色列、肯尼亚、尼日利亚、巴勒斯坦、塞舌尔和瓦努阿图的历史修正。\n     </p><p>      值得注意的是，Australia/Currie 时区已被修正到与 Australia/Hobart 相同的程度。\n     </p>", "text": "更新时区数据文件到 tzdata 版本 2021a，涉及俄罗斯（伏尔加格勒时区）和南苏丹的夏令时法规变更，以及澳大利亚、巴哈马、伯利兹、百慕大、加纳、以色列、肯尼亚、尼日利亚、巴勒斯坦、塞舌尔和瓦努阿图的历史修正。 值得注意的是，Australia/Currie 时区已被修正到与 Australia/Hobart 相同的程度。", "title": "更新时区数据文件到 tzdata 版本 2021a，涉及俄罗斯（伏尔加格勒时区）和南苏丹的夏令时法规变更，以及澳大利亚、巴哈马、伯利兹、百慕大、加纳、以色列、肯尼亚、尼日利亚、巴勒斯坦、塞舌尔和瓦努阿图的历史修正。", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.5.25/#id-1.11.6.5.6", "source_hash": "84286df1d5ce8921792821fe480849709ed150611aa519d52b04f25dfb6a3fc1", "section_path": ["变更"], "commit_groups": [["58a545344", "5db6ba303", "728971d5f", "7e0786751", "c26a0865d", "c7edf4ac2", "c82c015b5"]], "identity_text": "Update time zone data files to tzdata release 2021a for DST law changes in Russia (Volgograd zone) and South Sudan, plus historical corrections for Australia, Bahamas, Belize, Bermuda, Ghana, Israel, Kenya, Nigeria, Palestine, Seychelles, and Vanuatu. Notably, the Australia/Currie zone has been corrected to the point where it is identical to Australia/Hobart.", "commit_aliases": ["58a545344", "5db6ba303", "728971d5f", "7e0786751", "c26a0865d", "c7edf4ac2", "c82c015b5"], "source_commits": ["c26a0865d"], "source_entry_id": "9.5.25/changes/032", "db_id": "b38670a4a6df6b0f68d2a68e55b07fd3", "patch_ids": ["7a5adfdb0365a88b0dba369addc9e369"], "statement_hash": "f4579da37e63d89946917caf47ef063989d54c7bfafb7ec83887d0e03c2df92c", "relations": [{"rule": 2, "type": "equivalent", "target": "13b3d5c0d37ba51a84d68cc873bc98b7", "evidence": {"same_day": true, "patch_ids": ["7a5adfdb0365a88b0dba369addc9e369"]}}, {"rule": 2, "type": "equivalent", "target": "a8793fc6cdc85db585208fac7583d7c2", "evidence": {"same_day": true, "patch_ids": ["7a5adfdb0365a88b0dba369addc9e369"]}}, {"rule": 2, "type": "equivalent", "target": "cb9124df6411b29fcb6c954a1393bf96", "evidence": {"same_day": true, "patch_ids": ["7a5adfdb0365a88b0dba369addc9e369"], "statement_hash": "f4579da37e63d89946917caf47ef063989d54c7bfafb7ec83887d0e03c2df92c"}}, {"rule": 2, "type": "equivalent", "target": "da40f8f97e1684da7e34d005f155d61a", "evidence": {"same_day": true, "patch_ids": ["7a5adfdb0365a88b0dba369addc9e369"], "statement_hash": "f4579da37e63d89946917caf47ef063989d54c7bfafb7ec83887d0e03c2df92c"}}, {"rule": 2, "type": "equivalent", "target": "ef8fcf4bc85f6a2f84c3cc4000f5ff63", "evidence": {"same_day": true, "patch_ids": ["7a5adfdb0365a88b0dba369addc9e369"], "statement_hash": "f4579da37e63d89946917caf47ef063989d54c7bfafb7ec83887d0e03c2df92c"}}], "version": "9.5.25", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "a8793fc6cdc85db585208fac7583d7c2", "kind": "equivalent", "version": "13.2", "label": "13.2", "title": "将时区数据文件更新到 tzdata 2021a 版，以反映俄罗斯（Volgograd 时区）和南苏丹的夏令时法规变更，并修正澳大利亚、巴哈马、伯利兹、百慕大、加纳、以色列、肯尼亚、尼日利亚、巴勒斯坦、塞舌尔和瓦努阿图的历史数据。", "evidence": {"same_day": true, "patch_ids": ["7a5adfdb0365a88b0dba369addc9e369"]}, "url": "/docs/compare/?release=13.2#13.2-38f2e080cb6caf67", "source_url": "/docs/release/13.2/#id-1.11.6.27.5"}, {"db_id": "13b3d5c0d37ba51a84d68cc873bc98b7", "kind": "equivalent", "version": "12.6", "label": "12.6", "title": "将时区数据文件更新到 tzdata 2021a 版，以反映俄罗斯（Volgograd 时区）和南苏丹的夏令时法规变更，并修正澳大利亚、巴哈马、伯利兹、百慕大、加纳、以色列、肯尼亚、尼日利亚、巴勒斯坦、塞舌尔和瓦努阿图的历史数据。", "evidence": {"same_day": true, "patch_ids": ["7a5adfdb0365a88b0dba369addc9e369"]}, "url": "/docs/compare/?release=12.6#12.6-15453ed360de50a6", "source_url": "/docs/release/12.6/#id-1.11.6.22.5"}, {"db_id": "ef8fcf4bc85f6a2f84c3cc4000f5ff63", "kind": "equivalent", "version": "11.11", "label": "11.11", "title": "将时区数据文件更新到 tzdata 2021a 版，以反映俄罗斯（伏尔加格勒时区）和南苏丹的夏令时法规变更，并修正澳大利亚、巴哈马、伯利兹、百慕大、加纳、以色列、肯尼亚、尼日利亚、巴勒斯坦、塞舌尔和瓦努阿图的历史数据。", "evidence": {"same_day": true, "patch_ids": ["7a5adfdb0365a88b0dba369addc9e369"], "statement_hash": "f4579da37e63d89946917caf47ef063989d54c7bfafb7ec83887d0e03c2df92c"}, "url": "/docs/compare/?release=11.11#11.11-d223c743b7cb02c8", "source_url": "/docs/release/11.11/#id-1.11.6.16.5"}, {"db_id": "cb9124df6411b29fcb6c954a1393bf96", "kind": "equivalent", "version": "10.16", "label": "10.16", "title": "将时区数据文件更新到 tzdata 2021a 版，以反映俄罗斯（伏尔加格勒时区）和南苏丹的夏令时法规变更，并修正澳大利亚、巴哈马、伯利兹、百慕大、加纳、以色列、肯尼亚、尼日利亚、巴勒斯坦、塞舌尔和瓦努阿图的历史数据。", "evidence": {"same_day": true, "patch_ids": ["7a5adfdb0365a88b0dba369addc9e369"], "statement_hash": "f4579da37e63d89946917caf47ef063989d54c7bfafb7ec83887d0e03c2df92c"}, "url": "/docs/compare/?release=10.16#10.16-d223c743b7cb02c8", "source_url": "/docs/release/10.16/#id-1.11.6.12.5"}, {"db_id": "da40f8f97e1684da7e34d005f155d61a", "kind": "equivalent", "version": "9.6.21", "label": "9.6.21", "title": "更新时区数据文件到 tzdata 版本 2021a，涉及俄罗斯（伏尔加格勒时区）和南苏丹的夏令时法规变更，以及澳大利亚、巴哈马、伯利兹、百慕大、加纳、以色列、肯尼亚、尼日利亚、巴勒斯坦、塞舌尔和瓦努阿图的历史修正。", "evidence": {"same_day": true, "patch_ids": ["7a5adfdb0365a88b0dba369addc9e369"], "statement_hash": "f4579da37e63d89946917caf47ef063989d54c7bfafb7ec83887d0e03c2df92c"}, "url": "/docs/compare/?release=9.6.21#9.6.21-26398dcabece8712", "source_url": "/docs/release/9.6.21/#id-1.11.6.8.6"}]}]}], "stats": [{"key": "all", "label": "全部变更", "count": 32}, {"key": "feature", "label": "新功能", "count": 0}, {"key": "bugfix", "label": "BUG 修复", "count": 15}, {"key": "security", "label": "安全相关", "count": 0}, {"key": "performance", "label": "性能改进", "count": 0}, {"key": "compatibility", "label": "兼容性变化", "count": 0}, {"key": "improvement", "label": "其他改进", "count": 17}], "total": 32, "release_count": 1, "cross_major": false, "cve_count": 0, "cves": [], "cve_available": true, "remaining_cves": [], "security_regressions": [], "warnings": [], "candidate_count": 32, "already_in_source_count": 0, "duplicate_count": 0, "excluded_count": 0, "exclusions": [], "source_as_of": "2026-09-26", "security_as_of": "2026-09-26"}