{"format": 1, "mode": "release", "from_release": null, "to_release": {"date": "2015-10-08", "build": "9.4.5", "major": "9.4", "minor": 5, "manual": "9.4", "status": "stable", "doc_git": "", "version": "9.4.5", "eol_date": "2020-02-13", "date_text": "2015-10-08", "supported": false, "manual_url": "/docs/9.4/release-9-4-5.html", "source_url": "/docs/release/9.4.5/", "entry_count": 70, "placeholder": false, "content_hash": "4e96027cc03e32a0a2c0df4a4e95547e365bfea3628a607d288b13eb58a688dd", "manual_build": "9.4.26", "source_as_of": "", "changes_count": 70, "doc_loaded_at": "2026-09-26T02:56:45.438944", "migration_html": "<p>对于运行 9.4.X 的用户，不需要转储/恢复。</p>\n<p>但是，如果你是从早于 9.4.4 的版本升级，请参见<a href=\"/docs/9.4/release-9-4-4.html\" title=\"E.23. 版本 9.4.4\">第 E.23 节</a>。</p>", "compatibility_count": 0, "label": "9.4.5", "status_label": "历史版本", "eol": "2020-02-13", "age_days": 4010, "support_days": -2421}, "groups": [{"date": "2015-10-08", "build": "9.4.5", "major": "9.4", "minor": 5, "manual": "9.4", "status": "stable", "doc_git": "", "version": "9.4.5", "eol_date": "2020-02-13", "date_text": "2015-10-08", "supported": false, "manual_url": "/docs/9.4/release-9-4-5.html", "source_url": "/docs/release/9.4.5/", "entry_count": 70, "placeholder": false, "content_hash": "4e96027cc03e32a0a2c0df4a4e95547e365bfea3628a607d288b13eb58a688dd", "manual_build": "9.4.26", "source_as_of": "", "changes_count": 70, "doc_loaded_at": "2026-09-26T02:56:45.438944", "migration_html": "<p>对于运行 9.4.X 的用户，不需要转储/恢复。</p>\n<p>但是，如果你是从早于 9.4.4 的版本升级，请参见<a href=\"/docs/9.4/release-9-4-4.html\" title=\"E.23. 版本 9.4.4\">第 E.23 节</a>。</p>", "compatibility_count": 0, "label": "9.4.5", "status_label": "历史版本", "eol": "2020-02-13", "age_days": 4010, "support_days": -2421, "entries": [{"id": "9.4.5-bda64c7b3d317532", "cves": ["CVE-2015-5289"], "html": "<p>防御<code>json</code>解析中的栈溢出（Oskari Saarenmaa）</p>\n<p>如果应用程序从任意用户输入构造 PostgreSQL <code>json</code>或<code>jsonb</code>值，应用程序的用户就能可靠地使 PostgreSQL 服务器崩溃，造成短暂的服务拒绝。（CVE-2015-5289）</p>", "text": "防御json解析中的栈溢出（Oskari Saarenmaa） 如果应用程序从任意用户输入构造 PostgreSQL json或jsonb值，应用程序的用户就能可靠地使 PostgreSQL 服务器崩溃，造成短暂的服务拒绝。（CVE-2015-5289）", "title": "防御json解析中的栈溢出", "commits": [], "section": "变更", "category": "security", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "cd8685df05ad36a9fa6c325cbcc38ed3222694ffa8867f9736eb788cf7619a96", "section_path": ["变更"], "commit_groups": [["08fa47c48", "16d58b5b5", "98f30d2e5", "f8862172e"]], "identity_text": "Guard against stack overflows in json parsing (Oskari Saarenmaa) If an application constructs PostgreSQL json or jsonb values from arbitrary user input, the application's users can reliably crash the PostgreSQL server, causing momentary denial of service. (CVE-2015-5289)", "commit_aliases": ["08fa47c48", "16d58b5b5", "98f30d2e5", "f8862172e"], "source_commits": ["16d58b5b5"], "source_entry_id": "9.4.5/changes/001", "db_id": "98cfbe9c0ee2aae172dbcc32f59f8bbf", "patch_ids": ["9de081f0b3cb55a0652297519fe57d06"], "statement_hash": "d3c886dbf7f30b7ca712c3d9f1e1a80b085085352f94ca4a2429a255df915b73", "relations": [{"rule": 2, "type": "equivalent", "target": "9591fd7f0272927c793159e8354fab42", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "d3c886dbf7f30b7ca712c3d9f1e1a80b085085352f94ca4a2429a255df915b73"}}], "version": "9.4.5", "category_label": "安全相关", "also_in": [], "variants": [], "related_changes": [{"db_id": "9591fd7f0272927c793159e8354fab42", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "防御json解析中的栈溢出", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "d3c886dbf7f30b7ca712c3d9f1e1a80b085085352f94ca4a2429a255df915b73"}, "url": "/docs/compare/?release=9.3.10#9.3.10-bda64c7b3d317532", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}]}, {"id": "9.4.5-f6d5fd9c0b0fa047", "cves": ["CVE-2015-5288"], "html": "<p>修复<code>contrib/pgcrypto</code>以检测并报告过短的<code>crypt()</code>盐值（Josh Kupershmidt）</p>\n<p>某些无效的盐值参数会导致服务器崩溃或泄露少量服务器内存字节。我们尚未排除通过安排让泄露字节中出现机密信息实施攻击的可行性，但这种攻击似乎不太可能。（CVE-2015-5288）</p>", "text": "修复contrib/pgcrypto以检测并报告过短的crypt()盐值（Josh Kupershmidt） 某些无效的盐值参数会导致服务器崩溃或泄露少量服务器内存字节。我们尚未排除通过安排让泄露字节中出现机密信息实施攻击的可行性，但这种攻击似乎不太可能。（CVE-2015-5288）", "title": "修复contrib/pgcrypto以检测并报告过短的crypt()盐值", "commits": [], "section": "变更", "category": "security", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "d4e9723ce1f9fbb8f73de7da9f7546bc34804df5113085fea4cfb3904440f9ce", "section_path": ["变更"], "commit_groups": [["188e081ef", "1d812c8b0", "48f6310bc", "4d6752277", "4d95419e8", "56232f987", "cc1210f0a"]], "identity_text": "Fix contrib/pgcrypto to detect and report too-short crypt() salts (Josh Kupershmidt) Certain invalid salt arguments crashed the server or disclosed a few bytes of server memory. We have not ruled out the viability of attacks that arrange for presence of confidential information in the disclosed bytes, but they seem unlikely. (CVE-2015-5288)", "commit_aliases": ["188e081ef", "1d812c8b0", "48f6310bc", "4d6752277", "4d95419e8", "56232f987", "cc1210f0a"], "source_commits": ["4d95419e8"], "source_entry_id": "9.4.5/changes/002", "db_id": "5c8d7e71c4ba5874e51f9ef1f2f6b446", "patch_ids": ["68ec5c8248080916e72672aff879dabf"], "statement_hash": "a234bf621fcfcffa2cc89841dc444c39420ad13fdd09fcc48f6f91c441772849", "relations": [{"rule": 2, "type": "equivalent", "target": "023971ce213db745811080467a147da5", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a234bf621fcfcffa2cc89841dc444c39420ad13fdd09fcc48f6f91c441772849"}}, {"rule": 2, "type": "equivalent", "target": "09f590d22c6967162e3c8e7655021e8c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a234bf621fcfcffa2cc89841dc444c39420ad13fdd09fcc48f6f91c441772849"}}, {"rule": 2, "type": "equivalent", "target": "4e8af8c24be51bf8965c3d4f3cd9023f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a234bf621fcfcffa2cc89841dc444c39420ad13fdd09fcc48f6f91c441772849"}}, {"rule": 2, "type": "equivalent", "target": "d955d1abe6e6e279632d815a8759c127", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a234bf621fcfcffa2cc89841dc444c39420ad13fdd09fcc48f6f91c441772849"}}], "version": "9.4.5", "category_label": "安全相关", "also_in": [], "variants": [], "related_changes": [{"db_id": "4e8af8c24be51bf8965c3d4f3cd9023f", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复contrib/pgcrypto以检测并报告过短的crypt()盐值", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a234bf621fcfcffa2cc89841dc444c39420ad13fdd09fcc48f6f91c441772849"}, "url": "/docs/compare/?release=9.3.10#9.3.10-f6d5fd9c0b0fa047", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "023971ce213db745811080467a147da5", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复contrib/pgcrypto以检测并报告过短的crypt()盐值", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a234bf621fcfcffa2cc89841dc444c39420ad13fdd09fcc48f6f91c441772849"}, "url": "/docs/compare/?release=9.2.14#9.2.14-f6d5fd9c0b0fa047", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "d955d1abe6e6e279632d815a8759c127", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复contrib/pgcrypto以检测并报告过短的crypt()盐值", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a234bf621fcfcffa2cc89841dc444c39420ad13fdd09fcc48f6f91c441772849"}, "url": "/docs/compare/?release=9.1.19#9.1.19-f6d5fd9c0b0fa047", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "09f590d22c6967162e3c8e7655021e8c", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复contrib/pgcrypto以检测并报告过短的crypt()盐值", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a234bf621fcfcffa2cc89841dc444c39420ad13fdd09fcc48f6f91c441772849"}, "url": "/docs/compare/?release=9.0.23#9.0.23-f6d5fd9c0b0fa047", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-11fa2086c9cecc13", "cves": [], "html": "<p>修复属于外部子事务的门户（游标）失败后的子事务清理问题（Tom Lane、Michael Paquier）</p>\n<p>在外部子事务游标中执行的函数可能因引用在内部子事务中创建的关系而导致断言失败或崩溃。</p>", "text": "修复属于外部子事务的门户（游标）失败后的子事务清理问题（Tom Lane、Michael Paquier） 在外部子事务游标中执行的函数可能因引用在内部子事务中创建的关系而导致断言失败或崩溃。", "title": "修复属于外部子事务的门户（游标）失败后的子事务清理问题", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "bea5a8bfe4f2321ada94c973352b782b797d27c9862e5a8e5282fec1f1b0575c", "section_path": ["变更"], "commit_groups": [["37d10c524", "39ebb6466", "81ee435c4", "9e9b310d8", "a2538da89", "c5454f99c", "dae1c9480"]], "identity_text": "Fix subtransaction cleanup after a portal (cursor) belonging to an outer subtransaction fails (Tom Lane, Michael Paquier) A function executed in an outer-subtransaction cursor could cause an assertion failure or crash by referencing a relation created within an inner subtransaction.", "commit_aliases": ["37d10c524", "39ebb6466", "81ee435c4", "9e9b310d8", "a2538da89", "c5454f99c", "dae1c9480"], "source_commits": ["37d10c524"], "source_entry_id": "9.4.5/changes/003", "db_id": "9c97416d4a2f038c6ae822c7406d44e1", "patch_ids": ["09c7f4946dd28a8e552c459997adf2f7"], "statement_hash": "af81d0941acffc00a731e1e617e596c508dfdccb8fd51ef00f686904b2779db5", "relations": [{"rule": 2, "type": "equivalent", "target": "839757c8fdc8f6ba56622f7cd3c1e54a", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "af81d0941acffc00a731e1e617e596c508dfdccb8fd51ef00f686904b2779db5"}}, {"rule": 2, "type": "equivalent", "target": "94727363730560e355182e09b0eb64e6", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "af81d0941acffc00a731e1e617e596c508dfdccb8fd51ef00f686904b2779db5"}}, {"rule": 2, "type": "equivalent", "target": "a26a163b498feea73aba821c37843b81", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "af81d0941acffc00a731e1e617e596c508dfdccb8fd51ef00f686904b2779db5"}}, {"rule": 2, "type": "equivalent", "target": "da7cb39314ff628774b9077464dec997", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "af81d0941acffc00a731e1e617e596c508dfdccb8fd51ef00f686904b2779db5"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "da7cb39314ff628774b9077464dec997", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复属于外部子事务的门户（游标）失败后的子事务清理问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "af81d0941acffc00a731e1e617e596c508dfdccb8fd51ef00f686904b2779db5"}, "url": "/docs/compare/?release=9.3.10#9.3.10-11fa2086c9cecc13", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "839757c8fdc8f6ba56622f7cd3c1e54a", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复属于外部子事务的门户（游标）失败后的子事务清理问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "af81d0941acffc00a731e1e617e596c508dfdccb8fd51ef00f686904b2779db5"}, "url": "/docs/compare/?release=9.2.14#9.2.14-11fa2086c9cecc13", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "a26a163b498feea73aba821c37843b81", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复属于外部子事务的门户（游标）失败后的子事务清理问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "af81d0941acffc00a731e1e617e596c508dfdccb8fd51ef00f686904b2779db5"}, "url": "/docs/compare/?release=9.1.19#9.1.19-11fa2086c9cecc13", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "94727363730560e355182e09b0eb64e6", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复属于外部子事务的门户（游标）失败后的子事务清理问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "af81d0941acffc00a731e1e617e596c508dfdccb8fd51ef00f686904b2779db5"}, "url": "/docs/compare/?release=9.0.23#9.0.23-11fa2086c9cecc13", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-53d21bc8c5df3bda", "cves": [], "html": "<p>修复设置了 <code>commit_delay</code> 时 WAL 插入期间可能的死锁（Heikki Linnakangas）</p>", "text": "修复设置了 commit_delay 时 WAL 插入期间可能的死锁（Heikki Linnakangas）", "title": "修复设置了 commit_delay 时 WAL 插入期间可能的死锁", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "c978f15065a160584c5460ec29ce2a23dd7c6fc6bc0de15e8a93e6f6600600f2", "section_path": ["变更"], "commit_groups": [["358cde320", "54f23a45f", "bab959906"]], "identity_text": "Fix possible deadlock during WAL insertion when commit_delay is set (Heikki Linnakangas)", "commit_aliases": ["358cde320", "54f23a45f", "bab959906"], "source_commits": ["bab959906"], "source_entry_id": "9.4.5/changes/004", "db_id": "3c42047b65df4e8d864007f5c92b0ceb", "patch_ids": ["6e51ba2090304eca993e5832855c8143"], "statement_hash": "c3f0d61869c805c6872295a2e65e3a68d1d60f226087dd441ce64b7d0f88dd41", "relations": [], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.4.5-9531d55fa38bb6b8", "cves": [], "html": "<p>确保更新语句期间对可更新视图引用的所有关系正确加锁（Dean Rasheed）</p>", "text": "确保更新语句期间对可更新视图引用的所有关系正确加锁（Dean Rasheed）", "title": "确保更新语句期间对可更新视图引用的所有关系正确加锁", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "6cda15d78fc81330b120b438405dd5bdc003c5594f26f6fe78bca72f3f68c03b", "section_path": ["变更"], "commit_groups": [["83d004904", "9801bae21", "c3e0ddd40", "cb1b9b959"]], "identity_text": "Ensure all relations referred to by an updatable view are properly locked during an update statement (Dean Rasheed)", "commit_aliases": ["83d004904", "9801bae21", "c3e0ddd40", "cb1b9b959"], "source_commits": ["83d004904"], "source_entry_id": "9.4.5/changes/005", "db_id": "af644e7e3379e05c476a1d3e90f9d390", "patch_ids": ["f44b35eb8c5b15dfd822f1cc8f06c74a"], "statement_hash": "eaf690245a2f1438d3803d09096cb506c26bf182e5757b292c273f18e48cc630", "relations": [{"rule": 2, "type": "equivalent", "target": "65f068e47f710b9872979eb24818125b", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "eaf690245a2f1438d3803d09096cb506c26bf182e5757b292c273f18e48cc630"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "65f068e47f710b9872979eb24818125b", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "确保在更新语句期间正确锁定可更新视图引用的所有关系", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "eaf690245a2f1438d3803d09096cb506c26bf182e5757b292c273f18e48cc630"}, "url": "/docs/compare/?release=9.3.10#9.3.10-5262155059480b64", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}]}, {"id": "9.4.5-4b6caa96288d390a", "cves": [], "html": "<p>修复关系插入关系缓存<span>“<span>init 文件</span>”</span>的问题（Tom Lane）</p>\n<p>最近几个小版本中一个补丁的疏忽导致<code>pg_trigger_tgrelid_tgname_index</code>被遗漏在 init 文件之外。后续会话检测到这一点后认定 init 文件已损坏并静默忽略它，导致会话启动时间显著退化。除修复该缺陷外，还加入了一些防护，使未来任何类似错误更明显。</p>", "text": "修复关系插入关系缓存“init 文件”的问题（Tom Lane） 最近几个小版本中一个补丁的疏忽导致pg_trigger_tgrelid_tgname_index被遗漏在 init 文件之外。后续会话检测到这一点后认定 init 文件已损坏并静默忽略它，导致会话启动时间显著退化。除修复该缺陷外，还加入了一些防护，使未来任何类似错误更明显。", "title": "修复关系插入关系缓存“init 文件”的问题", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "adc042a4849996aa538b138c48e7f790cf49f8a47f92b489de14b93488303847", "section_path": ["变更"], "commit_groups": [["45c69178b", "5d1ff6bd5", "834aa56ea", "88fab18a4", "a9b7bf82f", "e118555cf"]], "identity_text": "Fix insertion of relations into the relation cache init file (Tom Lane) An oversight in a patch in the most recent minor releases caused pg_trigger_tgrelid_tgname_index to be omitted from the init file. Subsequent sessions detected this, then deemed the init file to be broken and silently ignored it, resulting in a significant degradation in session startup time. In addition to fixing the bug, install some guards so that any similar future mistake will be more obvious.", "commit_aliases": ["45c69178b", "5d1ff6bd5", "834aa56ea", "88fab18a4", "a9b7bf82f", "e118555cf"], "source_commits": ["e118555cf"], "source_entry_id": "9.4.5/changes/006", "db_id": "61692501788aaceb31ddad400e61bbcd", "patch_ids": ["cb8d1a1728400d587363c81e28068cb4"], "statement_hash": "ca2ca49868e752e81564376cd0cdd0dc49319e455a2654a8d1759934f33f7e5c", "relations": [{"rule": 2, "type": "equivalent", "target": "7b8f13be5e717f3e0828c7949d8bd380", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ca2ca49868e752e81564376cd0cdd0dc49319e455a2654a8d1759934f33f7e5c"}}, {"rule": 2, "type": "equivalent", "target": "98c88ab03618ab451f3ac23148b16707", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ca2ca49868e752e81564376cd0cdd0dc49319e455a2654a8d1759934f33f7e5c"}}, {"rule": 2, "type": "equivalent", "target": "99944d7e0ae20b23dd7b275bf460d607", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ca2ca49868e752e81564376cd0cdd0dc49319e455a2654a8d1759934f33f7e5c"}}, {"rule": 2, "type": "equivalent", "target": "f1ed4b512fa43344dc1b27427c01664f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ca2ca49868e752e81564376cd0cdd0dc49319e455a2654a8d1759934f33f7e5c"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "99944d7e0ae20b23dd7b275bf460d607", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复关系插入关系缓存“init 文件”的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ca2ca49868e752e81564376cd0cdd0dc49319e455a2654a8d1759934f33f7e5c"}, "url": "/docs/compare/?release=9.3.10#9.3.10-4b6caa96288d390a", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "7b8f13be5e717f3e0828c7949d8bd380", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复关系插入关系缓存“init 文件”的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ca2ca49868e752e81564376cd0cdd0dc49319e455a2654a8d1759934f33f7e5c"}, "url": "/docs/compare/?release=9.2.14#9.2.14-4b6caa96288d390a", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "f1ed4b512fa43344dc1b27427c01664f", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复关系插入关系缓存“init 文件”的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ca2ca49868e752e81564376cd0cdd0dc49319e455a2654a8d1759934f33f7e5c"}, "url": "/docs/compare/?release=9.1.19#9.1.19-4b6caa96288d390a", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "98c88ab03618ab451f3ac23148b16707", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复关系插入关系缓存“init 文件”的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ca2ca49868e752e81564376cd0cdd0dc49319e455a2654a8d1759934f33f7e5c"}, "url": "/docs/compare/?release=9.0.23#9.0.23-4b6caa96288d390a", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-d3c5f0a400989c3a", "cves": [], "html": "<p>避免向 SPI 查询结果插入大量元组时的 O(N^2) 行为（Neil Conway）</p>", "text": "避免向 SPI 查询结果插入大量元组时的 O(N^2) 行为（Neil Conway）", "title": "避免向 SPI 查询结果插入大量元组时的 O(N^2) 行为", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "cb262d2cda9ad6e192d53241855b146ef602c6223edd7b8c27a49186cfd7e387", "section_path": ["变更"], "commit_groups": [["68a14ca74", "6e5d9f278", "7c57449fc", "87b8c9e12", "d951d6065", "ea9892444", "fe939d950"]], "identity_text": "Avoid O(N^2) behavior when inserting many tuples into a SPI query result (Neil Conway)", "commit_aliases": ["68a14ca74", "6e5d9f278", "7c57449fc", "87b8c9e12", "d951d6065", "ea9892444", "fe939d950"], "source_commits": ["fe939d950"], "source_entry_id": "9.4.5/changes/007", "db_id": "ad508996ce70ab783648766dd9917f32", "patch_ids": ["c05aa2cda966596d1896e9dca1765de1"], "statement_hash": "c21d5f0f2d1589ec56e8d595f44daf9997e8e3927e2e25ce07a6549210fa24b6", "relations": [{"rule": 2, "type": "equivalent", "target": "42665046f8921ee2cb564cacf4b04bf5", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c21d5f0f2d1589ec56e8d595f44daf9997e8e3927e2e25ce07a6549210fa24b6"}}, {"rule": 2, "type": "equivalent", "target": "7e133ac0846653b21e325c503d0647c3", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c21d5f0f2d1589ec56e8d595f44daf9997e8e3927e2e25ce07a6549210fa24b6"}}, {"rule": 2, "type": "equivalent", "target": "b36ce3b829b20f058574f19c41196450", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c21d5f0f2d1589ec56e8d595f44daf9997e8e3927e2e25ce07a6549210fa24b6"}}, {"rule": 2, "type": "equivalent", "target": "e8341192d7e0259308ae4f89de77f112", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c21d5f0f2d1589ec56e8d595f44daf9997e8e3927e2e25ce07a6549210fa24b6"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "42665046f8921ee2cb564cacf4b04bf5", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "避免向 SPI 查询结果插入大量元组时的 O(N^2) 行为", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c21d5f0f2d1589ec56e8d595f44daf9997e8e3927e2e25ce07a6549210fa24b6"}, "url": "/docs/compare/?release=9.3.10#9.3.10-d3c5f0a400989c3a", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "7e133ac0846653b21e325c503d0647c3", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "避免向 SPI 查询结果插入大量元组时的 O(N^2) 行为", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c21d5f0f2d1589ec56e8d595f44daf9997e8e3927e2e25ce07a6549210fa24b6"}, "url": "/docs/compare/?release=9.2.14#9.2.14-d3c5f0a400989c3a", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "b36ce3b829b20f058574f19c41196450", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "避免向 SPI 查询结果插入大量元组时的 O(N^2) 行为", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c21d5f0f2d1589ec56e8d595f44daf9997e8e3927e2e25ce07a6549210fa24b6"}, "url": "/docs/compare/?release=9.1.19#9.1.19-d3c5f0a400989c3a", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "e8341192d7e0259308ae4f89de77f112", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "避免向 SPI 查询结果插入大量元组时的 O(N^2) 行为", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c21d5f0f2d1589ec56e8d595f44daf9997e8e3927e2e25ce07a6549210fa24b6"}, "url": "/docs/compare/?release=9.0.23#9.0.23-d3c5f0a400989c3a", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-16227e07c265bf9b", "cves": [], "html": "<p>改进存在大量未读通知时 <code>LISTEN</code> 的启动时间（Matt Newell）</p>", "text": "改进存在大量未读通知时 LISTEN 的启动时间（Matt Newell）", "title": "改进存在大量未读通知时 LISTEN 的启动时间", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "c05b9b44b6cd56907b71c8bf7adb1100373d2b11fede919487a6e8ef5a10b50c", "section_path": ["变更"], "commit_groups": [["03f9b63e2", "07e4d03fb", "2bbe8a684", "2d4336cf8", "8c8a834b1", "aad86c518", "e4c00750a"]], "identity_text": "Improve LISTEN startup time when there are many unread notifications (Matt Newell)", "commit_aliases": ["03f9b63e2", "07e4d03fb", "2bbe8a684", "2d4336cf8", "8c8a834b1", "aad86c518", "e4c00750a"], "source_commits": ["03f9b63e2"], "source_entry_id": "9.4.5/changes/008", "db_id": "c12c81c90eff79e8c5bde28c085b1263", "patch_ids": ["dcfddcfbabfc151391de39d23b4309b3"], "statement_hash": "496fc16ccdbdecbc733b1d80533755907f696d0531952a2d7d79bc70f8e4fdcf", "relations": [{"rule": 2, "type": "equivalent", "target": "49617164dd58b0c32c44e1be173c91e6", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "496fc16ccdbdecbc733b1d80533755907f696d0531952a2d7d79bc70f8e4fdcf"}}, {"rule": 2, "type": "equivalent", "target": "7416578426fe5fb880075a18b8b734c5", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "496fc16ccdbdecbc733b1d80533755907f696d0531952a2d7d79bc70f8e4fdcf"}}, {"rule": 2, "type": "equivalent", "target": "c19ffcaa837c4dcb69af0854e6f1818b", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "496fc16ccdbdecbc733b1d80533755907f696d0531952a2d7d79bc70f8e4fdcf"}}, {"rule": 2, "type": "equivalent", "target": "eaf59084e6d1cdf68284337913e0cfe1", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "496fc16ccdbdecbc733b1d80533755907f696d0531952a2d7d79bc70f8e4fdcf"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "eaf59084e6d1cdf68284337913e0cfe1", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "改进存在大量未读通知时LISTEN的启动时间", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "496fc16ccdbdecbc733b1d80533755907f696d0531952a2d7d79bc70f8e4fdcf"}, "url": "/docs/compare/?release=9.3.10#9.3.10-6e0dfb80f0b78715", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "49617164dd58b0c32c44e1be173c91e6", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "改进存在大量未读通知时LISTEN的启动时间", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "496fc16ccdbdecbc733b1d80533755907f696d0531952a2d7d79bc70f8e4fdcf"}, "url": "/docs/compare/?release=9.2.14#9.2.14-6e0dfb80f0b78715", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "c19ffcaa837c4dcb69af0854e6f1818b", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "改进存在大量未读通知时LISTEN的启动时间", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "496fc16ccdbdecbc733b1d80533755907f696d0531952a2d7d79bc70f8e4fdcf"}, "url": "/docs/compare/?release=9.1.19#9.1.19-6e0dfb80f0b78715", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "7416578426fe5fb880075a18b8b734c5", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "改进存在大量未读通知时LISTEN的启动时间", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "496fc16ccdbdecbc733b1d80533755907f696d0531952a2d7d79bc70f8e4fdcf"}, "url": "/docs/compare/?release=9.0.23#9.0.23-6e0dfb80f0b78715", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-2cb4167cab127170", "cves": [], "html": "<p>修复会话更改大量外键约束时的性能问题（Jan Wieck、Tom Lane）</p>\n<p>这主要在还原拥有数千张表的数据库的<span>pg_dump</span>输出时出现。</p>", "text": "修复会话更改大量外键约束时的性能问题（Jan Wieck、Tom Lane） 这主要在还原拥有数千张表的数据库的pg_dump输出时出现。", "title": "修复会话更改大量外键约束时的性能问题", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "a33bdddaf2785eb3f886b36f1c346acac143a8b685f8f81fbaf00c9aa5beacd0", "section_path": ["变更"], "commit_groups": [["1bcc9e60a", "2abfd9d5e", "67d0f7a37", "c9645f757"]], "identity_text": "Fix performance problem when a session alters large numbers of foreign key constraints (Jan Wieck, Tom Lane) This was seen primarily when restoring pg_dump output for databases with many thousands of tables.", "commit_aliases": ["1bcc9e60a", "2abfd9d5e", "67d0f7a37", "c9645f757"], "source_commits": ["67d0f7a37"], "source_entry_id": "9.4.5/changes/009", "db_id": "9c3d53c6bb784b41b30b6ebb8e3243ad", "patch_ids": ["99015674b60533a672444f30f0bb0e7a"], "statement_hash": "30a2660434096e2a55f4d8bb66c9238ea610adb61526c14ff7393205846053d9", "relations": [{"rule": 2, "type": "equivalent", "target": "c31b17d4f9b5704e35c418051d10b396", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "30a2660434096e2a55f4d8bb66c9238ea610adb61526c14ff7393205846053d9"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "c31b17d4f9b5704e35c418051d10b396", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复会话更改大量外键约束时的性能问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "30a2660434096e2a55f4d8bb66c9238ea610adb61526c14ff7393205846053d9"}, "url": "/docs/compare/?release=9.3.10#9.3.10-2cb4167cab127170", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}]}, {"id": "9.4.5-09699f683f48c936", "cves": [], "html": "<p>默认禁用 SSL 重新协商（Michael Paquier、Andres Freund）</p>\n<p>虽然使用 SSL 重新协商在理论上是个好主意，但实践中我们看到了太多缺陷，无论是底层 OpenSSL 库中还是我们对它的使用中。重新协商将在 9.5 及更高版本中完全移除。在较旧的分支中，只是把<code>ssl_renegotiation_limit</code>的默认值改为零（禁用）。</p>", "text": "默认禁用 SSL 重新协商（Michael Paquier、Andres Freund） 虽然使用 SSL 重新协商在理论上是个好主意，但实践中我们看到了太多缺陷，无论是底层 OpenSSL 库中还是我们对它的使用中。重新协商将在 9.5 及更高版本中完全移除。在较旧的分支中，只是把ssl_renegotiation_limit的默认值改为零（禁用）。", "title": "默认禁用 SSL 重新协商", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "99a1437eeb56f818ce3f302d2d2061d508e11513179d861295d6c3f8eb6c21d8", "section_path": ["变更"], "commit_groups": [["2f91e7bb5", "444b2ebee", "48d23c72d", "624a3c9be", "ab6084782"]], "identity_text": "Disable SSL renegotiation by default (Michael Paquier, Andres Freund) While use of SSL renegotiation is a good idea in theory, we have seen too many bugs in practice, both in the underlying OpenSSL library and in our usage of it. Renegotiation will be removed entirely in 9.5 and later. In the older branches, just change the default value of ssl_renegotiation_limit to zero (disabled).", "commit_aliases": ["2f91e7bb5", "444b2ebee", "48d23c72d", "624a3c9be", "ab6084782"], "source_commits": ["ab6084782"], "source_entry_id": "9.4.5/changes/010", "db_id": "13ed9c5c66dae3c0189d0ff55a7aebe2", "patch_ids": ["70fe022cfc5458827ea2ef8c9c177557"], "statement_hash": "cc12f79347924d968c8511c23571fe8ed22d33cc49f2f4b7fb9af14432e77bb5", "relations": [{"rule": 2, "type": "equivalent", "target": "8374057133fda4900775cef6cd9dc201", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cc12f79347924d968c8511c23571fe8ed22d33cc49f2f4b7fb9af14432e77bb5"}}, {"rule": 2, "type": "equivalent", "target": "83ec0f3c7a8302177c216fecc429cc95", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cc12f79347924d968c8511c23571fe8ed22d33cc49f2f4b7fb9af14432e77bb5"}}, {"rule": 2, "type": "equivalent", "target": "a0616a46d6f32209f2523632d7815d18", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cc12f79347924d968c8511c23571fe8ed22d33cc49f2f4b7fb9af14432e77bb5"}}, {"rule": 2, "type": "equivalent", "target": "d26b895676096d19b8d3f0e5cd3529d7", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cc12f79347924d968c8511c23571fe8ed22d33cc49f2f4b7fb9af14432e77bb5"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "83ec0f3c7a8302177c216fecc429cc95", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "默认禁用 SSL 重新协商", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cc12f79347924d968c8511c23571fe8ed22d33cc49f2f4b7fb9af14432e77bb5"}, "url": "/docs/compare/?release=9.3.10#9.3.10-09699f683f48c936", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "d26b895676096d19b8d3f0e5cd3529d7", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "默认禁用 SSL 重新协商", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cc12f79347924d968c8511c23571fe8ed22d33cc49f2f4b7fb9af14432e77bb5"}, "url": "/docs/compare/?release=9.2.14#9.2.14-09699f683f48c936", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "a0616a46d6f32209f2523632d7815d18", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "默认禁用 SSL 重新协商", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cc12f79347924d968c8511c23571fe8ed22d33cc49f2f4b7fb9af14432e77bb5"}, "url": "/docs/compare/?release=9.1.19#9.1.19-09699f683f48c936", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "8374057133fda4900775cef6cd9dc201", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "默认禁用 SSL 重新协商", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cc12f79347924d968c8511c23571fe8ed22d33cc49f2f4b7fb9af14432e77bb5"}, "url": "/docs/compare/?release=9.0.23#9.0.23-09699f683f48c936", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-ab785dfd161f565c", "cves": [], "html": "<p>降低<code>*_freeze_max_age</code>参数的最小值（Andres Freund）</p>\n<p>这主要是为了使相关行为的测试不那么耗时，但对磁盘空间有限的安装也可能有价值。</p>", "text": "降低*_freeze_max_age参数的最小值（Andres Freund） 这主要是为了使相关行为的测试不那么耗时，但对磁盘空间有限的安装也可能有价值。", "title": "降低*_freeze_max_age参数的最小值", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "2b4f80371a91f32770f1a790081565621cccc044117f7bbe5d64582b0214a2fd", "section_path": ["变更"], "commit_groups": [["020235a57", "078d471a9", "4ff753c91", "ef4fccd2b", "f12932dd4", "fee2275ae", "ff090bbb7"], ["0577821b5", "13ac4c035", "2596d705b", "393341714", "7116a3e98", "e07cfef34", "eeb0b7830"]], "identity_text": "Lower the minimum values of the *_freeze_max_age parameters (Andres Freund) This is mainly to make tests of related behavior less time-consuming, but it may also be of value for installations with limited disk space.", "commit_aliases": ["020235a57", "0577821b5", "078d471a9", "13ac4c035", "2596d705b", "393341714", "4ff753c91", "7116a3e98", "e07cfef34", "eeb0b7830", "ef4fccd2b", "f12932dd4", "fee2275ae", "ff090bbb7"], "source_commits": ["13ac4c035", "4ff753c91"], "source_entry_id": "9.4.5/changes/011", "db_id": "93e66ee1b1279d2cc9a8b4144f864a83", "patch_ids": ["34b7f21b3c092590e74be4d70c365543", "f1b977a73b9296ad2a80eb69d7db22bd"], "statement_hash": "be34687f5ad0cb53e280b4edc83d7cd361de54a77383eedf29d75efaf10ffb8e", "relations": [{"rule": 2, "type": "equivalent", "target": "06ade0f8f704600dddc2d0c6549c52d3", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "be34687f5ad0cb53e280b4edc83d7cd361de54a77383eedf29d75efaf10ffb8e"}}, {"rule": 2, "type": "equivalent", "target": "6190a4f6cb903cf97f22576381f04c41", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "be34687f5ad0cb53e280b4edc83d7cd361de54a77383eedf29d75efaf10ffb8e"}}, {"rule": 2, "type": "equivalent", "target": "85f9bf66588d9dee780b47a5f1e61b95", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "be34687f5ad0cb53e280b4edc83d7cd361de54a77383eedf29d75efaf10ffb8e"}}, {"rule": 2, "type": "equivalent", "target": "d52a0ef2cbc43bd2579b8119ed898943", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "be34687f5ad0cb53e280b4edc83d7cd361de54a77383eedf29d75efaf10ffb8e"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "85f9bf66588d9dee780b47a5f1e61b95", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "降低*_freeze_max_age参数的最小值", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "be34687f5ad0cb53e280b4edc83d7cd361de54a77383eedf29d75efaf10ffb8e"}, "url": "/docs/compare/?release=9.3.10#9.3.10-ab785dfd161f565c", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "6190a4f6cb903cf97f22576381f04c41", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "降低*_freeze_max_age参数的最小值", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "be34687f5ad0cb53e280b4edc83d7cd361de54a77383eedf29d75efaf10ffb8e"}, "url": "/docs/compare/?release=9.2.14#9.2.14-ab785dfd161f565c", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "d52a0ef2cbc43bd2579b8119ed898943", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "降低*_freeze_max_age参数的最小值", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "be34687f5ad0cb53e280b4edc83d7cd361de54a77383eedf29d75efaf10ffb8e"}, "url": "/docs/compare/?release=9.1.19#9.1.19-ab785dfd161f565c", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "06ade0f8f704600dddc2d0c6549c52d3", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "降低*_freeze_max_age参数的最小值", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "be34687f5ad0cb53e280b4edc83d7cd361de54a77383eedf29d75efaf10ffb8e"}, "url": "/docs/compare/?release=9.0.23#9.0.23-ab785dfd161f565c", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-5e55b492958dfdc4", "cves": [], "html": "<p>将 <code>wal_buffers</code> 的最大值限制为 2GB 以避免服务器崩溃（Josh Berkus）</p>", "text": "将 wal_buffers 的最大值限制为 2GB 以避免服务器崩溃（Josh Berkus）", "title": "将 wal_buffers 的最大值限制为 2GB 以避免服务器崩溃", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "7acb495540738b189d62e071eeab0137e64f81a740454885f72244064f2ed89f", "section_path": ["变更"], "commit_groups": [["11ed4bab5", "369342cf7", "3a35ca5ad", "4e51ea8fd", "5ef8e1114", "b09446ed7", "cd52e4a2b"]], "identity_text": "Limit the maximum value of wal_buffers to 2GB to avoid server crashes (Josh Berkus)", "commit_aliases": ["11ed4bab5", "369342cf7", "3a35ca5ad", "4e51ea8fd", "5ef8e1114", "b09446ed7", "cd52e4a2b"], "source_commits": ["3a35ca5ad"], "source_entry_id": "9.4.5/changes/012", "db_id": "67c8909a29ecc6167cfd5cbde0f3e9ef", "patch_ids": ["ddf0dfeef682ebeb2d7abd79ccf14add"], "statement_hash": "bda8dc09315f60226e7d3a2b147721318b865983ad054a04e0cea9bbe0323a30", "relations": [{"rule": 2, "type": "equivalent", "target": "01d1082a047d332948a79d8390a2ff28", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "bda8dc09315f60226e7d3a2b147721318b865983ad054a04e0cea9bbe0323a30"}}, {"rule": 2, "type": "equivalent", "target": "688c241a736ca3a6337f246f416cd2ec", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "bda8dc09315f60226e7d3a2b147721318b865983ad054a04e0cea9bbe0323a30"}}, {"rule": 2, "type": "equivalent", "target": "787ec49c1b4032722e54547c3a46053a", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "bda8dc09315f60226e7d3a2b147721318b865983ad054a04e0cea9bbe0323a30"}}, {"rule": 2, "type": "equivalent", "target": "89d56b6dcaa31b1ea3efc46437384555", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "bda8dc09315f60226e7d3a2b147721318b865983ad054a04e0cea9bbe0323a30"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "688c241a736ca3a6337f246f416cd2ec", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "将wal_buffers的最大值限制为 2GB 以避免服务器崩溃", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "bda8dc09315f60226e7d3a2b147721318b865983ad054a04e0cea9bbe0323a30"}, "url": "/docs/compare/?release=9.3.10#9.3.10-cbbb18cea7f79e9a", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "89d56b6dcaa31b1ea3efc46437384555", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "将wal_buffers的最大值限制为 2GB 以避免服务器崩溃", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "bda8dc09315f60226e7d3a2b147721318b865983ad054a04e0cea9bbe0323a30"}, "url": "/docs/compare/?release=9.2.14#9.2.14-cbbb18cea7f79e9a", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "01d1082a047d332948a79d8390a2ff28", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "将wal_buffers的最大值限制为 2GB 以避免服务器崩溃", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "bda8dc09315f60226e7d3a2b147721318b865983ad054a04e0cea9bbe0323a30"}, "url": "/docs/compare/?release=9.1.19#9.1.19-cbbb18cea7f79e9a", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "787ec49c1b4032722e54547c3a46053a", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "将wal_buffers的最大值限制为 2GB 以避免服务器崩溃", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "bda8dc09315f60226e7d3a2b147721318b865983ad054a04e0cea9bbe0323a30"}, "url": "/docs/compare/?release=9.0.23#9.0.23-cbbb18cea7f79e9a", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-b9ff58afe457d8a9", "cves": [], "html": "<p>避免当只能在服务器启动时设置的参数在 <code>postgresql.conf</code> 中多次出现时记录抱怨日志，并修复 <code>include_dir</code> 指令之后的行号计数（Tom Lane）</p>", "text": "避免当只能在服务器启动时设置的参数在 postgresql.conf 中多次出现时记录抱怨日志，并修复 include_dir 指令之后的行号计数（Tom Lane）", "title": "避免当只能在服务器启动时设置的参数在 postgresql.conf 中多次出现时记录抱怨日志，并修复 include_dir 指令之后的行号计数", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "f62f5c8580b41d2f27f01588e188834f71ade2235ac4e6cfeb6b74b427d2ddc0", "section_path": ["变更"], "commit_groups": [["1afc1fe9c", "5a56c2545"]], "identity_text": "Avoid logging complaints when a parameter that can only be set at server start appears multiple times in postgresql.conf, and fix counting of line numbers after an include_dir directive (Tom Lane)", "commit_aliases": ["1afc1fe9c", "5a56c2545"], "source_commits": ["1afc1fe9c"], "source_entry_id": "9.4.5/changes/013", "db_id": "1381b7bece36f27875782d9a09353539", "patch_ids": ["84e9bcd635404ba528e131834b814e24"], "statement_hash": "95c5db16866e79c60a1c9f4d8dc3cbb4da14d6bab9428a387b1ee111f10ad40d", "relations": [{"rule": 2, "type": "equivalent", "target": "33bc48586ecffac08f93a8dafb0dcb5f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "95c5db16866e79c60a1c9f4d8dc3cbb4da14d6bab9428a387b1ee111f10ad40d"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "33bc48586ecffac08f93a8dafb0dcb5f", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "当只能在服务器启动时设置的参数在postgresql.conf中多次出现时，不再记录抱怨日志；并修复include_dir指令之后行号计数错误的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "95c5db16866e79c60a1c9f4d8dc3cbb4da14d6bab9428a387b1ee111f10ad40d"}, "url": "/docs/compare/?release=9.3.10#9.3.10-5478091b45fbe764", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}]}, {"id": "9.4.5-f329b7a3c5a751bc", "cves": [], "html": "<p>修复 <code>numeric</code> 值乘法中罕见的内部溢出（Dean Rasheed）</p>", "text": "修复 numeric 值乘法中罕见的内部溢出（Dean Rasheed）", "title": "修复 numeric 值乘法中罕见的内部溢出", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "e36b95abc5c616833bbacef86130af97cda3c68d235862bb54e855907fee05ea", "section_path": ["变更"], "commit_groups": [["246693e5a", "3dfffac70", "5f79730ec", "844486216", "8b75e489a", "a89781e34", "fa9fc3a1b"]], "identity_text": "Fix rare internal overflow in multiplication of numeric values (Dean Rasheed)", "commit_aliases": ["246693e5a", "3dfffac70", "5f79730ec", "844486216", "8b75e489a", "a89781e34", "fa9fc3a1b"], "source_commits": ["fa9fc3a1b"], "source_entry_id": "9.4.5/changes/014", "db_id": "8b831bcf5529479b8cf75162380c68b9", "patch_ids": ["6ae34034fe6abbad493ac3d50c2b35cd"], "statement_hash": "05deb5897b8df4af1be5e0ade77d0f342c64495e62d83e62803af1decf8cf37e", "relations": [{"rule": 2, "type": "equivalent", "target": "4886f433ebe331decda4fe091ac47825", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "05deb5897b8df4af1be5e0ade77d0f342c64495e62d83e62803af1decf8cf37e"}}, {"rule": 2, "type": "equivalent", "target": "48b0d72f2d21ee198d97e42f737192ce", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "05deb5897b8df4af1be5e0ade77d0f342c64495e62d83e62803af1decf8cf37e"}}, {"rule": 2, "type": "equivalent", "target": "5502408247c918ed511b18a820bedbf6", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "05deb5897b8df4af1be5e0ade77d0f342c64495e62d83e62803af1decf8cf37e"}}, {"rule": 2, "type": "equivalent", "target": "b322d02f29d70ba46f6dfe2bee7b74a7", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "05deb5897b8df4af1be5e0ade77d0f342c64495e62d83e62803af1decf8cf37e"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "b322d02f29d70ba46f6dfe2bee7b74a7", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复numeric值相乘时罕见的内部溢出", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "05deb5897b8df4af1be5e0ade77d0f342c64495e62d83e62803af1decf8cf37e"}, "url": "/docs/compare/?release=9.3.10#9.3.10-5ab40998afc40591", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "48b0d72f2d21ee198d97e42f737192ce", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复numeric值相乘时罕见的内部溢出", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "05deb5897b8df4af1be5e0ade77d0f342c64495e62d83e62803af1decf8cf37e"}, "url": "/docs/compare/?release=9.2.14#9.2.14-5ab40998afc40591", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "4886f433ebe331decda4fe091ac47825", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复numeric值相乘时罕见的内部溢出", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "05deb5897b8df4af1be5e0ade77d0f342c64495e62d83e62803af1decf8cf37e"}, "url": "/docs/compare/?release=9.1.19#9.1.19-5ab40998afc40591", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "5502408247c918ed511b18a820bedbf6", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复numeric值相乘时罕见的内部溢出", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "05deb5897b8df4af1be5e0ade77d0f342c64495e62d83e62803af1decf8cf37e"}, "url": "/docs/compare/?release=9.0.23#9.0.23-5ab40998afc40591", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-37de803dae4265c4", "cves": [], "html": "<p>防范涉及记录类型、范围类型、<code>json</code>、<code>jsonb</code>、<code>tsquery</code>、<code>ltxtquery</code> 和 <code>query_int</code> 的难以触发的栈溢出（Noah Misch）</p>", "text": "防范涉及记录类型、范围类型、json、jsonb、tsquery、ltxtquery 和 query_int 的难以触发的栈溢出（Noah Misch）", "title": "防范涉及记录类型、范围类型、json、jsonb、tsquery、ltxtquery 和 query_int 的难以触发的栈溢出", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "8b968dd9d281af74b0d9d091e2fd9e106b20a61874e1693440a211468707cd1e", "section_path": ["变更"], "commit_groups": [["0398e071a", "30cb12881", "5e43130b5", "9286ff78f", "9581e2699", "a0c02ed5b", "acf0da1e6"], ["28dea9485", "5976097c0", "682a25d41", "7bed97d48", "879877b00", "bed3f6d03", "ea68c221f"], ["8dacb29ca"]], "identity_text": "Guard against hard-to-reach stack overflows involving record types, range types, json, jsonb, tsquery, ltxtquery and query_int (Noah Misch)", "commit_aliases": ["0398e071a", "28dea9485", "30cb12881", "5976097c0", "5e43130b5", "682a25d41", "7bed97d48", "879877b00", "8dacb29ca", "9286ff78f", "9581e2699", "a0c02ed5b", "acf0da1e6", "bed3f6d03", "ea68c221f"], "source_commits": ["8dacb29ca", "a0c02ed5b", "bed3f6d03"], "source_entry_id": "9.4.5/changes/015", "db_id": "c4ebf4355c4dc6b78b3d850807e2a110", "patch_ids": ["14dc869b3a0e90eff0850ebba04cf58a", "5a0cbd42da7bdfa9a13dfc233a00ada8", "e0c7216222f644eb821867139bd83ce8"], "statement_hash": "2caac7a754e254046f5ce76a761e2a06ed4c5c87ccf2350fe83e6fb908dfd249", "relations": [{"rule": 2, "type": "equivalent", "target": "0f19e1e89543fb6a02605f737f84e6d8", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2caac7a754e254046f5ce76a761e2a06ed4c5c87ccf2350fe83e6fb908dfd249"}}, {"rule": 2, "type": "equivalent", "target": "448cc116f84055189ca00d97c7c221d7", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2caac7a754e254046f5ce76a761e2a06ed4c5c87ccf2350fe83e6fb908dfd249"}}, {"rule": 2, "type": "equivalent", "target": "94c672bfb1491ed006e73ea4d593cc01", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2caac7a754e254046f5ce76a761e2a06ed4c5c87ccf2350fe83e6fb908dfd249"}}, {"rule": 2, "type": "equivalent", "target": "acdeb71eaf4e3e4f487e6bbe3cf2858e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2caac7a754e254046f5ce76a761e2a06ed4c5c87ccf2350fe83e6fb908dfd249"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "acdeb71eaf4e3e4f487e6bbe3cf2858e", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "防御涉及记录类型、范围类型、json、jsonb、tsquery、ltxtquery和query_int的难以触发的栈溢出", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2caac7a754e254046f5ce76a761e2a06ed4c5c87ccf2350fe83e6fb908dfd249"}, "url": "/docs/compare/?release=9.3.10#9.3.10-8100bad273f60224", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "94c672bfb1491ed006e73ea4d593cc01", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "防御涉及记录类型、范围类型、json、jsonb、tsquery、ltxtquery和query_int的难以触发的栈溢出", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2caac7a754e254046f5ce76a761e2a06ed4c5c87ccf2350fe83e6fb908dfd249"}, "url": "/docs/compare/?release=9.2.14#9.2.14-8100bad273f60224", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "0f19e1e89543fb6a02605f737f84e6d8", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "防御涉及记录类型、范围类型、json、jsonb、tsquery、ltxtquery和query_int的难以触发的栈溢出", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2caac7a754e254046f5ce76a761e2a06ed4c5c87ccf2350fe83e6fb908dfd249"}, "url": "/docs/compare/?release=9.1.19#9.1.19-8100bad273f60224", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "448cc116f84055189ca00d97c7c221d7", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "防御涉及记录类型、范围类型、json、jsonb、tsquery、ltxtquery和query_int的难以触发的栈溢出", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2caac7a754e254046f5ce76a761e2a06ed4c5c87ccf2350fe83e6fb908dfd249"}, "url": "/docs/compare/?release=9.0.23#9.0.23-8100bad273f60224", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-e3b09b3da48aaee2", "cves": [], "html": "<p>修复日期时间输入中<code>DOW</code>和<code>DOY</code>的处理（Greg Stark）</p>\n<p>这些记号本不应在日期时间值中使用，但过去它们导致的是难懂的内部错误消息，而不是<span>“<span>无效的输入语法</span>”</span>。</p>", "text": "修复日期时间输入中DOW和DOY的处理（Greg Stark） 这些记号本不应在日期时间值中使用，但过去它们导致的是难懂的内部错误消息，而不是“无效的输入语法”。", "title": "修复日期时间输入中DOW和DOY的处理", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "1fdedf1e28ad2ec6723b2f889c003c56ddbc73ac13f8d2da440a4efa992e04d3", "section_path": ["变更"], "commit_groups": [["0198a8d82", "0252d7777", "37239ef8c", "92d956f51", "a12424028", "af9d9e59c", "fde40e53f"], ["07cef3eb8", "258ee1b63", "530d0c504", "b17ce6208", "c11100d0f", "dd04d43bf", "f4afbe065"]], "identity_text": "Fix handling of DOW and DOY in datetime input (Greg Stark) These tokens aren't meant to be used in datetime values, but previously they resulted in opaque internal error messages rather than invalid input syntax.", "commit_aliases": ["0198a8d82", "0252d7777", "07cef3eb8", "258ee1b63", "37239ef8c", "530d0c504", "92d956f51", "a12424028", "af9d9e59c", "b17ce6208", "c11100d0f", "dd04d43bf", "f4afbe065", "fde40e53f"], "source_commits": ["0198a8d82", "b17ce6208"], "source_entry_id": "9.4.5/changes/016", "db_id": "e956398d9a072b0e752e96000aa59eb0", "patch_ids": ["120b270032f3ced547fd2292081e95f2", "4747f561893efbad61d426974f5c351b"], "statement_hash": "a60683eab520756350b91e272b353000ae5c8f978ed2523e29be38e220a7aec0", "relations": [{"rule": 2, "type": "equivalent", "target": "550277d2b6e5ec7889815ee2a22a9c68", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a60683eab520756350b91e272b353000ae5c8f978ed2523e29be38e220a7aec0"}}, {"rule": 2, "type": "equivalent", "target": "a5e76c5c33fc0a737dac299dad0a217e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a60683eab520756350b91e272b353000ae5c8f978ed2523e29be38e220a7aec0"}}, {"rule": 2, "type": "equivalent", "target": "afd07277e2b605eeee4173bbc9e65be9", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a60683eab520756350b91e272b353000ae5c8f978ed2523e29be38e220a7aec0"}}, {"rule": 2, "type": "equivalent", "target": "b8c8c2b6a6a1518b538d10da2965040a", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a60683eab520756350b91e272b353000ae5c8f978ed2523e29be38e220a7aec0"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "550277d2b6e5ec7889815ee2a22a9c68", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复日期时间输入中DOW和DOY的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a60683eab520756350b91e272b353000ae5c8f978ed2523e29be38e220a7aec0"}, "url": "/docs/compare/?release=9.3.10#9.3.10-e3b09b3da48aaee2", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "a5e76c5c33fc0a737dac299dad0a217e", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复日期时间输入中DOW和DOY的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a60683eab520756350b91e272b353000ae5c8f978ed2523e29be38e220a7aec0"}, "url": "/docs/compare/?release=9.2.14#9.2.14-e3b09b3da48aaee2", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "afd07277e2b605eeee4173bbc9e65be9", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复日期时间输入中DOW和DOY的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a60683eab520756350b91e272b353000ae5c8f978ed2523e29be38e220a7aec0"}, "url": "/docs/compare/?release=9.1.19#9.1.19-e3b09b3da48aaee2", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "b8c8c2b6a6a1518b538d10da2965040a", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复日期时间输入中DOW和DOY的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a60683eab520756350b91e272b353000ae5c8f978ed2523e29be38e220a7aec0"}, "url": "/docs/compare/?release=9.0.23#9.0.23-e3b09b3da48aaee2", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-93260934408f43ce", "cves": [], "html": "<p>为正则表达式匹配添加更多查询取消检查（Tom Lane）</p>", "text": "为正则表达式匹配添加更多查询取消检查（Tom Lane）", "title": "为正则表达式匹配添加更多查询取消检查", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "8a7afc43fed40ce0df3f3379b70fef1d12153e00b54e8c7dc9ca50e4046be25f", "section_path": ["变更"], "commit_groups": [["109def032", "2d51f55ff", "384ce1b75", "9fe8fe9c9", "bb704a781", "d4f6488ec", "da8ff2920"]], "identity_text": "Add more query-cancel checks to regular expression matching (Tom Lane)", "commit_aliases": ["109def032", "2d51f55ff", "384ce1b75", "9fe8fe9c9", "bb704a781", "d4f6488ec", "da8ff2920"], "source_commits": ["109def032"], "source_entry_id": "9.4.5/changes/017", "db_id": "7266256a7131960af28efd9fd98aa274", "patch_ids": ["6b3ee3652b27180fd06ce19caebcf733"], "statement_hash": "6d587adedff3b3cdea732e6835afc76902fb01483b956e50f4161de6fbe64341", "relations": [{"rule": 2, "type": "equivalent", "target": "92d4603af387a83116b858ea9acc69c2", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6d587adedff3b3cdea732e6835afc76902fb01483b956e50f4161de6fbe64341"}}, {"rule": 2, "type": "equivalent", "target": "abd3dbc49f67062d6bbf29f35756bcdb", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6d587adedff3b3cdea732e6835afc76902fb01483b956e50f4161de6fbe64341"}}, {"rule": 2, "type": "equivalent", "target": "d38f19226a31e1d2de199dd83b700c32", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6d587adedff3b3cdea732e6835afc76902fb01483b956e50f4161de6fbe64341"}}, {"rule": 2, "type": "equivalent", "target": "e7ffed1e8f2bd8d7d1f83087fdce5e49", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6d587adedff3b3cdea732e6835afc76902fb01483b956e50f4161de6fbe64341"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "d38f19226a31e1d2de199dd83b700c32", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "在正则表达式匹配中增加更多查询取消检查", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6d587adedff3b3cdea732e6835afc76902fb01483b956e50f4161de6fbe64341"}, "url": "/docs/compare/?release=9.3.10#9.3.10-73d05fdc9193cd00", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "abd3dbc49f67062d6bbf29f35756bcdb", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "在正则表达式匹配中增加更多查询取消检查", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6d587adedff3b3cdea732e6835afc76902fb01483b956e50f4161de6fbe64341"}, "url": "/docs/compare/?release=9.2.14#9.2.14-73d05fdc9193cd00", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "e7ffed1e8f2bd8d7d1f83087fdce5e49", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "在正则表达式匹配中增加更多查询取消检查", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6d587adedff3b3cdea732e6835afc76902fb01483b956e50f4161de6fbe64341"}, "url": "/docs/compare/?release=9.1.19#9.1.19-73d05fdc9193cd00", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "92d4603af387a83116b858ea9acc69c2", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "在正则表达式匹配中增加更多查询取消检查", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6d587adedff3b3cdea732e6835afc76902fb01483b956e50f4161de6fbe64341"}, "url": "/docs/compare/?release=9.0.23#9.0.23-73d05fdc9193cd00", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-40187d5a1ef2a1fa", "cves": [], "html": "<p>为正则表达式、<code>SIMILAR TO</code>和<code>LIKE</code>匹配增加递归深度保护（Tom Lane）</p>\n<p>合适的搜索模式加上较低的栈深度限制可能导致栈越界崩溃。</p>", "text": "为正则表达式、SIMILAR TO和LIKE匹配增加递归深度保护（Tom Lane） 合适的搜索模式加上较低的栈深度限制可能导致栈越界崩溃。", "title": "为正则表达式、SIMILAR TO和LIKE匹配增加递归深度保护", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "1653398412eba78a8892b25dec344935c4dde2674cac5da962c584275e4677c9", "section_path": ["变更"], "commit_groups": [["20c627707", "54b116d83", "9ed207ae9", "a0c089f33", "b63fc2877", "c5e38b93c", "e7de1bc09"], ["2e8cfcf4e", "4175cc604", "57bf7b548", "b875ca09f", "bb1d97961", "bdc5d95b6", "f80af0117"]], "identity_text": "Add recursion depth protections to regular expression, SIMILAR TO, and LIKE matching (Tom Lane) Suitable search patterns and a low stack depth limit could lead to stack-overrun crashes.", "commit_aliases": ["20c627707", "2e8cfcf4e", "4175cc604", "54b116d83", "57bf7b548", "9ed207ae9", "a0c089f33", "b63fc2877", "b875ca09f", "bb1d97961", "bdc5d95b6", "c5e38b93c", "e7de1bc09", "f80af0117"], "source_commits": ["bb1d97961", "c5e38b93c"], "source_entry_id": "9.4.5/changes/018", "db_id": "cdd7ae2408686e21de864f9162eae3de", "patch_ids": ["82b0ab604fe45d47eb614dcb4eaa5ae0", "c82c91461826e74aff3ac42e42f52a29"], "statement_hash": "227106552953dea974aebad9e87128454bb0768a695ed1cd67e1d87357ffb70f", "relations": [{"rule": 2, "type": "equivalent", "target": "7679459797be8fb01e2a810f5dc40f04", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "227106552953dea974aebad9e87128454bb0768a695ed1cd67e1d87357ffb70f"}}, {"rule": 2, "type": "equivalent", "target": "818306610d3baa973fd21dbff001ffc6", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "227106552953dea974aebad9e87128454bb0768a695ed1cd67e1d87357ffb70f"}}, {"rule": 2, "type": "equivalent", "target": "a89e2f1a91f1ae30849a12b8b96cac26", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "227106552953dea974aebad9e87128454bb0768a695ed1cd67e1d87357ffb70f"}}, {"rule": 2, "type": "equivalent", "target": "c2d846a592e8a9443247bd5eca581dae", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "227106552953dea974aebad9e87128454bb0768a695ed1cd67e1d87357ffb70f"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "a89e2f1a91f1ae30849a12b8b96cac26", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "为正则表达式、SIMILAR TO和LIKE匹配增加递归深度保护", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "227106552953dea974aebad9e87128454bb0768a695ed1cd67e1d87357ffb70f"}, "url": "/docs/compare/?release=9.3.10#9.3.10-40187d5a1ef2a1fa", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "818306610d3baa973fd21dbff001ffc6", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "为正则表达式、SIMILAR TO和LIKE匹配增加递归深度保护", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "227106552953dea974aebad9e87128454bb0768a695ed1cd67e1d87357ffb70f"}, "url": "/docs/compare/?release=9.2.14#9.2.14-40187d5a1ef2a1fa", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "c2d846a592e8a9443247bd5eca581dae", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "为正则表达式、SIMILAR TO和LIKE匹配增加递归深度保护", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "227106552953dea974aebad9e87128454bb0768a695ed1cd67e1d87357ffb70f"}, "url": "/docs/compare/?release=9.1.19#9.1.19-40187d5a1ef2a1fa", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "7679459797be8fb01e2a810f5dc40f04", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "为正则表达式、SIMILAR TO和LIKE匹配增加递归深度保护", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "227106552953dea974aebad9e87128454bb0768a695ed1cd67e1d87357ffb70f"}, "url": "/docs/compare/?release=9.0.23#9.0.23-40187d5a1ef2a1fa", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-1ee08b25f685d25d", "cves": [], "html": "<p>修复正则表达式执行中潜在的无限循环（Tom Lane）</p>\n<p>一个表面上能匹配零长度字符串、但实际上因反向引用而不匹配的搜索模式可能导致无限循环。</p>", "text": "修复正则表达式执行中潜在的无限循环（Tom Lane） 一个表面上能匹配零长度字符串、但实际上因反向引用而不匹配的搜索模式可能导致无限循环。", "title": "修复正则表达式执行中潜在的无限循环", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "24d6425ddc8ba685291bcd76da85acf621498a57608e2c02df75f9377d09f580", "section_path": ["变更"], "commit_groups": [["2a8878289", "483bbc9fe", "51f235931", "630154955", "6b3810d0a", "c0215b2cf", "f2c4ffc33"]], "identity_text": "Fix potential infinite loop in regular expression execution (Tom Lane) A search pattern that can apparently match a zero-length string, but actually doesn't match because of a back reference, could lead to an infinite loop.", "commit_aliases": ["2a8878289", "483bbc9fe", "51f235931", "630154955", "6b3810d0a", "c0215b2cf", "f2c4ffc33"], "source_commits": ["c0215b2cf"], "source_entry_id": "9.4.5/changes/019", "db_id": "fc945b07f555953774864e6926724ffe", "patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"], "statement_hash": "f11ad5b71a365b5d17b4e1ab0061b04045ecdd03d728462b07b2c0628c18cfad", "relations": [{"rule": 2, "type": "equivalent", "target": "279ea9e221ed41c7e95e4a598fcf2a43", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f11ad5b71a365b5d17b4e1ab0061b04045ecdd03d728462b07b2c0628c18cfad", "ambiguous_patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"]}}, {"rule": 2, "type": "related", "target": "79fb45e4f168d400691fc8ba94db06b9", "evidence": {"same_day": true, "patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"], "ambiguous_patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"]}}, {"rule": 2, "type": "equivalent", "target": "bec69fa9ad8c58064418286eeb6c59bd", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f11ad5b71a365b5d17b4e1ab0061b04045ecdd03d728462b07b2c0628c18cfad", "ambiguous_patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"]}}, {"rule": 2, "type": "equivalent", "target": "cb2d1b3b7b5d23396456a383dc3c5d36", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f11ad5b71a365b5d17b4e1ab0061b04045ecdd03d728462b07b2c0628c18cfad", "ambiguous_patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"]}}, {"rule": 2, "type": "equivalent", "target": "e8c724103f22fa122f7d5c8bc3670880", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f11ad5b71a365b5d17b4e1ab0061b04045ecdd03d728462b07b2c0628c18cfad", "ambiguous_patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"]}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "79fb45e4f168d400691fc8ba94db06b9", "kind": "related", "version": "9.4.5", "label": "9.4.5", "title": "在正则表达式执行中，即使匹配长度为零，也正确记录量词内捕获括号的匹配数据", "evidence": {"same_day": true, "patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"], "ambiguous_patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"]}, "url": "/docs/compare/?release=9.4.5#9.4.5-54f61f20fae64118", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5"}, {"db_id": "cb2d1b3b7b5d23396456a383dc3c5d36", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复正则表达式执行中潜在的无限循环", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f11ad5b71a365b5d17b4e1ab0061b04045ecdd03d728462b07b2c0628c18cfad", "ambiguous_patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"]}, "url": "/docs/compare/?release=9.3.10#9.3.10-1ee08b25f685d25d", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "279ea9e221ed41c7e95e4a598fcf2a43", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复正则表达式执行中潜在的无限循环", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f11ad5b71a365b5d17b4e1ab0061b04045ecdd03d728462b07b2c0628c18cfad", "ambiguous_patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"]}, "url": "/docs/compare/?release=9.2.14#9.2.14-1ee08b25f685d25d", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "e8c724103f22fa122f7d5c8bc3670880", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复正则表达式执行中潜在的无限循环", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f11ad5b71a365b5d17b4e1ab0061b04045ecdd03d728462b07b2c0628c18cfad", "ambiguous_patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"]}, "url": "/docs/compare/?release=9.1.19#9.1.19-1ee08b25f685d25d", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "bec69fa9ad8c58064418286eeb6c59bd", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复正则表达式执行中潜在的无限循环", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f11ad5b71a365b5d17b4e1ab0061b04045ecdd03d728462b07b2c0628c18cfad", "ambiguous_patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"]}, "url": "/docs/compare/?release=9.0.23#9.0.23-1ee08b25f685d25d", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-54f61f20fae64118", "cves": [], "html": "<p>在正则表达式执行中，即使匹配长度为零，也正确记录量词内捕获括号的匹配数据（Tom Lane）</p>", "text": "在正则表达式执行中，即使匹配长度为零，也正确记录量词内捕获括号的匹配数据（Tom Lane）", "title": "在正则表达式执行中，即使匹配长度为零，也正确记录量词内捕获括号的匹配数据", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "8fd6460327703c06e26868e4051206ee891c81b3fbad8e2c77711a6a21ffc4b3", "section_path": ["变更"], "commit_groups": [["2a8878289", "483bbc9fe", "51f235931", "630154955", "6b3810d0a", "c0215b2cf", "f2c4ffc33"]], "identity_text": "In regular expression execution, correctly record match data for capturing parentheses within a quantifier even when the match is zero-length (Tom Lane)", "commit_aliases": ["2a8878289", "483bbc9fe", "51f235931", "630154955", "6b3810d0a", "c0215b2cf", "f2c4ffc33"], "source_commits": ["c0215b2cf"], "source_entry_id": "9.4.5/changes/020", "db_id": "79fb45e4f168d400691fc8ba94db06b9", "patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"], "statement_hash": "b6169748bf811205a2833e1681740be21342255e94406e519187dd36c3e6b947", "relations": [{"rule": 2, "type": "equivalent", "target": "8da1e00d91ee77293d007e97253f9dad", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b6169748bf811205a2833e1681740be21342255e94406e519187dd36c3e6b947", "ambiguous_patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"]}}, {"rule": 2, "type": "equivalent", "target": "dae4788a5b01d79eb295f34504163d5d", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b6169748bf811205a2833e1681740be21342255e94406e519187dd36c3e6b947", "ambiguous_patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"]}}, {"rule": 2, "type": "related", "target": "fc945b07f555953774864e6926724ffe", "evidence": {"same_day": true, "patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"], "ambiguous_patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"]}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "fc945b07f555953774864e6926724ffe", "kind": "related", "version": "9.4.5", "label": "9.4.5", "title": "修复正则表达式执行中潜在的无限循环", "evidence": {"same_day": true, "patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"], "ambiguous_patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"]}, "url": "/docs/compare/?release=9.4.5#9.4.5-1ee08b25f685d25d", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5"}, {"db_id": "dae4788a5b01d79eb295f34504163d5d", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "在正则表达式执行中，即使匹配长度为零，也正确记录量词内捕获括号的匹配数据", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b6169748bf811205a2833e1681740be21342255e94406e519187dd36c3e6b947", "ambiguous_patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"]}, "url": "/docs/compare/?release=9.3.10#9.3.10-54f61f20fae64118", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "8da1e00d91ee77293d007e97253f9dad", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "在正则表达式执行中，即使匹配长度为零，也正确记录量词内捕获括号的匹配数据", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b6169748bf811205a2833e1681740be21342255e94406e519187dd36c3e6b947", "ambiguous_patch_ids": ["0dd3c9e3b1e03fd9ed50e1f8b10ea81d"]}, "url": "/docs/compare/?release=9.2.14#9.2.14-54f61f20fae64118", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}]}, {"id": "9.4.5-7ed3287f6e8031db", "cves": [], "html": "<p>修复正则表达式编译中的内存不足失败（Andreas Seltenreich）</p>", "text": "修复正则表达式编译中的内存不足失败（Andreas Seltenreich）", "title": "修复正则表达式编译中的内存不足失败", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "040e27e49f5bca6065e93a67676a29e3de591083bc6f9ffe7912a419613aadc9", "section_path": ["变更"], "commit_groups": [["234205a2e", "7a801ba8c", "7e23b63bd", "8a0258c31", "a35a527f2", "a54875602", "c5bfcc18a"]], "identity_text": "Fix low-memory failures in regular expression compilation (Andreas Seltenreich)", "commit_aliases": ["234205a2e", "7a801ba8c", "7e23b63bd", "8a0258c31", "a35a527f2", "a54875602", "c5bfcc18a"], "source_commits": ["a35a527f2"], "source_entry_id": "9.4.5/changes/021", "db_id": "689562c2656643e9f67a2e9cd4446ccb", "patch_ids": ["c73517dd1848b4d5b170faf557ccfa67"], "statement_hash": "e8e3e6024e650366b752c07a9312ff54d03aeadc91c41b9d6690002c43b3aae5", "relations": [{"rule": 2, "type": "equivalent", "target": "2ee5b0aab07dc97baea7e3eee703c8c0", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e8e3e6024e650366b752c07a9312ff54d03aeadc91c41b9d6690002c43b3aae5"}}, {"rule": 2, "type": "equivalent", "target": "5375f6fcf20c490dc15305cb7c95d551", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e8e3e6024e650366b752c07a9312ff54d03aeadc91c41b9d6690002c43b3aae5"}}, {"rule": 2, "type": "equivalent", "target": "9a1d01050e60d0cff4be1a32e9507491", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e8e3e6024e650366b752c07a9312ff54d03aeadc91c41b9d6690002c43b3aae5"}}, {"rule": 2, "type": "equivalent", "target": "dd579e7a3fb0d2443ce86a0fd6af62c3", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e8e3e6024e650366b752c07a9312ff54d03aeadc91c41b9d6690002c43b3aae5"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "9a1d01050e60d0cff4be1a32e9507491", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复正则表达式编译中的内存不足失败", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e8e3e6024e650366b752c07a9312ff54d03aeadc91c41b9d6690002c43b3aae5"}, "url": "/docs/compare/?release=9.3.10#9.3.10-7ed3287f6e8031db", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "dd579e7a3fb0d2443ce86a0fd6af62c3", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复正则表达式编译中的内存不足失败", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e8e3e6024e650366b752c07a9312ff54d03aeadc91c41b9d6690002c43b3aae5"}, "url": "/docs/compare/?release=9.2.14#9.2.14-7ed3287f6e8031db", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "2ee5b0aab07dc97baea7e3eee703c8c0", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复正则表达式编译中的内存不足失败", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e8e3e6024e650366b752c07a9312ff54d03aeadc91c41b9d6690002c43b3aae5"}, "url": "/docs/compare/?release=9.1.19#9.1.19-7ed3287f6e8031db", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "5375f6fcf20c490dc15305cb7c95d551", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复正则表达式编译中的内存不足失败", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e8e3e6024e650366b752c07a9312ff54d03aeadc91c41b9d6690002c43b3aae5"}, "url": "/docs/compare/?release=9.0.23#9.0.23-7ed3287f6e8031db", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-820fa1702d3933dd", "cves": [], "html": "<p>修复正则表达式执行期间低概率的内存泄漏（Tom Lane）</p>", "text": "修复正则表达式执行期间低概率的内存泄漏（Tom Lane）", "title": "修复正则表达式执行期间低概率的内存泄漏", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "a6cba07efef60b3c44de825318ce3448ae6166866eb932ffe1241728f4d2de24", "section_path": ["变更"], "commit_groups": [["28c396134", "a39331fa5", "b84310808", "ba9eb293f", "d9c0c728a", "dc4e8c101", "f7d896ab9"]], "identity_text": "Fix low-probability memory leak during regular expression execution (Tom Lane)", "commit_aliases": ["28c396134", "a39331fa5", "b84310808", "ba9eb293f", "d9c0c728a", "dc4e8c101", "f7d896ab9"], "source_commits": ["f7d896ab9"], "source_entry_id": "9.4.5/changes/022", "db_id": "5620480a02a777838ffdbdd9eeb14f2a", "patch_ids": ["9acab120738c19a6e74c1f22a61787e1"], "statement_hash": "e1aeca37f50f07ff2163425fc1dc5b5bce78a83ded44c6097d4aadfb43350312", "relations": [{"rule": 2, "type": "equivalent", "target": "3569baaf6ccd7c0326212a9ca5fe9266", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e1aeca37f50f07ff2163425fc1dc5b5bce78a83ded44c6097d4aadfb43350312"}}, {"rule": 2, "type": "equivalent", "target": "7729fa3ac73c1f361c40a4653e5b31af", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e1aeca37f50f07ff2163425fc1dc5b5bce78a83ded44c6097d4aadfb43350312"}}, {"rule": 2, "type": "equivalent", "target": "8b182f146aa3144f27f78c2f2c53a138", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e1aeca37f50f07ff2163425fc1dc5b5bce78a83ded44c6097d4aadfb43350312"}}, {"rule": 2, "type": "equivalent", "target": "cb7f77ef521bd8e4fa7fcbcebd7f69f2", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e1aeca37f50f07ff2163425fc1dc5b5bce78a83ded44c6097d4aadfb43350312"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "7729fa3ac73c1f361c40a4653e5b31af", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复正则表达式执行期间低概率的内存泄漏", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e1aeca37f50f07ff2163425fc1dc5b5bce78a83ded44c6097d4aadfb43350312"}, "url": "/docs/compare/?release=9.3.10#9.3.10-820fa1702d3933dd", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "3569baaf6ccd7c0326212a9ca5fe9266", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复正则表达式执行期间低概率的内存泄漏", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e1aeca37f50f07ff2163425fc1dc5b5bce78a83ded44c6097d4aadfb43350312"}, "url": "/docs/compare/?release=9.2.14#9.2.14-820fa1702d3933dd", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "8b182f146aa3144f27f78c2f2c53a138", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复正则表达式执行期间低概率的内存泄漏", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e1aeca37f50f07ff2163425fc1dc5b5bce78a83ded44c6097d4aadfb43350312"}, "url": "/docs/compare/?release=9.1.19#9.1.19-820fa1702d3933dd", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "cb7f77ef521bd8e4fa7fcbcebd7f69f2", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复正则表达式执行期间低概率的内存泄漏", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e1aeca37f50f07ff2163425fc1dc5b5bce78a83ded44c6097d4aadfb43350312"}, "url": "/docs/compare/?release=9.0.23#9.0.23-820fa1702d3933dd", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-882837d9208aba2c", "cves": [], "html": "<p>修复事务中止期间锁清理中罕见的内存不足失败（Tom Lane）</p>", "text": "修复事务中止期间锁清理中罕见的内存不足失败（Tom Lane）", "title": "修复事务中止期间锁清理中罕见的内存不足失败", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "b20b4037f7eb64d11bb45d698af078fcb1d627f64ce59bdace35dfc23d54b43e", "section_path": ["变更"], "commit_groups": [["3d3bc2905", "553ce7e9a", "7e6e3bdd3", "ac0c71228", "ba51774d8", "e32c5f118", "eed5bbc48"]], "identity_text": "Fix rare low-memory failure in lock cleanup during transaction abort (Tom Lane)", "commit_aliases": ["3d3bc2905", "553ce7e9a", "7e6e3bdd3", "ac0c71228", "ba51774d8", "e32c5f118", "eed5bbc48"], "source_commits": ["e32c5f118"], "source_entry_id": "9.4.5/changes/023", "db_id": "e8c60673cd2c09b5df1303638c5b7952", "patch_ids": ["15e1d6133454ee2458ed7b231911d13d"], "statement_hash": "ef9ff008b676cae3ddc8dad59f4cf1d9ade68b447904b78f8a4724a933834321", "relations": [{"rule": 2, "type": "equivalent", "target": "1c80328fe1bf3212080956e2cd5d357c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ef9ff008b676cae3ddc8dad59f4cf1d9ade68b447904b78f8a4724a933834321"}}, {"rule": 2, "type": "equivalent", "target": "2d0858f9af159c52152a2bd72148cad1", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ef9ff008b676cae3ddc8dad59f4cf1d9ade68b447904b78f8a4724a933834321"}}, {"rule": 2, "type": "equivalent", "target": "398b10e6c4fd6ee177fd18f0f7842100", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ef9ff008b676cae3ddc8dad59f4cf1d9ade68b447904b78f8a4724a933834321"}}, {"rule": 2, "type": "equivalent", "target": "e1d79e9551a39f2d3e07aca62d21fec0", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ef9ff008b676cae3ddc8dad59f4cf1d9ade68b447904b78f8a4724a933834321"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "e1d79e9551a39f2d3e07aca62d21fec0", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复事务中止期间锁清理中罕见的内存不足失败", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ef9ff008b676cae3ddc8dad59f4cf1d9ade68b447904b78f8a4724a933834321"}, "url": "/docs/compare/?release=9.3.10#9.3.10-882837d9208aba2c", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "398b10e6c4fd6ee177fd18f0f7842100", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复事务中止期间锁清理中罕见的内存不足失败", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ef9ff008b676cae3ddc8dad59f4cf1d9ade68b447904b78f8a4724a933834321"}, "url": "/docs/compare/?release=9.2.14#9.2.14-882837d9208aba2c", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "2d0858f9af159c52152a2bd72148cad1", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复事务中止期间锁清理中罕见的内存不足失败", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ef9ff008b676cae3ddc8dad59f4cf1d9ade68b447904b78f8a4724a933834321"}, "url": "/docs/compare/?release=9.1.19#9.1.19-882837d9208aba2c", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "1c80328fe1bf3212080956e2cd5d357c", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复事务中止期间锁清理中罕见的内存不足失败", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ef9ff008b676cae3ddc8dad59f4cf1d9ade68b447904b78f8a4724a933834321"}, "url": "/docs/compare/?release=9.0.23#9.0.23-882837d9208aba2c", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-d2105a714744e2a7", "cves": [], "html": "<p>修复使用较小 <code>work_mem</code> 设置的元组存储时出现的 <span>“<span>unexpected out-of-memory situation during sort</span>”</span> 错误（Tom Lane）</p>", "text": "修复使用较小 work_mem 设置的元组存储时出现的 “unexpected out-of-memory situation during sort” 错误（Tom Lane）", "title": "修复使用较小 work_mem 设置的元组存储时出现的 “unexpected out-of-memory situation during sort” 错误", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "0c7f4960b1a08277332d7a2f69262ad46c9ccea5faedb945946702a6f36c9f4e", "section_path": ["变更"], "commit_groups": [["118c9bb8d", "8bd45a394", "8ea3e7a75", "9965aff1c", "b6659a3b9", "bd327627f", "e2035dc9a"]], "identity_text": "Fix unexpected out-of-memory situation during sort errors when using tuplestores with small work_mem settings (Tom Lane)", "commit_aliases": ["118c9bb8d", "8bd45a394", "8ea3e7a75", "9965aff1c", "b6659a3b9", "bd327627f", "e2035dc9a"], "source_commits": ["118c9bb8d"], "source_entry_id": "9.4.5/changes/024", "db_id": "7d1d07a9b111006ce4d1c8b93e6d6006", "patch_ids": ["9181ebac98fa09ce8b122944e31f495e"], "statement_hash": "82b18817d79024741b24ce37726d80d275a694e9d0e86ea05fdd3fb7bf55abe7", "relations": [{"rule": 2, "type": "equivalent", "target": "19617dfea9d462b377bd1a7e7fd60f21", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "82b18817d79024741b24ce37726d80d275a694e9d0e86ea05fdd3fb7bf55abe7"}}, {"rule": 2, "type": "equivalent", "target": "2ce2b935dc8c8afc6675f1b8594cbc7c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "82b18817d79024741b24ce37726d80d275a694e9d0e86ea05fdd3fb7bf55abe7"}}, {"rule": 2, "type": "equivalent", "target": "bb8b298f539b8ed6b225644dc8bb095e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "82b18817d79024741b24ce37726d80d275a694e9d0e86ea05fdd3fb7bf55abe7"}}, {"rule": 2, "type": "equivalent", "target": "f571ddeeb636cd240ccfc45e9583cb4c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "82b18817d79024741b24ce37726d80d275a694e9d0e86ea05fdd3fb7bf55abe7"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "2ce2b935dc8c8afc6675f1b8594cbc7c", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复在使用较小work_mem设置的元组存储时出现“排序期间意外的内存不足情况”错误的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "82b18817d79024741b24ce37726d80d275a694e9d0e86ea05fdd3fb7bf55abe7"}, "url": "/docs/compare/?release=9.3.10#9.3.10-700b43edae0d2b89", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "19617dfea9d462b377bd1a7e7fd60f21", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复在使用较小work_mem设置的元组存储时出现“排序期间意外的内存不足情况”错误的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "82b18817d79024741b24ce37726d80d275a694e9d0e86ea05fdd3fb7bf55abe7"}, "url": "/docs/compare/?release=9.2.14#9.2.14-700b43edae0d2b89", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "f571ddeeb636cd240ccfc45e9583cb4c", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复在使用较小work_mem设置的元组存储时出现“排序期间意外的内存不足情况”错误的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "82b18817d79024741b24ce37726d80d275a694e9d0e86ea05fdd3fb7bf55abe7"}, "url": "/docs/compare/?release=9.1.19#9.1.19-700b43edae0d2b89", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "bb8b298f539b8ed6b225644dc8bb095e", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复在使用较小work_mem设置的元组存储时出现“排序期间意外的内存不足情况”错误的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "82b18817d79024741b24ce37726d80d275a694e9d0e86ea05fdd3fb7bf55abe7"}, "url": "/docs/compare/?release=9.0.23#9.0.23-700b43edae0d2b89", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-072e3e992090ff1d", "cves": [], "html": "<p>修复 <code>qsort</code> 中概率极低的栈越界（Tom Lane）</p>", "text": "修复 qsort 中概率极低的栈越界（Tom Lane）", "title": "修复 qsort 中概率极低的栈越界", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "347002ed17daea8b2a248019c4b75aed10807e692f942d956ff64aa9836d60f3", "section_path": ["变更"], "commit_groups": [["15ca2b6cd", "36522d627", "730089d87", "9d6077abf", "b8f368276", "faef3dc28", "fd415ffc9"]], "identity_text": "Fix very-low-probability stack overrun in qsort (Tom Lane)", "commit_aliases": ["15ca2b6cd", "36522d627", "730089d87", "9d6077abf", "b8f368276", "faef3dc28", "fd415ffc9"], "source_commits": ["b8f368276"], "source_entry_id": "9.4.5/changes/025", "db_id": "7042a4b028a4cedfae626b921d273ca7", "patch_ids": ["8a0663e49fc6b7a9baa235564abb3e85"], "statement_hash": "e3b499664f8fb62e376103d3d50ea6a0699384578ff8fd661652b0445a5c7568", "relations": [{"rule": 2, "type": "equivalent", "target": "2eb1ed0bc1a3fd4a1ec0f04f426eb8d6", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e3b499664f8fb62e376103d3d50ea6a0699384578ff8fd661652b0445a5c7568"}}, {"rule": 2, "type": "equivalent", "target": "5cd89e6b2f86dbefb5a19049e778eea4", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e3b499664f8fb62e376103d3d50ea6a0699384578ff8fd661652b0445a5c7568"}}, {"rule": 2, "type": "equivalent", "target": "80ffb6efa145b4f90987b6bc47189fae", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e3b499664f8fb62e376103d3d50ea6a0699384578ff8fd661652b0445a5c7568"}}, {"rule": 2, "type": "equivalent", "target": "ff46f74d394152bd0ac33ec2f0ab7de0", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e3b499664f8fb62e376103d3d50ea6a0699384578ff8fd661652b0445a5c7568"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "80ffb6efa145b4f90987b6bc47189fae", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复qsort中极低概率的栈越界", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e3b499664f8fb62e376103d3d50ea6a0699384578ff8fd661652b0445a5c7568"}, "url": "/docs/compare/?release=9.3.10#9.3.10-fc08df29ee185ac7", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "2eb1ed0bc1a3fd4a1ec0f04f426eb8d6", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复qsort中极低概率的栈越界", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e3b499664f8fb62e376103d3d50ea6a0699384578ff8fd661652b0445a5c7568"}, "url": "/docs/compare/?release=9.2.14#9.2.14-fc08df29ee185ac7", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "5cd89e6b2f86dbefb5a19049e778eea4", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复qsort中极低概率的栈越界", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e3b499664f8fb62e376103d3d50ea6a0699384578ff8fd661652b0445a5c7568"}, "url": "/docs/compare/?release=9.1.19#9.1.19-fc08df29ee185ac7", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "ff46f74d394152bd0ac33ec2f0ab7de0", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复qsort中极低概率的栈越界", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e3b499664f8fb62e376103d3d50ea6a0699384578ff8fd661652b0445a5c7568"}, "url": "/docs/compare/?release=9.0.23#9.0.23-fc08df29ee185ac7", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-5b7d691ff7dcf7d1", "cves": [], "html": "<p>修复使用较大 <code>work_mem</code> 设置的哈希连接中出现的 <span>“<span>invalid memory alloc request size</span>”</span> 失败（Tomas Vondra、Tom Lane）</p>", "text": "修复使用较大 work_mem 设置的哈希连接中出现的 “invalid memory alloc request size” 失败（Tomas Vondra、Tom Lane）", "title": "修复使用较大 work_mem 设置的哈希连接中出现的 “invalid memory alloc request size” 失败", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "cad8a3637e9f19db0b1d4ad631dedc5c9db4ebd041c1df2aa56e959a8b2bc533", "section_path": ["变更"], "commit_groups": [["0867e0ad5", "4075fc4b9", "d637a899c", "d84cc40e4", "ebc7d928a"], ["2647b245d", "45dd7cdba", "a8168fbcb", "e5c94c7bb", "f2fc98fb8", "fd3e3cf50", "ff4cbc1ff"]], "identity_text": "Fix invalid memory alloc request size failure in hash joins with large work_mem settings (Tomas Vondra, Tom Lane)", "commit_aliases": ["0867e0ad5", "2647b245d", "4075fc4b9", "45dd7cdba", "a8168fbcb", "d637a899c", "d84cc40e4", "e5c94c7bb", "ebc7d928a", "f2fc98fb8", "fd3e3cf50", "ff4cbc1ff"], "source_commits": ["4075fc4b9", "ff4cbc1ff"], "source_entry_id": "9.4.5/changes/026", "db_id": "f362c103f4b53650392849472c55a2eb", "patch_ids": ["218e3b1f8f9d23bb4169e9bd886a0cd8", "f76a344eeb96a077e5cfcddcfc195614"], "statement_hash": "1fcd8dacb9d4d61daa6e284a81b62e58797afb90983ef458a6629510b810567b", "relations": [{"rule": 2, "type": "equivalent", "target": "065d9414db1d95492b8172513fd89307", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1fcd8dacb9d4d61daa6e284a81b62e58797afb90983ef458a6629510b810567b"}}, {"rule": 2, "type": "equivalent", "target": "72eb05bbdce2127867fbe2b288c23160", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1fcd8dacb9d4d61daa6e284a81b62e58797afb90983ef458a6629510b810567b"}}, {"rule": 2, "type": "equivalent", "target": "899bf404646744816ec749decde09389", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1fcd8dacb9d4d61daa6e284a81b62e58797afb90983ef458a6629510b810567b"}}, {"rule": 2, "type": "equivalent", "target": "98189d3a6f8f14946986342f6c0b7f96", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1fcd8dacb9d4d61daa6e284a81b62e58797afb90983ef458a6629510b810567b"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "899bf404646744816ec749decde09389", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复在使用较大work_mem设置的哈希连接中出现“无效的内存分配请求大小”失败的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1fcd8dacb9d4d61daa6e284a81b62e58797afb90983ef458a6629510b810567b"}, "url": "/docs/compare/?release=9.3.10#9.3.10-6763689d1f8fe56f", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "72eb05bbdce2127867fbe2b288c23160", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复在使用较大work_mem设置的哈希连接中出现“无效的内存分配请求大小”失败的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1fcd8dacb9d4d61daa6e284a81b62e58797afb90983ef458a6629510b810567b"}, "url": "/docs/compare/?release=9.2.14#9.2.14-6763689d1f8fe56f", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "98189d3a6f8f14946986342f6c0b7f96", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复在使用较大work_mem设置的哈希连接中出现“无效的内存分配请求大小”失败的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1fcd8dacb9d4d61daa6e284a81b62e58797afb90983ef458a6629510b810567b"}, "url": "/docs/compare/?release=9.1.19#9.1.19-6763689d1f8fe56f", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "065d9414db1d95492b8172513fd89307", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复在使用较大work_mem设置的哈希连接中出现“无效的内存分配请求大小”失败的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1fcd8dacb9d4d61daa6e284a81b62e58797afb90983ef458a6629510b810567b"}, "url": "/docs/compare/?release=9.0.23#9.0.23-6763689d1f8fe56f", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-d211afb454701ad5", "cves": [], "html": "<p>修复若干规划器缺陷（Tom Lane）</p>\n<p>这些错误可能导致给出错误结果的错误查询计划、启用断言的构建中的断言失败，或奇怪的规划器错误，例如<span>“<span>could not devise a query plan for the given query</span>”</span>、<span>“<span>could not find pathkey item to sort</span>”</span>、<span>“<span>plan should not reference subplan's variable</span>”</span>或<span>“<span>failed to assign all NestLoopParams to plan nodes</span>”</span>。感谢 Andreas Seltenreich 和 Piotr Stefaniak 通过模糊测试暴露了这些问题。</p>", "text": "修复若干规划器缺陷（Tom Lane） 这些错误可能导致给出错误结果的错误查询计划、启用断言的构建中的断言失败，或奇怪的规划器错误，例如“could not devise a query plan for the given query”、“could not find pathkey item to sort”、“plan should not reference subplan's variable”或“failed to assign all NestLoopParams to plan nodes”。感谢 Andreas Seltenreich 和 Piotr Stefaniak 通过模糊测试暴露了这些问题。", "title": "修复若干规划器缺陷", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "cbcd7a12c91d32e0b8f712d902bb0405ff8a2b398514c30b0a939d77c324a392", "section_path": ["变更"], "commit_groups": [["06663971b", "08dee567e", "48d4f1e39", "4d94b5f1f", "6af9ee4c8", "9bc4d5927", "c084f613e"], ["085338822", "30b4ccdab", "868bfd1f3", "89db83922"], ["0d4913509", "a8725c2ba", "cde35cf4a", "d31e79415"], ["1044541dc", "44618f92b", "44679965f", "7968238eb", "b9dfa07e8", "e39a3b2ef", "f69b4b949"], ["216977a7d", "a4df781c9", "a6492ff89", "edf26ed03"], ["33afbdd02", "359016d2e", "85e5e222b", "a6f43986b", "b58e8caf0"], ["3b4a9dbfa", "54833c5e7", "8693ebe37", "c7d171251", "caae9f764", "e91a1643a", "ea6e28649"], ["3e79144a8", "656b1e8cf", "754ece936", "7ef507ad7", "8703059c6", "d860ba43f", "df3b0f47b"], ["4200a9286", "54cea765c", "7371ab74f", "f6d7a79f4", "fda25b220"], ["4390ba7bf", "7950657a9", "7b4b57fc4", "866197d82", "8cd3a7ada", "cfe30a72f", "ec94bc147"], ["8c7bb0240", "bab163e12", "de0227d8a", "de5edc660"]], "identity_text": "Fix assorted planner bugs (Tom Lane) These mistakes could lead to incorrect query plans that would give wrong answers, or to assertion failures in assert-enabled builds, or to odd planner errors such as could not devise a query plan for the given query, could not find pathkey item to sort, plan should not reference subplan's variable, or failed to assign all NestLoopParams to plan nodes. Thanks are due to Andreas Seltenreich and Piotr Stefaniak for fuzz testing that exposed these problems.", "commit_aliases": ["06663971b", "085338822", "08dee567e", "0d4913509", "1044541dc", "216977a7d", "30b4ccdab", "33afbdd02", "359016d2e", "3b4a9dbfa", "3e79144a8", "4200a9286", "4390ba7bf", "44618f92b", "44679965f", "48d4f1e39", "4d94b5f1f", "54833c5e7", "54cea765c", "656b1e8cf", "6af9ee4c8", "7371ab74f", "754ece936", "7950657a9", "7968238eb", "7b4b57fc4", "7ef507ad7", "85e5e222b", "866197d82", "868bfd1f3", "8693ebe37", "8703059c6", "89db83922", "8c7bb0240", "8cd3a7ada", "9bc4d5927", "a4df781c9", "a6492ff89", "a6f43986b", "a8725c2ba", "b58e8caf0", "b9dfa07e8", "bab163e12", "c084f613e", "c7d171251", "caae9f764", "cde35cf4a", "cfe30a72f", "d31e79415", "d860ba43f", "de0227d8a", "de5edc660", "df3b0f47b", "e39a3b2ef", "e91a1643a", "ea6e28649", "ec94bc147", "edf26ed03", "f69b4b949", "f6d7a79f4", "fda25b220"], "source_commits": ["216977a7d", "30b4ccdab", "3b4a9dbfa", "4d94b5f1f", "7371ab74f", "7ef507ad7", "8c7bb0240", "8cd3a7ada", "b58e8caf0", "d31e79415", "e39a3b2ef"], "source_entry_id": "9.4.5/changes/027", "db_id": "9876a1ba5f4a978f6224e72391017450", "patch_ids": ["20c2ade818c41de85dfa9328dba686e9", "5c401f16520da7977675963289af55fb", "6d07aebeb742f0692839ec1bdef8d6f1", "7fb5088154ce92fca16c76a292e770bf", "8e3a76065b184239d59dff1e68f65f18", "9cb7f2b858e5fed5a88a4839d3ba3139", "c57259a05778067da5998cc86f3242c6", "da554466391071d80d99e562ff624d00", "e1ffb5a39d3f5732a3469bb98e724c6b", "e6c435051092c8da0faf6a77f46a4afe", "fbfb6cbc062d95def1dd0eee2941729b"], "statement_hash": "2d3846439546a9941457d4bd59e0d4b0b2cb677b935bbeaeee5bd664c9e2dc18", "relations": [{"rule": 2, "type": "equivalent", "target": "03265e524f1a5d7d030d8521d387f7b0", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2d3846439546a9941457d4bd59e0d4b0b2cb677b935bbeaeee5bd664c9e2dc18"}}, {"rule": 2, "type": "equivalent", "target": "0d4c56b3be3cd3a0ea07c0418296c330", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2d3846439546a9941457d4bd59e0d4b0b2cb677b935bbeaeee5bd664c9e2dc18"}}, {"rule": 2, "type": "equivalent", "target": "f3094de8f2f0e1950bbaf1448c49b82f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2d3846439546a9941457d4bd59e0d4b0b2cb677b935bbeaeee5bd664c9e2dc18"}}, {"rule": 2, "type": "equivalent", "target": "f42938d940ea6405d0b147d1ea386823", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2d3846439546a9941457d4bd59e0d4b0b2cb677b935bbeaeee5bd664c9e2dc18"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "f42938d940ea6405d0b147d1ea386823", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复若干规划器缺陷", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2d3846439546a9941457d4bd59e0d4b0b2cb677b935bbeaeee5bd664c9e2dc18"}, "url": "/docs/compare/?release=9.3.10#9.3.10-d211afb454701ad5", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "03265e524f1a5d7d030d8521d387f7b0", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复若干规划器缺陷", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2d3846439546a9941457d4bd59e0d4b0b2cb677b935bbeaeee5bd664c9e2dc18"}, "url": "/docs/compare/?release=9.2.14#9.2.14-d211afb454701ad5", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "0d4c56b3be3cd3a0ea07c0418296c330", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复若干规划器缺陷", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2d3846439546a9941457d4bd59e0d4b0b2cb677b935bbeaeee5bd664c9e2dc18"}, "url": "/docs/compare/?release=9.1.19#9.1.19-d211afb454701ad5", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "f3094de8f2f0e1950bbaf1448c49b82f", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复若干规划器缺陷", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2d3846439546a9941457d4bd59e0d4b0b2cb677b935bbeaeee5bd664c9e2dc18"}, "url": "/docs/compare/?release=9.0.23#9.0.23-d211afb454701ad5", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-8f53f9f362d9f5bf", "cves": [], "html": "<p>改进规划器在大型继承集上执行 <code>UPDATE</code>/<code>DELETE</code> 的性能（Tom Lane、Dean Rasheed）</p>", "text": "改进规划器在大型继承集上执行 UPDATE/DELETE 的性能（Tom Lane、Dean Rasheed）", "title": "改进规划器在大型继承集上执行 UPDATE/DELETE 的性能", "commits": [], "section": "变更", "category": "performance", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "53a9d121e09e204a5adb5643463718dd9521aa64263e2eb67045dbe3d56ff7b5", "section_path": ["变更"], "commit_groups": [["2cb9ec1bc", "673068588", "d8f9ab776", "e538e510e"]], "identity_text": "Improve planner's performance for UPDATE/DELETE on large inheritance sets (Tom Lane, Dean Rasheed)", "commit_aliases": ["2cb9ec1bc", "673068588", "d8f9ab776", "e538e510e"], "source_commits": ["d8f9ab776"], "source_entry_id": "9.4.5/changes/028", "db_id": "d1b4a849d53bdd2c2bc4ae5113bed7e5", "patch_ids": ["e66a8b37775178bd64d9cf761bf48879"], "statement_hash": "86b8de26024a739d35b8eafca994337b985661036403a0e05f28784c3a6a70bd", "relations": [{"rule": 2, "type": "equivalent", "target": "1cc17784c98e2503d0cc5715a4491e7b", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "86b8de26024a739d35b8eafca994337b985661036403a0e05f28784c3a6a70bd"}}, {"rule": 2, "type": "equivalent", "target": "55e04ce488d6f7e53e8d6cb2bf14f913", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "86b8de26024a739d35b8eafca994337b985661036403a0e05f28784c3a6a70bd"}}], "version": "9.4.5", "category_label": "性能改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "1cc17784c98e2503d0cc5715a4491e7b", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "改进规划器在大型继承集合上执行UPDATE/DELETE的性能", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "86b8de26024a739d35b8eafca994337b985661036403a0e05f28784c3a6a70bd"}, "url": "/docs/compare/?release=9.3.10#9.3.10-787a30d3fa10710d", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "55e04ce488d6f7e53e8d6cb2bf14f913", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "改进规划器在大型继承集合上执行UPDATE/DELETE的性能", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "86b8de26024a739d35b8eafca994337b985661036403a0e05f28784c3a6a70bd"}, "url": "/docs/compare/?release=9.2.14#9.2.14-787a30d3fa10710d", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}]}, {"id": "9.4.5-1308810568a26fe0", "cves": [], "html": "<p>确保在 postmaster 启动时移除备库提升触发文件（Michael Paquier、Fujii Masao）</p>\n<p>这可以防止这些文件出现在用于初始化新备库服务器的数据库备份中时发生不需要的提升。</p>", "text": "确保在 postmaster 启动时移除备库提升触发文件（Michael Paquier、Fujii Masao） 这可以防止这些文件出现在用于初始化新备库服务器的数据库备份中时发生不需要的提升。", "title": "确保在 postmaster 启动时移除备库提升触发文件", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "922df03b5bf6a08aa682225b5ff6651c7d485e85c96041e4e86a0a39336379a9", "section_path": ["变更"], "commit_groups": [["2244c0652", "47387732b", "60fe73b79", "65f37b3e9", "67518a141", "96f6a0cb4"]], "identity_text": "Ensure standby promotion trigger files are removed at postmaster startup (Michael Paquier, Fujii Masao) This prevents unwanted promotion from occurring if these files appear in a database backup that is used to initialize a new standby server.", "commit_aliases": ["2244c0652", "47387732b", "60fe73b79", "65f37b3e9", "67518a141", "96f6a0cb4"], "source_commits": ["2244c0652"], "source_entry_id": "9.4.5/changes/029", "db_id": "d70c2d41347985126bf7c67713145b33", "patch_ids": ["292f6b8d886a6f52e21687ab2a0087d8"], "statement_hash": "962f7210d34c183572587ad6f1616b0843f7cb60d2cdd363d9bd82644afabeae", "relations": [{"rule": 2, "type": "equivalent", "target": "482b8b583aa87ac74e17c2f09b1bac5a", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "962f7210d34c183572587ad6f1616b0843f7cb60d2cdd363d9bd82644afabeae"}}, {"rule": 2, "type": "equivalent", "target": "87e36e5b59c6c92e9e7de8d396ca5fa2", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "962f7210d34c183572587ad6f1616b0843f7cb60d2cdd363d9bd82644afabeae"}}, {"rule": 2, "type": "equivalent", "target": "9e310159bc458727f2b3339a646b573e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "962f7210d34c183572587ad6f1616b0843f7cb60d2cdd363d9bd82644afabeae"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "9e310159bc458727f2b3339a646b573e", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "确保在 postmaster 启动时移除备库提升触发文件", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "962f7210d34c183572587ad6f1616b0843f7cb60d2cdd363d9bd82644afabeae"}, "url": "/docs/compare/?release=9.3.10#9.3.10-1308810568a26fe0", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "87e36e5b59c6c92e9e7de8d396ca5fa2", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "确保在 postmaster 启动时移除备库提升触发文件", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "962f7210d34c183572587ad6f1616b0843f7cb60d2cdd363d9bd82644afabeae"}, "url": "/docs/compare/?release=9.2.14#9.2.14-1308810568a26fe0", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "482b8b583aa87ac74e17c2f09b1bac5a", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "确保在 postmaster 启动时移除备库提升触发文件", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "962f7210d34c183572587ad6f1616b0843f7cb60d2cdd363d9bd82644afabeae"}, "url": "/docs/compare/?release=9.1.19#9.1.19-1308810568a26fe0", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}]}, {"id": "9.4.5-96e309f35492ba59", "cves": [], "html": "<p>在 postmaster 关闭期间，确保在移除<code>postmaster.pid</code>文件之前移除各套接字的锁文件并关闭监听套接字（Tom Lane）</p>\n<p>这可以避免外部脚本在<code>pg_ctl stop</code>一返回就尝试启动新 postmaster 时出现竞争条件失败。</p>", "text": "在 postmaster 关闭期间，确保在移除postmaster.pid文件之前移除各套接字的锁文件并关闭监听套接字（Tom Lane） 这可以避免外部脚本在pg_ctl stop一返回就尝试启动新 postmaster 时出现竞争条件失败。", "title": "在 postmaster 关闭期间，确保在移除postmaster.pid文件之前移除各套接字的锁文件并关闭监听套接字", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "c719a79e7449e6ffadf447302e95cd41bacae44fbdd30eca2433e8f64c00d596", "section_path": ["变更"], "commit_groups": [["20d1878b6", "72697d2ba", "8b53c087d", "c6d901292", "d73d14c27", "f1e84d3eb", "fad824a88"]], "identity_text": "During postmaster shutdown, ensure that per-socket lock files are removed and listen sockets are closed before we remove the postmaster.pid file (Tom Lane) This avoids race-condition failures if an external script attempts to start a new postmaster as soon as pg_ctl stop returns.", "commit_aliases": ["20d1878b6", "72697d2ba", "8b53c087d", "c6d901292", "d73d14c27", "f1e84d3eb", "fad824a88"], "source_commits": ["c6d901292"], "source_entry_id": "9.4.5/changes/030", "db_id": "58b1e3ac6ef0ced8f5b51d6cc6c7b616", "patch_ids": ["ed86c8b046313362e51d77bc4e696899"], "statement_hash": "33b77933e3cb5e7fb1eed774f3daba97a8094d5c59e9ea16d71814730a4d696e", "relations": [{"rule": 2, "type": "equivalent", "target": "2238916f99c9b444daffc307da86fa64", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "33b77933e3cb5e7fb1eed774f3daba97a8094d5c59e9ea16d71814730a4d696e"}}, {"rule": 2, "type": "equivalent", "target": "6123c5a01534e99b41b4f08852b3b872", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "33b77933e3cb5e7fb1eed774f3daba97a8094d5c59e9ea16d71814730a4d696e"}}, {"rule": 2, "type": "equivalent", "target": "6ee99a9a9afda8e05099240c354ed0b6", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "33b77933e3cb5e7fb1eed774f3daba97a8094d5c59e9ea16d71814730a4d696e"}}, {"rule": 2, "type": "equivalent", "target": "c5d7876ac5d25aaad8b84a620e40bb6b", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "33b77933e3cb5e7fb1eed774f3daba97a8094d5c59e9ea16d71814730a4d696e"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "6123c5a01534e99b41b4f08852b3b872", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "在 postmaster 关闭期间，确保在移除postmaster.pid文件之前移除各套接字的锁文件并关闭监听套接字", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "33b77933e3cb5e7fb1eed774f3daba97a8094d5c59e9ea16d71814730a4d696e"}, "url": "/docs/compare/?release=9.3.10#9.3.10-96e309f35492ba59", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "6ee99a9a9afda8e05099240c354ed0b6", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "在 postmaster 关闭期间，确保在移除postmaster.pid文件之前移除各套接字的锁文件并关闭监听套接字", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "33b77933e3cb5e7fb1eed774f3daba97a8094d5c59e9ea16d71814730a4d696e"}, "url": "/docs/compare/?release=9.2.14#9.2.14-96e309f35492ba59", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "c5d7876ac5d25aaad8b84a620e40bb6b", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "在 postmaster 关闭期间，确保在移除postmaster.pid文件之前移除各套接字的锁文件并关闭监听套接字", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "33b77933e3cb5e7fb1eed774f3daba97a8094d5c59e9ea16d71814730a4d696e"}, "url": "/docs/compare/?release=9.1.19#9.1.19-96e309f35492ba59", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "2238916f99c9b444daffc307da86fa64", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "在 postmaster 关闭期间，确保在移除postmaster.pid文件之前移除各套接字的锁文件并关闭监听套接字", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "33b77933e3cb5e7fb1eed774f3daba97a8094d5c59e9ea16d71814730a4d696e"}, "url": "/docs/compare/?release=9.0.23#9.0.23-96e309f35492ba59", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-dd6088da0a47a1fd", "cves": [], "html": "<p>确保 postmaster 直到其所有子进程都退出后才退出，即使在立即关闭时也是如此（Tom Lane）</p>\n<p>与上一条类似，这避免了与随后启动的 postmaster 之间可能出现的竞态条件。</p>", "text": "确保 postmaster 直到其所有子进程都退出后才退出，即使在立即关闭时也是如此（Tom Lane） 与上一条类似，这避免了与随后启动的 postmaster 之间可能出现的竞态条件。", "title": "确保 postmaster 直到其所有子进程都退出后才退出，即使在立即关闭时也是如此", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "f4176b6b60853388626e7f355714acec021a7e98a7e6e63a95af31a460586960", "section_path": ["变更"], "commit_groups": [["29722d79b", "48913db88"]], "identity_text": "Ensure that the postmaster does not exit until all its child processes are gone, even in an immediate shutdown (Tom Lane) Like the previous item, this avoids possible race conditions against a subsequently-started postmaster.", "commit_aliases": ["29722d79b", "48913db88"], "source_commits": ["29722d79b"], "source_entry_id": "9.4.5/changes/031", "db_id": "76a64d0bed74415d5559867f235a50ed", "patch_ids": ["59ceb7714c32642cffe345edab895a27"], "statement_hash": "5306557a25bf465e447305e062ca2e2d24bbc0d362580799f840540802ed3870", "relations": [], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.4.5-4f1a4657f143b745", "cves": [], "html": "<p>修复 postmaster 对崩溃恢复期间启动进程崩溃的处理（Tom Lane）</p>\n<p>如果在崩溃恢复周期中，启动进程在尚未恢复数据库一致性时崩溃，我们会尝试启动一个新的启动进程，而这通常只会再次崩溃，导致无限循环。</p>", "text": "修复 postmaster 对崩溃恢复期间启动进程崩溃的处理（Tom Lane） 如果在崩溃恢复周期中，启动进程在尚未恢复数据库一致性时崩溃，我们会尝试启动一个新的启动进程，而这通常只会再次崩溃，导致无限循环。", "title": "修复 postmaster 对崩溃恢复期间启动进程崩溃的处理", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "b299cc8e1d02cc9138c76c99ab0a97c01d3cd88acb8001d52099c9d05a95bfcd", "section_path": ["变更"], "commit_groups": [["0d01c5b93", "193e02707", "45811be94", "6718f07a0", "97122b8a8", "9c39d7ae0", "da1e7eb72"]], "identity_text": "Fix postmaster's handling of a startup-process crash during crash recovery (Tom Lane) If, during a crash recovery cycle, the startup process crashes without having restored database consistency, we'd try to launch a new startup process, which typically would just crash again, leading to an infinite loop.", "commit_aliases": ["0d01c5b93", "193e02707", "45811be94", "6718f07a0", "97122b8a8", "9c39d7ae0", "da1e7eb72"], "source_commits": ["0d01c5b93"], "source_entry_id": "9.4.5/changes/032", "db_id": "aacd27be04e3de394eb4d1893a79d564", "patch_ids": ["a3ba33f776775e0454688814827cba71"], "statement_hash": "91ae74edce87d6db363944c5f1d900a55d4c04b4397e1b5c6b3721c164e7f890", "relations": [{"rule": 2, "type": "equivalent", "target": "25b4b1b33ec87d27c23ed570ea8c969d", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "91ae74edce87d6db363944c5f1d900a55d4c04b4397e1b5c6b3721c164e7f890"}}, {"rule": 2, "type": "equivalent", "target": "3743a74fa2cd46e18b726f09011e3b2e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "91ae74edce87d6db363944c5f1d900a55d4c04b4397e1b5c6b3721c164e7f890"}}, {"rule": 2, "type": "equivalent", "target": "5bdee0d295cd97f41219f89a71522161", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "91ae74edce87d6db363944c5f1d900a55d4c04b4397e1b5c6b3721c164e7f890"}}, {"rule": 2, "type": "equivalent", "target": "e5404104bc0c281b3f794671d3496883", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "91ae74edce87d6db363944c5f1d900a55d4c04b4397e1b5c6b3721c164e7f890"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "5bdee0d295cd97f41219f89a71522161", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复 postmaster 对崩溃恢复期间启动进程崩溃的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "91ae74edce87d6db363944c5f1d900a55d4c04b4397e1b5c6b3721c164e7f890"}, "url": "/docs/compare/?release=9.3.10#9.3.10-4f1a4657f143b745", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "3743a74fa2cd46e18b726f09011e3b2e", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复 postmaster 对崩溃恢复期间启动进程崩溃的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "91ae74edce87d6db363944c5f1d900a55d4c04b4397e1b5c6b3721c164e7f890"}, "url": "/docs/compare/?release=9.2.14#9.2.14-4f1a4657f143b745", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "e5404104bc0c281b3f794671d3496883", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复 postmaster 对崩溃恢复期间启动进程崩溃的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "91ae74edce87d6db363944c5f1d900a55d4c04b4397e1b5c6b3721c164e7f890"}, "url": "/docs/compare/?release=9.1.19#9.1.19-4f1a4657f143b745", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "25b4b1b33ec87d27c23ed570ea8c969d", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复 postmaster 对崩溃恢复期间启动进程崩溃的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "91ae74edce87d6db363944c5f1d900a55d4c04b4397e1b5c6b3721c164e7f890"}, "url": "/docs/compare/?release=9.0.23#9.0.23-4f1a4657f143b745", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-4eb3b9c4c7a1d626", "cves": [], "html": "<p>使针对多事务 ID 回卷的紧急自动清理更加健壮（Andres Freund）</p>", "text": "使针对多事务 ID 回卷的紧急自动清理更加健壮（Andres Freund）", "title": "使针对多事务 ID 回卷的紧急自动清理更加健壮", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "c0ca894f9dc5ac0a64bf1667291985adb8f135d42597b01cd59426d8eac99ebb", "section_path": ["变更"], "commit_groups": [["203193144", "667912aee", "ec1408155"]], "identity_text": "Make emergency autovacuuming for multixact wraparound more robust (Andres Freund)", "commit_aliases": ["203193144", "667912aee", "ec1408155"], "source_commits": ["ec1408155"], "source_entry_id": "9.4.5/changes/033", "db_id": "a3f0d2dba03aa3bf1cfa527a62d317e6", "patch_ids": ["1afbf9029021841db24ea65b8f90bbb5"], "statement_hash": "55a3f9c84d2b7c51b124bb7972a7b453ad0e631f8ee01b7e9d28b8fd8b740ae3", "relations": [{"rule": 2, "type": "equivalent", "target": "5589df09c2f3906265851d4a88942798", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "55a3f9c84d2b7c51b124bb7972a7b453ad0e631f8ee01b7e9d28b8fd8b740ae3"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "5589df09c2f3906265851d4a88942798", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "使针对多事务 ID 回卷的紧急自动清理更加健壮", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "55a3f9c84d2b7c51b124bb7972a7b453ad0e631f8ee01b7e9d28b8fd8b740ae3"}, "url": "/docs/compare/?release=9.3.10#9.3.10-4eb3b9c4c7a1d626", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}]}, {"id": "9.4.5-d6c19e210c0f3a86", "cves": [], "html": "<p>当我们试图向某个自动清理工作进程发送信号而它已经不在时，不再打印 <code>WARNING</code>，并降低此类信号的日志详细程度（Tom Lane）</p>", "text": "当我们试图向某个自动清理工作进程发送信号而它已经不在时，不再打印 WARNING，并降低此类信号的日志详细程度（Tom Lane）", "title": "当我们试图向某个自动清理工作进程发送信号而它已经不在时，不再打印 WARNING，并降低此类信号的日志详细程度", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "bf99127b3973181b4aa4656ec99c4041ee24e19392aa57e9905f59615437f7d3", "section_path": ["变更"], "commit_groups": [["082d4283b", "116be6c17", "1a2f95630", "3f12041e7", "47ee27521", "d8f15c95b", "f527c0a2a"]], "identity_text": "Do not print a WARNING when an autovacuum worker is already gone when we attempt to signal it, and reduce log verbosity for such signals (Tom Lane)", "commit_aliases": ["082d4283b", "116be6c17", "1a2f95630", "3f12041e7", "47ee27521", "d8f15c95b", "f527c0a2a"], "source_commits": ["082d4283b"], "source_entry_id": "9.4.5/changes/034", "db_id": "26b07f6a12369987232cf19cea71b5ab", "patch_ids": ["32f379de35625d8d748fd96d7fa6d9d6"], "statement_hash": "f67d0c08d798b32ba2c67f57d6d3ef1aa5fed95a2df62e8edc0c36a58989804b", "relations": [{"rule": 2, "type": "equivalent", "target": "08ac87c7db0f9ff929faa21ac8815d32", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f67d0c08d798b32ba2c67f57d6d3ef1aa5fed95a2df62e8edc0c36a58989804b"}}, {"rule": 2, "type": "equivalent", "target": "66b81ba56f49b4a29abaaf9ce628e95a", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f67d0c08d798b32ba2c67f57d6d3ef1aa5fed95a2df62e8edc0c36a58989804b"}}, {"rule": 2, "type": "equivalent", "target": "c5871d2aa1f7a6e689e67a406dd73300", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f67d0c08d798b32ba2c67f57d6d3ef1aa5fed95a2df62e8edc0c36a58989804b"}}, {"rule": 2, "type": "equivalent", "target": "df8e63855d7f7fab6c1d5f176ac4fdf1", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f67d0c08d798b32ba2c67f57d6d3ef1aa5fed95a2df62e8edc0c36a58989804b"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "c5871d2aa1f7a6e689e67a406dd73300", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "当我们尝试向某个自动清理工作进程发送信号而它已经消失时，不再打印WARNING，并降低此类信号的日志详细程度", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f67d0c08d798b32ba2c67f57d6d3ef1aa5fed95a2df62e8edc0c36a58989804b"}, "url": "/docs/compare/?release=9.3.10#9.3.10-fa84f99ff7bf9801", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "08ac87c7db0f9ff929faa21ac8815d32", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "当我们尝试向某个自动清理工作进程发送信号而它已经消失时，不再打印WARNING，并降低此类信号的日志详细程度", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f67d0c08d798b32ba2c67f57d6d3ef1aa5fed95a2df62e8edc0c36a58989804b"}, "url": "/docs/compare/?release=9.2.14#9.2.14-fa84f99ff7bf9801", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "df8e63855d7f7fab6c1d5f176ac4fdf1", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "当我们尝试向某个自动清理工作进程发送信号而它已经消失时，不再打印WARNING，并降低此类信号的日志详细程度", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f67d0c08d798b32ba2c67f57d6d3ef1aa5fed95a2df62e8edc0c36a58989804b"}, "url": "/docs/compare/?release=9.1.19#9.1.19-fa84f99ff7bf9801", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "66b81ba56f49b4a29abaaf9ce628e95a", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "当我们尝试向某个自动清理工作进程发送信号而它已经消失时，不再打印WARNING，并降低此类信号的日志详细程度", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f67d0c08d798b32ba2c67f57d6d3ef1aa5fed95a2df62e8edc0c36a58989804b"}, "url": "/docs/compare/?release=9.0.23#9.0.23-fa84f99ff7bf9801", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-a3b5dfc2d6d29d1a", "cves": [], "html": "<p>防止自动清理启动器在服务器时钟被大幅回拨时睡眠过长时间（Álvaro Herrera）</p>", "text": "防止自动清理启动器在服务器时钟被大幅回拨时睡眠过长时间（Álvaro Herrera）", "title": "防止自动清理启动器在服务器时钟被大幅回拨时睡眠过长时间", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "7533061f0984a3e2e7906c7580c5031c818080802cfa60a5d128f887a8738030", "section_path": ["变更"], "commit_groups": [["2fed5731a", "41acde2df", "5ac77a276", "cf733760e", "d68df5e40", "da1a9d0f5"]], "identity_text": "Prevent autovacuum launcher from sleeping unduly long if the server clock is moved backwards a large amount (Álvaro Herrera)", "commit_aliases": ["2fed5731a", "41acde2df", "5ac77a276", "cf733760e", "d68df5e40", "da1a9d0f5"], "source_commits": ["cf733760e"], "source_entry_id": "9.4.5/changes/035", "db_id": "85315a815226b58761d94c1be6655b14", "patch_ids": ["d581e2811530f7a4905f07a3865e89ec"], "statement_hash": "f5f386cc991e5f602efa7585835a4dd9990aa0ab159b24b225f6f8f181cc1bfa", "relations": [{"rule": 2, "type": "equivalent", "target": "1f82f0763370b9c2c06c168e1efe8084", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f5f386cc991e5f602efa7585835a4dd9990aa0ab159b24b225f6f8f181cc1bfa"}}, {"rule": 2, "type": "equivalent", "target": "4432abe6dc96abdc817e209ab3bb6b68", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f5f386cc991e5f602efa7585835a4dd9990aa0ab159b24b225f6f8f181cc1bfa"}}, {"rule": 2, "type": "equivalent", "target": "996848fcaade4346513456e73346e401", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f5f386cc991e5f602efa7585835a4dd9990aa0ab159b24b225f6f8f181cc1bfa"}}, {"rule": 2, "type": "equivalent", "target": "d40893693c1360676fc3b7acc438a690", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f5f386cc991e5f602efa7585835a4dd9990aa0ab159b24b225f6f8f181cc1bfa"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "4432abe6dc96abdc817e209ab3bb6b68", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "防止服务器时钟被大幅回拨时自动清理启动器睡眠时间过长", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f5f386cc991e5f602efa7585835a4dd9990aa0ab159b24b225f6f8f181cc1bfa"}, "url": "/docs/compare/?release=9.3.10#9.3.10-547a194aca56d331", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "996848fcaade4346513456e73346e401", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "防止服务器时钟被大幅回拨时自动清理启动器睡眠时间过长", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f5f386cc991e5f602efa7585835a4dd9990aa0ab159b24b225f6f8f181cc1bfa"}, "url": "/docs/compare/?release=9.2.14#9.2.14-547a194aca56d331", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "1f82f0763370b9c2c06c168e1efe8084", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "防止服务器时钟被大幅回拨时自动清理启动器睡眠时间过长", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f5f386cc991e5f602efa7585835a4dd9990aa0ab159b24b225f6f8f181cc1bfa"}, "url": "/docs/compare/?release=9.1.19#9.1.19-547a194aca56d331", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "d40893693c1360676fc3b7acc438a690", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "防止服务器时钟被大幅回拨时自动清理启动器睡眠时间过长", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "f5f386cc991e5f602efa7585835a4dd9990aa0ab159b24b225f6f8f181cc1bfa"}, "url": "/docs/compare/?release=9.0.23#9.0.23-547a194aca56d331", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-b8afe1ed78febe5c", "cves": [], "html": "<p>确保 GIN 索引的待处理插入列表清理可被取消请求中断（Jeff Janes）</p>", "text": "确保 GIN 索引的待处理插入列表清理可被取消请求中断（Jeff Janes）", "title": "确保 GIN 索引的待处理插入列表清理可被取消请求中断", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "421d8ce3b26043343c0bcb7fa46194bdf0e93dd4ea22581389b3e5448b098c03", "section_path": ["变更"], "commit_groups": [["364c02357", "3ffbc4994", "a7496aee6", "b6e367373", "cd6f4248f", "d592a8745", "e26692248"]], "identity_text": "Ensure that cleanup of a GIN index's pending-insertions list is interruptable by cancel requests (Jeff Janes)", "commit_aliases": ["364c02357", "3ffbc4994", "a7496aee6", "b6e367373", "cd6f4248f", "d592a8745", "e26692248"], "source_commits": ["b6e367373"], "source_entry_id": "9.4.5/changes/036", "db_id": "3dc7b3c5a20c9b9bf3a44e4962a884aa", "patch_ids": ["d5718c5c363a6985a9d1c26e8d08f66c"], "statement_hash": "bb25948e9712bfecf2ab57f309def29599303198bbd68fc6216e75ae3bd53b6f", "relations": [{"rule": 2, "type": "equivalent", "target": "272eba457c81dbfb258f54eb8da9febe", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "bb25948e9712bfecf2ab57f309def29599303198bbd68fc6216e75ae3bd53b6f"}}, {"rule": 2, "type": "equivalent", "target": "36ebe8bf4a1fdf882927d34c20b6cdab", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "bb25948e9712bfecf2ab57f309def29599303198bbd68fc6216e75ae3bd53b6f"}}, {"rule": 2, "type": "equivalent", "target": "477476d67ec7dea390beeadb1da8ac99", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "bb25948e9712bfecf2ab57f309def29599303198bbd68fc6216e75ae3bd53b6f"}}, {"rule": 2, "type": "equivalent", "target": "f3cc6b65ed4320c6692f20fc53416e5a", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "bb25948e9712bfecf2ab57f309def29599303198bbd68fc6216e75ae3bd53b6f"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "272eba457c81dbfb258f54eb8da9febe", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "确保 GIN 索引待插入列表的清理可被取消请求中断", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "bb25948e9712bfecf2ab57f309def29599303198bbd68fc6216e75ae3bd53b6f"}, "url": "/docs/compare/?release=9.3.10#9.3.10-04e23441e5e4cdc8", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "36ebe8bf4a1fdf882927d34c20b6cdab", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "确保 GIN 索引待插入列表的清理可被取消请求中断", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "bb25948e9712bfecf2ab57f309def29599303198bbd68fc6216e75ae3bd53b6f"}, "url": "/docs/compare/?release=9.2.14#9.2.14-04e23441e5e4cdc8", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "f3cc6b65ed4320c6692f20fc53416e5a", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "确保 GIN 索引待插入列表的清理可被取消请求中断", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "bb25948e9712bfecf2ab57f309def29599303198bbd68fc6216e75ae3bd53b6f"}, "url": "/docs/compare/?release=9.1.19#9.1.19-04e23441e5e4cdc8", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "477476d67ec7dea390beeadb1da8ac99", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "确保 GIN 索引待插入列表的清理可被取消请求中断", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "bb25948e9712bfecf2ab57f309def29599303198bbd68fc6216e75ae3bd53b6f"}, "url": "/docs/compare/?release=9.0.23#9.0.23-04e23441e5e4cdc8", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-5d139d856ac077d8", "cves": [], "html": "<p>允许重用 GIN 索引中的全零页（Heikki Linnakangas）</p>\n<p>崩溃之后可能遗留这样的页。</p>", "text": "允许重用 GIN 索引中的全零页（Heikki Linnakangas） 崩溃之后可能遗留这样的页。", "title": "允许重用 GIN 索引中的全零页", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "d3523b3a1bb0c96575d6c88b8024bbc8c065cc0a8c1ff1fd9e9cf772446dee61", "section_path": ["变更"], "commit_groups": [["202aea62a", "334445179", "746e7f1c1", "7658368cf", "a471700e3", "bafe3b007", "f87bf8480"]], "identity_text": "Allow all-zeroes pages in GIN indexes to be reused (Heikki Linnakangas) Such a page might be left behind after a crash.", "commit_aliases": ["202aea62a", "334445179", "746e7f1c1", "7658368cf", "a471700e3", "bafe3b007", "f87bf8480"], "source_commits": ["746e7f1c1"], "source_entry_id": "9.4.5/changes/037", "db_id": "99de94d6254a369aacaefc6ae48c5716", "patch_ids": ["73dd5840e4b80ac32b4bec47e8833cad"], "statement_hash": "6ac23149da533d4f780029d553d21b95c46f8983a02eed726949a3b14da14d26", "relations": [{"rule": 2, "type": "equivalent", "target": "188cb3ac83ecaf2ae5cbfe06668a30f5", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6ac23149da533d4f780029d553d21b95c46f8983a02eed726949a3b14da14d26"}}, {"rule": 2, "type": "equivalent", "target": "ae553bc4a039aeedb2a8188e890774cb", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6ac23149da533d4f780029d553d21b95c46f8983a02eed726949a3b14da14d26"}}, {"rule": 2, "type": "equivalent", "target": "eb2cea0e499dcfee7bcedac19fb19257", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6ac23149da533d4f780029d553d21b95c46f8983a02eed726949a3b14da14d26"}}, {"rule": 2, "type": "equivalent", "target": "f7eb2ac7e191c96d40b1e7e592a9ebe9", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6ac23149da533d4f780029d553d21b95c46f8983a02eed726949a3b14da14d26"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "188cb3ac83ecaf2ae5cbfe06668a30f5", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "允许重用 GIN 索引中的全零页", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6ac23149da533d4f780029d553d21b95c46f8983a02eed726949a3b14da14d26"}, "url": "/docs/compare/?release=9.3.10#9.3.10-5d139d856ac077d8", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "ae553bc4a039aeedb2a8188e890774cb", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "允许重用 GIN 索引中的全零页", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6ac23149da533d4f780029d553d21b95c46f8983a02eed726949a3b14da14d26"}, "url": "/docs/compare/?release=9.2.14#9.2.14-5d139d856ac077d8", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "eb2cea0e499dcfee7bcedac19fb19257", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "允许重用 GIN 索引中的全零页", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6ac23149da533d4f780029d553d21b95c46f8983a02eed726949a3b14da14d26"}, "url": "/docs/compare/?release=9.1.19#9.1.19-5d139d856ac077d8", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "f7eb2ac7e191c96d40b1e7e592a9ebe9", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "允许重用 GIN 索引中的全零页", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6ac23149da533d4f780029d553d21b95c46f8983a02eed726949a3b14da14d26"}, "url": "/docs/compare/?release=9.0.23#9.0.23-5d139d856ac077d8", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-5f6467d6752ffde5", "cves": [], "html": "<p>修复 SP-GiST 索引中对全零页的处理（Heikki Linnakangas）</p>\n<p><code>VACUUM</code> 曾试图回收此类页，但方式并非崩溃安全。</p>", "text": "修复 SP-GiST 索引中对全零页的处理（Heikki Linnakangas） VACUUM 曾试图回收此类页，但方式并非崩溃安全。", "title": "修复 SP-GiST 索引中对全零页的处理", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "084118a434a723c3a7c64b738f1e4e0ae2979896cd198d276ff4b2b2b4fd04b4", "section_path": ["变更"], "commit_groups": [["023430abf", "2fa8ba348", "579b9f97c", "863af3a37", "f4297f8c5"]], "identity_text": "Fix handling of all-zeroes pages in SP-GiST indexes (Heikki Linnakangas) VACUUM attempted to recycle such pages, but did so in a way that wasn't crash-safe.", "commit_aliases": ["023430abf", "2fa8ba348", "579b9f97c", "863af3a37", "f4297f8c5"], "source_commits": ["579b9f97c"], "source_entry_id": "9.4.5/changes/038", "db_id": "ce4cb8639f5d63b9edabf64f55841ec9", "patch_ids": ["af905ad66f178904108f7958ce172976"], "statement_hash": "3a32368a5f80ab828d004a02bebe6ed9e6c60446e92ea6dbfb96890742401da7", "relations": [{"rule": 2, "type": "equivalent", "target": "46bdc0de7cbf3f6d120f8b0ac7058f42", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3a32368a5f80ab828d004a02bebe6ed9e6c60446e92ea6dbfb96890742401da7"}}, {"rule": 2, "type": "equivalent", "target": "9782435105db087156949816e4013955", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3a32368a5f80ab828d004a02bebe6ed9e6c60446e92ea6dbfb96890742401da7"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "9782435105db087156949816e4013955", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复 SP-GiST 索引中对全零页的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3a32368a5f80ab828d004a02bebe6ed9e6c60446e92ea6dbfb96890742401da7"}, "url": "/docs/compare/?release=9.3.10#9.3.10-5f6467d6752ffde5", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "46bdc0de7cbf3f6d120f8b0ac7058f42", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复 SP-GiST 索引中对全零页的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3a32368a5f80ab828d004a02bebe6ed9e6c60446e92ea6dbfb96890742401da7"}, "url": "/docs/compare/?release=9.2.14#9.2.14-5f6467d6752ffde5", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}]}, {"id": "9.4.5-1a71bd70c34be1ff", "cves": [], "html": "<p>修复一个差一错误，该错误导致子事务/多事务截断中出现关于 <span>“<span>apparent wraparound</span>”</span> 的原本无害的警告（Thomas Munro）</p>", "text": "修复一个差一错误，该错误导致子事务/多事务截断中出现关于 “apparent wraparound” 的原本无害的警告（Thomas Munro）", "title": "修复一个差一错误，该错误导致子事务/多事务截断中出现关于 “apparent wraparound” 的原本无害的警告", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "f5eb89ad094bfdc727c2d812c7365606dfbbe936e7cb5f72f187d2edefbbe71b", "section_path": ["变更"], "commit_groups": [["40ad78220", "6ae9a0218", "766dcfb16", "84330d0c1", "a9b3a22aa", "b7551339d", "e54e17aca"]], "identity_text": "Fix off-by-one error that led to otherwise-harmless warnings about apparent wraparound in subtrans/multixact truncation (Thomas Munro)", "commit_aliases": ["40ad78220", "6ae9a0218", "766dcfb16", "84330d0c1", "a9b3a22aa", "b7551339d", "e54e17aca"], "source_commits": ["b7551339d"], "source_entry_id": "9.4.5/changes/039", "db_id": "88a05fbed4b44cfa4bc508234381f876", "patch_ids": ["fb4eb0c517f5fd4d092ca26d8a4a59d9"], "statement_hash": "edceeb0986fe1310a8a07a53b708fac21809e16ee52a04ff979f1c47520809a4", "relations": [{"rule": 2, "type": "equivalent", "target": "57fb4b6a309d6355e51ff526e42d34cb", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "edceeb0986fe1310a8a07a53b708fac21809e16ee52a04ff979f1c47520809a4"}}, {"rule": 2, "type": "equivalent", "target": "849a7ba160a2bdd3f3609780d167e642", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "edceeb0986fe1310a8a07a53b708fac21809e16ee52a04ff979f1c47520809a4"}}, {"rule": 2, "type": "equivalent", "target": "b7dad80ce673e6dd1076b9330f43ec4f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "edceeb0986fe1310a8a07a53b708fac21809e16ee52a04ff979f1c47520809a4"}}, {"rule": 2, "type": "equivalent", "target": "c64b593aef030fdd469179036eddb43b", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "edceeb0986fe1310a8a07a53b708fac21809e16ee52a04ff979f1c47520809a4"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "b7dad80ce673e6dd1076b9330f43ec4f", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复一个差一错误，该错误会导致 subtrans/multixact 截断中出现本可避免的“表面回卷”警告", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "edceeb0986fe1310a8a07a53b708fac21809e16ee52a04ff979f1c47520809a4"}, "url": "/docs/compare/?release=9.3.10#9.3.10-1e03f510c689d2f0", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "57fb4b6a309d6355e51ff526e42d34cb", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复一个差一错误，该错误会导致 subtrans/multixact 截断中出现本可避免的“表面回卷”警告", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "edceeb0986fe1310a8a07a53b708fac21809e16ee52a04ff979f1c47520809a4"}, "url": "/docs/compare/?release=9.2.14#9.2.14-1e03f510c689d2f0", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "849a7ba160a2bdd3f3609780d167e642", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复一个差一错误，该错误会导致 subtrans/multixact 截断中出现本可避免的“表面回卷”警告", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "edceeb0986fe1310a8a07a53b708fac21809e16ee52a04ff979f1c47520809a4"}, "url": "/docs/compare/?release=9.1.19#9.1.19-1e03f510c689d2f0", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "c64b593aef030fdd469179036eddb43b", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复一个差一错误，该错误会导致 subtrans/multixact 截断中出现本可避免的“表面回卷”警告", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "edceeb0986fe1310a8a07a53b708fac21809e16ee52a04ff979f1c47520809a4"}, "url": "/docs/compare/?release=9.0.23#9.0.23-1e03f510c689d2f0", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-1dddd26b0b730679", "cves": [], "html": "<p>修复 <span>PL/pgSQL</span> 错误上下文消息中对 <code>CONTINUE</code> 和 <code>MOVE</code> 语句类型的误报（Pavel Stehule、Tom Lane）</p>", "text": "修复 PL/pgSQL 错误上下文消息中对 CONTINUE 和 MOVE 语句类型的误报（Pavel Stehule、Tom Lane）", "title": "修复 PL/pgSQL 错误上下文消息中对 CONTINUE 和 MOVE 语句类型的误报", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "23e93454498c21955fd7f896d29a8b6a306536252dddead755b21020f2a3ba4b", "section_path": ["变更"], "commit_groups": [["17aa3c2d1", "2edb94911", "4c3754ffe", "8992e1acd", "928d0226e", "e41718fa1", "fb41bf4b5"]], "identity_text": "Fix misreporting of CONTINUE and MOVE statement types in PL/pgSQL's error context messages (Pavel Stehule, Tom Lane)", "commit_aliases": ["17aa3c2d1", "2edb94911", "4c3754ffe", "8992e1acd", "928d0226e", "e41718fa1", "fb41bf4b5"], "source_commits": ["928d0226e"], "source_entry_id": "9.4.5/changes/040", "db_id": "125e84128aafc51dd0727636c39f8d4e", "patch_ids": ["202721cd4bf8f19ee13bd37e8bbe208e"], "statement_hash": "c5e333c8e1546e5b1f101a8ce430cb9240161483dbfcd422e2c75fa07bd99d0b", "relations": [{"rule": 2, "type": "equivalent", "target": "01aa249524b9831a1297d29a4b51125a", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c5e333c8e1546e5b1f101a8ce430cb9240161483dbfcd422e2c75fa07bd99d0b"}}, {"rule": 2, "type": "equivalent", "target": "34762483eb37f7fc111ea86ef58fc37c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c5e333c8e1546e5b1f101a8ce430cb9240161483dbfcd422e2c75fa07bd99d0b"}}, {"rule": 2, "type": "equivalent", "target": "7bb773e16e19bec67e80952c0aadfef1", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c5e333c8e1546e5b1f101a8ce430cb9240161483dbfcd422e2c75fa07bd99d0b"}}, {"rule": 2, "type": "equivalent", "target": "edb94b34177d94efaad905a27b76a609", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c5e333c8e1546e5b1f101a8ce430cb9240161483dbfcd422e2c75fa07bd99d0b"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "34762483eb37f7fc111ea86ef58fc37c", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复PL/pgSQL错误上下文消息中CONTINUE和MOVE语句类型误报的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c5e333c8e1546e5b1f101a8ce430cb9240161483dbfcd422e2c75fa07bd99d0b"}, "url": "/docs/compare/?release=9.3.10#9.3.10-21f415a2fd0b9794", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "7bb773e16e19bec67e80952c0aadfef1", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复PL/pgSQL错误上下文消息中CONTINUE和MOVE语句类型误报的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c5e333c8e1546e5b1f101a8ce430cb9240161483dbfcd422e2c75fa07bd99d0b"}, "url": "/docs/compare/?release=9.2.14#9.2.14-21f415a2fd0b9794", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "edb94b34177d94efaad905a27b76a609", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复PL/pgSQL错误上下文消息中CONTINUE和MOVE语句类型误报的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c5e333c8e1546e5b1f101a8ce430cb9240161483dbfcd422e2c75fa07bd99d0b"}, "url": "/docs/compare/?release=9.1.19#9.1.19-21f415a2fd0b9794", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "01aa249524b9831a1297d29a4b51125a", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复PL/pgSQL错误上下文消息中CONTINUE和MOVE语句类型误报的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c5e333c8e1546e5b1f101a8ce430cb9240161483dbfcd422e2c75fa07bd99d0b"}, "url": "/docs/compare/?release=9.0.23#9.0.23-21f415a2fd0b9794", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-eb326bab6a749c57", "cves": [], "html": "<p>修复 <span>PL/Perl</span> 使其正确处理非 <acronym>ASCII</acronym> 的错误消息文本（Alex Hunsaker）</p>", "text": "修复 PL/Perl 使其正确处理非 ASCII 的错误消息文本（Alex Hunsaker）", "title": "修复 PL/Perl 使其正确处理非 ASCII 的错误消息文本", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "a800b1cec979da9e144ca14cdbb75f0dbe35cacceeee7b894e38cf43b8c7e9a9", "section_path": ["变更"], "commit_groups": [["a16b9b193", "aae40cf13", "b62c870ff", "b631a46ed", "ca6c2f863", "f60b2e2d4"]], "identity_text": "Fix PL/Perl to handle non-ASCII error message texts correctly (Alex Hunsaker)", "commit_aliases": ["a16b9b193", "aae40cf13", "b62c870ff", "b631a46ed", "ca6c2f863", "f60b2e2d4"], "source_commits": ["b62c870ff"], "source_entry_id": "9.4.5/changes/041", "db_id": "9b7d119655e25a8a1727cbce83105065", "patch_ids": ["eccd9d475a3bb6270b2063cc7718e0fc"], "statement_hash": "3f3872d4339135ba38f4c09401b8c57d4eabfb92a2313b3e220c1b8e301ac647", "relations": [{"rule": 2, "type": "equivalent", "target": "27126d8baf761a74162ba09048afbd3a", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3f3872d4339135ba38f4c09401b8c57d4eabfb92a2313b3e220c1b8e301ac647"}}, {"rule": 2, "type": "equivalent", "target": "93ceb6cbcb03b2aa0f0cb23eab3667ab", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3f3872d4339135ba38f4c09401b8c57d4eabfb92a2313b3e220c1b8e301ac647"}}, {"rule": 2, "type": "equivalent", "target": "d0ec84df5bb08537baba0833284460d6", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3f3872d4339135ba38f4c09401b8c57d4eabfb92a2313b3e220c1b8e301ac647"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "93ceb6cbcb03b2aa0f0cb23eab3667ab", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复PL/Perl以正确处理非ASCII错误消息文本", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3f3872d4339135ba38f4c09401b8c57d4eabfb92a2313b3e220c1b8e301ac647"}, "url": "/docs/compare/?release=9.3.10#9.3.10-53ca6c7b4fbd20aa", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "d0ec84df5bb08537baba0833284460d6", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复PL/Perl以正确处理非ASCII错误消息文本", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3f3872d4339135ba38f4c09401b8c57d4eabfb92a2313b3e220c1b8e301ac647"}, "url": "/docs/compare/?release=9.2.14#9.2.14-53ca6c7b4fbd20aa", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "27126d8baf761a74162ba09048afbd3a", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复PL/Perl以正确处理非ASCII错误消息文本", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3f3872d4339135ba38f4c09401b8c57d4eabfb92a2313b3e220c1b8e301ac647"}, "url": "/docs/compare/?release=9.1.19#9.1.19-53ca6c7b4fbd20aa", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}]}, {"id": "9.4.5-9f15b521df5395e5", "cves": [], "html": "<p>修复 <span>PL/Python</span> 返回 <code>record</code> 结果的字符串表示时的崩溃（Tom Lane）</p>", "text": "修复 PL/Python 返回 record 结果的字符串表示时的崩溃（Tom Lane）", "title": "修复 PL/Python 返回 record 结果的字符串表示时的崩溃", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "1e1e8d0e33620979e8154207cadf4c74c92a7d44bd8ea7f6d0f707a7a5696fa6", "section_path": ["变更"], "commit_groups": [["09b3d2725", "20bef3fe2", "2f1d558bc", "461235bda", "f2ae044ba", "f7ed465e0"], ["19446280f", "1d190d095", "22b9ce798", "59592efcf", "dadef8af2", "f469f634a"]], "identity_text": "Fix PL/Python crash when returning the string representation of a record result (Tom Lane)", "commit_aliases": ["09b3d2725", "19446280f", "1d190d095", "20bef3fe2", "22b9ce798", "2f1d558bc", "461235bda", "59592efcf", "dadef8af2", "f2ae044ba", "f469f634a", "f7ed465e0"], "source_commits": ["22b9ce798", "f7ed465e0"], "source_entry_id": "9.4.5/changes/042", "db_id": "bf087da1231ffa6e8d68c5f88036e644", "patch_ids": ["0650ca2d30780ce736cf027abfd3de5b", "cec3c000b8efc95e56b3482737022dec"], "statement_hash": "561e7a4dd87c61a2a79eccfabc54a44efa2a4f1f88f09fabf8896acdd15f4b59", "relations": [{"rule": 2, "type": "equivalent", "target": "744061501a631376c3a1de120b7b4fca", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "561e7a4dd87c61a2a79eccfabc54a44efa2a4f1f88f09fabf8896acdd15f4b59"}}, {"rule": 2, "type": "equivalent", "target": "b2a737fdb48eb39385c5adc967f829ae", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "561e7a4dd87c61a2a79eccfabc54a44efa2a4f1f88f09fabf8896acdd15f4b59"}}, {"rule": 2, "type": "equivalent", "target": "e617d661d3be7721d8aa4ce373e1bc48", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "561e7a4dd87c61a2a79eccfabc54a44efa2a4f1f88f09fabf8896acdd15f4b59"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "b2a737fdb48eb39385c5adc967f829ae", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复PL/Python在返回record结果的字符串表示时崩溃的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "561e7a4dd87c61a2a79eccfabc54a44efa2a4f1f88f09fabf8896acdd15f4b59"}, "url": "/docs/compare/?release=9.3.10#9.3.10-2570262f0178b8f9", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "e617d661d3be7721d8aa4ce373e1bc48", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复PL/Python在返回record结果的字符串表示时崩溃的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "561e7a4dd87c61a2a79eccfabc54a44efa2a4f1f88f09fabf8896acdd15f4b59"}, "url": "/docs/compare/?release=9.2.14#9.2.14-2570262f0178b8f9", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "744061501a631376c3a1de120b7b4fca", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复PL/Python在返回record结果的字符串表示时崩溃的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "561e7a4dd87c61a2a79eccfabc54a44efa2a4f1f88f09fabf8896acdd15f4b59"}, "url": "/docs/compare/?release=9.1.19#9.1.19-2570262f0178b8f9", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}]}, {"id": "9.4.5-3253bd59821361b7", "cves": [], "html": "<p>修复 <span>PL/Tcl</span> 中一些未检查 <code>malloc()</code> 调用失败之处（Michael Paquier, Álvaro Herrera）</p>", "text": "修复 PL/Tcl 中一些未检查 malloc() 调用失败之处（Michael Paquier, Álvaro Herrera）", "title": "修复 PL/Tcl 中一些未检查 malloc() 调用失败之处", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "3546aa0c967cadf7b240eb8c520db775e3b9853c38b5da5ec2ec033c2580277b", "section_path": ["变更"], "commit_groups": [["14ade020f", "3cb6ef998", "49c300040", "4c11967e7", "b0b6f8d71", "b2efbb71d", "f8d67ca8d"]], "identity_text": "Fix some places in PL/Tcl that neglected to check for failure of malloc() calls (Michael Paquier, Álvaro Herrera)", "commit_aliases": ["14ade020f", "3cb6ef998", "49c300040", "4c11967e7", "b0b6f8d71", "b2efbb71d", "f8d67ca8d"], "source_commits": ["49c300040"], "source_entry_id": "9.4.5/changes/043", "db_id": "1539acb72bcb37ff79538e05a0bb0526", "patch_ids": ["96efc48ee53eaeb0c986d3418daac510"], "statement_hash": "b7f9fd72a58456240c83d9a084e64b5a262f595df87d4c9a3473f43d4821e513", "relations": [{"rule": 2, "type": "equivalent", "target": "1cf1bb72d3c6b39723fe53022aa23bbf", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b7f9fd72a58456240c83d9a084e64b5a262f595df87d4c9a3473f43d4821e513"}}, {"rule": 2, "type": "equivalent", "target": "4da2d4dd759481f20ee79ea076c77538", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b7f9fd72a58456240c83d9a084e64b5a262f595df87d4c9a3473f43d4821e513"}}, {"rule": 2, "type": "equivalent", "target": "7b3c88e8cc089dc7ea27d1e62085ab32", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b7f9fd72a58456240c83d9a084e64b5a262f595df87d4c9a3473f43d4821e513"}}, {"rule": 2, "type": "equivalent", "target": "9e92468d22dc93ec5ab850e41e60f9c2", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b7f9fd72a58456240c83d9a084e64b5a262f595df87d4c9a3473f43d4821e513"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "7b3c88e8cc089dc7ea27d1e62085ab32", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复PL/Tcl中一些未检查malloc()调用失败的位置", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b7f9fd72a58456240c83d9a084e64b5a262f595df87d4c9a3473f43d4821e513"}, "url": "/docs/compare/?release=9.3.10#9.3.10-53e9aa96fb6b2bcd", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "4da2d4dd759481f20ee79ea076c77538", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复PL/Tcl中一些未检查malloc()调用失败的位置", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b7f9fd72a58456240c83d9a084e64b5a262f595df87d4c9a3473f43d4821e513"}, "url": "/docs/compare/?release=9.2.14#9.2.14-53e9aa96fb6b2bcd", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "1cf1bb72d3c6b39723fe53022aa23bbf", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复PL/Tcl中一些未检查malloc()调用失败的位置", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b7f9fd72a58456240c83d9a084e64b5a262f595df87d4c9a3473f43d4821e513"}, "url": "/docs/compare/?release=9.1.19#9.1.19-53e9aa96fb6b2bcd", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "9e92468d22dc93ec5ab850e41e60f9c2", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复PL/Tcl中一些未检查malloc()调用失败的位置", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b7f9fd72a58456240c83d9a084e64b5a262f595df87d4c9a3473f43d4821e513"}, "url": "/docs/compare/?release=9.0.23#9.0.23-53e9aa96fb6b2bcd", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-6a524e1efdc829d1", "cves": [], "html": "<p>在 <code>contrib/isn</code> 中，修复以 979 开头的 ISBN-13 号码的输出（Fabien Coelho）</p>\n<p>以 979（但不以 9790）开头的 EAN 被视为 ISBN，但它们必须以新的 13 位格式而非 10 位格式打印。</p>", "text": "在 contrib/isn 中，修复以 979 开头的 ISBN-13 号码的输出（Fabien Coelho） 以 979（但不以 9790）开头的 EAN 被视为 ISBN，但它们必须以新的 13 位格式而非 10 位格式打印。", "title": "在 contrib/isn 中，修复以 979 开头的 ISBN-13 号码的输出", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "9459aae98c1e6ea964c0a68ceb77dc9d5b7a7cbf6137fd6a0225374def84f446", "section_path": ["变更"], "commit_groups": [["2d19a0e97", "56187c6fb", "9d04a9824", "cb3384a0c", "d7d4bd2c3", "ea8385df6"]], "identity_text": "In contrib/isn, fix output of ISBN-13 numbers that begin with 979 (Fabien Coelho) EANs beginning with 979 (but not 9790) are considered ISBNs, but they must be printed in the new 13-digit format, not the 10-digit format.", "commit_aliases": ["2d19a0e97", "56187c6fb", "9d04a9824", "cb3384a0c", "d7d4bd2c3", "ea8385df6"], "source_commits": ["d7d4bd2c3"], "source_entry_id": "9.4.5/changes/044", "db_id": "addc78cc7389654f26107e6a1b311d86", "patch_ids": ["2b3a244c19c11691ab63d5d3db776375"], "statement_hash": "4c10c2af19f3b9acfd793e76d72fae780e64ea2c5843a4513449028212bc77e2", "relations": [{"rule": 2, "type": "equivalent", "target": "82ae2dd5c8e1fc0260ab711cc39394e2", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "4c10c2af19f3b9acfd793e76d72fae780e64ea2c5843a4513449028212bc77e2"}}, {"rule": 2, "type": "equivalent", "target": "a5d616e346045ac679b146478c03c05f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "4c10c2af19f3b9acfd793e76d72fae780e64ea2c5843a4513449028212bc77e2"}}, {"rule": 2, "type": "equivalent", "target": "de1114139059f61e3e3a570557ee4563", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "4c10c2af19f3b9acfd793e76d72fae780e64ea2c5843a4513449028212bc77e2"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "a5d616e346045ac679b146478c03c05f", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "在 contrib/isn 中，修复以 979 开头的 ISBN-13 号码的输出", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "4c10c2af19f3b9acfd793e76d72fae780e64ea2c5843a4513449028212bc77e2"}, "url": "/docs/compare/?release=9.3.10#9.3.10-6a524e1efdc829d1", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "de1114139059f61e3e3a570557ee4563", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "在 contrib/isn 中，修复以 979 开头的 ISBN-13 号码的输出", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "4c10c2af19f3b9acfd793e76d72fae780e64ea2c5843a4513449028212bc77e2"}, "url": "/docs/compare/?release=9.2.14#9.2.14-6a524e1efdc829d1", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "82ae2dd5c8e1fc0260ab711cc39394e2", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "在 contrib/isn 中，修复以 979 开头的 ISBN-13 号码的输出", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "4c10c2af19f3b9acfd793e76d72fae780e64ea2c5843a4513449028212bc77e2"}, "url": "/docs/compare/?release=9.1.19#9.1.19-6a524e1efdc829d1", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}]}, {"id": "9.4.5-915f675c8fd70120", "cves": [], "html": "<p>改进 <code>contrib/pg_stat_statements</code> 对查询文本垃圾回收的处理（Peter Geoghegan）</p>\n<p>包含查询文本的外部文件可能膨胀到非常大的尺寸；一旦超过 1GB，修剪它的尝试就会失败，很快就会导致该文件完全无法读取的情况。</p>", "text": "改进 contrib/pg_stat_statements 对查询文本垃圾回收的处理（Peter Geoghegan） 包含查询文本的外部文件可能膨胀到非常大的尺寸；一旦超过 1GB，修剪它的尝试就会失败，很快就会导致该文件完全无法读取的情况。", "title": "改进 contrib/pg_stat_statements 对查询文本垃圾回收的处理", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "54522ccf877dd54ccb5ced189d4b17b5dc8ece2379ab34b6934374831d7e6b82", "section_path": ["变更"], "commit_groups": [["39a716d93", "8bbe4cbd9", "93840f96c"]], "identity_text": "Improve contrib/pg_stat_statements' handling of query-text garbage collection (Peter Geoghegan) The external file containing query texts could bloat to very large sizes; once it got past 1GB attempts to trim it would fail, soon leading to situations where the file could not be read at all.", "commit_aliases": ["39a716d93", "8bbe4cbd9", "93840f96c"], "source_commits": ["93840f96c"], "source_entry_id": "9.4.5/changes/045", "db_id": "0544bae8a86e1563ec326dfd34a531c3", "patch_ids": ["f59f2eff7adab4e8d049c88e48929acd"], "statement_hash": "b6db80974229940a68f6c8bdc6923d417b708aeae38ee4a74d979c130fba6476", "relations": [], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.4.5-84b0b1338267c323", "cves": [], "html": "<p>改进 <code>contrib/postgres_fdw</code> 对排序规则相关决策的处理（Tom Lane）</p>\n<p>预期主要的用户可见效果是：涉及 <code>varchar</code> 列的比较将比以前在更多情况下被发送到远程服务器执行。</p>", "text": "改进 contrib/postgres_fdw 对排序规则相关决策的处理（Tom Lane） 预期主要的用户可见效果是：涉及 varchar 列的比较将比以前在更多情况下被发送到远程服务器执行。", "title": "改进 contrib/postgres_fdw 对排序规则相关决策的处理", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "5cf3aa4d37276b24c9b5c6c2fa41c5eca9b0e76ce98a5395cb371d8930aa4a5d", "section_path": ["变更"], "commit_groups": [["0da864c53", "59d765b65", "76f965ff1", "b7dcb2dd4"]], "identity_text": "Improve contrib/postgres_fdw's handling of collation-related decisions (Tom Lane) The main user-visible effect is expected to be that comparisons involving varchar columns will be sent to the remote server for execution in more cases than before.", "commit_aliases": ["0da864c53", "59d765b65", "76f965ff1", "b7dcb2dd4"], "source_commits": ["0da864c53"], "source_entry_id": "9.4.5/changes/046", "db_id": "5e786afc81df8a67681662d274032c2a", "patch_ids": ["7a3051fe3c90f0d7b7990bb27beb6b62"], "statement_hash": "7b2b4734dfbd61fea116717a37a66062d7362c217deb385a78b8aa64dda62d6c", "relations": [{"rule": 2, "type": "equivalent", "target": "69e113140bdb85c941f656b2d9e2d1df", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "7b2b4734dfbd61fea116717a37a66062d7362c217deb385a78b8aa64dda62d6c"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "69e113140bdb85c941f656b2d9e2d1df", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "改进 contrib/postgres_fdw 对排序规则相关决策的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "7b2b4734dfbd61fea116717a37a66062d7362c217deb385a78b8aa64dda62d6c"}, "url": "/docs/compare/?release=9.3.10#9.3.10-84b0b1338267c323", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}]}, {"id": "9.4.5-28d5e03370026ec7", "cves": [], "html": "<p>改进 <span>libpq</span> 对内存不足情况的处理（Michael Paquier、Heikki Linnakangas）</p>", "text": "改进 libpq 对内存不足情况的处理（Michael Paquier、Heikki Linnakangas）", "title": "改进 libpq 对内存不足情况的处理", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "8296dc20746294fa0e668a3bcabeab9f986399d221ddcc26803cd829a76d82ef", "section_path": ["变更"], "commit_groups": [["28c38396e", "2b189c7ec", "414bef30b", "6d88c1fc5", "992c6f0d2", "dcbaf4b37", "fcdac5614"]], "identity_text": "Improve libpq's handling of out-of-memory conditions (Michael Paquier, Heikki Linnakangas)", "commit_aliases": ["28c38396e", "2b189c7ec", "414bef30b", "6d88c1fc5", "992c6f0d2", "dcbaf4b37", "fcdac5614"], "source_commits": ["992c6f0d2"], "source_entry_id": "9.4.5/changes/047", "db_id": "b848bc2065846783fa346a5c909debd3", "patch_ids": ["992cd910e8c486009b887f724b0f8b83"], "statement_hash": "fbb5d0a163d1b469b732354722f1ef5c1281417cb03a108708763c6cce1195c8", "relations": [{"rule": 2, "type": "equivalent", "target": "164b020c132e3503d524602e7cc9ab1b", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "fbb5d0a163d1b469b732354722f1ef5c1281417cb03a108708763c6cce1195c8"}}, {"rule": 2, "type": "equivalent", "target": "71a1550edddf7958d1bf54bd7fdace9b", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "fbb5d0a163d1b469b732354722f1ef5c1281417cb03a108708763c6cce1195c8"}}, {"rule": 2, "type": "equivalent", "target": "7be63bfecbb0d6e4d18e2f8705a5b5b5", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "fbb5d0a163d1b469b732354722f1ef5c1281417cb03a108708763c6cce1195c8"}}, {"rule": 2, "type": "equivalent", "target": "a4349112ebfa074e60ed3bd78173d84c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "fbb5d0a163d1b469b732354722f1ef5c1281417cb03a108708763c6cce1195c8"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "71a1550edddf7958d1bf54bd7fdace9b", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "改进libpq对内存耗尽情况的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "fbb5d0a163d1b469b732354722f1ef5c1281417cb03a108708763c6cce1195c8"}, "url": "/docs/compare/?release=9.3.10#9.3.10-325b5407b34583a4", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "164b020c132e3503d524602e7cc9ab1b", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "改进libpq对内存耗尽情况的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "fbb5d0a163d1b469b732354722f1ef5c1281417cb03a108708763c6cce1195c8"}, "url": "/docs/compare/?release=9.2.14#9.2.14-325b5407b34583a4", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "7be63bfecbb0d6e4d18e2f8705a5b5b5", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "改进libpq对内存耗尽情况的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "fbb5d0a163d1b469b732354722f1ef5c1281417cb03a108708763c6cce1195c8"}, "url": "/docs/compare/?release=9.1.19#9.1.19-325b5407b34583a4", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "a4349112ebfa074e60ed3bd78173d84c", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "改进libpq对内存耗尽情况的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "fbb5d0a163d1b469b732354722f1ef5c1281417cb03a108708763c6cce1195c8"}, "url": "/docs/compare/?release=9.0.23#9.0.23-325b5407b34583a4", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-2d8997631ab7cabb", "cves": [], "html": "<p>修复 <span>ecpg</span> 中的内存泄漏和缺失的内存不足检查（Michael Paquier）</p>", "text": "修复 ecpg 中的内存泄漏和缺失的内存不足检查（Michael Paquier）", "title": "修复 ecpg 中的内存泄漏和缺失的内存不足检查", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "9ea7eb29eb7e9ca2541b679ecb05135e19d7ea495b071deb027090bbbfeb8392", "section_path": ["变更"], "commit_groups": [["1ea539ae3", "4678be617", "70767ac26", "82be1bf50", "866e7f591", "d65e5f832"], ["235bd4ccb", "31c06d4b6", "4f60d6658", "96ad72d1c", "a5238ced6", "ec311b1d8"], ["2a781b5bb", "4130b2c1f", "6ab1a53dd", "711cbaadd", "94a484222", "d278ff3b2"], ["3e2a17eec", "853222ce0", "a38f08bb9", "abf92840a", "af0b49fc9", "fd1ff4a13"]], "identity_text": "Fix memory leaks and missing out-of-memory checks in ecpg (Michael Paquier)", "commit_aliases": ["1ea539ae3", "235bd4ccb", "2a781b5bb", "31c06d4b6", "3e2a17eec", "4130b2c1f", "4678be617", "4f60d6658", "6ab1a53dd", "70767ac26", "711cbaadd", "82be1bf50", "853222ce0", "866e7f591", "94a484222", "96ad72d1c", "a38f08bb9", "a5238ced6", "abf92840a", "af0b49fc9", "d278ff3b2", "d65e5f832", "ec311b1d8", "fd1ff4a13"], "source_commits": ["2a781b5bb", "4f60d6658", "70767ac26", "853222ce0"], "source_entry_id": "9.4.5/changes/048", "db_id": "b6da92e4f833265944981baddf18676f", "patch_ids": ["923635573d5afe1b01effa42e1baa946", "9cb3751e2a98189bbf7d7a810a174513", "a40f2c0d553a9c719f932fe64c146a70", "f72d6519b2251575ad5f0541765e85ef"], "statement_hash": "8968deea2d7743cec3254d89e5959c92d4b7fb23f87bbbc16d72a292ef321409", "relations": [{"rule": 2, "type": "equivalent", "target": "1a506d9f1b14dd22d62da216856ed7e4", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8968deea2d7743cec3254d89e5959c92d4b7fb23f87bbbc16d72a292ef321409"}}, {"rule": 2, "type": "equivalent", "target": "1d02943b02efd930bc9b6286e1942fce", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8968deea2d7743cec3254d89e5959c92d4b7fb23f87bbbc16d72a292ef321409"}}, {"rule": 2, "type": "equivalent", "target": "44b54422babf71885b31c8a6ffbcc4d3", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8968deea2d7743cec3254d89e5959c92d4b7fb23f87bbbc16d72a292ef321409"}}, {"rule": 2, "type": "equivalent", "target": "8ecb30327ca588c34d375ba7b88b1651", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8968deea2d7743cec3254d89e5959c92d4b7fb23f87bbbc16d72a292ef321409"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "1a506d9f1b14dd22d62da216856ed7e4", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复ecpg中的内存泄漏和缺失的内存不足检查", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8968deea2d7743cec3254d89e5959c92d4b7fb23f87bbbc16d72a292ef321409"}, "url": "/docs/compare/?release=9.3.10#9.3.10-a61d4bfe7a814bb2", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "8ecb30327ca588c34d375ba7b88b1651", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复ecpg中的内存泄漏和缺失的内存不足检查", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8968deea2d7743cec3254d89e5959c92d4b7fb23f87bbbc16d72a292ef321409"}, "url": "/docs/compare/?release=9.2.14#9.2.14-a61d4bfe7a814bb2", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "44b54422babf71885b31c8a6ffbcc4d3", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复ecpg中的内存泄漏和缺失的内存不足检查", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8968deea2d7743cec3254d89e5959c92d4b7fb23f87bbbc16d72a292ef321409"}, "url": "/docs/compare/?release=9.1.19#9.1.19-a61d4bfe7a814bb2", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "1d02943b02efd930bc9b6286e1942fce", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复ecpg中的内存泄漏和缺失的内存不足检查", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8968deea2d7743cec3254d89e5959c92d4b7fb23f87bbbc16d72a292ef321409"}, "url": "/docs/compare/?release=9.0.23#9.0.23-a61d4bfe7a814bb2", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-502f4ffa259324e6", "cves": [], "html": "<p>修复 <span>psql</span> 中对数字输出的区域感知格式化代码（Tom Lane）</p>\n<p><code>\\pset numericlocale on</code> 所调用的格式化代码在一些不常见的情况下会出错，例如带指数但没有小数点的数字。它还可能破坏 <code>money</code> 数据类型已经区域化的输出。</p>", "text": "修复 psql 中对数字输出的区域感知格式化代码（Tom Lane） \\pset numericlocale on 所调用的格式化代码在一些不常见的情况下会出错，例如带指数但没有小数点的数字。它还可能破坏 money 数据类型已经区域化的输出。", "title": "修复 psql 中对数字输出的区域感知格式化代码", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "b057cf5c9756cfa5bb1cc67687433cb074f3283d7f1737361c8c931cc89441cc", "section_path": ["变更"], "commit_groups": [["348dd2847", "4778a0bda", "596c9e9ef", "7ddadacec", "7e327ecd2", "c2d6ef14e", "f1ee153dc"], ["49917edad", "60617d7d6", "6325527d8", "71763ecff", "9c547c939", "c48623d8d", "da4af91ce"], ["5eb702437", "77130fc14", "80fa54210", "98d8c75f9", "b7d17eca5", "c961f401b", "f88643476"]], "identity_text": "Fix psql's code for locale-aware formatting of numeric output (Tom Lane) The formatting code invoked by \\pset numericlocale on did the wrong thing for some uncommon cases such as numbers with an exponent but no decimal point. It could also mangle already-localized output from the money data type.", "commit_aliases": ["348dd2847", "4778a0bda", "49917edad", "596c9e9ef", "5eb702437", "60617d7d6", "6325527d8", "71763ecff", "77130fc14", "7ddadacec", "7e327ecd2", "80fa54210", "98d8c75f9", "9c547c939", "b7d17eca5", "c2d6ef14e", "c48623d8d", "c961f401b", "da4af91ce", "f1ee153dc", "f88643476"], "source_commits": ["348dd2847", "49917edad", "c961f401b"], "source_entry_id": "9.4.5/changes/049", "db_id": "97d3344d69061a9d13dc597dbba1d86e", "patch_ids": ["71f1c6db663498dc81a208db5329b42d", "cc74d4e283658cc3a655e58929958451", "fd7f29aa5e1f7fc75438a8edffd75e4f"], "statement_hash": "1bbeb677e6fa67b6c73062c664c9ae00cbe37d786833aec5ee8222e8c1b51140", "relations": [{"rule": 2, "type": "equivalent", "target": "6bbd8516d50d23130322a4077c3bacd3", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1bbeb677e6fa67b6c73062c664c9ae00cbe37d786833aec5ee8222e8c1b51140"}}, {"rule": 2, "type": "equivalent", "target": "9aec20995312f7a0fef49e0b1f325441", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1bbeb677e6fa67b6c73062c664c9ae00cbe37d786833aec5ee8222e8c1b51140"}}, {"rule": 2, "type": "equivalent", "target": "a161596e4ccb2bf08d7ad90edbe42232", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1bbeb677e6fa67b6c73062c664c9ae00cbe37d786833aec5ee8222e8c1b51140"}}, {"rule": 2, "type": "equivalent", "target": "e31c8abb870b833b1ba281d19c9c75e2", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1bbeb677e6fa67b6c73062c664c9ae00cbe37d786833aec5ee8222e8c1b51140"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "e31c8abb870b833b1ba281d19c9c75e2", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复 psql 中对数字输出的区域感知格式化代码", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1bbeb677e6fa67b6c73062c664c9ae00cbe37d786833aec5ee8222e8c1b51140"}, "url": "/docs/compare/?release=9.3.10#9.3.10-502f4ffa259324e6", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "a161596e4ccb2bf08d7ad90edbe42232", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复 psql 中对数字输出的区域感知格式化代码", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1bbeb677e6fa67b6c73062c664c9ae00cbe37d786833aec5ee8222e8c1b51140"}, "url": "/docs/compare/?release=9.2.14#9.2.14-502f4ffa259324e6", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "9aec20995312f7a0fef49e0b1f325441", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复 psql 中对数字输出的区域感知格式化代码", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1bbeb677e6fa67b6c73062c664c9ae00cbe37d786833aec5ee8222e8c1b51140"}, "url": "/docs/compare/?release=9.1.19#9.1.19-502f4ffa259324e6", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "6bbd8516d50d23130322a4077c3bacd3", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复 psql 中对数字输出的区域感知格式化代码", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1bbeb677e6fa67b6c73062c664c9ae00cbe37d786833aec5ee8222e8c1b51140"}, "url": "/docs/compare/?release=9.0.23#9.0.23-502f4ffa259324e6", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-0b628be16e0700c2", "cves": [], "html": "<p>防止 <span>psql</span> 的 <code>\\c</code> 命令在没有当前连接时崩溃（Noah Misch）</p>", "text": "防止 psql 的 \\c 命令在没有当前连接时崩溃（Noah Misch）", "title": "防止 psql 的 \\c 命令在没有当前连接时崩溃", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "b7e5de13a403fc31ed838f6eb1f2bb846086e14356c9b79e0e2f294bc7948cb3", "section_path": ["变更"], "commit_groups": [["458ccbf2b", "49008d645", "5f173a9f2", "6087bf1a1", "e135c3d99", "eb1525e89", "fb990ce6c"]], "identity_text": "Prevent crash in psql's \\c command when there is no current connection (Noah Misch)", "commit_aliases": ["458ccbf2b", "49008d645", "5f173a9f2", "6087bf1a1", "e135c3d99", "eb1525e89", "fb990ce6c"], "source_commits": ["eb1525e89"], "source_entry_id": "9.4.5/changes/050", "db_id": "f224415e83a4512f5308a0484cc2b109", "patch_ids": ["0a8529caf2aa81bf20c8aadbe92d891a"], "statement_hash": "a8bb375f8dd28afaa91ab8873c6fc9acd784f50f3904f2da2023934559093870", "relations": [{"rule": 2, "type": "equivalent", "target": "037355a920788444f71451b448afdde5", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a8bb375f8dd28afaa91ab8873c6fc9acd784f50f3904f2da2023934559093870"}}, {"rule": 2, "type": "equivalent", "target": "24f27d8dd0940b97582248e168589628", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a8bb375f8dd28afaa91ab8873c6fc9acd784f50f3904f2da2023934559093870"}}, {"rule": 2, "type": "equivalent", "target": "a93dbd0cca9380e52edb2566cc3c7887", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a8bb375f8dd28afaa91ab8873c6fc9acd784f50f3904f2da2023934559093870"}}, {"rule": 2, "type": "equivalent", "target": "c365dba95542bedb74af489f5fc311c4", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a8bb375f8dd28afaa91ab8873c6fc9acd784f50f3904f2da2023934559093870"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "037355a920788444f71451b448afdde5", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "防止在没有当前连接时psql的\\c命令崩溃", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a8bb375f8dd28afaa91ab8873c6fc9acd784f50f3904f2da2023934559093870"}, "url": "/docs/compare/?release=9.3.10#9.3.10-68026d1560e0c660", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "24f27d8dd0940b97582248e168589628", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "防止在没有当前连接时psql的\\c命令崩溃", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a8bb375f8dd28afaa91ab8873c6fc9acd784f50f3904f2da2023934559093870"}, "url": "/docs/compare/?release=9.2.14#9.2.14-68026d1560e0c660", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "c365dba95542bedb74af489f5fc311c4", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "防止在没有当前连接时psql的\\c命令崩溃", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a8bb375f8dd28afaa91ab8873c6fc9acd784f50f3904f2da2023934559093870"}, "url": "/docs/compare/?release=9.1.19#9.1.19-68026d1560e0c660", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "a93dbd0cca9380e52edb2566cc3c7887", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "防止在没有当前连接时psql的\\c命令崩溃", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a8bb375f8dd28afaa91ab8873c6fc9acd784f50f3904f2da2023934559093870"}, "url": "/docs/compare/?release=9.0.23#9.0.23-68026d1560e0c660", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-83eb4e651c6222d4", "cves": [], "html": "<p>使 <span>pg_dump</span> 正确处理继承的 <code>NOT VALID</code> 检查约束（Tom Lane）</p>", "text": "使 pg_dump 正确处理继承的 NOT VALID 检查约束（Tom Lane）", "title": "使 pg_dump 正确处理继承的 NOT VALID 检查约束", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "3a289e65fd61acf3a2577f50ec0f1b7a98de2f1d7764b645e6292907c2e1c9e9", "section_path": ["变更"], "commit_groups": [["35435af38", "3756c65a0", "5ea47e8f2", "7e1e1c9d1", "8ab4a6bd3"]], "identity_text": "Make pg_dump handle inherited NOT VALID check constraints correctly (Tom Lane)", "commit_aliases": ["35435af38", "3756c65a0", "5ea47e8f2", "7e1e1c9d1", "8ab4a6bd3"], "source_commits": ["35435af38"], "source_entry_id": "9.4.5/changes/051", "db_id": "4802b1cf24ce89c50b058099b7c93ffd", "patch_ids": ["97678808660b6ed308abedfc7cfe002e"], "statement_hash": "5e0aae2365fdb32db685eb0a34e9590d5a4f1ca7107f1889ac3f3b5f2b3a1856", "relations": [{"rule": 2, "type": "equivalent", "target": "02a491d123420c2d2dfc29c0c89b8322", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5e0aae2365fdb32db685eb0a34e9590d5a4f1ca7107f1889ac3f3b5f2b3a1856"}}, {"rule": 2, "type": "equivalent", "target": "1a5b85e6ab9a8bb1bafa9372003e268d", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5e0aae2365fdb32db685eb0a34e9590d5a4f1ca7107f1889ac3f3b5f2b3a1856"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "02a491d123420c2d2dfc29c0c89b8322", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "使pg_dump正确处理继承的NOT VALID检查约束", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5e0aae2365fdb32db685eb0a34e9590d5a4f1ca7107f1889ac3f3b5f2b3a1856"}, "url": "/docs/compare/?release=9.3.10#9.3.10-86a640a1971d8365", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "1a5b85e6ab9a8bb1bafa9372003e268d", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "使pg_dump正确处理继承的NOT VALID检查约束", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5e0aae2365fdb32db685eb0a34e9590d5a4f1ca7107f1889ac3f3b5f2b3a1856"}, "url": "/docs/compare/?release=9.2.14#9.2.14-86a640a1971d8365", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}]}, {"id": "9.4.5-629203dc5beb65f2", "cves": [], "html": "<p>修复 <span>pg_dump</span> 目录输出格式中默认 <span>zlib</span> 压缩级别的选择（Andrew Dunstan）</p>", "text": "修复 pg_dump 目录输出格式中默认 zlib 压缩级别的选择（Andrew Dunstan）", "title": "修复 pg_dump 目录输出格式中默认 zlib 压缩级别的选择", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "ad78f58b983c141be429dbb979e79f36c9f2126a7587ddb7884ecc85a32338ac", "section_path": ["变更"], "commit_groups": [["08012455c", "41ed5bb9a", "84bf6ece1", "aa1266d5f", "af225551e", "caef94d59"]], "identity_text": "Fix selection of default zlib compression level in pg_dump's directory output format (Andrew Dunstan)", "commit_aliases": ["08012455c", "41ed5bb9a", "84bf6ece1", "aa1266d5f", "af225551e", "caef94d59"], "source_commits": ["41ed5bb9a"], "source_entry_id": "9.4.5/changes/052", "db_id": "61ecbcaabfe78f5617d2b1c75b4cd626", "patch_ids": ["87427671c9c898f53b7b408543e0710b"], "statement_hash": "9c72d4e074219a04a6858085d6b562bad38c1ef189af164547240c8e1cb5c994", "relations": [{"rule": 2, "type": "equivalent", "target": "330f4a02ebea2e8894eb459060026e57", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9c72d4e074219a04a6858085d6b562bad38c1ef189af164547240c8e1cb5c994"}}, {"rule": 2, "type": "equivalent", "target": "8018db73f4222903c19075c1c3df98a7", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9c72d4e074219a04a6858085d6b562bad38c1ef189af164547240c8e1cb5c994"}}, {"rule": 2, "type": "equivalent", "target": "94bd59f01d62cdeeb55e167b725b0595", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9c72d4e074219a04a6858085d6b562bad38c1ef189af164547240c8e1cb5c994"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "94bd59f01d62cdeeb55e167b725b0595", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复pg_dump目录输出格式中默认zlib压缩级别的选择问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9c72d4e074219a04a6858085d6b562bad38c1ef189af164547240c8e1cb5c994"}, "url": "/docs/compare/?release=9.3.10#9.3.10-ac2ec4f9a8e5b3fc", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "8018db73f4222903c19075c1c3df98a7", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复pg_dump目录输出格式中默认zlib压缩级别的选择问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9c72d4e074219a04a6858085d6b562bad38c1ef189af164547240c8e1cb5c994"}, "url": "/docs/compare/?release=9.2.14#9.2.14-ac2ec4f9a8e5b3fc", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "330f4a02ebea2e8894eb459060026e57", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复pg_dump目录输出格式中默认zlib压缩级别的选择问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9c72d4e074219a04a6858085d6b562bad38c1ef189af164547240c8e1cb5c994"}, "url": "/docs/compare/?release=9.1.19#9.1.19-ac2ec4f9a8e5b3fc", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}]}, {"id": "9.4.5-72ab3db27e1270e5", "cves": [], "html": "<p>确保 <span>pg_dump</span> 以 <acronym>tar</acronym> 格式输出运行期间创建的临时文件不会被所有用户读取（Michael Paquier）</p>", "text": "确保 pg_dump 以 tar 格式输出运行期间创建的临时文件不会被所有用户读取（Michael Paquier）", "title": "确保 pg_dump 以 tar 格式输出运行期间创建的临时文件不会被所有用户读取", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "35e5c5ac563951ac45457b9d959422849f9053a0de89c29f2bfb89f27fe0edce", "section_path": ["变更"], "commit_groups": [["1be9d65e1", "24aed2124", "5dc49efe9", "7496aba80", "8346218c0", "c94b65f67", "ea218a2ba"]], "identity_text": "Ensure that temporary files created during a pg_dump run with tar-format output are not world-readable (Michael Paquier)", "commit_aliases": ["1be9d65e1", "24aed2124", "5dc49efe9", "7496aba80", "8346218c0", "c94b65f67", "ea218a2ba"], "source_commits": ["7496aba80"], "source_entry_id": "9.4.5/changes/053", "db_id": "d2fcc056bd31b6450ff11687e5dcdf14", "patch_ids": ["617ec79b952eb5350e6454b80f31d6de"], "statement_hash": "5cdcd054fcdcf39cfb17f4bbd59a8065cd1967958fa05f73d867e20520ddab4e", "relations": [{"rule": 2, "type": "equivalent", "target": "1f59f5f9ee2687ef559c6f9b39e75257", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5cdcd054fcdcf39cfb17f4bbd59a8065cd1967958fa05f73d867e20520ddab4e"}}, {"rule": 2, "type": "equivalent", "target": "9fdf7145c5a66cb77868c61f0982b87d", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5cdcd054fcdcf39cfb17f4bbd59a8065cd1967958fa05f73d867e20520ddab4e"}}, {"rule": 2, "type": "equivalent", "target": "bf9cd4eccd055394cfd69fecdc575cf1", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5cdcd054fcdcf39cfb17f4bbd59a8065cd1967958fa05f73d867e20520ddab4e"}}, {"rule": 2, "type": "equivalent", "target": "ff023c79b1135d35838320e5c1d60cb7", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5cdcd054fcdcf39cfb17f4bbd59a8065cd1967958fa05f73d867e20520ddab4e"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "9fdf7145c5a66cb77868c61f0982b87d", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "确保pg_dump以tar格式输出运行期间创建的临时文件不被全局可读", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5cdcd054fcdcf39cfb17f4bbd59a8065cd1967958fa05f73d867e20520ddab4e"}, "url": "/docs/compare/?release=9.3.10#9.3.10-e538a1f15ed29882", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "bf9cd4eccd055394cfd69fecdc575cf1", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "确保pg_dump以tar格式输出运行期间创建的临时文件不被全局可读", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5cdcd054fcdcf39cfb17f4bbd59a8065cd1967958fa05f73d867e20520ddab4e"}, "url": "/docs/compare/?release=9.2.14#9.2.14-e538a1f15ed29882", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "1f59f5f9ee2687ef559c6f9b39e75257", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "确保pg_dump以tar格式输出运行期间创建的临时文件不被全局可读", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5cdcd054fcdcf39cfb17f4bbd59a8065cd1967958fa05f73d867e20520ddab4e"}, "url": "/docs/compare/?release=9.1.19#9.1.19-e538a1f15ed29882", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "ff023c79b1135d35838320e5c1d60cb7", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "确保pg_dump以tar格式输出运行期间创建的临时文件不被全局可读", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5cdcd054fcdcf39cfb17f4bbd59a8065cd1967958fa05f73d867e20520ddab4e"}, "url": "/docs/compare/?release=9.0.23#9.0.23-e538a1f15ed29882", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-35e7f65e0fe7a63d", "cves": [], "html": "<p>修复 <span>pg_dump</span> 和 <span>pg_upgrade</span>，以支持 <code>postgres</code> 或 <code>template1</code> 数据库位于非默认表空间的情况（Marti Raudsepp、Bruce Momjian）</p>", "text": "修复 pg_dump 和 pg_upgrade，以支持 postgres 或 template1 数据库位于非默认表空间的情况（Marti Raudsepp、Bruce Momjian）", "title": "修复 pg_dump 和 pg_upgrade，以支持 postgres 或 template1 数据库位于非默认表空间的情况", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "ee3a1c7846be87835094389cc57b2668c9f18be1ac87e5826f32b9ee8d706e80", "section_path": ["变更"], "commit_groups": [["3243fce88", "35d2fc1f2", "52b07779d", "7f8d090b8", "befc63e84", "c5391e933", "ca445043e"]], "identity_text": "Fix pg_dump and pg_upgrade to support cases where the postgres or template1 database is in a non-default tablespace (Marti Raudsepp, Bruce Momjian)", "commit_aliases": ["3243fce88", "35d2fc1f2", "52b07779d", "7f8d090b8", "befc63e84", "c5391e933", "ca445043e"], "source_commits": ["35d2fc1f2"], "source_entry_id": "9.4.5/changes/054", "db_id": "cc7ea040b5ec367fce2e93855ea1f77e", "patch_ids": ["6bece8ede9a4564bbfcf23076b47fab4"], "statement_hash": "cefd8b5dcb7f0d0fed021f38327ec6f7a537823620aec5f7cd423677f4063c74", "relations": [{"rule": 2, "type": "equivalent", "target": "9f857298c69fcf23eba991d66fdc78d8", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cefd8b5dcb7f0d0fed021f38327ec6f7a537823620aec5f7cd423677f4063c74"}}, {"rule": 2, "type": "equivalent", "target": "bb9a3ad00d9072acdd6cdd96ae9df1d1", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cefd8b5dcb7f0d0fed021f38327ec6f7a537823620aec5f7cd423677f4063c74"}}, {"rule": 2, "type": "equivalent", "target": "cced232ba12f47ffb89e47fceed601b3", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cefd8b5dcb7f0d0fed021f38327ec6f7a537823620aec5f7cd423677f4063c74"}}, {"rule": 2, "type": "equivalent", "target": "f6d4cc27aaca23c602e544bafdf27dba", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cefd8b5dcb7f0d0fed021f38327ec6f7a537823620aec5f7cd423677f4063c74"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "9f857298c69fcf23eba991d66fdc78d8", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复pg_dump和pg_upgrade以支持postgres或template1数据库位于非默认表空间的情况", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cefd8b5dcb7f0d0fed021f38327ec6f7a537823620aec5f7cd423677f4063c74"}, "url": "/docs/compare/?release=9.3.10#9.3.10-1bf8ec2045b41148", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "f6d4cc27aaca23c602e544bafdf27dba", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复pg_dump和pg_upgrade以支持postgres或template1数据库位于非默认表空间的情况", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cefd8b5dcb7f0d0fed021f38327ec6f7a537823620aec5f7cd423677f4063c74"}, "url": "/docs/compare/?release=9.2.14#9.2.14-1bf8ec2045b41148", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "bb9a3ad00d9072acdd6cdd96ae9df1d1", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复pg_dump和pg_upgrade以支持postgres或template1数据库位于非默认表空间的情况", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cefd8b5dcb7f0d0fed021f38327ec6f7a537823620aec5f7cd423677f4063c74"}, "url": "/docs/compare/?release=9.1.19#9.1.19-1bf8ec2045b41148", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "cced232ba12f47ffb89e47fceed601b3", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复pg_dump和pg_upgrade以支持postgres或template1数据库位于非默认表空间的情况", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cefd8b5dcb7f0d0fed021f38327ec6f7a537823620aec5f7cd423677f4063c74"}, "url": "/docs/compare/?release=9.0.23#9.0.23-1bf8ec2045b41148", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-385ed6c617071f0a", "cves": [], "html": "<p>修复 <span>pg_dump</span> 从过于陈旧而没有特定权限类型的服务器转储时对对象权限的处理（Tom Lane）</p>\n<p>从 9.2 之前的服务器转储数据类型，以及从 7.3 之前的服务器转储函数或过程语言时，<span>pg_dump</span> 会生成撤销所有者可授予权限、转而将所有权限授予 <code>PUBLIC</code> 的 <code>GRANT</code>/<code>REVOKE</code> 命令。由于所涉及的权限只是 <code>USAGE</code> 和 <code>EXECUTE</code>，这不构成安全问题，但这种表示与旧系统的行为明显不符。现已修复，在这些情况下保持默认权限状态不变。</p>", "text": "修复 pg_dump 从过于陈旧而没有特定权限类型的服务器转储时对对象权限的处理（Tom Lane） 从 9.2 之前的服务器转储数据类型，以及从 7.3 之前的服务器转储函数或过程语言时，pg_dump 会生成撤销所有者可授予权限、转而将所有权限授予 PUBLIC 的 GRANT/REVOKE 命令。由于所涉及的权限只是 USAGE 和 EXECUTE，这不构成安全问题，但这种表示与旧系统的行为明显不符。现已修复，在这些情况下保持默认权限状态不变。", "title": "修复 pg_dump 从过于陈旧而没有特定权限类型的服务器转储时对对象权限的处理", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "1364bb7cdd4cc14eece2243cc8ae3f2e0cb69ef8f5af65908fc1f962e9954e61", "section_path": ["变更"], "commit_groups": [["1cd468516", "298d1f808", "3352c23a6", "34f1a85e5", "75d02d787", "b861678f5", "be9ef396c"]], "identity_text": "Fix pg_dump to handle object privileges sanely when dumping from a server too old to have a particular privilege type (Tom Lane) When dumping data types from pre-9.2 servers, and when dumping functions or procedural languages from pre-7.3 servers, pg_dump would produce GRANT/REVOKE commands that revoked the owner's grantable privileges and instead granted all privileges to PUBLIC. Since the privileges involved are just USAGE and EXECUTE, this isn't a security problem, but it's certainly a surprising representation of the older systems' behavior. Fix it to leave the default privilege state alone in these cases.", "commit_aliases": ["1cd468516", "298d1f808", "3352c23a6", "34f1a85e5", "75d02d787", "b861678f5", "be9ef396c"], "source_commits": ["3352c23a6"], "source_entry_id": "9.4.5/changes/055", "db_id": "c879940ebe4174b10ab29ccc1ce0009b", "patch_ids": ["eded75a03db3edf4f68880c3c345c87c"], "statement_hash": "c014332396af93904c91866f7b6c9e4e47c387a5435c734701cfdecd38eb02ae", "relations": [{"rule": 2, "type": "equivalent", "target": "93d4ca5d89a2bcf8587a043e05d410bc", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c014332396af93904c91866f7b6c9e4e47c387a5435c734701cfdecd38eb02ae"}}, {"rule": 2, "type": "equivalent", "target": "a20078d2602fed9fb13ae6f5c04ab95f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c014332396af93904c91866f7b6c9e4e47c387a5435c734701cfdecd38eb02ae"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "93d4ca5d89a2bcf8587a043e05d410bc", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复 pg_dump 从过于陈旧而没有特定权限类型的服务器转储时对对象权限的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c014332396af93904c91866f7b6c9e4e47c387a5435c734701cfdecd38eb02ae"}, "url": "/docs/compare/?release=9.3.10#9.3.10-385ed6c617071f0a", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "a20078d2602fed9fb13ae6f5c04ab95f", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复 pg_dump 从过于陈旧而没有特定权限类型的服务器转储时对对象权限的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c014332396af93904c91866f7b6c9e4e47c387a5435c734701cfdecd38eb02ae"}, "url": "/docs/compare/?release=9.2.14#9.2.14-385ed6c617071f0a", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}]}, {"id": "9.4.5-b3b153200af7901b", "cves": [], "html": "<p>修复<span>pg_dump</span>以转储 shell 类型（Tom Lane）</p>\n<p>shell 类型（即尚未完全定义的类型）用处不大，但<span>pg_dump</span>仍应转储它们。</p>", "text": "修复pg_dump以转储 shell 类型（Tom Lane） shell 类型（即尚未完全定义的类型）用处不大，但pg_dump仍应转储它们。", "title": "修复pg_dump以转储 shell 类型", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "7e9bf1e7bd0ecd55196fb95ebced19f3656128399f9f32d8f544549b3f7cac75", "section_path": ["变更"], "commit_groups": [["1f507c7e9", "270a877cc", "3bdd7f90f", "5d175be17", "5da713f31", "dae6e4601", "fa6e785fd"]], "identity_text": "Fix pg_dump to dump shell types (Tom Lane) Shell types (that is, not-yet-fully-defined types) aren't useful for much, but nonetheless pg_dump should dump them.", "commit_aliases": ["1f507c7e9", "270a877cc", "3bdd7f90f", "5d175be17", "5da713f31", "dae6e4601", "fa6e785fd"], "source_commits": ["fa6e785fd"], "source_entry_id": "9.4.5/changes/056", "db_id": "198cd89efe91ccc05b58a6b783f09f70", "patch_ids": ["046236d9a0c361b3181cc4aa8dfbaa10"], "statement_hash": "3842f9e8524734ef3ff6776f31bde69a2fba74e0f13dc37e8efdde35a1068408", "relations": [{"rule": 2, "type": "equivalent", "target": "1b5d70d8b6be98bebcfde68fc4adb9a0", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3842f9e8524734ef3ff6776f31bde69a2fba74e0f13dc37e8efdde35a1068408"}}, {"rule": 2, "type": "equivalent", "target": "ab7f74ddc545d2f6f54da12b74bc5573", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3842f9e8524734ef3ff6776f31bde69a2fba74e0f13dc37e8efdde35a1068408"}}, {"rule": 2, "type": "equivalent", "target": "cd6ff460aebbecc60caf6b4b080171f0", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3842f9e8524734ef3ff6776f31bde69a2fba74e0f13dc37e8efdde35a1068408"}}, {"rule": 2, "type": "equivalent", "target": "dcb47328a1d1764927180d40868b7d67", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3842f9e8524734ef3ff6776f31bde69a2fba74e0f13dc37e8efdde35a1068408"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "cd6ff460aebbecc60caf6b4b080171f0", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复pg_dump以转储 shell 类型", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3842f9e8524734ef3ff6776f31bde69a2fba74e0f13dc37e8efdde35a1068408"}, "url": "/docs/compare/?release=9.3.10#9.3.10-b3b153200af7901b", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "1b5d70d8b6be98bebcfde68fc4adb9a0", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复pg_dump以转储 shell 类型", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3842f9e8524734ef3ff6776f31bde69a2fba74e0f13dc37e8efdde35a1068408"}, "url": "/docs/compare/?release=9.2.14#9.2.14-b3b153200af7901b", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "dcb47328a1d1764927180d40868b7d67", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复pg_dump以转储 shell 类型", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3842f9e8524734ef3ff6776f31bde69a2fba74e0f13dc37e8efdde35a1068408"}, "url": "/docs/compare/?release=9.1.19#9.1.19-b3b153200af7901b", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "ab7f74ddc545d2f6f54da12b74bc5573", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复pg_dump以转储 shell 类型", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3842f9e8524734ef3ff6776f31bde69a2fba74e0f13dc37e8efdde35a1068408"}, "url": "/docs/compare/?release=9.0.23#9.0.23-b3b153200af7901b", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-71c66128d4fda6ac", "cves": [], "html": "<p>修复 <span>pg_dump</span> 和其他客户端程序中的各种轻微内存泄漏（Michael Paquier）</p>", "text": "修复 pg_dump 和其他客户端程序中的各种轻微内存泄漏（Michael Paquier）", "title": "修复 pg_dump 和其他客户端程序中的各种轻微内存泄漏", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "6de8cc0db0eb9e25d46b4b2dfa4ae12741f42ba2abe0eda4918bc1fe4e8a0360", "section_path": ["变更"], "commit_groups": [["0e78a610f", "1ed549387", "a24ceea4b", "bcc87b6b0", "e9a859b54", "faf686b54"]], "identity_text": "Fix assorted minor memory leaks in pg_dump and other client-side programs (Michael Paquier)", "commit_aliases": ["0e78a610f", "1ed549387", "a24ceea4b", "bcc87b6b0", "e9a859b54", "faf686b54"], "source_commits": ["1ed549387"], "source_entry_id": "9.4.5/changes/057", "db_id": "9f232daf6263acce3211c0345a7a1c78", "patch_ids": ["b16973c07345d4cc11c51981d3893d53"], "statement_hash": "47f8bd347b6013c7d43cc8d99b4589e8b661c09d9ba7d14ed086103e1828ece4", "relations": [{"rule": 2, "type": "equivalent", "target": "7446c203120802ec8382340475c5747b", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "47f8bd347b6013c7d43cc8d99b4589e8b661c09d9ba7d14ed086103e1828ece4"}}, {"rule": 2, "type": "equivalent", "target": "c93ec9cbab57f33d9a0e3b208916f471", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "47f8bd347b6013c7d43cc8d99b4589e8b661c09d9ba7d14ed086103e1828ece4"}}, {"rule": 2, "type": "equivalent", "target": "e9ed74d6a504a160674a2cacc2e1445c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "47f8bd347b6013c7d43cc8d99b4589e8b661c09d9ba7d14ed086103e1828ece4"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "e9ed74d6a504a160674a2cacc2e1445c", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复pg_dump及其他客户端程序中的若干小内存泄漏", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "47f8bd347b6013c7d43cc8d99b4589e8b661c09d9ba7d14ed086103e1828ece4"}, "url": "/docs/compare/?release=9.3.10#9.3.10-01258499676c8bb9", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "c93ec9cbab57f33d9a0e3b208916f471", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复pg_dump及其他客户端程序中的若干小内存泄漏", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "47f8bd347b6013c7d43cc8d99b4589e8b661c09d9ba7d14ed086103e1828ece4"}, "url": "/docs/compare/?release=9.2.14#9.2.14-01258499676c8bb9", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "7446c203120802ec8382340475c5747b", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复pg_dump及其他客户端程序中的若干小内存泄漏", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "47f8bd347b6013c7d43cc8d99b4589e8b661c09d9ba7d14ed086103e1828ece4"}, "url": "/docs/compare/?release=9.1.19#9.1.19-01258499676c8bb9", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}]}, {"id": "9.4.5-cdd1bb713aafcbe7", "cves": [], "html": "<p>修复查询或 <span>pgbench</span> 自身卡住时 <span>pgbench</span> 的进度报告行为（Fabien Coelho）</p>", "text": "修复查询或 pgbench 自身卡住时 pgbench 的进度报告行为（Fabien Coelho）", "title": "修复查询或 pgbench 自身卡住时 pgbench 的进度报告行为", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "b71cdc83b16a674420085bbf77ea54226b6dfa5b902eb4f18fed9a72bf27ef2e", "section_path": ["变更"], "commit_groups": [["5174ca17a", "9031ff91a", "9d6352aaa"]], "identity_text": "Fix pgbench's progress-report behavior when a query, or pgbench itself, gets stuck (Fabien Coelho)", "commit_aliases": ["5174ca17a", "9031ff91a", "9d6352aaa"], "source_commits": ["9d6352aaa"], "source_entry_id": "9.4.5/changes/058", "db_id": "92bced5361dae5181a0247e7e1c40fb3", "patch_ids": ["ee4ae03a03eaa1749f1befc3935da547"], "statement_hash": "a51545d7b3d4f5053c868fc74893a59b70c8ee0cbf08200ac851efca34ce37ec", "relations": [], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.4.5-b97e442e34f8cb53", "cves": [], "html": "<p>修复 Alpha 硬件的自旋锁汇编代码（Tom Lane）</p>", "text": "修复 Alpha 硬件的自旋锁汇编代码（Tom Lane）", "title": "修复 Alpha 硬件的自旋锁汇编代码", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "cc5cf2ac275d5cef08a5f1af3608582a55b4c324055542322863369211a4749d", "section_path": ["变更"], "commit_groups": [["747ca6697"]], "identity_text": "Fix spinlock assembly code for Alpha hardware (Tom Lane)", "commit_aliases": ["747ca6697"], "source_commits": ["747ca6697"], "source_entry_id": "9.4.5/changes/059", "db_id": "6fee2c9f7934ebf020a38ba1fdd32956", "patch_ids": ["0de5867ae74c49b609bb117b59723352"], "statement_hash": "243e240d16ad4c71146664e57ad122843d8fd8b337fb712922bc87c160154600", "relations": [], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.4.5-19960d87a0be9b0f", "cves": [], "html": "<p>修复 PPC 硬件的自旋锁汇编代码使其与<acronym>AIX</acronym>本机汇编器兼容（Tom Lane）</p>\n<p>如果<span>gcc</span>被配置为使用本机汇编器（这正变得越来越普遍），则用<span>gcc</span>构建无法工作。</p>", "text": "修复 PPC 硬件的自旋锁汇编代码使其与AIX本机汇编器兼容（Tom Lane） 如果gcc被配置为使用本机汇编器（这正变得越来越普遍），则用gcc构建无法工作。", "title": "修复 PPC 硬件的自旋锁汇编代码使其与AIX本机汇编器兼容", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "1099c6e767f4c6e6eb4a3e6d8bd72b49c64755503c02663c5389d28d74ab6294", "section_path": ["变更"], "commit_groups": [["14b497cfb", "3da9c060f", "472680c57", "b5a22d8bb", "c355df54e", "c41a1215f", "ffbc387bf"]], "identity_text": "Fix spinlock assembly code for PPC hardware to be compatible with AIX's native assembler (Tom Lane) Building with gcc didn't work if gcc had been configured to use the native assembler, which is becoming more common.", "commit_aliases": ["14b497cfb", "3da9c060f", "472680c57", "b5a22d8bb", "c355df54e", "c41a1215f", "ffbc387bf"], "source_commits": ["3da9c060f"], "source_entry_id": "9.4.5/changes/060", "db_id": "22ce4141ea7a2d4259ae42bcf1f79a1a", "patch_ids": ["b7a034d2c970ec723326bbf692571321"], "statement_hash": "1b1165e75b01634dea27bed0b57f6cccf0b1020d746b4a5ef935bee7a5d92382", "relations": [{"rule": 2, "type": "equivalent", "target": "08722d0b58627909bc9f53b8719359d3", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1b1165e75b01634dea27bed0b57f6cccf0b1020d746b4a5ef935bee7a5d92382"}}, {"rule": 2, "type": "equivalent", "target": "2053606d8ce631ced9d2a927696bbcba", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1b1165e75b01634dea27bed0b57f6cccf0b1020d746b4a5ef935bee7a5d92382"}}, {"rule": 2, "type": "equivalent", "target": "88d1a5e3e1cda3976eb97d2f02e3b6d3", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1b1165e75b01634dea27bed0b57f6cccf0b1020d746b4a5ef935bee7a5d92382"}}, {"rule": 2, "type": "equivalent", "target": "ee5930d6b766b9749efaddd9c3cc5f4c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1b1165e75b01634dea27bed0b57f6cccf0b1020d746b4a5ef935bee7a5d92382"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "2053606d8ce631ced9d2a927696bbcba", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复 PPC 硬件的自旋锁汇编代码使其与AIX本机汇编器兼容", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1b1165e75b01634dea27bed0b57f6cccf0b1020d746b4a5ef935bee7a5d92382"}, "url": "/docs/compare/?release=9.3.10#9.3.10-19960d87a0be9b0f", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "88d1a5e3e1cda3976eb97d2f02e3b6d3", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复 PPC 硬件的自旋锁汇编代码使其与AIX本机汇编器兼容", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1b1165e75b01634dea27bed0b57f6cccf0b1020d746b4a5ef935bee7a5d92382"}, "url": "/docs/compare/?release=9.2.14#9.2.14-19960d87a0be9b0f", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "08722d0b58627909bc9f53b8719359d3", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复 PPC 硬件的自旋锁汇编代码使其与AIX本机汇编器兼容", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1b1165e75b01634dea27bed0b57f6cccf0b1020d746b4a5ef935bee7a5d92382"}, "url": "/docs/compare/?release=9.1.19#9.1.19-19960d87a0be9b0f", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "ee5930d6b766b9749efaddd9c3cc5f4c", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复 PPC 硬件的自旋锁汇编代码使其与AIX本机汇编器兼容", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1b1165e75b01634dea27bed0b57f6cccf0b1020d746b4a5ef935bee7a5d92382"}, "url": "/docs/compare/?release=9.0.23#9.0.23-19960d87a0be9b0f", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-582cb3ddeafa8431", "cves": [], "html": "<p>在 <acronym>AIX</acronym> 上，测试 <code>-qlonglong</code> 编译器选项，而不是仅仅假定可以安全使用（Noah Misch）</p>", "text": "在 AIX 上，测试 -qlonglong 编译器选项，而不是仅仅假定可以安全使用（Noah Misch）", "title": "在 AIX 上，测试 -qlonglong 编译器选项，而不是仅仅假定可以安全使用", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "c02fa835a0c930063520397f24f1953fde6d306f4bad2cb0a9a9975c8acfb7ad", "section_path": ["变更"], "commit_groups": [["12073b9aa", "43d89a23d", "7319c0524", "76fa354c5", "cdf596b1c", "eb3b93b53", "f3f037e18"]], "identity_text": "On AIX, test the -qlonglong compiler option rather than just assuming it's safe to use (Noah Misch)", "commit_aliases": ["12073b9aa", "43d89a23d", "7319c0524", "76fa354c5", "cdf596b1c", "eb3b93b53", "f3f037e18"], "source_commits": ["f3f037e18"], "source_entry_id": "9.4.5/changes/061", "db_id": "c00323995f0b6ae45556947d8a9e3505", "patch_ids": ["f56fb75fef42b1bc8f3e440ec98812b9"], "statement_hash": "cc165bf194d65990d80eba308680b15ef43c28c6bbb9d7001d5b04e816834fff", "relations": [{"rule": 2, "type": "equivalent", "target": "568dfa6e89c6639fa12ac119790807aa", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cc165bf194d65990d80eba308680b15ef43c28c6bbb9d7001d5b04e816834fff"}}, {"rule": 2, "type": "equivalent", "target": "6a2f7a5d970f41298c516e2d6993f1f1", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cc165bf194d65990d80eba308680b15ef43c28c6bbb9d7001d5b04e816834fff"}}, {"rule": 2, "type": "equivalent", "target": "8dfcc185ebbb8d9b450a386f73553b84", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cc165bf194d65990d80eba308680b15ef43c28c6bbb9d7001d5b04e816834fff"}}, {"rule": 2, "type": "equivalent", "target": "f43a95263da908bd3c3bf2ce74809e5c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cc165bf194d65990d80eba308680b15ef43c28c6bbb9d7001d5b04e816834fff"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "f43a95263da908bd3c3bf2ce74809e5c", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "在AIX上，测试-qlonglong编译器选项，而不是直接假定它可以安全使用", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cc165bf194d65990d80eba308680b15ef43c28c6bbb9d7001d5b04e816834fff"}, "url": "/docs/compare/?release=9.3.10#9.3.10-d99afd964efabbd7", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "6a2f7a5d970f41298c516e2d6993f1f1", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "在AIX上，测试-qlonglong编译器选项，而不是直接假定它可以安全使用", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cc165bf194d65990d80eba308680b15ef43c28c6bbb9d7001d5b04e816834fff"}, "url": "/docs/compare/?release=9.2.14#9.2.14-d99afd964efabbd7", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "568dfa6e89c6639fa12ac119790807aa", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "在AIX上，测试-qlonglong编译器选项，而不是直接假定它可以安全使用", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cc165bf194d65990d80eba308680b15ef43c28c6bbb9d7001d5b04e816834fff"}, "url": "/docs/compare/?release=9.1.19#9.1.19-d99afd964efabbd7", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "8dfcc185ebbb8d9b450a386f73553b84", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "在AIX上，测试-qlonglong编译器选项，而不是直接假定它可以安全使用", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cc165bf194d65990d80eba308680b15ef43c28c6bbb9d7001d5b04e816834fff"}, "url": "/docs/compare/?release=9.0.23#9.0.23-d99afd964efabbd7", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-b77bed39928ffbe9", "cves": [], "html": "<p>在<acronym>AIX</acronym>上，使用<code>-Wl,-brtllib</code>链接选项以允许符号在运行时解析（Noah Misch）</p>\n<p>Perl 5.8.0 及更高版本依赖这一能力。</p>", "text": "在AIX上，使用-Wl,-brtllib链接选项以允许符号在运行时解析（Noah Misch） Perl 5.8.0 及更高版本依赖这一能力。", "title": "在AIX上，使用-Wl,-brtllib链接选项以允许符号在运行时解析", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "359c0e0820174e6b0106125372d70ce8f90edc57ee9e2efb429471b6e0f7cfda", "section_path": ["变更"], "commit_groups": [["1dd2b6b68", "2405107b4", "690bec26c", "7803d5720", "bcd7c4120", "c2b824e34", "dc5075fed"]], "identity_text": "On AIX, use -Wl,-brtllib link option to allow symbols to be resolved at runtime (Noah Misch) Perl relies on this ability in 5.8.0 and later.", "commit_aliases": ["1dd2b6b68", "2405107b4", "690bec26c", "7803d5720", "bcd7c4120", "c2b824e34", "dc5075fed"], "source_commits": ["2405107b4"], "source_entry_id": "9.4.5/changes/062", "db_id": "1c471a9d8bab5c55ebd8141bdc0c545c", "patch_ids": ["811ed5ab543b86ec464344046de3ce03"], "statement_hash": "e4a8a2748e95297e0fc15c46824099d3958d8d6c815e2dfd010bd9b7661210c5", "relations": [{"rule": 2, "type": "equivalent", "target": "702a7f1c8f7a8410baa8a62ff10c6dd3", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e4a8a2748e95297e0fc15c46824099d3958d8d6c815e2dfd010bd9b7661210c5"}}, {"rule": 2, "type": "equivalent", "target": "86d8b90f4c61aafb7a7fb2189c44d402", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e4a8a2748e95297e0fc15c46824099d3958d8d6c815e2dfd010bd9b7661210c5"}}, {"rule": 2, "type": "equivalent", "target": "8f1708238b550f84182c44af3d3c0b82", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e4a8a2748e95297e0fc15c46824099d3958d8d6c815e2dfd010bd9b7661210c5"}}, {"rule": 2, "type": "equivalent", "target": "a81be841fc994304a694cdfc03638283", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e4a8a2748e95297e0fc15c46824099d3958d8d6c815e2dfd010bd9b7661210c5"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "a81be841fc994304a694cdfc03638283", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "在AIX上，使用-Wl,-brtllib链接选项以允许符号在运行时解析", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e4a8a2748e95297e0fc15c46824099d3958d8d6c815e2dfd010bd9b7661210c5"}, "url": "/docs/compare/?release=9.3.10#9.3.10-b77bed39928ffbe9", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "702a7f1c8f7a8410baa8a62ff10c6dd3", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "在AIX上，使用-Wl,-brtllib链接选项以允许符号在运行时解析", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e4a8a2748e95297e0fc15c46824099d3958d8d6c815e2dfd010bd9b7661210c5"}, "url": "/docs/compare/?release=9.2.14#9.2.14-b77bed39928ffbe9", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "86d8b90f4c61aafb7a7fb2189c44d402", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "在AIX上，使用-Wl,-brtllib链接选项以允许符号在运行时解析", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e4a8a2748e95297e0fc15c46824099d3958d8d6c815e2dfd010bd9b7661210c5"}, "url": "/docs/compare/?release=9.1.19#9.1.19-b77bed39928ffbe9", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "8f1708238b550f84182c44af3d3c0b82", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "在AIX上，使用-Wl,-brtllib链接选项以允许符号在运行时解析", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e4a8a2748e95297e0fc15c46824099d3958d8d6c815e2dfd010bd9b7661210c5"}, "url": "/docs/compare/?release=9.0.23#9.0.23-b77bed39928ffbe9", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-a8fff0424fa4307c", "cves": [], "html": "<p>使用 32 位 <span>xlc</span> 编译时避免使用内联函数，因为编译器存在缺陷（Noah Misch）</p>", "text": "使用 32 位 xlc 编译时避免使用内联函数，因为编译器存在缺陷（Noah Misch）", "title": "使用 32 位 xlc 编译时避免使用内联函数，因为编译器存在缺陷", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "844943335464d4ee474c3f73667a13bc4fe93d923c5029c480b2d1c69b6c1977", "section_path": ["变更"], "commit_groups": [["0a89f3bc6", "23e7ee962", "2d8c136e7", "76cf5f195", "a664d4790", "c53f73879", "d20327a4f"]], "identity_text": "Avoid use of inline functions when compiling with 32-bit xlc, due to compiler bugs (Noah Misch)", "commit_aliases": ["0a89f3bc6", "23e7ee962", "2d8c136e7", "76cf5f195", "a664d4790", "c53f73879", "d20327a4f"], "source_commits": ["76cf5f195"], "source_entry_id": "9.4.5/changes/063", "db_id": "48f15fe9b20c6994a95a807b98ec35bb", "patch_ids": ["4540619e024402e26a06c24d05af4a2d"], "statement_hash": "145f012e8d72f366304e35b0f86eb96441bde62f8d43077520a1dc99c0f81cb8", "relations": [{"rule": 2, "type": "equivalent", "target": "3d670e76d42c19d3aaec94c33efa2ef1", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "145f012e8d72f366304e35b0f86eb96441bde62f8d43077520a1dc99c0f81cb8"}}, {"rule": 2, "type": "equivalent", "target": "758e12ef578cbeb1823776e365470049", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "145f012e8d72f366304e35b0f86eb96441bde62f8d43077520a1dc99c0f81cb8"}}, {"rule": 2, "type": "equivalent", "target": "876020ff4ceebd981830b752b8cf086f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "145f012e8d72f366304e35b0f86eb96441bde62f8d43077520a1dc99c0f81cb8"}}, {"rule": 2, "type": "equivalent", "target": "ba1b33efb41d54081600d29fc597454e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "145f012e8d72f366304e35b0f86eb96441bde62f8d43077520a1dc99c0f81cb8"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "3d670e76d42c19d3aaec94c33efa2ef1", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "由于编译器缺陷，在使用 32 位xlc编译时避免使用内联函数", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "145f012e8d72f366304e35b0f86eb96441bde62f8d43077520a1dc99c0f81cb8"}, "url": "/docs/compare/?release=9.3.10#9.3.10-2079635a1865c234", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "876020ff4ceebd981830b752b8cf086f", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "由于编译器缺陷，在使用 32 位xlc编译时避免使用内联函数", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "145f012e8d72f366304e35b0f86eb96441bde62f8d43077520a1dc99c0f81cb8"}, "url": "/docs/compare/?release=9.2.14#9.2.14-2079635a1865c234", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "758e12ef578cbeb1823776e365470049", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "由于编译器缺陷，在使用 32 位xlc编译时避免使用内联函数", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "145f012e8d72f366304e35b0f86eb96441bde62f8d43077520a1dc99c0f81cb8"}, "url": "/docs/compare/?release=9.1.19#9.1.19-2079635a1865c234", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "ba1b33efb41d54081600d29fc597454e", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "由于编译器缺陷，在使用 32 位xlc编译时避免使用内联函数", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "145f012e8d72f366304e35b0f86eb96441bde62f8d43077520a1dc99c0f81cb8"}, "url": "/docs/compare/?release=9.0.23#9.0.23-2079635a1865c234", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-c82c3c5848e8ae19", "cves": [], "html": "<p>必要时使用 <code>librt</code> 提供 <code>sched_yield()</code>，在某些 Solaris 版本上正是如此（Oskari Saarenmaa）</p>", "text": "必要时使用 librt 提供 sched_yield()，在某些 Solaris 版本上正是如此（Oskari Saarenmaa）", "title": "必要时使用 librt 提供 sched_yield()，在某些 Solaris 版本上正是如此", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "1c63156636d12289eefcd36ce516cec2c3d6057ac02f8f6cad207711d8d911ca", "section_path": ["变更"], "commit_groups": [["a9f886f41", "ab93f90cd", "b185c42c1", "c085e072f", "c538d7363", "ef704ec06"]], "identity_text": "Use librt for sched_yield() when necessary, which it is on some Solaris versions (Oskari Saarenmaa)", "commit_aliases": ["a9f886f41", "ab93f90cd", "b185c42c1", "c085e072f", "c538d7363", "ef704ec06"], "source_commits": ["ef704ec06"], "source_entry_id": "9.4.5/changes/064", "db_id": "07cc0a1005b6962cde2372e9f9368b21", "patch_ids": ["df70b3a0a7ac2eb932005a2d315de802"], "statement_hash": "6f3bf634e61cbc1999279e3da5421becfeefcc5d86dd5353a17619da09938813", "relations": [{"rule": 2, "type": "equivalent", "target": "28d4a8ee80331047799b18a48644e0ba", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6f3bf634e61cbc1999279e3da5421becfeefcc5d86dd5353a17619da09938813"}}, {"rule": 2, "type": "equivalent", "target": "367ba659cb5305339233fa74c73c909f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6f3bf634e61cbc1999279e3da5421becfeefcc5d86dd5353a17619da09938813"}}, {"rule": 2, "type": "equivalent", "target": "640c578e3035e1922f5aeaf519c9e8ce", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6f3bf634e61cbc1999279e3da5421becfeefcc5d86dd5353a17619da09938813"}}, {"rule": 2, "type": "equivalent", "target": "b10009add7519a9b2ba6ee201651ed9e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6f3bf634e61cbc1999279e3da5421becfeefcc5d86dd5353a17619da09938813"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "367ba659cb5305339233fa74c73c909f", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "必要时使用librt提供sched_yield()，某些 Solaris 版本即是如此", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6f3bf634e61cbc1999279e3da5421becfeefcc5d86dd5353a17619da09938813"}, "url": "/docs/compare/?release=9.3.10#9.3.10-c5b84c55a849b496", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "b10009add7519a9b2ba6ee201651ed9e", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "必要时使用librt提供sched_yield()，某些 Solaris 版本即是如此", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6f3bf634e61cbc1999279e3da5421becfeefcc5d86dd5353a17619da09938813"}, "url": "/docs/compare/?release=9.2.14#9.2.14-c5b84c55a849b496", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "28d4a8ee80331047799b18a48644e0ba", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "必要时使用librt提供sched_yield()，某些 Solaris 版本即是如此", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6f3bf634e61cbc1999279e3da5421becfeefcc5d86dd5353a17619da09938813"}, "url": "/docs/compare/?release=9.1.19#9.1.19-c5b84c55a849b496", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "640c578e3035e1922f5aeaf519c9e8ce", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "必要时使用librt提供sched_yield()，某些 Solaris 版本即是如此", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6f3bf634e61cbc1999279e3da5421becfeefcc5d86dd5353a17619da09938813"}, "url": "/docs/compare/?release=9.0.23#9.0.23-c5b84c55a849b496", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-542d82fee6fc032c", "cves": [], "html": "<p>将编码<code>UHC</code>按 Windows 代码页 949 处理（Noah Misch）</p>\n<p>这修复了未附属到任何特定数据库的进程（如 postmaster）发出的非 ASCII 日志消息的呈现。</p>", "text": "将编码UHC按 Windows 代码页 949 处理（Noah Misch） 这修复了未附属到任何特定数据库的进程（如 postmaster）发出的非 ASCII 日志消息的呈现。", "title": "将编码UHC按 Windows 代码页 949 处理", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "4bff976b4a128746c4a45da424313c7b565c2862def41ea9b8d81b99c94bc33f", "section_path": ["变更"], "commit_groups": [["a0104e080", "ec79978dd", "f19ad6fbe"]], "identity_text": "Translate encoding UHC as Windows code page 949 (Noah Misch) This fixes presentation of non-ASCII log messages from processes that are not attached to any particular database, such as the postmaster.", "commit_aliases": ["a0104e080", "ec79978dd", "f19ad6fbe"], "source_commits": ["a0104e080"], "source_entry_id": "9.4.5/changes/065", "db_id": "c8827989117daea8ede417ddf7952762", "patch_ids": ["ea3a64ebcc303f71e9dccf09c5c72ebd"], "statement_hash": "356a24c5704d64873bf53cc7f36fbe6d43077751fa3241c01cef03a149c6bbc0", "relations": [], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.4.5-b5837f7b27e064ff", "cves": [], "html": "<p>在 Windows 上，避免在事务之外（例如为日志消息）进行到 UTF16 的编码转换时失败（Noah Misch）</p>", "text": "在 Windows 上，避免在事务之外（例如为日志消息）进行到 UTF16 的编码转换时失败（Noah Misch）", "title": "在 Windows 上，避免在事务之外（例如为日志消息）进行到 UTF16 的编码转换时失败", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "6963ea52ccd49823a76d3e2478fbf4256491c14aa5ff580c3008d039a355a7f0", "section_path": ["变更"], "commit_groups": [["43adc7a71", "92516bf19", "f988da953"]], "identity_text": "On Windows, avoid failure when doing encoding conversion to UTF16 outside a transaction, such as for log messages (Noah Misch)", "commit_aliases": ["43adc7a71", "92516bf19", "f988da953"], "source_commits": ["f988da953"], "source_entry_id": "9.4.5/changes/066", "db_id": "efa8f6de838e86ebc8e0a82763d86d0a", "patch_ids": ["95bfece8c037b6ae76d64c547b087fef"], "statement_hash": "bf47bad4afcec67b7745ce3c0e8f34b721332c4a04295892472e08560ec4fa65", "relations": [], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.4.5-ee9d3ece7d7ff113", "cves": [], "html": "<p>修复因未复制<code>setlocale()</code>返回值导致的 postmaster 启动失败（Noah Misch）</p>\n<p>这在 ANSI 代码页设为 CP936（<span>“<span>简体中文（中华人民共和国）</span>”</span>）的 Windows 系统上曾有报告，其他多字节代码页也可能出现。</p>", "text": "修复因未复制setlocale()返回值导致的 postmaster 启动失败（Noah Misch） 这在 ANSI 代码页设为 CP936（“简体中文（中华人民共和国）”）的 Windows 系统上曾有报告，其他多字节代码页也可能出现。", "title": "修复因未复制setlocale()返回值导致的 postmaster 启动失败", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "9ad2268fb24b3534541bfb94973cc647076cf67a2e16b09ff84966c44337daa5", "section_path": ["变更"], "commit_groups": [["b2ed1682d", "f0a264a36"]], "identity_text": "Fix postmaster startup failure due to not copying setlocale()'s return value (Noah Misch) This has been reported on Windows systems with the ANSI code page set to CP936 (Chinese (Simplified, PRC)), and may occur with other multibyte code pages.", "commit_aliases": ["b2ed1682d", "f0a264a36"], "source_commits": ["b2ed1682d"], "source_entry_id": "9.4.5/changes/067", "db_id": "dd56dd70a3c356873bb520040405e9d2", "patch_ids": ["cc41b65504d4524c7b1bb6724067d909"], "statement_hash": "8037781874c1a1b0e764bb028b2d0c1d980979f02405733593eec5394142d6cb", "relations": [], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.4.5-27ca82cd1452b2e3", "cves": [], "html": "<p>修复 Windows <code>install.bat</code> 脚本以处理包含空格的目标目录名（Heikki Linnakangas）</p>", "text": "修复 Windows install.bat 脚本以处理包含空格的目标目录名（Heikki Linnakangas）", "title": "修复 Windows install.bat 脚本以处理包含空格的目标目录名", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "055bad70218f110bc06ec240c080eb474a3a2f86b4b52c96f87ce3ec789dc897", "section_path": ["变更"], "commit_groups": [["341b877d3", "3b7cf4367", "4dac5651b", "6c534fd68", "880365a3c", "a5273ef37", "e5460aa02"]], "identity_text": "Fix Windows install.bat script to handle target directory names that contain spaces (Heikki Linnakangas)", "commit_aliases": ["341b877d3", "3b7cf4367", "4dac5651b", "6c534fd68", "880365a3c", "a5273ef37", "e5460aa02"], "source_commits": ["4dac5651b"], "source_entry_id": "9.4.5/changes/068", "db_id": "7c0e915caa622e816a95f71b331a99b8", "patch_ids": ["a1d030d3517b7a1fefc77cf3c80da53c"], "statement_hash": "2aed701e47d9fea2fc3f4468e294c897ad336ec1542cae0693ae80fafdd100f5", "relations": [{"rule": 2, "type": "equivalent", "target": "20abc2c5303e78b897918c6b0787d6e0", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2aed701e47d9fea2fc3f4468e294c897ad336ec1542cae0693ae80fafdd100f5"}}, {"rule": 2, "type": "equivalent", "target": "28c9d0f663c7d40194eb73fb31a0c3bf", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2aed701e47d9fea2fc3f4468e294c897ad336ec1542cae0693ae80fafdd100f5"}}, {"rule": 2, "type": "equivalent", "target": "2ab7366931eca415ea81477cdaf50977", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2aed701e47d9fea2fc3f4468e294c897ad336ec1542cae0693ae80fafdd100f5"}}, {"rule": 2, "type": "equivalent", "target": "8178eb6232fd972850e1261471abbe2c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2aed701e47d9fea2fc3f4468e294c897ad336ec1542cae0693ae80fafdd100f5"}}], "version": "9.4.5", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "20abc2c5303e78b897918c6b0787d6e0", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "修复 Windowsinstall.bat脚本以处理包含空格的目标目录名", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2aed701e47d9fea2fc3f4468e294c897ad336ec1542cae0693ae80fafdd100f5"}, "url": "/docs/compare/?release=9.3.10#9.3.10-ab87fa4f5d7affe5", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "28c9d0f663c7d40194eb73fb31a0c3bf", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "修复 Windowsinstall.bat脚本以处理包含空格的目标目录名", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2aed701e47d9fea2fc3f4468e294c897ad336ec1542cae0693ae80fafdd100f5"}, "url": "/docs/compare/?release=9.2.14#9.2.14-ab87fa4f5d7affe5", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "8178eb6232fd972850e1261471abbe2c", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "修复 Windowsinstall.bat脚本以处理包含空格的目标目录名", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2aed701e47d9fea2fc3f4468e294c897ad336ec1542cae0693ae80fafdd100f5"}, "url": "/docs/compare/?release=9.1.19#9.1.19-ab87fa4f5d7affe5", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "2ab7366931eca415ea81477cdaf50977", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "修复 Windowsinstall.bat脚本以处理包含空格的目标目录名", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2aed701e47d9fea2fc3f4468e294c897ad336ec1542cae0693ae80fafdd100f5"}, "url": "/docs/compare/?release=9.0.23#9.0.23-ab87fa4f5d7affe5", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-5ee43f800ffd792d", "cves": [], "html": "<p>使 <span>PostgreSQL</span> 版本号的数字形式（例如 <code>90405</code>）以名为 <code>VERSION_NUM</code> 的变量方便地供扩展 Makefile 使用（Michael Paquier）</p>", "text": "使 PostgreSQL 版本号的数字形式（例如 90405）以名为 VERSION_NUM 的变量方便地供扩展 Makefile 使用（Michael Paquier）", "title": "使 PostgreSQL 版本号的数字形式（例如 90405）以名为 VERSION_NUM 的变量方便地供扩展 Makefile 使用", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "5959fbd39edc6d90ceb04f417b68d3808976e82b2e4d58974f530a42e51b0d68", "section_path": ["变更"], "commit_groups": [["29ff43adf", "544e75814", "60c38e62c", "89b8cf47b", "9b00885d0", "a5d489ccb", "d1fec374f"]], "identity_text": "Make the numeric form of the PostgreSQL version number (e.g., 90405) readily available to extension Makefiles, as a variable named VERSION_NUM (Michael Paquier)", "commit_aliases": ["29ff43adf", "544e75814", "60c38e62c", "89b8cf47b", "9b00885d0", "a5d489ccb", "d1fec374f"], "source_commits": ["60c38e62c"], "source_entry_id": "9.4.5/changes/069", "db_id": "f60461d369dd6c92d50478705906a207", "patch_ids": ["105fe06ac5233deb77e391fbe65433a2"], "statement_hash": "484060ca2a9408a8cf77ff226efaf1da79595db7b09616726d77ba2163df1965", "relations": [{"rule": 2, "type": "equivalent", "target": "0c57541666ec0cce94e6def17ed48342", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "484060ca2a9408a8cf77ff226efaf1da79595db7b09616726d77ba2163df1965"}}, {"rule": 2, "type": "equivalent", "target": "3b8975527a21b7d7d5623b9a190723b0", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "484060ca2a9408a8cf77ff226efaf1da79595db7b09616726d77ba2163df1965"}}, {"rule": 2, "type": "equivalent", "target": "8aef9c56b83c6445e74788a14336c07f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "484060ca2a9408a8cf77ff226efaf1da79595db7b09616726d77ba2163df1965"}}, {"rule": 2, "type": "equivalent", "target": "b6a53bd4e874ed0d250f3685a5016a87", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "484060ca2a9408a8cf77ff226efaf1da79595db7b09616726d77ba2163df1965"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "0c57541666ec0cce94e6def17ed48342", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "使PostgreSQL版本号的数字形式（例如90405）以名为VERSION_NUM的变量方便地提供给扩展 Makefile 使用", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "484060ca2a9408a8cf77ff226efaf1da79595db7b09616726d77ba2163df1965"}, "url": "/docs/compare/?release=9.3.10#9.3.10-13376f8ec69d0ac3", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "8aef9c56b83c6445e74788a14336c07f", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "使PostgreSQL版本号的数字形式（例如90405）以名为VERSION_NUM的变量方便地提供给扩展 Makefile 使用", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "484060ca2a9408a8cf77ff226efaf1da79595db7b09616726d77ba2163df1965"}, "url": "/docs/compare/?release=9.2.14#9.2.14-13376f8ec69d0ac3", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "b6a53bd4e874ed0d250f3685a5016a87", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "使PostgreSQL版本号的数字形式（例如90405）以名为VERSION_NUM的变量方便地提供给扩展 Makefile 使用", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "484060ca2a9408a8cf77ff226efaf1da79595db7b09616726d77ba2163df1965"}, "url": "/docs/compare/?release=9.1.19#9.1.19-13376f8ec69d0ac3", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "3b8975527a21b7d7d5623b9a190723b0", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "使PostgreSQL版本号的数字形式（例如90405）以名为VERSION_NUM的变量方便地提供给扩展 Makefile 使用", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "484060ca2a9408a8cf77ff226efaf1da79595db7b09616726d77ba2163df1965"}, "url": "/docs/compare/?release=9.0.23#9.0.23-13376f8ec69d0ac3", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}, {"id": "9.4.5-0c2086ccc354a5b3", "cves": [], "html": "<p>将时区数据文件更新到 <span>tzdata</span> 发行版 2015g，涵盖开曼群岛、斐济、摩尔多瓦、摩洛哥、诺福克岛、朝鲜、土耳其和乌拉圭的夏令时法规变更。为加拿大北部落基山脉新增了时区名 <code>America/Fort_Nelson</code>。</p>", "text": "将时区数据文件更新到 tzdata 发行版 2015g，涵盖开曼群岛、斐济、摩尔多瓦、摩洛哥、诺福克岛、朝鲜、土耳其和乌拉圭的夏令时法规变更。为加拿大北部落基山脉新增了时区名 America/Fort_Nelson。", "title": "将时区数据文件更新到 tzdata 发行版 2015g，涵盖开曼群岛、斐济、摩尔多瓦、摩洛哥、诺福克岛、朝鲜、土耳其和乌拉圭的夏令时法规变更。为加拿大北部落基山脉新增了时区名 America/Fort_Nelson。", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.5/#id-1.11.6.26.5", "source_hash": "d99a81058168caa22d8a41fef82b608e536eab728d64fc44392f18ba60d29a15", "section_path": ["变更"], "commit_groups": [["0f6a046b6", "19b06cc66", "241e6844a", "3a68e0a10", "47ac95f37", "8e45497a2", "fd519c170"]], "identity_text": "Update time zone data files to tzdata release 2015g for DST law changes in Cayman Islands, Fiji, Moldova, Morocco, Norfolk Island, North Korea, Turkey, and Uruguay. There is a new zone name America/Fort_Nelson for the Canadian Northern Rockies.", "commit_aliases": ["0f6a046b6", "19b06cc66", "241e6844a", "3a68e0a10", "47ac95f37", "8e45497a2", "fd519c170"], "source_commits": ["8e45497a2"], "source_entry_id": "9.4.5/changes/070", "db_id": "510de35fcf64345dcecff12334bb64e3", "patch_ids": ["3083cd7e4b19840bbab858db86300f75"], "statement_hash": "9d15de3da93624597b911098ac15b151147ba4c257e70bfcae8ff609fb75de59", "relations": [{"rule": 2, "type": "equivalent", "target": "344574c08c0ea148baed85e08eb62e7a", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9d15de3da93624597b911098ac15b151147ba4c257e70bfcae8ff609fb75de59"}}, {"rule": 2, "type": "equivalent", "target": "34a3f0ed3ee346eada29462e320dd286", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9d15de3da93624597b911098ac15b151147ba4c257e70bfcae8ff609fb75de59"}}, {"rule": 2, "type": "equivalent", "target": "6c36282afead4d03a462ad37adcbf939", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9d15de3da93624597b911098ac15b151147ba4c257e70bfcae8ff609fb75de59"}}, {"rule": 2, "type": "equivalent", "target": "bbf6a37d073d738034730fd70cbb8adb", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9d15de3da93624597b911098ac15b151147ba4c257e70bfcae8ff609fb75de59"}}], "version": "9.4.5", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "344574c08c0ea148baed85e08eb62e7a", "kind": "equivalent", "version": "9.3.10", "label": "9.3.10", "title": "将时区数据文件更新到tzdata发行版 2015g，以反映开曼群岛、斐济、摩尔多瓦、摩洛哥、诺福克岛、朝鲜、土耳其和乌拉圭的夏令时法规变更。为加拿大北落基山地区新增了时区名America/Fort_Nelson。", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9d15de3da93624597b911098ac15b151147ba4c257e70bfcae8ff609fb75de59"}, "url": "/docs/compare/?release=9.3.10#9.3.10-5a7b80cf37914d87", "source_url": "/docs/release/9.3.10/#id-1.11.6.20.5"}, {"db_id": "6c36282afead4d03a462ad37adcbf939", "kind": "equivalent", "version": "9.2.14", "label": "9.2.14", "title": "将时区数据文件更新到tzdata发行版 2015g，以反映开曼群岛、斐济、摩尔多瓦、摩洛哥、诺福克岛、朝鲜、土耳其和乌拉圭的夏令时法规变更。为加拿大北落基山地区新增了时区名America/Fort_Nelson。", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9d15de3da93624597b911098ac15b151147ba4c257e70bfcae8ff609fb75de59"}, "url": "/docs/compare/?release=9.2.14#9.2.14-5a7b80cf37914d87", "source_url": "/docs/release/9.2.14/#id-1.11.6.15.5"}, {"db_id": "34a3f0ed3ee346eada29462e320dd286", "kind": "equivalent", "version": "9.1.19", "label": "9.1.19", "title": "将时区数据文件更新到tzdata发行版 2015g，以反映开曼群岛、斐济、摩尔多瓦、摩洛哥、诺福克岛、朝鲜、土耳其和乌拉圭的夏令时法规变更。为加拿大北落基山地区新增了时区名America/Fort_Nelson。", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9d15de3da93624597b911098ac15b151147ba4c257e70bfcae8ff609fb75de59"}, "url": "/docs/compare/?release=9.1.19#9.1.19-5a7b80cf37914d87", "source_url": "/docs/release/9.1.19/#id-1.11.6.10.5"}, {"db_id": "bbf6a37d073d738034730fd70cbb8adb", "kind": "equivalent", "version": "9.0.23", "label": "9.0.23", "title": "将时区数据文件更新到tzdata发行版 2015g，以反映开曼群岛、斐济、摩尔多瓦、摩洛哥、诺福克岛、朝鲜、土耳其和乌拉圭的夏令时法规变更。为加拿大北落基山地区新增了时区名America/Fort_Nelson。", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9d15de3da93624597b911098ac15b151147ba4c257e70bfcae8ff609fb75de59"}, "url": "/docs/compare/?release=9.0.23#9.0.23-5a7b80cf37914d87", "source_url": "/docs/release/9.0.23/#id-1.11.6.5.6"}]}]}], "stats": [{"key": "all", "label": "全部变更", "count": 70}, {"key": "feature", "label": "新功能", "count": 0}, {"key": "bugfix", "label": "BUG 修复", "count": 37}, {"key": "security", "label": "安全相关", "count": 2}, {"key": "performance", "label": "性能改进", "count": 1}, {"key": "compatibility", "label": "兼容性变化", "count": 0}, {"key": "improvement", "label": "其他改进", "count": 30}], "total": 70, "release_count": 1, "cross_major": false, "cve_count": 2, "cves": [{"id": "CVE-2015-5289", "url": "https://www.postgresql.org/support/security/CVE-2015-5289/", "fixed": {"9.3": "9.3.10", "9.4": "9.4.5"}, "score": 5.9, "title": "防御json解析中的栈溢出", "vector": "AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H", "affected": {"9.3": "9.3", "9.4": "9.4"}, "component": "core server", "published": {"9.3": "2015-10-08", "9.4": "2015-10-08"}, "introduced": {}, "cvss_version": "3.0", "description_en": "", "first_published": "2015-10-08", "fixed_version": "9.4.5"}, {"id": "CVE-2015-5288", "url": "https://www.postgresql.org/support/security/CVE-2015-5288/", "fixed": {"9.0": "9.0.23", "9.1": "9.1.19", "9.2": "9.2.14", "9.3": "9.3.10", "9.4": "9.4.5"}, "score": 3.1, "title": "修复contrib/pgcrypto以检测并报告过短的crypt()盐值", "vector": "AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N", "affected": {"9.0": "9.0", "9.1": "9.1", "9.2": "9.2", "9.3": "9.3", "9.4": "9.4"}, "component": "contrib module", "published": {"9.0": "2015-10-08", "9.1": "2015-10-08", "9.2": "2015-10-08", "9.3": "2015-10-08", "9.4": "2015-10-08"}, "introduced": {}, "cvss_version": "3.0", "description_en": "", "first_published": "2015-10-08", "fixed_version": "9.4.5"}], "cve_available": true, "remaining_cves": [], "security_regressions": [], "warnings": [], "candidate_count": 70, "already_in_source_count": 0, "duplicate_count": 0, "excluded_count": 0, "exclusions": [], "source_as_of": "2026-09-26", "security_as_of": "2026-09-26"}