{"format": 1, "mode": "release", "from_release": null, "to_release": {"date": "2016-03-31", "build": "9.4.7", "major": "9.4", "minor": 7, "manual": "9.4", "status": "stable", "doc_git": "", "version": "9.4.7", "eol_date": "2020-02-13", "date_text": "2016-03-31", "supported": false, "manual_url": "/docs/9.4/release-9-4-7.html", "source_url": "/docs/release/9.4.7/", "entry_count": 23, "placeholder": false, "content_hash": "1bba051d6322787eaeb7de338bb79954f3027a35f08c37b93f3e8822348f6af9", "manual_build": "9.4.26", "source_as_of": "", "changes_count": 23, "doc_loaded_at": "2026-09-26T02:56:45.438944", "migration_html": "<p>对于运行 9.4.X 的用户，不需要转储/恢复。</p>\n<p>但是，如果你是从早于 9.4.6 的版本升级，请参见<a href=\"/docs/9.4/release-9-4-6.html\" title=\"E.21. 版本 9.4.6\">第 E.21 节</a>。</p>", "compatibility_count": 0, "label": "9.4.7", "status_label": "历史版本", "eol": "2020-02-13", "age_days": 3835, "support_days": -2421}, "groups": [{"date": "2016-03-31", "build": "9.4.7", "major": "9.4", "minor": 7, "manual": "9.4", "status": "stable", "doc_git": "", "version": "9.4.7", "eol_date": "2020-02-13", "date_text": "2016-03-31", "supported": false, "manual_url": "/docs/9.4/release-9-4-7.html", "source_url": "/docs/release/9.4.7/", "entry_count": 23, "placeholder": false, "content_hash": "1bba051d6322787eaeb7de338bb79954f3027a35f08c37b93f3e8822348f6af9", "manual_build": "9.4.26", "source_as_of": "", "changes_count": 23, "doc_loaded_at": "2026-09-26T02:56:45.438944", "migration_html": "<p>对于运行 9.4.X 的用户，不需要转储/恢复。</p>\n<p>但是，如果你是从早于 9.4.6 的版本升级，请参见<a href=\"/docs/9.4/release-9-4-6.html\" title=\"E.21. 版本 9.4.6\">第 E.21 节</a>。</p>", "compatibility_count": 0, "label": "9.4.7", "status_label": "历史版本", "eol": "2020-02-13", "age_days": 3835, "support_days": -2421, "entries": [{"id": "9.4.7-1af2cf271706b7c4", "cves": [], "html": "<p>修复索引化 <code>ROW()</code> 比较中对 NULL 索引条目处理不正确的问题（Tom Lane）</p>\n<p>使用诸如 <code>ROW(a, b) &gt; ROW('x', 'y')</code> 的行比较进行索引搜索时，会在到达 <code>b</code> 列的 NULL 条目时停止，忽略了 <code>b</code> 列可能有与更靠后的 <code>a</code> 值关联的非 NULL 值这一事实。</p>", "text": "修复索引化 ROW() 比较中对 NULL 索引条目处理不正确的问题（Tom Lane） 使用诸如 ROW(a, b) > ROW('x', 'y') 的行比较进行索引搜索时，会在到达 b 列的 NULL 条目时停止，忽略了 b 列可能有与更靠后的 a 值关联的非 NULL 值这一事实。", "title": "修复索引化 ROW() 比较中对 NULL 索引条目处理不正确的问题", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "49a0542558f4805ad257063f94247a38424afd6f95fef3da860ff25b8fdc1476", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix incorrect handling of NULL index entries in indexed ROW() comparisons (Tom Lane) An index search using a row comparison such as ROW(a, b) > ROW('x', 'y') would stop upon reaching a NULL entry in the b column, ignoring the fact that there might be non-NULL b values associated with later values of a.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/001", "db_id": "771229a171201c695d4c34c21216b6e7", "patch_ids": [], "statement_hash": "e5122ba5033c022dd9cae0cc394f98918f4c8094feacc04c0d0a507ffb280c61", "relations": [{"rule": 2, "type": "equivalent", "target": "80a8664f234b02e933cb1aaed80af795", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e5122ba5033c022dd9cae0cc394f98918f4c8094feacc04c0d0a507ffb280c61"}}, {"rule": 2, "type": "equivalent", "target": "920faefa1e4c1d58dec990f4a90f46b5", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e5122ba5033c022dd9cae0cc394f98918f4c8094feacc04c0d0a507ffb280c61"}}, {"rule": 2, "type": "equivalent", "target": "f7f1d0e5c88def4e0c0ab9bb7d00e041", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e5122ba5033c022dd9cae0cc394f98918f4c8094feacc04c0d0a507ffb280c61"}}, {"rule": 2, "type": "equivalent", "target": "fcaef37c43b439b3d192a695fc0c7f55", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e5122ba5033c022dd9cae0cc394f98918f4c8094feacc04c0d0a507ffb280c61"}}], "version": "9.4.7", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "fcaef37c43b439b3d192a695fc0c7f55", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "修复索引化 ROW() 比较中对 NULL 索引条目处理不正确的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e5122ba5033c022dd9cae0cc394f98918f4c8094feacc04c0d0a507ffb280c61"}, "url": "/docs/compare/?release=9.5.2#9.5.2-1af2cf271706b7c4", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}, {"db_id": "f7f1d0e5c88def4e0c0ab9bb7d00e041", "kind": "equivalent", "version": "9.3.12", "label": "9.3.12", "title": "修复索引化 ROW() 比较中对 NULL 索引条目处理不正确的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e5122ba5033c022dd9cae0cc394f98918f4c8094feacc04c0d0a507ffb280c61"}, "url": "/docs/compare/?release=9.3.12#9.3.12-1af2cf271706b7c4", "source_url": "/docs/release/9.3.12/#id-1.11.6.18.5"}, {"db_id": "80a8664f234b02e933cb1aaed80af795", "kind": "equivalent", "version": "9.2.16", "label": "9.2.16", "title": "修复索引化 ROW() 比较中对 NULL 索引条目处理不正确的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e5122ba5033c022dd9cae0cc394f98918f4c8094feacc04c0d0a507ffb280c61"}, "url": "/docs/compare/?release=9.2.16#9.2.16-1af2cf271706b7c4", "source_url": "/docs/release/9.2.16/#id-1.11.6.13.5"}, {"db_id": "920faefa1e4c1d58dec990f4a90f46b5", "kind": "equivalent", "version": "9.1.21", "label": "9.1.21", "title": "修复索引化 ROW() 比较中对 NULL 索引条目处理不正确的问题", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e5122ba5033c022dd9cae0cc394f98918f4c8094feacc04c0d0a507ffb280c61"}, "url": "/docs/compare/?release=9.1.21#9.1.21-1af2cf271706b7c4", "source_url": "/docs/release/9.1.21/#id-1.11.6.8.5"}]}, {"id": "9.4.7-508ce026c282d11e", "cves": [], "html": "<p>避免因重命名文件前后缺少充分的<code>fsync()</code>调用而导致的罕见数据丢失场景（Michael Paquier、Tomas Vondra、Andres Freund）</p>", "text": "避免因重命名文件前后缺少充分的fsync()调用而导致的罕见数据丢失场景（Michael Paquier、Tomas Vondra、Andres Freund）", "title": "避免因重命名文件前后缺少充分的fsync()调用而导致的罕见数据丢失场景", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "f6b233ff914bca4ce7f8cc4bf5b141186e6110d58665e38db87e8b4020b0882f", "section_path": ["变更"], "commit_groups": [], "identity_text": "Avoid unlikely data-loss scenarios due to renaming files without adequate fsync() calls before and after (Michael Paquier, Tomas Vondra, Andres Freund)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/002", "db_id": "3e2c0c4a1b5b42e37f23d751fd0773fb", "patch_ids": [], "statement_hash": "0344fa52ee3e1cf1eb149644ace2f3310367246c524f009b8868fce648ca8af2", "relations": [{"rule": 2, "type": "equivalent", "target": "7e62b8610521a272fc3912882e152551", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0344fa52ee3e1cf1eb149644ace2f3310367246c524f009b8868fce648ca8af2"}}, {"rule": 2, "type": "equivalent", "target": "a5765102546e298c1a6d8ed7e2e12411", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0344fa52ee3e1cf1eb149644ace2f3310367246c524f009b8868fce648ca8af2"}}, {"rule": 2, "type": "equivalent", "target": "a9854d76e1cad326241bf36f0d4fc81d", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0344fa52ee3e1cf1eb149644ace2f3310367246c524f009b8868fce648ca8af2"}}, {"rule": 2, "type": "equivalent", "target": "cbb7557e521d0a5bb82799a1e8f65f08", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0344fa52ee3e1cf1eb149644ace2f3310367246c524f009b8868fce648ca8af2"}}], "version": "9.4.7", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "a9854d76e1cad326241bf36f0d4fc81d", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "避免因重命名文件前后未充分调用 fsync() 而导致的不太可能的数据丢失场景", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0344fa52ee3e1cf1eb149644ace2f3310367246c524f009b8868fce648ca8af2"}, "url": "/docs/compare/?release=9.5.2#9.5.2-2fdb14ed3f5b5015", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}, {"db_id": "a5765102546e298c1a6d8ed7e2e12411", "kind": "equivalent", "version": "9.3.12", "label": "9.3.12", "title": "避免因重命名文件前后未充分调用 fsync() 而导致的不太可能的数据丢失场景", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0344fa52ee3e1cf1eb149644ace2f3310367246c524f009b8868fce648ca8af2"}, "url": "/docs/compare/?release=9.3.12#9.3.12-2fdb14ed3f5b5015", "source_url": "/docs/release/9.3.12/#id-1.11.6.18.5"}, {"db_id": "7e62b8610521a272fc3912882e152551", "kind": "equivalent", "version": "9.2.16", "label": "9.2.16", "title": "避免因重命名文件前后未充分调用 fsync() 而导致的不太可能的数据丢失场景", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0344fa52ee3e1cf1eb149644ace2f3310367246c524f009b8868fce648ca8af2"}, "url": "/docs/compare/?release=9.2.16#9.2.16-2fdb14ed3f5b5015", "source_url": "/docs/release/9.2.16/#id-1.11.6.13.5"}, {"db_id": "cbb7557e521d0a5bb82799a1e8f65f08", "kind": "equivalent", "version": "9.1.21", "label": "9.1.21", "title": "避免因重命名文件前后未充分调用 fsync() 而导致的不太可能的数据丢失场景", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0344fa52ee3e1cf1eb149644ace2f3310367246c524f009b8868fce648ca8af2"}, "url": "/docs/compare/?release=9.1.21#9.1.21-2fdb14ed3f5b5015", "source_url": "/docs/release/9.1.21/#id-1.11.6.8.5"}]}, {"id": "9.4.7-af60daed90eee8b1", "cves": [], "html": "<p>修复<code>json_to_record()</code>在其输入对象的某个字段包含与所请求输出列名同名的子对象字段时的缺陷（Tom Lane）</p>", "text": "修复json_to_record()在其输入对象的某个字段包含与所请求输出列名同名的子对象字段时的缺陷（Tom Lane）", "title": "修复json_to_record()在其输入对象的某个字段包含与所请求输出列名同名的子对象字段时的缺陷", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "d842bfa1ca3e9013e42c704f02e6476cac51a978c404b7e90d89e02577a635b4", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix bug in json_to_record() when a field of its input object contains a sub-object with a field name matching one of the requested output column names (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/003", "db_id": "c4e7dcd1aec9b5613d6d607be4917e0c", "patch_ids": [], "statement_hash": "0b2ae473c9353f028b51a40d41b573f41272172dd1b9bd882e0642caebd9bb26", "relations": [{"rule": 2, "type": "equivalent", "target": "468d32caa50ed7eeb024a0b427083bed", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0b2ae473c9353f028b51a40d41b573f41272172dd1b9bd882e0642caebd9bb26"}}], "version": "9.4.7", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "468d32caa50ed7eeb024a0b427083bed", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "修复 json_to_record() 在其输入对象的某个字段包含与所请求输出列名同名的子对象字段时的 bug", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0b2ae473c9353f028b51a40d41b573f41272172dd1b9bd882e0642caebd9bb26"}, "url": "/docs/compare/?release=9.5.2#9.5.2-12f34d4cb95caa38", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}]}, {"id": "9.4.7-b50f15b458508f27", "cves": [], "html": "<p>修复<code>to_char()</code>的<code>OF</code>格式代码对负时区偏移的错误格式化（Thomas Munro、Tom Lane）</p>", "text": "修复to_char()的OF格式代码对负时区偏移的错误格式化（Thomas Munro、Tom Lane）", "title": "修复to_char()的OF格式代码对负时区偏移的错误格式化", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "0fa6f740d6d3529a1fcb12c90c9c91f8c7dc80ca1e250e64417aad667d1779d6", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix misformatting of negative time zone offsets by to_char()'s OF format code (Thomas Munro, Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/004", "db_id": "33acdc644575e9fd02cb4991e51086f2", "patch_ids": [], "statement_hash": "9088b92bf18ecc3bdfc1df2b8f7bbc7ffa21f1f77bfa5b7d1b83a08b6e79ec5a", "relations": [{"rule": 2, "type": "equivalent", "target": "5a86e831c5690c7911ab51d48468842c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9088b92bf18ecc3bdfc1df2b8f7bbc7ffa21f1f77bfa5b7d1b83a08b6e79ec5a"}}], "version": "9.4.7", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "5a86e831c5690c7911ab51d48468842c", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "修复 to_char() 的 OF 格式代码对负时区偏移的格式化错误", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9088b92bf18ecc3bdfc1df2b8f7bbc7ffa21f1f77bfa5b7d1b83a08b6e79ec5a"}, "url": "/docs/compare/?release=9.5.2#9.5.2-051419f6c29fc7b6", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}]}, {"id": "9.4.7-3d6632cc5574a00a", "cves": [], "html": "<p>在恢复达到一致状态之前忽略<a href=\"/docs/9.4/standby-settings.html#RECOVERY-MIN-APPLY-DELAY\">recovery_min_apply_delay</a>参数（Michael Paquier）</p>\n<p>以前，备库在重放使其数据库状态有效所需的初始 WAL 部分时，也会响应 <code>recovery_min_apply_delay</code> 而延迟应用 WAL 记录。由于备库在达到一致数据库状态之前毫无用处，这被认为没有帮助。</p>", "text": "在恢复达到一致状态之前忽略recovery_min_apply_delay参数（Michael Paquier） 以前，备库在重放使其数据库状态有效所需的初始 WAL 部分时，也会响应 recovery_min_apply_delay 而延迟应用 WAL 记录。由于备库在达到一致数据库状态之前毫无用处，这被认为没有帮助。", "title": "在恢复达到一致状态之前忽略recovery_min_apply_delay参数", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "38f3da33424d35bbde30d87d6fb6a02f385f2dbff78d16b00cbe385a4033ad65", "section_path": ["变更"], "commit_groups": [], "identity_text": "Ignore recovery-min-apply-delay parameter until recovery has reached a consistent state (Michael Paquier) Previously, standby servers would delay application of WAL records in response to recovery_min_apply_delay even while replaying the initial portion of WAL needed to make their database state valid. Since the standby is useless until it's reached a consistent database state, this was deemed unhelpful.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/005", "db_id": "9e0ee9977dc4d09e2e90e554e5d8009c", "patch_ids": [], "statement_hash": "a5e8e5c9da2cf9115c00eec76cc41dffcad53ea25b3648926e4b71f39f0e59d6", "relations": [{"rule": 2, "type": "equivalent", "target": "b691817565939e087ebbf6f5a5c34b92", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a5e8e5c9da2cf9115c00eec76cc41dffcad53ea25b3648926e4b71f39f0e59d6"}}], "version": "9.4.7", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "b691817565939e087ebbf6f5a5c34b92", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "在恢复达到一致状态之前忽略recovery_min_apply_delay参数", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a5e8e5c9da2cf9115c00eec76cc41dffcad53ea25b3648926e4b71f39f0e59d6"}, "url": "/docs/compare/?release=9.5.2#9.5.2-3d6632cc5574a00a", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}]}, {"id": "9.4.7-b13219ddd4f87b93", "cves": [], "html": "<p>正确处理服务器启动期间<code>pg_subtrans</code>接近 XID 回卷的情况（Jeff Janes）</p>", "text": "正确处理服务器启动期间pg_subtrans接近 XID 回卷的情况（Jeff Janes）", "title": "正确处理服务器启动期间pg_subtrans接近 XID 回卷的情况", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "1f989d7d97bdca5803fe31bfebe936c9f11cbd0a28ebb7ae2c81554ad5b31aa3", "section_path": ["变更"], "commit_groups": [], "identity_text": "Correctly handle cases where pg_subtrans is close to XID wraparound during server startup (Jeff Janes)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/006", "db_id": "2b09b6fa046ed8bd01564446564b4b61", "patch_ids": [], "statement_hash": "0158441d73b68354dbc20f46732c51a45faf732b80c65bad0074da15750fd45f", "relations": [{"rule": 2, "type": "equivalent", "target": "3fde9b8a31c98892454ad1413d29137a", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0158441d73b68354dbc20f46732c51a45faf732b80c65bad0074da15750fd45f"}}, {"rule": 2, "type": "equivalent", "target": "81a9826977181e23621a765e7e44682e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0158441d73b68354dbc20f46732c51a45faf732b80c65bad0074da15750fd45f"}}, {"rule": 2, "type": "equivalent", "target": "bc2156c60c4cbf304d2e93eed86e8716", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0158441d73b68354dbc20f46732c51a45faf732b80c65bad0074da15750fd45f"}}, {"rule": 2, "type": "equivalent", "target": "edde2d207ba61807520cac74c0ead514", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0158441d73b68354dbc20f46732c51a45faf732b80c65bad0074da15750fd45f"}}], "version": "9.4.7", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "edde2d207ba61807520cac74c0ead514", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "正确处理服务器启动期间 pg_subtrans 接近 XID 回卷的情况", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0158441d73b68354dbc20f46732c51a45faf732b80c65bad0074da15750fd45f"}, "url": "/docs/compare/?release=9.5.2#9.5.2-9bb95502cd65a2d7", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}, {"db_id": "81a9826977181e23621a765e7e44682e", "kind": "equivalent", "version": "9.3.12", "label": "9.3.12", "title": "正确处理服务器启动期间 pg_subtrans 接近 XID 回卷的情况", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0158441d73b68354dbc20f46732c51a45faf732b80c65bad0074da15750fd45f"}, "url": "/docs/compare/?release=9.3.12#9.3.12-9bb95502cd65a2d7", "source_url": "/docs/release/9.3.12/#id-1.11.6.18.5"}, {"db_id": "bc2156c60c4cbf304d2e93eed86e8716", "kind": "equivalent", "version": "9.2.16", "label": "9.2.16", "title": "正确处理服务器启动期间 pg_subtrans 接近 XID 回卷的情况", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0158441d73b68354dbc20f46732c51a45faf732b80c65bad0074da15750fd45f"}, "url": "/docs/compare/?release=9.2.16#9.2.16-9bb95502cd65a2d7", "source_url": "/docs/release/9.2.16/#id-1.11.6.13.5"}, {"db_id": "3fde9b8a31c98892454ad1413d29137a", "kind": "equivalent", "version": "9.1.21", "label": "9.1.21", "title": "正确处理服务器启动期间 pg_subtrans 接近 XID 回卷的情况", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0158441d73b68354dbc20f46732c51a45faf732b80c65bad0074da15750fd45f"}, "url": "/docs/compare/?release=9.1.21#9.1.21-9bb95502cd65a2d7", "source_url": "/docs/release/9.1.21/#id-1.11.6.8.5"}]}, {"id": "9.4.7-fa77373649f1dbc4", "cves": [], "html": "<p>修复逻辑解码中的若干 bug（Andres Freund）</p>\n<p>问题情形包括：副本标识为 <code>FULL</code> 时超过一页的元组、在大到需要假脱机到磁盘的事务中更改主键的 <code>UPDATE</code>、错误地报告<span>“<span>subxact logged without previous toplevel record</span>”</span>，以及事务提交时间的错误报告。</p>", "text": "修复逻辑解码中的若干 bug（Andres Freund） 问题情形包括：副本标识为 FULL 时超过一页的元组、在大到需要假脱机到磁盘的事务中更改主键的 UPDATE、错误地报告“subxact logged without previous toplevel record”，以及事务提交时间的错误报告。", "title": "修复逻辑解码中的若干 bug", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "03a7e90297c013e621bd42855aaaec7717e1d56f9c9e01f259d8bf0871dfc3b5", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix assorted bugs in logical decoding (Andres Freund) Trouble cases included tuples larger than one page when replica identity is FULL, UPDATEs that change a primary key within a transaction large enough to be spooled to disk, incorrect reports of subxact logged without previous toplevel record, and incorrect reporting of a transaction's commit time.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/007", "db_id": "3bf401c3ad350e91cbe2a85de0fd9f03", "patch_ids": [], "statement_hash": "2312da4f60220c490df959cb263ac933619d759f817dec76ded8c36eeebbadd0", "relations": [{"rule": 2, "type": "equivalent", "target": "c7c7ec1b553742e8f690553f7d4cb814", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2312da4f60220c490df959cb263ac933619d759f817dec76ded8c36eeebbadd0"}}], "version": "9.4.7", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "c7c7ec1b553742e8f690553f7d4cb814", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "修复逻辑解码中的若干 bug", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2312da4f60220c490df959cb263ac933619d759f817dec76ded8c36eeebbadd0"}, "url": "/docs/compare/?release=9.5.2#9.5.2-fa77373649f1dbc4", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}]}, {"id": "9.4.7-74c2fd9dbc104418", "cves": [], "html": "<p>修复外层视图的<code>WHERE</code>子句包含相关子查询时嵌套安全屏障视图的规划器错误（Dean Rasheed）</p>", "text": "修复外层视图的WHERE子句包含相关子查询时嵌套安全屏障视图的规划器错误（Dean Rasheed）", "title": "修复外层视图的WHERE子句包含相关子查询时嵌套安全屏障视图的规划器错误", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "0736ed5ff13957583cd82b82f57cd81cba5c68b2fa10f47a7a3b60ac2d5b4b00", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix planner error with nested security barrier views when the outer view has a WHERE clause containing a correlated subquery (Dean Rasheed)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/008", "db_id": "b5b6188dad1c87544a812a3a8902330a", "patch_ids": [], "statement_hash": "19e1f73da124c9118483898fb889d7873cc7d4acb82b3af5d196158b0433f903", "relations": [{"rule": 2, "type": "equivalent", "target": "46e18df8a2978a020ccb59a43ce89221", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "19e1f73da124c9118483898fb889d7873cc7d4acb82b3af5d196158b0433f903"}}], "version": "9.4.7", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "46e18df8a2978a020ccb59a43ce89221", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "修复外层视图的 WHERE 子句包含相关子查询时嵌套安全屏障视图的规划器错误", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "19e1f73da124c9118483898fb889d7873cc7d4acb82b3af5d196158b0433f903"}, "url": "/docs/compare/?release=9.5.2#9.5.2-bc3233f788b00ddd", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}]}, {"id": "9.4.7-a8552d22f93ba0da", "cves": [], "html": "<p>修复因多次尝试释放<code>localeconv()</code>输出字符串而导致的极端情况崩溃（Tom Lane）</p>", "text": "修复因多次尝试释放localeconv()输出字符串而导致的极端情况崩溃（Tom Lane）", "title": "修复因多次尝试释放localeconv()输出字符串而导致的极端情况崩溃", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "c56d93ae0302eb2cecb534060f020deb8de094011052375b74f3e9077909622c", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix corner-case crash due to trying to free localeconv() output strings more than once (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/009", "db_id": "ba10a02a98eb847f645b4cd5daf06a7a", "patch_ids": [], "statement_hash": "8cd14a267756bfdbb1d5a62d534a859316635c4bf51ccc8c8a8081382f673c86", "relations": [{"rule": 2, "type": "equivalent", "target": "1e16994993bbc7623cb98bcfe96b28d4", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8cd14a267756bfdbb1d5a62d534a859316635c4bf51ccc8c8a8081382f673c86"}}, {"rule": 2, "type": "equivalent", "target": "235a516decf1402498291a6d4f402c91", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8cd14a267756bfdbb1d5a62d534a859316635c4bf51ccc8c8a8081382f673c86"}}, {"rule": 2, "type": "equivalent", "target": "28908ba79b9c1e5bb55d3ae675261b3e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8cd14a267756bfdbb1d5a62d534a859316635c4bf51ccc8c8a8081382f673c86"}}, {"rule": 2, "type": "equivalent", "target": "669e54092457faa0ba706b9875baefca", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8cd14a267756bfdbb1d5a62d534a859316635c4bf51ccc8c8a8081382f673c86"}}], "version": "9.4.7", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "28908ba79b9c1e5bb55d3ae675261b3e", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "修复因多次尝试释放 localeconv() 输出字符串而导致的边界崩溃", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8cd14a267756bfdbb1d5a62d534a859316635c4bf51ccc8c8a8081382f673c86"}, "url": "/docs/compare/?release=9.5.2#9.5.2-0eaf90a8bb843221", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}, {"db_id": "235a516decf1402498291a6d4f402c91", "kind": "equivalent", "version": "9.3.12", "label": "9.3.12", "title": "修复因多次尝试释放 localeconv() 输出字符串而导致的边界崩溃", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8cd14a267756bfdbb1d5a62d534a859316635c4bf51ccc8c8a8081382f673c86"}, "url": "/docs/compare/?release=9.3.12#9.3.12-0eaf90a8bb843221", "source_url": "/docs/release/9.3.12/#id-1.11.6.18.5"}, {"db_id": "669e54092457faa0ba706b9875baefca", "kind": "equivalent", "version": "9.2.16", "label": "9.2.16", "title": "修复因多次尝试释放 localeconv() 输出字符串而导致的边界崩溃", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8cd14a267756bfdbb1d5a62d534a859316635c4bf51ccc8c8a8081382f673c86"}, "url": "/docs/compare/?release=9.2.16#9.2.16-0eaf90a8bb843221", "source_url": "/docs/release/9.2.16/#id-1.11.6.13.5"}, {"db_id": "1e16994993bbc7623cb98bcfe96b28d4", "kind": "equivalent", "version": "9.1.21", "label": "9.1.21", "title": "修复因多次尝试释放 localeconv() 输出字符串而导致的边界崩溃", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8cd14a267756bfdbb1d5a62d534a859316635c4bf51ccc8c8a8081382f673c86"}, "url": "/docs/compare/?release=9.1.21#9.1.21-0eaf90a8bb843221", "source_url": "/docs/release/9.1.21/#id-1.11.6.8.5"}]}, {"id": "9.4.7-6737b7bf023a0f90", "cves": [], "html": "<p>修复 <code>ispell</code> 词典词缀文件的解析（Tom Lane）</p>\n<p>如果词缀文件包含任何在大小写转换期间字节长度会变化的字符（例如土耳其语 UTF8 区域设置中的 <code>I</code>），代码就可能出错。</p>", "text": "修复 ispell 词典词缀文件的解析（Tom Lane） 如果词缀文件包含任何在大小写转换期间字节长度会变化的字符（例如土耳其语 UTF8 区域设置中的 I），代码就可能出错。", "title": "修复 ispell 词典词缀文件的解析", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "62950ca3270b8b55d8ca7d8fb1dc5719bafb6a8a019f3c52e4b9b005f0c5b861", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix parsing of affix files for ispell dictionaries (Tom Lane) The code could go wrong if the affix file contained any characters whose byte length changes during case-folding, for example I in Turkish UTF8 locales.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/010", "db_id": "c6a8dff9325306582b92037ebbd4684e", "patch_ids": [], "statement_hash": "91b9f322747a4aaf1fd71d40ce554d8ba153d4e3c9be1d862c6cec405450cdfb", "relations": [{"rule": 2, "type": "equivalent", "target": "60f40d6665f2eda889115b868df32ea0", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "91b9f322747a4aaf1fd71d40ce554d8ba153d4e3c9be1d862c6cec405450cdfb"}}, {"rule": 2, "type": "equivalent", "target": "76586173c2650432008d4e8966144dab", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "91b9f322747a4aaf1fd71d40ce554d8ba153d4e3c9be1d862c6cec405450cdfb"}}, {"rule": 2, "type": "equivalent", "target": "ca82c2d5aa89d76f1c86f8c722bc8c98", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "91b9f322747a4aaf1fd71d40ce554d8ba153d4e3c9be1d862c6cec405450cdfb"}}, {"rule": 2, "type": "equivalent", "target": "e0bfc50bf2c245d8978a0af0edcf816f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "91b9f322747a4aaf1fd71d40ce554d8ba153d4e3c9be1d862c6cec405450cdfb"}}], "version": "9.4.7", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "76586173c2650432008d4e8966144dab", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "修复 ispell 词典词缀文件的解析", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "91b9f322747a4aaf1fd71d40ce554d8ba153d4e3c9be1d862c6cec405450cdfb"}, "url": "/docs/compare/?release=9.5.2#9.5.2-6737b7bf023a0f90", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}, {"db_id": "ca82c2d5aa89d76f1c86f8c722bc8c98", "kind": "equivalent", "version": "9.3.12", "label": "9.3.12", "title": "修复 ispell 词典词缀文件的解析", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "91b9f322747a4aaf1fd71d40ce554d8ba153d4e3c9be1d862c6cec405450cdfb"}, "url": "/docs/compare/?release=9.3.12#9.3.12-6737b7bf023a0f90", "source_url": "/docs/release/9.3.12/#id-1.11.6.18.5"}, {"db_id": "60f40d6665f2eda889115b868df32ea0", "kind": "equivalent", "version": "9.2.16", "label": "9.2.16", "title": "修复 ispell 词典词缀文件的解析", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "91b9f322747a4aaf1fd71d40ce554d8ba153d4e3c9be1d862c6cec405450cdfb"}, "url": "/docs/compare/?release=9.2.16#9.2.16-6737b7bf023a0f90", "source_url": "/docs/release/9.2.16/#id-1.11.6.13.5"}, {"db_id": "e0bfc50bf2c245d8978a0af0edcf816f", "kind": "equivalent", "version": "9.1.21", "label": "9.1.21", "title": "修复 ispell 词典词缀文件的解析", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "91b9f322747a4aaf1fd71d40ce554d8ba153d4e3c9be1d862c6cec405450cdfb"}, "url": "/docs/compare/?release=9.1.21#9.1.21-6737b7bf023a0f90", "source_url": "/docs/release/9.1.21/#id-1.11.6.8.5"}]}, {"id": "9.4.7-b2cea0449411f202", "cves": [], "html": "<p>避免使用 <code>sscanf()</code> 解析 <code>ispell</code> 词典文件（Artur Zakirov）</p>\n<p>这规避了 FreeBSD 衍生平台（包括 macOS）上的一个可移植性问题。</p>", "text": "避免使用 sscanf() 解析 ispell 词典文件（Artur Zakirov） 这规避了 FreeBSD 衍生平台（包括 macOS）上的一个可移植性问题。", "title": "避免使用 sscanf() 解析 ispell 词典文件", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "4c380c84cebce887e35f906d2b39e79240d06735f955c2dd9e7a0daaf3726e01", "section_path": ["变更"], "commit_groups": [], "identity_text": "Avoid use of sscanf() to parse ispell dictionary files (Artur Zakirov) This dodges a portability problem on FreeBSD-derived platforms (including macOS).", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/011", "db_id": "b7cc67e5e207ac3296a14d59932ed1e5", "patch_ids": [], "statement_hash": "06140c81127637c6f34b0b8196e40fa3bdbeadfd0427afda8fac298b64b70dc0", "relations": [{"rule": 2, "type": "equivalent", "target": "5139f4844fa6b2876ad917eab539c98c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "06140c81127637c6f34b0b8196e40fa3bdbeadfd0427afda8fac298b64b70dc0"}}, {"rule": 2, "type": "equivalent", "target": "8342501c11463266bbc84589eef9babd", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "06140c81127637c6f34b0b8196e40fa3bdbeadfd0427afda8fac298b64b70dc0"}}, {"rule": 2, "type": "equivalent", "target": "a076e4e7bdc2b958d21081b9ecf089b4", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "06140c81127637c6f34b0b8196e40fa3bdbeadfd0427afda8fac298b64b70dc0"}}, {"rule": 2, "type": "equivalent", "target": "af2c1f2e6140b269e64299e51a2e2735", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "06140c81127637c6f34b0b8196e40fa3bdbeadfd0427afda8fac298b64b70dc0"}}], "version": "9.4.7", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "5139f4844fa6b2876ad917eab539c98c", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "避免使用 sscanf() 解析 ispell 词典文件", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "06140c81127637c6f34b0b8196e40fa3bdbeadfd0427afda8fac298b64b70dc0"}, "url": "/docs/compare/?release=9.5.2#9.5.2-b2cea0449411f202", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}, {"db_id": "8342501c11463266bbc84589eef9babd", "kind": "equivalent", "version": "9.3.12", "label": "9.3.12", "title": "避免使用 sscanf() 解析 ispell 词典文件", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "06140c81127637c6f34b0b8196e40fa3bdbeadfd0427afda8fac298b64b70dc0"}, "url": "/docs/compare/?release=9.3.12#9.3.12-b2cea0449411f202", "source_url": "/docs/release/9.3.12/#id-1.11.6.18.5"}, {"db_id": "a076e4e7bdc2b958d21081b9ecf089b4", "kind": "equivalent", "version": "9.2.16", "label": "9.2.16", "title": "避免使用 sscanf() 解析 ispell 词典文件", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "06140c81127637c6f34b0b8196e40fa3bdbeadfd0427afda8fac298b64b70dc0"}, "url": "/docs/compare/?release=9.2.16#9.2.16-b2cea0449411f202", "source_url": "/docs/release/9.2.16/#id-1.11.6.13.5"}, {"db_id": "af2c1f2e6140b269e64299e51a2e2735", "kind": "equivalent", "version": "9.1.21", "label": "9.1.21", "title": "避免使用 sscanf() 解析 ispell 词典文件", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "06140c81127637c6f34b0b8196e40fa3bdbeadfd0427afda8fac298b64b70dc0"}, "url": "/docs/compare/?release=9.1.21#9.1.21-b2cea0449411f202", "source_url": "/docs/release/9.1.21/#id-1.11.6.8.5"}]}, {"id": "9.4.7-f479fd4372f80860", "cves": [], "html": "<p>避免在旧版 Windows（7SP1/2008R2SP1 之前）上配合支持 AVX2 的 CPU 和使用 Visual Studio 2013 构建的 Postgres 时崩溃（Christian Ullrich）</p>\n<p>这是对 Visual Studio 2013 运行时库中一个 bug 的变通方案，微软已表示不会在该版本中修复它。</p>", "text": "避免在旧版 Windows（7SP1/2008R2SP1 之前）上配合支持 AVX2 的 CPU 和使用 Visual Studio 2013 构建的 Postgres 时崩溃（Christian Ullrich） 这是对 Visual Studio 2013 运行时库中一个 bug 的变通方案，微软已表示不会在该版本中修复它。", "title": "避免在旧版 Windows（7SP1/2008R2SP1 之前）上配合支持 AVX2 的 CPU 和使用 Visual Studio 2013 构建的 Postgres 时崩溃", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "c53e1ec4378136ae81183fb56c0f34a21916b3a4b0f3e148ddb1da421611766f", "section_path": ["变更"], "commit_groups": [], "identity_text": "Avoid a crash on old Windows versions (before 7SP1/2008R2SP1) with an AVX2-capable CPU and a Postgres build done with Visual Studio 2013 (Christian Ullrich) This is a workaround for a bug in Visual Studio 2013's runtime library, which Microsoft have stated they will not fix in that version.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/012", "db_id": "bf7b51735f20090f3fca477596063a5e", "patch_ids": [], "statement_hash": "a29aab8615c280500bd3f14f488e61ca7c8836f9983df15092c5fdae99b9cf60", "relations": [{"rule": 2, "type": "equivalent", "target": "0a5a919cea37eb591575f80c20998e8b", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a29aab8615c280500bd3f14f488e61ca7c8836f9983df15092c5fdae99b9cf60"}}, {"rule": 2, "type": "equivalent", "target": "12c9f1dae306af82d9c2358a6fcf14a3", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a29aab8615c280500bd3f14f488e61ca7c8836f9983df15092c5fdae99b9cf60"}}, {"rule": 2, "type": "equivalent", "target": "7f61ba8f775e71e515bad2fd9a6ee267", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a29aab8615c280500bd3f14f488e61ca7c8836f9983df15092c5fdae99b9cf60"}}, {"rule": 2, "type": "equivalent", "target": "f27e6e530c2890c80f9f0ce1c3199bee", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a29aab8615c280500bd3f14f488e61ca7c8836f9983df15092c5fdae99b9cf60"}}], "version": "9.4.7", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "0a5a919cea37eb591575f80c20998e8b", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "避免在旧版 Windows（7SP1/2008R2SP1 之前）上配合支持 AVX2 的 CPU 和使用 Visual Studio 2013 构建的 Postgres 时崩溃", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a29aab8615c280500bd3f14f488e61ca7c8836f9983df15092c5fdae99b9cf60"}, "url": "/docs/compare/?release=9.5.2#9.5.2-f479fd4372f80860", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}, {"db_id": "7f61ba8f775e71e515bad2fd9a6ee267", "kind": "equivalent", "version": "9.3.12", "label": "9.3.12", "title": "避免在旧版 Windows（7SP1/2008R2SP1 之前）上配合支持 AVX2 的 CPU 和使用 Visual Studio 2013 构建的 Postgres 时崩溃", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a29aab8615c280500bd3f14f488e61ca7c8836f9983df15092c5fdae99b9cf60"}, "url": "/docs/compare/?release=9.3.12#9.3.12-f479fd4372f80860", "source_url": "/docs/release/9.3.12/#id-1.11.6.18.5"}, {"db_id": "f27e6e530c2890c80f9f0ce1c3199bee", "kind": "equivalent", "version": "9.2.16", "label": "9.2.16", "title": "避免在旧版 Windows（7SP1/2008R2SP1 之前）上配合支持 AVX2 的 CPU 和使用 Visual Studio 2013 构建的 Postgres 时崩溃", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a29aab8615c280500bd3f14f488e61ca7c8836f9983df15092c5fdae99b9cf60"}, "url": "/docs/compare/?release=9.2.16#9.2.16-f479fd4372f80860", "source_url": "/docs/release/9.2.16/#id-1.11.6.13.5"}, {"db_id": "12c9f1dae306af82d9c2358a6fcf14a3", "kind": "equivalent", "version": "9.1.21", "label": "9.1.21", "title": "避免在旧版 Windows（7SP1/2008R2SP1 之前）上配合支持 AVX2 的 CPU 和使用 Visual Studio 2013 构建的 Postgres 时崩溃", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a29aab8615c280500bd3f14f488e61ca7c8836f9983df15092c5fdae99b9cf60"}, "url": "/docs/compare/?release=9.1.21#9.1.21-f479fd4372f80860", "source_url": "/docs/release/9.1.21/#id-1.11.6.8.5"}]}, {"id": "9.4.7-a19f38df1743f18f", "cves": [], "html": "<p>修复<span>psql</span>的制表符补全逻辑以正确处理多字节字符（Kyotaro Horiguchi、Robert Haas）</p>", "text": "修复psql的制表符补全逻辑以正确处理多字节字符（Kyotaro Horiguchi、Robert Haas）", "title": "修复psql的制表符补全逻辑以正确处理多字节字符", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "d56e884eba8ad8aece7f9bcb274d9ec8091b58f7a043ace717116269d2c4604d", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix psql's tab completion logic to handle multibyte characters properly (Kyotaro Horiguchi, Robert Haas)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/013", "db_id": "929e94972cd3e7215325f627736556d9", "patch_ids": [], "statement_hash": "c109770e055ca5188d5c682d8d264e37c7c864e36ecdcc096a554baa44e4c88c", "relations": [{"rule": 2, "type": "equivalent", "target": "05039f3be720eaebbfdb8a768f4c3528", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c109770e055ca5188d5c682d8d264e37c7c864e36ecdcc096a554baa44e4c88c"}}, {"rule": 2, "type": "equivalent", "target": "908087803e3a5dfed04a6c9765911d40", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c109770e055ca5188d5c682d8d264e37c7c864e36ecdcc096a554baa44e4c88c"}}, {"rule": 2, "type": "equivalent", "target": "e67ac613545bfcb35b6dc5b547898977", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c109770e055ca5188d5c682d8d264e37c7c864e36ecdcc096a554baa44e4c88c"}}, {"rule": 2, "type": "equivalent", "target": "f03ece35225e3c129b3cf2889a6bbb8a", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c109770e055ca5188d5c682d8d264e37c7c864e36ecdcc096a554baa44e4c88c"}}], "version": "9.4.7", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "05039f3be720eaebbfdb8a768f4c3528", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "修复 psql 的 Tab 补全逻辑，使其正确处理多字节字符", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c109770e055ca5188d5c682d8d264e37c7c864e36ecdcc096a554baa44e4c88c"}, "url": "/docs/compare/?release=9.5.2#9.5.2-a4882695b5976de5", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}, {"db_id": "e67ac613545bfcb35b6dc5b547898977", "kind": "equivalent", "version": "9.3.12", "label": "9.3.12", "title": "修复 psql 的 Tab 补全逻辑，使其正确处理多字节字符", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c109770e055ca5188d5c682d8d264e37c7c864e36ecdcc096a554baa44e4c88c"}, "url": "/docs/compare/?release=9.3.12#9.3.12-a4882695b5976de5", "source_url": "/docs/release/9.3.12/#id-1.11.6.18.5"}, {"db_id": "908087803e3a5dfed04a6c9765911d40", "kind": "equivalent", "version": "9.2.16", "label": "9.2.16", "title": "修复 psql 的 Tab 补全逻辑，使其正确处理多字节字符", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c109770e055ca5188d5c682d8d264e37c7c864e36ecdcc096a554baa44e4c88c"}, "url": "/docs/compare/?release=9.2.16#9.2.16-a4882695b5976de5", "source_url": "/docs/release/9.2.16/#id-1.11.6.13.5"}, {"db_id": "f03ece35225e3c129b3cf2889a6bbb8a", "kind": "equivalent", "version": "9.1.21", "label": "9.1.21", "title": "修复 psql 的 Tab 补全逻辑，使其正确处理多字节字符", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c109770e055ca5188d5c682d8d264e37c7c864e36ecdcc096a554baa44e4c88c"}, "url": "/docs/compare/?release=9.1.21#9.1.21-a4882695b5976de5", "source_url": "/docs/release/9.1.21/#id-1.11.6.8.5"}]}, {"id": "9.4.7-c239f0ce834bd3d1", "cves": [], "html": "<p>修复 <span>psql</span> 对 <code>SECURITY LABEL</code> 的 Tab 补全（Tom Lane）</p>\n<p>在 <code>SECURITY LABEL</code> 之后按 TAB 可能导致崩溃或提供不合适的关键字。</p>", "text": "修复 psql 对 SECURITY LABEL 的 Tab 补全（Tom Lane） 在 SECURITY LABEL 之后按 TAB 可能导致崩溃或提供不合适的关键字。", "title": "修复 psql 对 SECURITY LABEL 的 Tab 补全", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "0093c19fb3d68779906db6f622d1fa8894d2ebe013cce808ea59e381a1a2148d", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix psql's tab completion for SECURITY LABEL (Tom Lane) Pressing TAB after SECURITY LABEL might cause a crash or offering of inappropriate keywords.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/014", "db_id": "2f7b7917801d1d02befe7d82d3f66b82", "patch_ids": [], "statement_hash": "1d6fd89f614b2122f6d609f1ff8e3075cf765c2f12a03ba3947fb0e6b4afd207", "relations": [{"rule": 2, "type": "equivalent", "target": "25b99e768c6a6ff8cc251b5e48dab173", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1d6fd89f614b2122f6d609f1ff8e3075cf765c2f12a03ba3947fb0e6b4afd207"}}, {"rule": 2, "type": "equivalent", "target": "330fce3a940bb76dfe4ae4670f52dcf0", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1d6fd89f614b2122f6d609f1ff8e3075cf765c2f12a03ba3947fb0e6b4afd207"}}, {"rule": 2, "type": "equivalent", "target": "33cdf93285ebc9e8fdaaa7fb1d88942a", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1d6fd89f614b2122f6d609f1ff8e3075cf765c2f12a03ba3947fb0e6b4afd207"}}, {"rule": 2, "type": "equivalent", "target": "b37868f34b15e59b920d0b227549b9bb", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1d6fd89f614b2122f6d609f1ff8e3075cf765c2f12a03ba3947fb0e6b4afd207"}}], "version": "9.4.7", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "330fce3a940bb76dfe4ae4670f52dcf0", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "修复 psql 对 SECURITY LABEL 的 Tab 补全", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1d6fd89f614b2122f6d609f1ff8e3075cf765c2f12a03ba3947fb0e6b4afd207"}, "url": "/docs/compare/?release=9.5.2#9.5.2-c239f0ce834bd3d1", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}, {"db_id": "b37868f34b15e59b920d0b227549b9bb", "kind": "equivalent", "version": "9.3.12", "label": "9.3.12", "title": "修复 psql 对 SECURITY LABEL 的 Tab 补全", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1d6fd89f614b2122f6d609f1ff8e3075cf765c2f12a03ba3947fb0e6b4afd207"}, "url": "/docs/compare/?release=9.3.12#9.3.12-c239f0ce834bd3d1", "source_url": "/docs/release/9.3.12/#id-1.11.6.18.5"}, {"db_id": "33cdf93285ebc9e8fdaaa7fb1d88942a", "kind": "equivalent", "version": "9.2.16", "label": "9.2.16", "title": "修复 psql 对 SECURITY LABEL 的 Tab 补全", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1d6fd89f614b2122f6d609f1ff8e3075cf765c2f12a03ba3947fb0e6b4afd207"}, "url": "/docs/compare/?release=9.2.16#9.2.16-c239f0ce834bd3d1", "source_url": "/docs/release/9.2.16/#id-1.11.6.13.5"}, {"db_id": "25b99e768c6a6ff8cc251b5e48dab173", "kind": "equivalent", "version": "9.1.21", "label": "9.1.21", "title": "修复 psql 对 SECURITY LABEL 的 Tab 补全", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1d6fd89f614b2122f6d609f1ff8e3075cf765c2f12a03ba3947fb0e6b4afd207"}, "url": "/docs/compare/?release=9.1.21#9.1.21-c239f0ce834bd3d1", "source_url": "/docs/release/9.1.21/#id-1.11.6.8.5"}]}, {"id": "9.4.7-e26e2c8653a8e27c", "cves": [], "html": "<p>使 <span>pg_ctl</span> 在命令行未指定时接受来自 <code>PGCTLTIMEOUT</code> 环境变量的等待超时（Noah Misch）</p>\n<p>这方便了较慢的 buildfarm 成员的测试，允许它们全局指定比正常更长的 postmaster 启动和关闭超时。</p>", "text": "使 pg_ctl 在命令行未指定时接受来自 PGCTLTIMEOUT 环境变量的等待超时（Noah Misch） 这方便了较慢的 buildfarm 成员的测试，允许它们全局指定比正常更长的 postmaster 启动和关闭超时。", "title": "使 pg_ctl 在命令行未指定时接受来自 PGCTLTIMEOUT 环境变量的等待超时", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "128687b4d70904dfcce68ccf38a7d64b836fa194f5ede960c407125566ba75e4", "section_path": ["变更"], "commit_groups": [], "identity_text": "Make pg_ctl accept a wait timeout from the PGCTLTIMEOUT environment variable, if none is specified on the command line (Noah Misch) This eases testing of slower buildfarm members by allowing them to globally specify a longer-than-normal timeout for postmaster startup and shutdown.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/015", "db_id": "015e9ade51f46846b1d306bd50767303", "patch_ids": [], "statement_hash": "3c3e7f701f9750eaa417b1b8a4b567eed7838383dde020ece4e47bb715381061", "relations": [{"rule": 2, "type": "equivalent", "target": "3e3103297f7fc68db95b29dc324cf63a", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3c3e7f701f9750eaa417b1b8a4b567eed7838383dde020ece4e47bb715381061"}}, {"rule": 2, "type": "equivalent", "target": "52a76d826437999152d53bf7c83a320e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3c3e7f701f9750eaa417b1b8a4b567eed7838383dde020ece4e47bb715381061"}}, {"rule": 2, "type": "equivalent", "target": "9cc9b97ba872651502d3c1a593585cf9", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3c3e7f701f9750eaa417b1b8a4b567eed7838383dde020ece4e47bb715381061"}}, {"rule": 2, "type": "equivalent", "target": "9d3a6b02a5aa0bb2b2fe10cab0073f76", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3c3e7f701f9750eaa417b1b8a4b567eed7838383dde020ece4e47bb715381061"}}], "version": "9.4.7", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "3e3103297f7fc68db95b29dc324cf63a", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "使 pg_ctl 在命令行未指定时接受来自 PGCTLTIMEOUT 环境变量的等待超时", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3c3e7f701f9750eaa417b1b8a4b567eed7838383dde020ece4e47bb715381061"}, "url": "/docs/compare/?release=9.5.2#9.5.2-e26e2c8653a8e27c", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}, {"db_id": "52a76d826437999152d53bf7c83a320e", "kind": "equivalent", "version": "9.3.12", "label": "9.3.12", "title": "使 pg_ctl 在命令行未指定时接受来自 PGCTLTIMEOUT 环境变量的等待超时", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3c3e7f701f9750eaa417b1b8a4b567eed7838383dde020ece4e47bb715381061"}, "url": "/docs/compare/?release=9.3.12#9.3.12-e26e2c8653a8e27c", "source_url": "/docs/release/9.3.12/#id-1.11.6.18.5"}, {"db_id": "9cc9b97ba872651502d3c1a593585cf9", "kind": "equivalent", "version": "9.2.16", "label": "9.2.16", "title": "使 pg_ctl 在命令行未指定时接受来自 PGCTLTIMEOUT 环境变量的等待超时", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3c3e7f701f9750eaa417b1b8a4b567eed7838383dde020ece4e47bb715381061"}, "url": "/docs/compare/?release=9.2.16#9.2.16-e26e2c8653a8e27c", "source_url": "/docs/release/9.2.16/#id-1.11.6.13.5"}, {"db_id": "9d3a6b02a5aa0bb2b2fe10cab0073f76", "kind": "equivalent", "version": "9.1.21", "label": "9.1.21", "title": "使 pg_ctl 在命令行未指定时接受来自 PGCTLTIMEOUT 环境变量的等待超时", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3c3e7f701f9750eaa417b1b8a4b567eed7838383dde020ece4e47bb715381061"}, "url": "/docs/compare/?release=9.1.21#9.1.21-e26e2c8653a8e27c", "source_url": "/docs/release/9.1.21/#id-1.11.6.8.5"}]}, {"id": "9.4.7-57bc94440141f0a1", "cves": [], "html": "<p>修复 <span>pg_ctl</span> 中对 Windows 服务状态的不正确测试（Manuel Mathar）</p>\n<p>上一轮小版本发布试图修复 <span>pg_ctl</span>，使其正确判断是否把日志消息发送到 Windows 事件日志，但把测试条件弄反了。</p>", "text": "修复 pg_ctl 中对 Windows 服务状态的不正确测试（Manuel Mathar） 上一轮小版本发布试图修复 pg_ctl，使其正确判断是否把日志消息发送到 Windows 事件日志，但把测试条件弄反了。", "title": "修复 pg_ctl 中对 Windows 服务状态的不正确测试", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "06b9b66a9fd84169e16f4f79f5caac844b303c80f229141c16161f591afc738f", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix incorrect test for Windows service status in pg_ctl (Manuel Mathar) The previous set of minor releases attempted to fix pg_ctl to properly determine whether to send log messages to Window's Event Log, but got the test backwards.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/016", "db_id": "afd79e39a27baaa2d06cca92a65eb4fd", "patch_ids": [], "statement_hash": "5f915e3283e4f7a13ad493fdc64a77ec0f2cc184abf6760212d8ec8544cec6fb", "relations": [{"rule": 2, "type": "equivalent", "target": "14b147d92a5360ac5da4cca5c1cd996b", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5f915e3283e4f7a13ad493fdc64a77ec0f2cc184abf6760212d8ec8544cec6fb"}}, {"rule": 2, "type": "equivalent", "target": "3fa11732ac1705220018943f03a527bb", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5f915e3283e4f7a13ad493fdc64a77ec0f2cc184abf6760212d8ec8544cec6fb"}}, {"rule": 2, "type": "equivalent", "target": "5266004fb3ff87e116d7fa0b4b782fad", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5f915e3283e4f7a13ad493fdc64a77ec0f2cc184abf6760212d8ec8544cec6fb"}}, {"rule": 2, "type": "equivalent", "target": "60707bb1e90fab808b81859693f4d9c7", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5f915e3283e4f7a13ad493fdc64a77ec0f2cc184abf6760212d8ec8544cec6fb"}}], "version": "9.4.7", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "3fa11732ac1705220018943f03a527bb", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "修复 pg_ctl 中对 Windows 服务状态的不正确测试", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5f915e3283e4f7a13ad493fdc64a77ec0f2cc184abf6760212d8ec8544cec6fb"}, "url": "/docs/compare/?release=9.5.2#9.5.2-57bc94440141f0a1", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}, {"db_id": "60707bb1e90fab808b81859693f4d9c7", "kind": "equivalent", "version": "9.3.12", "label": "9.3.12", "title": "修复 pg_ctl 中对 Windows 服务状态的不正确测试", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5f915e3283e4f7a13ad493fdc64a77ec0f2cc184abf6760212d8ec8544cec6fb"}, "url": "/docs/compare/?release=9.3.12#9.3.12-57bc94440141f0a1", "source_url": "/docs/release/9.3.12/#id-1.11.6.18.5"}, {"db_id": "5266004fb3ff87e116d7fa0b4b782fad", "kind": "equivalent", "version": "9.2.16", "label": "9.2.16", "title": "修复 pg_ctl 中对 Windows 服务状态的不正确测试", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5f915e3283e4f7a13ad493fdc64a77ec0f2cc184abf6760212d8ec8544cec6fb"}, "url": "/docs/compare/?release=9.2.16#9.2.16-57bc94440141f0a1", "source_url": "/docs/release/9.2.16/#id-1.11.6.13.5"}, {"db_id": "14b147d92a5360ac5da4cca5c1cd996b", "kind": "equivalent", "version": "9.1.21", "label": "9.1.21", "title": "修复 pg_ctl 中对 Windows 服务状态的不正确测试", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5f915e3283e4f7a13ad493fdc64a77ec0f2cc184abf6760212d8ec8544cec6fb"}, "url": "/docs/compare/?release=9.1.21#9.1.21-57bc94440141f0a1", "source_url": "/docs/release/9.1.21/#id-1.11.6.8.5"}]}, {"id": "9.4.7-bd454606bc04f102", "cves": [], "html": "<p>修复<span>pgbench</span>正确处理<code>-C</code>与<code>-M prepared</code>选项组合的问题（Tom Lane）</p>", "text": "修复pgbench正确处理-C与-M prepared选项组合的问题（Tom Lane）", "title": "修复pgbench正确处理-C与-M prepared选项组合的问题", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "b0c6e6f7373cb4b4203a4ef281dea31e72016a389f67e74e10048ffaf020a0a8", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix pgbench to correctly handle the combination of -C and -M prepared options (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/017", "db_id": "77936f452cfca78c0b5c84f05d9e42c4", "patch_ids": [], "statement_hash": "e9c796d5f66966db7fd61486fce08527037870306a859e892aa285596c4c17c8", "relations": [{"rule": 2, "type": "equivalent", "target": "5ea202397e5bc63f4be4231d2351680e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e9c796d5f66966db7fd61486fce08527037870306a859e892aa285596c4c17c8"}}, {"rule": 2, "type": "equivalent", "target": "783b7129442dfff6a593129ed932cb68", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e9c796d5f66966db7fd61486fce08527037870306a859e892aa285596c4c17c8"}}, {"rule": 2, "type": "equivalent", "target": "f5b5236200491a54b9c7942a7fdcf1c6", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e9c796d5f66966db7fd61486fce08527037870306a859e892aa285596c4c17c8"}}, {"rule": 2, "type": "equivalent", "target": "ff902fb1a17619997ca69802f94ce5e2", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e9c796d5f66966db7fd61486fce08527037870306a859e892aa285596c4c17c8"}}], "version": "9.4.7", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "f5b5236200491a54b9c7942a7fdcf1c6", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "修复 pgbench 对 -C 与 -M prepared 选项组合的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e9c796d5f66966db7fd61486fce08527037870306a859e892aa285596c4c17c8"}, "url": "/docs/compare/?release=9.5.2#9.5.2-d67962a5f5d82de5", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}, {"db_id": "ff902fb1a17619997ca69802f94ce5e2", "kind": "equivalent", "version": "9.3.12", "label": "9.3.12", "title": "修复 pgbench 对 -C 与 -M prepared 选项组合的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e9c796d5f66966db7fd61486fce08527037870306a859e892aa285596c4c17c8"}, "url": "/docs/compare/?release=9.3.12#9.3.12-d67962a5f5d82de5", "source_url": "/docs/release/9.3.12/#id-1.11.6.18.5"}, {"db_id": "5ea202397e5bc63f4be4231d2351680e", "kind": "equivalent", "version": "9.2.16", "label": "9.2.16", "title": "修复 pgbench 对 -C 与 -M prepared 选项组合的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e9c796d5f66966db7fd61486fce08527037870306a859e892aa285596c4c17c8"}, "url": "/docs/compare/?release=9.2.16#9.2.16-d67962a5f5d82de5", "source_url": "/docs/release/9.2.16/#id-1.11.6.13.5"}, {"db_id": "783b7129442dfff6a593129ed932cb68", "kind": "equivalent", "version": "9.1.21", "label": "9.1.21", "title": "修复 pgbench 对 -C 与 -M prepared 选项组合的处理", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e9c796d5f66966db7fd61486fce08527037870306a859e892aa285596c4c17c8"}, "url": "/docs/compare/?release=9.1.21#9.1.21-d67962a5f5d82de5", "source_url": "/docs/release/9.1.21/#id-1.11.6.8.5"}]}, {"id": "9.4.7-9b2461a690bf6a8b", "cves": [], "html": "<p>在 <span>pg_upgrade</span> 中，当新数据目录位于旧数据目录之内时跳过创建删除脚本（Bruce Momjian）</p>\n<p>在这种情况下盲目执行该脚本会导致新数据目录丢失。</p>", "text": "在 pg_upgrade 中，当新数据目录位于旧数据目录之内时跳过创建删除脚本（Bruce Momjian） 在这种情况下盲目执行该脚本会导致新数据目录丢失。", "title": "在 pg_upgrade 中，当新数据目录位于旧数据目录之内时跳过创建删除脚本", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "3af3fb0f0b5f6e74f1b5b591313fc1e845cb2de529879e1dfb042c7ffe83a5d1", "section_path": ["变更"], "commit_groups": [], "identity_text": "In pg_upgrade, skip creating a deletion script when the new data directory is inside the old data directory (Bruce Momjian) Blind application of the script in such cases would result in loss of the new data directory.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/018", "db_id": "66b6ab9215882c0828986842f03761e1", "patch_ids": [], "statement_hash": "9bfc6501fd92ab3f6ac7beb2189709e40319914d2278bd265fbdd5ca5ba9d65f", "relations": [{"rule": 2, "type": "equivalent", "target": "d55e2335c062f411bb106fd4243f5690", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9bfc6501fd92ab3f6ac7beb2189709e40319914d2278bd265fbdd5ca5ba9d65f"}}, {"rule": 2, "type": "equivalent", "target": "f280eb4e3f1c7198dbcde9ffabe24b68", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9bfc6501fd92ab3f6ac7beb2189709e40319914d2278bd265fbdd5ca5ba9d65f"}}], "version": "9.4.7", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "f280eb4e3f1c7198dbcde9ffabe24b68", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "在 pg_upgrade 中，当新数据目录位于旧数据目录之内时跳过创建删除脚本", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9bfc6501fd92ab3f6ac7beb2189709e40319914d2278bd265fbdd5ca5ba9d65f"}, "url": "/docs/compare/?release=9.5.2#9.5.2-9b2461a690bf6a8b", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}, {"db_id": "d55e2335c062f411bb106fd4243f5690", "kind": "equivalent", "version": "9.3.12", "label": "9.3.12", "title": "在 pg_upgrade 中，当新数据目录位于旧数据目录之内时跳过创建删除脚本", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9bfc6501fd92ab3f6ac7beb2189709e40319914d2278bd265fbdd5ca5ba9d65f"}, "url": "/docs/compare/?release=9.3.12#9.3.12-9b2461a690bf6a8b", "source_url": "/docs/release/9.3.12/#id-1.11.6.18.5"}]}, {"id": "9.4.7-b117d66088ddfd76", "cves": [], "html": "<p>PL/Perl 中正确将空的 Postgres 数组转换为空的 Perl 数组（Alex Hunsaker）</p>", "text": "PL/Perl 中正确将空的 Postgres 数组转换为空的 Perl 数组（Alex Hunsaker）", "title": "PL/Perl 中正确将空的 Postgres 数组转换为空的 Perl 数组", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "7ad58ea4551b1552dfd9dc819664f30ff9d5d6f235026b2ce87fe882c7610625", "section_path": ["变更"], "commit_groups": [], "identity_text": "In PL/Perl, properly translate empty Postgres arrays into empty Perl arrays (Alex Hunsaker)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/019", "db_id": "ef5c5d76994d430a8a57fc1047c0fb87", "patch_ids": [], "statement_hash": "9ba992c95929f75b7d110ed1658b5b693b60ab6cf4c08ab73e449edcf44c793e", "relations": [{"rule": 2, "type": "equivalent", "target": "46db9fea72dbf0e47f32bd2e0d1c4244", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9ba992c95929f75b7d110ed1658b5b693b60ab6cf4c08ab73e449edcf44c793e"}}, {"rule": 2, "type": "equivalent", "target": "87080dd7f94387eb373e7003cd170cd3", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9ba992c95929f75b7d110ed1658b5b693b60ab6cf4c08ab73e449edcf44c793e"}}, {"rule": 2, "type": "equivalent", "target": "bd354c3d34b489612975701fc78b2af2", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9ba992c95929f75b7d110ed1658b5b693b60ab6cf4c08ab73e449edcf44c793e"}}, {"rule": 2, "type": "equivalent", "target": "c37a865a38dce101c0dd0632f059de35", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9ba992c95929f75b7d110ed1658b5b693b60ab6cf4c08ab73e449edcf44c793e"}}], "version": "9.4.7", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "c37a865a38dce101c0dd0632f059de35", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "在 PL/Perl 中，把空的 Postgres 数组正确转换为空的 Perl 数组", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9ba992c95929f75b7d110ed1658b5b693b60ab6cf4c08ab73e449edcf44c793e"}, "url": "/docs/compare/?release=9.5.2#9.5.2-eec0469f77eed067", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}, {"db_id": "bd354c3d34b489612975701fc78b2af2", "kind": "equivalent", "version": "9.3.12", "label": "9.3.12", "title": "在 PL/Perl 中，把空的 Postgres 数组正确转换为空的 Perl 数组", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9ba992c95929f75b7d110ed1658b5b693b60ab6cf4c08ab73e449edcf44c793e"}, "url": "/docs/compare/?release=9.3.12#9.3.12-eec0469f77eed067", "source_url": "/docs/release/9.3.12/#id-1.11.6.18.5"}, {"db_id": "46db9fea72dbf0e47f32bd2e0d1c4244", "kind": "equivalent", "version": "9.2.16", "label": "9.2.16", "title": "在 PL/Perl 中，把空的 Postgres 数组正确转换为空的 Perl 数组", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9ba992c95929f75b7d110ed1658b5b693b60ab6cf4c08ab73e449edcf44c793e"}, "url": "/docs/compare/?release=9.2.16#9.2.16-eec0469f77eed067", "source_url": "/docs/release/9.2.16/#id-1.11.6.13.5"}, {"db_id": "87080dd7f94387eb373e7003cd170cd3", "kind": "equivalent", "version": "9.1.21", "label": "9.1.21", "title": "在 PL/Perl 中，把空的 Postgres 数组正确转换为空的 Perl 数组", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "9ba992c95929f75b7d110ed1658b5b693b60ab6cf4c08ab73e449edcf44c793e"}, "url": "/docs/compare/?release=9.1.21#9.1.21-eec0469f77eed067", "source_url": "/docs/release/9.1.21/#id-1.11.6.8.5"}]}, {"id": "9.4.7-86e901175b6b1d93", "cves": [], "html": "<p>使 PL/Python 能处理不是合法 Python 标识符的函数名（Jim Nasby）</p>", "text": "使 PL/Python 能处理不是合法 Python 标识符的函数名（Jim Nasby）", "title": "使 PL/Python 能处理不是合法 Python 标识符的函数名", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "3cf0ba7c6ceac3b8b9fe19a42ea92f23db01243040e976af3b637c10d08a6a57", "section_path": ["变更"], "commit_groups": [], "identity_text": "Make PL/Python cope with function names that aren't valid Python identifiers (Jim Nasby)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/020", "db_id": "defc8ab2c8a3d5f2c4ff4a271c5c866d", "patch_ids": [], "statement_hash": "a163fe870ff975fa4b0e07469eaa2f86b438bd3eca9046047cc3cdb2588b01dc", "relations": [{"rule": 2, "type": "equivalent", "target": "1cb2fb6c72d5cd3026db84494981d9a2", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a163fe870ff975fa4b0e07469eaa2f86b438bd3eca9046047cc3cdb2588b01dc"}}, {"rule": 2, "type": "equivalent", "target": "2743cc66071dc9bb1be2ce36cd5751ae", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a163fe870ff975fa4b0e07469eaa2f86b438bd3eca9046047cc3cdb2588b01dc"}}, {"rule": 2, "type": "equivalent", "target": "6327a06ad4a84e8447d5ccb69e3a4a93", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a163fe870ff975fa4b0e07469eaa2f86b438bd3eca9046047cc3cdb2588b01dc"}}, {"rule": 2, "type": "equivalent", "target": "e5e1465d0800a8451e752895c6999c38", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a163fe870ff975fa4b0e07469eaa2f86b438bd3eca9046047cc3cdb2588b01dc"}}], "version": "9.4.7", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "2743cc66071dc9bb1be2ce36cd5751ae", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "使 PL/Python 能处理不是有效 Python 标识符的函数名", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a163fe870ff975fa4b0e07469eaa2f86b438bd3eca9046047cc3cdb2588b01dc"}, "url": "/docs/compare/?release=9.5.2#9.5.2-1b53ca144d6618b8", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}, {"db_id": "6327a06ad4a84e8447d5ccb69e3a4a93", "kind": "equivalent", "version": "9.3.12", "label": "9.3.12", "title": "使 PL/Python 能处理不是有效 Python 标识符的函数名", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a163fe870ff975fa4b0e07469eaa2f86b438bd3eca9046047cc3cdb2588b01dc"}, "url": "/docs/compare/?release=9.3.12#9.3.12-1b53ca144d6618b8", "source_url": "/docs/release/9.3.12/#id-1.11.6.18.5"}, {"db_id": "1cb2fb6c72d5cd3026db84494981d9a2", "kind": "equivalent", "version": "9.2.16", "label": "9.2.16", "title": "使 PL/Python 能处理不是有效 Python 标识符的函数名", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a163fe870ff975fa4b0e07469eaa2f86b438bd3eca9046047cc3cdb2588b01dc"}, "url": "/docs/compare/?release=9.2.16#9.2.16-1b53ca144d6618b8", "source_url": "/docs/release/9.2.16/#id-1.11.6.13.5"}, {"db_id": "e5e1465d0800a8451e752895c6999c38", "kind": "equivalent", "version": "9.1.21", "label": "9.1.21", "title": "使 PL/Python 能处理不是有效 Python 标识符的函数名", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a163fe870ff975fa4b0e07469eaa2f86b438bd3eca9046047cc3cdb2588b01dc"}, "url": "/docs/compare/?release=9.1.21#9.1.21-1b53ca144d6618b8", "source_url": "/docs/release/9.1.21/#id-1.11.6.8.5"}]}, {"id": "9.4.7-8c82f21f39f39d38", "cves": [], "html": "<p>修复<code>contrib/pgstattuple</code>的<code>pgstatindex()</code>函数返回统计信息中的多处错误（Tom Lane）</p>", "text": "修复contrib/pgstattuple的pgstatindex()函数返回统计信息中的多处错误（Tom Lane）", "title": "修复contrib/pgstattuple的pgstatindex()函数返回统计信息中的多处错误", "commits": [], "section": "变更", "category": "bugfix", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "bdbba9ae9f037f1be18f017bccd6fac1cf9afe42b93c47a0d45ab90ed2864666", "section_path": ["变更"], "commit_groups": [], "identity_text": "Fix multiple mistakes in the statistics returned by contrib/pgstattuple's pgstatindex() function (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/021", "db_id": "c82ce1cf9224cadc8ae894ae7784f80d", "patch_ids": [], "statement_hash": "7f95a59dda74c81c687886866b6b034b30f6bdaef2211c1641ccaaf7c9e7b2f5", "relations": [{"rule": 2, "type": "equivalent", "target": "4f781d915d20642909263bcc729cdd25", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "7f95a59dda74c81c687886866b6b034b30f6bdaef2211c1641ccaaf7c9e7b2f5"}}, {"rule": 2, "type": "equivalent", "target": "99d0798bc013c314df9fdaa71161f84d", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "7f95a59dda74c81c687886866b6b034b30f6bdaef2211c1641ccaaf7c9e7b2f5"}}, {"rule": 2, "type": "equivalent", "target": "9d2ea0da995c1f6a973344c2297bea92", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "7f95a59dda74c81c687886866b6b034b30f6bdaef2211c1641ccaaf7c9e7b2f5"}}, {"rule": 2, "type": "equivalent", "target": "df8612e33097be9e1f28ac742d692ffc", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "7f95a59dda74c81c687886866b6b034b30f6bdaef2211c1641ccaaf7c9e7b2f5"}}], "version": "9.4.7", "category_label": "BUG 修复", "also_in": [], "variants": [], "related_changes": [{"db_id": "df8612e33097be9e1f28ac742d692ffc", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "修复 contrib/pgstattuple 的 pgstatindex() 函数返回统计信息中的多处错误", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "7f95a59dda74c81c687886866b6b034b30f6bdaef2211c1641ccaaf7c9e7b2f5"}, "url": "/docs/compare/?release=9.5.2#9.5.2-e3b15bea588c9d0c", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}, {"db_id": "4f781d915d20642909263bcc729cdd25", "kind": "equivalent", "version": "9.3.12", "label": "9.3.12", "title": "修复 contrib/pgstattuple 的 pgstatindex() 函数返回统计信息中的多处错误", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "7f95a59dda74c81c687886866b6b034b30f6bdaef2211c1641ccaaf7c9e7b2f5"}, "url": "/docs/compare/?release=9.3.12#9.3.12-e3b15bea588c9d0c", "source_url": "/docs/release/9.3.12/#id-1.11.6.18.5"}, {"db_id": "9d2ea0da995c1f6a973344c2297bea92", "kind": "equivalent", "version": "9.2.16", "label": "9.2.16", "title": "修复 contrib/pgstattuple 的 pgstatindex() 函数返回统计信息中的多处错误", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "7f95a59dda74c81c687886866b6b034b30f6bdaef2211c1641ccaaf7c9e7b2f5"}, "url": "/docs/compare/?release=9.2.16#9.2.16-e3b15bea588c9d0c", "source_url": "/docs/release/9.2.16/#id-1.11.6.13.5"}, {"db_id": "99d0798bc013c314df9fdaa71161f84d", "kind": "equivalent", "version": "9.1.21", "label": "9.1.21", "title": "修复 contrib/pgstattuple 的 pgstatindex() 函数返回统计信息中的多处错误", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "7f95a59dda74c81c687886866b6b034b30f6bdaef2211c1641ccaaf7c9e7b2f5"}, "url": "/docs/compare/?release=9.1.21#9.1.21-e3b15bea588c9d0c", "source_url": "/docs/release/9.1.21/#id-1.11.6.8.5"}]}, {"id": "9.4.7-4de7fd15a1d1e7ec", "cves": [], "html": "<p>移除 MSVC 构建中对<code>psed</code>的依赖，因为核心 Perl 已不再提供它（Michael Paquier、Andrew Dunstan）</p>", "text": "移除 MSVC 构建中对psed的依赖，因为核心 Perl 已不再提供它（Michael Paquier、Andrew Dunstan）", "title": "移除 MSVC 构建中对psed的依赖，因为核心 Perl 已不再提供它", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "b6901ebdabbbef0e5d15f0f5800804e39d49cd0da1a58355bc1c958264cbb265", "section_path": ["变更"], "commit_groups": [], "identity_text": "Remove dependency on psed in MSVC builds, since it's no longer provided by core Perl (Michael Paquier, Andrew Dunstan)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/022", "db_id": "d0e095b1f4354992945fa49d79febe89", "patch_ids": [], "statement_hash": "53876e2d019c482ca067c88e9b35480c6ea90d8c106d1dcf82102a4ee05f7b94", "relations": [{"rule": 2, "type": "equivalent", "target": "3fe9e49777d0e1c4b80678c4b9088c61", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "53876e2d019c482ca067c88e9b35480c6ea90d8c106d1dcf82102a4ee05f7b94"}}, {"rule": 2, "type": "equivalent", "target": "5fa13ba1ba92ac22571505655aad9031", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "53876e2d019c482ca067c88e9b35480c6ea90d8c106d1dcf82102a4ee05f7b94"}}, {"rule": 2, "type": "equivalent", "target": "afc93e54af7805085cdd71f2fec7a48f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "53876e2d019c482ca067c88e9b35480c6ea90d8c106d1dcf82102a4ee05f7b94"}}, {"rule": 2, "type": "equivalent", "target": "f5f4f708b4bd22692cc17c73f16631e0", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "53876e2d019c482ca067c88e9b35480c6ea90d8c106d1dcf82102a4ee05f7b94"}}], "version": "9.4.7", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "3fe9e49777d0e1c4b80678c4b9088c61", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "在 MSVC 构建中移除对 psed 的依赖，因为核心 Perl 已不再提供它", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "53876e2d019c482ca067c88e9b35480c6ea90d8c106d1dcf82102a4ee05f7b94"}, "url": "/docs/compare/?release=9.5.2#9.5.2-1abcbec9718bdef8", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}, {"db_id": "afc93e54af7805085cdd71f2fec7a48f", "kind": "equivalent", "version": "9.3.12", "label": "9.3.12", "title": "在 MSVC 构建中移除对 psed 的依赖，因为核心 Perl 已不再提供它", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "53876e2d019c482ca067c88e9b35480c6ea90d8c106d1dcf82102a4ee05f7b94"}, "url": "/docs/compare/?release=9.3.12#9.3.12-1abcbec9718bdef8", "source_url": "/docs/release/9.3.12/#id-1.11.6.18.5"}, {"db_id": "5fa13ba1ba92ac22571505655aad9031", "kind": "equivalent", "version": "9.2.16", "label": "9.2.16", "title": "在 MSVC 构建中移除对 psed 的依赖，因为核心 Perl 已不再提供它", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "53876e2d019c482ca067c88e9b35480c6ea90d8c106d1dcf82102a4ee05f7b94"}, "url": "/docs/compare/?release=9.2.16#9.2.16-1abcbec9718bdef8", "source_url": "/docs/release/9.2.16/#id-1.11.6.13.5"}, {"db_id": "f5f4f708b4bd22692cc17c73f16631e0", "kind": "equivalent", "version": "9.1.21", "label": "9.1.21", "title": "在 MSVC 构建中移除对 psed 的依赖，因为核心 Perl 已不再提供它", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "53876e2d019c482ca067c88e9b35480c6ea90d8c106d1dcf82102a4ee05f7b94"}, "url": "/docs/compare/?release=9.1.21#9.1.21-1abcbec9718bdef8", "source_url": "/docs/release/9.1.21/#id-1.11.6.8.5"}]}, {"id": "9.4.7-99ef89f5f523f589", "cves": [], "html": "<p>将时区数据文件更新到<span>tzdata</span>发行版 2016c，以反映阿塞拜疆、智利、海地、巴勒斯坦和俄罗斯（阿尔泰、阿斯特拉罕、基洛夫、萨哈林、乌里扬诺夫斯克地区）的夏令时法规变更，以及立陶宛、摩尔多瓦和俄罗斯（加里宁格勒、萨马拉、伏尔加格勒）的历史修正。</p>", "text": "将时区数据文件更新到tzdata发行版 2016c，以反映阿塞拜疆、智利、海地、巴勒斯坦和俄罗斯（阿尔泰、阿斯特拉罕、基洛夫、萨哈林、乌里扬诺夫斯克地区）的夏令时法规变更，以及立陶宛、摩尔多瓦和俄罗斯（加里宁格勒、萨马拉、伏尔加格勒）的历史修正。", "title": "将时区数据文件更新到tzdata发行版 2016c，以反映阿塞拜疆、智利、海地、巴勒斯坦和俄罗斯（阿尔泰、阿斯特拉罕、基洛夫、萨哈林、乌里扬诺夫斯克地区）的夏令时法规变更，以及立陶宛、摩尔多瓦和俄罗斯（加里宁格勒、萨马拉、伏尔加格勒）的历史修正。", "commits": [], "section": "变更", "category": "improvement", "source_url": "/docs/release/9.4.7/#id-1.11.6.24.5", "source_hash": "001491d3b81576e028f6d9ef6080dce06fd62d33dcfa9c8d2e23ad59d09ceb16", "section_path": ["变更"], "commit_groups": [], "identity_text": "Update time zone data files to tzdata release 2016c for DST law changes in Azerbaijan, Chile, Haiti, Palestine, and Russia (Altai, Astrakhan, Kirov, Sakhalin, Ulyanovsk regions), plus historical corrections for Lithuania, Moldova, and Russia (Kaliningrad, Samara, Volgograd).", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.4.7/changes/023", "db_id": "31540a243c445f396514cdadc0987a72", "patch_ids": [], "statement_hash": "622a517e919a21515902322cf894a7f5ff6bb97ca3542babb0bf8a71177d00e0", "relations": [{"rule": 2, "type": "equivalent", "target": "11bcd623c4695ea3676739b08b72d6b9", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "622a517e919a21515902322cf894a7f5ff6bb97ca3542babb0bf8a71177d00e0"}}, {"rule": 2, "type": "equivalent", "target": "1cfca3d2934db698b31aff12cf0a4f90", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "622a517e919a21515902322cf894a7f5ff6bb97ca3542babb0bf8a71177d00e0"}}, {"rule": 2, "type": "equivalent", "target": "6831386b58658c333c783df37fedc92f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "622a517e919a21515902322cf894a7f5ff6bb97ca3542babb0bf8a71177d00e0"}}, {"rule": 2, "type": "equivalent", "target": "a7e96d3f5e5d40500670e78d528e0db7", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "622a517e919a21515902322cf894a7f5ff6bb97ca3542babb0bf8a71177d00e0"}}], "version": "9.4.7", "category_label": "其他改进", "also_in": [], "variants": [], "related_changes": [{"db_id": "11bcd623c4695ea3676739b08b72d6b9", "kind": "equivalent", "version": "9.5.2", "label": "9.5.2", "title": "把时区数据文件更新到 tzdata 2016c 版，涉及阿塞拜疆、智利、海地、巴勒斯坦和俄罗斯（阿尔泰、阿斯特拉罕、基洛夫、萨哈林、乌里扬诺夫斯克地区）的夏令时法规变更，以及立陶宛、摩尔多瓦和俄罗斯（加里宁格勒、萨马拉、伏尔加格勒）的历史数据修正。", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "622a517e919a21515902322cf894a7f5ff6bb97ca3542babb0bf8a71177d00e0"}, "url": "/docs/compare/?release=9.5.2#9.5.2-348974ef78c63531", "source_url": "/docs/release/9.5.2/#id-1.11.6.28.5"}, {"db_id": "a7e96d3f5e5d40500670e78d528e0db7", "kind": "equivalent", "version": "9.3.12", "label": "9.3.12", "title": "把时区数据文件更新到 tzdata 2016c 版，涉及阿塞拜疆、智利、海地、巴勒斯坦和俄罗斯（阿尔泰、阿斯特拉罕、基洛夫、萨哈林、乌里扬诺夫斯克地区）的夏令时法规变更，以及立陶宛、摩尔多瓦和俄罗斯（加里宁格勒、萨马拉、伏尔加格勒）的历史数据修正。", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "622a517e919a21515902322cf894a7f5ff6bb97ca3542babb0bf8a71177d00e0"}, "url": "/docs/compare/?release=9.3.12#9.3.12-348974ef78c63531", "source_url": "/docs/release/9.3.12/#id-1.11.6.18.5"}, {"db_id": "6831386b58658c333c783df37fedc92f", "kind": "equivalent", "version": "9.2.16", "label": "9.2.16", "title": "把时区数据文件更新到 tzdata 2016c 版，涉及阿塞拜疆、智利、海地、巴勒斯坦和俄罗斯（阿尔泰、阿斯特拉罕、基洛夫、萨哈林、乌里扬诺夫斯克地区）的夏令时法规变更，以及立陶宛、摩尔多瓦和俄罗斯（加里宁格勒、萨马拉、伏尔加格勒）的历史数据修正。", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "622a517e919a21515902322cf894a7f5ff6bb97ca3542babb0bf8a71177d00e0"}, "url": "/docs/compare/?release=9.2.16#9.2.16-348974ef78c63531", "source_url": "/docs/release/9.2.16/#id-1.11.6.13.5"}, {"db_id": "1cfca3d2934db698b31aff12cf0a4f90", "kind": "equivalent", "version": "9.1.21", "label": "9.1.21", "title": "把时区数据文件更新到 tzdata 2016c 版，涉及阿塞拜疆、智利、海地、巴勒斯坦和俄罗斯（阿尔泰、阿斯特拉罕、基洛夫、萨哈林、乌里扬诺夫斯克地区）的夏令时法规变更，以及立陶宛、摩尔多瓦和俄罗斯（加里宁格勒、萨马拉、伏尔加格勒）的历史数据修正。", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "622a517e919a21515902322cf894a7f5ff6bb97ca3542babb0bf8a71177d00e0"}, "url": "/docs/compare/?release=9.1.21#9.1.21-348974ef78c63531", "source_url": "/docs/release/9.1.21/#id-1.11.6.8.5"}]}]}], "stats": [{"key": "all", "label": "全部变更", "count": 23}, {"key": "feature", "label": "新功能", "count": 0}, {"key": "bugfix", "label": "BUG 修复", "count": 13}, {"key": "security", "label": "安全相关", "count": 0}, {"key": "performance", "label": "性能改进", "count": 0}, {"key": "compatibility", "label": "兼容性变化", "count": 0}, {"key": "improvement", "label": "其他改进", "count": 10}], "total": 23, "release_count": 1, "cross_major": false, "cve_count": 0, "cves": [], "cve_available": true, "remaining_cves": [], "security_regressions": [], "warnings": [], "candidate_count": 23, "already_in_source_count": 0, "duplicate_count": 0, "excluded_count": 0, "exclusions": [], "source_as_of": "2026-09-26", "security_as_of": "2026-09-26"}