{"format": 1, "mode": "release", "from_release": null, "to_release": {"date": "2019-11-14", "build": "10.11", "major": "10", "minor": 11, "manual": "10", "status": "stable", "doc_git": "", "version": "10.11", "eol_date": "2022-11-10", "date_text": "2019-11-14", "supported": false, "manual_url": "/docs/10/release-10-11.html", "source_url": "/docs/release/10.11/", "entry_count": 59, "placeholder": false, "content_hash": "2659793fdedad3561534ca024531c87fa59ec13b43a4a37a799431af361bbcaa", "manual_build": "10.23", "source_as_of": "", "changes_count": 59, "doc_loaded_at": "2026-09-26T02:56:43.207462", "migration_html": "<p>对于运行 10.X 的用户，不需要执行导出/恢复。</p>\n<p>但是，如果使用了带有 GiST 索引的 <code>contrib/intarray</code> 扩展，且依赖 <code>&lt;@</code> 操作符的索引搜索，请参阅下方相关条目。</p>\n<p>此外，如果是从早于 10.6 的版本升级，请参见<a href=\"/docs/10/release-10-6.html\" title=\"E.18. 发布版本 10.6\">第 E.18 节</a>。</p>", "compatibility_count": 0, "label": "10.11", "status_label": "历史版本", "eol": "2022-11-10", "age_days": 2512, "support_days": -1420}, "groups": [{"date": "2019-11-14", "build": "10.11", "major": "10", "minor": 11, "manual": "10", "status": "stable", "doc_git": "", "version": "10.11", "eol_date": "2022-11-10", "date_text": "2019-11-14", "supported": false, "manual_url": "/docs/10/release-10-11.html", "source_url": "/docs/release/10.11/", "entry_count": 59, "placeholder": false, "content_hash": "2659793fdedad3561534ca024531c87fa59ec13b43a4a37a799431af361bbcaa", "manual_build": "10.23", "source_as_of": "", "changes_count": 59, "doc_loaded_at": "2026-09-26T02:56:43.207462", "migration_html": "<p>对于运行 10.X 的用户，不需要执行导出/恢复。</p>\n<p>但是，如果使用了带有 GiST 索引的 <code>contrib/intarray</code> 扩展，且依赖 <code>&lt;@</code> 操作符的索引搜索，请参阅下方相关条目。</p>\n<p>此外，如果是从早于 10.6 的版本升级，请参见<a href=\"/docs/10/release-10-6.html\" title=\"E.18. 发布版本 10.6\">第 E.18 节</a>。</p>", "compatibility_count": 0, "label": "10.11", "status_label": "历史版本", "eol": "2022-11-10", "age_days": 2512, "support_days": -1420, "entries": [{"id": "10.11-25c06c354d740a48", "cves": [], "html": "<p>修复 <code>ALTER TABLE SET</code> 使用自定义关系选项时的失败（Michael Paquier）</p>", "text": "修复 ALTER TABLE SET 使用自定义关系选项时的失败（Michael Paquier）", "title": "修复 ALTER TABLE SET 使用自定义关系选项时的失败", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "c0d6008d84fa19305489210aab6bf36f1eba613f3819916edd6698a6140029d1", "section_path": ["变更"], "commit_groups": [["707f38e38", "736b84eed", "98b5c3785", "d01d4f237", "d48168003"]], "identity_text": "Fix failure of ALTER TABLE SET with a custom relation option (Michael Paquier)", "commit_aliases": ["707f38e38", "736b84eed", "98b5c3785", "d01d4f237", "d48168003"], "source_commits": ["d48168003"], "source_entry_id": "10.11/changes/001", "db_id": "16cfe4b50f02b4a55dfed9ae92007f8f", "patch_ids": ["761da8cb8e944e6022ca796b4e611f71"], "statement_hash": "9912b2cf98e13762d020def35f1dd227a691e4ec111f0f99e717f88b93e529a9", "relations": [{"rule": 2, "type": "equivalent", "target": "b6087044ab471d3707e77ec528fc6de7", "evidence": {"same_day": true, "patch_ids": ["761da8cb8e944e6022ca796b4e611f71"], "statement_hash": "9912b2cf98e13762d020def35f1dd227a691e4ec111f0f99e717f88b93e529a9"}}, {"rule": 2, "type": "equivalent", "target": "f218094d46f4eda45361ec611a2405c2", "evidence": {"same_day": true, "patch_ids": ["761da8cb8e944e6022ca796b4e611f71"], "statement_hash": "9912b2cf98e13762d020def35f1dd227a691e4ec111f0f99e717f88b93e529a9"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "b6087044ab471d3707e77ec528fc6de7", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复 ALTER TABLE SET 使用自定义关系选项时的失败", "evidence": {"same_day": true, "patch_ids": ["761da8cb8e944e6022ca796b4e611f71"], "statement_hash": "9912b2cf98e13762d020def35f1dd227a691e4ec111f0f99e717f88b93e529a9"}, "url": "/docs/compare/?release=11.6#11.6-25c06c354d740a48", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "f218094d46f4eda45361ec611a2405c2", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "修复带自定义关系选项时 ALTER TABLE SET 的失败", "evidence": {"same_day": true, "patch_ids": ["761da8cb8e944e6022ca796b4e611f71"], "statement_hash": "9912b2cf98e13762d020def35f1dd227a691e4ec111f0f99e717f88b93e529a9"}, "url": "/docs/compare/?release=9.6.16#9.6.16-b255a5d64addabbd", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}]}, {"id": "10.11-92dd1d9f816747ae", "cves": [], "html": "<p>如果没有更改所有父表，则禁止更改多重继承列的类型（Tom Lane）</p>\n<p>以前允许这样做，导致对类型已不同步的父表进行查询时失败。</p>", "text": "如果没有更改所有父表，则禁止更改多重继承列的类型（Tom Lane） 以前允许这样做，导致对类型已不同步的父表进行查询时失败。", "title": "如果没有更改所有父表，则禁止更改多重继承列的类型", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "6e1613a23147732ca93f3a30716bbbbed590d25f9ec2e1a850b56d434715ad38", "section_path": ["变更"], "commit_groups": [["328c3f6f9", "3442235f2", "451432214", "4d4c66add", "909efc449", "c511d367a"]], "identity_text": "Disallow changing a multiply-inherited column's type if not all parent tables were changed (Tom Lane) Previously, this was allowed, whereupon queries on the now-out-of-sync parent would fail.", "commit_aliases": ["328c3f6f9", "3442235f2", "451432214", "4d4c66add", "909efc449", "c511d367a"], "source_commits": ["451432214"], "source_entry_id": "10.11/changes/002", "db_id": "237f8f9f6100662c31b11afcdd14aba2", "patch_ids": ["343b92f30efaa73ed288e6114363b16c"], "statement_hash": "d5d27be2e2b7eb4d2e9ed2597bdf13c1b4095c72c0c8b4c9dd33f4b692c7bc61", "relations": [{"rule": 2, "type": "equivalent", "target": "0051a5236850b915dd2ca2ff742fc1dd", "evidence": {"same_day": true, "patch_ids": ["343b92f30efaa73ed288e6114363b16c"], "statement_hash": "d5d27be2e2b7eb4d2e9ed2597bdf13c1b4095c72c0c8b4c9dd33f4b692c7bc61"}}, {"rule": 2, "type": "equivalent", "target": "6eae457a01e8fe45a627b0cbced492f2", "evidence": {"same_day": true, "patch_ids": ["343b92f30efaa73ed288e6114363b16c"], "statement_hash": "d5d27be2e2b7eb4d2e9ed2597bdf13c1b4095c72c0c8b4c9dd33f4b692c7bc61"}}, {"rule": 2, "type": "equivalent", "target": "da7b9a08fec5ef54cb8e5066d70a2f7f", "evidence": {"same_day": true, "patch_ids": ["343b92f30efaa73ed288e6114363b16c"], "statement_hash": "d5d27be2e2b7eb4d2e9ed2597bdf13c1b4095c72c0c8b4c9dd33f4b692c7bc61"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "da7b9a08fec5ef54cb8e5066d70a2f7f", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "如果没有更改所有父表，则禁止更改多重继承列的类型", "evidence": {"same_day": true, "patch_ids": ["343b92f30efaa73ed288e6114363b16c"], "statement_hash": "d5d27be2e2b7eb4d2e9ed2597bdf13c1b4095c72c0c8b4c9dd33f4b692c7bc61"}, "url": "/docs/compare/?release=11.6#11.6-92dd1d9f816747ae", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "6eae457a01e8fe45a627b0cbced492f2", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "如果不是所有父表都被更改，禁止更改多重继承列的类型", "evidence": {"same_day": true, "patch_ids": ["343b92f30efaa73ed288e6114363b16c"], "statement_hash": "d5d27be2e2b7eb4d2e9ed2597bdf13c1b4095c72c0c8b4c9dd33f4b692c7bc61"}, "url": "/docs/compare/?release=9.6.16#9.6.16-fc299d74bbdde25f", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "0051a5236850b915dd2ca2ff742fc1dd", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "如果不是所有父表都被更改，禁止更改多重继承列的类型", "evidence": {"same_day": true, "patch_ids": ["343b92f30efaa73ed288e6114363b16c"], "statement_hash": "d5d27be2e2b7eb4d2e9ed2597bdf13c1b4095c72c0c8b4c9dd33f4b692c7bc61"}, "url": "/docs/compare/?release=9.5.20#9.5.20-fc299d74bbdde25f", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}]}, {"id": "10.11-500f2da382ce3ac5", "cves": [], "html": "<p>防止 <code>VACUUM</code> 尝试冻结涉及仍在运行事务的旧 multixact ID（Nathan Bossart，Jeremy Schneider）</p>\n<p>这种情况会导致 <code>VACUUM</code> 一直失败，直到旧事务终止。</p>", "text": "防止 VACUUM 尝试冻结涉及仍在运行事务的旧 multixact ID（Nathan Bossart，Jeremy Schneider） 这种情况会导致 VACUUM 一直失败，直到旧事务终止。", "title": "防止 VACUUM 尝试冻结涉及仍在运行事务的旧 multixact ID", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "89f33034a3f8064dcb522fc5467a9fa0acaa91fe43a08aebd64b732fbeba64ad", "section_path": ["变更"], "commit_groups": [["0640f032a", "080cf32d2", "486a8f152", "583d86f92", "6bda2af03", "6f1e336de", "c1443eebe"]], "identity_text": "Prevent VACUUM from trying to freeze an old multixact ID involving a still-running transaction (Nathan Bossart, Jeremy Schneider) This case would lead to VACUUM failing until the old transaction terminates.", "commit_aliases": ["0640f032a", "080cf32d2", "486a8f152", "583d86f92", "6bda2af03", "6f1e336de", "c1443eebe"], "source_commits": ["583d86f92"], "source_entry_id": "10.11/changes/003", "db_id": "fa826bc875c8ea5b61b9dd7da2abdb9e", "patch_ids": ["9311cce21ebf176e990d4c8797dc5f4f"], "statement_hash": "cbef18f9f36d7cfabe7071d45c459f38d2c5fba3bcd661c85f3cda95f35e2123", "relations": [{"rule": 2, "type": "equivalent", "target": "3a32e884c53d7d9d998e171b2c0fee41", "evidence": {"same_day": true, "patch_ids": ["9311cce21ebf176e990d4c8797dc5f4f"], "statement_hash": "cbef18f9f36d7cfabe7071d45c459f38d2c5fba3bcd661c85f3cda95f35e2123"}}, {"rule": 2, "type": "equivalent", "target": "522a4efb8f7025b59c955d4981799d03", "evidence": {"same_day": true, "patch_ids": ["9311cce21ebf176e990d4c8797dc5f4f"], "statement_hash": "cbef18f9f36d7cfabe7071d45c459f38d2c5fba3bcd661c85f3cda95f35e2123"}}, {"rule": 2, "type": "equivalent", "target": "5c6d43c35ae888f0c0b29165ff45738e", "evidence": {"same_day": true, "patch_ids": ["9311cce21ebf176e990d4c8797dc5f4f"], "statement_hash": "cbef18f9f36d7cfabe7071d45c459f38d2c5fba3bcd661c85f3cda95f35e2123"}}, {"rule": 2, "type": "equivalent", "target": "6c8551b80cab90994547479c3079c61c", "evidence": {"same_day": true, "patch_ids": ["9311cce21ebf176e990d4c8797dc5f4f"], "statement_hash": "cbef18f9f36d7cfabe7071d45c459f38d2c5fba3bcd661c85f3cda95f35e2123"}}, {"rule": 2, "type": "equivalent", "target": "f9a8ec5b02182ced9ecb5f30c93601e4", "evidence": {"same_day": true, "patch_ids": ["9311cce21ebf176e990d4c8797dc5f4f"], "statement_hash": "cbef18f9f36d7cfabe7071d45c459f38d2c5fba3bcd661c85f3cda95f35e2123"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "5c6d43c35ae888f0c0b29165ff45738e", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "防止 VACUUM 尝试冻结涉及仍在运行事务的旧 multixact ID", "evidence": {"same_day": true, "patch_ids": ["9311cce21ebf176e990d4c8797dc5f4f"], "statement_hash": "cbef18f9f36d7cfabe7071d45c459f38d2c5fba3bcd661c85f3cda95f35e2123"}, "url": "/docs/compare/?release=12.1#12.1-03ce7d8051285d3a", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "522a4efb8f7025b59c955d4981799d03", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "防止 VACUUM 尝试冻结涉及仍在运行事务的旧 multixact ID", "evidence": {"same_day": true, "patch_ids": ["9311cce21ebf176e990d4c8797dc5f4f"], "statement_hash": "cbef18f9f36d7cfabe7071d45c459f38d2c5fba3bcd661c85f3cda95f35e2123"}, "url": "/docs/compare/?release=11.6#11.6-500f2da382ce3ac5", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "6c8551b80cab90994547479c3079c61c", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "防止 VACUUM 尝试冻结涉及仍在运行的事务的旧多事务 ID", "evidence": {"same_day": true, "patch_ids": ["9311cce21ebf176e990d4c8797dc5f4f"], "statement_hash": "cbef18f9f36d7cfabe7071d45c459f38d2c5fba3bcd661c85f3cda95f35e2123"}, "url": "/docs/compare/?release=9.6.16#9.6.16-f99d5c2e4e648987", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "f9a8ec5b02182ced9ecb5f30c93601e4", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "防止 VACUUM 尝试冻结涉及仍在运行的事务的旧多事务 ID", "evidence": {"same_day": true, "patch_ids": ["9311cce21ebf176e990d4c8797dc5f4f"], "statement_hash": "cbef18f9f36d7cfabe7071d45c459f38d2c5fba3bcd661c85f3cda95f35e2123"}, "url": "/docs/compare/?release=9.5.20#9.5.20-f99d5c2e4e648987", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "3a32e884c53d7d9d998e171b2c0fee41", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "防止 VACUUM 尝试冻结涉及仍在运行的事务的旧多事务 ID", "evidence": {"same_day": true, "patch_ids": ["9311cce21ebf176e990d4c8797dc5f4f"], "statement_hash": "cbef18f9f36d7cfabe7071d45c459f38d2c5fba3bcd661c85f3cda95f35e2123"}, "url": "/docs/compare/?release=9.4.25#9.4.25-f99d5c2e4e648987", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-b73150817e1957a8", "cves": [], "html": "<p>修复规划器对使用 ICU 排序规则的 <code>ILIKE</code> 中可进行大小写折叠的字符的测试（Tom Lane）</p>\n<p>此错误导致规划器将模式中太多的部分视为固定前缀，使得从 <code>ILIKE</code> 子句生成的索引扫描可能遗漏应当找到的条目。</p>", "text": "修复规划器对使用 ICU 排序规则的 ILIKE 中可进行大小写折叠的字符的测试（Tom Lane） 此错误导致规划器将模式中太多的部分视为固定前缀，使得从 ILIKE 子句生成的索引扫描可能遗漏应当找到的条目。", "title": "修复规划器对使用 ICU 排序规则的 ILIKE 中可进行大小写折叠的字符的测试", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "2eac482ea76de414eafdf153161e0cb5e6ffd05d6dce9b5c19abb62e052622ec", "section_path": ["变更"], "commit_groups": [["03c811a48", "886cf85b5", "c0c12ce39", "c914e74d2"]], "identity_text": "Fix planner's test for case-foldable characters in ILIKE with an ICU collation (Tom Lane) This mistake caused the planner to treat too much of the pattern as being a fixed prefix, so that indexscans derived from an ILIKE clause might miss entries that they should find.", "commit_aliases": ["03c811a48", "886cf85b5", "c0c12ce39", "c914e74d2"], "source_commits": ["886cf85b5"], "source_entry_id": "10.11/changes/004", "db_id": "4757e644771bce84bfac66e456662fa4", "patch_ids": ["02426e51c62341cc5232508ae28dd18d"], "statement_hash": "0bd50b7d09a94356fd6f4777593ad64d131a9fac211ac61e4c320d0f544f6016", "relations": [{"rule": 2, "type": "equivalent", "target": "455747e7cd5947a93e48ea487e6f0b06", "evidence": {"same_day": true, "patch_ids": ["02426e51c62341cc5232508ae28dd18d"], "statement_hash": "0bd50b7d09a94356fd6f4777593ad64d131a9fac211ac61e4c320d0f544f6016"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "455747e7cd5947a93e48ea487e6f0b06", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复规划器对使用 ICU 排序规则的 ILIKE 中可进行大小写折叠的字符的测试", "evidence": {"same_day": true, "patch_ids": ["02426e51c62341cc5232508ae28dd18d"], "statement_hash": "0bd50b7d09a94356fd6f4777593ad64d131a9fac211ac61e4c320d0f544f6016"}, "url": "/docs/compare/?release=11.6#11.6-b73150817e1957a8", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}]}, {"id": "10.11-e8bea20d416c7b06", "cves": [], "html": "<p>确保处理查询表达式时也处理 <code>WINDOW</code> 子句中的偏移量表达式（Andrew Gierth）</p>\n<p>当偏移量是较复杂的表达式时，这一疏漏可能导致各种失败。例如，如果函数被内联，此类表达式中的函数参数引用就会失败。</p>", "text": "确保处理查询表达式时也处理 WINDOW 子句中的偏移量表达式（Andrew Gierth） 当偏移量是较复杂的表达式时，这一疏漏可能导致各种失败。例如，如果函数被内联，此类表达式中的函数参数引用就会失败。", "title": "确保处理查询表达式时也处理 WINDOW 子句中的偏移量表达式", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "383076da8651ea4ff9988899cd825b675a93c8ebdfd5a26ebf1107444eb5883e", "section_path": ["变更"], "commit_groups": [["0a445f279", "0b11dc019", "3473f81dd", "6db0d7f35", "b7a1c5539", "d2427f11b", "ede0ab6cc"]], "identity_text": "Ensure that offset expressions in WINDOW clauses are processed when a query's expressions are manipulated (Andrew Gierth) This oversight could result in assorted failures when the offsets are nontrivial expressions. One example is that a function parameter reference in such an expression would fail if the function was inlined.", "commit_aliases": ["0a445f279", "0b11dc019", "3473f81dd", "6db0d7f35", "b7a1c5539", "d2427f11b", "ede0ab6cc"], "source_commits": ["ede0ab6cc"], "source_entry_id": "10.11/changes/005", "db_id": "051cfcbf21f9ff3ad7f3b7145cfb8239", "patch_ids": ["8235cc73f9a36fb23483c21b4d478ab6"], "statement_hash": "9367d99ad3c83d87b1b66563cc87db04a17a16aad9c314c1aa66646533c1d89e", "relations": [{"rule": 2, "type": "equivalent", "target": "253f8c0da0e1b976098cbde686e376f0", "evidence": {"same_day": true, "patch_ids": ["8235cc73f9a36fb23483c21b4d478ab6"], "statement_hash": "9367d99ad3c83d87b1b66563cc87db04a17a16aad9c314c1aa66646533c1d89e"}}, {"rule": 2, "type": "equivalent", "target": "514ca97d8fc5e1b9913fa206c2ab3b7c", "evidence": {"same_day": true, "patch_ids": ["8235cc73f9a36fb23483c21b4d478ab6"], "statement_hash": "9367d99ad3c83d87b1b66563cc87db04a17a16aad9c314c1aa66646533c1d89e"}}, {"rule": 2, "type": "equivalent", "target": "786a8eb68b27a6e848bfa72505a70b7b", "evidence": {"same_day": true, "patch_ids": ["8235cc73f9a36fb23483c21b4d478ab6"], "statement_hash": "9367d99ad3c83d87b1b66563cc87db04a17a16aad9c314c1aa66646533c1d89e"}}, {"rule": 2, "type": "equivalent", "target": "87328496fe1ff4fe1e4cba6a35b8ff0e", "evidence": {"same_day": true, "patch_ids": ["8235cc73f9a36fb23483c21b4d478ab6"], "statement_hash": "9367d99ad3c83d87b1b66563cc87db04a17a16aad9c314c1aa66646533c1d89e"}}, {"rule": 2, "type": "equivalent", "target": "b353f1899827134e9fe629738825aa8a", "evidence": {"same_day": true, "patch_ids": ["8235cc73f9a36fb23483c21b4d478ab6"], "statement_hash": "9367d99ad3c83d87b1b66563cc87db04a17a16aad9c314c1aa66646533c1d89e"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "87328496fe1ff4fe1e4cba6a35b8ff0e", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "确保处理查询表达式时也处理 WINDOW 子句中的偏移量表达式", "evidence": {"same_day": true, "patch_ids": ["8235cc73f9a36fb23483c21b4d478ab6"], "statement_hash": "9367d99ad3c83d87b1b66563cc87db04a17a16aad9c314c1aa66646533c1d89e"}, "url": "/docs/compare/?release=12.1#12.1-119d50d0f6cf35b0", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "514ca97d8fc5e1b9913fa206c2ab3b7c", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "确保处理查询表达式时也处理 WINDOW 子句中的偏移量表达式", "evidence": {"same_day": true, "patch_ids": ["8235cc73f9a36fb23483c21b4d478ab6"], "statement_hash": "9367d99ad3c83d87b1b66563cc87db04a17a16aad9c314c1aa66646533c1d89e"}, "url": "/docs/compare/?release=11.6#11.6-e8bea20d416c7b06", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "b353f1899827134e9fe629738825aa8a", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "确保查询表达式被改写时 WINDOW 子句中的偏移表达式也得到处理", "evidence": {"same_day": true, "patch_ids": ["8235cc73f9a36fb23483c21b4d478ab6"], "statement_hash": "9367d99ad3c83d87b1b66563cc87db04a17a16aad9c314c1aa66646533c1d89e"}, "url": "/docs/compare/?release=9.6.16#9.6.16-c09b9f7dccb0b665", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "253f8c0da0e1b976098cbde686e376f0", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "确保查询表达式被改写时 WINDOW 子句中的偏移表达式也得到处理", "evidence": {"same_day": true, "patch_ids": ["8235cc73f9a36fb23483c21b4d478ab6"], "statement_hash": "9367d99ad3c83d87b1b66563cc87db04a17a16aad9c314c1aa66646533c1d89e"}, "url": "/docs/compare/?release=9.5.20#9.5.20-c09b9f7dccb0b665", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "786a8eb68b27a6e848bfa72505a70b7b", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "确保查询表达式被改写时 WINDOW 子句中的偏移表达式也得到处理", "evidence": {"same_day": true, "patch_ids": ["8235cc73f9a36fb23483c21b4d478ab6"], "statement_hash": "9367d99ad3c83d87b1b66563cc87db04a17a16aad9c314c1aa66646533c1d89e"}, "url": "/docs/compare/?release=9.4.25#9.4.25-c09b9f7dccb0b665", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-138c48bddb0a60ea", "cves": [], "html": "<p>修复 <code>WITH CHECK OPTION</code> 表达式和行级安全策略表达式中整行变量的处理（Andres Freund）</p>\n<p>以前，这种用法可能导致虚假的行类型不匹配错误。</p>", "text": "修复 WITH CHECK OPTION 表达式和行级安全策略表达式中整行变量的处理（Andres Freund） 以前，这种用法可能导致虚假的行类型不匹配错误。", "title": "修复 WITH CHECK OPTION 表达式和行级安全策略表达式中整行变量的处理", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "f3d308526a9653243c7df3d8cf577d4fba87a87c22b425040492cadd4757fa94", "section_path": ["变更"], "commit_groups": [["5e9b18c78", "64d926f2b", "7f1f72c44", "aee5736f1", "b00132b9a", "b54cff2bf", "ca08ea52b"]], "identity_text": "Fix handling of whole-row variables in WITH CHECK OPTION expressions and row-level-security policy expressions (Andres Freund) Previously, such usage might result in bogus errors about row type mismatches.", "commit_aliases": ["5e9b18c78", "64d926f2b", "7f1f72c44", "aee5736f1", "b00132b9a", "b54cff2bf", "ca08ea52b"], "source_commits": ["b54cff2bf"], "source_entry_id": "10.11/changes/006", "db_id": "31a9b445a9d3e78e0aff6ecc4d55e21a", "patch_ids": ["eeff3aa8652467d6281ff77b8af22202"], "statement_hash": "0c297fc54fffed4bf901232ed4705af8f39907e1be087886adb9261df306853e", "relations": [{"rule": 2, "type": "equivalent", "target": "1ab3960ee0900882f2cc8d92c915ca7d", "evidence": {"same_day": true, "patch_ids": ["eeff3aa8652467d6281ff77b8af22202"], "statement_hash": "0c297fc54fffed4bf901232ed4705af8f39907e1be087886adb9261df306853e"}}, {"rule": 2, "type": "equivalent", "target": "24721a984f434daa6930df0de10a11f7", "evidence": {"same_day": true, "patch_ids": ["eeff3aa8652467d6281ff77b8af22202"], "statement_hash": "0c297fc54fffed4bf901232ed4705af8f39907e1be087886adb9261df306853e"}}, {"rule": 2, "type": "equivalent", "target": "5c5790a7fa07258e86ce0fe8fe68ec63", "evidence": {"same_day": true, "patch_ids": ["eeff3aa8652467d6281ff77b8af22202"], "statement_hash": "0c297fc54fffed4bf901232ed4705af8f39907e1be087886adb9261df306853e"}}, {"rule": 2, "type": "equivalent", "target": "868013cfe87035bbb5e7e345fe7c7381", "evidence": {"same_day": true, "patch_ids": ["eeff3aa8652467d6281ff77b8af22202"], "statement_hash": "0c297fc54fffed4bf901232ed4705af8f39907e1be087886adb9261df306853e"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "24721a984f434daa6930df0de10a11f7", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复 WITH CHECK OPTION 表达式和行级安全策略表达式中整行变量的处理", "evidence": {"same_day": true, "patch_ids": ["eeff3aa8652467d6281ff77b8af22202"], "statement_hash": "0c297fc54fffed4bf901232ed4705af8f39907e1be087886adb9261df306853e"}, "url": "/docs/compare/?release=11.6#11.6-138c48bddb0a60ea", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "1ab3960ee0900882f2cc8d92c915ca7d", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "修复 WITH CHECK OPTION 表达式和行级安全策略表达式中整行变量的处理", "evidence": {"same_day": true, "patch_ids": ["eeff3aa8652467d6281ff77b8af22202"], "statement_hash": "0c297fc54fffed4bf901232ed4705af8f39907e1be087886adb9261df306853e"}, "url": "/docs/compare/?release=9.6.16#9.6.16-138c48bddb0a60ea", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "5c5790a7fa07258e86ce0fe8fe68ec63", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "修复 WITH CHECK OPTION 表达式和行级安全策略表达式中整行变量的处理", "evidence": {"same_day": true, "patch_ids": ["eeff3aa8652467d6281ff77b8af22202"], "statement_hash": "0c297fc54fffed4bf901232ed4705af8f39907e1be087886adb9261df306853e"}, "url": "/docs/compare/?release=9.5.20#9.5.20-138c48bddb0a60ea", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "868013cfe87035bbb5e7e345fe7c7381", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "修复 WITH CHECK OPTION 表达式和行级安全策略表达式中整行变量的处理", "evidence": {"same_day": true, "patch_ids": ["eeff3aa8652467d6281ff77b8af22202"], "statement_hash": "0c297fc54fffed4bf901232ed4705af8f39907e1be087886adb9261df306853e"}, "url": "/docs/compare/?release=9.4.25#9.4.25-138c48bddb0a60ea", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-9ea3d713ace46e17", "cves": [], "html": "<p>避免 postmaster 子进程数组已无空闲槽位时，并行查询请求后台工作进程导致 postmaster 失败（Tom Lane）</p>", "text": "避免 postmaster 子进程数组已无空闲槽位时，并行查询请求后台工作进程导致 postmaster 失败（Tom Lane）", "title": "避免 postmaster 子进程数组已无空闲槽位时，并行查询请求后台工作进程导致 postmaster 失败", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "6fdbfb93fe546b9caeb0ae967fc296989dd0450c1a206916ebbe481a5a65831e", "section_path": ["变更"], "commit_groups": [["021065aac", "1b5c2ddcd", "3887e9455", "7e8d0eb63", "8c2910ce5", "c69e982a6"]], "identity_text": "Avoid postmaster failure if a parallel query requests a background worker when no postmaster child process array slots remain free (Tom Lane)", "commit_aliases": ["021065aac", "1b5c2ddcd", "3887e9455", "7e8d0eb63", "8c2910ce5", "c69e982a6"], "source_commits": ["1b5c2ddcd"], "source_entry_id": "10.11/changes/007", "db_id": "34b9e07ede55d67ae654c7c040b465b5", "patch_ids": ["96d0aacaad882c2d32ec347beb727443"], "statement_hash": "59eaa010be2a4d75cef37cd13bf56abb667da2b61444f4abcbb1f9498e5c7977", "relations": [{"rule": 2, "type": "equivalent", "target": "2796791ad0615cd972274fc27cfa15c2", "evidence": {"same_day": true, "patch_ids": ["96d0aacaad882c2d32ec347beb727443"], "statement_hash": "59eaa010be2a4d75cef37cd13bf56abb667da2b61444f4abcbb1f9498e5c7977"}}, {"rule": 2, "type": "equivalent", "target": "6cb33d9008a7674a50e355939da5e32a", "evidence": {"same_day": true, "patch_ids": ["96d0aacaad882c2d32ec347beb727443"], "statement_hash": "59eaa010be2a4d75cef37cd13bf56abb667da2b61444f4abcbb1f9498e5c7977"}}, {"rule": 2, "type": "equivalent", "target": "6d5136787092da5d45ab2ca5be03299b", "evidence": {"same_day": true, "patch_ids": ["96d0aacaad882c2d32ec347beb727443"], "statement_hash": "59eaa010be2a4d75cef37cd13bf56abb667da2b61444f4abcbb1f9498e5c7977"}}, {"rule": 2, "type": "equivalent", "target": "998e1240a8474fc87758996a60323d84", "evidence": {"same_day": true, "patch_ids": ["96d0aacaad882c2d32ec347beb727443"], "statement_hash": "59eaa010be2a4d75cef37cd13bf56abb667da2b61444f4abcbb1f9498e5c7977"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "6d5136787092da5d45ab2ca5be03299b", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "避免 postmaster 子进程数组已无空闲槽位时，并行查询请求后台工作进程导致 postmaster 失败", "evidence": {"same_day": true, "patch_ids": ["96d0aacaad882c2d32ec347beb727443"], "statement_hash": "59eaa010be2a4d75cef37cd13bf56abb667da2b61444f4abcbb1f9498e5c7977"}, "url": "/docs/compare/?release=12.1#12.1-1ee3e3dab4caeacf", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "2796791ad0615cd972274fc27cfa15c2", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "避免 postmaster 子进程数组已无空闲槽位时，并行查询请求后台工作进程导致 postmaster 失败", "evidence": {"same_day": true, "patch_ids": ["96d0aacaad882c2d32ec347beb727443"], "statement_hash": "59eaa010be2a4d75cef37cd13bf56abb667da2b61444f4abcbb1f9498e5c7977"}, "url": "/docs/compare/?release=11.6#11.6-9ea3d713ace46e17", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "6cb33d9008a7674a50e355939da5e32a", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "避免并行查询在没有空闲 postmaster 子进程数组槽位时请求后台工作者导致 postmaster 失败", "evidence": {"same_day": true, "patch_ids": ["96d0aacaad882c2d32ec347beb727443"], "statement_hash": "59eaa010be2a4d75cef37cd13bf56abb667da2b61444f4abcbb1f9498e5c7977"}, "url": "/docs/compare/?release=9.6.16#9.6.16-0564e460aeb91f1f", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "998e1240a8474fc87758996a60323d84", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "避免并行查询在没有空闲 postmaster 子进程数组槽位时请求后台工作者导致 postmaster 失败", "evidence": {"same_day": true, "patch_ids": ["96d0aacaad882c2d32ec347beb727443"], "statement_hash": "59eaa010be2a4d75cef37cd13bf56abb667da2b61444f4abcbb1f9498e5c7977"}, "url": "/docs/compare/?release=9.5.20#9.5.20-0564e460aeb91f1f", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}]}, {"id": "10.11-63eda83a0643d39b", "cves": [], "html": "<p>如果 <code>BEFORE UPDATE</code> 触发器原样返回旧元组，且它并非最后一个此类触发器，则防止可能发生的重复释放（Thomas Munro）</p>", "text": "如果 BEFORE UPDATE 触发器原样返回旧元组，且它并非最后一个此类触发器，则防止可能发生的重复释放（Thomas Munro）", "title": "如果 BEFORE UPDATE 触发器原样返回旧元组，且它并非最后一个此类触发器，则防止可能发生的重复释放", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "508164751652932620cbc963ccfc22a3af316af1deee03cc9d3e9e03e4646532", "section_path": ["变更"], "commit_groups": [["03813a50e", "1ced082b9", "1fe8d209e", "60886965a", "aed967d69", "afa71d915", "cb0c79ae6"]], "identity_text": "Prevent possible double-free if a BEFORE UPDATE trigger returns the old tuple as-is, and it is not the last such trigger (Thomas Munro)", "commit_aliases": ["03813a50e", "1ced082b9", "1fe8d209e", "60886965a", "aed967d69", "afa71d915", "cb0c79ae6"], "source_commits": ["60886965a"], "source_entry_id": "10.11/changes/008", "db_id": "46df80f582a21228ddc984e055480492", "patch_ids": ["d276484a01556c3f5b9020bb4c178357"], "statement_hash": "20b88f9bb0f73e7d8437e8515f90daaba87126353f0859efca58966a23a76993", "relations": [{"rule": 2, "type": "equivalent", "target": "49b4ce39a0e2802530d61bec2baddb7f", "evidence": {"same_day": true, "patch_ids": ["d276484a01556c3f5b9020bb4c178357"], "statement_hash": "20b88f9bb0f73e7d8437e8515f90daaba87126353f0859efca58966a23a76993"}}, {"rule": 2, "type": "equivalent", "target": "65587701cba227ebaaafe70e227c5cd3", "evidence": {"same_day": true, "patch_ids": ["d276484a01556c3f5b9020bb4c178357"], "statement_hash": "20b88f9bb0f73e7d8437e8515f90daaba87126353f0859efca58966a23a76993"}}, {"rule": 2, "type": "equivalent", "target": "a743e90ea3933afa52603f8108e08d01", "evidence": {"same_day": true, "patch_ids": ["d276484a01556c3f5b9020bb4c178357"], "statement_hash": "20b88f9bb0f73e7d8437e8515f90daaba87126353f0859efca58966a23a76993"}}, {"rule": 2, "type": "equivalent", "target": "f510b34b7d7b94340b025b5052b1f32f", "evidence": {"same_day": true, "patch_ids": ["d276484a01556c3f5b9020bb4c178357"], "statement_hash": "20b88f9bb0f73e7d8437e8515f90daaba87126353f0859efca58966a23a76993"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "a743e90ea3933afa52603f8108e08d01", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "如果 BEFORE UPDATE 触发器原样返回旧元组，且它并非最后一个此类触发器，则防止可能发生的重复释放", "evidence": {"same_day": true, "patch_ids": ["d276484a01556c3f5b9020bb4c178357"], "statement_hash": "20b88f9bb0f73e7d8437e8515f90daaba87126353f0859efca58966a23a76993"}, "url": "/docs/compare/?release=11.6#11.6-63eda83a0643d39b", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "65587701cba227ebaaafe70e227c5cd3", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "防止 BEFORE UPDATE 触发器原样返回旧元组且它不是最后一个此类触发器时可能的双重释放", "evidence": {"same_day": true, "patch_ids": ["d276484a01556c3f5b9020bb4c178357"], "statement_hash": "20b88f9bb0f73e7d8437e8515f90daaba87126353f0859efca58966a23a76993"}, "url": "/docs/compare/?release=9.6.16#9.6.16-c39bf1ddd20a41ae", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "49b4ce39a0e2802530d61bec2baddb7f", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "防止 BEFORE UPDATE 触发器原样返回旧元组且它不是最后一个此类触发器时可能的双重释放", "evidence": {"same_day": true, "patch_ids": ["d276484a01556c3f5b9020bb4c178357"], "statement_hash": "20b88f9bb0f73e7d8437e8515f90daaba87126353f0859efca58966a23a76993"}, "url": "/docs/compare/?release=9.5.20#9.5.20-c39bf1ddd20a41ae", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "f510b34b7d7b94340b025b5052b1f32f", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "防止 BEFORE UPDATE 触发器原样返回旧元组且它不是最后一个此类触发器时可能的双重释放", "evidence": {"same_day": true, "patch_ids": ["d276484a01556c3f5b9020bb4c178357"], "statement_hash": "20b88f9bb0f73e7d8437e8515f90daaba87126353f0859efca58966a23a76993"}, "url": "/docs/compare/?release=9.4.25#9.4.25-c39bf1ddd20a41ae", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-1bb1197d56a5461c", "cves": [], "html": "<p>在并行工作进程启动期间设置 GUC 参数发生错误时，提供相关的错误上下文行（Thomas Munro）</p>", "text": "在并行工作进程启动期间设置 GUC 参数发生错误时，提供相关的错误上下文行（Thomas Munro）", "title": "在并行工作进程启动期间设置 GUC 参数发生错误时，提供相关的错误上下文行", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "f4ecfd26b450793d7f4ddb3773db46d66e87ca32e56f08bade9ddb54d8de85f8", "section_path": ["变更"], "commit_groups": [["3af7c64fe", "3c8c55dd5", "6737111a7", "89a3cdb32", "cdbb39213", "fd5ffa425"]], "identity_text": "Provide a relevant error context line when an error occurs while setting GUC parameters during parallel worker startup (Thomas Munro)", "commit_aliases": ["3af7c64fe", "3c8c55dd5", "6737111a7", "89a3cdb32", "cdbb39213", "fd5ffa425"], "source_commits": ["89a3cdb32"], "source_entry_id": "10.11/changes/009", "db_id": "ffba4d83f366131db32533d2cf3a8fc8", "patch_ids": ["1243fa5b0921820b1c554a187d60091f"], "statement_hash": "8baec96ef39b036a484908e57df8cc57b9eb9abcb96cc830db572873e8dde69d", "relations": [{"rule": 2, "type": "equivalent", "target": "194858126ea4e7dfa00ddcca88d219a1", "evidence": {"same_day": true, "patch_ids": ["1243fa5b0921820b1c554a187d60091f"], "statement_hash": "8baec96ef39b036a484908e57df8cc57b9eb9abcb96cc830db572873e8dde69d"}}, {"rule": 2, "type": "equivalent", "target": "1cdeecd950f87ad9f78cd449aa611815", "evidence": {"same_day": true, "patch_ids": ["1243fa5b0921820b1c554a187d60091f"], "statement_hash": "8baec96ef39b036a484908e57df8cc57b9eb9abcb96cc830db572873e8dde69d"}}, {"rule": 2, "type": "equivalent", "target": "4c52b47c2e732d9889ddec4ca22e4589", "evidence": {"same_day": true, "patch_ids": ["1243fa5b0921820b1c554a187d60091f"], "statement_hash": "8baec96ef39b036a484908e57df8cc57b9eb9abcb96cc830db572873e8dde69d"}}, {"rule": 2, "type": "equivalent", "target": "4ea3d2bdb5ed937268773fde22216293", "evidence": {"same_day": true, "patch_ids": ["1243fa5b0921820b1c554a187d60091f"], "statement_hash": "8baec96ef39b036a484908e57df8cc57b9eb9abcb96cc830db572873e8dde69d"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "4ea3d2bdb5ed937268773fde22216293", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "在并行工作进程启动期间设置 GUC 参数发生错误时，提供相关的错误上下文行", "evidence": {"same_day": true, "patch_ids": ["1243fa5b0921820b1c554a187d60091f"], "statement_hash": "8baec96ef39b036a484908e57df8cc57b9eb9abcb96cc830db572873e8dde69d"}, "url": "/docs/compare/?release=12.1#12.1-0f140a3388870cc6", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "1cdeecd950f87ad9f78cd449aa611815", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "在并行工作进程启动期间设置 GUC 参数发生错误时，提供相关的错误上下文行", "evidence": {"same_day": true, "patch_ids": ["1243fa5b0921820b1c554a187d60091f"], "statement_hash": "8baec96ef39b036a484908e57df8cc57b9eb9abcb96cc830db572873e8dde69d"}, "url": "/docs/compare/?release=11.6#11.6-1bb1197d56a5461c", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "194858126ea4e7dfa00ddcca88d219a1", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "在并行工作者启动期间设置 GUC 参数发生错误时提供相关的错误上下文行", "evidence": {"same_day": true, "patch_ids": ["1243fa5b0921820b1c554a187d60091f"], "statement_hash": "8baec96ef39b036a484908e57df8cc57b9eb9abcb96cc830db572873e8dde69d"}, "url": "/docs/compare/?release=9.6.16#9.6.16-813ccd9779c65243", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "4c52b47c2e732d9889ddec4ca22e4589", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "在并行工作者启动期间设置 GUC 参数发生错误时提供相关的错误上下文行", "evidence": {"same_day": true, "patch_ids": ["1243fa5b0921820b1c554a187d60091f"], "statement_hash": "8baec96ef39b036a484908e57df8cc57b9eb9abcb96cc830db572873e8dde69d"}, "url": "/docs/compare/?release=9.5.20#9.5.20-813ccd9779c65243", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}]}, {"id": "10.11-e7d424c786c33390", "cves": [], "html": "<p>在可串行化模式下，确保在正确的行版本上获取行级谓词锁（Thomas Munro，Heikki Linnakangas）</p>\n<p>如果行的可见版本经过 HOT 更新，锁可能被加在其现已死亡的前一版本上，导致在不易察觉的情况下无法保证可串行化。</p>", "text": "在可串行化模式下，确保在正确的行版本上获取行级谓词锁（Thomas Munro，Heikki Linnakangas） 如果行的可见版本经过 HOT 更新，锁可能被加在其现已死亡的前一版本上，导致在不易察觉的情况下无法保证可串行化。", "title": "在可串行化模式下，确保在正确的行版本上获取行级谓词锁", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "0bca15d9e1008f49f78ddffd79d88c987fc6b1612f85e0408385628c8da01aee", "section_path": ["变更"], "commit_groups": [["1169fcf12", "54c98fa71", "65468cc70", "75774cc22", "c5b796125", "f8d30182b", "fd298cd63"]], "identity_text": "In serializable mode, ensure that row-level predicate locks are acquired on the correct version of the row (Thomas Munro, Heikki Linnakangas) If the visible version of the row is HOT-updated, the lock might be taken on its now-dead predecessor, resulting in subtle failures to guarantee serialization.", "commit_aliases": ["1169fcf12", "54c98fa71", "65468cc70", "75774cc22", "c5b796125", "f8d30182b", "fd298cd63"], "source_commits": ["65468cc70"], "source_entry_id": "10.11/changes/010", "db_id": "30d1dc9a1eb4cbf83f7ef73adedf7d1e", "patch_ids": ["29f5bb509abaf651c6215efbaec834d4"], "statement_hash": "df42f17a722ff99a9ca75abbfa3cf1f7481359fe046366c4b777280bc8d81747", "relations": [{"rule": 2, "type": "equivalent", "target": "087c41a2e014444b7825712e6389481c", "evidence": {"same_day": true, "patch_ids": ["29f5bb509abaf651c6215efbaec834d4"], "statement_hash": "df42f17a722ff99a9ca75abbfa3cf1f7481359fe046366c4b777280bc8d81747"}}, {"rule": 2, "type": "equivalent", "target": "0e4e152032c826b8e9e4668aff0d6d14", "evidence": {"same_day": true, "patch_ids": ["29f5bb509abaf651c6215efbaec834d4"], "statement_hash": "df42f17a722ff99a9ca75abbfa3cf1f7481359fe046366c4b777280bc8d81747"}}, {"rule": 2, "type": "equivalent", "target": "95dcd349ba1930c83ec31b31588a8608", "evidence": {"same_day": true, "patch_ids": ["29f5bb509abaf651c6215efbaec834d4"], "statement_hash": "df42f17a722ff99a9ca75abbfa3cf1f7481359fe046366c4b777280bc8d81747"}}, {"rule": 2, "type": "equivalent", "target": "c094bd6bd96b20452d2deeb24e56908b", "evidence": {"same_day": true, "patch_ids": ["29f5bb509abaf651c6215efbaec834d4"], "statement_hash": "df42f17a722ff99a9ca75abbfa3cf1f7481359fe046366c4b777280bc8d81747"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "087c41a2e014444b7825712e6389481c", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "在可串行化模式下，确保在正确的行版本上获取行级谓词锁", "evidence": {"same_day": true, "patch_ids": ["29f5bb509abaf651c6215efbaec834d4"], "statement_hash": "df42f17a722ff99a9ca75abbfa3cf1f7481359fe046366c4b777280bc8d81747"}, "url": "/docs/compare/?release=11.6#11.6-e7d424c786c33390", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "0e4e152032c826b8e9e4668aff0d6d14", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "在可序列化模式下，确保对正确版本的行获取行级谓词锁", "evidence": {"same_day": true, "patch_ids": ["29f5bb509abaf651c6215efbaec834d4"], "statement_hash": "df42f17a722ff99a9ca75abbfa3cf1f7481359fe046366c4b777280bc8d81747"}, "url": "/docs/compare/?release=9.6.16#9.6.16-b521dd9870555e5f", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "c094bd6bd96b20452d2deeb24e56908b", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "在可序列化模式下，确保对正确版本的行获取行级谓词锁", "evidence": {"same_day": true, "patch_ids": ["29f5bb509abaf651c6215efbaec834d4"], "statement_hash": "df42f17a722ff99a9ca75abbfa3cf1f7481359fe046366c4b777280bc8d81747"}, "url": "/docs/compare/?release=9.5.20#9.5.20-b521dd9870555e5f", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "95dcd349ba1930c83ec31b31588a8608", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "在可序列化模式下，确保对正确版本的行获取行级谓词锁", "evidence": {"same_day": true, "patch_ids": ["29f5bb509abaf651c6215efbaec834d4"], "statement_hash": "df42f17a722ff99a9ca75abbfa3cf1f7481359fe046366c4b777280bc8d81747"}, "url": "/docs/compare/?release=9.4.25#9.4.25-b521dd9870555e5f", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-42511f5c7f00edda", "cves": [], "html": "<p>确保仅对以读写模式打开的文件应用 <code>fsync()</code>（Andres Freund，Michael Paquier）</p>\n<p>某些代码路径尝试在以只读方式打开文件后执行此操作，但在某些平台上，这会导致 <span>“<span>bad file descriptor</span>”</span> 或类似错误。</p>", "text": "确保仅对以读写模式打开的文件应用 fsync()（Andres Freund，Michael Paquier） 某些代码路径尝试在以只读方式打开文件后执行此操作，但在某些平台上，这会导致 “bad file descriptor” 或类似错误。", "title": "确保仅对以读写模式打开的文件应用 fsync()", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "c1520aab6ffa2a84778c59e069ffd3471464372e3249b8275d3a944c4ad764b3", "section_path": ["变更"], "commit_groups": [["07c314968", "4e7a8874a", "59800f7ce", "b8e19b932", "c50f95272", "e34358c43", "fbfc835b4"], ["a586cc4b6", "c025165da"]], "identity_text": "Ensure that fsync() is applied only to files that are opened read/write (Andres Freund, Michael Paquier) Some code paths tried to do this after opening a file read-only, but on some platforms that causes bad file descriptor or similar errors.", "commit_aliases": ["07c314968", "4e7a8874a", "59800f7ce", "a586cc4b6", "b8e19b932", "c025165da", "c50f95272", "e34358c43", "fbfc835b4"], "source_commits": ["a586cc4b6", "fbfc835b4"], "source_entry_id": "10.11/changes/011", "db_id": "1590e5d3da6e6a81c25d73c6d83b4ebb", "patch_ids": ["20b648680404cadc5d357f6df2e8fc6a", "c84eb292a1f31e0c5216e30f34748b01"], "statement_hash": "811b1d7801f5dd7f13522b0ebdbbb031a29ab9ae3676e32a9f2c69c46c6510c4", "relations": [{"rule": 2, "type": "equivalent", "target": "2418c9453b30b777ebc1c9534c0e47b8", "evidence": {"same_day": true, "patch_ids": ["20b648680404cadc5d357f6df2e8fc6a", "c84eb292a1f31e0c5216e30f34748b01"], "statement_hash": "811b1d7801f5dd7f13522b0ebdbbb031a29ab9ae3676e32a9f2c69c46c6510c4"}}, {"rule": 2, "type": "equivalent", "target": "73b65c3ca0a98f2f47a92ac14c9892a1", "evidence": {"same_day": true, "patch_ids": ["20b648680404cadc5d357f6df2e8fc6a", "c84eb292a1f31e0c5216e30f34748b01"], "statement_hash": "811b1d7801f5dd7f13522b0ebdbbb031a29ab9ae3676e32a9f2c69c46c6510c4"}}, {"rule": 2, "type": "equivalent", "target": "92ea24556125b7bc544c03fdd7e3d122", "evidence": {"same_day": true, "patch_ids": ["20b648680404cadc5d357f6df2e8fc6a", "c84eb292a1f31e0c5216e30f34748b01"], "statement_hash": "811b1d7801f5dd7f13522b0ebdbbb031a29ab9ae3676e32a9f2c69c46c6510c4"}}, {"rule": 2, "type": "equivalent", "target": "9937db66c444f4b87967159a57f1736f", "evidence": {"same_day": true, "patch_ids": ["20b648680404cadc5d357f6df2e8fc6a", "c84eb292a1f31e0c5216e30f34748b01"], "statement_hash": "811b1d7801f5dd7f13522b0ebdbbb031a29ab9ae3676e32a9f2c69c46c6510c4"}}, {"rule": 2, "type": "equivalent", "target": "b8e91545f28e39be358c8cb0aaccd1ce", "evidence": {"same_day": true, "patch_ids": ["20b648680404cadc5d357f6df2e8fc6a", "c84eb292a1f31e0c5216e30f34748b01"], "statement_hash": "811b1d7801f5dd7f13522b0ebdbbb031a29ab9ae3676e32a9f2c69c46c6510c4"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "73b65c3ca0a98f2f47a92ac14c9892a1", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "确保仅对以读写模式打开的文件应用 fsync()", "evidence": {"same_day": true, "patch_ids": ["20b648680404cadc5d357f6df2e8fc6a", "c84eb292a1f31e0c5216e30f34748b01"], "statement_hash": "811b1d7801f5dd7f13522b0ebdbbb031a29ab9ae3676e32a9f2c69c46c6510c4"}, "url": "/docs/compare/?release=12.1#12.1-379b4a761effb552", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "2418c9453b30b777ebc1c9534c0e47b8", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "确保仅对以读写模式打开的文件应用 fsync()", "evidence": {"same_day": true, "patch_ids": ["20b648680404cadc5d357f6df2e8fc6a", "c84eb292a1f31e0c5216e30f34748b01"], "statement_hash": "811b1d7801f5dd7f13522b0ebdbbb031a29ab9ae3676e32a9f2c69c46c6510c4"}, "url": "/docs/compare/?release=11.6#11.6-42511f5c7f00edda", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "92ea24556125b7bc544c03fdd7e3d122", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "确保 fsync() 只应用于以读/写方式打开的文件", "evidence": {"same_day": true, "patch_ids": ["20b648680404cadc5d357f6df2e8fc6a", "c84eb292a1f31e0c5216e30f34748b01"], "statement_hash": "811b1d7801f5dd7f13522b0ebdbbb031a29ab9ae3676e32a9f2c69c46c6510c4"}, "url": "/docs/compare/?release=9.6.16#9.6.16-c657548a46b98fe9", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "9937db66c444f4b87967159a57f1736f", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "确保 fsync() 只应用于以读/写方式打开的文件", "evidence": {"same_day": true, "patch_ids": ["20b648680404cadc5d357f6df2e8fc6a", "c84eb292a1f31e0c5216e30f34748b01"], "statement_hash": "811b1d7801f5dd7f13522b0ebdbbb031a29ab9ae3676e32a9f2c69c46c6510c4"}, "url": "/docs/compare/?release=9.5.20#9.5.20-c657548a46b98fe9", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "b8e91545f28e39be358c8cb0aaccd1ce", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "确保 fsync() 只应用于以读/写方式打开的文件", "evidence": {"same_day": true, "patch_ids": ["20b648680404cadc5d357f6df2e8fc6a", "c84eb292a1f31e0c5216e30f34748b01"], "statement_hash": "811b1d7801f5dd7f13522b0ebdbbb031a29ab9ae3676e32a9f2c69c46c6510c4"}, "url": "/docs/compare/?release=9.4.25#9.4.25-c657548a46b98fe9", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-22151d0d655f385c", "cves": [], "html": "<p>允许编码转换成功处理比以前更长的字符串（Álvaro Herrera，Tom Lane）</p>\n<p>以前，输入字符串有 0.25GB 的硬性上限；现在，只要转换后的输出不超过 1GB，就能够成功转换。</p>", "text": "允许编码转换成功处理比以前更长的字符串（Álvaro Herrera，Tom Lane） 以前，输入字符串有 0.25GB 的硬性上限；现在，只要转换后的输出不超过 1GB，就能够成功转换。", "title": "允许编码转换成功处理比以前更长的字符串", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "de3717113daaaa5502dcf197f12ec4e810c9f0a4d1fbc7645cc6f8d79ec1ebf6", "section_path": ["变更"], "commit_groups": [["226551e7c", "54d641da0", "677989cc0", "6899be289", "8381242df", "8e10405c7", "e5ff97571"]], "identity_text": "Allow encoding conversion to succeed on longer strings than before (Álvaro Herrera, Tom Lane) Previously, there was a hard limit of 0.25GB on the input string, but now it will work as long as the converted output is not over 1GB.", "commit_aliases": ["226551e7c", "54d641da0", "677989cc0", "6899be289", "8381242df", "8e10405c7", "e5ff97571"], "source_commits": ["226551e7c"], "source_entry_id": "10.11/changes/012", "db_id": "91d77091fad5f269b2db456b44d2a1e5", "patch_ids": ["b59620aadb07a202a61119308e8705a3"], "statement_hash": "b00eedd46ac4216a9af5fe4a43bee7c45f6a7ba75da45a47d3da02bd1b18554a", "relations": [{"rule": 2, "type": "equivalent", "target": "875c0e4587609f405ccd5ffcf2b36ab2", "evidence": {"same_day": true, "patch_ids": ["b59620aadb07a202a61119308e8705a3"], "statement_hash": "b00eedd46ac4216a9af5fe4a43bee7c45f6a7ba75da45a47d3da02bd1b18554a"}}, {"rule": 2, "type": "equivalent", "target": "cb4474cbfaedad6fefc693785965ee50", "evidence": {"same_day": true, "patch_ids": ["b59620aadb07a202a61119308e8705a3"], "statement_hash": "b00eedd46ac4216a9af5fe4a43bee7c45f6a7ba75da45a47d3da02bd1b18554a"}}, {"rule": 2, "type": "equivalent", "target": "e3986eda3d8a8bbe46aaaf7f25f8bce1", "evidence": {"same_day": true, "patch_ids": ["b59620aadb07a202a61119308e8705a3"], "statement_hash": "b00eedd46ac4216a9af5fe4a43bee7c45f6a7ba75da45a47d3da02bd1b18554a"}}, {"rule": 2, "type": "equivalent", "target": "e4b440de56d261ffc7855ea4fab821a0", "evidence": {"same_day": true, "patch_ids": ["b59620aadb07a202a61119308e8705a3"], "statement_hash": "b00eedd46ac4216a9af5fe4a43bee7c45f6a7ba75da45a47d3da02bd1b18554a"}}, {"rule": 2, "type": "equivalent", "target": "e879d6402b17f3116c0664f3906d21a2", "evidence": {"same_day": true, "patch_ids": ["b59620aadb07a202a61119308e8705a3"], "statement_hash": "b00eedd46ac4216a9af5fe4a43bee7c45f6a7ba75da45a47d3da02bd1b18554a"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "e4b440de56d261ffc7855ea4fab821a0", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "允许编码转换成功处理比以前更长的字符串", "evidence": {"same_day": true, "patch_ids": ["b59620aadb07a202a61119308e8705a3"], "statement_hash": "b00eedd46ac4216a9af5fe4a43bee7c45f6a7ba75da45a47d3da02bd1b18554a"}, "url": "/docs/compare/?release=12.1#12.1-4a8deb84dc97eccf", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "e3986eda3d8a8bbe46aaaf7f25f8bce1", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "允许编码转换成功处理比以前更长的字符串", "evidence": {"same_day": true, "patch_ids": ["b59620aadb07a202a61119308e8705a3"], "statement_hash": "b00eedd46ac4216a9af5fe4a43bee7c45f6a7ba75da45a47d3da02bd1b18554a"}, "url": "/docs/compare/?release=11.6#11.6-22151d0d655f385c", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "cb4474cbfaedad6fefc693785965ee50", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "允许编码转换在比以前更长的字符串上成功", "evidence": {"same_day": true, "patch_ids": ["b59620aadb07a202a61119308e8705a3"], "statement_hash": "b00eedd46ac4216a9af5fe4a43bee7c45f6a7ba75da45a47d3da02bd1b18554a"}, "url": "/docs/compare/?release=9.6.16#9.6.16-034419db242826ac", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "e879d6402b17f3116c0664f3906d21a2", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "允许编码转换在比以前更长的字符串上成功", "evidence": {"same_day": true, "patch_ids": ["b59620aadb07a202a61119308e8705a3"], "statement_hash": "b00eedd46ac4216a9af5fe4a43bee7c45f6a7ba75da45a47d3da02bd1b18554a"}, "url": "/docs/compare/?release=9.5.20#9.5.20-034419db242826ac", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "875c0e4587609f405ccd5ffcf2b36ab2", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "允许编码转换在比以前更长的字符串上成功", "evidence": {"same_day": true, "patch_ids": ["b59620aadb07a202a61119308e8705a3"], "statement_hash": "b00eedd46ac4216a9af5fe4a43bee7c45f6a7ba75da45a47d3da02bd1b18554a"}, "url": "/docs/compare/?release=9.4.25#9.4.25-034419db242826ac", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-db73f46b6f27ad98", "cves": [], "html": "<p>避免堆页面剪枝期间不必要的目录查找（Thomas Munro）</p>\n<p>此处已不再需要检查不记录 WAL 的索引，而该检查在某些工作负载下导致了显著的性能问题。至少在理论上，它也存在发生死锁的可能性。</p>", "text": "避免堆页面剪枝期间不必要的目录查找（Thomas Munro） 此处已不再需要检查不记录 WAL 的索引，而该检查在某些工作负载下导致了显著的性能问题。至少在理论上，它也存在发生死锁的可能性。", "title": "避免堆页面剪枝期间不必要的目录查找", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "b051554f1875cf5fcf908bb817d7726c8e990f01a425c96b0601810faf1cff80", "section_path": ["变更"], "commit_groups": [["720b59b55", "8cc6016a8", "b9c4ccfef", "eeb68c1cd"]], "identity_text": "Avoid an unnecessary catalog lookup during heap page pruning (Thomas Munro) It's no longer necessary to check for unlogged indexes here, and the check caused significant performance problems in some workloads. There was also at least a theoretical possibility of deadlock.", "commit_aliases": ["720b59b55", "8cc6016a8", "b9c4ccfef", "eeb68c1cd"], "source_commits": ["eeb68c1cd"], "source_entry_id": "10.11/changes/013", "db_id": "a5667c83b7db41e34681d50f2ad8b358", "patch_ids": ["97385fc63326fab4c54b1a2eb4a8f854"], "statement_hash": "85bbf3687cf690f4211e71b3443aa2143bda6d81bea9abd12d3a78702e03ec91", "relations": [{"rule": 2, "type": "equivalent", "target": "6121cfe98ba28048ce042689db3c548f", "evidence": {"same_day": true, "patch_ids": ["97385fc63326fab4c54b1a2eb4a8f854"], "statement_hash": "85bbf3687cf690f4211e71b3443aa2143bda6d81bea9abd12d3a78702e03ec91"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "6121cfe98ba28048ce042689db3c548f", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "避免堆页面剪枝期间不必要的目录查找", "evidence": {"same_day": true, "patch_ids": ["97385fc63326fab4c54b1a2eb4a8f854"], "statement_hash": "85bbf3687cf690f4211e71b3443aa2143bda6d81bea9abd12d3a78702e03ec91"}, "url": "/docs/compare/?release=11.6#11.6-db73f46b6f27ad98", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}]}, {"id": "10.11-ea1534b076382130", "cves": [], "html": "<p>避免为窗口函数创建不必要地庞大的元组存储（Andrew Gierth）</p>\n<p>在某些情况下，元组存储会包含源表的所有列，而非仅包含查询所需的列。</p>", "text": "避免为窗口函数创建不必要地庞大的元组存储（Andrew Gierth） 在某些情况下，元组存储会包含源表的所有列，而非仅包含查询所需的列。", "title": "避免为窗口函数创建不必要地庞大的元组存储", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "1036b723db85782b6df9f2276bd728cc8db2e4217668ed8397c16eb1f47daebd", "section_path": ["变更"], "commit_groups": [["6da5310e8", "747aac88f", "a9056cc63", "be99485b9", "f57c63107"]], "identity_text": "Avoid creating unnecessarily-bulky tuple stores for window functions (Andrew Gierth) In some cases the tuple storage would include all columns of the source table(s), not just the ones that are needed by the query.", "commit_aliases": ["6da5310e8", "747aac88f", "a9056cc63", "be99485b9", "f57c63107"], "source_commits": ["6da5310e8"], "source_entry_id": "10.11/changes/014", "db_id": "cefc20e114fe712d603a8c303183312a", "patch_ids": ["077ab1f10e9b6607b8d2de77233fc395"], "statement_hash": "dea0ff8dd73fb79808c36402906348dd94bd297fb10d52e4b38e6f3fdee0ca15", "relations": [{"rule": 2, "type": "equivalent", "target": "3d8474a55daa92357bdbbe434b361227", "evidence": {"same_day": true, "patch_ids": ["077ab1f10e9b6607b8d2de77233fc395"], "statement_hash": "dea0ff8dd73fb79808c36402906348dd94bd297fb10d52e4b38e6f3fdee0ca15"}}, {"rule": 2, "type": "equivalent", "target": "b002daf8b62be7cd6900ee4c2bb24abe", "evidence": {"same_day": true, "patch_ids": ["077ab1f10e9b6607b8d2de77233fc395"], "statement_hash": "dea0ff8dd73fb79808c36402906348dd94bd297fb10d52e4b38e6f3fdee0ca15"}}, {"rule": 2, "type": "equivalent", "target": "c9ecc9c454fc3825dbe98be81173fe68", "evidence": {"same_day": true, "patch_ids": ["077ab1f10e9b6607b8d2de77233fc395"], "statement_hash": "dea0ff8dd73fb79808c36402906348dd94bd297fb10d52e4b38e6f3fdee0ca15"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "c9ecc9c454fc3825dbe98be81173fe68", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "避免为窗口函数创建不必要地庞大的元组存储", "evidence": {"same_day": true, "patch_ids": ["077ab1f10e9b6607b8d2de77233fc395"], "statement_hash": "dea0ff8dd73fb79808c36402906348dd94bd297fb10d52e4b38e6f3fdee0ca15"}, "url": "/docs/compare/?release=12.1#12.1-f5c75d3ed183214d", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "b002daf8b62be7cd6900ee4c2bb24abe", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "避免为窗口函数创建不必要地庞大的元组存储", "evidence": {"same_day": true, "patch_ids": ["077ab1f10e9b6607b8d2de77233fc395"], "statement_hash": "dea0ff8dd73fb79808c36402906348dd94bd297fb10d52e4b38e6f3fdee0ca15"}, "url": "/docs/compare/?release=11.6#11.6-ea1534b076382130", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "3d8474a55daa92357bdbbe434b361227", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "避免为窗口函数创建不必要地庞大的元组存储", "evidence": {"same_day": true, "patch_ids": ["077ab1f10e9b6607b8d2de77233fc395"], "statement_hash": "dea0ff8dd73fb79808c36402906348dd94bd297fb10d52e4b38e6f3fdee0ca15"}, "url": "/docs/compare/?release=9.6.16#9.6.16-ea1534b076382130", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}]}, {"id": "10.11-049d3d7c5b4b4e66", "cves": [], "html": "<p>允许 <code>repalloc()</code> 在大型内存块缩小时归还空间（Tom Lane）</p>", "text": "允许 repalloc() 在大型内存块缩小时归还空间（Tom Lane）", "title": "允许 repalloc() 在大型内存块缩小时归还空间", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "08a9c586f20e50fda9a6a31703d491018758fda42caa7b5ebe1e273f9983c909", "section_path": ["变更"], "commit_groups": [["1534531fe", "4829576ba", "82d0a46ea", "9a407209a", "9ad1b572d", "c477f3e44", "e5e4f12a5"]], "identity_text": "Allow repalloc() to give back space when a large chunk is reduced in size (Tom Lane)", "commit_aliases": ["1534531fe", "4829576ba", "82d0a46ea", "9a407209a", "9ad1b572d", "c477f3e44", "e5e4f12a5"], "source_commits": ["9ad1b572d"], "source_entry_id": "10.11/changes/015", "db_id": "3ddc36c22adaef5e20bf87318b5a0c0d", "patch_ids": ["bb8fc1b453328d13052098eec48907e8"], "statement_hash": "c9f63c307d511d35bb2fd9fd28932c6e54276a89b95bb4a9be16994a664ee03e", "relations": [{"rule": 2, "type": "equivalent", "target": "24afa646cbd19aebb703398a8e69ae9a", "evidence": {"same_day": true, "patch_ids": ["bb8fc1b453328d13052098eec48907e8"], "statement_hash": "c9f63c307d511d35bb2fd9fd28932c6e54276a89b95bb4a9be16994a664ee03e"}}, {"rule": 2, "type": "equivalent", "target": "28919380efd74ee005a86d31c864365e", "evidence": {"same_day": true, "patch_ids": ["bb8fc1b453328d13052098eec48907e8"], "statement_hash": "c9f63c307d511d35bb2fd9fd28932c6e54276a89b95bb4a9be16994a664ee03e"}}, {"rule": 2, "type": "equivalent", "target": "2c6aa131fceedc010dc04aff452c5264", "evidence": {"same_day": true, "patch_ids": ["bb8fc1b453328d13052098eec48907e8"], "statement_hash": "c9f63c307d511d35bb2fd9fd28932c6e54276a89b95bb4a9be16994a664ee03e"}}, {"rule": 2, "type": "equivalent", "target": "3c8bb8c27d4809d5d8005285a64216ab", "evidence": {"same_day": true, "patch_ids": ["bb8fc1b453328d13052098eec48907e8"], "statement_hash": "c9f63c307d511d35bb2fd9fd28932c6e54276a89b95bb4a9be16994a664ee03e"}}, {"rule": 2, "type": "equivalent", "target": "e6486a60df156f2ff4e70bc5d0f23c47", "evidence": {"same_day": true, "patch_ids": ["bb8fc1b453328d13052098eec48907e8"], "statement_hash": "c9f63c307d511d35bb2fd9fd28932c6e54276a89b95bb4a9be16994a664ee03e"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "28919380efd74ee005a86d31c864365e", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "允许 repalloc() 在大型内存块缩小时归还空间", "evidence": {"same_day": true, "patch_ids": ["bb8fc1b453328d13052098eec48907e8"], "statement_hash": "c9f63c307d511d35bb2fd9fd28932c6e54276a89b95bb4a9be16994a664ee03e"}, "url": "/docs/compare/?release=12.1#12.1-a2ec2f586645e8e1", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "3c8bb8c27d4809d5d8005285a64216ab", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "允许 repalloc() 在大型内存块缩小时归还空间", "evidence": {"same_day": true, "patch_ids": ["bb8fc1b453328d13052098eec48907e8"], "statement_hash": "c9f63c307d511d35bb2fd9fd28932c6e54276a89b95bb4a9be16994a664ee03e"}, "url": "/docs/compare/?release=11.6#11.6-049d3d7c5b4b4e66", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "e6486a60df156f2ff4e70bc5d0f23c47", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "允许 repalloc() 在大块被缩小时归还空间", "evidence": {"same_day": true, "patch_ids": ["bb8fc1b453328d13052098eec48907e8"], "statement_hash": "c9f63c307d511d35bb2fd9fd28932c6e54276a89b95bb4a9be16994a664ee03e"}, "url": "/docs/compare/?release=9.6.16#9.6.16-bcf8d3ad38d6bdd2", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "24afa646cbd19aebb703398a8e69ae9a", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "允许 repalloc() 在大块被缩小时归还空间", "evidence": {"same_day": true, "patch_ids": ["bb8fc1b453328d13052098eec48907e8"], "statement_hash": "c9f63c307d511d35bb2fd9fd28932c6e54276a89b95bb4a9be16994a664ee03e"}, "url": "/docs/compare/?release=9.5.20#9.5.20-bcf8d3ad38d6bdd2", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "2c6aa131fceedc010dc04aff452c5264", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "允许 repalloc() 在大块被缩小时归还空间", "evidence": {"same_day": true, "patch_ids": ["bb8fc1b453328d13052098eec48907e8"], "statement_hash": "c9f63c307d511d35bb2fd9fd28932c6e54276a89b95bb4a9be16994a664ee03e"}, "url": "/docs/compare/?release=9.4.25#9.4.25-bcf8d3ad38d6bdd2", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-f73cc40d1aa4eb11", "cves": [], "html": "<p>确保归档恢复结束时删除临时 WAL 文件和历史文件（Sawada Masahiko）</p>", "text": "确保归档恢复结束时删除临时 WAL 文件和历史文件（Sawada Masahiko）", "title": "确保归档恢复结束时删除临时 WAL 文件和历史文件", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "724825727a9a4cb1d75e6b7ec379cd720be65a04cb2df91e6d86c2c43c68e310", "section_path": ["变更"], "commit_groups": [["2a724cdbf", "7ca35472c", "ac1efdd08", "ae205dfe6", "b978de0eb", "df86e52ca"]], "identity_text": "Ensure that temporary WAL and history files are removed at the end of archive recovery (Sawada Masahiko)", "commit_aliases": ["2a724cdbf", "7ca35472c", "ac1efdd08", "ae205dfe6", "b978de0eb", "df86e52ca"], "source_commits": ["7ca35472c"], "source_entry_id": "10.11/changes/016", "db_id": "0a3d67e35b576d9c2bd99c64ce426a2f", "patch_ids": ["eccec0a934f6b798a4ca948a6e5ed54f"], "statement_hash": "d9171030eaa0d655092fd4688db8b2e56f3529964d1e2d2c0b2c5e9b0624166d", "relations": [{"rule": 2, "type": "equivalent", "target": "b3a030c28ed4cda30af5cca05ade9f8a", "evidence": {"same_day": true, "patch_ids": ["eccec0a934f6b798a4ca948a6e5ed54f"], "statement_hash": "d9171030eaa0d655092fd4688db8b2e56f3529964d1e2d2c0b2c5e9b0624166d"}}, {"rule": 2, "type": "equivalent", "target": "c1828ccc97f9d3e0be5e49a6b93cf6f5", "evidence": {"same_day": true, "patch_ids": ["eccec0a934f6b798a4ca948a6e5ed54f"], "statement_hash": "d9171030eaa0d655092fd4688db8b2e56f3529964d1e2d2c0b2c5e9b0624166d"}}, {"rule": 2, "type": "equivalent", "target": "c6f2ad7ebe26a63bb7848f935183d7e0", "evidence": {"same_day": true, "patch_ids": ["eccec0a934f6b798a4ca948a6e5ed54f"], "statement_hash": "d9171030eaa0d655092fd4688db8b2e56f3529964d1e2d2c0b2c5e9b0624166d"}}, {"rule": 2, "type": "equivalent", "target": "f506a3173b1e3502d0666e1319af57c5", "evidence": {"same_day": true, "patch_ids": ["eccec0a934f6b798a4ca948a6e5ed54f"], "statement_hash": "d9171030eaa0d655092fd4688db8b2e56f3529964d1e2d2c0b2c5e9b0624166d"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "b3a030c28ed4cda30af5cca05ade9f8a", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "确保归档恢复结束时删除临时 WAL 文件和历史文件", "evidence": {"same_day": true, "patch_ids": ["eccec0a934f6b798a4ca948a6e5ed54f"], "statement_hash": "d9171030eaa0d655092fd4688db8b2e56f3529964d1e2d2c0b2c5e9b0624166d"}, "url": "/docs/compare/?release=12.1#12.1-0af630729a0e4453", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "c1828ccc97f9d3e0be5e49a6b93cf6f5", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "确保归档恢复结束时删除临时 WAL 文件和历史文件", "evidence": {"same_day": true, "patch_ids": ["eccec0a934f6b798a4ca948a6e5ed54f"], "statement_hash": "d9171030eaa0d655092fd4688db8b2e56f3529964d1e2d2c0b2c5e9b0624166d"}, "url": "/docs/compare/?release=11.6#11.6-f73cc40d1aa4eb11", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "c6f2ad7ebe26a63bb7848f935183d7e0", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "确保归档恢复结束时移除临时 WAL 和历史文件", "evidence": {"same_day": true, "patch_ids": ["eccec0a934f6b798a4ca948a6e5ed54f"], "statement_hash": "d9171030eaa0d655092fd4688db8b2e56f3529964d1e2d2c0b2c5e9b0624166d"}, "url": "/docs/compare/?release=9.6.16#9.6.16-2e3934bf7ad8cbc9", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "f506a3173b1e3502d0666e1319af57c5", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "确保归档恢复结束时移除临时 WAL 和历史文件", "evidence": {"same_day": true, "patch_ids": ["eccec0a934f6b798a4ca948a6e5ed54f"], "statement_hash": "d9171030eaa0d655092fd4688db8b2e56f3529964d1e2d2c0b2c5e9b0624166d"}, "url": "/docs/compare/?release=9.5.20#9.5.20-2e3934bf7ad8cbc9", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}]}, {"id": "10.11-cd2c64147cc9cd78", "cves": [], "html": "<p>避免启用 <code>recovery_min_apply_delay</code> 时归档恢复发生失败（Fujii Masao）</p>\n<p><code>recovery_min_apply_delay</code> 通常不用于这种配置，但它应该能够正常工作。</p>", "text": "避免启用 recovery_min_apply_delay 时归档恢复发生失败（Fujii Masao） recovery_min_apply_delay 通常不用于这种配置，但它应该能够正常工作。", "title": "避免启用 recovery_min_apply_delay 时归档恢复发生失败", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "1e6b5f70f58911715084729feed94fcd58bb0f0308850e2c09cc3970a114a4c8", "section_path": ["变更"], "commit_groups": [["14c59185b", "1b2ba8874", "579996bc2", "9dfbf9a04", "c455ee88c", "ec1259e88", "f7b70700b"]], "identity_text": "Avoid failure in archive recovery if recovery_min_apply_delay is enabled (Fujii Masao) recovery_min_apply_delay is not typically used in this configuration, but it should work.", "commit_aliases": ["14c59185b", "1b2ba8874", "579996bc2", "9dfbf9a04", "c455ee88c", "ec1259e88", "f7b70700b"], "source_commits": ["c455ee88c"], "source_entry_id": "10.11/changes/017", "db_id": "86fe720617b772ba68ec054d99e2c4fb", "patch_ids": ["e75885c6d2c42369afc35699bb66a795"], "statement_hash": "09f824fa7d7bbaa0a16df6a4623ac4b9ffa8763b9d5fa689d28fd9957afa50e8", "relations": [{"rule": 2, "type": "equivalent", "target": "2c676ad7ae5a140c73c5484e2a474f97", "evidence": {"same_day": true, "patch_ids": ["e75885c6d2c42369afc35699bb66a795"], "statement_hash": "09f824fa7d7bbaa0a16df6a4623ac4b9ffa8763b9d5fa689d28fd9957afa50e8"}}, {"rule": 2, "type": "equivalent", "target": "5351f22144da31bd09273d698e148e9d", "evidence": {"same_day": true, "patch_ids": ["e75885c6d2c42369afc35699bb66a795"], "statement_hash": "09f824fa7d7bbaa0a16df6a4623ac4b9ffa8763b9d5fa689d28fd9957afa50e8"}}, {"rule": 2, "type": "equivalent", "target": "78eba3ce05625f4d39ef243ce787088e", "evidence": {"same_day": true, "patch_ids": ["e75885c6d2c42369afc35699bb66a795"], "statement_hash": "09f824fa7d7bbaa0a16df6a4623ac4b9ffa8763b9d5fa689d28fd9957afa50e8"}}, {"rule": 2, "type": "equivalent", "target": "fa558941bd8859034c26a7e06f232001", "evidence": {"same_day": true, "patch_ids": ["e75885c6d2c42369afc35699bb66a795"], "statement_hash": "09f824fa7d7bbaa0a16df6a4623ac4b9ffa8763b9d5fa689d28fd9957afa50e8"}}, {"rule": 2, "type": "equivalent", "target": "fd6bbf706f57582b1c80a0dc91d956ac", "evidence": {"same_day": true, "patch_ids": ["e75885c6d2c42369afc35699bb66a795"], "statement_hash": "09f824fa7d7bbaa0a16df6a4623ac4b9ffa8763b9d5fa689d28fd9957afa50e8"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "fa558941bd8859034c26a7e06f232001", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "避免启用 recovery_min_apply_delay 时归档恢复发生失败", "evidence": {"same_day": true, "patch_ids": ["e75885c6d2c42369afc35699bb66a795"], "statement_hash": "09f824fa7d7bbaa0a16df6a4623ac4b9ffa8763b9d5fa689d28fd9957afa50e8"}, "url": "/docs/compare/?release=12.1#12.1-f78af228a28346b5", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "fd6bbf706f57582b1c80a0dc91d956ac", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "避免启用 recovery_min_apply_delay 时归档恢复发生失败", "evidence": {"same_day": true, "patch_ids": ["e75885c6d2c42369afc35699bb66a795"], "statement_hash": "09f824fa7d7bbaa0a16df6a4623ac4b9ffa8763b9d5fa689d28fd9957afa50e8"}, "url": "/docs/compare/?release=11.6#11.6-cd2c64147cc9cd78", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "78eba3ce05625f4d39ef243ce787088e", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "避免启用 recovery_min_apply_delay 时归档恢复的失败", "evidence": {"same_day": true, "patch_ids": ["e75885c6d2c42369afc35699bb66a795"], "statement_hash": "09f824fa7d7bbaa0a16df6a4623ac4b9ffa8763b9d5fa689d28fd9957afa50e8"}, "url": "/docs/compare/?release=9.6.16#9.6.16-c5869d56fef3833b", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "2c676ad7ae5a140c73c5484e2a474f97", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "避免启用 recovery_min_apply_delay 时归档恢复的失败", "evidence": {"same_day": true, "patch_ids": ["e75885c6d2c42369afc35699bb66a795"], "statement_hash": "09f824fa7d7bbaa0a16df6a4623ac4b9ffa8763b9d5fa689d28fd9957afa50e8"}, "url": "/docs/compare/?release=9.5.20#9.5.20-c5869d56fef3833b", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "5351f22144da31bd09273d698e148e9d", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "避免启用 recovery_min_apply_delay 时归档恢复的失败", "evidence": {"same_day": true, "patch_ids": ["e75885c6d2c42369afc35699bb66a795"], "statement_hash": "09f824fa7d7bbaa0a16df6a4623ac4b9ffa8763b9d5fa689d28fd9957afa50e8"}, "url": "/docs/compare/?release=9.4.25#9.4.25-c5869d56fef3833b", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-293aedf9da2f91a9", "cves": [], "html": "<p>修复发布者和订阅者对表的复制标识列认定不一致时逻辑复制发生的失败（Jehan-Guillaume de Rorthais，Peter Eisentraut）</p>\n<p>在订阅者上将发布者根本不存在的列声明为复制标识的一部分，会导致 <span>“<span>negative bitmapset member not allowed</span>”</span> 错误。</p>", "text": "修复发布者和订阅者对表的复制标识列认定不一致时逻辑复制发生的失败（Jehan-Guillaume de Rorthais，Peter Eisentraut） 在订阅者上将发布者根本不存在的列声明为复制标识的一部分，会导致 “negative bitmapset member not allowed” 错误。", "title": "修复发布者和订阅者对表的复制标识列认定不一致时逻辑复制发生的失败", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "378a4d3395877ad0c002b3eb4fafe713696089bb596dc4cea542304f37b16a6a", "section_path": ["变更"], "commit_groups": [["1c60e40ad", "2e00d5976", "7961da188", "d891d2c89"], ["806f9dc02", "aa9884578", "ef8fcbff5", "f96756304"]], "identity_text": "Fix logical replication failure when publisher and subscriber have different ideas about a table's replica identity columns (Jehan-Guillaume de Rorthais, Peter Eisentraut) Declaring a column as part of the replica identity on the subscriber, when it does not exist at all on the publisher, led to negative bitmapset member not allowed errors.", "commit_aliases": ["1c60e40ad", "2e00d5976", "7961da188", "806f9dc02", "aa9884578", "d891d2c89", "ef8fcbff5", "f96756304"], "source_commits": ["2e00d5976", "806f9dc02"], "source_entry_id": "10.11/changes/018", "db_id": "a81899d12dd8e2823d50116dafd4d87f", "patch_ids": ["01bee7ee93a21f586fad49a6d03a4cff", "63e62199d910422917e20e7fddced293"], "statement_hash": "2d3205b5f95e63e135f0420ee555e22f5c84775b1611c879d2f54b392de376ca", "relations": [{"rule": 2, "type": "equivalent", "target": "06dcbe81968c5663a09fb913c4aaeae7", "evidence": {"same_day": true, "patch_ids": ["01bee7ee93a21f586fad49a6d03a4cff", "63e62199d910422917e20e7fddced293"], "statement_hash": "2d3205b5f95e63e135f0420ee555e22f5c84775b1611c879d2f54b392de376ca"}}, {"rule": 2, "type": "equivalent", "target": "39d190e039df31b7769394fa2a757f17", "evidence": {"same_day": true, "patch_ids": ["01bee7ee93a21f586fad49a6d03a4cff", "63e62199d910422917e20e7fddced293"], "statement_hash": "2d3205b5f95e63e135f0420ee555e22f5c84775b1611c879d2f54b392de376ca"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "39d190e039df31b7769394fa2a757f17", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "修复发布者和订阅者对表的复制标识列认定不一致时逻辑复制发生的失败", "evidence": {"same_day": true, "patch_ids": ["01bee7ee93a21f586fad49a6d03a4cff", "63e62199d910422917e20e7fddced293"], "statement_hash": "2d3205b5f95e63e135f0420ee555e22f5c84775b1611c879d2f54b392de376ca"}, "url": "/docs/compare/?release=12.1#12.1-948d4cfa0b292ed3", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "06dcbe81968c5663a09fb913c4aaeae7", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复发布者和订阅者对表的复制标识列认定不一致时逻辑复制发生的失败", "evidence": {"same_day": true, "patch_ids": ["01bee7ee93a21f586fad49a6d03a4cff", "63e62199d910422917e20e7fddced293"], "statement_hash": "2d3205b5f95e63e135f0420ee555e22f5c84775b1611c879d2f54b392de376ca"}, "url": "/docs/compare/?release=11.6#11.6-293aedf9da2f91a9", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}]}, {"id": "10.11-96d2529e0cf6e6a9", "cves": [], "html": "<p>避免逻辑复制 WAL 发送进程关闭期间出现不必要的延迟（Craig Ringer，Álvaro Herrera）</p>", "text": "避免逻辑复制 WAL 发送进程关闭期间出现不必要的延迟（Craig Ringer，Álvaro Herrera）", "title": "避免逻辑复制 WAL 发送进程关闭期间出现不必要的延迟", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "39ada89efcd4c1066af22647c7f057ed0c4ccb2ce1c12ad025738d7d6ba6473b", "section_path": ["变更"], "commit_groups": [["0d9fcbada", "1391c13ce", "38ddeab13", "45e4067c0", "5f038991e", "abd5071d2", "b2ab06e02"]], "identity_text": "Avoid unwanted delay during shutdown of a logical replication walsender (Craig Ringer, Álvaro Herrera)", "commit_aliases": ["0d9fcbada", "1391c13ce", "38ddeab13", "45e4067c0", "5f038991e", "abd5071d2", "b2ab06e02"], "source_commits": ["0d9fcbada"], "source_entry_id": "10.11/changes/019", "db_id": "285efa4027b4403c87885822e031d662", "patch_ids": ["e55df08a6f9e29930aef6f293862575c"], "statement_hash": "9e7d15d882673512c3d1da08242816a71acc3100093a83564d9ded908580e8f6", "relations": [{"rule": 2, "type": "equivalent", "target": "09624a4b7d028d79469bd522109140be", "evidence": {"same_day": true, "patch_ids": ["e55df08a6f9e29930aef6f293862575c"], "statement_hash": "9e7d15d882673512c3d1da08242816a71acc3100093a83564d9ded908580e8f6"}}, {"rule": 2, "type": "equivalent", "target": "55db924fa4a72e2667fcd540c5f2ad31", "evidence": {"same_day": true, "patch_ids": ["e55df08a6f9e29930aef6f293862575c"], "statement_hash": "9e7d15d882673512c3d1da08242816a71acc3100093a83564d9ded908580e8f6"}}, {"rule": 2, "type": "equivalent", "target": "823d796e301349805ab4d2ac9acbc490", "evidence": {"same_day": true, "patch_ids": ["e55df08a6f9e29930aef6f293862575c"], "statement_hash": "9e7d15d882673512c3d1da08242816a71acc3100093a83564d9ded908580e8f6"}}, {"rule": 2, "type": "equivalent", "target": "9d38fb0ff879db91f1511d933dadcfd1", "evidence": {"same_day": true, "patch_ids": ["e55df08a6f9e29930aef6f293862575c"], "statement_hash": "9e7d15d882673512c3d1da08242816a71acc3100093a83564d9ded908580e8f6"}}, {"rule": 2, "type": "equivalent", "target": "f69d528db1bdcb00d217b3b5a9ca45c0", "evidence": {"same_day": true, "patch_ids": ["e55df08a6f9e29930aef6f293862575c"], "statement_hash": "9e7d15d882673512c3d1da08242816a71acc3100093a83564d9ded908580e8f6"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "823d796e301349805ab4d2ac9acbc490", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "避免逻辑复制 WAL 发送进程关闭期间出现不必要的延迟", "evidence": {"same_day": true, "patch_ids": ["e55df08a6f9e29930aef6f293862575c"], "statement_hash": "9e7d15d882673512c3d1da08242816a71acc3100093a83564d9ded908580e8f6"}, "url": "/docs/compare/?release=12.1#12.1-9156f4650864dbe2", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "9d38fb0ff879db91f1511d933dadcfd1", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "避免逻辑复制 WAL 发送进程关闭期间出现不必要的延迟", "evidence": {"same_day": true, "patch_ids": ["e55df08a6f9e29930aef6f293862575c"], "statement_hash": "9e7d15d882673512c3d1da08242816a71acc3100093a83564d9ded908580e8f6"}, "url": "/docs/compare/?release=11.6#11.6-96d2529e0cf6e6a9", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "09624a4b7d028d79469bd522109140be", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "避免逻辑复制 walsender 关闭期间的不必要延迟", "evidence": {"same_day": true, "patch_ids": ["e55df08a6f9e29930aef6f293862575c"], "statement_hash": "9e7d15d882673512c3d1da08242816a71acc3100093a83564d9ded908580e8f6"}, "url": "/docs/compare/?release=9.6.16#9.6.16-ff881244eee2a94e", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "f69d528db1bdcb00d217b3b5a9ca45c0", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "避免逻辑复制 walsender 关闭期间的不必要延迟", "evidence": {"same_day": true, "patch_ids": ["e55df08a6f9e29930aef6f293862575c"], "statement_hash": "9e7d15d882673512c3d1da08242816a71acc3100093a83564d9ded908580e8f6"}, "url": "/docs/compare/?release=9.5.20#9.5.20-ff881244eee2a94e", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "55db924fa4a72e2667fcd540c5f2ad31", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "避免逻辑复制 walsender 关闭期间的不必要延迟", "evidence": {"same_day": true, "patch_ids": ["e55df08a6f9e29930aef6f293862575c"], "statement_hash": "9e7d15d882673512c3d1da08242816a71acc3100093a83564d9ded908580e8f6"}, "url": "/docs/compare/?release=9.4.25#9.4.25-ff881244eee2a94e", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-1fe602fb0c9ed956", "cves": [], "html": "<p>修复逻辑复制 WAL 接收进程进程中的超时处理（Julien Rouhaud）</p>\n<p>错误的逻辑导致 <code>wal_receiver_timeout</code> 在逻辑复制部署中无法生效。</p>", "text": "修复逻辑复制 WAL 接收进程进程中的超时处理（Julien Rouhaud） 错误的逻辑导致 wal_receiver_timeout 在逻辑复制部署中无法生效。", "title": "修复逻辑复制 WAL 接收进程进程中的超时处理", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "1a2f6d7d1de44d04bc5e739dac8186859bf12f7209d19f256ad7dc40d7d22e7d", "section_path": ["变更"], "commit_groups": [["04510dbe3", "3f60f690f", "47698b4b6", "feed5ee47"]], "identity_text": "Fix timeout handling in logical replication walreceiver processes (Julien Rouhaud) Erroneous logic prevented wal_receiver_timeout from working in logical replication deployments.", "commit_aliases": ["04510dbe3", "3f60f690f", "47698b4b6", "feed5ee47"], "source_commits": ["47698b4b6"], "source_entry_id": "10.11/changes/020", "db_id": "ff56738e5ba8ef1c477e180201af3e55", "patch_ids": ["cc72ae7102a19e896fdecfcbc78dd309"], "statement_hash": "c6b75de69d9fab56df13a79cf2259bca28a1a3ab5a0f813b64b525314f89a8db", "relations": [{"rule": 2, "type": "equivalent", "target": "2a67fc442c03ec0a39aa7808d14e5949", "evidence": {"same_day": true, "patch_ids": ["cc72ae7102a19e896fdecfcbc78dd309"], "statement_hash": "c6b75de69d9fab56df13a79cf2259bca28a1a3ab5a0f813b64b525314f89a8db"}}, {"rule": 2, "type": "equivalent", "target": "cfda64c9fe8538dc456bd896d9b2e333", "evidence": {"same_day": true, "patch_ids": ["cc72ae7102a19e896fdecfcbc78dd309"], "statement_hash": "c6b75de69d9fab56df13a79cf2259bca28a1a3ab5a0f813b64b525314f89a8db"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "2a67fc442c03ec0a39aa7808d14e5949", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "修复逻辑复制 WAL 接收进程进程中的超时处理", "evidence": {"same_day": true, "patch_ids": ["cc72ae7102a19e896fdecfcbc78dd309"], "statement_hash": "c6b75de69d9fab56df13a79cf2259bca28a1a3ab5a0f813b64b525314f89a8db"}, "url": "/docs/compare/?release=12.1#12.1-56812038d2a3fd33", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "cfda64c9fe8538dc456bd896d9b2e333", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复逻辑复制 WAL 接收进程进程中的超时处理", "evidence": {"same_day": true, "patch_ids": ["cc72ae7102a19e896fdecfcbc78dd309"], "statement_hash": "c6b75de69d9fab56df13a79cf2259bca28a1a3ab5a0f813b64b525314f89a8db"}, "url": "/docs/compare/?release=11.6#11.6-1fe602fb0c9ed956", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}]}, {"id": "10.11-e731126d1ce9f26f", "cves": [], "html": "<p>为逻辑解码的复制消息正确添加时间戳（Jeff Janes）</p>\n<p>例如，这一疏漏导致 <code>pg_stat_subscription</code>.<code>last_msg_send_time</code> 通常显示为 NULL。</p>", "text": "为逻辑解码的复制消息正确添加时间戳（Jeff Janes） 例如，这一疏漏导致 pg_stat_subscription.last_msg_send_time 通常显示为 NULL。", "title": "为逻辑解码的复制消息正确添加时间戳", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "77964884e5d4422f97f6d2af329940dc24d6d369458340e33dab5cc18fcb3a4b", "section_path": ["变更"], "commit_groups": [["15d90a02a", "16b43e091", "404d25f3c", "5f6b1eb0c", "9ae4bdadf", "cb6d7f985", "f7b0d0704"]], "identity_text": "Correctly time-stamp replication messages for logical decoding (Jeff Janes) This oversight resulted, for example, in pg_stat_subscription.last_msg_send_time usually reading as NULL.", "commit_aliases": ["15d90a02a", "16b43e091", "404d25f3c", "5f6b1eb0c", "9ae4bdadf", "cb6d7f985", "f7b0d0704"], "source_commits": ["f7b0d0704"], "source_entry_id": "10.11/changes/021", "db_id": "162cf51033c717d6a9cc67ff386a5c57", "patch_ids": ["5b20656ac352ea2c7191a936062f6972"], "statement_hash": "c19a57cff82ca689249668b69a120e07040fa5792d96387c02e4fccd81d6d892", "relations": [{"rule": 2, "type": "equivalent", "target": "0b271fea6b0974ce6a01e39336dca929", "evidence": {"same_day": true, "patch_ids": ["5b20656ac352ea2c7191a936062f6972"], "statement_hash": "c19a57cff82ca689249668b69a120e07040fa5792d96387c02e4fccd81d6d892"}}, {"rule": 2, "type": "equivalent", "target": "3446fe6e4dee75dc2a6d3a7e1185dab1", "evidence": {"same_day": true, "patch_ids": ["5b20656ac352ea2c7191a936062f6972"], "statement_hash": "c19a57cff82ca689249668b69a120e07040fa5792d96387c02e4fccd81d6d892"}}, {"rule": 2, "type": "equivalent", "target": "3be07536ad9b2277d140c94c222b41c7", "evidence": {"same_day": true, "patch_ids": ["5b20656ac352ea2c7191a936062f6972"], "statement_hash": "c19a57cff82ca689249668b69a120e07040fa5792d96387c02e4fccd81d6d892"}}, {"rule": 2, "type": "equivalent", "target": "40cdffee03547d5befa5bcd7dabc89c3", "evidence": {"same_day": true, "patch_ids": ["5b20656ac352ea2c7191a936062f6972"], "statement_hash": "c19a57cff82ca689249668b69a120e07040fa5792d96387c02e4fccd81d6d892"}}, {"rule": 2, "type": "equivalent", "target": "7021c91f732261c9b0c2649153458065", "evidence": {"same_day": true, "patch_ids": ["5b20656ac352ea2c7191a936062f6972"], "statement_hash": "c19a57cff82ca689249668b69a120e07040fa5792d96387c02e4fccd81d6d892"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "3be07536ad9b2277d140c94c222b41c7", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "为逻辑解码的复制消息正确添加时间戳", "evidence": {"same_day": true, "patch_ids": ["5b20656ac352ea2c7191a936062f6972"], "statement_hash": "c19a57cff82ca689249668b69a120e07040fa5792d96387c02e4fccd81d6d892"}, "url": "/docs/compare/?release=12.1#12.1-54e8617fa635fc6d", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "40cdffee03547d5befa5bcd7dabc89c3", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "为逻辑解码的复制消息正确添加时间戳", "evidence": {"same_day": true, "patch_ids": ["5b20656ac352ea2c7191a936062f6972"], "statement_hash": "c19a57cff82ca689249668b69a120e07040fa5792d96387c02e4fccd81d6d892"}, "url": "/docs/compare/?release=11.6#11.6-e731126d1ce9f26f", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "0b271fea6b0974ce6a01e39336dca929", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "为逻辑解码正确地为复制消息打时间戳", "evidence": {"same_day": true, "patch_ids": ["5b20656ac352ea2c7191a936062f6972"], "statement_hash": "c19a57cff82ca689249668b69a120e07040fa5792d96387c02e4fccd81d6d892"}, "url": "/docs/compare/?release=9.6.16#9.6.16-390265d6d1c8be8e", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "3446fe6e4dee75dc2a6d3a7e1185dab1", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "为逻辑解码正确地为复制消息打时间戳", "evidence": {"same_day": true, "patch_ids": ["5b20656ac352ea2c7191a936062f6972"], "statement_hash": "c19a57cff82ca689249668b69a120e07040fa5792d96387c02e4fccd81d6d892"}, "url": "/docs/compare/?release=9.5.20#9.5.20-390265d6d1c8be8e", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "7021c91f732261c9b0c2649153458065", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "为逻辑解码正确地为复制消息打时间戳", "evidence": {"same_day": true, "patch_ids": ["5b20656ac352ea2c7191a936062f6972"], "statement_hash": "c19a57cff82ca689249668b69a120e07040fa5792d96387c02e4fccd81d6d892"}, "url": "/docs/compare/?release=9.4.25#9.4.25-390265d6d1c8be8e", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-e6213fa8ca33072b", "cves": [], "html": "<p>在逻辑解码中，确保重建快照时正确计入子事务（Masahiko Sawada）</p>\n<p>此错误会导致断言失败；尚不清楚它在生产构建中是否有不良影响。</p>", "text": "在逻辑解码中，确保重建快照时正确计入子事务（Masahiko Sawada） 此错误会导致断言失败；尚不清楚它在生产构建中是否有不良影响。", "title": "在逻辑解码中，确保重建快照时正确计入子事务", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "e863bca5d99e1fa12bfeefb9cab1242196fdbd5c1b039223829f68094dc94b56", "section_path": ["变更"], "commit_groups": [["41f3d2626", "4f7dbf0ef", "7110f5c37", "96b5033e1", "ae4305f6d", "bac2fae05", "e8c7f40a1"]], "identity_text": "In logical decoding, ensure that sub-transactions are correctly accounted for when reconstructing a snapshot (Masahiko Sawada) This error leads to assertion failures; it's unclear whether any bad effects exist in production builds.", "commit_aliases": ["41f3d2626", "4f7dbf0ef", "7110f5c37", "96b5033e1", "ae4305f6d", "bac2fae05", "e8c7f40a1"], "source_commits": ["4f7dbf0ef"], "source_entry_id": "10.11/changes/022", "db_id": "c07a34db8f6cc31294fe8e4cb76242d0", "patch_ids": ["fedd14b16b61b06734d4f9b28bfc73c9"], "statement_hash": "f92c06454d4721287e52c538bb94202f5d912046aa15d37effc654899bd7b877", "relations": [{"rule": 2, "type": "equivalent", "target": "308e8ab67fc3974e5084f6aaa6b32c05", "evidence": {"same_day": true, "patch_ids": ["fedd14b16b61b06734d4f9b28bfc73c9"], "statement_hash": "f92c06454d4721287e52c538bb94202f5d912046aa15d37effc654899bd7b877"}}, {"rule": 2, "type": "equivalent", "target": "847bd0659d336f51389845f32708b1d5", "evidence": {"same_day": true, "patch_ids": ["fedd14b16b61b06734d4f9b28bfc73c9"], "statement_hash": "f92c06454d4721287e52c538bb94202f5d912046aa15d37effc654899bd7b877"}}, {"rule": 2, "type": "equivalent", "target": "89557742c12809d014ad8c2b12d791fc", "evidence": {"same_day": true, "patch_ids": ["fedd14b16b61b06734d4f9b28bfc73c9"], "statement_hash": "f92c06454d4721287e52c538bb94202f5d912046aa15d37effc654899bd7b877"}}, {"rule": 2, "type": "equivalent", "target": "b086d67e28041e0fc0f494c505cb6831", "evidence": {"same_day": true, "patch_ids": ["fedd14b16b61b06734d4f9b28bfc73c9"], "statement_hash": "f92c06454d4721287e52c538bb94202f5d912046aa15d37effc654899bd7b877"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "b086d67e28041e0fc0f494c505cb6831", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "在逻辑解码中，确保重建快照时正确计入子事务", "evidence": {"same_day": true, "patch_ids": ["fedd14b16b61b06734d4f9b28bfc73c9"], "statement_hash": "f92c06454d4721287e52c538bb94202f5d912046aa15d37effc654899bd7b877"}, "url": "/docs/compare/?release=11.6#11.6-e6213fa8ca33072b", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "308e8ab67fc3974e5084f6aaa6b32c05", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "在逻辑解码中，确保重建快照时正确统计子事务", "evidence": {"same_day": true, "patch_ids": ["fedd14b16b61b06734d4f9b28bfc73c9"], "statement_hash": "f92c06454d4721287e52c538bb94202f5d912046aa15d37effc654899bd7b877"}, "url": "/docs/compare/?release=9.6.16#9.6.16-c0f9e78e155a0a24", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "89557742c12809d014ad8c2b12d791fc", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "在逻辑解码中，确保重建快照时正确统计子事务", "evidence": {"same_day": true, "patch_ids": ["fedd14b16b61b06734d4f9b28bfc73c9"], "statement_hash": "f92c06454d4721287e52c538bb94202f5d912046aa15d37effc654899bd7b877"}, "url": "/docs/compare/?release=9.5.20#9.5.20-c0f9e78e155a0a24", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "847bd0659d336f51389845f32708b1d5", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "在逻辑解码中，确保重建快照时正确统计子事务", "evidence": {"same_day": true, "patch_ids": ["fedd14b16b61b06734d4f9b28bfc73c9"], "statement_hash": "f92c06454d4721287e52c538bb94202f5d912046aa15d37effc654899bd7b877"}, "url": "/docs/compare/?release=9.4.25#9.4.25-c0f9e78e155a0a24", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-90492db584c32535", "cves": [], "html": "<p>修复后端进程此前曾等待同步复制时，在退出期间发生的竞争条件（Dongming Liu）</p>", "text": "修复后端进程此前曾等待同步复制时，在退出期间发生的竞争条件（Dongming Liu）", "title": "修复后端进程此前曾等待同步复制时，在退出期间发生的竞争条件", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "c8b5e913b7f89a5d1b3c05235b26dd9508078b396430feef4e73ef5cf7cfbfcc", "section_path": ["变更"], "commit_groups": [["0927d0c25", "20345197f", "52684bc7d", "61f238392", "7b8c2de64", "b99bfc3c9", "f88f7206e"]], "identity_text": "Fix race condition during backend exit, when the backend process has previously waited for synchronous replication to occur (Dongming Liu)", "commit_aliases": ["0927d0c25", "20345197f", "52684bc7d", "61f238392", "7b8c2de64", "b99bfc3c9", "f88f7206e"], "source_commits": ["b99bfc3c9"], "source_entry_id": "10.11/changes/023", "db_id": "8cc965a6c7b1379876e047ae6dbdc5a6", "patch_ids": ["4b3ea7c4276af2c59b503f7435657beb"], "statement_hash": "3789d1d50180cb6be08ab86cf5c8349bfd117d62b04c3ab06b7281c5e26eebc1", "relations": [{"rule": 2, "type": "equivalent", "target": "252e3bebcac161cd2a788bee45dbbf68", "evidence": {"same_day": true, "patch_ids": ["4b3ea7c4276af2c59b503f7435657beb"], "statement_hash": "3789d1d50180cb6be08ab86cf5c8349bfd117d62b04c3ab06b7281c5e26eebc1"}}, {"rule": 2, "type": "equivalent", "target": "31c3805880f27375b26c15d27836bd54", "evidence": {"same_day": true, "patch_ids": ["4b3ea7c4276af2c59b503f7435657beb"], "statement_hash": "3789d1d50180cb6be08ab86cf5c8349bfd117d62b04c3ab06b7281c5e26eebc1"}}, {"rule": 2, "type": "equivalent", "target": "4e314055a876588ca9d12be8b3c839e6", "evidence": {"same_day": true, "patch_ids": ["4b3ea7c4276af2c59b503f7435657beb"], "statement_hash": "3789d1d50180cb6be08ab86cf5c8349bfd117d62b04c3ab06b7281c5e26eebc1"}}, {"rule": 2, "type": "equivalent", "target": "a01ee12cafc2d030088ea21e537886ee", "evidence": {"same_day": true, "patch_ids": ["4b3ea7c4276af2c59b503f7435657beb"], "statement_hash": "3789d1d50180cb6be08ab86cf5c8349bfd117d62b04c3ab06b7281c5e26eebc1"}}, {"rule": 2, "type": "equivalent", "target": "eb3c8ddca3d37c6b609a8844f3b368ad", "evidence": {"same_day": true, "patch_ids": ["4b3ea7c4276af2c59b503f7435657beb"], "statement_hash": "3789d1d50180cb6be08ab86cf5c8349bfd117d62b04c3ab06b7281c5e26eebc1"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "a01ee12cafc2d030088ea21e537886ee", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "修复后端进程此前曾等待同步复制时，在退出期间发生的竞争条件", "evidence": {"same_day": true, "patch_ids": ["4b3ea7c4276af2c59b503f7435657beb"], "statement_hash": "3789d1d50180cb6be08ab86cf5c8349bfd117d62b04c3ab06b7281c5e26eebc1"}, "url": "/docs/compare/?release=12.1#12.1-6c90cfa8ba825249", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "eb3c8ddca3d37c6b609a8844f3b368ad", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复后端进程此前曾等待同步复制时，在退出期间发生的竞争条件", "evidence": {"same_day": true, "patch_ids": ["4b3ea7c4276af2c59b503f7435657beb"], "statement_hash": "3789d1d50180cb6be08ab86cf5c8349bfd117d62b04c3ab06b7281c5e26eebc1"}, "url": "/docs/compare/?release=11.6#11.6-90492db584c32535", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "31c3805880f27375b26c15d27836bd54", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "修复后端进程此前等待过同步复制时，后端退出期间的竞态条件", "evidence": {"same_day": true, "patch_ids": ["4b3ea7c4276af2c59b503f7435657beb"], "statement_hash": "3789d1d50180cb6be08ab86cf5c8349bfd117d62b04c3ab06b7281c5e26eebc1"}, "url": "/docs/compare/?release=9.6.16#9.6.16-701e4597a418336c", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "252e3bebcac161cd2a788bee45dbbf68", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "修复后端进程此前等待过同步复制时，后端退出期间的竞态条件", "evidence": {"same_day": true, "patch_ids": ["4b3ea7c4276af2c59b503f7435657beb"], "statement_hash": "3789d1d50180cb6be08ab86cf5c8349bfd117d62b04c3ab06b7281c5e26eebc1"}, "url": "/docs/compare/?release=9.5.20#9.5.20-701e4597a418336c", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "4e314055a876588ca9d12be8b3c839e6", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "修复后端进程此前等待过同步复制时，后端退出期间的竞态条件", "evidence": {"same_day": true, "patch_ids": ["4b3ea7c4276af2c59b503f7435657beb"], "statement_hash": "3789d1d50180cb6be08ab86cf5c8349bfd117d62b04c3ab06b7281c5e26eebc1"}, "url": "/docs/compare/?release=9.4.25#9.4.25-701e4597a418336c", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-b0d383bc14e21f0e", "cves": [], "html": "<p>修复 <code>ALTER SYSTEM</code>，使其能够处理 <code>postgresql.auto.conf</code> 中的重复条目（Ian Barwick）</p>\n<p><code>ALTER SYSTEM</code> 本身不会产生这种状态，但修改 <code>postgresql.auto.conf</code> 的外部工具可能会。现在会删除目标变量的重复条目，然后将新设置（如有）追加到末尾。</p>", "text": "修复 ALTER SYSTEM，使其能够处理 postgresql.auto.conf 中的重复条目（Ian Barwick） ALTER SYSTEM 本身不会产生这种状态，但修改 postgresql.auto.conf 的外部工具可能会。现在会删除目标变量的重复条目，然后将新设置（如有）追加到末尾。", "title": "修复 ALTER SYSTEM，使其能够处理 postgresql.auto.conf 中的重复条目", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "2a758441d4ca035442b55f78b8e4654b9a7cf4d655b4398b9b5680e63a524fe1", "section_path": ["变更"], "commit_groups": [["29f9b1819", "32d38f54a", "4784ad7a3", "75b2f011f", "a4b0d955b", "f1bf619ac", "f8c9a0852"]], "identity_text": "Fix ALTER SYSTEM to cope with duplicate entries in postgresql.auto.conf (Ian Barwick) ALTER SYSTEM itself will not generate such a state, but external tools that modify postgresql.auto.conf could do so. Duplicate entries for the target variable will now be removed, and then the new setting (if any) will be appended at the end.", "commit_aliases": ["29f9b1819", "32d38f54a", "4784ad7a3", "75b2f011f", "a4b0d955b", "f1bf619ac", "f8c9a0852"], "source_commits": ["f8c9a0852"], "source_entry_id": "10.11/changes/024", "db_id": "991531246f99e1c57bcd18d6734f3068", "patch_ids": ["4130a27c8c81a139d7d50dc89d86da9c"], "statement_hash": "a3d02dbbda8e973f29cd2dda38b81e6f0190dedd02d6cd11722c5a069c7693d4", "relations": [{"rule": 2, "type": "equivalent", "target": "81a62b06a830c80c290b748a7b7cfa8b", "evidence": {"same_day": true, "patch_ids": ["4130a27c8c81a139d7d50dc89d86da9c"], "statement_hash": "a3d02dbbda8e973f29cd2dda38b81e6f0190dedd02d6cd11722c5a069c7693d4"}}, {"rule": 2, "type": "equivalent", "target": "b6ab242f7102e93a778f875231d85b27", "evidence": {"same_day": true, "patch_ids": ["4130a27c8c81a139d7d50dc89d86da9c"], "statement_hash": "a3d02dbbda8e973f29cd2dda38b81e6f0190dedd02d6cd11722c5a069c7693d4"}}, {"rule": 2, "type": "equivalent", "target": "d0ec309fbaeba9135750d492714772f3", "evidence": {"same_day": true, "patch_ids": ["4130a27c8c81a139d7d50dc89d86da9c"], "statement_hash": "a3d02dbbda8e973f29cd2dda38b81e6f0190dedd02d6cd11722c5a069c7693d4"}}, {"rule": 2, "type": "equivalent", "target": "d6798e4c7347c23429f678916a94b88a", "evidence": {"same_day": true, "patch_ids": ["4130a27c8c81a139d7d50dc89d86da9c"], "statement_hash": "a3d02dbbda8e973f29cd2dda38b81e6f0190dedd02d6cd11722c5a069c7693d4"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "b6ab242f7102e93a778f875231d85b27", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复 ALTER SYSTEM，使其能够处理 postgresql.auto.conf 中的重复条目", "evidence": {"same_day": true, "patch_ids": ["4130a27c8c81a139d7d50dc89d86da9c"], "statement_hash": "a3d02dbbda8e973f29cd2dda38b81e6f0190dedd02d6cd11722c5a069c7693d4"}, "url": "/docs/compare/?release=11.6#11.6-b0d383bc14e21f0e", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "81a62b06a830c80c290b748a7b7cfa8b", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "修复 ALTER SYSTEM 应对 postgresql.auto.conf 中重复条目的问题", "evidence": {"same_day": true, "patch_ids": ["4130a27c8c81a139d7d50dc89d86da9c"], "statement_hash": "a3d02dbbda8e973f29cd2dda38b81e6f0190dedd02d6cd11722c5a069c7693d4"}, "url": "/docs/compare/?release=9.6.16#9.6.16-7407dd7fbeb52597", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "d0ec309fbaeba9135750d492714772f3", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "修复 ALTER SYSTEM 应对 postgresql.auto.conf 中重复条目的问题", "evidence": {"same_day": true, "patch_ids": ["4130a27c8c81a139d7d50dc89d86da9c"], "statement_hash": "a3d02dbbda8e973f29cd2dda38b81e6f0190dedd02d6cd11722c5a069c7693d4"}, "url": "/docs/compare/?release=9.5.20#9.5.20-7407dd7fbeb52597", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "d6798e4c7347c23429f678916a94b88a", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "修复 ALTER SYSTEM 应对 postgresql.auto.conf 中重复条目的问题", "evidence": {"same_day": true, "patch_ids": ["4130a27c8c81a139d7d50dc89d86da9c"], "statement_hash": "a3d02dbbda8e973f29cd2dda38b81e6f0190dedd02d6cd11722c5a069c7693d4"}, "url": "/docs/compare/?release=9.4.25#9.4.25-7407dd7fbeb52597", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-3c02e9168bbfd425", "cves": [], "html": "<p>拒绝配置文件中包含空文件名的 include 指令，并更清楚地报告包含文件递归的问题（Ian Barwick，Tom Lane）</p>", "text": "拒绝配置文件中包含空文件名的 include 指令，并更清楚地报告包含文件递归的问题（Ian Barwick，Tom Lane）", "title": "拒绝配置文件中包含空文件名的 include 指令，并更清楚地报告包含文件递归的问题", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "e1a41477025cfc24f04a1801dd3e2af4bfdc581778b4031f9e23f83f6bded0e8", "section_path": ["变更"], "commit_groups": [["1510339dc", "465f4ddda", "6e4213056", "771e12701", "cf86803e8", "ef47d284d"]], "identity_text": "Reject include directives with empty file names in configuration files, and report include-file recursion more clearly (Ian Barwick, Tom Lane)", "commit_aliases": ["1510339dc", "465f4ddda", "6e4213056", "771e12701", "cf86803e8", "ef47d284d"], "source_commits": ["771e12701"], "source_entry_id": "10.11/changes/025", "db_id": "5dfb77aae958b19f48ceea475d0bc17a", "patch_ids": ["b1ab1771abebbffd248387d89fd9be4e"], "statement_hash": "dd24813d3758cc9b0763c2f0e15cbda4052319cd0e9146f78076998acdee3778", "relations": [{"rule": 2, "type": "equivalent", "target": "2228898cbfe8ff27e54af609d8923929", "evidence": {"same_day": true, "patch_ids": ["b1ab1771abebbffd248387d89fd9be4e"], "statement_hash": "dd24813d3758cc9b0763c2f0e15cbda4052319cd0e9146f78076998acdee3778"}}, {"rule": 2, "type": "equivalent", "target": "4fb4259b82a1263b4b5bcd7794fc9ac2", "evidence": {"same_day": true, "patch_ids": ["b1ab1771abebbffd248387d89fd9be4e"], "statement_hash": "dd24813d3758cc9b0763c2f0e15cbda4052319cd0e9146f78076998acdee3778"}}, {"rule": 2, "type": "equivalent", "target": "c104430dc4d2562ddfd4f99d4080716e", "evidence": {"same_day": true, "patch_ids": ["b1ab1771abebbffd248387d89fd9be4e"], "statement_hash": "dd24813d3758cc9b0763c2f0e15cbda4052319cd0e9146f78076998acdee3778"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "4fb4259b82a1263b4b5bcd7794fc9ac2", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "拒绝配置文件中包含空文件名的 include 指令，并更清楚地报告包含文件递归的问题", "evidence": {"same_day": true, "patch_ids": ["b1ab1771abebbffd248387d89fd9be4e"], "statement_hash": "dd24813d3758cc9b0763c2f0e15cbda4052319cd0e9146f78076998acdee3778"}, "url": "/docs/compare/?release=11.6#11.6-3c02e9168bbfd425", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "c104430dc4d2562ddfd4f99d4080716e", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "拒绝配置文件中文件名为空的 include 指令，并更清晰地报告 include 文件递归", "evidence": {"same_day": true, "patch_ids": ["b1ab1771abebbffd248387d89fd9be4e"], "statement_hash": "dd24813d3758cc9b0763c2f0e15cbda4052319cd0e9146f78076998acdee3778"}, "url": "/docs/compare/?release=9.6.16#9.6.16-eb58c26f6ad1d5b0", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "2228898cbfe8ff27e54af609d8923929", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "拒绝配置文件中文件名为空的 include 指令，并更清晰地报告 include 文件递归", "evidence": {"same_day": true, "patch_ids": ["b1ab1771abebbffd248387d89fd9be4e"], "statement_hash": "dd24813d3758cc9b0763c2f0e15cbda4052319cd0e9146f78076998acdee3778"}, "url": "/docs/compare/?release=9.5.20#9.5.20-eb58c26f6ad1d5b0", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}]}, {"id": "10.11-c2b91157b41e84cc", "cves": [], "html": "<p>避免在使用 PAM 认证时记录有关已放弃连接的报错消息（Tom Lane）</p>\n<p>基于 libpq 的客户端在需要密码时通常会尝试连接两次，因为它们直到第一次连接尝试失败后才会提示用户输入密码。因此，服务器在客户端收到密码请求后关闭连接时，不会生成无用的日志消息。然而，PAM 认证代码没有遵循这一约定，会为实际上并未发生的认证失败生成多条消息。</p>", "text": "避免在使用 PAM 认证时记录有关已放弃连接的报错消息（Tom Lane） 基于 libpq 的客户端在需要密码时通常会尝试连接两次，因为它们直到第一次连接尝试失败后才会提示用户输入密码。因此，服务器在客户端收到密码请求后关闭连接时，不会生成无用的日志消息。然而，PAM 认证代码没有遵循这一约定，会为实际上并未发生的认证失败生成多条消息。", "title": "避免在使用 PAM 认证时记录有关已放弃连接的报错消息", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "7749524f22a0094de543bed8c7abd281565515d514c903fcef856348e6b2d0ab", "section_path": ["变更"], "commit_groups": [["0238a5028", "383602f9a", "3affe76ef", "762b25653", "970372037", "97ddc47b9", "f9bd3b6d9"]], "identity_text": "Avoid logging complaints about abandoned connections when using PAM authentication (Tom Lane) libpq-based clients will typically make two connection attempts when a password is required, since they don't prompt their user for a password until their first connection attempt fails. Therefore the server is coded not to generate useless log spam when a client closes the connection upon being asked for a password. However, the PAM authentication code hadn't gotten that memo, and would generate several messages about a phantom authentication failure.", "commit_aliases": ["0238a5028", "383602f9a", "3affe76ef", "762b25653", "970372037", "97ddc47b9", "f9bd3b6d9"], "source_commits": ["0238a5028"], "source_entry_id": "10.11/changes/026", "db_id": "ab75a00c1d4c744db8203ddd46fc32dc", "patch_ids": ["9e1aa7a240466d5c5bfb5b1b5fe5c0ad"], "statement_hash": "f7c9739fb7a42f1d1dc795c7b7b8fc2774be6248f728701017feabfd341abb64", "relations": [{"rule": 2, "type": "equivalent", "target": "21738c6288ddbe93871d642b6a7eab9a", "evidence": {"same_day": true, "patch_ids": ["9e1aa7a240466d5c5bfb5b1b5fe5c0ad"], "statement_hash": "f7c9739fb7a42f1d1dc795c7b7b8fc2774be6248f728701017feabfd341abb64"}}, {"rule": 2, "type": "equivalent", "target": "2cdbc623a7314338e7308414a6d64af8", "evidence": {"same_day": true, "patch_ids": ["9e1aa7a240466d5c5bfb5b1b5fe5c0ad"], "statement_hash": "f7c9739fb7a42f1d1dc795c7b7b8fc2774be6248f728701017feabfd341abb64"}}, {"rule": 2, "type": "equivalent", "target": "4e3562f65e838457039869a2ea8d4f43", "evidence": {"same_day": true, "patch_ids": ["9e1aa7a240466d5c5bfb5b1b5fe5c0ad"], "statement_hash": "f7c9739fb7a42f1d1dc795c7b7b8fc2774be6248f728701017feabfd341abb64"}}, {"rule": 2, "type": "equivalent", "target": "649b888ac67da1c428bc4a931c4d7a3a", "evidence": {"same_day": true, "patch_ids": ["9e1aa7a240466d5c5bfb5b1b5fe5c0ad"], "statement_hash": "f7c9739fb7a42f1d1dc795c7b7b8fc2774be6248f728701017feabfd341abb64"}}, {"rule": 2, "type": "equivalent", "target": "fddc39c7b2ccc6541d31f1838c6c31b6", "evidence": {"same_day": true, "patch_ids": ["9e1aa7a240466d5c5bfb5b1b5fe5c0ad"], "statement_hash": "f7c9739fb7a42f1d1dc795c7b7b8fc2774be6248f728701017feabfd341abb64"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "4e3562f65e838457039869a2ea8d4f43", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "避免在使用 PAM 认证时记录有关已放弃连接的报错消息", "evidence": {"same_day": true, "patch_ids": ["9e1aa7a240466d5c5bfb5b1b5fe5c0ad"], "statement_hash": "f7c9739fb7a42f1d1dc795c7b7b8fc2774be6248f728701017feabfd341abb64"}, "url": "/docs/compare/?release=12.1#12.1-a58f485526548a94", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "2cdbc623a7314338e7308414a6d64af8", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "避免在使用 PAM 认证时记录有关已放弃连接的报错消息", "evidence": {"same_day": true, "patch_ids": ["9e1aa7a240466d5c5bfb5b1b5fe5c0ad"], "statement_hash": "f7c9739fb7a42f1d1dc795c7b7b8fc2774be6248f728701017feabfd341abb64"}, "url": "/docs/compare/?release=11.6#11.6-c2b91157b41e84cc", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "fddc39c7b2ccc6541d31f1838c6c31b6", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "避免使用 PAM 认证时记录关于废弃连接的抱怨", "evidence": {"same_day": true, "patch_ids": ["9e1aa7a240466d5c5bfb5b1b5fe5c0ad"], "statement_hash": "f7c9739fb7a42f1d1dc795c7b7b8fc2774be6248f728701017feabfd341abb64"}, "url": "/docs/compare/?release=9.6.16#9.6.16-677495fe8337b66f", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "21738c6288ddbe93871d642b6a7eab9a", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "避免使用 PAM 认证时记录关于废弃连接的抱怨", "evidence": {"same_day": true, "patch_ids": ["9e1aa7a240466d5c5bfb5b1b5fe5c0ad"], "statement_hash": "f7c9739fb7a42f1d1dc795c7b7b8fc2774be6248f728701017feabfd341abb64"}, "url": "/docs/compare/?release=9.5.20#9.5.20-677495fe8337b66f", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "649b888ac67da1c428bc4a931c4d7a3a", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "避免使用 PAM 认证时记录关于废弃连接的抱怨", "evidence": {"same_day": true, "patch_ids": ["9e1aa7a240466d5c5bfb5b1b5fe5c0ad"], "statement_hash": "f7c9739fb7a42f1d1dc795c7b7b8fc2774be6248f728701017feabfd341abb64"}, "url": "/docs/compare/?release=9.4.25#9.4.25-677495fe8337b66f", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-eae1e81873a2a681", "cves": [], "html": "<p>修复 <code>time with time zone</code> 输入中某些不完整日期指定未被检测到的情况（Alexander Lakhin）</p>\n<p>如果指定的时区具有随时间变化的 UTC 偏移量，就必须同时指定日期，以确定偏移量。对于某些语法，以前未强制进行此项检查，可能产生错误输出。</p>", "text": "修复 time with time zone 输入中某些不完整日期指定未被检测到的情况（Alexander Lakhin） 如果指定的时区具有随时间变化的 UTC 偏移量，就必须同时指定日期，以确定偏移量。对于某些语法，以前未强制进行此项检查，可能产生错误输出。", "title": "修复 time with time zone 输入中某些不完整日期指定未被检测到的情况", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "c5e0a07bd5c21d8a6593abab8f24e9f69fd8b20129849a240a514e5cd71ed0cf", "section_path": ["变更"], "commit_groups": [["1ba4d0fe4", "1de3e0589", "1f7943698", "64579be64", "7c64a2cd9", "d16d241a5", "d8652ec55"]], "identity_text": "Fix some cases where an incomplete date specification is not detected in time with time zone input (Alexander Lakhin) If a time zone with a time-varying UTC offset is specified, then a date must be as well, so that the offset can be resolved. Depending on the syntax used, this check was not enforced in some cases, allowing bogus output to be produced.", "commit_aliases": ["1ba4d0fe4", "1de3e0589", "1f7943698", "64579be64", "7c64a2cd9", "d16d241a5", "d8652ec55"], "source_commits": ["1ba4d0fe4"], "source_entry_id": "10.11/changes/027", "db_id": "2bfe1ef2301830504e90b8803a43ae0e", "patch_ids": ["60b8906e95f2b04ca4609706bcd142e7"], "statement_hash": "8a5ba70e7778132d1f23c29ec28daa30ca990282407e3208cceff830bdab2177", "relations": [{"rule": 2, "type": "equivalent", "target": "2a9e62be3ffc7276d860702b4081ff5c", "evidence": {"same_day": true, "patch_ids": ["60b8906e95f2b04ca4609706bcd142e7"], "statement_hash": "8a5ba70e7778132d1f23c29ec28daa30ca990282407e3208cceff830bdab2177"}}, {"rule": 2, "type": "equivalent", "target": "79937d972cd7886d0feafdfde64f0c08", "evidence": {"same_day": true, "patch_ids": ["60b8906e95f2b04ca4609706bcd142e7"], "statement_hash": "8a5ba70e7778132d1f23c29ec28daa30ca990282407e3208cceff830bdab2177"}}, {"rule": 2, "type": "equivalent", "target": "9d5359b840004ae92038794c6995b394", "evidence": {"same_day": true, "patch_ids": ["60b8906e95f2b04ca4609706bcd142e7"], "statement_hash": "8a5ba70e7778132d1f23c29ec28daa30ca990282407e3208cceff830bdab2177"}}, {"rule": 2, "type": "equivalent", "target": "9e914978d794c368b7a8e1ac8993679b", "evidence": {"same_day": true, "patch_ids": ["60b8906e95f2b04ca4609706bcd142e7"], "statement_hash": "8a5ba70e7778132d1f23c29ec28daa30ca990282407e3208cceff830bdab2177"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "9d5359b840004ae92038794c6995b394", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复 time with time zone 输入中某些不完整日期指定未被检测到的情况", "evidence": {"same_day": true, "patch_ids": ["60b8906e95f2b04ca4609706bcd142e7"], "statement_hash": "8a5ba70e7778132d1f23c29ec28daa30ca990282407e3208cceff830bdab2177"}, "url": "/docs/compare/?release=11.6#11.6-eae1e81873a2a681", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "2a9e62be3ffc7276d860702b4081ff5c", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "修复 time with time zone 输入中某些未检测到不完整日期规格的情况", "evidence": {"same_day": true, "patch_ids": ["60b8906e95f2b04ca4609706bcd142e7"], "statement_hash": "8a5ba70e7778132d1f23c29ec28daa30ca990282407e3208cceff830bdab2177"}, "url": "/docs/compare/?release=9.6.16#9.6.16-8062d2f5ee2716d1", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "79937d972cd7886d0feafdfde64f0c08", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "修复 time with time zone 输入中某些未检测到不完整日期规格的情况", "evidence": {"same_day": true, "patch_ids": ["60b8906e95f2b04ca4609706bcd142e7"], "statement_hash": "8a5ba70e7778132d1f23c29ec28daa30ca990282407e3208cceff830bdab2177"}, "url": "/docs/compare/?release=9.5.20#9.5.20-8062d2f5ee2716d1", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "9e914978d794c368b7a8e1ac8993679b", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "修复 time with time zone 输入中某些未检测到不完整日期规格的情况", "evidence": {"same_day": true, "patch_ids": ["60b8906e95f2b04ca4609706bcd142e7"], "statement_hash": "8a5ba70e7778132d1f23c29ec28daa30ca990282407e3208cceff830bdab2177"}, "url": "/docs/compare/?release=9.4.25#9.4.25-8062d2f5ee2716d1", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-96e84644309a1b8c", "cves": [], "html": "<p>修复 <code>bitshiftright()</code> 的错误行为（Tom Lane）</p>\n<p>当位串长度不是 8 的倍数时，位串右移操作符未能将结果最后一个字节中的填充空间清零。虽然大多数操作看不到这些填充位，但其中任何非零位都会导致意外的比较行为，因为位串比较预期这些额外的位始终为零，并未特意忽略它们。</p>\n<p>如果由于将 <code>bitshiftright()</code> 的输出保存在表中而导致数据不一致，可以使用类似以下语句进行修复：</p>\n<pre>UPDATE mytab SET bitcol = ~(~bitcol) WHERE bitcol != ~(~bitcol);\n</pre>", "text": "修复 bitshiftright() 的错误行为（Tom Lane） 当位串长度不是 8 的倍数时，位串右移操作符未能将结果最后一个字节中的填充空间清零。虽然大多数操作看不到这些填充位，但其中任何非零位都会导致意外的比较行为，因为位串比较预期这些额外的位始终为零，并未特意忽略它们。 如果由于将 bitshiftright() 的输出保存在表中而导致数据不一致，可以使用类似以下语句进行修复： UPDATE mytab SET bitcol = ~(~bitcol) WHERE bitcol != ~(~bitcol);", "title": "修复 bitshiftright() 的错误行为", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "7fd4821162c36467b60dae2c5e409b4a27870213b490f6e1ed7fa58b4cc8f53c", "section_path": ["变更"], "commit_groups": [["096d34c3b", "35eb13270", "5ac0d9360", "6ddd164aa", "7e7abed05", "860216efa", "8a17afe84"], ["30e5b3bbe", "61aa9f544", "6c3b6406d", "8b77f783b", "9faa9794f", "b6a6c129f", "b8ddf0bdf"]], "identity_text": "Fix misbehavior of bitshiftright() (Tom Lane) The bitstring right shift operator failed to zero out padding space that exists in the last byte of the result when the bitstring length is not a multiple of 8. While invisible to most operations, any nonzero bits there would result in unexpected comparison behavior, since bitstring comparisons don't bother to ignore the extra bits, expecting them to always be zero. If you have inconsistent data as a result of saving the output of bitshiftright() in a table, it's possible to fix it with something like UPDATE mytab SET bitcol = ~(~bitcol) WHERE bitcol != ~(~bitcol);", "commit_aliases": ["096d34c3b", "30e5b3bbe", "35eb13270", "5ac0d9360", "61aa9f544", "6c3b6406d", "6ddd164aa", "7e7abed05", "860216efa", "8a17afe84", "8b77f783b", "9faa9794f", "b6a6c129f", "b8ddf0bdf"], "source_commits": ["096d34c3b", "9faa9794f"], "source_entry_id": "10.11/changes/028", "db_id": "b28c4dab180e3c439120ed5a9c176c4f", "patch_ids": ["645e773743ded66708bfdeed1cca150a", "80cc4b25f456fae0cb55503971e08d3c"], "statement_hash": "018dc62423a960f38f4e021a35d213e72a0e5646bed012cf2a6b496e0bd6b17f", "relations": [{"rule": 2, "type": "equivalent", "target": "256c5f9a61f3e86e84e844f9956eb853", "evidence": {"same_day": true, "patch_ids": ["645e773743ded66708bfdeed1cca150a", "80cc4b25f456fae0cb55503971e08d3c"], "statement_hash": "018dc62423a960f38f4e021a35d213e72a0e5646bed012cf2a6b496e0bd6b17f"}}, {"rule": 2, "type": "equivalent", "target": "42d9304af3b1d055979da4409d578bd4", "evidence": {"same_day": true, "patch_ids": ["645e773743ded66708bfdeed1cca150a", "80cc4b25f456fae0cb55503971e08d3c"], "statement_hash": "018dc62423a960f38f4e021a35d213e72a0e5646bed012cf2a6b496e0bd6b17f"}}, {"rule": 2, "type": "equivalent", "target": "5bb57a83dbd452f009809b6376428161", "evidence": {"same_day": true, "patch_ids": ["645e773743ded66708bfdeed1cca150a", "80cc4b25f456fae0cb55503971e08d3c"], "statement_hash": "018dc62423a960f38f4e021a35d213e72a0e5646bed012cf2a6b496e0bd6b17f"}}, {"rule": 2, "type": "equivalent", "target": "b3087a5cf08f5bd2809940a9b7fca7fe", "evidence": {"same_day": true, "patch_ids": ["645e773743ded66708bfdeed1cca150a", "80cc4b25f456fae0cb55503971e08d3c"], "statement_hash": "018dc62423a960f38f4e021a35d213e72a0e5646bed012cf2a6b496e0bd6b17f"}}, {"rule": 2, "type": "equivalent", "target": "b31f85a3ca08998a31dc57a7946f8561", "evidence": {"same_day": true, "patch_ids": ["645e773743ded66708bfdeed1cca150a", "80cc4b25f456fae0cb55503971e08d3c"], "statement_hash": "018dc62423a960f38f4e021a35d213e72a0e5646bed012cf2a6b496e0bd6b17f"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "b3087a5cf08f5bd2809940a9b7fca7fe", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "修复 bitshiftright() 的错误行为", "evidence": {"same_day": true, "patch_ids": ["645e773743ded66708bfdeed1cca150a", "80cc4b25f456fae0cb55503971e08d3c"], "statement_hash": "018dc62423a960f38f4e021a35d213e72a0e5646bed012cf2a6b496e0bd6b17f"}, "url": "/docs/compare/?release=12.1#12.1-47a035bc731f2d2c", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "5bb57a83dbd452f009809b6376428161", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复 bitshiftright() 的错误行为", "evidence": {"same_day": true, "patch_ids": ["645e773743ded66708bfdeed1cca150a", "80cc4b25f456fae0cb55503971e08d3c"], "statement_hash": "018dc62423a960f38f4e021a35d213e72a0e5646bed012cf2a6b496e0bd6b17f"}, "url": "/docs/compare/?release=11.6#11.6-96e84644309a1b8c", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "b31f85a3ca08998a31dc57a7946f8561", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "修复 bitshiftright() 的错误行为", "evidence": {"same_day": true, "patch_ids": ["645e773743ded66708bfdeed1cca150a", "80cc4b25f456fae0cb55503971e08d3c"], "statement_hash": "018dc62423a960f38f4e021a35d213e72a0e5646bed012cf2a6b496e0bd6b17f"}, "url": "/docs/compare/?release=9.6.16#9.6.16-96e84644309a1b8c", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "256c5f9a61f3e86e84e844f9956eb853", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "修复 bitshiftright() 的错误行为", "evidence": {"same_day": true, "patch_ids": ["645e773743ded66708bfdeed1cca150a", "80cc4b25f456fae0cb55503971e08d3c"], "statement_hash": "018dc62423a960f38f4e021a35d213e72a0e5646bed012cf2a6b496e0bd6b17f"}, "url": "/docs/compare/?release=9.5.20#9.5.20-96e84644309a1b8c", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "42d9304af3b1d055979da4409d578bd4", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "修复 bitshiftright() 的错误行为", "evidence": {"same_day": true, "patch_ids": ["645e773743ded66708bfdeed1cca150a", "80cc4b25f456fae0cb55503971e08d3c"], "statement_hash": "018dc62423a960f38f4e021a35d213e72a0e5646bed012cf2a6b496e0bd6b17f"}, "url": "/docs/compare/?release=9.4.25#9.4.25-96e84644309a1b8c", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-77cdebb12fe72e07", "cves": [], "html": "<p>避免在 <code>XMLTABLE</code> 中选择命名空间节点时发生崩溃（Chapman Flack）</p>", "text": "避免在 XMLTABLE 中选择命名空间节点时发生崩溃（Chapman Flack）", "title": "避免在 XMLTABLE 中选择命名空间节点时发生崩溃", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "6f48324a48d6a80e63b7847f13162461ee1022257e250158f65d35f3722f267d", "section_path": ["变更"], "commit_groups": [["2bbdf8e2e", "592a16321", "9bf247686", "9f7a664fe"]], "identity_text": "Avoid crash when selecting a namespace node in XMLTABLE (Chapman Flack)", "commit_aliases": ["2bbdf8e2e", "592a16321", "9bf247686", "9f7a664fe"], "source_commits": ["9bf247686"], "source_entry_id": "10.11/changes/029", "db_id": "c9108901ccdea18647d25b61416fb526", "patch_ids": ["471310e9aa40c56ba2dd75a1ac126542"], "statement_hash": "ddf88691c7e4881f907273bf42b4d54582d2d0b5abd68b3acb722174bd4ff5a2", "relations": [{"rule": 2, "type": "equivalent", "target": "387a76afffcb84c00978786b58d96f87", "evidence": {"same_day": true, "patch_ids": ["471310e9aa40c56ba2dd75a1ac126542"], "statement_hash": "ddf88691c7e4881f907273bf42b4d54582d2d0b5abd68b3acb722174bd4ff5a2"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "387a76afffcb84c00978786b58d96f87", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "避免在 XMLTABLE 中选择命名空间节点时发生崩溃", "evidence": {"same_day": true, "patch_ids": ["471310e9aa40c56ba2dd75a1ac126542"], "statement_hash": "ddf88691c7e4881f907273bf42b4d54582d2d0b5abd68b3acb722174bd4ff5a2"}, "url": "/docs/compare/?release=11.6#11.6-77cdebb12fe72e07", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}]}, {"id": "10.11-41c54874cae13df3", "cves": [], "html": "<p>修复对间隔乘法中边界情况下整数溢出的检测（Yuya Watari）</p>", "text": "修复对间隔乘法中边界情况下整数溢出的检测（Yuya Watari）", "title": "修复对间隔乘法中边界情况下整数溢出的检测", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "a8d3e066e9d5e0df453eccdb07c9697dcd3513ee60e1e608294360d710af1c66", "section_path": ["变更"], "commit_groups": [["15783d057", "5f794f757", "84780d468", "8d380864a", "a7145f6bc", "b49b7f944", "f6e72dc9c"], ["18622caa3", "30f6998ff", "a55018760"]], "identity_text": "Fix detection of edge-case integer overflow in interval multiplication (Yuya Watari)", "commit_aliases": ["15783d057", "18622caa3", "30f6998ff", "5f794f757", "84780d468", "8d380864a", "a55018760", "a7145f6bc", "b49b7f944", "f6e72dc9c"], "source_commits": ["5f794f757", "a55018760"], "source_entry_id": "10.11/changes/030", "db_id": "17545ebb5db752cf1bb80acb0053f9b0", "patch_ids": ["6133e47aab47749c29b127f2f4a7bdf4", "908fa4f29f05192ee59958f469e36ce1"], "statement_hash": "7cdcf76c6bf97331d0630b099eab8609f4d7f07848a4458a40876333a5abf76c", "relations": [{"rule": 2, "type": "equivalent", "target": "109a8cfa77f3b4114f60c8757e03e330", "evidence": {"same_day": true, "patch_ids": ["6133e47aab47749c29b127f2f4a7bdf4", "908fa4f29f05192ee59958f469e36ce1"], "statement_hash": "7cdcf76c6bf97331d0630b099eab8609f4d7f07848a4458a40876333a5abf76c"}}, {"rule": 2, "type": "equivalent", "target": "4f905d06a5c25d4b8d28e94c2622d366", "evidence": {"same_day": true, "patch_ids": ["6133e47aab47749c29b127f2f4a7bdf4", "908fa4f29f05192ee59958f469e36ce1"], "statement_hash": "7cdcf76c6bf97331d0630b099eab8609f4d7f07848a4458a40876333a5abf76c"}}, {"rule": 2, "type": "equivalent", "target": "7d17e70514638e9934682dd4384e78b1", "evidence": {"same_day": true, "patch_ids": ["6133e47aab47749c29b127f2f4a7bdf4", "908fa4f29f05192ee59958f469e36ce1"], "statement_hash": "7cdcf76c6bf97331d0630b099eab8609f4d7f07848a4458a40876333a5abf76c"}}, {"rule": 2, "type": "equivalent", "target": "aa81f2865b69a4270c2849c5addde2d9", "evidence": {"same_day": true, "patch_ids": ["6133e47aab47749c29b127f2f4a7bdf4", "908fa4f29f05192ee59958f469e36ce1"], "statement_hash": "7cdcf76c6bf97331d0630b099eab8609f4d7f07848a4458a40876333a5abf76c"}}, {"rule": 2, "type": "equivalent", "target": "f33041de3179ff43aa931a193e8e70b2", "evidence": {"same_day": true, "patch_ids": ["6133e47aab47749c29b127f2f4a7bdf4", "908fa4f29f05192ee59958f469e36ce1"], "statement_hash": "7cdcf76c6bf97331d0630b099eab8609f4d7f07848a4458a40876333a5abf76c"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "7d17e70514638e9934682dd4384e78b1", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "修复对间隔乘法中边界情况下整数溢出的检测", "evidence": {"same_day": true, "patch_ids": ["6133e47aab47749c29b127f2f4a7bdf4", "908fa4f29f05192ee59958f469e36ce1"], "statement_hash": "7cdcf76c6bf97331d0630b099eab8609f4d7f07848a4458a40876333a5abf76c"}, "url": "/docs/compare/?release=12.1#12.1-0282ed12e06cabde", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "f33041de3179ff43aa931a193e8e70b2", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复对间隔乘法中边界情况下整数溢出的检测", "evidence": {"same_day": true, "patch_ids": ["6133e47aab47749c29b127f2f4a7bdf4", "908fa4f29f05192ee59958f469e36ce1"], "statement_hash": "7cdcf76c6bf97331d0630b099eab8609f4d7f07848a4458a40876333a5abf76c"}, "url": "/docs/compare/?release=11.6#11.6-41c54874cae13df3", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "109a8cfa77f3b4114f60c8757e03e330", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "修复间隔乘法中边界整数溢出的检测", "evidence": {"same_day": true, "patch_ids": ["6133e47aab47749c29b127f2f4a7bdf4", "908fa4f29f05192ee59958f469e36ce1"], "statement_hash": "7cdcf76c6bf97331d0630b099eab8609f4d7f07848a4458a40876333a5abf76c"}, "url": "/docs/compare/?release=9.6.16#9.6.16-80c9ece70aeff5f7", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "aa81f2865b69a4270c2849c5addde2d9", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "修复间隔乘法中边界整数溢出的检测", "evidence": {"same_day": true, "patch_ids": ["6133e47aab47749c29b127f2f4a7bdf4", "908fa4f29f05192ee59958f469e36ce1"], "statement_hash": "7cdcf76c6bf97331d0630b099eab8609f4d7f07848a4458a40876333a5abf76c"}, "url": "/docs/compare/?release=9.5.20#9.5.20-80c9ece70aeff5f7", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "4f905d06a5c25d4b8d28e94c2622d366", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "修复间隔乘法中边界整数溢出的检测", "evidence": {"same_day": true, "patch_ids": ["6133e47aab47749c29b127f2f4a7bdf4", "908fa4f29f05192ee59958f469e36ce1"], "statement_hash": "7cdcf76c6bf97331d0630b099eab8609f4d7f07848a4458a40876333a5abf76c"}, "url": "/docs/compare/?release=9.4.25#9.4.25-80c9ece70aeff5f7", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-36c9217405037182", "cves": [], "html": "<p>修复使用 ICU 排序规则时 <code>lower()</code>、<code>upper()</code> 和 <code>initcap()</code> 函数中的内存泄漏（Konstantin Knizhnik）</p>", "text": "修复使用 ICU 排序规则时 lower()、upper() 和 initcap() 函数中的内存泄漏（Konstantin Knizhnik）", "title": "修复使用 ICU 排序规则时 lower()、upper() 和 initcap() 函数中的内存泄漏", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "fcbf2d8145a5b67828cb3f486562497631a6c0bdf17bc5095d751e64fcba26ab", "section_path": ["变更"], "commit_groups": [["3a54eb1a3", "5380719f9", "604d20679", "f967a1fda"]], "identity_text": "Fix memory leaks in lower(), upper(), and initcap() functions when using ICU collations (Konstantin Knizhnik)", "commit_aliases": ["3a54eb1a3", "5380719f9", "604d20679", "f967a1fda"], "source_commits": ["604d20679"], "source_entry_id": "10.11/changes/031", "db_id": "d7eaf8ca147ef24508e32407746aa43f", "patch_ids": ["1afddeec9e89ede446eb31c2d1378416"], "statement_hash": "dce119acba086e1aad81d46c472129223dfb3264dca2e0f6eb69e5a1fddb14dc", "relations": [{"rule": 2, "type": "equivalent", "target": "d95c212273d1c0e2e1db36b78e36ce35", "evidence": {"same_day": true, "patch_ids": ["1afddeec9e89ede446eb31c2d1378416"], "statement_hash": "dce119acba086e1aad81d46c472129223dfb3264dca2e0f6eb69e5a1fddb14dc"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "d95c212273d1c0e2e1db36b78e36ce35", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复使用 ICU 排序规则时 lower()、upper() 和 initcap() 函数中的内存泄漏", "evidence": {"same_day": true, "patch_ids": ["1afddeec9e89ede446eb31c2d1378416"], "statement_hash": "dce119acba086e1aad81d46c472129223dfb3264dca2e0f6eb69e5a1fddb14dc"}, "url": "/docs/compare/?release=11.6#11.6-36c9217405037182", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}]}, {"id": "10.11-989b2e62585bafb6", "cves": [], "html": "<p>避免 <code>ispell</code> 文本检索词典包含错误的词缀数据时发生崩溃（Arthur Zakirov）</p>", "text": "避免 ispell 文本检索词典包含错误的词缀数据时发生崩溃（Arthur Zakirov）", "title": "避免 ispell 文本检索词典包含错误的词缀数据时发生崩溃", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "aa1f6608dca44d1beb54ca47e1067105e5fedaf1cbcb9fa201c7f9119deb377f", "section_path": ["变更"], "commit_groups": [["4077e9ae1", "6dd92138d", "88d03d73c", "d43bd9dce", "db27b60f0"], ["43753c2cf", "51b9ac558", "65cdf8bc1", "680aabd2f", "8af1624e3"]], "identity_text": "Avoid crashes if ispell text search dictionaries contain wrong affix data (Arthur Zakirov)", "commit_aliases": ["4077e9ae1", "43753c2cf", "51b9ac558", "65cdf8bc1", "680aabd2f", "6dd92138d", "88d03d73c", "8af1624e3", "d43bd9dce", "db27b60f0"], "source_commits": ["4077e9ae1", "680aabd2f"], "source_entry_id": "10.11/changes/032", "db_id": "b81d2600384e59e638afb38285986d44", "patch_ids": ["2c9b96677e11556a7792ed984631cb47", "b826b9f7eb56918dfcdb7195e9ec5423"], "statement_hash": "a74aaf28fd044c4e8cf2f3fd2663204115fe3b04176e102b771bee4ba2c81aa7", "relations": [{"rule": 2, "type": "equivalent", "target": "1791c3680867811f4b490595463226c2", "evidence": {"same_day": true, "patch_ids": ["2c9b96677e11556a7792ed984631cb47", "b826b9f7eb56918dfcdb7195e9ec5423"], "statement_hash": "a74aaf28fd044c4e8cf2f3fd2663204115fe3b04176e102b771bee4ba2c81aa7"}}, {"rule": 2, "type": "equivalent", "target": "283e2cd004db7bde323feb3bd8b79693", "evidence": {"same_day": true, "patch_ids": ["2c9b96677e11556a7792ed984631cb47", "b826b9f7eb56918dfcdb7195e9ec5423"], "statement_hash": "a74aaf28fd044c4e8cf2f3fd2663204115fe3b04176e102b771bee4ba2c81aa7"}}, {"rule": 2, "type": "equivalent", "target": "cd5a7bde0978c05f1d476792dd368370", "evidence": {"same_day": true, "patch_ids": ["2c9b96677e11556a7792ed984631cb47", "b826b9f7eb56918dfcdb7195e9ec5423"], "statement_hash": "a74aaf28fd044c4e8cf2f3fd2663204115fe3b04176e102b771bee4ba2c81aa7"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "cd5a7bde0978c05f1d476792dd368370", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "避免 ispell 文本检索词典包含错误的词缀数据时发生崩溃", "evidence": {"same_day": true, "patch_ids": ["2c9b96677e11556a7792ed984631cb47", "b826b9f7eb56918dfcdb7195e9ec5423"], "statement_hash": "a74aaf28fd044c4e8cf2f3fd2663204115fe3b04176e102b771bee4ba2c81aa7"}, "url": "/docs/compare/?release=12.1#12.1-6ec3b334cd31d5fc", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "1791c3680867811f4b490595463226c2", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "避免 ispell 文本检索词典包含错误的词缀数据时发生崩溃", "evidence": {"same_day": true, "patch_ids": ["2c9b96677e11556a7792ed984631cb47", "b826b9f7eb56918dfcdb7195e9ec5423"], "statement_hash": "a74aaf28fd044c4e8cf2f3fd2663204115fe3b04176e102b771bee4ba2c81aa7"}, "url": "/docs/compare/?release=11.6#11.6-989b2e62585bafb6", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "283e2cd004db7bde323feb3bd8b79693", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "避免 ispell 文本搜索词典包含错误词缀数据时崩溃", "evidence": {"same_day": true, "patch_ids": ["2c9b96677e11556a7792ed984631cb47", "b826b9f7eb56918dfcdb7195e9ec5423"], "statement_hash": "a74aaf28fd044c4e8cf2f3fd2663204115fe3b04176e102b771bee4ba2c81aa7"}, "url": "/docs/compare/?release=9.6.16#9.6.16-67382bc92991ea84", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}]}, {"id": "10.11-ec84e29ee2521591", "cves": [], "html": "<p>修复 GIN 倒排列表的不正确压缩逻辑（Heikki Linnakangas）</p>\n<p>如果相邻被索引 TID 之间的距离超过 16TB，GIN 倒排列表条目可能需要 7 字节。处理逻辑中的某一步未与此保持一致，可能尝试将该值写入 6 字节缓冲区。原则上这可能导致栈越界，但在大多数架构上，下一个字节很可能是未使用的对齐填充，因此此缺陷无害。无论如何，此缺陷都很难触发。</p>", "text": "修复 GIN 倒排列表的不正确压缩逻辑（Heikki Linnakangas） 如果相邻被索引 TID 之间的距离超过 16TB，GIN 倒排列表条目可能需要 7 字节。处理逻辑中的某一步未与此保持一致，可能尝试将该值写入 6 字节缓冲区。原则上这可能导致栈越界，但在大多数架构上，下一个字节很可能是未使用的对齐填充，因此此缺陷无害。无论如何，此缺陷都很难触发。", "title": "修复 GIN 倒排列表的不正确压缩逻辑", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "949a2510f94ed33dc75a7a98e8ca86e07633594a8cdaad1f0a46695fcb6afc15", "section_path": ["变更"], "commit_groups": [["1c99acc6e", "6292cde1c", "6b7819a0b", "756178232", "bde7493d1", "cf00ca522", "e2e616579"], ["744c848dc"]], "identity_text": "Fix incorrect compression logic for GIN posting lists (Heikki Linnakangas) A GIN posting list item can require 7 bytes if the distance between adjacent indexed TIDs exceeds 16TB. One step in the logic was out of sync with that, and might try to write the value into a 6-byte buffer. In principle this could cause a stack overrun, but on most architectures it's likely that the next byte would be unused alignment padding, making the bug harmless. In any case the bug would be very difficult to hit.", "commit_aliases": ["1c99acc6e", "6292cde1c", "6b7819a0b", "744c848dc", "756178232", "bde7493d1", "cf00ca522", "e2e616579"], "source_commits": ["744c848dc", "756178232"], "source_entry_id": "10.11/changes/033", "db_id": "f0f6785a05bc6fa46583e2f8ef2f62a8", "patch_ids": ["60acafcf1cabfbe9689d5648685a681d", "66bb22b045c63c243194aa0ae4579612"], "statement_hash": "fcfa6868976587d2621b5637da29698324069942fe27b2fe90d8e7597822d129", "relations": [{"rule": 2, "type": "equivalent", "target": "3fc326e55a6b6b746dbddce853d76f45", "evidence": {"same_day": true, "patch_ids": ["60acafcf1cabfbe9689d5648685a681d", "66bb22b045c63c243194aa0ae4579612"], "statement_hash": "fcfa6868976587d2621b5637da29698324069942fe27b2fe90d8e7597822d129"}}, {"rule": 2, "type": "equivalent", "target": "5be78007dca7c1c0fbedd0dcc358ab1d", "evidence": {"same_day": true, "patch_ids": ["60acafcf1cabfbe9689d5648685a681d", "66bb22b045c63c243194aa0ae4579612"], "statement_hash": "fcfa6868976587d2621b5637da29698324069942fe27b2fe90d8e7597822d129"}}, {"rule": 2, "type": "equivalent", "target": "8c49457da3d5a86e1b67cf7bf25b8fb2", "evidence": {"same_day": true, "patch_ids": ["60acafcf1cabfbe9689d5648685a681d", "66bb22b045c63c243194aa0ae4579612"], "statement_hash": "fcfa6868976587d2621b5637da29698324069942fe27b2fe90d8e7597822d129"}}, {"rule": 2, "type": "equivalent", "target": "b75d1389fbbfd02cdf24534c23cd800e", "evidence": {"same_day": true, "patch_ids": ["60acafcf1cabfbe9689d5648685a681d", "66bb22b045c63c243194aa0ae4579612"], "statement_hash": "fcfa6868976587d2621b5637da29698324069942fe27b2fe90d8e7597822d129"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "5be78007dca7c1c0fbedd0dcc358ab1d", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复 GIN 倒排列表的不正确压缩逻辑", "evidence": {"same_day": true, "patch_ids": ["60acafcf1cabfbe9689d5648685a681d", "66bb22b045c63c243194aa0ae4579612"], "statement_hash": "fcfa6868976587d2621b5637da29698324069942fe27b2fe90d8e7597822d129"}, "url": "/docs/compare/?release=11.6#11.6-ec84e29ee2521591", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "b75d1389fbbfd02cdf24534c23cd800e", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "修复 GIN posting 列表的错误压缩逻辑", "evidence": {"same_day": true, "patch_ids": ["60acafcf1cabfbe9689d5648685a681d", "66bb22b045c63c243194aa0ae4579612"], "statement_hash": "fcfa6868976587d2621b5637da29698324069942fe27b2fe90d8e7597822d129"}, "url": "/docs/compare/?release=9.6.16#9.6.16-df82c8fc573cd85b", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "8c49457da3d5a86e1b67cf7bf25b8fb2", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "修复 GIN posting 列表的错误压缩逻辑", "evidence": {"same_day": true, "patch_ids": ["60acafcf1cabfbe9689d5648685a681d", "66bb22b045c63c243194aa0ae4579612"], "statement_hash": "fcfa6868976587d2621b5637da29698324069942fe27b2fe90d8e7597822d129"}, "url": "/docs/compare/?release=9.5.20#9.5.20-df82c8fc573cd85b", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "3fc326e55a6b6b746dbddce853d76f45", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "修复 GIN posting 列表的错误压缩逻辑", "evidence": {"same_day": true, "patch_ids": ["60acafcf1cabfbe9689d5648685a681d", "66bb22b045c63c243194aa0ae4579612"], "statement_hash": "fcfa6868976587d2621b5637da29698324069942fe27b2fe90d8e7597822d129"}, "url": "/docs/compare/?release=9.4.25#9.4.25-df82c8fc573cd85b", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-a23f301528635a6b", "cves": [], "html": "<p>修复 KNN-GiST 中对无穷大、NaN 和 NULL 值的处理（Alexander Korotkov）</p>\n<p>如果为非空列值计算出的某些距离为无穷大或 NaN，查询输出顺序可能不正确（与普通排序的结果不同）。</p>", "text": "修复 KNN-GiST 中对无穷大、NaN 和 NULL 值的处理（Alexander Korotkov） 如果为非空列值计算出的某些距离为无穷大或 NaN，查询输出顺序可能不正确（与普通排序的结果不同）。", "title": "修复 KNN-GiST 中对无穷大、NaN 和 NULL 值的处理", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "c4c25c01043e96a0fd10a449c4f2ce5f5361529641dd86ca3f9c4e3922330981", "section_path": ["变更"], "commit_groups": [["02f90879e", "1df412304", "3c155bafa", "92f6b49c4", "a5431b7d5", "d807200b4", "e6af7b367"], ["111fb7e42", "749b04d1d", "8f724002e", "986319d46", "b2037afec", "bc67f4189", "e5d8f3596"]], "identity_text": "Fix handling of infinity, NaN, and NULL values in KNN-GiST (Alexander Korotkov) The query's output order could be wrong (different from a plain sort's result) if some distances computed for non-null column values are infinity or NaN.", "commit_aliases": ["02f90879e", "111fb7e42", "1df412304", "3c155bafa", "749b04d1d", "8f724002e", "92f6b49c4", "986319d46", "a5431b7d5", "b2037afec", "bc67f4189", "d807200b4", "e5d8f3596", "e6af7b367"], "source_commits": ["8f724002e", "92f6b49c4"], "source_entry_id": "10.11/changes/034", "db_id": "9d7bbd437cedcff2df4f71c25b584f97", "patch_ids": ["7b9ea18b56299a8d028ae8820497e4b7", "c24a7727ca7395afe3dc6605d984abda"], "statement_hash": "9986d70146d4c4a9030d03614e231aaffcb3caabc05c0a122a7ea222c3129e26", "relations": [{"rule": 2, "type": "equivalent", "target": "7a43cdba2247d6050186b24e9452d6b6", "evidence": {"same_day": true, "patch_ids": ["7b9ea18b56299a8d028ae8820497e4b7", "c24a7727ca7395afe3dc6605d984abda"], "statement_hash": "9986d70146d4c4a9030d03614e231aaffcb3caabc05c0a122a7ea222c3129e26"}}, {"rule": 2, "type": "equivalent", "target": "beda73fd9dd4d580e534c03f8985a729", "evidence": {"same_day": true, "patch_ids": ["7b9ea18b56299a8d028ae8820497e4b7", "c24a7727ca7395afe3dc6605d984abda"], "statement_hash": "9986d70146d4c4a9030d03614e231aaffcb3caabc05c0a122a7ea222c3129e26"}}, {"rule": 2, "type": "equivalent", "target": "c3ccaff31d0f9a62e817be93b67bd01d", "evidence": {"same_day": true, "patch_ids": ["7b9ea18b56299a8d028ae8820497e4b7", "c24a7727ca7395afe3dc6605d984abda"], "statement_hash": "9986d70146d4c4a9030d03614e231aaffcb3caabc05c0a122a7ea222c3129e26"}}, {"rule": 2, "type": "equivalent", "target": "d9b7dda1aa30309ccee427f287468c34", "evidence": {"same_day": true, "patch_ids": ["7b9ea18b56299a8d028ae8820497e4b7", "c24a7727ca7395afe3dc6605d984abda"], "statement_hash": "9986d70146d4c4a9030d03614e231aaffcb3caabc05c0a122a7ea222c3129e26"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "7a43cdba2247d6050186b24e9452d6b6", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复 KNN-GiST 中对无穷大、NaN 和 NULL 值的处理", "evidence": {"same_day": true, "patch_ids": ["7b9ea18b56299a8d028ae8820497e4b7", "c24a7727ca7395afe3dc6605d984abda"], "statement_hash": "9986d70146d4c4a9030d03614e231aaffcb3caabc05c0a122a7ea222c3129e26"}, "url": "/docs/compare/?release=11.6#11.6-a23f301528635a6b", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "c3ccaff31d0f9a62e817be93b67bd01d", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "修复 KNN-GiST 中对无穷大、NaN 和 NULL 值的处理", "evidence": {"same_day": true, "patch_ids": ["7b9ea18b56299a8d028ae8820497e4b7", "c24a7727ca7395afe3dc6605d984abda"], "statement_hash": "9986d70146d4c4a9030d03614e231aaffcb3caabc05c0a122a7ea222c3129e26"}, "url": "/docs/compare/?release=9.6.16#9.6.16-a23f301528635a6b", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "d9b7dda1aa30309ccee427f287468c34", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "修复 KNN-GiST 中对无穷大、NaN 和 NULL 值的处理", "evidence": {"same_day": true, "patch_ids": ["7b9ea18b56299a8d028ae8820497e4b7", "c24a7727ca7395afe3dc6605d984abda"], "statement_hash": "9986d70146d4c4a9030d03614e231aaffcb3caabc05c0a122a7ea222c3129e26"}, "url": "/docs/compare/?release=9.5.20#9.5.20-a23f301528635a6b", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "beda73fd9dd4d580e534c03f8985a729", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "修复 KNN-GiST 中对无穷大、NaN 和 NULL 值的处理", "evidence": {"same_day": true, "patch_ids": ["7b9ea18b56299a8d028ae8820497e4b7", "c24a7727ca7395afe3dc6605d984abda"], "statement_hash": "9986d70146d4c4a9030d03614e231aaffcb3caabc05c0a122a7ea222c3129e26"}, "url": "/docs/compare/?release=9.4.25#9.4.25-a23f301528635a6b", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-2ad2e8267b0f23fc", "cves": [], "html": "<p>修复 KNN-SP-GiST 中对搜索 NULL 的处理（Nikita Glukhov）</p>", "text": "修复 KNN-SP-GiST 中对搜索 NULL 的处理（Nikita Glukhov）", "title": "修复 KNN-SP-GiST 中对搜索 NULL 的处理", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "f4b4e16e688c7a2ac1cae4b92b6e2dee16789cc300f760628c671d0b3571e527", "section_path": ["变更"], "commit_groups": [["140b7b1f9", "2f0434e8e", "388939748", "984b9ba1d"], ["2da8e56db", "31cbd7605", "332eda5bd", "53d9cf2db", "6cae9d2c1", "ad458d0cd", "d6a90aac5"]], "identity_text": "Fix handling of searches for NULL in KNN-SP-GiST (Nikita Glukhov)", "commit_aliases": ["140b7b1f9", "2da8e56db", "2f0434e8e", "31cbd7605", "332eda5bd", "388939748", "53d9cf2db", "6cae9d2c1", "984b9ba1d", "ad458d0cd", "d6a90aac5"], "source_commits": ["2da8e56db", "2f0434e8e"], "source_entry_id": "10.11/changes/035", "db_id": "7c8f69a9ab49e39d197b5a8392db3b48", "patch_ids": ["6ff6f0f4c73f1aca8888e2ef75427b6a", "fbead6a49176269f775eefbb62877c7f"], "statement_hash": "c0d9be5b78fc1c8a236e8a3b8f7a6cbc43467beaf85024d646f78b0c0b577425", "relations": [{"rule": 2, "type": "equivalent", "target": "8e91a2f472a015ee7ff3b4d301c5238a", "evidence": {"same_day": true, "patch_ids": ["6ff6f0f4c73f1aca8888e2ef75427b6a", "fbead6a49176269f775eefbb62877c7f"], "statement_hash": "c0d9be5b78fc1c8a236e8a3b8f7a6cbc43467beaf85024d646f78b0c0b577425"}}, {"rule": 2, "type": "equivalent", "target": "ca618c300b2c0271b550bbc8508bc145", "evidence": {"same_day": true, "patch_ids": ["6ff6f0f4c73f1aca8888e2ef75427b6a", "fbead6a49176269f775eefbb62877c7f"], "statement_hash": "c0d9be5b78fc1c8a236e8a3b8f7a6cbc43467beaf85024d646f78b0c0b577425"}}, {"rule": 2, "type": "equivalent", "target": "cff95402d4659c1e9851118ce708bbc0", "evidence": {"same_day": true, "patch_ids": ["6ff6f0f4c73f1aca8888e2ef75427b6a", "fbead6a49176269f775eefbb62877c7f"], "statement_hash": "c0d9be5b78fc1c8a236e8a3b8f7a6cbc43467beaf85024d646f78b0c0b577425"}}, {"rule": 2, "type": "equivalent", "target": "d01ed88fb942afa0ed5ffa43faba6308", "evidence": {"same_day": true, "patch_ids": ["6ff6f0f4c73f1aca8888e2ef75427b6a", "fbead6a49176269f775eefbb62877c7f"], "statement_hash": "c0d9be5b78fc1c8a236e8a3b8f7a6cbc43467beaf85024d646f78b0c0b577425"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "cff95402d4659c1e9851118ce708bbc0", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复 KNN-SP-GiST 中对搜索 NULL 的处理", "evidence": {"same_day": true, "patch_ids": ["6ff6f0f4c73f1aca8888e2ef75427b6a", "fbead6a49176269f775eefbb62877c7f"], "statement_hash": "c0d9be5b78fc1c8a236e8a3b8f7a6cbc43467beaf85024d646f78b0c0b577425"}, "url": "/docs/compare/?release=11.6#11.6-2ad2e8267b0f23fc", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "8e91a2f472a015ee7ff3b4d301c5238a", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "修复 KNN-SP-GiST 中对 NULL 搜索的处理", "evidence": {"same_day": true, "patch_ids": ["6ff6f0f4c73f1aca8888e2ef75427b6a", "fbead6a49176269f775eefbb62877c7f"], "statement_hash": "c0d9be5b78fc1c8a236e8a3b8f7a6cbc43467beaf85024d646f78b0c0b577425"}, "url": "/docs/compare/?release=9.6.16#9.6.16-ada4c4796e96ac6c", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "ca618c300b2c0271b550bbc8508bc145", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "修复 KNN-SP-GiST 中对 NULL 搜索的处理", "evidence": {"same_day": true, "patch_ids": ["6ff6f0f4c73f1aca8888e2ef75427b6a", "fbead6a49176269f775eefbb62877c7f"], "statement_hash": "c0d9be5b78fc1c8a236e8a3b8f7a6cbc43467beaf85024d646f78b0c0b577425"}, "url": "/docs/compare/?release=9.5.20#9.5.20-ada4c4796e96ac6c", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "d01ed88fb942afa0ed5ffa43faba6308", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "修复 KNN-SP-GiST 中对 NULL 搜索的处理", "evidence": {"same_day": true, "patch_ids": ["6ff6f0f4c73f1aca8888e2ef75427b6a", "fbead6a49176269f775eefbb62877c7f"], "statement_hash": "c0d9be5b78fc1c8a236e8a3b8f7a6cbc43467beaf85024d646f78b0c0b577425"}, "url": "/docs/compare/?release=9.4.25#9.4.25-ada4c4796e96ac6c", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-e87de571f41d73e4", "cves": [], "html": "<p>在 Windows 上，识别 <span>“<span>Norwegian (Bokmål)</span>”</span> 区域设置名称的更多拼写形式（Tom Lane）</p>", "text": "在 Windows 上，识别 “Norwegian (Bokmål)” 区域设置名称的更多拼写形式（Tom Lane）", "title": "在 Windows 上，识别 “Norwegian (Bokmål)” 区域设置名称的更多拼写形式", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "74954a1c0243d9b26e633e90f250ec6e2ba060beaf964283d741b43419d85c7d", "section_path": ["变更"], "commit_groups": [["185253ab8", "4f2ad5226", "a05a04d0e", "aebe3ef0e", "db477b691", "e3267407e", "fedcab352"]], "identity_text": "On Windows, recognize additional spellings of the Norwegian (Bokmål) locale name (Tom Lane)", "commit_aliases": ["185253ab8", "4f2ad5226", "a05a04d0e", "aebe3ef0e", "db477b691", "e3267407e", "fedcab352"], "source_commits": ["aebe3ef0e"], "source_entry_id": "10.11/changes/036", "db_id": "605dd65b38b1599763cf75961ffcd71b", "patch_ids": ["b4d55cbc4d3eb09a21b712947fc01446"], "statement_hash": "6365cced4f4ad597334c45749ccad9c902fd71e380f4a88b6dc5f99475529bf5", "relations": [{"rule": 2, "type": "equivalent", "target": "225febe7c77dd58718ec5f3f63a0812d", "evidence": {"same_day": true, "patch_ids": ["b4d55cbc4d3eb09a21b712947fc01446"], "statement_hash": "6365cced4f4ad597334c45749ccad9c902fd71e380f4a88b6dc5f99475529bf5"}}, {"rule": 2, "type": "equivalent", "target": "26d29236bce72fa79bbb285e2ee96b25", "evidence": {"same_day": true, "patch_ids": ["b4d55cbc4d3eb09a21b712947fc01446"], "statement_hash": "6365cced4f4ad597334c45749ccad9c902fd71e380f4a88b6dc5f99475529bf5"}}, {"rule": 2, "type": "equivalent", "target": "73495a6bf973b70836e3aca3f2c2ac51", "evidence": {"same_day": true, "patch_ids": ["b4d55cbc4d3eb09a21b712947fc01446"], "statement_hash": "6365cced4f4ad597334c45749ccad9c902fd71e380f4a88b6dc5f99475529bf5"}}, {"rule": 2, "type": "equivalent", "target": "789cec58ca9f82e639ee2a2dae1500f0", "evidence": {"same_day": true, "patch_ids": ["b4d55cbc4d3eb09a21b712947fc01446"], "statement_hash": "6365cced4f4ad597334c45749ccad9c902fd71e380f4a88b6dc5f99475529bf5"}}, {"rule": 2, "type": "equivalent", "target": "be67afb148dc3575454e6d95f868998f", "evidence": {"same_day": true, "patch_ids": ["b4d55cbc4d3eb09a21b712947fc01446"], "statement_hash": "6365cced4f4ad597334c45749ccad9c902fd71e380f4a88b6dc5f99475529bf5"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "225febe7c77dd58718ec5f3f63a0812d", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "在 Windows 上，识别 “Norwegian (Bokmål)” 区域设置名称的更多拼写形式", "evidence": {"same_day": true, "patch_ids": ["b4d55cbc4d3eb09a21b712947fc01446"], "statement_hash": "6365cced4f4ad597334c45749ccad9c902fd71e380f4a88b6dc5f99475529bf5"}, "url": "/docs/compare/?release=12.1#12.1-d61548fa25c77231", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "be67afb148dc3575454e6d95f868998f", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "在 Windows 上，识别 “Norwegian (Bokmål)” 区域设置名称的更多拼写形式", "evidence": {"same_day": true, "patch_ids": ["b4d55cbc4d3eb09a21b712947fc01446"], "statement_hash": "6365cced4f4ad597334c45749ccad9c902fd71e380f4a88b6dc5f99475529bf5"}, "url": "/docs/compare/?release=11.6#11.6-e87de571f41d73e4", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "73495a6bf973b70836e3aca3f2c2ac51", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "在 Windows 上，识别 “Norwegian (Bokmål)” 区域名的更多拼法", "evidence": {"same_day": true, "patch_ids": ["b4d55cbc4d3eb09a21b712947fc01446"], "statement_hash": "6365cced4f4ad597334c45749ccad9c902fd71e380f4a88b6dc5f99475529bf5"}, "url": "/docs/compare/?release=9.6.16#9.6.16-42261f0150d2b4d2", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "789cec58ca9f82e639ee2a2dae1500f0", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "在 Windows 上，识别 “Norwegian (Bokmål)” 区域名的更多拼法", "evidence": {"same_day": true, "patch_ids": ["b4d55cbc4d3eb09a21b712947fc01446"], "statement_hash": "6365cced4f4ad597334c45749ccad9c902fd71e380f4a88b6dc5f99475529bf5"}, "url": "/docs/compare/?release=9.5.20#9.5.20-42261f0150d2b4d2", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "26d29236bce72fa79bbb285e2ee96b25", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "在 Windows 上，识别 “Norwegian (Bokmål)” 区域名的更多拼法", "evidence": {"same_day": true, "patch_ids": ["b4d55cbc4d3eb09a21b712947fc01446"], "statement_hash": "6365cced4f4ad597334c45749ccad9c902fd71e380f4a88b6dc5f99475529bf5"}, "url": "/docs/compare/?release=9.4.25#9.4.25-42261f0150d2b4d2", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-f502876330bb9416", "cves": [], "html": "<p>避免 ECPG 客户端在定义了 <code>ENABLE_NLS</code> 的情况下包含 <code>ecpglib.h</code> 时编译失败（Tom Lane）</p>\n<p>这种风险由位置不当的声明造成：<code>ecpg_gettext()</code> 不应对客户端代码可见。</p>", "text": "避免 ECPG 客户端在定义了 ENABLE_NLS 的情况下包含 ecpglib.h 时编译失败（Tom Lane） 这种风险由位置不当的声明造成：ecpg_gettext() 不应对客户端代码可见。", "title": "避免 ECPG 客户端在定义了 ENABLE_NLS 的情况下包含 ecpglib.h 时编译失败", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "72e09e777e8bd94db6f964f4f1546a617e767fd202c7e396bb6e32d1ea70c9e1", "section_path": ["变更"], "commit_groups": [["101654987", "831ca9513", "89f56fc22", "b20233aac", "b705d6391", "baa483984", "c8cb98ec4"]], "identity_text": "Avoid compile failure if an ECPG client includes ecpglib.h while having ENABLE_NLS defined (Tom Lane) This risk was created by a misplaced declaration: ecpg_gettext() should not be visible to client code.", "commit_aliases": ["101654987", "831ca9513", "89f56fc22", "b20233aac", "b705d6391", "baa483984", "c8cb98ec4"], "source_commits": ["831ca9513"], "source_entry_id": "10.11/changes/037", "db_id": "cc36cdeec3fc81996f44d5aa3db09334", "patch_ids": ["4271d7cbf24fc433df10f32277f71586"], "statement_hash": "31feebda6c644e959d30a708c1b9ddb76fe72cec5499690660e97ed0843ba0e2", "relations": [{"rule": 2, "type": "equivalent", "target": "0c91cb7342abc42045e66b2fc60220ea", "evidence": {"same_day": true, "patch_ids": ["4271d7cbf24fc433df10f32277f71586"], "statement_hash": "31feebda6c644e959d30a708c1b9ddb76fe72cec5499690660e97ed0843ba0e2"}}, {"rule": 2, "type": "equivalent", "target": "6334c89fa50cd261cfba8ec3ecea1e0d", "evidence": {"same_day": true, "patch_ids": ["4271d7cbf24fc433df10f32277f71586"], "statement_hash": "31feebda6c644e959d30a708c1b9ddb76fe72cec5499690660e97ed0843ba0e2"}}, {"rule": 2, "type": "equivalent", "target": "7c1586338ffd8d223fe0cc443839c9a1", "evidence": {"same_day": true, "patch_ids": ["4271d7cbf24fc433df10f32277f71586"], "statement_hash": "31feebda6c644e959d30a708c1b9ddb76fe72cec5499690660e97ed0843ba0e2"}}, {"rule": 2, "type": "equivalent", "target": "87efcb322eba2bcd3c5866c05efb7858", "evidence": {"same_day": true, "patch_ids": ["4271d7cbf24fc433df10f32277f71586"], "statement_hash": "31feebda6c644e959d30a708c1b9ddb76fe72cec5499690660e97ed0843ba0e2"}}, {"rule": 2, "type": "equivalent", "target": "b2e8debef48ea50941c0aca040f3f968", "evidence": {"same_day": true, "patch_ids": ["4271d7cbf24fc433df10f32277f71586"], "statement_hash": "31feebda6c644e959d30a708c1b9ddb76fe72cec5499690660e97ed0843ba0e2"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "7c1586338ffd8d223fe0cc443839c9a1", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "避免 ECPG 客户端在定义了 ENABLE_NLS 的情况下包含 ecpglib.h 时编译失败", "evidence": {"same_day": true, "patch_ids": ["4271d7cbf24fc433df10f32277f71586"], "statement_hash": "31feebda6c644e959d30a708c1b9ddb76fe72cec5499690660e97ed0843ba0e2"}, "url": "/docs/compare/?release=12.1#12.1-ce7ebd43ab385df1", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "0c91cb7342abc42045e66b2fc60220ea", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "避免 ECPG 客户端在定义了 ENABLE_NLS 的情况下包含 ecpglib.h 时编译失败", "evidence": {"same_day": true, "patch_ids": ["4271d7cbf24fc433df10f32277f71586"], "statement_hash": "31feebda6c644e959d30a708c1b9ddb76fe72cec5499690660e97ed0843ba0e2"}, "url": "/docs/compare/?release=11.6#11.6-f502876330bb9416", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "b2e8debef48ea50941c0aca040f3f968", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "避免 ECPG 客户端在定义了 ENABLE_NLS 的情况下包含 ecpglib.h 时编译失败", "evidence": {"same_day": true, "patch_ids": ["4271d7cbf24fc433df10f32277f71586"], "statement_hash": "31feebda6c644e959d30a708c1b9ddb76fe72cec5499690660e97ed0843ba0e2"}, "url": "/docs/compare/?release=9.6.16#9.6.16-f502876330bb9416", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "87efcb322eba2bcd3c5866c05efb7858", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "避免 ECPG 客户端在定义了 ENABLE_NLS 的情况下包含 ecpglib.h 时编译失败", "evidence": {"same_day": true, "patch_ids": ["4271d7cbf24fc433df10f32277f71586"], "statement_hash": "31feebda6c644e959d30a708c1b9ddb76fe72cec5499690660e97ed0843ba0e2"}, "url": "/docs/compare/?release=9.5.20#9.5.20-f502876330bb9416", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "6334c89fa50cd261cfba8ec3ecea1e0d", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "避免 ECPG 客户端在定义了 ENABLE_NLS 的情况下包含 ecpglib.h 时编译失败", "evidence": {"same_day": true, "patch_ids": ["4271d7cbf24fc433df10f32277f71586"], "statement_hash": "31feebda6c644e959d30a708c1b9ddb76fe72cec5499690660e97ed0843ba0e2"}, "url": "/docs/compare/?release=9.4.25#9.4.25-f502876330bb9416", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-b4d55a23b642785a", "cves": [], "html": "<p>在 <span>psql</span> 中，意外丢失连接并成功重新连接后，重新同步关于服务器的内部状态（Peter Billen，Tom Lane）</p>\n<p>通常这并不必要，因为状态本来就是相同的。但在边界情况下可能有影响，例如连接可能指向多台服务器中的某一台。此更改使 <span>psql</span> 重新输出原本在启动时会输出的所有交互消息，例如是否使用 SSL。</p>", "text": "在 psql 中，意外丢失连接并成功重新连接后，重新同步关于服务器的内部状态（Peter Billen，Tom Lane） 通常这并不必要，因为状态本来就是相同的。但在边界情况下可能有影响，例如连接可能指向多台服务器中的某一台。此更改使 psql 重新输出原本在启动时会输出的所有交互消息，例如是否使用 SSL。", "title": "在 psql 中，意外丢失连接并成功重新连接后，重新同步关于服务器的内部状态", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "e5c0657e50f74f633e45aaccf8fd3ca1c7e159ee9aac6e81d741efded313e9ed", "section_path": ["变更"], "commit_groups": [["3080f8f61", "5524ef558", "62724bd95", "89535db97", "90433c38e", "aef362385", "b0b2ef25e"]], "identity_text": "In psql, resynchronize internal state about the server after an unexpected connection loss and successful reconnection (Peter Billen, Tom Lane) Ordinarily this is unnecessary since the state would be the same anyway. But it can matter in corner cases, such as where the connection might lead to one of several servers. This change causes psql to re-issue any interactive messages that it would have issued at startup, for example about whether SSL is in use.", "commit_aliases": ["3080f8f61", "5524ef558", "62724bd95", "89535db97", "90433c38e", "aef362385", "b0b2ef25e"], "source_commits": ["3080f8f61"], "source_entry_id": "10.11/changes/038", "db_id": "7e6b80a38c92a835f9fafa759c9afc19", "patch_ids": ["989f4cbbc066103b978638607a6ad548"], "statement_hash": "efd5d1fb94fbba9a410c05a370faf129172241dc377afee41dc24cc9e5bafaac", "relations": [{"rule": 2, "type": "equivalent", "target": "1bc9918c5d1e2f5fc32c3478cb761f01", "evidence": {"same_day": true, "patch_ids": ["989f4cbbc066103b978638607a6ad548"], "statement_hash": "efd5d1fb94fbba9a410c05a370faf129172241dc377afee41dc24cc9e5bafaac"}}, {"rule": 2, "type": "equivalent", "target": "6d91276c5f102904cb599ad608de250b", "evidence": {"same_day": true, "patch_ids": ["989f4cbbc066103b978638607a6ad548"], "statement_hash": "efd5d1fb94fbba9a410c05a370faf129172241dc377afee41dc24cc9e5bafaac"}}, {"rule": 2, "type": "equivalent", "target": "d71acd58d8299ec0820c244ccb30cd11", "evidence": {"same_day": true, "patch_ids": ["989f4cbbc066103b978638607a6ad548"], "statement_hash": "efd5d1fb94fbba9a410c05a370faf129172241dc377afee41dc24cc9e5bafaac"}}, {"rule": 2, "type": "equivalent", "target": "f54b57628fd594dde69ef0ce146a684b", "evidence": {"same_day": true, "patch_ids": ["989f4cbbc066103b978638607a6ad548"], "statement_hash": "efd5d1fb94fbba9a410c05a370faf129172241dc377afee41dc24cc9e5bafaac"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "f54b57628fd594dde69ef0ce146a684b", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "在 psql 中，意外丢失连接并成功重新连接后，重新同步关于服务器的内部状态", "evidence": {"same_day": true, "patch_ids": ["989f4cbbc066103b978638607a6ad548"], "statement_hash": "efd5d1fb94fbba9a410c05a370faf129172241dc377afee41dc24cc9e5bafaac"}, "url": "/docs/compare/?release=11.6#11.6-b4d55a23b642785a", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "1bc9918c5d1e2f5fc32c3478cb761f01", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "在 psql 中，意外连接丢失并成功重连之后重新同步关于服务器的内部状态", "evidence": {"same_day": true, "patch_ids": ["989f4cbbc066103b978638607a6ad548"], "statement_hash": "efd5d1fb94fbba9a410c05a370faf129172241dc377afee41dc24cc9e5bafaac"}, "url": "/docs/compare/?release=9.6.16#9.6.16-b59528386e4dab61", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "6d91276c5f102904cb599ad608de250b", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "在 psql 中，意外连接丢失并成功重连之后重新同步关于服务器的内部状态", "evidence": {"same_day": true, "patch_ids": ["989f4cbbc066103b978638607a6ad548"], "statement_hash": "efd5d1fb94fbba9a410c05a370faf129172241dc377afee41dc24cc9e5bafaac"}, "url": "/docs/compare/?release=9.5.20#9.5.20-b59528386e4dab61", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "d71acd58d8299ec0820c244ccb30cd11", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "在 psql 中，意外连接丢失并成功重连之后重新同步关于服务器的内部状态", "evidence": {"same_day": true, "patch_ids": ["989f4cbbc066103b978638607a6ad548"], "statement_hash": "efd5d1fb94fbba9a410c05a370faf129172241dc377afee41dc24cc9e5bafaac"}, "url": "/docs/compare/?release=9.4.25#9.4.25-b59528386e4dab61", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-30fe5d8d6f8f2dfc", "cves": [], "html": "<p>避免 <span>psql</span> 中特定平台上的空指针解引用（Quentin Rameau）</p>", "text": "避免 psql 中特定平台上的空指针解引用（Quentin Rameau）", "title": "避免 psql 中特定平台上的空指针解引用", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "1e532007a6b69675c5219f2400d048ce5dfdbf2eefb340e9321323c96677e42b", "section_path": ["变更"], "commit_groups": [["28d2ce3c7", "363382521", "5fc7b1e93", "6338fa3e7", "65b1cad5a", "c693c5c49", "fb55e9539"]], "identity_text": "Avoid platform-specific null pointer dereference in psql (Quentin Rameau)", "commit_aliases": ["28d2ce3c7", "363382521", "5fc7b1e93", "6338fa3e7", "65b1cad5a", "c693c5c49", "fb55e9539"], "source_commits": ["fb55e9539"], "source_entry_id": "10.11/changes/039", "db_id": "a51574c5d195a832bc9c981a608a0c41", "patch_ids": ["4bc8bfc7475b0c29d9a65af50d248cc6"], "statement_hash": "f5c877897047f551b3de25260d824469a794ebddd94860e0eafdafda93cbed6f", "relations": [{"rule": 2, "type": "equivalent", "target": "1e07b974e12ac0a7794d59835c52b3b4", "evidence": {"same_day": true, "patch_ids": ["4bc8bfc7475b0c29d9a65af50d248cc6"], "statement_hash": "f5c877897047f551b3de25260d824469a794ebddd94860e0eafdafda93cbed6f"}}, {"rule": 2, "type": "equivalent", "target": "3a8c1fb571a41d8585b0b8d44ef758b5", "evidence": {"same_day": true, "patch_ids": ["4bc8bfc7475b0c29d9a65af50d248cc6"], "statement_hash": "f5c877897047f551b3de25260d824469a794ebddd94860e0eafdafda93cbed6f"}}, {"rule": 2, "type": "equivalent", "target": "62b52148d969679de9c3081ee15b1012", "evidence": {"same_day": true, "patch_ids": ["4bc8bfc7475b0c29d9a65af50d248cc6"], "statement_hash": "f5c877897047f551b3de25260d824469a794ebddd94860e0eafdafda93cbed6f"}}, {"rule": 2, "type": "equivalent", "target": "fad3a0a556016637fb89e50f4d5d1c5c", "evidence": {"same_day": true, "patch_ids": ["4bc8bfc7475b0c29d9a65af50d248cc6"], "statement_hash": "f5c877897047f551b3de25260d824469a794ebddd94860e0eafdafda93cbed6f"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "1e07b974e12ac0a7794d59835c52b3b4", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "避免 psql 中特定平台上的空指针解引用", "evidence": {"same_day": true, "patch_ids": ["4bc8bfc7475b0c29d9a65af50d248cc6"], "statement_hash": "f5c877897047f551b3de25260d824469a794ebddd94860e0eafdafda93cbed6f"}, "url": "/docs/compare/?release=11.6#11.6-30fe5d8d6f8f2dfc", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "fad3a0a556016637fb89e50f4d5d1c5c", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "避免 psql 中平台相关的空指针解引用", "evidence": {"same_day": true, "patch_ids": ["4bc8bfc7475b0c29d9a65af50d248cc6"], "statement_hash": "f5c877897047f551b3de25260d824469a794ebddd94860e0eafdafda93cbed6f"}, "url": "/docs/compare/?release=9.6.16#9.6.16-40dbba64ff68aa92", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "62b52148d969679de9c3081ee15b1012", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "避免 psql 中平台相关的空指针解引用", "evidence": {"same_day": true, "patch_ids": ["4bc8bfc7475b0c29d9a65af50d248cc6"], "statement_hash": "f5c877897047f551b3de25260d824469a794ebddd94860e0eafdafda93cbed6f"}, "url": "/docs/compare/?release=9.5.20#9.5.20-40dbba64ff68aa92", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "3a8c1fb571a41d8585b0b8d44ef758b5", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "避免 psql 中平台相关的空指针解引用", "evidence": {"same_day": true, "patch_ids": ["4bc8bfc7475b0c29d9a65af50d248cc6"], "statement_hash": "f5c877897047f551b3de25260d824469a794ebddd94860e0eafdafda93cbed6f"}, "url": "/docs/compare/?release=9.4.25#9.4.25-40dbba64ff68aa92", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-51c6c1ae1d07494b", "cves": [], "html": "<p>在 <span>pg_dump</span> 中，确保名称相似的触发器和行级安全策略对象的输出顺序稳定（Benjie Gillam）</p>\n<p>以前，如果不同表上的两个触发器同名，它们会按 OID 排序，这不如按表名排序合适。RLS 策略也存在同样的问题。</p>", "text": "在 pg_dump 中，确保名称相似的触发器和行级安全策略对象的输出顺序稳定（Benjie Gillam） 以前，如果不同表上的两个触发器同名，它们会按 OID 排序，这不如按表名排序合适。RLS 策略也存在同样的问题。", "title": "在 pg_dump 中，确保名称相似的触发器和行级安全策略对象的输出顺序稳定", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "0a083836b3fb2abc1e11d62fdf2aca7c46a6da4d61d64c7cdd816c569949cac1", "section_path": ["变更"], "commit_groups": [["078f5bc8e", "5102f3944", "648f17879", "74d32ee70", "ca27a84c9", "da5cd7a68", "ee8b95f26"]], "identity_text": "In pg_dump, ensure stable output order for similarly-named triggers and row-level-security policy objects (Benjie Gillam) Previously, if two triggers on different tables had the same names, they would be sorted in OID-based order, which is less desirable than sorting them by table name. Likewise for RLS policies.", "commit_aliases": ["078f5bc8e", "5102f3944", "648f17879", "74d32ee70", "ca27a84c9", "da5cd7a68", "ee8b95f26"], "source_commits": ["ee8b95f26"], "source_entry_id": "10.11/changes/040", "db_id": "921c2a7e63d27aaae4036e625c6887fd", "patch_ids": ["942313a05555b57ba0897a803f711227"], "statement_hash": "cda6c53c513e726a6397771aeafd5bec7d15381a61afc0f0239a83be49bb9913", "relations": [{"rule": 2, "type": "equivalent", "target": "1eb55e45430b0c45783250806e8815e0", "evidence": {"same_day": true, "patch_ids": ["942313a05555b57ba0897a803f711227"], "statement_hash": "cda6c53c513e726a6397771aeafd5bec7d15381a61afc0f0239a83be49bb9913"}}, {"rule": 2, "type": "equivalent", "target": "23135c2ddd64175efaa2b46647c07c11", "evidence": {"same_day": true, "patch_ids": ["942313a05555b57ba0897a803f711227"], "statement_hash": "cda6c53c513e726a6397771aeafd5bec7d15381a61afc0f0239a83be49bb9913"}}, {"rule": 2, "type": "equivalent", "target": "25bd821359a3753038ddadded63e6f3a", "evidence": {"same_day": true, "patch_ids": ["942313a05555b57ba0897a803f711227"], "statement_hash": "cda6c53c513e726a6397771aeafd5bec7d15381a61afc0f0239a83be49bb9913"}}, {"rule": 2, "type": "equivalent", "target": "a8a5d43ed77e0081ab73103ceb2ae846", "evidence": {"same_day": true, "patch_ids": ["942313a05555b57ba0897a803f711227"], "statement_hash": "cda6c53c513e726a6397771aeafd5bec7d15381a61afc0f0239a83be49bb9913"}}, {"rule": 2, "type": "equivalent", "target": "fa647ca113a1508559005eb20a936e44", "evidence": {"same_day": true, "patch_ids": ["942313a05555b57ba0897a803f711227"], "statement_hash": "cda6c53c513e726a6397771aeafd5bec7d15381a61afc0f0239a83be49bb9913"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "fa647ca113a1508559005eb20a936e44", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "在 pg_dump 中，确保名称相似的触发器和行级安全策略对象的输出顺序稳定", "evidence": {"same_day": true, "patch_ids": ["942313a05555b57ba0897a803f711227"], "statement_hash": "cda6c53c513e726a6397771aeafd5bec7d15381a61afc0f0239a83be49bb9913"}, "url": "/docs/compare/?release=12.1#12.1-f86364d7db67984c", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "23135c2ddd64175efaa2b46647c07c11", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "在 pg_dump 中，确保名称相似的触发器和行级安全策略对象的输出顺序稳定", "evidence": {"same_day": true, "patch_ids": ["942313a05555b57ba0897a803f711227"], "statement_hash": "cda6c53c513e726a6397771aeafd5bec7d15381a61afc0f0239a83be49bb9913"}, "url": "/docs/compare/?release=11.6#11.6-51c6c1ae1d07494b", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "25bd821359a3753038ddadded63e6f3a", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "在 pg_dump 中，确保同名触发器和行级安全策略对象的稳定输出顺序", "evidence": {"same_day": true, "patch_ids": ["942313a05555b57ba0897a803f711227"], "statement_hash": "cda6c53c513e726a6397771aeafd5bec7d15381a61afc0f0239a83be49bb9913"}, "url": "/docs/compare/?release=9.6.16#9.6.16-bd8167949664b141", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "1eb55e45430b0c45783250806e8815e0", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "在 pg_dump 中，确保同名触发器和行级安全策略对象的稳定输出顺序", "evidence": {"same_day": true, "patch_ids": ["942313a05555b57ba0897a803f711227"], "statement_hash": "cda6c53c513e726a6397771aeafd5bec7d15381a61afc0f0239a83be49bb9913"}, "url": "/docs/compare/?release=9.5.20#9.5.20-bd8167949664b141", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "a8a5d43ed77e0081ab73103ceb2ae846", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "在 pg_dump 中，确保同名触发器和行级安全策略对象的稳定输出顺序", "evidence": {"same_day": true, "patch_ids": ["942313a05555b57ba0897a803f711227"], "statement_hash": "cda6c53c513e726a6397771aeafd5bec7d15381a61afc0f0239a83be49bb9913"}, "url": "/docs/compare/?release=9.4.25#9.4.25-bd8167949664b141", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-3fd42cb8d7865a50", "cves": [], "html": "<p>修复 <span>pg_dump</span>，使其重新能够使用 8.3 之前版本的源服务器（Tom Lane）</p>\n<p>此前的一项修复使 <span>pg_dump</span> 始终尝试查询 <code>pg_opfamily</code>，但 8.3 之前的版本中不存在该目录。</p>", "text": "修复 pg_dump，使其重新能够使用 8.3 之前版本的源服务器（Tom Lane） 此前的一项修复使 pg_dump 始终尝试查询 pg_opfamily，但 8.3 之前的版本中不存在该目录。", "title": "修复 pg_dump，使其重新能够使用 8.3 之前版本的源服务器", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "7a6934a904b8720e9ae5f50bef73892cdb25405ed0af9c8125f8264deab36921", "section_path": ["变更"], "commit_groups": [["2b608ba31", "31d43710f", "4dea8ad56", "63ae888a9", "6844adba5", "c56858487", "f2bdfebb9"]], "identity_text": "Fix pg_dump to work again with pre-8.3 source servers (Tom Lane) A previous fix caused pg_dump to always try to query pg_opfamily, but that catalog doesn't exist before version 8.3.", "commit_aliases": ["2b608ba31", "31d43710f", "4dea8ad56", "63ae888a9", "6844adba5", "c56858487", "f2bdfebb9"], "source_commits": ["f2bdfebb9"], "source_entry_id": "10.11/changes/041", "db_id": "9080dd4647ee7e07e5928151f7ad708e", "patch_ids": ["d71878ff6b815304b9b657e483172169"], "statement_hash": "88f87b255698fe87248479f9676e4fb380622d1b0d04add35c15fe00c06ea3e4", "relations": [{"rule": 2, "type": "equivalent", "target": "08dacd7c914334b0fc5cb6ac7f6474bf", "evidence": {"same_day": true, "patch_ids": ["d71878ff6b815304b9b657e483172169"], "statement_hash": "88f87b255698fe87248479f9676e4fb380622d1b0d04add35c15fe00c06ea3e4"}}, {"rule": 2, "type": "equivalent", "target": "165675768109d9e1a41b61e82087cb03", "evidence": {"same_day": true, "patch_ids": ["d71878ff6b815304b9b657e483172169"], "statement_hash": "88f87b255698fe87248479f9676e4fb380622d1b0d04add35c15fe00c06ea3e4"}}, {"rule": 2, "type": "equivalent", "target": "6f0c4ebd3da0800b96dc28acfed0f3c5", "evidence": {"same_day": true, "patch_ids": ["d71878ff6b815304b9b657e483172169"], "statement_hash": "88f87b255698fe87248479f9676e4fb380622d1b0d04add35c15fe00c06ea3e4"}}, {"rule": 2, "type": "equivalent", "target": "82fdce4fab5c46291d9b290f873418af", "evidence": {"same_day": true, "patch_ids": ["d71878ff6b815304b9b657e483172169"], "statement_hash": "88f87b255698fe87248479f9676e4fb380622d1b0d04add35c15fe00c06ea3e4"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "165675768109d9e1a41b61e82087cb03", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复 pg_dump，使其重新能够使用 8.3 之前版本的源服务器", "evidence": {"same_day": true, "patch_ids": ["d71878ff6b815304b9b657e483172169"], "statement_hash": "88f87b255698fe87248479f9676e4fb380622d1b0d04add35c15fe00c06ea3e4"}, "url": "/docs/compare/?release=11.6#11.6-3fd42cb8d7865a50", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "6f0c4ebd3da0800b96dc28acfed0f3c5", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "修复 pg_dump 重新与 8.3 之前的源服务器工作的问题", "evidence": {"same_day": true, "patch_ids": ["d71878ff6b815304b9b657e483172169"], "statement_hash": "88f87b255698fe87248479f9676e4fb380622d1b0d04add35c15fe00c06ea3e4"}, "url": "/docs/compare/?release=9.6.16#9.6.16-bffa29be0dd8a6d7", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "08dacd7c914334b0fc5cb6ac7f6474bf", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "修复 pg_dump 重新与 8.3 之前的源服务器工作的问题", "evidence": {"same_day": true, "patch_ids": ["d71878ff6b815304b9b657e483172169"], "statement_hash": "88f87b255698fe87248479f9676e4fb380622d1b0d04add35c15fe00c06ea3e4"}, "url": "/docs/compare/?release=9.5.20#9.5.20-bffa29be0dd8a6d7", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "82fdce4fab5c46291d9b290f873418af", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "修复 pg_dump 重新与 8.3 之前的源服务器工作的问题", "evidence": {"same_day": true, "patch_ids": ["d71878ff6b815304b9b657e483172169"], "statement_hash": "88f87b255698fe87248479f9676e4fb380622d1b0d04add35c15fe00c06ea3e4"}, "url": "/docs/compare/?release=9.4.25#9.4.25-bffa29be0dd8a6d7", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-e372a20584cafcef", "cves": [], "html": "<p>在 <span>pg_restore</span> 中，将 <code>-f -</code> 解释为<span>“<span>输出到 stdout</span>”</span>（Álvaro Herrera）</p>\n<p>这使 <span>pg_restore</span> 的行为与其他一些应用一致，特别是使 v12 之前分支的行为与版本 12 的 <span>pg_restore</span> 类似，简化了适用于多个 <span>PostgreSQL</span> 版本的转储/恢复脚本的编写。在此更改之前，<span>pg_restore</span> 将此类开关解释为<span>“<span>输出到名为 <code>-</code> 的文件</span>”</span>，但很少有人需要这种行为。</p>", "text": "在 pg_restore 中，将 -f - 解释为“输出到 stdout”（Álvaro Herrera） 这使 pg_restore 的行为与其他一些应用一致，特别是使 v12 之前分支的行为与版本 12 的 pg_restore 类似，简化了适用于多个 PostgreSQL 版本的转储/恢复脚本的编写。在此更改之前，pg_restore 将此类开关解释为“输出到名为 - 的文件”，但很少有人需要这种行为。", "title": "在 pg_restore 中，将 -f - 解释为“输出到 stdout”", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "6293be9197c2c3683c1df7ee5a491cbbed78a0fed5d3f27c7013933145be8b6a", "section_path": ["变更"], "commit_groups": [["12a51e2eb", "3574c0ac0", "5ee8f0fe1", "9fb25fda6", "d38635725"]], "identity_text": "In pg_restore, treat -f - as meaning output to stdout (Álvaro Herrera) This synchronizes pg_restore's behavior with some other applications, and in particular makes pre-v12 branches act similarly to version 12's pg_restore, simplifying creation of dump/restore scripts that work across multiple PostgreSQL versions. Before this change, pg_restore interpreted such a switch as meaning output to a file named -, but few people would want that.", "commit_aliases": ["12a51e2eb", "3574c0ac0", "5ee8f0fe1", "9fb25fda6", "d38635725"], "source_commits": ["5ee8f0fe1"], "source_entry_id": "10.11/changes/042", "db_id": "71c71a9da18b3b766b2ead932528efd3", "patch_ids": ["d543638e0adb6ae160d3d75e0395599c"], "statement_hash": "f582eb5274a2c01036cb5b6f4a3ded9c5b8c09a05deadf030b6853753865523e", "relations": [{"rule": 2, "type": "equivalent", "target": "0fb06bb61933820ce109f1fb57a07095", "evidence": {"same_day": true, "patch_ids": ["d543638e0adb6ae160d3d75e0395599c"], "statement_hash": "f582eb5274a2c01036cb5b6f4a3ded9c5b8c09a05deadf030b6853753865523e"}}, {"rule": 2, "type": "equivalent", "target": "17eef586257eb2b31052fd424787e1e0", "evidence": {"same_day": true, "patch_ids": ["d543638e0adb6ae160d3d75e0395599c"], "statement_hash": "f582eb5274a2c01036cb5b6f4a3ded9c5b8c09a05deadf030b6853753865523e"}}, {"rule": 2, "type": "equivalent", "target": "ba7b4d90e9c3137c7ff24eb2f08ea42e", "evidence": {"same_day": true, "patch_ids": ["d543638e0adb6ae160d3d75e0395599c"], "statement_hash": "f582eb5274a2c01036cb5b6f4a3ded9c5b8c09a05deadf030b6853753865523e"}}, {"rule": 2, "type": "equivalent", "target": "cc6825921e4ad8915cb866b0258595d5", "evidence": {"same_day": true, "patch_ids": ["d543638e0adb6ae160d3d75e0395599c"], "statement_hash": "f582eb5274a2c01036cb5b6f4a3ded9c5b8c09a05deadf030b6853753865523e"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "cc6825921e4ad8915cb866b0258595d5", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "在 pg_restore 中，将 -f - 解释为“输出到 stdout”", "evidence": {"same_day": true, "patch_ids": ["d543638e0adb6ae160d3d75e0395599c"], "statement_hash": "f582eb5274a2c01036cb5b6f4a3ded9c5b8c09a05deadf030b6853753865523e"}, "url": "/docs/compare/?release=11.6#11.6-e372a20584cafcef", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "ba7b4d90e9c3137c7ff24eb2f08ea42e", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "在 pg_restore 中，把 -f - 当作“输出到 stdout”", "evidence": {"same_day": true, "patch_ids": ["d543638e0adb6ae160d3d75e0395599c"], "statement_hash": "f582eb5274a2c01036cb5b6f4a3ded9c5b8c09a05deadf030b6853753865523e"}, "url": "/docs/compare/?release=9.6.16#9.6.16-6ec82510f60f70e9", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "0fb06bb61933820ce109f1fb57a07095", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "在 pg_restore 中，把 -f - 当作“输出到 stdout”", "evidence": {"same_day": true, "patch_ids": ["d543638e0adb6ae160d3d75e0395599c"], "statement_hash": "f582eb5274a2c01036cb5b6f4a3ded9c5b8c09a05deadf030b6853753865523e"}, "url": "/docs/compare/?release=9.5.20#9.5.20-6ec82510f60f70e9", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "17eef586257eb2b31052fd424787e1e0", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "在 pg_restore 中，把 -f - 当作“输出到 stdout”", "evidence": {"same_day": true, "patch_ids": ["d543638e0adb6ae160d3d75e0395599c"], "statement_hash": "f582eb5274a2c01036cb5b6f4a3ded9c5b8c09a05deadf030b6853753865523e"}, "url": "/docs/compare/?release=9.4.25#9.4.25-6ec82510f60f70e9", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-32c01997a9104b98", "cves": [], "html": "<p>改进 <span>pg_upgrade</span> 对使用了表示形式已变更的数据类型（如 <code>line</code>）的检查（Tomas Vondra）</p>\n<p>当所关注的数据类型是某个已存储域类型或复合类型列的底层类型时，以前的代码可能漏检。</p>", "text": "改进 pg_upgrade 对使用了表示形式已变更的数据类型（如 line）的检查（Tomas Vondra） 当所关注的数据类型是某个已存储域类型或复合类型列的底层类型时，以前的代码可能漏检。", "title": "改进 pg_upgrade 对使用了表示形式已变更的数据类型（如 line）的检查", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "779c9e76560879b185d9f4e804c89731f23ca02aa2344dfbf09decf55d1b9971", "section_path": ["变更"], "commit_groups": [["0a643de08", "2218fdca4", "235a52ca0", "8d48e6a72", "a970b6cde", "ebb4caa91", "f57b01dd7"], ["984aa0ede", "bc3a94dc0", "e09ab32a2"], ["a524f50d0", "a8e49ae0c", "d071a2539", "e86ece221"]], "identity_text": "Improve pg_upgrade's checks for the use of a data type that has changed representation, such as line (Tomas Vondra) The previous coding could be fooled by cases where the data type of interest underlies a stored column of a domain or composite type.", "commit_aliases": ["0a643de08", "2218fdca4", "235a52ca0", "8d48e6a72", "984aa0ede", "a524f50d0", "a8e49ae0c", "a970b6cde", "bc3a94dc0", "d071a2539", "e09ab32a2", "e86ece221", "ebb4caa91", "f57b01dd7"], "source_commits": ["2218fdca4", "e09ab32a2", "e86ece221"], "source_entry_id": "10.11/changes/043", "db_id": "dc3f72604090aa81b343e5c1103d3d82", "patch_ids": ["0e623a704a7e6eb0fc8d588ecdb76af5", "199f05d03ba135f80467a01b7586ee3c", "64e1457e23cab5d9aa9fd7e39ad09645"], "statement_hash": "270077457021aa52ded0d5d6bc4e1f642f17f2bf5810b6cb9111f6006f565dbb", "relations": [{"rule": 2, "type": "equivalent", "target": "00e22fc3b19209ebf05ca425b9ea27ba", "evidence": {"same_day": true, "patch_ids": ["0e623a704a7e6eb0fc8d588ecdb76af5", "199f05d03ba135f80467a01b7586ee3c", "64e1457e23cab5d9aa9fd7e39ad09645"], "statement_hash": "270077457021aa52ded0d5d6bc4e1f642f17f2bf5810b6cb9111f6006f565dbb"}}, {"rule": 2, "type": "equivalent", "target": "072900c922faab2411c7ca0e25dc834b", "evidence": {"same_day": true, "patch_ids": ["0e623a704a7e6eb0fc8d588ecdb76af5", "199f05d03ba135f80467a01b7586ee3c", "64e1457e23cab5d9aa9fd7e39ad09645"], "statement_hash": "270077457021aa52ded0d5d6bc4e1f642f17f2bf5810b6cb9111f6006f565dbb"}}, {"rule": 2, "type": "equivalent", "target": "c6dbec348b8c1f9ac693d8cfecf5b92e", "evidence": {"same_day": true, "patch_ids": ["0e623a704a7e6eb0fc8d588ecdb76af5", "199f05d03ba135f80467a01b7586ee3c", "64e1457e23cab5d9aa9fd7e39ad09645"], "statement_hash": "270077457021aa52ded0d5d6bc4e1f642f17f2bf5810b6cb9111f6006f565dbb"}}, {"rule": 2, "type": "equivalent", "target": "ca14a9b1b159c7912770289654a6f0b9", "evidence": {"same_day": true, "patch_ids": ["0e623a704a7e6eb0fc8d588ecdb76af5", "199f05d03ba135f80467a01b7586ee3c", "64e1457e23cab5d9aa9fd7e39ad09645"], "statement_hash": "270077457021aa52ded0d5d6bc4e1f642f17f2bf5810b6cb9111f6006f565dbb"}}, {"rule": 2, "type": "equivalent", "target": "f5f7037586fa92a8bf4ff4d15a9afea2", "evidence": {"same_day": true, "patch_ids": ["0e623a704a7e6eb0fc8d588ecdb76af5", "199f05d03ba135f80467a01b7586ee3c", "64e1457e23cab5d9aa9fd7e39ad09645"], "statement_hash": "270077457021aa52ded0d5d6bc4e1f642f17f2bf5810b6cb9111f6006f565dbb"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "00e22fc3b19209ebf05ca425b9ea27ba", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "改进 pg_upgrade 对使用了表示形式已变更的数据类型（如 line）的检查", "evidence": {"same_day": true, "patch_ids": ["0e623a704a7e6eb0fc8d588ecdb76af5", "199f05d03ba135f80467a01b7586ee3c", "64e1457e23cab5d9aa9fd7e39ad09645"], "statement_hash": "270077457021aa52ded0d5d6bc4e1f642f17f2bf5810b6cb9111f6006f565dbb"}, "url": "/docs/compare/?release=12.1#12.1-3bb64889a255ec2b", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "c6dbec348b8c1f9ac693d8cfecf5b92e", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "改进 pg_upgrade 对使用了表示形式已变更的数据类型（如 line）的检查", "evidence": {"same_day": true, "patch_ids": ["0e623a704a7e6eb0fc8d588ecdb76af5", "199f05d03ba135f80467a01b7586ee3c", "64e1457e23cab5d9aa9fd7e39ad09645"], "statement_hash": "270077457021aa52ded0d5d6bc4e1f642f17f2bf5810b6cb9111f6006f565dbb"}, "url": "/docs/compare/?release=11.6#11.6-32c01997a9104b98", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "072900c922faab2411c7ca0e25dc834b", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "改进 pg_upgrade 对使用表示已更改的数据类型（如 line）的检查", "evidence": {"same_day": true, "patch_ids": ["0e623a704a7e6eb0fc8d588ecdb76af5", "199f05d03ba135f80467a01b7586ee3c", "64e1457e23cab5d9aa9fd7e39ad09645"], "statement_hash": "270077457021aa52ded0d5d6bc4e1f642f17f2bf5810b6cb9111f6006f565dbb"}, "url": "/docs/compare/?release=9.6.16#9.6.16-330be4324045f5cd", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "f5f7037586fa92a8bf4ff4d15a9afea2", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "改进 pg_upgrade 对使用表示已更改的数据类型（如 line）的检查", "evidence": {"same_day": true, "patch_ids": ["0e623a704a7e6eb0fc8d588ecdb76af5", "199f05d03ba135f80467a01b7586ee3c", "64e1457e23cab5d9aa9fd7e39ad09645"], "statement_hash": "270077457021aa52ded0d5d6bc4e1f642f17f2bf5810b6cb9111f6006f565dbb"}, "url": "/docs/compare/?release=9.5.20#9.5.20-330be4324045f5cd", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "ca14a9b1b159c7912770289654a6f0b9", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "改进 pg_upgrade 对使用表示已更改的数据类型（如 line）的检查", "evidence": {"same_day": true, "patch_ids": ["0e623a704a7e6eb0fc8d588ecdb76af5", "199f05d03ba135f80467a01b7586ee3c", "64e1457e23cab5d9aa9fd7e39ad09645"], "statement_hash": "270077457021aa52ded0d5d6bc4e1f642f17f2bf5810b6cb9111f6006f565dbb"}, "url": "/docs/compare/?release=9.4.25#9.4.25-330be4324045f5cd", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-fb0478e6d5467641", "cves": [], "html": "<p>检测 <span>pg_basebackup</span> 期间的文件读取错误（Jeevan Chalke）</p>", "text": "检测 pg_basebackup 期间的文件读取错误（Jeevan Chalke）", "title": "检测 pg_basebackup 期间的文件读取错误", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "e4a8c865d7f49838d1cec6415d413cb112949c0a0ca70e7f21555cdf5cc6b8e0", "section_path": ["变更"], "commit_groups": [["23df88226", "286af0ce1", "61c65cce4", "62fb12d7e", "ce5542d40", "f697c6396", "fbe897134"]], "identity_text": "Detect file read errors during pg_basebackup (Jeevan Chalke)", "commit_aliases": ["23df88226", "286af0ce1", "61c65cce4", "62fb12d7e", "ce5542d40", "f697c6396", "fbe897134"], "source_commits": ["62fb12d7e"], "source_entry_id": "10.11/changes/044", "db_id": "501bcee82b34378967ee99427d8e3f38", "patch_ids": ["61a893d87c64c143bf77bc39db4d7181"], "statement_hash": "f87d772bb065b32875fa22f62fdb08b62afabc7444aae76fa7dd24a9054e5a53", "relations": [{"rule": 2, "type": "equivalent", "target": "258c9775688910c3b0b5f22d79157cac", "evidence": {"same_day": true, "patch_ids": ["61a893d87c64c143bf77bc39db4d7181"], "statement_hash": "f87d772bb065b32875fa22f62fdb08b62afabc7444aae76fa7dd24a9054e5a53"}}, {"rule": 2, "type": "equivalent", "target": "303d2ad86d113dd352d311cff972705e", "evidence": {"same_day": true, "patch_ids": ["61a893d87c64c143bf77bc39db4d7181"], "statement_hash": "f87d772bb065b32875fa22f62fdb08b62afabc7444aae76fa7dd24a9054e5a53"}}, {"rule": 2, "type": "equivalent", "target": "57919907177d18a2f65b3c2618a02b5e", "evidence": {"same_day": true, "patch_ids": ["61a893d87c64c143bf77bc39db4d7181"], "statement_hash": "f87d772bb065b32875fa22f62fdb08b62afabc7444aae76fa7dd24a9054e5a53"}}, {"rule": 2, "type": "equivalent", "target": "a534d37ecfc7a597eb6d4bf090e2b440", "evidence": {"same_day": true, "patch_ids": ["61a893d87c64c143bf77bc39db4d7181"], "statement_hash": "f87d772bb065b32875fa22f62fdb08b62afabc7444aae76fa7dd24a9054e5a53"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "57919907177d18a2f65b3c2618a02b5e", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "检测 pg_basebackup 期间的文件读取错误", "evidence": {"same_day": true, "patch_ids": ["61a893d87c64c143bf77bc39db4d7181"], "statement_hash": "f87d772bb065b32875fa22f62fdb08b62afabc7444aae76fa7dd24a9054e5a53"}, "url": "/docs/compare/?release=11.6#11.6-fb0478e6d5467641", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "303d2ad86d113dd352d311cff972705e", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "检测 pg_basebackup 期间的文件读取错误", "evidence": {"same_day": true, "patch_ids": ["61a893d87c64c143bf77bc39db4d7181"], "statement_hash": "f87d772bb065b32875fa22f62fdb08b62afabc7444aae76fa7dd24a9054e5a53"}, "url": "/docs/compare/?release=9.6.16#9.6.16-fb0478e6d5467641", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "a534d37ecfc7a597eb6d4bf090e2b440", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "检测 pg_basebackup 期间的文件读取错误", "evidence": {"same_day": true, "patch_ids": ["61a893d87c64c143bf77bc39db4d7181"], "statement_hash": "f87d772bb065b32875fa22f62fdb08b62afabc7444aae76fa7dd24a9054e5a53"}, "url": "/docs/compare/?release=9.5.20#9.5.20-fb0478e6d5467641", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "258c9775688910c3b0b5f22d79157cac", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "检测 pg_basebackup 期间的文件读取错误", "evidence": {"same_day": true, "patch_ids": ["61a893d87c64c143bf77bc39db4d7181"], "statement_hash": "f87d772bb065b32875fa22f62fdb08b62afabc7444aae76fa7dd24a9054e5a53"}, "url": "/docs/compare/?release=9.4.25#9.4.25-fb0478e6d5467641", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-800cd9458db6cf85", "cves": [], "html": "<p>在 <span>pg_basebackup</span> 中，直到备份结束才对输出文件执行 fsync（Michael Paquier）</p>\n<p>以前的代码在 fsync 较慢时可能导致超时失败。</p>", "text": "在 pg_basebackup 中，直到备份结束才对输出文件执行 fsync（Michael Paquier） 以前的代码在 fsync 较慢时可能导致超时失败。", "title": "在 pg_basebackup 中，直到备份结束才对输出文件执行 fsync", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "661e1b777d7cbe48221469f46cf87dac9c784432b09b419cafd9062d8b9727af", "section_path": ["变更"], "commit_groups": [["522baf148", "64eb426af", "996c92b27", "dbbae33bc"]], "identity_text": "In pg_basebackup, don't fsync output files until the end of backup (Michael Paquier) The previous coding could result in timeout failures if fsync was slow.", "commit_aliases": ["522baf148", "64eb426af", "996c92b27", "dbbae33bc"], "source_commits": ["dbbae33bc"], "source_entry_id": "10.11/changes/045", "db_id": "1ffe897577941c0f08fe481e701c5bf9", "patch_ids": ["6f46f5eb117a4746298b2c4884321507"], "statement_hash": "3a8c14ce0e1db88687f99ef254e589582cb0a37f0cc802ccb2bb8b71c3ac96b3", "relations": [{"rule": 2, "type": "equivalent", "target": "074e2805d640229a324bb6f5905a7e25", "evidence": {"same_day": true, "patch_ids": ["6f46f5eb117a4746298b2c4884321507"], "statement_hash": "3a8c14ce0e1db88687f99ef254e589582cb0a37f0cc802ccb2bb8b71c3ac96b3"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "074e2805d640229a324bb6f5905a7e25", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "在 pg_basebackup 中，直到备份结束才对输出文件执行 fsync", "evidence": {"same_day": true, "patch_ids": ["6f46f5eb117a4746298b2c4884321507"], "statement_hash": "3a8c14ce0e1db88687f99ef254e589582cb0a37f0cc802ccb2bb8b71c3ac96b3"}, "url": "/docs/compare/?release=11.6#11.6-800cd9458db6cf85", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}]}, {"id": "10.11-f36ec9cf1ef4a68a", "cves": [], "html": "<p>在源集群在线的情况下运行 <span>pg_rewind</span> 时，像 <span>pg_dump</span> 那样禁用超时（Alexander Kukushkin）</p>", "text": "在源集群在线的情况下运行 pg_rewind 时，像 pg_dump 那样禁用超时（Alexander Kukushkin）", "title": "在源集群在线的情况下运行 pg_rewind 时，像 pg_dump 那样禁用超时", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "f0d136d0a4bb233ad40b140668d2d89f875efc183c8793f5314bdf3ad68ff0f3", "section_path": ["变更"], "commit_groups": [["19bfa15a8", "be182e4f9", "d64789e97", "e96f52443", "e9dcbc9c3", "f51006ea9"]], "identity_text": "In pg_rewind with an online source cluster, disable timeouts, much as pg_dump does (Alexander Kukushkin)", "commit_aliases": ["19bfa15a8", "be182e4f9", "d64789e97", "e96f52443", "e9dcbc9c3", "f51006ea9"], "source_commits": ["19bfa15a8"], "source_entry_id": "10.11/changes/046", "db_id": "8027a94d68d8215e26e2343d7b726d09", "patch_ids": ["4e8017aa38cf803ee3d3e19dd345a30d"], "statement_hash": "4f8174b347202f73aa2c138a5d8825b210757446053462d4639bba5a341962b7", "relations": [{"rule": 2, "type": "equivalent", "target": "51af7c4fcc122c4a493725de98450d5d", "evidence": {"same_day": true, "patch_ids": ["4e8017aa38cf803ee3d3e19dd345a30d"], "statement_hash": "4f8174b347202f73aa2c138a5d8825b210757446053462d4639bba5a341962b7"}}, {"rule": 2, "type": "equivalent", "target": "533285da9fa100f4cfc9182a5217f430", "evidence": {"same_day": true, "patch_ids": ["4e8017aa38cf803ee3d3e19dd345a30d"], "statement_hash": "4f8174b347202f73aa2c138a5d8825b210757446053462d4639bba5a341962b7"}}, {"rule": 2, "type": "equivalent", "target": "8a525dc854cf79eded68f020843d0f14", "evidence": {"same_day": true, "patch_ids": ["4e8017aa38cf803ee3d3e19dd345a30d"], "statement_hash": "4f8174b347202f73aa2c138a5d8825b210757446053462d4639bba5a341962b7"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "8a525dc854cf79eded68f020843d0f14", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "在源集群在线的情况下运行 pg_rewind 时，像 pg_dump 那样禁用超时", "evidence": {"same_day": true, "patch_ids": ["4e8017aa38cf803ee3d3e19dd345a30d"], "statement_hash": "4f8174b347202f73aa2c138a5d8825b210757446053462d4639bba5a341962b7"}, "url": "/docs/compare/?release=11.6#11.6-f36ec9cf1ef4a68a", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "533285da9fa100f4cfc9182a5217f430", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "在带在线源集簇的 pg_rewind 中，禁用超时，与 pg_dump 的做法类似", "evidence": {"same_day": true, "patch_ids": ["4e8017aa38cf803ee3d3e19dd345a30d"], "statement_hash": "4f8174b347202f73aa2c138a5d8825b210757446053462d4639bba5a341962b7"}, "url": "/docs/compare/?release=9.6.16#9.6.16-9fcd805ac104ee04", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "51af7c4fcc122c4a493725de98450d5d", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "在带在线源集簇的 pg_rewind 中，禁用超时，与 pg_dump 的做法类似", "evidence": {"same_day": true, "patch_ids": ["4e8017aa38cf803ee3d3e19dd345a30d"], "statement_hash": "4f8174b347202f73aa2c138a5d8825b210757446053462d4639bba5a341962b7"}, "url": "/docs/compare/?release=9.5.20#9.5.20-9fcd805ac104ee04", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}]}, {"id": "10.11-f944d1f887e85779", "cves": [], "html": "<p>修复使用 <code>-s</code> 选项时，延续的 WAL 记录恰好在页面边界处结束导致 <span>pg_waldump</span> 失败的问题（Andrey Lepikhov）</p>", "text": "修复使用 -s 选项时，延续的 WAL 记录恰好在页面边界处结束导致 pg_waldump 失败的问题（Andrey Lepikhov）", "title": "修复使用 -s 选项时，延续的 WAL 记录恰好在页面边界处结束导致 pg_waldump 失败的问题", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "fe96d5bb3adf06b50d9becc2e0d8d97aa68ca43e4ed16f4302d282f11eeaffbc", "section_path": ["变更"], "commit_groups": [["127ad57f5", "1accf9974", "a0c96856e", "aa7cd6a8e", "b1bebc2ce", "e5cfb8cbb", "fb53c4c07"]], "identity_text": "Fix failure in pg_waldump with the -s option, when a continuation WAL record ends exactly at a page boundary (Andrey Lepikhov)", "commit_aliases": ["127ad57f5", "1accf9974", "a0c96856e", "aa7cd6a8e", "b1bebc2ce", "e5cfb8cbb", "fb53c4c07"], "source_commits": ["127ad57f5"], "source_entry_id": "10.11/changes/047", "db_id": "2369fe2c2a869184066de21b760a4519", "patch_ids": ["b228afe783c311b1b43ff90892a58071"], "statement_hash": "302d2abc8965cf0a3067b66c0e6a3c7efc31898b6f47fa1d7f7139557bff6272", "relations": [{"rule": 2, "type": "equivalent", "target": "4970c4c81427d42399ce716c0f0f4018", "evidence": {"same_day": true, "patch_ids": ["b228afe783c311b1b43ff90892a58071"], "statement_hash": "302d2abc8965cf0a3067b66c0e6a3c7efc31898b6f47fa1d7f7139557bff6272"}}, {"rule": 2, "type": "equivalent", "target": "574a674aabeb09a243b13790922c5efa", "evidence": {"same_day": true, "patch_ids": ["b228afe783c311b1b43ff90892a58071"], "statement_hash": "302d2abc8965cf0a3067b66c0e6a3c7efc31898b6f47fa1d7f7139557bff6272"}}, {"rule": 2, "type": "equivalent", "target": "a2dc04935e730e361e88365cbe325fda", "evidence": {"same_day": true, "patch_ids": ["b228afe783c311b1b43ff90892a58071"], "statement_hash": "302d2abc8965cf0a3067b66c0e6a3c7efc31898b6f47fa1d7f7139557bff6272"}}, {"rule": 2, "type": "equivalent", "target": "c1c6b5f65ea570a78790482b40d232d5", "evidence": {"same_day": true, "patch_ids": ["b228afe783c311b1b43ff90892a58071"], "statement_hash": "302d2abc8965cf0a3067b66c0e6a3c7efc31898b6f47fa1d7f7139557bff6272"}}, {"rule": 2, "type": "equivalent", "target": "e110397ffcad28e37fd7a3608aa6799f", "evidence": {"same_day": true, "patch_ids": ["b228afe783c311b1b43ff90892a58071"], "statement_hash": "302d2abc8965cf0a3067b66c0e6a3c7efc31898b6f47fa1d7f7139557bff6272"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "c1c6b5f65ea570a78790482b40d232d5", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "修复使用 -s 选项时，延续的 WAL 记录恰好在页面边界处结束导致 pg_waldump 失败的问题", "evidence": {"same_day": true, "patch_ids": ["b228afe783c311b1b43ff90892a58071"], "statement_hash": "302d2abc8965cf0a3067b66c0e6a3c7efc31898b6f47fa1d7f7139557bff6272"}, "url": "/docs/compare/?release=12.1#12.1-fe030c8bef799a16", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "a2dc04935e730e361e88365cbe325fda", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复使用 -s 选项时，延续的 WAL 记录恰好在页面边界处结束导致 pg_waldump 失败的问题", "evidence": {"same_day": true, "patch_ids": ["b228afe783c311b1b43ff90892a58071"], "statement_hash": "302d2abc8965cf0a3067b66c0e6a3c7efc31898b6f47fa1d7f7139557bff6272"}, "url": "/docs/compare/?release=11.6#11.6-f944d1f887e85779", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "e110397ffcad28e37fd7a3608aa6799f", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "修复 pg_waldump 使用 -s 选项且延续 WAL 记录恰好在页边界结束时失败的问题", "evidence": {"same_day": true, "patch_ids": ["b228afe783c311b1b43ff90892a58071"], "statement_hash": "302d2abc8965cf0a3067b66c0e6a3c7efc31898b6f47fa1d7f7139557bff6272"}, "url": "/docs/compare/?release=9.6.16#9.6.16-cdcc327d2292fd7b", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "574a674aabeb09a243b13790922c5efa", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "修复 pg_waldump 使用 -s 选项且延续 WAL 记录恰好在页边界结束时失败的问题", "evidence": {"same_day": true, "patch_ids": ["b228afe783c311b1b43ff90892a58071"], "statement_hash": "302d2abc8965cf0a3067b66c0e6a3c7efc31898b6f47fa1d7f7139557bff6272"}, "url": "/docs/compare/?release=9.5.20#9.5.20-cdcc327d2292fd7b", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "4970c4c81427d42399ce716c0f0f4018", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "修复 pg_waldump 使用 -s 选项且延续 WAL 记录恰好在页边界结束时失败的问题", "evidence": {"same_day": true, "patch_ids": ["b228afe783c311b1b43ff90892a58071"], "statement_hash": "302d2abc8965cf0a3067b66c0e6a3c7efc31898b6f47fa1d7f7139557bff6272"}, "url": "/docs/compare/?release=9.4.25#9.4.25-cdcc327d2292fd7b", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-b056f9508c10af26", "cves": [], "html": "<p>在 <span>pg_waldump</span> 中，将 <code>newitemoff</code> 字段包含在 B-树页面分裂记录中（Peter Geoghegan）</p>", "text": "在 pg_waldump 中，将 newitemoff 字段包含在 B-树页面分裂记录中（Peter Geoghegan）", "title": "在 pg_waldump 中，将 newitemoff 字段包含在 B-树页面分裂记录中", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "e44051237ca507ba06eafc38e8704812014f8028f062c0e49af001e366f5acdd", "section_path": ["变更"], "commit_groups": [["09b236af9", "3097a0d6e", "3b6b54f17", "835646503", "9064cc139", "e87b00b5f"]], "identity_text": "In pg_waldump, include the newitemoff field in btree page split records (Peter Geoghegan)", "commit_aliases": ["09b236af9", "3097a0d6e", "3b6b54f17", "835646503", "9064cc139", "e87b00b5f"], "source_commits": ["09b236af9"], "source_entry_id": "10.11/changes/048", "db_id": "a3f520b463db17f39fbb10257a49ab83", "patch_ids": ["b679f0d84ac40786ae307ebce39bd67b"], "statement_hash": "9e255a30cba08db761c28c8448b71fcd2f2d3af59e94c824f62d87882bfc73b8", "relations": [{"rule": 2, "type": "equivalent", "target": "3e455a1cbc939fb5a372bbffb9baa9ee", "evidence": {"same_day": true, "patch_ids": ["b679f0d84ac40786ae307ebce39bd67b"], "statement_hash": "9e255a30cba08db761c28c8448b71fcd2f2d3af59e94c824f62d87882bfc73b8"}}, {"rule": 2, "type": "equivalent", "target": "403cf45860599ba21feee5d83ec5d117", "evidence": {"same_day": true, "patch_ids": ["b679f0d84ac40786ae307ebce39bd67b"], "statement_hash": "9e255a30cba08db761c28c8448b71fcd2f2d3af59e94c824f62d87882bfc73b8"}}, {"rule": 2, "type": "equivalent", "target": "c523a3ad20f443a9f3d13558c9edb273", "evidence": {"same_day": true, "patch_ids": ["b679f0d84ac40786ae307ebce39bd67b"], "statement_hash": "9e255a30cba08db761c28c8448b71fcd2f2d3af59e94c824f62d87882bfc73b8"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "3e455a1cbc939fb5a372bbffb9baa9ee", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "在 pg_waldump 中，将 newitemoff 字段包含在 B-树页面分裂记录中", "evidence": {"same_day": true, "patch_ids": ["b679f0d84ac40786ae307ebce39bd67b"], "statement_hash": "9e255a30cba08db761c28c8448b71fcd2f2d3af59e94c824f62d87882bfc73b8"}, "url": "/docs/compare/?release=11.6#11.6-b056f9508c10af26", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "c523a3ad20f443a9f3d13558c9edb273", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "在 pg_waldump 中，在 btree 页分裂记录中包含 newitemoff 字段", "evidence": {"same_day": true, "patch_ids": ["b679f0d84ac40786ae307ebce39bd67b"], "statement_hash": "9e255a30cba08db761c28c8448b71fcd2f2d3af59e94c824f62d87882bfc73b8"}, "url": "/docs/compare/?release=9.6.16#9.6.16-15fc29225172e94e", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "403cf45860599ba21feee5d83ec5d117", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "在 pg_waldump 中，在 btree 页分裂记录中包含 newitemoff 字段", "evidence": {"same_day": true, "patch_ids": ["b679f0d84ac40786ae307ebce39bd67b"], "statement_hash": "9e255a30cba08db761c28c8448b71fcd2f2d3af59e94c824f62d87882bfc73b8"}, "url": "/docs/compare/?release=9.5.20#9.5.20-15fc29225172e94e", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}]}, {"id": "10.11-87aa18b745d498ab", "cves": [], "html": "<p>在使用 <code>--bkp-details</code> 选项的 <span>pg_waldump</span> 中，避免为涉及整页写入的 WAL 记录输出多余换行（Andres Freund）</p>", "text": "在使用 --bkp-details 选项的 pg_waldump 中，避免为涉及整页写入的 WAL 记录输出多余换行（Andres Freund）", "title": "在使用 --bkp-details 选项的 pg_waldump 中，避免为涉及整页写入的 WAL 记录输出多余换行", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "7135f047b08947ca0a86472c8ca90b8d820da4873a3bdff60dee8ca69a5cd34c", "section_path": ["变更"], "commit_groups": [["39ff656a4", "3b24cf732", "82200115e", "bc4f56c18", "d4b5206b2", "e4d92126f"]], "identity_text": "In pg_waldump with the --bkp-details option, avoid emitting extra newlines for WAL records involving full-page writes (Andres Freund)", "commit_aliases": ["39ff656a4", "3b24cf732", "82200115e", "bc4f56c18", "d4b5206b2", "e4d92126f"], "source_commits": ["82200115e"], "source_entry_id": "10.11/changes/049", "db_id": "85bd35d0a4872ff79b6f95987143b35a", "patch_ids": ["cea33ab4e8e96096259e175035dab32c"], "statement_hash": "01728d61f09903915b2a45d3a3dabe6dbedbe7e078a6313a0ec9b927b207dcfe", "relations": [{"rule": 2, "type": "equivalent", "target": "0ddb02cd224fddc4143cc8006506daa7", "evidence": {"same_day": true, "patch_ids": ["cea33ab4e8e96096259e175035dab32c"], "statement_hash": "01728d61f09903915b2a45d3a3dabe6dbedbe7e078a6313a0ec9b927b207dcfe"}}, {"rule": 2, "type": "equivalent", "target": "39a40a49fbfc72bf4e2832f9482e8b98", "evidence": {"same_day": true, "patch_ids": ["cea33ab4e8e96096259e175035dab32c"], "statement_hash": "01728d61f09903915b2a45d3a3dabe6dbedbe7e078a6313a0ec9b927b207dcfe"}}, {"rule": 2, "type": "equivalent", "target": "fa7ad1b2c24010480c51f3d6c8be8177", "evidence": {"same_day": true, "patch_ids": ["cea33ab4e8e96096259e175035dab32c"], "statement_hash": "01728d61f09903915b2a45d3a3dabe6dbedbe7e078a6313a0ec9b927b207dcfe"}}, {"rule": 2, "type": "equivalent", "target": "fb99b80b398327ae1c20cc6ea034ca09", "evidence": {"same_day": true, "patch_ids": ["cea33ab4e8e96096259e175035dab32c"], "statement_hash": "01728d61f09903915b2a45d3a3dabe6dbedbe7e078a6313a0ec9b927b207dcfe"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "fa7ad1b2c24010480c51f3d6c8be8177", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "在使用 --bkp-details 选项的 pg_waldump 中，避免为涉及整页写入的 WAL 记录输出多余换行", "evidence": {"same_day": true, "patch_ids": ["cea33ab4e8e96096259e175035dab32c"], "statement_hash": "01728d61f09903915b2a45d3a3dabe6dbedbe7e078a6313a0ec9b927b207dcfe"}, "url": "/docs/compare/?release=12.1#12.1-802ccc60cd2e6372", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "0ddb02cd224fddc4143cc8006506daa7", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "在使用 --bkp-details 选项的 pg_waldump 中，避免为涉及整页写入的 WAL 记录输出多余换行", "evidence": {"same_day": true, "patch_ids": ["cea33ab4e8e96096259e175035dab32c"], "statement_hash": "01728d61f09903915b2a45d3a3dabe6dbedbe7e078a6313a0ec9b927b207dcfe"}, "url": "/docs/compare/?release=11.6#11.6-87aa18b745d498ab", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "fb99b80b398327ae1c20cc6ea034ca09", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "在 pg_waldump 使用 --bkp-details 选项时，避免为涉及整页写入的 WAL 记录输出多余换行", "evidence": {"same_day": true, "patch_ids": ["cea33ab4e8e96096259e175035dab32c"], "statement_hash": "01728d61f09903915b2a45d3a3dabe6dbedbe7e078a6313a0ec9b927b207dcfe"}, "url": "/docs/compare/?release=9.6.16#9.6.16-703092ca61cbd873", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "39a40a49fbfc72bf4e2832f9482e8b98", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "在 pg_waldump 使用 --bkp-details 选项时，避免为涉及整页写入的 WAL 记录输出多余换行", "evidence": {"same_day": true, "patch_ids": ["cea33ab4e8e96096259e175035dab32c"], "statement_hash": "01728d61f09903915b2a45d3a3dabe6dbedbe7e078a6313a0ec9b927b207dcfe"}, "url": "/docs/compare/?release=9.5.20#9.5.20-703092ca61cbd873", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}]}, {"id": "10.11-107c61d847951e1e", "cves": [], "html": "<p>修复 <span>pg_waldump</span> 中少量的内存泄漏（Andres Freund）</p>", "text": "修复 pg_waldump 中少量的内存泄漏（Andres Freund）", "title": "修复 pg_waldump 中少量的内存泄漏", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "d8fbd6cdc8f670f43191a048db198f69b88e1599911edc7c5abdd6d2f27371f7", "section_path": ["变更"], "commit_groups": [["4ab353c47", "95f2efd50", "af67aee69", "c3882f8b8", "e0f76f204", "e3ff8c360"]], "identity_text": "Fix small memory leak in pg_waldump (Andres Freund)", "commit_aliases": ["4ab353c47", "95f2efd50", "af67aee69", "c3882f8b8", "e0f76f204", "e3ff8c360"], "source_commits": ["e3ff8c360"], "source_entry_id": "10.11/changes/050", "db_id": "3872e4058f1918ff68c2e88e1098e7b4", "patch_ids": ["45bc406d2f100371b2941471e0b0b54e"], "statement_hash": "67fcd239598e1e156ee1c8a966633149eaaca4043e732f859d0dafb16f0a8513", "relations": [{"rule": 2, "type": "equivalent", "target": "004531c58099418b981264409ffab976", "evidence": {"same_day": true, "patch_ids": ["45bc406d2f100371b2941471e0b0b54e"], "statement_hash": "67fcd239598e1e156ee1c8a966633149eaaca4043e732f859d0dafb16f0a8513"}}, {"rule": 2, "type": "equivalent", "target": "1460ba3faf2cd8d16684769788c3075a", "evidence": {"same_day": true, "patch_ids": ["45bc406d2f100371b2941471e0b0b54e"], "statement_hash": "67fcd239598e1e156ee1c8a966633149eaaca4043e732f859d0dafb16f0a8513"}}, {"rule": 2, "type": "equivalent", "target": "b16a64bdaeba1cc341e7fd8a07edced3", "evidence": {"same_day": true, "patch_ids": ["45bc406d2f100371b2941471e0b0b54e"], "statement_hash": "67fcd239598e1e156ee1c8a966633149eaaca4043e732f859d0dafb16f0a8513"}}, {"rule": 2, "type": "equivalent", "target": "bebccf73c4af811901025375ccdfbebd", "evidence": {"same_day": true, "patch_ids": ["45bc406d2f100371b2941471e0b0b54e"], "statement_hash": "67fcd239598e1e156ee1c8a966633149eaaca4043e732f859d0dafb16f0a8513"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "bebccf73c4af811901025375ccdfbebd", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "修复 pg_waldump 中少量的内存泄漏", "evidence": {"same_day": true, "patch_ids": ["45bc406d2f100371b2941471e0b0b54e"], "statement_hash": "67fcd239598e1e156ee1c8a966633149eaaca4043e732f859d0dafb16f0a8513"}, "url": "/docs/compare/?release=12.1#12.1-cd3ed8b41b409a46", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "1460ba3faf2cd8d16684769788c3075a", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复 pg_waldump 中少量的内存泄漏", "evidence": {"same_day": true, "patch_ids": ["45bc406d2f100371b2941471e0b0b54e"], "statement_hash": "67fcd239598e1e156ee1c8a966633149eaaca4043e732f859d0dafb16f0a8513"}, "url": "/docs/compare/?release=11.6#11.6-107c61d847951e1e", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "b16a64bdaeba1cc341e7fd8a07edced3", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "修复 pg_waldump 中的小内存泄漏", "evidence": {"same_day": true, "patch_ids": ["45bc406d2f100371b2941471e0b0b54e"], "statement_hash": "67fcd239598e1e156ee1c8a966633149eaaca4043e732f859d0dafb16f0a8513"}, "url": "/docs/compare/?release=9.6.16#9.6.16-378787a10a1c8093", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "004531c58099418b981264409ffab976", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "修复 pg_waldump 中的小内存泄漏", "evidence": {"same_day": true, "patch_ids": ["45bc406d2f100371b2941471e0b0b54e"], "statement_hash": "67fcd239598e1e156ee1c8a966633149eaaca4043e732f859d0dafb16f0a8513"}, "url": "/docs/compare/?release=9.5.20#9.5.20-378787a10a1c8093", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}]}, {"id": "10.11-eff789fdf9aea564", "cves": [], "html": "<p>修复设置了较高 <code>--jobs</code> 值的 <span>vacuumdb</span>，使其更妥善地处理文件描述符耗尽的情况（Michael Paquier）</p>", "text": "修复设置了较高 --jobs 值的 vacuumdb，使其更妥善地处理文件描述符耗尽的情况（Michael Paquier）", "title": "修复设置了较高 --jobs 值的 vacuumdb，使其更妥善地处理文件描述符耗尽的情况", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "2f435d7c50ecf42b3ef2a7fbdd015d98dd9dc9f9b05a8d7e2d87fdaf1621870b", "section_path": ["变更"], "commit_groups": [["128e9b2cc", "4ed3bda49", "9acda7311", "b783a38d4", "c4d75313e", "c90096009"], ["4fca14600", "5d76c8037", "63fc3b124", "71d84efba", "a21ec1a95", "eb91b8ee6"]], "identity_text": "Fix vacuumdb with a high --jobs option to handle running out of file descriptors better (Michael Paquier)", "commit_aliases": ["128e9b2cc", "4ed3bda49", "4fca14600", "5d76c8037", "63fc3b124", "71d84efba", "9acda7311", "a21ec1a95", "b783a38d4", "c4d75313e", "c90096009", "eb91b8ee6"], "source_commits": ["4fca14600", "c90096009"], "source_entry_id": "10.11/changes/051", "db_id": "dd7f34dc5e2263394e3b9aba4d171aca", "patch_ids": ["c3f3a775e676b559520deced6eea4ed4", "e9c716bf1bfb3121f5ec57ce893acc6d"], "statement_hash": "6cb2a92830040f6bef7e2b66a9f739318e4667aefd9c0193b3a76c6ed40700f9", "relations": [{"rule": 2, "type": "equivalent", "target": "cea4d74b65737d9103f3794aad233eac", "evidence": {"same_day": true, "patch_ids": ["c3f3a775e676b559520deced6eea4ed4", "e9c716bf1bfb3121f5ec57ce893acc6d"], "statement_hash": "6cb2a92830040f6bef7e2b66a9f739318e4667aefd9c0193b3a76c6ed40700f9"}}, {"rule": 2, "type": "equivalent", "target": "f4acaa57dec02b43c38d5c42506ca9d0", "evidence": {"same_day": true, "patch_ids": ["c3f3a775e676b559520deced6eea4ed4", "e9c716bf1bfb3121f5ec57ce893acc6d"], "statement_hash": "6cb2a92830040f6bef7e2b66a9f739318e4667aefd9c0193b3a76c6ed40700f9"}}, {"rule": 2, "type": "equivalent", "target": "f511a4ea60ae6a075092667b2059f583", "evidence": {"same_day": true, "patch_ids": ["c3f3a775e676b559520deced6eea4ed4", "e9c716bf1bfb3121f5ec57ce893acc6d"], "statement_hash": "6cb2a92830040f6bef7e2b66a9f739318e4667aefd9c0193b3a76c6ed40700f9"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "f4acaa57dec02b43c38d5c42506ca9d0", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复设置了较高 --jobs 值的 vacuumdb，使其更妥善地处理文件描述符耗尽的情况", "evidence": {"same_day": true, "patch_ids": ["c3f3a775e676b559520deced6eea4ed4", "e9c716bf1bfb3121f5ec57ce893acc6d"], "statement_hash": "6cb2a92830040f6bef7e2b66a9f739318e4667aefd9c0193b3a76c6ed40700f9"}, "url": "/docs/compare/?release=11.6#11.6-eff789fdf9aea564", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "f511a4ea60ae6a075092667b2059f583", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "修复 vacuumdb 使用高 --jobs 选项时更好地处理文件描述符耗尽", "evidence": {"same_day": true, "patch_ids": ["c3f3a775e676b559520deced6eea4ed4", "e9c716bf1bfb3121f5ec57ce893acc6d"], "statement_hash": "6cb2a92830040f6bef7e2b66a9f739318e4667aefd9c0193b3a76c6ed40700f9"}, "url": "/docs/compare/?release=9.6.16#9.6.16-e8f8da81e98c88f1", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "cea4d74b65737d9103f3794aad233eac", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "修复 vacuumdb 使用高 --jobs 选项时更好地处理文件描述符耗尽", "evidence": {"same_day": true, "patch_ids": ["c3f3a775e676b559520deced6eea4ed4", "e9c716bf1bfb3121f5ec57ce893acc6d"], "statement_hash": "6cb2a92830040f6bef7e2b66a9f739318e4667aefd9c0193b3a76c6ed40700f9"}, "url": "/docs/compare/?release=9.5.20#9.5.20-e8f8da81e98c88f1", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}]}, {"id": "10.11-54010b0ff7521712", "cves": [], "html": "<p>修复 <code>contrib/amcheck</code>，使其在热备期间跳过不记录 WAL 的索引（Andrey Borodin，Peter Geoghegan）</p>\n<p>这种情况下，不记录 WAL 的索引未必包含有效数据，因此不要尝试检查它。</p>", "text": "修复 contrib/amcheck，使其在热备期间跳过不记录 WAL 的索引（Andrey Borodin，Peter Geoghegan） 这种情况下，不记录 WAL 的索引未必包含有效数据，因此不要尝试检查它。", "title": "修复 contrib/amcheck，使其在热备期间跳过不记录 WAL 的索引", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "275b4518b10f85f23c1bacf09c432328e8b55bae5d650f4652f06c9955618875", "section_path": ["变更"], "commit_groups": [["4f393793f", "6754fe65a", "a05fa2c0e", "f8d2cdc12"]], "identity_text": "Fix contrib/amcheck to skip unlogged indexes during hot standby (Andrey Borodin, Peter Geoghegan) An unlogged index won't necessarily contain valid data in this context, so don't try to check it.", "commit_aliases": ["4f393793f", "6754fe65a", "a05fa2c0e", "f8d2cdc12"], "source_commits": ["f8d2cdc12"], "source_entry_id": "10.11/changes/052", "db_id": "749f931da042b3b69a277cf753c2c4b2", "patch_ids": ["5a912ba2d3c55764bd06f8631d483652"], "statement_hash": "741fc6fc3b9e0e05f7f152a0c4fa8ab839a4a1a3f08ebf4d5670b40cecbab4bf", "relations": [{"rule": 2, "type": "equivalent", "target": "05dd92942ee53874e218338191535343", "evidence": {"same_day": true, "patch_ids": ["5a912ba2d3c55764bd06f8631d483652"], "statement_hash": "741fc6fc3b9e0e05f7f152a0c4fa8ab839a4a1a3f08ebf4d5670b40cecbab4bf"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "05dd92942ee53874e218338191535343", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复 contrib/amcheck，使其在热备期间跳过不记录 WAL 的索引", "evidence": {"same_day": true, "patch_ids": ["5a912ba2d3c55764bd06f8631d483652"], "statement_hash": "741fc6fc3b9e0e05f7f152a0c4fa8ab839a4a1a3f08ebf4d5670b40cecbab4bf"}, "url": "/docs/compare/?release=11.6#11.6-54010b0ff7521712", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}]}, {"id": "10.11-5ed18192f91e54e7", "cves": [], "html": "<p>修复 <code>contrib/intarray</code> 的 GiST 操作符类，使其在空数组上使用 <code>&lt;@</code> 时不会失败（Tom Lane）</p>\n<p><code><em><code>array_column</code></em> &lt;@ <em><code>constant_array</code></em></code> 这样的子句被认为可以使用索引，但索引搜索可能找不到空数组值；显然，这类条目应当直接匹配该搜索。</p>\n<p>唯一可行且能回补到旧版本的修复方法，是让 <code>&lt;@</code> 索引搜索扫描整个索引，本补丁正是这样做的。遗憾的是，这意味着查询性能很可能比普通顺序扫描还差。</p>\n<p>性能受到此更改不利影响的应用有几种选择。可以切换到没有此缺陷的 GIN 索引，也可以将 <code><em><code>array_column</code></em> &lt;@ <em><code>constant_array</code></em></code> 替换为 <code><em><code>array_column</code></em> &lt;@ <em><code>constant_array</code></em> AND <em><code>array_column</code></em> &amp;&amp; <em><code>constant_array</code></em></code>。后者的性能与以前大致相同，并会找出给定常量数组的所有非空子集；这也正是以前能够可靠期望该查询做到的全部事情。</p>", "text": "修复 contrib/intarray 的 GiST 操作符类，使其在空数组上使用 <@ 时不会失败（Tom Lane） array_column <@ constant_array 这样的子句被认为可以使用索引，但索引搜索可能找不到空数组值；显然，这类条目应当直接匹配该搜索。 唯一可行且能回补到旧版本的修复方法，是让 <@ 索引搜索扫描整个索引，本补丁正是这样做的。遗憾的是，这意味着查询性能很可能比普通顺序扫描还差。 性能受到此更改不利影响的应用有几种选择。可以切换到没有此缺陷的 GIN 索引，也可以将 array_column <@ constant_array 替换为 array_column <@ constant_array AND array_column && constant_array。后者的性能与以前大致相同，并会找出给定常量数组的所有非空子集；这也正是以前能够可靠期望该查询做到的全部事情。", "title": "修复 contrib/intarray 的 GiST 操作符类，使其在空数组上使用 <@ 时不会失败", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "5b20dde1a7286d20e4b65e8f835c9e3d40171c2337a7e5da3780ff30e1b07fb8", "section_path": ["变更"], "commit_groups": [["113b3d903", "2f76f4182", "5b3e6c13f", "614119d00", "ced272d2d", "e519eded6", "efc77cf5f"]], "identity_text": "Fix contrib/intarray's GiST opclasses to not fail for empty arrays with <@ (Tom Lane) A clause like array_column <@ constant_array is considered indexable, but the index search may not find empty array values; of course, such entries should trivially match the search. The only practical back-patchable fix for this requires making <@ index searches scan the whole index, which is what this patch does. This is unfortunate: it means that the query performance is likely worse than a plain sequential scan would be. Applications whose performance is adversely impacted by this change have a couple of options. They could switch to a GIN index, which doesn't have this bug, or they could replace array_column <@ constant_array with array_column <@ constant_array AND array_column && constant_array. That will provide about the same performance as before, and it will find all non-empty subsets of the given constant array, which is all that could reliably be expected of the query before.", "commit_aliases": ["113b3d903", "2f76f4182", "5b3e6c13f", "614119d00", "ced272d2d", "e519eded6", "efc77cf5f"], "source_commits": ["5b3e6c13f"], "source_entry_id": "10.11/changes/053", "db_id": "095d1b932d2c8b19ac2c80541fa441c9", "patch_ids": ["a31fe9b8f8907f88284116f7ea7acc4a"], "statement_hash": "00dc80375dc59960aae1c99004068ad1481c61dfaff14bdf361701e252e9d80e", "relations": [{"rule": 2, "type": "equivalent", "target": "1c9f43f55f1b5b56c782ba572b576692", "evidence": {"same_day": true, "patch_ids": ["a31fe9b8f8907f88284116f7ea7acc4a"], "statement_hash": "00dc80375dc59960aae1c99004068ad1481c61dfaff14bdf361701e252e9d80e"}}, {"rule": 2, "type": "equivalent", "target": "3aca8549b51328708bd5a5bf23277edc", "evidence": {"same_day": true, "patch_ids": ["a31fe9b8f8907f88284116f7ea7acc4a"], "statement_hash": "00dc80375dc59960aae1c99004068ad1481c61dfaff14bdf361701e252e9d80e"}}, {"rule": 2, "type": "equivalent", "target": "73e885c18b9f26670dcde44f3cce58b1", "evidence": {"same_day": true, "patch_ids": ["a31fe9b8f8907f88284116f7ea7acc4a"], "statement_hash": "00dc80375dc59960aae1c99004068ad1481c61dfaff14bdf361701e252e9d80e"}}, {"rule": 2, "type": "equivalent", "target": "85ba616e74f33ab854bbdba4c2efb25a", "evidence": {"same_day": true, "patch_ids": ["a31fe9b8f8907f88284116f7ea7acc4a"], "statement_hash": "00dc80375dc59960aae1c99004068ad1481c61dfaff14bdf361701e252e9d80e"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "3aca8549b51328708bd5a5bf23277edc", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复 contrib/intarray 的 GiST 操作符类，使其在空数组上使用 <@ 时不会失败", "evidence": {"same_day": true, "patch_ids": ["a31fe9b8f8907f88284116f7ea7acc4a"], "statement_hash": "00dc80375dc59960aae1c99004068ad1481c61dfaff14bdf361701e252e9d80e"}, "url": "/docs/compare/?release=11.6#11.6-5ed18192f91e54e7", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "73e885c18b9f26670dcde44f3cce58b1", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "修复 contrib/intarray 的 GiST 操作符类在空数组使用 <@ 时不失败的问题", "evidence": {"same_day": true, "patch_ids": ["a31fe9b8f8907f88284116f7ea7acc4a"], "statement_hash": "00dc80375dc59960aae1c99004068ad1481c61dfaff14bdf361701e252e9d80e"}, "url": "/docs/compare/?release=9.6.16#9.6.16-059f1bbda100d67f", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "1c9f43f55f1b5b56c782ba572b576692", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "修复 contrib/intarray 的 GiST 操作符类在空数组使用 <@ 时不失败的问题", "evidence": {"same_day": true, "patch_ids": ["a31fe9b8f8907f88284116f7ea7acc4a"], "statement_hash": "00dc80375dc59960aae1c99004068ad1481c61dfaff14bdf361701e252e9d80e"}, "url": "/docs/compare/?release=9.5.20#9.5.20-059f1bbda100d67f", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "85ba616e74f33ab854bbdba4c2efb25a", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "修复 contrib/intarray 的 GiST 操作符类在空数组使用 <@ 时不失败的问题", "evidence": {"same_day": true, "patch_ids": ["a31fe9b8f8907f88284116f7ea7acc4a"], "statement_hash": "00dc80375dc59960aae1c99004068ad1481c61dfaff14bdf361701e252e9d80e"}, "url": "/docs/compare/?release=9.4.25#9.4.25-059f1bbda100d67f", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-dceb1e7c16b596f4", "cves": [], "html": "<p>修复 <span>configure</span> 对 libperl 是否存在的测试，使其适用于近期的 Red Hat 发行版（Tom Lane）</p>\n<p>以前，如果用户将 <code>CFLAGS</code> 设置为 <code>-O0</code>，此测试可能失败。</p>", "text": "修复 configure 对 libperl 是否存在的测试，使其适用于近期的 Red Hat 发行版（Tom Lane） 以前，如果用户将 CFLAGS 设置为 -O0，此测试可能失败。", "title": "修复 configure 对 libperl 是否存在的测试，使其适用于近期的 Red Hat 发行版", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "162e3f4919732025e8b946406a88af63616bf54c4e4058b1f024ae346f5e831b", "section_path": ["变更"], "commit_groups": [["11330c311", "44273ce4f", "62ca50ad7", "727c2ccfe", "99c51d5ed", "aa5bb828a", "e167b1ae3"], ["328b81348", "34621cb12", "4e19bd41d", "6d2b18d07", "8835e0bd4", "ca658c91a", "d995fd667"]], "identity_text": "Fix configure's test for presence of libperl so that it works on recent Red Hat releases (Tom Lane) Previously, it could fail if the user sets CFLAGS to -O0.", "commit_aliases": ["11330c311", "328b81348", "34621cb12", "44273ce4f", "4e19bd41d", "62ca50ad7", "6d2b18d07", "727c2ccfe", "8835e0bd4", "99c51d5ed", "aa5bb828a", "ca658c91a", "d995fd667", "e167b1ae3"], "source_commits": ["328b81348", "e167b1ae3"], "source_entry_id": "10.11/changes/054", "db_id": "75230e6bbe167a096994950e2e09aadf", "patch_ids": ["446147c285dc903dc3e4faf62644ce57", "6f6aa2e2923a811aa937c950e3174c37"], "statement_hash": "51afeab0645fe6584ab15ccc885ccc13c3eac17780ec49fd2b35619f90f68451", "relations": [{"rule": 2, "type": "equivalent", "target": "212dc5fe34c06a25c876b16b320e5689", "evidence": {"same_day": true, "patch_ids": ["446147c285dc903dc3e4faf62644ce57", "6f6aa2e2923a811aa937c950e3174c37"], "statement_hash": "51afeab0645fe6584ab15ccc885ccc13c3eac17780ec49fd2b35619f90f68451"}}, {"rule": 2, "type": "equivalent", "target": "25d5d7c59f2689f4c06c495b36e8d802", "evidence": {"same_day": true, "patch_ids": ["446147c285dc903dc3e4faf62644ce57", "6f6aa2e2923a811aa937c950e3174c37"], "statement_hash": "51afeab0645fe6584ab15ccc885ccc13c3eac17780ec49fd2b35619f90f68451"}}, {"rule": 2, "type": "equivalent", "target": "725903f3b8afeb5774cf49246f3755a9", "evidence": {"same_day": true, "patch_ids": ["446147c285dc903dc3e4faf62644ce57", "6f6aa2e2923a811aa937c950e3174c37"], "statement_hash": "51afeab0645fe6584ab15ccc885ccc13c3eac17780ec49fd2b35619f90f68451"}}, {"rule": 2, "type": "equivalent", "target": "c7cf81b808f75cf9c89123e47accd94d", "evidence": {"same_day": true, "patch_ids": ["446147c285dc903dc3e4faf62644ce57", "6f6aa2e2923a811aa937c950e3174c37"], "statement_hash": "51afeab0645fe6584ab15ccc885ccc13c3eac17780ec49fd2b35619f90f68451"}}, {"rule": 2, "type": "equivalent", "target": "e65a0bcc76d2449ccb89d3f468ee1eff", "evidence": {"same_day": true, "patch_ids": ["446147c285dc903dc3e4faf62644ce57", "6f6aa2e2923a811aa937c950e3174c37"], "statement_hash": "51afeab0645fe6584ab15ccc885ccc13c3eac17780ec49fd2b35619f90f68451"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "e65a0bcc76d2449ccb89d3f468ee1eff", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "修复 configure 对 libperl 是否存在的测试，使其适用于近期的 Red Hat 发行版", "evidence": {"same_day": true, "patch_ids": ["446147c285dc903dc3e4faf62644ce57", "6f6aa2e2923a811aa937c950e3174c37"], "statement_hash": "51afeab0645fe6584ab15ccc885ccc13c3eac17780ec49fd2b35619f90f68451"}, "url": "/docs/compare/?release=12.1#12.1-99f6039b4eeef498", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "25d5d7c59f2689f4c06c495b36e8d802", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复 configure 对 libperl 是否存在的测试，使其适用于近期的 Red Hat 发行版", "evidence": {"same_day": true, "patch_ids": ["446147c285dc903dc3e4faf62644ce57", "6f6aa2e2923a811aa937c950e3174c37"], "statement_hash": "51afeab0645fe6584ab15ccc885ccc13c3eac17780ec49fd2b35619f90f68451"}, "url": "/docs/compare/?release=11.6#11.6-dceb1e7c16b596f4", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "212dc5fe34c06a25c876b16b320e5689", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "修复 configure 的 libperl 存在性测试，使其在最近的 Red Hat 版本上工作", "evidence": {"same_day": true, "patch_ids": ["446147c285dc903dc3e4faf62644ce57", "6f6aa2e2923a811aa937c950e3174c37"], "statement_hash": "51afeab0645fe6584ab15ccc885ccc13c3eac17780ec49fd2b35619f90f68451"}, "url": "/docs/compare/?release=9.6.16#9.6.16-4b66ce1846ba7cfe", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "725903f3b8afeb5774cf49246f3755a9", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "修复 configure 的 libperl 存在性测试，使其在最近的 Red Hat 版本上工作", "evidence": {"same_day": true, "patch_ids": ["446147c285dc903dc3e4faf62644ce57", "6f6aa2e2923a811aa937c950e3174c37"], "statement_hash": "51afeab0645fe6584ab15ccc885ccc13c3eac17780ec49fd2b35619f90f68451"}, "url": "/docs/compare/?release=9.5.20#9.5.20-4b66ce1846ba7cfe", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "c7cf81b808f75cf9c89123e47accd94d", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "修复 configure 的 libperl 存在性测试，使其在最近的 Red Hat 版本上工作", "evidence": {"same_day": true, "patch_ids": ["446147c285dc903dc3e4faf62644ce57", "6f6aa2e2923a811aa937c950e3174c37"], "statement_hash": "51afeab0645fe6584ab15ccc885ccc13c3eac17780ec49fd2b35619f90f68451"}, "url": "/docs/compare/?release=9.4.25#9.4.25-4b66ce1846ba7cfe", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-72f6d5016fe849da", "cves": [], "html": "<p>确保为 PowerPC 上的自旋锁生成正确的代码（Noah Misch）</p>\n<p>以前的自旋锁代码允许编译器为不接受零号寄存器的汇编指令选择该寄存器，导致构建失败。我们仅见过一份很久以前的报告与此缺陷吻合，但它可能给尝试构建修改过的 <span>PostgreSQL</span> 代码或使用非常规编译器选项的用户带来问题。</p>", "text": "确保为 PowerPC 上的自旋锁生成正确的代码（Noah Misch） 以前的自旋锁代码允许编译器为不接受零号寄存器的汇编指令选择该寄存器，导致构建失败。我们仅见过一份很久以前的报告与此缺陷吻合，但它可能给尝试构建修改过的 PostgreSQL 代码或使用非常规编译器选项的用户带来问题。", "title": "确保为 PowerPC 上的自旋锁生成正确的代码", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "b227f227d9b68ad51d4d6838edcabcec579b15510d6d0dfb9d7b14910d52536e", "section_path": ["变更"], "commit_groups": [["083929372", "09d74aef3", "62e881946", "89b4d7744", "930787c7f", "af4477b00", "ef13f914e"]], "identity_text": "Ensure correct code generation for spinlocks on PowerPC (Noah Misch) The previous spinlock coding allowed the compiler to select register zero for use with an assembly instruction that does not accept that register, causing a build failure. We have seen only one long-ago report that matches this bug, but it could cause problems for people trying to build modified PostgreSQL code or use atypical compiler options.", "commit_aliases": ["083929372", "09d74aef3", "62e881946", "89b4d7744", "930787c7f", "af4477b00", "ef13f914e"], "source_commits": ["083929372"], "source_entry_id": "10.11/changes/055", "db_id": "7814bc4e330e8e50c0034a932fc6bed3", "patch_ids": ["9e49644de8f316d79e920bb5c0ebf3b5"], "statement_hash": "fdd4a033e7ba3da61f1339c7ba266b5f8e802311fc4b0c72df81a5ede463a994", "relations": [{"rule": 2, "type": "equivalent", "target": "2aa3efae39f2f031a040399699d14a89", "evidence": {"same_day": true, "patch_ids": ["9e49644de8f316d79e920bb5c0ebf3b5"], "statement_hash": "fdd4a033e7ba3da61f1339c7ba266b5f8e802311fc4b0c72df81a5ede463a994"}}, {"rule": 2, "type": "equivalent", "target": "2c2c8ac71213410432d41370129ec1b1", "evidence": {"same_day": true, "patch_ids": ["9e49644de8f316d79e920bb5c0ebf3b5"], "statement_hash": "fdd4a033e7ba3da61f1339c7ba266b5f8e802311fc4b0c72df81a5ede463a994"}}, {"rule": 2, "type": "equivalent", "target": "30f686bb56c6183a946651745f6076b2", "evidence": {"same_day": true, "patch_ids": ["9e49644de8f316d79e920bb5c0ebf3b5"], "statement_hash": "fdd4a033e7ba3da61f1339c7ba266b5f8e802311fc4b0c72df81a5ede463a994"}}, {"rule": 2, "type": "equivalent", "target": "4f9266e65955529ae7ace087cf3c8721", "evidence": {"same_day": true, "patch_ids": ["9e49644de8f316d79e920bb5c0ebf3b5"], "statement_hash": "fdd4a033e7ba3da61f1339c7ba266b5f8e802311fc4b0c72df81a5ede463a994"}}, {"rule": 2, "type": "equivalent", "target": "c4af76c82f44bec31f14ff0296b77b40", "evidence": {"same_day": true, "patch_ids": ["9e49644de8f316d79e920bb5c0ebf3b5"], "statement_hash": "fdd4a033e7ba3da61f1339c7ba266b5f8e802311fc4b0c72df81a5ede463a994"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "30f686bb56c6183a946651745f6076b2", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "确保为 PowerPC 上的自旋锁生成正确的代码", "evidence": {"same_day": true, "patch_ids": ["9e49644de8f316d79e920bb5c0ebf3b5"], "statement_hash": "fdd4a033e7ba3da61f1339c7ba266b5f8e802311fc4b0c72df81a5ede463a994"}, "url": "/docs/compare/?release=12.1#12.1-afaf21c56e603ca4", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "2aa3efae39f2f031a040399699d14a89", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "确保为 PowerPC 上的自旋锁生成正确的代码", "evidence": {"same_day": true, "patch_ids": ["9e49644de8f316d79e920bb5c0ebf3b5"], "statement_hash": "fdd4a033e7ba3da61f1339c7ba266b5f8e802311fc4b0c72df81a5ede463a994"}, "url": "/docs/compare/?release=11.6#11.6-72f6d5016fe849da", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "c4af76c82f44bec31f14ff0296b77b40", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "确保 PowerPC 上自旋锁的正确代码生成", "evidence": {"same_day": true, "patch_ids": ["9e49644de8f316d79e920bb5c0ebf3b5"], "statement_hash": "fdd4a033e7ba3da61f1339c7ba266b5f8e802311fc4b0c72df81a5ede463a994"}, "url": "/docs/compare/?release=9.6.16#9.6.16-8e03bd160d038d58", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "4f9266e65955529ae7ace087cf3c8721", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "确保 PowerPC 上自旋锁的正确代码生成", "evidence": {"same_day": true, "patch_ids": ["9e49644de8f316d79e920bb5c0ebf3b5"], "statement_hash": "fdd4a033e7ba3da61f1339c7ba266b5f8e802311fc4b0c72df81a5ede463a994"}, "url": "/docs/compare/?release=9.5.20#9.5.20-8e03bd160d038d58", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "2c2c8ac71213410432d41370129ec1b1", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "确保 PowerPC 上自旋锁的正确代码生成", "evidence": {"same_day": true, "patch_ids": ["9e49644de8f316d79e920bb5c0ebf3b5"], "statement_hash": "fdd4a033e7ba3da61f1339c7ba266b5f8e802311fc4b0c72df81a5ede463a994"}, "url": "/docs/compare/?release=9.4.25#9.4.25-8e03bd160d038d58", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-da78372c53ef2152", "cves": [], "html": "<p>在 PowerPC 上，避免依赖 xlc 编译器的 <code>__fetch_and_add()</code> 函数（Noah Misch）</p>\n<p>xlc 13 及更新版本对该函数的解释与我们的用法不兼容，导致构建出的 <span>PostgreSQL</span> 无法使用。现在改用自定义汇编代码来修复此问题。</p>", "text": "在 PowerPC 上，避免依赖 xlc 编译器的 __fetch_and_add() 函数（Noah Misch） xlc 13 及更新版本对该函数的解释与我们的用法不兼容，导致构建出的 PostgreSQL 无法使用。现在改用自定义汇编代码来修复此问题。", "title": "在 PowerPC 上，避免依赖 xlc 编译器的 __fetch_and_add() 函数", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "9459bbd09ec799e6606715f91ae680c2139bc293ad8575525f2fe31de0200b67", "section_path": ["变更"], "commit_groups": [["1c6b62a7d", "40ad42025", "75941f257", "8972ac696", "a1df9a015", "dd50f1a43"]], "identity_text": "On PowerPC, avoid depending on the xlc compiler's __fetch_and_add() function (Noah Misch) xlc 13 and newer interpret this function in a way incompatible with our usage, resulting in an unusable build of PostgreSQL. Fix by using custom assembly code instead.", "commit_aliases": ["1c6b62a7d", "40ad42025", "75941f257", "8972ac696", "a1df9a015", "dd50f1a43"], "source_commits": ["8972ac696"], "source_entry_id": "10.11/changes/056", "db_id": "be545406cc1bd6bfad2d55bb1793ddbd", "patch_ids": ["acd5804cae78f4af7b72c30a46fa25e9"], "statement_hash": "102d6bb53b35e006907f7a36c896a75582039ff4b43c12ad7e4eddc37e127f8b", "relations": [{"rule": 2, "type": "equivalent", "target": "2ebd7e349e6e47a55b2d5a0449cdd817", "evidence": {"same_day": true, "patch_ids": ["acd5804cae78f4af7b72c30a46fa25e9"], "statement_hash": "102d6bb53b35e006907f7a36c896a75582039ff4b43c12ad7e4eddc37e127f8b"}}, {"rule": 2, "type": "equivalent", "target": "84b394ea4e22fd25f1ffd6ce3f30d56f", "evidence": {"same_day": true, "patch_ids": ["acd5804cae78f4af7b72c30a46fa25e9"], "statement_hash": "102d6bb53b35e006907f7a36c896a75582039ff4b43c12ad7e4eddc37e127f8b"}}, {"rule": 2, "type": "equivalent", "target": "bcae758108bbe6a8c1b8f8e7e139930b", "evidence": {"same_day": true, "patch_ids": ["acd5804cae78f4af7b72c30a46fa25e9"], "statement_hash": "102d6bb53b35e006907f7a36c896a75582039ff4b43c12ad7e4eddc37e127f8b"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "2ebd7e349e6e47a55b2d5a0449cdd817", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "在 PowerPC 上，避免依赖 xlc 编译器的 __fetch_and_add() 函数", "evidence": {"same_day": true, "patch_ids": ["acd5804cae78f4af7b72c30a46fa25e9"], "statement_hash": "102d6bb53b35e006907f7a36c896a75582039ff4b43c12ad7e4eddc37e127f8b"}, "url": "/docs/compare/?release=11.6#11.6-da78372c53ef2152", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "84b394ea4e22fd25f1ffd6ce3f30d56f", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "在 PowerPC 上，避免依赖 xlc 编译器的 __fetch_and_add() 函数", "evidence": {"same_day": true, "patch_ids": ["acd5804cae78f4af7b72c30a46fa25e9"], "statement_hash": "102d6bb53b35e006907f7a36c896a75582039ff4b43c12ad7e4eddc37e127f8b"}, "url": "/docs/compare/?release=9.6.16#9.6.16-da78372c53ef2152", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "bcae758108bbe6a8c1b8f8e7e139930b", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "在 PowerPC 上，避免依赖 xlc 编译器的 __fetch_and_add() 函数", "evidence": {"same_day": true, "patch_ids": ["acd5804cae78f4af7b72c30a46fa25e9"], "statement_hash": "102d6bb53b35e006907f7a36c896a75582039ff4b43c12ad7e4eddc37e127f8b"}, "url": "/docs/compare/?release=9.5.20#9.5.20-da78372c53ef2152", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}]}, {"id": "10.11-fd088abedec41d3c", "cves": [], "html": "<p>在 AIX 上不再使用编译器选项 <code>-qsrcmsg</code>（Noah Misch）</p>\n<p>这避免了 xlc v16.1.0 的内部编译器错误，除了改变编译器错误消息的格式之外，几乎没有其他影响。</p>", "text": "在 AIX 上不再使用编译器选项 -qsrcmsg（Noah Misch） 这避免了 xlc v16.1.0 的内部编译器错误，除了改变编译器错误消息的格式之外，几乎没有其他影响。", "title": "在 AIX 上不再使用编译器选项 -qsrcmsg", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "39ed5724b71066b5e98f583d9e5d8f8bbc1cd1a787d88bcb595dfdce0bae3b96", "section_path": ["变更"], "commit_groups": [["3fb14cfcb", "5f3d271d0", "77cc4a595", "b705582b4", "c73f4f680", "e40eb31c0", "e5b4926ef"]], "identity_text": "On AIX, don't use the compiler option -qsrcmsg (Noah Misch) This avoids an internal compiler error with xlc v16.1.0, with little consequence other than changing the format of compiler error messages.", "commit_aliases": ["3fb14cfcb", "5f3d271d0", "77cc4a595", "b705582b4", "c73f4f680", "e40eb31c0", "e5b4926ef"], "source_commits": ["77cc4a595"], "source_entry_id": "10.11/changes/057", "db_id": "d96568514755bd9c64b47ceb2569ea10", "patch_ids": ["1599bea98b7d92f4dc430eb31aab3c06"], "statement_hash": "0435870f8b6f137509a3cee94109abae59caa3c0c4b218a4acb90dcba10d8b6c", "relations": [{"rule": 2, "type": "equivalent", "target": "416b05485065dc8bf461bb9a38cea5d5", "evidence": {"same_day": true, "patch_ids": ["1599bea98b7d92f4dc430eb31aab3c06"], "statement_hash": "0435870f8b6f137509a3cee94109abae59caa3c0c4b218a4acb90dcba10d8b6c"}}, {"rule": 2, "type": "equivalent", "target": "5ff20ba9783100b29d6a950489beaf5c", "evidence": {"same_day": true, "patch_ids": ["1599bea98b7d92f4dc430eb31aab3c06"], "statement_hash": "0435870f8b6f137509a3cee94109abae59caa3c0c4b218a4acb90dcba10d8b6c"}}, {"rule": 2, "type": "equivalent", "target": "760aa42d630d7db3ee283c2c1bf4e8a4", "evidence": {"same_day": true, "patch_ids": ["1599bea98b7d92f4dc430eb31aab3c06"], "statement_hash": "0435870f8b6f137509a3cee94109abae59caa3c0c4b218a4acb90dcba10d8b6c"}}, {"rule": 2, "type": "equivalent", "target": "822c329930f6839fd4e003bb6199daad", "evidence": {"same_day": true, "patch_ids": ["1599bea98b7d92f4dc430eb31aab3c06"], "statement_hash": "0435870f8b6f137509a3cee94109abae59caa3c0c4b218a4acb90dcba10d8b6c"}}, {"rule": 2, "type": "equivalent", "target": "e1709c0b2254841b5b2e038b0d095cd0", "evidence": {"same_day": true, "patch_ids": ["1599bea98b7d92f4dc430eb31aab3c06"], "statement_hash": "0435870f8b6f137509a3cee94109abae59caa3c0c4b218a4acb90dcba10d8b6c"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "5ff20ba9783100b29d6a950489beaf5c", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "在 AIX 上不再使用编译器选项 -qsrcmsg", "evidence": {"same_day": true, "patch_ids": ["1599bea98b7d92f4dc430eb31aab3c06"], "statement_hash": "0435870f8b6f137509a3cee94109abae59caa3c0c4b218a4acb90dcba10d8b6c"}, "url": "/docs/compare/?release=12.1#12.1-95ff6454bde5ffe3", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "e1709c0b2254841b5b2e038b0d095cd0", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "在 AIX 上不再使用编译器选项 -qsrcmsg", "evidence": {"same_day": true, "patch_ids": ["1599bea98b7d92f4dc430eb31aab3c06"], "statement_hash": "0435870f8b6f137509a3cee94109abae59caa3c0c4b218a4acb90dcba10d8b6c"}, "url": "/docs/compare/?release=11.6#11.6-fd088abedec41d3c", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "822c329930f6839fd4e003bb6199daad", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "在 AIX 上，不使用编译器选项 -qsrcmsg", "evidence": {"same_day": true, "patch_ids": ["1599bea98b7d92f4dc430eb31aab3c06"], "statement_hash": "0435870f8b6f137509a3cee94109abae59caa3c0c4b218a4acb90dcba10d8b6c"}, "url": "/docs/compare/?release=9.6.16#9.6.16-661671e4f6b6f300", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "760aa42d630d7db3ee283c2c1bf4e8a4", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "在 AIX 上，不使用编译器选项 -qsrcmsg", "evidence": {"same_day": true, "patch_ids": ["1599bea98b7d92f4dc430eb31aab3c06"], "statement_hash": "0435870f8b6f137509a3cee94109abae59caa3c0c4b218a4acb90dcba10d8b6c"}, "url": "/docs/compare/?release=9.5.20#9.5.20-661671e4f6b6f300", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "416b05485065dc8bf461bb9a38cea5d5", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "在 AIX 上，不使用编译器选项 -qsrcmsg", "evidence": {"same_day": true, "patch_ids": ["1599bea98b7d92f4dc430eb31aab3c06"], "statement_hash": "0435870f8b6f137509a3cee94109abae59caa3c0c4b218a4acb90dcba10d8b6c"}, "url": "/docs/compare/?release=9.4.25#9.4.25-661671e4f6b6f300", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-8af5f9d4642c2ecf", "cves": [], "html": "<p>修复 MSVC 构建过程，使其能够处理 OpenSSL 文件路径中的空格（Andrew Dunstan）</p>", "text": "修复 MSVC 构建过程，使其能够处理 OpenSSL 文件路径中的空格（Andrew Dunstan）", "title": "修复 MSVC 构建过程，使其能够处理 OpenSSL 文件路径中的空格", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "9c01c5e2e241ec7cb4a6e1d5766d44ff9d8a23c2a89a02a29b311832b871b86d", "section_path": ["变更"], "commit_groups": [["1e9a0487d", "3b9c22700", "62d2caed6", "6ca51b155", "8f8809091", "ad7595b89", "ec38d2311"]], "identity_text": "Fix MSVC build process to cope with spaces in the file path of OpenSSL (Andrew Dunstan)", "commit_aliases": ["1e9a0487d", "3b9c22700", "62d2caed6", "6ca51b155", "8f8809091", "ad7595b89", "ec38d2311"], "source_commits": ["62d2caed6"], "source_entry_id": "10.11/changes/058", "db_id": "90f6af2221cf19865a9a78e940ca4f64", "patch_ids": ["26f1bde951b659e5d5df4cc603319c36"], "statement_hash": "6329ec64f2b04403d027d3c8f47f3500d7f507364e5a0b4c15a85144769fa607", "relations": [{"rule": 2, "type": "equivalent", "target": "0893554c398dc6e15ad4901312cba282", "evidence": {"same_day": true, "patch_ids": ["26f1bde951b659e5d5df4cc603319c36"], "statement_hash": "6329ec64f2b04403d027d3c8f47f3500d7f507364e5a0b4c15a85144769fa607"}}, {"rule": 2, "type": "equivalent", "target": "928237d2a0d6a7f0f1d701177479ae8f", "evidence": {"same_day": true, "patch_ids": ["26f1bde951b659e5d5df4cc603319c36"], "statement_hash": "6329ec64f2b04403d027d3c8f47f3500d7f507364e5a0b4c15a85144769fa607"}}, {"rule": 2, "type": "equivalent", "target": "9e8d143fba38db76992300f11c8d84f9", "evidence": {"same_day": true, "patch_ids": ["26f1bde951b659e5d5df4cc603319c36"], "statement_hash": "6329ec64f2b04403d027d3c8f47f3500d7f507364e5a0b4c15a85144769fa607"}}, {"rule": 2, "type": "equivalent", "target": "a6f8353053480f849627a17f462805c4", "evidence": {"same_day": true, "patch_ids": ["26f1bde951b659e5d5df4cc603319c36"], "statement_hash": "6329ec64f2b04403d027d3c8f47f3500d7f507364e5a0b4c15a85144769fa607"}}, {"rule": 2, "type": "equivalent", "target": "b15b4c64c40679e329e5756bfde4fbd6", "evidence": {"same_day": true, "patch_ids": ["26f1bde951b659e5d5df4cc603319c36"], "statement_hash": "6329ec64f2b04403d027d3c8f47f3500d7f507364e5a0b4c15a85144769fa607"}}], "version": "10.11", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "928237d2a0d6a7f0f1d701177479ae8f", "kind": "equivalent", "version": "12.1", "label": "12.1", "title": "修复 MSVC 构建过程，使其能够处理 OpenSSL 文件路径中的空格", "evidence": {"same_day": true, "patch_ids": ["26f1bde951b659e5d5df4cc603319c36"], "statement_hash": "6329ec64f2b04403d027d3c8f47f3500d7f507364e5a0b4c15a85144769fa607"}, "url": "/docs/compare/?release=12.1#12.1-e3ccc580f9073809", "source_url": "/docs/release/12.1/#id-1.11.6.27.5"}, {"db_id": "0893554c398dc6e15ad4901312cba282", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "修复 MSVC 构建过程，使其能够处理 OpenSSL 文件路径中的空格", "evidence": {"same_day": true, "patch_ids": ["26f1bde951b659e5d5df4cc603319c36"], "statement_hash": "6329ec64f2b04403d027d3c8f47f3500d7f507364e5a0b4c15a85144769fa607"}, "url": "/docs/compare/?release=11.6#11.6-8af5f9d4642c2ecf", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "a6f8353053480f849627a17f462805c4", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "修复 MSVC 构建过程以应对 OpenSSL 文件路径中的空格", "evidence": {"same_day": true, "patch_ids": ["26f1bde951b659e5d5df4cc603319c36"], "statement_hash": "6329ec64f2b04403d027d3c8f47f3500d7f507364e5a0b4c15a85144769fa607"}, "url": "/docs/compare/?release=9.6.16#9.6.16-cca0d9db341e5aeb", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "9e8d143fba38db76992300f11c8d84f9", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "修复 MSVC 构建过程以应对 OpenSSL 文件路径中的空格", "evidence": {"same_day": true, "patch_ids": ["26f1bde951b659e5d5df4cc603319c36"], "statement_hash": "6329ec64f2b04403d027d3c8f47f3500d7f507364e5a0b4c15a85144769fa607"}, "url": "/docs/compare/?release=9.5.20#9.5.20-cca0d9db341e5aeb", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "b15b4c64c40679e329e5756bfde4fbd6", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "修复 MSVC 构建过程以应对 OpenSSL 文件路径中的空格", "evidence": {"same_day": true, "patch_ids": ["26f1bde951b659e5d5df4cc603319c36"], "statement_hash": "6329ec64f2b04403d027d3c8f47f3500d7f507364e5a0b4c15a85144769fa607"}, "url": "/docs/compare/?release=9.4.25#9.4.25-cca0d9db341e5aeb", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}, {"id": "10.11-1a5ed0178f1bc53f", "cves": [], "html": "<p>将时区数据文件更新到 <span>tzdata</span> 2019c 版，以反映斐济和诺福克岛的夏令时法规变更，并修正艾伯塔、奥地利、比利时、不列颠哥伦比亚、柬埔寨、香港、印第安纳（佩里县）、加里宁格勒、肯塔基、密歇根、诺福克岛、韩国和土耳其的历史数据。</p>", "text": "将时区数据文件更新到 tzdata 2019c 版，以反映斐济和诺福克岛的夏令时法规变更，并修正艾伯塔、奥地利、比利时、不列颠哥伦比亚、柬埔寨、香港、印第安纳（佩里县）、加里宁格勒、肯塔基、密歇根、诺福克岛、韩国和土耳其的历史数据。", "title": "将时区数据文件更新到 tzdata 2019c 版，以反映斐济和诺福克岛的夏令时法规变更，并修正艾伯塔、奥地利、比利时、不列颠哥伦比亚、柬埔寨、香港、印第安纳（佩里县）、加里宁格勒、肯塔基、密歇根、诺福克岛、韩国和土耳其的历史数据。", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/10.11/#id-1.11.6.17.5", "source_hash": "d02f73bf5785c1b98494f015c8055e45f1917ecc5c79ea4c85eb4e5055ff0cb7", "section_path": ["变更"], "commit_groups": [["0bd64398e", "128abdef7", "24f64fba0", "2966e30e5", "29e47f83c", "769802ef9", "df4fbcd89"]], "identity_text": "Update time zone data files to tzdata release 2019c for DST law changes in Fiji and Norfolk Island, plus historical corrections for Alberta, Austria, Belgium, British Columbia, Cambodia, Hong Kong, Indiana (Perry County), Kaliningrad, Kentucky, Michigan, Norfolk Island, South Korea, and Turkey.", "commit_aliases": ["0bd64398e", "128abdef7", "24f64fba0", "2966e30e5", "29e47f83c", "769802ef9", "df4fbcd89"], "source_commits": ["769802ef9"], "source_entry_id": "10.11/changes/059", "db_id": "ae92e6f03f6ea389f065a100e97c9eb6", "patch_ids": ["96b1ee10cb19eac730ff645a2ba36d15"], "statement_hash": "bf411d5dcf240ec41fce05ed6b498d7ecc24166e34da9e8742cc8584e49a4938", "relations": [{"rule": 2, "type": "equivalent", "target": "19e801c0f3b869957d5fab96c808e535", "evidence": {"same_day": true, "patch_ids": ["96b1ee10cb19eac730ff645a2ba36d15"], "statement_hash": "bf411d5dcf240ec41fce05ed6b498d7ecc24166e34da9e8742cc8584e49a4938"}}, {"rule": 2, "type": "equivalent", "target": "5b019aeb828713edb1e7e8cca7ae1621", "evidence": {"same_day": true, "patch_ids": ["96b1ee10cb19eac730ff645a2ba36d15"], "statement_hash": "bf411d5dcf240ec41fce05ed6b498d7ecc24166e34da9e8742cc8584e49a4938"}}, {"rule": 2, "type": "equivalent", "target": "5c4afc1a6f1af55d60cf633c13667ff3", "evidence": {"same_day": true, "patch_ids": ["96b1ee10cb19eac730ff645a2ba36d15"], "statement_hash": "bf411d5dcf240ec41fce05ed6b498d7ecc24166e34da9e8742cc8584e49a4938"}}, {"rule": 2, "type": "equivalent", "target": "8394234783f7c63cdd763ddbe772912d", "evidence": {"same_day": true, "patch_ids": ["96b1ee10cb19eac730ff645a2ba36d15"], "statement_hash": "bf411d5dcf240ec41fce05ed6b498d7ecc24166e34da9e8742cc8584e49a4938"}}], "version": "10.11", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "8394234783f7c63cdd763ddbe772912d", "kind": "equivalent", "version": "11.6", "label": "11.6", "title": "将时区数据文件更新到 tzdata 2019c 版，以反映斐济和诺福克岛的夏令时法规变更，并修正艾伯塔、奥地利、比利时、不列颠哥伦比亚、柬埔寨、香港、印第安纳（佩里县）、加里宁格勒、肯塔基、密歇根、诺福克岛、韩国和土耳其的历史数据。", "evidence": {"same_day": true, "patch_ids": ["96b1ee10cb19eac730ff645a2ba36d15"], "statement_hash": "bf411d5dcf240ec41fce05ed6b498d7ecc24166e34da9e8742cc8584e49a4938"}, "url": "/docs/compare/?release=11.6#11.6-1a5ed0178f1bc53f", "source_url": "/docs/release/11.6/#id-1.11.6.21.5"}, {"db_id": "19e801c0f3b869957d5fab96c808e535", "kind": "equivalent", "version": "9.6.16", "label": "9.6.16", "title": "更新时区数据文件到 tzdata 版本 2019c，涉及斐济和诺福克岛的夏令时法规变更，以及艾伯塔、奥地利、比利时、不列颠哥伦比亚、柬埔寨、香港、印第安纳（佩里县）、加里宁格勒、肯塔基、密歇根、诺福克岛、韩国和土耳其的历史修正。", "evidence": {"same_day": true, "patch_ids": ["96b1ee10cb19eac730ff645a2ba36d15"], "statement_hash": "bf411d5dcf240ec41fce05ed6b498d7ecc24166e34da9e8742cc8584e49a4938"}, "url": "/docs/compare/?release=9.6.16#9.6.16-3df4e6cc5b21efd1", "source_url": "/docs/release/9.6.16/#id-1.11.6.13.5"}, {"db_id": "5b019aeb828713edb1e7e8cca7ae1621", "kind": "equivalent", "version": "9.5.20", "label": "9.5.20", "title": "更新时区数据文件到 tzdata 版本 2019c，涉及斐济和诺福克岛的夏令时法规变更，以及艾伯塔、奥地利、比利时、不列颠哥伦比亚、柬埔寨、香港、印第安纳（佩里县）、加里宁格勒、肯塔基、密歇根、诺福克岛、韩国和土耳其的历史修正。", "evidence": {"same_day": true, "patch_ids": ["96b1ee10cb19eac730ff645a2ba36d15"], "statement_hash": "bf411d5dcf240ec41fce05ed6b498d7ecc24166e34da9e8742cc8584e49a4938"}, "url": "/docs/compare/?release=9.5.20#9.5.20-3df4e6cc5b21efd1", "source_url": "/docs/release/9.5.20/#id-1.11.6.10.5"}, {"db_id": "5c4afc1a6f1af55d60cf633c13667ff3", "kind": "equivalent", "version": "9.4.25", "label": "9.4.25", "title": "更新时区数据文件到 tzdata 版本 2019c，涉及斐济和诺福克岛的夏令时法规变更，以及艾伯塔、奥地利、比利时、不列颠哥伦比亚、柬埔寨、香港、印第安纳（佩里县）、加里宁格勒、肯塔基、密歇根、诺福克岛、韩国和土耳其的历史修正。", "evidence": {"same_day": true, "patch_ids": ["96b1ee10cb19eac730ff645a2ba36d15"], "statement_hash": "bf411d5dcf240ec41fce05ed6b498d7ecc24166e34da9e8742cc8584e49a4938"}, "url": "/docs/compare/?release=9.4.25#9.4.25-3df4e6cc5b21efd1", "source_url": "/docs/release/9.4.25/#id-1.11.6.6.6"}]}]}], "stats": [{"key": "all", "label": "全部变更", "count": 59}, {"key": "feature", "label": "新功能", "count": 0}, {"key": "bugfix", "label": "BUG 修复", "count": 26}, {"key": "security", "label": "安全相关", "count": 0}, {"key": "performance", "label": "性能改进", "count": 0}, {"key": "compatibility", "label": "兼容性变化", "count": 0}, {"key": "improvement", "label": "其他改进", "count": 33}], "total": 59, "release_count": 1, "cross_major": false, "cve_count": 0, "cves": [], "cve_available": true, "remaining_cves": [], "security_regressions": [], "warnings": [], "candidate_count": 59, "already_in_source_count": 0, "duplicate_count": 0, "excluded_count": 0, "exclusions": [], "source_as_of": "2026-09-26", "security_as_of": "2026-09-26"}