{"already_in_source_count":0,"candidate_count":28,"cross_major":false,"cve_available":true,"cve_count":1,"cves":[{"affected":{"13":"13","14":"14","15":"15","16":"16","17":"17"},"affected_ranges":[{"from":"0","until":"13.21"},{"from":"14","until":"14.18"},{"from":"15","until":"15.13"},{"from":"16","until":"16.9"},{"from":"17","until":"17.5"}],"cna_url":"https://cveawg.mitre.org/api/cve/CVE-2025-4207","component":"core server","cvss_version":"3.0","description_en":"Buffer over-read in PostgreSQL GB18030 encoding validation allows a database input provider to achieve temporary denial of service on platforms where a 1-byte over-read can elicit process termination. This affects the database server and also libpq. Versions before PostgreSQL 17.5, 16.9, 15.13, 14.18, and 13.21 are affected.","first_published":"2025-05-08","fixed":{"13":"13.21","14":"14.18","15":"15.13","16":"16.9","17":"17.5"},"fixed_version":"13.21","id":"CVE-2025-4207","introduced":{},"published":{"13":"2025-05-08","14":"2025-05-08","15":"2025-05-08","16":"2025-05-08","17":"2025-05-08"},"score":5.9,"title":"避免在检查声称为 GB18030 编码的无效编码字符串时发生单字节缓冲区越界读取","url":"https://www.postgresql.org/support/security/CVE-2025-4207/","vector":"AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H"}],"duplicate_count":0,"excluded_count":0,"exclusions":[],"from_release":null,"groups":[{"age_days":522,"build":"13.21","changes_count":28,"compatibility_count":0,"content_hash":"8271ee3c9efd763a52a23e6cbb6003155215b7adc6a32f2514cdf2079649188b","date":"2025-05-08","date_text":"2025-05-08","doc_git":"","doc_loaded_at":"2026-09-26T02:56:40.428744","entries":[{"also_in":[],"category":"security","category_label":"Security","commit_aliases":["258cde839","3f2ab7393","44ba3f55f","45fe7e08f","5be213caa","617d34908","627acc3ca","7279e5820","cbadeaca9","d1264948f","ec5f89e8a","f3bb0b2c4"],"commit_groups":[["258cde839","45fe7e08f","5be213caa","617d34908","7279e5820","f3bb0b2c4"],["3f2ab7393","44ba3f55f","627acc3ca","cbadeaca9","d1264948f","ec5f89e8a"]],"commits":["7279e5820","cbadeaca9"],"cves":["CVE-2025-4207"],"db_id":"90816d8cb748849f968f5acd56673365","html":"\u003cp\u003e避免在检查声称为 GB18030 编码的无效编码字符串时发生单字节缓冲区越界读取（Noah Misch，Andres Freund）\u003ca href=\"https://postgr.es/c/cbadeaca9\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/7279e5820\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e虽然可能性不大，但如果不完整的多字节字符出现在内存末尾，可能会导致 SIGSEGV 崩溃。这在服务器和使用 \u003cspan\u003elibpq\u003c/span\u003e 的应用程序中都可能发生。（CVE-2025-4207）\u003c/p\u003e","id":"13.21-bc601768f2de7a35","identity_text":"Avoid one-byte buffer overread when examining invalidly-encoded strings that are claimed to be in GB18030 encoding (Noah Misch, Andres Freund) While unlikely, a SIGSEGV crash could occur if an incomplete multibyte character appeared at the end of memory. This was possible both in the server and in libpq-using applications. (CVE-2025-4207)","part":"changes","patch_ids":["46c8bf47167ab191e3280201c2564861","76df84f28287d373c8422ff9fd4dc342"],"related_changes":[{"db_id":"b709e1b3e9d8624be870988b036fd152","evidence":{"patch_ids":["46c8bf47167ab191e3280201c2564861","76df84f28287d373c8422ff9fd4dc342"],"same_day":true,"statement_hash":"de9bc622c1afed2365e92af367e89d9502a1c466f4c6dba55f3cf061e1d932af"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"避免在检查声称为 GB18030 编码的无效编码字符串时发生单字节缓冲区越界读取","url":"/docs/compare/?release=17.5#17.5-811aed0b2b3689f8","version":"17.5"},{"db_id":"52b291d40b26e80bfcbda168216ed19c","evidence":{"patch_ids":["46c8bf47167ab191e3280201c2564861","76df84f28287d373c8422ff9fd4dc342"],"same_day":true,"statement_hash":"de9bc622c1afed2365e92af367e89d9502a1c466f4c6dba55f3cf061e1d932af"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"避免在检查声称为 GB18030 编码的无效编码字符串时发生单字节缓冲区越界读取","url":"/docs/compare/?release=16.9#16.9-9333e72b42f314f4","version":"16.9"},{"db_id":"324c2d77afbaedc0b35dc9fa474e1a3c","evidence":{"patch_ids":["46c8bf47167ab191e3280201c2564861","76df84f28287d373c8422ff9fd4dc342"],"same_day":true,"statement_hash":"de9bc622c1afed2365e92af367e89d9502a1c466f4c6dba55f3cf061e1d932af"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"避免在检查声称为 GB18030 编码的无效编码字符串时发生单字节缓冲区越界读取","url":"/docs/compare/?release=15.13#15.13-ac5445ebcc0439eb","version":"15.13"},{"db_id":"dd8842462b8fd9529571acc51a1f45c1","evidence":{"patch_ids":["46c8bf47167ab191e3280201c2564861","76df84f28287d373c8422ff9fd4dc342"],"same_day":true,"statement_hash":"de9bc622c1afed2365e92af367e89d9502a1c466f4c6dba55f3cf061e1d932af"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"避免在检查声称为 GB18030 编码的无效编码字符串时发生单字节缓冲区越界读取","url":"/docs/compare/?release=14.18#14.18-e7c0d482f98a0ba1","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["46c8bf47167ab191e3280201c2564861","76df84f28287d373c8422ff9fd4dc342"],"same_day":true,"statement_hash":"de9bc622c1afed2365e92af367e89d9502a1c466f4c6dba55f3cf061e1d932af"},"rule":2,"target":"324c2d77afbaedc0b35dc9fa474e1a3c","type":"equivalent"},{"evidence":{"patch_ids":["46c8bf47167ab191e3280201c2564861","76df84f28287d373c8422ff9fd4dc342"],"same_day":true,"statement_hash":"de9bc622c1afed2365e92af367e89d9502a1c466f4c6dba55f3cf061e1d932af"},"rule":2,"target":"52b291d40b26e80bfcbda168216ed19c","type":"equivalent"},{"evidence":{"patch_ids":["46c8bf47167ab191e3280201c2564861","76df84f28287d373c8422ff9fd4dc342"],"same_day":true,"statement_hash":"de9bc622c1afed2365e92af367e89d9502a1c466f4c6dba55f3cf061e1d932af"},"rule":2,"target":"b709e1b3e9d8624be870988b036fd152","type":"equivalent"},{"evidence":{"patch_ids":["46c8bf47167ab191e3280201c2564861","76df84f28287d373c8422ff9fd4dc342"],"same_day":true,"statement_hash":"de9bc622c1afed2365e92af367e89d9502a1c466f4c6dba55f3cf061e1d932af"},"rule":2,"target":"dd8842462b8fd9529571acc51a1f45c1","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["7279e5820","cbadeaca9"],"source_entry_id":"13.21/changes/001","source_hash":"8397b623bed3ba49888dfa9ca9987b8a7f0f285244ac5e7115f768b08d8e434f","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"de9bc622c1afed2365e92af367e89d9502a1c466f4c6dba55f3cf061e1d932af","text":"避免在检查声称为 GB18030 编码的无效编码字符串时发生单字节缓冲区越界读取（Noah Misch，Andres Freund）§ § 虽然可能性不大，但如果不完整的多字节字符出现在内存末尾，可能会导致 SIGSEGV 崩溃。这在服务器和使用 libpq 的应用程序中都可能发生。（CVE-2025-4207）","title":"避免在检查声称为 GB18030 编码的无效编码字符串时发生单字节缓冲区越界读取","variants":[],"version":"13.21"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["1649d153a","1817d62ec","6ba979cf5","b3a9c536d","c83a38758","f51ae3187"],"commit_groups":[["1649d153a","1817d62ec","6ba979cf5","b3a9c536d","c83a38758","f51ae3187"]],"commits":["b3a9c536d"],"cves":[],"db_id":"1597348d9b84b108c65df5a25ccdad57","html":"\u003cp\u003e正确处理分区表上的自引用外键（Álvaro Herrera）\u003ca href=\"https://postgr.es/c/b3a9c536d\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e创建或附加分区时未能为外键约束创建所需的目录条目，如果该约束引用的表就是同一个分区表。这会导致该约束无法被完全执行。\u003c/p\u003e\n\u003cp\u003e要修复此问题，如果在约束创建之后曾创建或附加过分区，则应删除并重新创建分区表上的任何自引用外键。请注意，可能已经存在违反约束的行，在这种情况下重新创建约束会失败，你需要先修复这些行后再重试。\u003c/p\u003e","id":"13.21-5dfcd8e50f9f1cd7","identity_text":"Handle self-referential foreign keys on partitioned tables correctly (Álvaro Herrera) Creating or attaching partitions failed to make the required catalog entries for a foreign-key constraint, if the table referenced by the constraint was the same partitioned table. This resulted in failure to enforce the constraint fully. To fix this, you should drop and recreate any self-referential foreign keys on partitioned tables, if partitions have been created or attached since the constraint was created. Bear in mind that violating rows might already be present, in which case recreating the constraint will fail, and you'll need to fix up those rows before trying again.","part":"changes","patch_ids":["ad242ea23eebb0296f36fddb8b8111c0"],"related_changes":[{"db_id":"74b0b653fc4b7867d9664b6f47e83cf2","evidence":{"patch_ids":["ad242ea23eebb0296f36fddb8b8111c0"],"same_day":true,"statement_hash":"0c1635d2fbe51396a0afda654bfd96a5b65735f5ba956c95dbfb5862805e3a03"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"正确处理分区表上的自引用外键","url":"/docs/compare/?release=17.5#17.5-33e46d9a26056cb4","version":"17.5"},{"db_id":"2e82178a9bafbe73cfec49a0a0c3913b","evidence":{"patch_ids":["ad242ea23eebb0296f36fddb8b8111c0"],"same_day":true,"statement_hash":"0c1635d2fbe51396a0afda654bfd96a5b65735f5ba956c95dbfb5862805e3a03"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"正确处理分区表上的自引用外键","url":"/docs/compare/?release=16.9#16.9-957bda7d3c81adad","version":"16.9"},{"db_id":"80e3cc10f3858300ca77df2904c1925d","evidence":{"patch_ids":["ad242ea23eebb0296f36fddb8b8111c0"],"same_day":true,"statement_hash":"0c1635d2fbe51396a0afda654bfd96a5b65735f5ba956c95dbfb5862805e3a03"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"正确处理分区表上的自引用外键","url":"/docs/compare/?release=15.13#15.13-0a90d92fac91acc0","version":"15.13"},{"db_id":"00a212cca3e46b43408a50bfb3f001a2","evidence":{"patch_ids":["ad242ea23eebb0296f36fddb8b8111c0"],"same_day":true,"statement_hash":"0c1635d2fbe51396a0afda654bfd96a5b65735f5ba956c95dbfb5862805e3a03"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"正确处理分区表上的自引用外键","url":"/docs/compare/?release=14.18#14.18-8508a57f7675f008","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["ad242ea23eebb0296f36fddb8b8111c0"],"same_day":true,"statement_hash":"0c1635d2fbe51396a0afda654bfd96a5b65735f5ba956c95dbfb5862805e3a03"},"rule":2,"target":"00a212cca3e46b43408a50bfb3f001a2","type":"equivalent"},{"evidence":{"patch_ids":["ad242ea23eebb0296f36fddb8b8111c0"],"same_day":true,"statement_hash":"0c1635d2fbe51396a0afda654bfd96a5b65735f5ba956c95dbfb5862805e3a03"},"rule":2,"target":"2e82178a9bafbe73cfec49a0a0c3913b","type":"equivalent"},{"evidence":{"patch_ids":["ad242ea23eebb0296f36fddb8b8111c0"],"same_day":true,"statement_hash":"0c1635d2fbe51396a0afda654bfd96a5b65735f5ba956c95dbfb5862805e3a03"},"rule":2,"target":"74b0b653fc4b7867d9664b6f47e83cf2","type":"equivalent"},{"evidence":{"patch_ids":["ad242ea23eebb0296f36fddb8b8111c0"],"same_day":true,"statement_hash":"0c1635d2fbe51396a0afda654bfd96a5b65735f5ba956c95dbfb5862805e3a03"},"rule":2,"target":"80e3cc10f3858300ca77df2904c1925d","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["b3a9c536d"],"source_entry_id":"13.21/changes/002","source_hash":"59db393c7335f336ac3ceb1b15d7178fe63170794df3eaf622a4cb96dd4da53f","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"0c1635d2fbe51396a0afda654bfd96a5b65735f5ba956c95dbfb5862805e3a03","text":"正确处理分区表上的自引用外键（Álvaro Herrera）§ 创建或附加分区时未能为外键约束创建所需的目录条目，如果该约束引用的表就是同一个分区表。这会导致该约束无法被完全执行。 要修复此问题，如果在约束创建之后曾创建或附加过分区，则应删除并重新创建分区表上的任何自引用外键。请注意，可能已经存在违反约束的行，在这种情况下重新创建约束会失败，你需要先修复这些行后再重试。","title":"正确处理分区表上的自引用外键","variants":[],"version":"13.21"},{"also_in":[],"category":"bugfix","category_label":"Bug fixes","commit_aliases":["1a20bc946","28a7e31d0","317aba70e","39af32f78","584f17a90","7713f4592","ae0be2f0b","b200180de","ca0830e5a","d3a29ae6a","f4e7756ef","fec43428c"],"commit_groups":[["1a20bc946","7713f4592","b200180de"],["28a7e31d0","317aba70e","584f17a90"],["39af32f78","ae0be2f0b","ca0830e5a","d3a29ae6a","f4e7756ef","fec43428c"]],"commits":["28a7e31d0","39af32f78","b200180de"],"cves":[],"db_id":"78144efed294da8a2d5e820954befe01","html":"\u003cp\u003e修复在 \u003ccode\u003eUPDATE\u003c/code\u003e、\u003ccode\u003eDELETE\u003c/code\u003e 和 \u003ccode\u003eMERGE\u003c/code\u003e 查询中使用对视图或函数的整行表引用（在 \u003ccode\u003eFROM\u003c/code\u003e 中）时出现的意外 \u003cspan\u003e“\u003cspan\u003eattribute has wrong type\u003c/span\u003e”\u003c/span\u003e 错误（Tom Lane）\u003ca href=\"https://postgr.es/c/39af32f78\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/28a7e31d0\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/b200180de\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"13.21-b31af4ef04e8f4e8","identity_text":"Fix unexpected attribute has wrong type errors in UPDATE, DELETE, and MERGE queries that use whole-row table references to views or functions in FROM (Tom Lane)","part":"changes","patch_ids":["15bc8ca0e3cd0f7d7090dc8454de3307","48fefa97f07c981f3d50626a2693f764","59a3817ba039f85b8c7fd855a6cd7c4f"],"related_changes":[{"db_id":"7a02987633308bab11c9305847a877d0","evidence":{"patch_ids":["15bc8ca0e3cd0f7d7090dc8454de3307","48fefa97f07c981f3d50626a2693f764","59a3817ba039f85b8c7fd855a6cd7c4f"],"same_day":true,"statement_hash":"bfb3da86e84e7549dc5b96dc76b02432005d15b99e43155b4cbfbb516d6cbf54"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"修复在 UPDATE、DELETE 和 MERGE 查询中使用对视图或函数的整行表引用（在 FROM 中）时出现的意外 “attribute has wrong type” 错误","url":"/docs/compare/?release=17.5#17.5-4ee041283b8d7df3","version":"17.5"},{"db_id":"6d9a4033cdb647a5127ebda891f45303","evidence":{"patch_ids":["15bc8ca0e3cd0f7d7090dc8454de3307","48fefa97f07c981f3d50626a2693f764","59a3817ba039f85b8c7fd855a6cd7c4f"],"same_day":true,"statement_hash":"bfb3da86e84e7549dc5b96dc76b02432005d15b99e43155b4cbfbb516d6cbf54"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"修复在 UPDATE、DELETE 和 MERGE 查询中使用对视图或函数的整行表引用（在 FROM 中）时出现的意外 “attribute has wrong type” 错误","url":"/docs/compare/?release=16.9#16.9-285f67adcbce3ca8","version":"16.9"},{"db_id":"172f587e40b738a117b3f312ab43c52e","evidence":{"patch_ids":["15bc8ca0e3cd0f7d7090dc8454de3307","48fefa97f07c981f3d50626a2693f764","59a3817ba039f85b8c7fd855a6cd7c4f"],"same_day":true,"statement_hash":"bfb3da86e84e7549dc5b96dc76b02432005d15b99e43155b4cbfbb516d6cbf54"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"修复在 UPDATE、DELETE 和 MERGE 查询中使用对视图或函数的整行表引用（在 FROM 中）时出现的意外 “attribute has wrong type” 错误","url":"/docs/compare/?release=15.13#15.13-77004cecd223761f","version":"15.13"},{"db_id":"faecba315a6ff460195de2ac7c2156a1","evidence":{"patch_ids":["15bc8ca0e3cd0f7d7090dc8454de3307","48fefa97f07c981f3d50626a2693f764","59a3817ba039f85b8c7fd855a6cd7c4f"],"same_day":true,"statement_hash":"bfb3da86e84e7549dc5b96dc76b02432005d15b99e43155b4cbfbb516d6cbf54"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"修复在 UPDATE、DELETE 和 MERGE 查询中使用对视图或函数的整行表引用（在 FROM 中）时出现的意外 “attribute has wrong type” 错误","url":"/docs/compare/?release=14.18#14.18-410db6a272093912","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["15bc8ca0e3cd0f7d7090dc8454de3307","48fefa97f07c981f3d50626a2693f764","59a3817ba039f85b8c7fd855a6cd7c4f"],"same_day":true,"statement_hash":"bfb3da86e84e7549dc5b96dc76b02432005d15b99e43155b4cbfbb516d6cbf54"},"rule":2,"target":"172f587e40b738a117b3f312ab43c52e","type":"equivalent"},{"evidence":{"patch_ids":["15bc8ca0e3cd0f7d7090dc8454de3307","48fefa97f07c981f3d50626a2693f764","59a3817ba039f85b8c7fd855a6cd7c4f"],"same_day":true,"statement_hash":"bfb3da86e84e7549dc5b96dc76b02432005d15b99e43155b4cbfbb516d6cbf54"},"rule":2,"target":"6d9a4033cdb647a5127ebda891f45303","type":"equivalent"},{"evidence":{"patch_ids":["15bc8ca0e3cd0f7d7090dc8454de3307","48fefa97f07c981f3d50626a2693f764","59a3817ba039f85b8c7fd855a6cd7c4f"],"same_day":true,"statement_hash":"bfb3da86e84e7549dc5b96dc76b02432005d15b99e43155b4cbfbb516d6cbf54"},"rule":2,"target":"7a02987633308bab11c9305847a877d0","type":"equivalent"},{"evidence":{"patch_ids":["15bc8ca0e3cd0f7d7090dc8454de3307","48fefa97f07c981f3d50626a2693f764","59a3817ba039f85b8c7fd855a6cd7c4f"],"same_day":true,"statement_hash":"bfb3da86e84e7549dc5b96dc76b02432005d15b99e43155b4cbfbb516d6cbf54"},"rule":2,"target":"faecba315a6ff460195de2ac7c2156a1","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["28a7e31d0","39af32f78","b200180de"],"source_entry_id":"13.21/changes/003","source_hash":"062243d100936d5e6841159ebf366e42ba4ac543b78e253fc4bf1b7e4a5f5115","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"bfb3da86e84e7549dc5b96dc76b02432005d15b99e43155b4cbfbb516d6cbf54","text":"修复在 UPDATE、DELETE 和 MERGE 查询中使用对视图或函数的整行表引用（在 FROM 中）时出现的意外 “attribute has wrong type” 错误（Tom Lane）§ § §","title":"修复在 UPDATE、DELETE 和 MERGE 查询中使用对视图或函数的整行表引用（在 FROM 中）时出现的意外 “attribute has wrong type” 错误","variants":[],"version":"13.21"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["1980ec2bc","5e7be43f4","691836405","754a3d82d","e276b5829","ede29a1e4"],"commit_groups":[["1980ec2bc","5e7be43f4","691836405","754a3d82d","e276b5829","ede29a1e4"]],"commits":["e276b5829"],"cves":[],"db_id":"4e1153d84247e7968ad2cf656d1b8054","html":"\u003cp\u003e正确处理出现在附加到 \u003ccode\u003eINSERT\u003c/code\u003e/\u003ccode\u003eUPDATE\u003c/code\u003e/\u003ccode\u003eDELETE\u003c/code\u003e/\u003ccode\u003eMERGE\u003c/code\u003e 命令（该命令本身在 \u003ccode\u003eWITH\u003c/code\u003e 内部）的 \u003ccode\u003eWITH\u003c/code\u003e 子句中对外部 CTE 名称的引用（Tom Lane）\u003ca href=\"https://postgr.es/c/e276b5829\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e解析器未能检测到不允许的递归情况，也未能在将 CTE 排列为可用顺序时考虑此类引用。\u003c/p\u003e","id":"13.21-a47f4cde204a1376","identity_text":"Correctly process references to outer CTE names that appear within a WITH clause attached to an INSERT/UPDATE/DELETE/MERGE command that's inside WITH (Tom Lane) The parser failed to detect disallowed recursion cases, nor did it account for such references when sorting CTEs into a usable order.","part":"changes","patch_ids":["d1ef004bfb3ff87f530f4c58b02fe0f0"],"related_changes":[{"db_id":"fe87096f3ff10f413ee4fd00bc85e2d2","evidence":{"patch_ids":["d1ef004bfb3ff87f530f4c58b02fe0f0"],"same_day":true,"statement_hash":"bf2a0f590bb786488e65266418e36c3bf742fa81f661e219e66623e07c6f0096"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"正确处理出现在附加到 INSERT/UPDATE/DELETE/MERGE 命令（该命令本身在 WITH 内部）的 WITH 子句中对外部 CTE 名称的引用","url":"/docs/compare/?release=17.5#17.5-b36cfca9c709aa6d","version":"17.5"},{"db_id":"7b32eae49c92985982175f39b0e0cd4e","evidence":{"patch_ids":["d1ef004bfb3ff87f530f4c58b02fe0f0"],"same_day":true,"statement_hash":"bf2a0f590bb786488e65266418e36c3bf742fa81f661e219e66623e07c6f0096"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"正确处理出现在附加到 INSERT/UPDATE/DELETE/MERGE 命令（该命令本身在 WITH 内部）的 WITH 子句中对外部 CTE 名称的引用","url":"/docs/compare/?release=16.9#16.9-a8bff3d57a355b2b","version":"16.9"},{"db_id":"f6ef109aaf444cf2a6cefa7c247f050b","evidence":{"patch_ids":["d1ef004bfb3ff87f530f4c58b02fe0f0"],"same_day":true,"statement_hash":"bf2a0f590bb786488e65266418e36c3bf742fa81f661e219e66623e07c6f0096"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"正确处理出现在附加到 INSERT/UPDATE/DELETE/MERGE 命令（该命令本身在 WITH 内部）的 WITH 子句中对外部 CTE 名称的引用","url":"/docs/compare/?release=15.13#15.13-f4e8b698cacd5fe8","version":"15.13"},{"db_id":"43ef4362d82abd89c632923c19c63abe","evidence":{"patch_ids":["d1ef004bfb3ff87f530f4c58b02fe0f0"],"same_day":true,"statement_hash":"bf2a0f590bb786488e65266418e36c3bf742fa81f661e219e66623e07c6f0096"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"正确处理出现在附加到 INSERT/UPDATE/DELETE/MERGE 命令（该命令本身在 WITH 内部）的 WITH 子句中对外部 CTE 名称的引用","url":"/docs/compare/?release=14.18#14.18-1dfb1187293403b9","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["d1ef004bfb3ff87f530f4c58b02fe0f0"],"same_day":true,"statement_hash":"bf2a0f590bb786488e65266418e36c3bf742fa81f661e219e66623e07c6f0096"},"rule":2,"target":"43ef4362d82abd89c632923c19c63abe","type":"equivalent"},{"evidence":{"patch_ids":["d1ef004bfb3ff87f530f4c58b02fe0f0"],"same_day":true,"statement_hash":"bf2a0f590bb786488e65266418e36c3bf742fa81f661e219e66623e07c6f0096"},"rule":2,"target":"7b32eae49c92985982175f39b0e0cd4e","type":"equivalent"},{"evidence":{"patch_ids":["d1ef004bfb3ff87f530f4c58b02fe0f0"],"same_day":true,"statement_hash":"bf2a0f590bb786488e65266418e36c3bf742fa81f661e219e66623e07c6f0096"},"rule":2,"target":"f6ef109aaf444cf2a6cefa7c247f050b","type":"equivalent"},{"evidence":{"patch_ids":["d1ef004bfb3ff87f530f4c58b02fe0f0"],"same_day":true,"statement_hash":"bf2a0f590bb786488e65266418e36c3bf742fa81f661e219e66623e07c6f0096"},"rule":2,"target":"fe87096f3ff10f413ee4fd00bc85e2d2","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["e276b5829"],"source_entry_id":"13.21/changes/004","source_hash":"82aaebc68075bb4c88e370a53414f64502b268d202d6ad3d87bb380f40a09edf","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"bf2a0f590bb786488e65266418e36c3bf742fa81f661e219e66623e07c6f0096","text":"正确处理出现在附加到 INSERT/UPDATE/DELETE/MERGE 命令（该命令本身在 WITH 内部）的 WITH 子句中对外部 CTE 名称的引用（Tom Lane）§ 解析器未能检测到不允许的递归情况，也未能在将 CTE 排列为可用顺序时考虑此类引用。","title":"正确处理出现在附加到 INSERT/UPDATE/DELETE/MERGE 命令（该命令本身在 WITH 内部）的 WITH 子句中对外部 CTE 名称的引用","variants":[],"version":"13.21"},{"also_in":[],"category":"bugfix","category_label":"Bug fixes","commit_aliases":["0405982c7","13dd6f772","4618045be","474aee3df","c826cd1b1","f7ae51312"],"commit_groups":[["0405982c7","13dd6f772","4618045be","474aee3df","c826cd1b1","f7ae51312"]],"commits":["474aee3df"],"cves":[],"db_id":"776a870e5f87a27f3d8fd7999acd7ce5","html":"\u003cp\u003e修复 \u003ccode\u003eARRAY(\u003cem\u003e\u003ccode\u003esubquery\u003c/code\u003e\u003c/em\u003e)\u003c/code\u003e 和 \u003ccode\u003eARRAY[\u003cem\u003e\u003ccode\u003eexpression, ...\u003c/code\u003e\u003c/em\u003e]\u003c/code\u003e 构造，使其在输入类型为 \u003ccode\u003eint2vector\u003c/code\u003e 或 \u003ccode\u003eoidvector\u003c/code\u003e 时产生合理的结果（Tom Lane）\u003ca href=\"https://postgr.es/c/474aee3df\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e此补丁恢复了 \u003cspan\u003ePostgreSQL\u003c/span\u003e 9.5 之前的行为：结果类型为 \u003ccode\u003eint2vector[]\u003c/code\u003e 或 \u003ccode\u003eoidvector[]\u003c/code\u003e。\u003c/p\u003e","id":"13.21-5479a3227697d975","identity_text":"Fix ARRAY(subquery) and ARRAY[expression, ...] constructs to produce sane results when the input is of type int2vector or oidvector (Tom Lane) This patch restores the behavior that existed before PostgreSQL 9.5: the result is of type int2vector[] or oidvector[].","part":"changes","patch_ids":["59bbe3085e9bcfcbfff1d9fc5b4c1c56"],"related_changes":[{"db_id":"3222441c7723d9224344f9adaa6fdf0e","evidence":{"patch_ids":["59bbe3085e9bcfcbfff1d9fc5b4c1c56"],"same_day":true,"statement_hash":"7afc60033c3c40c571fedbd57a2c2e696aadfd82fb0b2198db9afe0faeb53944"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"修复 ARRAY(subquery) 和 ARRAY[expression, ...] 构造，使其在输入类型为 int2vector 或 oidvector 时产生合理的结果","url":"/docs/compare/?release=17.5#17.5-4a9dd248dfb091b7","version":"17.5"},{"db_id":"efaaf4024f5f5de0ba0862f7f3d99696","evidence":{"patch_ids":["59bbe3085e9bcfcbfff1d9fc5b4c1c56"],"same_day":true,"statement_hash":"7afc60033c3c40c571fedbd57a2c2e696aadfd82fb0b2198db9afe0faeb53944"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"修复 ARRAY(subquery) 和 ARRAY[expression, ...] 构造，使其在输入类型为 int2vector 或 oidvector 时产生合理的结果","url":"/docs/compare/?release=16.9#16.9-5ed49886adc3d34a","version":"16.9"},{"db_id":"a7950d93d654d654b785213f157499c7","evidence":{"patch_ids":["59bbe3085e9bcfcbfff1d9fc5b4c1c56"],"same_day":true,"statement_hash":"7afc60033c3c40c571fedbd57a2c2e696aadfd82fb0b2198db9afe0faeb53944"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"修复 ARRAY(subquery) 和 ARRAY[expression, ...] 构造，使其在输入类型为 int2vector 或 oidvector 时产生合理的结果","url":"/docs/compare/?release=15.13#15.13-c6423740dd58b9c5","version":"15.13"},{"db_id":"34305a36a827e7b4f59256045ef7ec72","evidence":{"patch_ids":["59bbe3085e9bcfcbfff1d9fc5b4c1c56"],"same_day":true,"statement_hash":"7afc60033c3c40c571fedbd57a2c2e696aadfd82fb0b2198db9afe0faeb53944"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"修复 ARRAY(subquery) 和 ARRAY[expression, ...] 构造，使其在输入类型为 int2vector 或 oidvector 时产生合理的结果","url":"/docs/compare/?release=14.18#14.18-70198d240c4e5136","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["59bbe3085e9bcfcbfff1d9fc5b4c1c56"],"same_day":true,"statement_hash":"7afc60033c3c40c571fedbd57a2c2e696aadfd82fb0b2198db9afe0faeb53944"},"rule":2,"target":"3222441c7723d9224344f9adaa6fdf0e","type":"equivalent"},{"evidence":{"patch_ids":["59bbe3085e9bcfcbfff1d9fc5b4c1c56"],"same_day":true,"statement_hash":"7afc60033c3c40c571fedbd57a2c2e696aadfd82fb0b2198db9afe0faeb53944"},"rule":2,"target":"34305a36a827e7b4f59256045ef7ec72","type":"equivalent"},{"evidence":{"patch_ids":["59bbe3085e9bcfcbfff1d9fc5b4c1c56"],"same_day":true,"statement_hash":"7afc60033c3c40c571fedbd57a2c2e696aadfd82fb0b2198db9afe0faeb53944"},"rule":2,"target":"a7950d93d654d654b785213f157499c7","type":"equivalent"},{"evidence":{"patch_ids":["59bbe3085e9bcfcbfff1d9fc5b4c1c56"],"same_day":true,"statement_hash":"7afc60033c3c40c571fedbd57a2c2e696aadfd82fb0b2198db9afe0faeb53944"},"rule":2,"target":"efaaf4024f5f5de0ba0862f7f3d99696","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["474aee3df"],"source_entry_id":"13.21/changes/005","source_hash":"67675341e525c817d644860460b940d13e5720b03bd3e5f13f865828478e67e0","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"7afc60033c3c40c571fedbd57a2c2e696aadfd82fb0b2198db9afe0faeb53944","text":"修复 ARRAY(subquery) 和 ARRAY[expression, ...] 构造，使其在输入类型为 int2vector 或 oidvector 时产生合理的结果（Tom Lane）§ 此补丁恢复了 PostgreSQL 9.5 之前的行为：结果类型为 int2vector[] 或 oidvector[]。","title":"修复 ARRAY(subquery) 和 ARRAY[expression, ...] 构造，使其在输入类型为 int2vector 或 oidvector 时产生合理的结果","variants":[],"version":"13.21"},{"also_in":[],"category":"bugfix","category_label":"Bug fixes","commit_aliases":["61513da08","7fb880102","99c01aadf","da85544ae","e2921c0e9","f1c1bafcd"],"commit_groups":[["61513da08","7fb880102","99c01aadf","da85544ae","e2921c0e9","f1c1bafcd"]],"commits":["f1c1bafcd"],"cves":[],"db_id":"eb58cef266f21c9edb703764403f7168","html":"\u003cp\u003e修复解析 \u003cspan\u003eIspell\u003c/span\u003e 字典时可能错误报告无效词缀的问题（Jacob Brazeal）\u003ca href=\"https://postgr.es/c/f1c1bafcd\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"13.21-c84be53354aebbd7","identity_text":"Fix possible erroneous reports of invalid affixes while parsing Ispell dictionaries (Jacob Brazeal)","part":"changes","patch_ids":["f2484a0ea37309c0a083683b6f24f404"],"related_changes":[{"db_id":"b921604055772bbf7e6449d7cc0b59cc","evidence":{"patch_ids":["f2484a0ea37309c0a083683b6f24f404"],"same_day":true,"statement_hash":"a99d8bf2396babe0930adb5536a57eee692561e5efed988b319c441a85e28666"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"修复解析 Ispell 字典时可能错误报告无效词缀的问题","url":"/docs/compare/?release=17.5#17.5-d1d934652e8cc19f","version":"17.5"},{"db_id":"8937ea7c9fd026836a5c262c8569963e","evidence":{"patch_ids":["f2484a0ea37309c0a083683b6f24f404"],"same_day":true,"statement_hash":"a99d8bf2396babe0930adb5536a57eee692561e5efed988b319c441a85e28666"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"修复解析 Ispell 字典时可能错误报告无效词缀的问题","url":"/docs/compare/?release=16.9#16.9-120195bfc62f85d9","version":"16.9"},{"db_id":"2d395b5defef434bec7ea4da45b42ad7","evidence":{"patch_ids":["f2484a0ea37309c0a083683b6f24f404"],"same_day":true,"statement_hash":"a99d8bf2396babe0930adb5536a57eee692561e5efed988b319c441a85e28666"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"修复解析 Ispell 字典时可能错误报告无效词缀的问题","url":"/docs/compare/?release=15.13#15.13-327c96a58899c1ae","version":"15.13"},{"db_id":"8d306975e4b0a9c39e7fff8c8ad3613e","evidence":{"patch_ids":["f2484a0ea37309c0a083683b6f24f404"],"same_day":true,"statement_hash":"a99d8bf2396babe0930adb5536a57eee692561e5efed988b319c441a85e28666"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"修复解析 Ispell 字典时可能错误报告无效词缀的问题","url":"/docs/compare/?release=14.18#14.18-60d7303621919c68","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["f2484a0ea37309c0a083683b6f24f404"],"same_day":true,"statement_hash":"a99d8bf2396babe0930adb5536a57eee692561e5efed988b319c441a85e28666"},"rule":2,"target":"2d395b5defef434bec7ea4da45b42ad7","type":"equivalent"},{"evidence":{"patch_ids":["f2484a0ea37309c0a083683b6f24f404"],"same_day":true,"statement_hash":"a99d8bf2396babe0930adb5536a57eee692561e5efed988b319c441a85e28666"},"rule":2,"target":"8937ea7c9fd026836a5c262c8569963e","type":"equivalent"},{"evidence":{"patch_ids":["f2484a0ea37309c0a083683b6f24f404"],"same_day":true,"statement_hash":"a99d8bf2396babe0930adb5536a57eee692561e5efed988b319c441a85e28666"},"rule":2,"target":"8d306975e4b0a9c39e7fff8c8ad3613e","type":"equivalent"},{"evidence":{"patch_ids":["f2484a0ea37309c0a083683b6f24f404"],"same_day":true,"statement_hash":"a99d8bf2396babe0930adb5536a57eee692561e5efed988b319c441a85e28666"},"rule":2,"target":"b921604055772bbf7e6449d7cc0b59cc","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["f1c1bafcd"],"source_entry_id":"13.21/changes/006","source_hash":"ae0933e8a3592fe3b27892826895f0a037937e3b9c96d22ce2f0aeccbb3c2c4f","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"a99d8bf2396babe0930adb5536a57eee692561e5efed988b319c441a85e28666","text":"修复解析 Ispell 字典时可能错误报告无效词缀的问题（Jacob Brazeal）§","title":"修复解析 Ispell 字典时可能错误报告无效词缀的问题","variants":[],"version":"13.21"},{"also_in":[],"category":"bugfix","category_label":"Bug fixes","commit_aliases":["053222a97","0941aadcd","1d180931c","2d6cfb0cd","95f650674","aac07b562","bd178960c","c75c830e2","d31d39cfe","d6dd2a02b","dd34cbfce","edc3bccd0"],"commit_groups":[["053222a97","0941aadcd","2d6cfb0cd","bd178960c","d31d39cfe","dd34cbfce"],["1d180931c","95f650674","aac07b562","c75c830e2","d6dd2a02b","edc3bccd0"]],"commits":["aac07b562","dd34cbfce"],"cves":[],"db_id":"67b1fe09f72f93e8e744403275b7aa4e","html":"\u003cp\u003e修复 \u003ccode\u003eALTER TABLE ADD COLUMN\u003c/code\u003e 以正确处理具有默认值的域类型的情况（Jian He，Tom Lane，Tender Wang）\u003ca href=\"https://postgr.es/c/aac07b562\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/dd34cbfce\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e如果域类型具有默认值，在不带显式 \u003ccode\u003eDEFAULT\u003c/code\u003e 子句的情况下添加该类型的列，未能在现有行中安装域的默认值，而是将新列保留为空值。\u003c/p\u003e","id":"13.21-524aff75bb28f7d8","identity_text":"Fix ALTER TABLE ADD COLUMN to correctly handle the case of a domain type that has a default (Jian He, Tom Lane, Tender Wang) If a domain type has a default, adding a column of that type (without any explicit DEFAULT clause) failed to install the domain's default value in existing rows, instead leaving the new column null.","part":"changes","patch_ids":["63b929a73acffed8834764ac057b1130","90edbbe7a64e4f9be0183e7d3a909fcb"],"related_changes":[{"db_id":"bda06720441f8b94b004bc75152072f7","evidence":{"patch_ids":["63b929a73acffed8834764ac057b1130","90edbbe7a64e4f9be0183e7d3a909fcb"],"same_day":true,"statement_hash":"9dde4454d5d016960324b8efe0e0cbc6cb88a91609eec3a0aac95a6b33e97448"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"修复 ALTER TABLE ADD COLUMN 以正确处理具有默认值的域类型的情况","url":"/docs/compare/?release=17.5#17.5-2de3ea680928346f","version":"17.5"},{"db_id":"b21fa0b3c6540e52538f3695fe644b48","evidence":{"patch_ids":["63b929a73acffed8834764ac057b1130","90edbbe7a64e4f9be0183e7d3a909fcb"],"same_day":true,"statement_hash":"9dde4454d5d016960324b8efe0e0cbc6cb88a91609eec3a0aac95a6b33e97448"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"修复 ALTER TABLE ADD COLUMN 以正确处理具有默认值的域类型的情况","url":"/docs/compare/?release=16.9#16.9-f431ea6a5d783302","version":"16.9"},{"db_id":"e7731739d7e0e48daada65e0f3f2f700","evidence":{"patch_ids":["63b929a73acffed8834764ac057b1130","90edbbe7a64e4f9be0183e7d3a909fcb"],"same_day":true,"statement_hash":"9dde4454d5d016960324b8efe0e0cbc6cb88a91609eec3a0aac95a6b33e97448"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"修复 ALTER TABLE ADD COLUMN 以正确处理具有默认值的域类型的情况","url":"/docs/compare/?release=15.13#15.13-15397e28cacbb50b","version":"15.13"},{"db_id":"37a827dba2a507a5634eda2d0066034c","evidence":{"patch_ids":["63b929a73acffed8834764ac057b1130","90edbbe7a64e4f9be0183e7d3a909fcb"],"same_day":true,"statement_hash":"9dde4454d5d016960324b8efe0e0cbc6cb88a91609eec3a0aac95a6b33e97448"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"修复 ALTER TABLE ADD COLUMN 以正确处理具有默认值的域类型的情况","url":"/docs/compare/?release=14.18#14.18-338b3f4c18daa9a7","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["63b929a73acffed8834764ac057b1130","90edbbe7a64e4f9be0183e7d3a909fcb"],"same_day":true,"statement_hash":"9dde4454d5d016960324b8efe0e0cbc6cb88a91609eec3a0aac95a6b33e97448"},"rule":2,"target":"37a827dba2a507a5634eda2d0066034c","type":"equivalent"},{"evidence":{"patch_ids":["63b929a73acffed8834764ac057b1130","90edbbe7a64e4f9be0183e7d3a909fcb"],"same_day":true,"statement_hash":"9dde4454d5d016960324b8efe0e0cbc6cb88a91609eec3a0aac95a6b33e97448"},"rule":2,"target":"b21fa0b3c6540e52538f3695fe644b48","type":"equivalent"},{"evidence":{"patch_ids":["63b929a73acffed8834764ac057b1130","90edbbe7a64e4f9be0183e7d3a909fcb"],"same_day":true,"statement_hash":"9dde4454d5d016960324b8efe0e0cbc6cb88a91609eec3a0aac95a6b33e97448"},"rule":2,"target":"bda06720441f8b94b004bc75152072f7","type":"equivalent"},{"evidence":{"patch_ids":["63b929a73acffed8834764ac057b1130","90edbbe7a64e4f9be0183e7d3a909fcb"],"same_day":true,"statement_hash":"9dde4454d5d016960324b8efe0e0cbc6cb88a91609eec3a0aac95a6b33e97448"},"rule":2,"target":"e7731739d7e0e48daada65e0f3f2f700","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["aac07b562","dd34cbfce"],"source_entry_id":"13.21/changes/007","source_hash":"3b89193d0e12887c40d5143d32d23850a68c7db56fa95d622a6dceed081332f5","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"9dde4454d5d016960324b8efe0e0cbc6cb88a91609eec3a0aac95a6b33e97448","text":"修复 ALTER TABLE ADD COLUMN 以正确处理具有默认值的域类型的情况（Jian He，Tom Lane，Tender Wang）§ § 如果域类型具有默认值，在不带显式 DEFAULT 子句的情况下添加该类型的列，未能在现有行中安装域的默认值，而是将新列保留为空值。","title":"修复 ALTER TABLE ADD COLUMN 以正确处理具有默认值的域类型的情况","variants":[],"version":"13.21"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["0f354e080","4e026be5f","7bbc46213","931a1c023","9ea5fe5b6","bf1e2d2db"],"commit_groups":[["0f354e080","4e026be5f","7bbc46213","931a1c023","9ea5fe5b6","bf1e2d2db"]],"commits":["0f354e080"],"cves":[],"db_id":"0d1236e87dc3b61c47a965fdf13a3b6e","html":"\u003cp\u003e改进对不允许的外键约束属性修改尝试的错误消息（Álvaro Herrera）\u003ca href=\"https://postgr.es/c/0f354e080\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"13.21-5056a890e5317fea","identity_text":"Improve the error message for disallowed attempts to alter the properties of a foreign key constraint (Álvaro Herrera)","part":"changes","patch_ids":["728bdeda1a76ff257ed4bba316259080"],"related_changes":[{"db_id":"c85aaec4454f3f6c178e25e80fc110f7","evidence":{"patch_ids":["728bdeda1a76ff257ed4bba316259080"],"same_day":true,"statement_hash":"69d10dbdc12bb154d1a6cea5ee9e09a2b99194bd690c1fcb18cb3ef905c1e82e"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"改进对不允许的外键约束属性修改尝试的错误消息","url":"/docs/compare/?release=17.5#17.5-4a57902eda945b83","version":"17.5"},{"db_id":"5627f1c1d8a4f69c29448aee864c6b84","evidence":{"patch_ids":["728bdeda1a76ff257ed4bba316259080"],"same_day":true,"statement_hash":"69d10dbdc12bb154d1a6cea5ee9e09a2b99194bd690c1fcb18cb3ef905c1e82e"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"改进对不允许的外键约束属性修改尝试的错误消息","url":"/docs/compare/?release=16.9#16.9-d72b0590a5240169","version":"16.9"},{"db_id":"dfe47a550f472aa86b315fdfc03d4aa5","evidence":{"patch_ids":["728bdeda1a76ff257ed4bba316259080"],"same_day":true,"statement_hash":"69d10dbdc12bb154d1a6cea5ee9e09a2b99194bd690c1fcb18cb3ef905c1e82e"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"改进对不允许的外键约束属性修改尝试的错误消息","url":"/docs/compare/?release=15.13#15.13-5a8186c93235cabd","version":"15.13"},{"db_id":"0b9e876fbe15368f7eb3e73dd5bde6fd","evidence":{"patch_ids":["728bdeda1a76ff257ed4bba316259080"],"same_day":true,"statement_hash":"69d10dbdc12bb154d1a6cea5ee9e09a2b99194bd690c1fcb18cb3ef905c1e82e"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"改进对不允许的外键约束属性修改尝试的错误消息","url":"/docs/compare/?release=14.18#14.18-c2054eb401976a11","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["728bdeda1a76ff257ed4bba316259080"],"same_day":true,"statement_hash":"69d10dbdc12bb154d1a6cea5ee9e09a2b99194bd690c1fcb18cb3ef905c1e82e"},"rule":2,"target":"0b9e876fbe15368f7eb3e73dd5bde6fd","type":"equivalent"},{"evidence":{"patch_ids":["728bdeda1a76ff257ed4bba316259080"],"same_day":true,"statement_hash":"69d10dbdc12bb154d1a6cea5ee9e09a2b99194bd690c1fcb18cb3ef905c1e82e"},"rule":2,"target":"5627f1c1d8a4f69c29448aee864c6b84","type":"equivalent"},{"evidence":{"patch_ids":["728bdeda1a76ff257ed4bba316259080"],"same_day":true,"statement_hash":"69d10dbdc12bb154d1a6cea5ee9e09a2b99194bd690c1fcb18cb3ef905c1e82e"},"rule":2,"target":"c85aaec4454f3f6c178e25e80fc110f7","type":"equivalent"},{"evidence":{"patch_ids":["728bdeda1a76ff257ed4bba316259080"],"same_day":true,"statement_hash":"69d10dbdc12bb154d1a6cea5ee9e09a2b99194bd690c1fcb18cb3ef905c1e82e"},"rule":2,"target":"dfe47a550f472aa86b315fdfc03d4aa5","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["0f354e080"],"source_entry_id":"13.21/changes/008","source_hash":"4f73ce65462f61d88e826cb6e9899502895c6555db8abe7869cecccd9c03acf2","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"69d10dbdc12bb154d1a6cea5ee9e09a2b99194bd690c1fcb18cb3ef905c1e82e","text":"改进对不允许的外键约束属性修改尝试的错误消息（Álvaro Herrera）§","title":"改进对不允许的外键约束属性修改尝试的错误消息","variants":[],"version":"13.21"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["2d5350cfb","5905e9935","a61b67cd0","d0a049987","d34b671a6","e0f53e669"],"commit_groups":[["2d5350cfb","5905e9935","a61b67cd0","d0a049987","d34b671a6","e0f53e669"]],"commits":["d34b671a6"],"cves":[],"db_id":"efa1ed5e465f24cd978e2e5f6a028f46","html":"\u003cp\u003e避免在重置标记为 \u003ccode\u003eON COMMIT DELETE ROWS\u003c/code\u003e 的临时表的 \u003ccode\u003erelhassubclass\u003c/code\u003e 标志时出错（Noah Misch）\u003ca href=\"https://postgr.es/c/d34b671a6\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"13.21-23bb14178943d8c3","identity_text":"Avoid error when resetting the relhassubclass flag of a temporary table that's marked ON COMMIT DELETE ROWS (Noah Misch)","part":"changes","patch_ids":["094a862179c0b39d921a9e561fa15870"],"related_changes":[{"db_id":"c500adf4525e7393fbb98cdb336cc64a","evidence":{"patch_ids":["094a862179c0b39d921a9e561fa15870"],"same_day":true,"statement_hash":"6a67c492f1ab19533dfcea2a041a797a78f234546ded977e8443af5eed897716"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"避免在重置标记为 ON COMMIT DELETE ROWS 的临时表的 relhassubclass 标志时出错","url":"/docs/compare/?release=17.5#17.5-b17b36d23abec8d7","version":"17.5"},{"db_id":"b6d27235f074c918e62b489bdf3cfbba","evidence":{"patch_ids":["094a862179c0b39d921a9e561fa15870"],"same_day":true,"statement_hash":"6a67c492f1ab19533dfcea2a041a797a78f234546ded977e8443af5eed897716"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"避免在重置标记为 ON COMMIT DELETE ROWS 的临时表的 relhassubclass 标志时出错","url":"/docs/compare/?release=16.9#16.9-1420db24bb1e2cab","version":"16.9"},{"db_id":"89ce417881f616fe136cb14aa40da99f","evidence":{"patch_ids":["094a862179c0b39d921a9e561fa15870"],"same_day":true,"statement_hash":"6a67c492f1ab19533dfcea2a041a797a78f234546ded977e8443af5eed897716"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"避免在重置标记为 ON COMMIT DELETE ROWS 的临时表的 relhassubclass 标志时出错","url":"/docs/compare/?release=15.13#15.13-aeab43b9af8c9591","version":"15.13"},{"db_id":"2970c113ec75804e2bbeaf779747bffa","evidence":{"patch_ids":["094a862179c0b39d921a9e561fa15870"],"same_day":true,"statement_hash":"6a67c492f1ab19533dfcea2a041a797a78f234546ded977e8443af5eed897716"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"避免在重置标记为 ON COMMIT DELETE ROWS 的临时表的 relhassubclass 标志时出错","url":"/docs/compare/?release=14.18#14.18-fc90ad8d130d1aa5","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["094a862179c0b39d921a9e561fa15870"],"same_day":true,"statement_hash":"6a67c492f1ab19533dfcea2a041a797a78f234546ded977e8443af5eed897716"},"rule":2,"target":"2970c113ec75804e2bbeaf779747bffa","type":"equivalent"},{"evidence":{"patch_ids":["094a862179c0b39d921a9e561fa15870"],"same_day":true,"statement_hash":"6a67c492f1ab19533dfcea2a041a797a78f234546ded977e8443af5eed897716"},"rule":2,"target":"89ce417881f616fe136cb14aa40da99f","type":"equivalent"},{"evidence":{"patch_ids":["094a862179c0b39d921a9e561fa15870"],"same_day":true,"statement_hash":"6a67c492f1ab19533dfcea2a041a797a78f234546ded977e8443af5eed897716"},"rule":2,"target":"b6d27235f074c918e62b489bdf3cfbba","type":"equivalent"},{"evidence":{"patch_ids":["094a862179c0b39d921a9e561fa15870"],"same_day":true,"statement_hash":"6a67c492f1ab19533dfcea2a041a797a78f234546ded977e8443af5eed897716"},"rule":2,"target":"c500adf4525e7393fbb98cdb336cc64a","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["d34b671a6"],"source_entry_id":"13.21/changes/009","source_hash":"9e8e7d535983e4f56d8e3e5a031199ad3f6b025e1520f73624b4c78343b6cca8","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"6a67c492f1ab19533dfcea2a041a797a78f234546ded977e8443af5eed897716","text":"避免在重置标记为 ON COMMIT DELETE ROWS 的临时表的 relhassubclass 标志时出错（Noah Misch）§","title":"避免在重置标记为 ON COMMIT DELETE ROWS 的临时表的 relhassubclass 标志时出错","variants":[],"version":"13.21"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["459e7bf8e","4934d3875","77d90d6d6","78cb2466f","980727b84","b9ec8125d"],"commit_groups":[["459e7bf8e","4934d3875","77d90d6d6","78cb2466f","980727b84","b9ec8125d"]],"commits":["b9ec8125d"],"cves":[],"db_id":"aad339e7e9006b00a0a084b4f930d309","html":"\u003cp\u003e禁用位图堆扫描中的\u003cspan\u003e“\u003cspan\u003e跳过获取\u003c/span\u003e”\u003c/span\u003e优化（Matthias van de Meent）\u003ca href=\"https://postgr.es/c/b9ec8125d\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e事实证明，当并发 vacuum 将页面标记为全部可见时，此优化可能会返回死元组。\u003c/p\u003e","id":"13.21-a23918277d20303c","identity_text":"Disable skip fetch optimization in bitmap heap scan (Matthias van de Meent) It turns out that this optimization can result in returning dead tuples when a concurrent vacuum marks a page all-visible.","part":"changes","patch_ids":["24bd9f8c7d1c77a2c13ebf151d4f8c78"],"related_changes":[{"db_id":"623c2024106007645fec5d71fb5712bb","evidence":{"patch_ids":["24bd9f8c7d1c77a2c13ebf151d4f8c78"],"same_day":true,"statement_hash":"8f4cf3b56c19d886317615b5f6a44c5d0e2b2b6a87c82a344367ba093f15aa67"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"禁用位图堆扫描中的“跳过获取”优化","url":"/docs/compare/?release=17.5#17.5-d0e0aee72000234f","version":"17.5"},{"db_id":"b694546a946a05eab3a70dbe84ca5802","evidence":{"patch_ids":["24bd9f8c7d1c77a2c13ebf151d4f8c78"],"same_day":true,"statement_hash":"8f4cf3b56c19d886317615b5f6a44c5d0e2b2b6a87c82a344367ba093f15aa67"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"禁用位图堆扫描中的“跳过获取”优化","url":"/docs/compare/?release=16.9#16.9-ec226192f4ec4117","version":"16.9"},{"db_id":"fac79d43b3a211db66f6f7439608ee0d","evidence":{"patch_ids":["24bd9f8c7d1c77a2c13ebf151d4f8c78"],"same_day":true,"statement_hash":"8f4cf3b56c19d886317615b5f6a44c5d0e2b2b6a87c82a344367ba093f15aa67"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"禁用位图堆扫描中的“跳过获取”优化","url":"/docs/compare/?release=15.13#15.13-0fcfc7db639b5e6d","version":"15.13"},{"db_id":"5b84c530a1833db604577188570826f0","evidence":{"patch_ids":["24bd9f8c7d1c77a2c13ebf151d4f8c78"],"same_day":true,"statement_hash":"8f4cf3b56c19d886317615b5f6a44c5d0e2b2b6a87c82a344367ba093f15aa67"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"禁用位图堆扫描中的“跳过获取”优化","url":"/docs/compare/?release=14.18#14.18-7fee35a12ed31c20","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["24bd9f8c7d1c77a2c13ebf151d4f8c78"],"same_day":true,"statement_hash":"8f4cf3b56c19d886317615b5f6a44c5d0e2b2b6a87c82a344367ba093f15aa67"},"rule":2,"target":"5b84c530a1833db604577188570826f0","type":"equivalent"},{"evidence":{"patch_ids":["24bd9f8c7d1c77a2c13ebf151d4f8c78"],"same_day":true,"statement_hash":"8f4cf3b56c19d886317615b5f6a44c5d0e2b2b6a87c82a344367ba093f15aa67"},"rule":2,"target":"623c2024106007645fec5d71fb5712bb","type":"equivalent"},{"evidence":{"patch_ids":["24bd9f8c7d1c77a2c13ebf151d4f8c78"],"same_day":true,"statement_hash":"8f4cf3b56c19d886317615b5f6a44c5d0e2b2b6a87c82a344367ba093f15aa67"},"rule":2,"target":"b694546a946a05eab3a70dbe84ca5802","type":"equivalent"},{"evidence":{"patch_ids":["24bd9f8c7d1c77a2c13ebf151d4f8c78"],"same_day":true,"statement_hash":"8f4cf3b56c19d886317615b5f6a44c5d0e2b2b6a87c82a344367ba093f15aa67"},"rule":2,"target":"fac79d43b3a211db66f6f7439608ee0d","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["b9ec8125d"],"source_entry_id":"13.21/changes/010","source_hash":"b75346b95e8a680eb9136831cb3bd1ce895c39e4c87d4942cb400cee4576155e","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"8f4cf3b56c19d886317615b5f6a44c5d0e2b2b6a87c82a344367ba093f15aa67","text":"禁用位图堆扫描中的“跳过获取”优化（Matthias van de Meent）§ 事实证明，当并发 vacuum 将页面标记为全部可见时，此优化可能会返回死元组。","title":"禁用位图堆扫描中的“跳过获取”优化","variants":[],"version":"13.21"},{"also_in":[],"category":"bugfix","category_label":"Bug fixes","commit_aliases":["0f21db36d","1b47a112a","2d313375c","308d0d443","4b65b085a","8c153fcfa","9094eb25b","9a8c16aec","c7597a1d3","d52221cf0","e2a6934a8","e708ffe79"],"commit_groups":[["0f21db36d","2d313375c","308d0d443","9094eb25b","d52221cf0","e2a6934a8"],["1b47a112a","4b65b085a","8c153fcfa","9a8c16aec","c7597a1d3","e708ffe79"]],"commits":["308d0d443","c7597a1d3"],"cves":[],"db_id":"e9ec96a7119ad1ceca446c7f063da569","html":"\u003cp\u003e修复存在大量搜索键时 GIN 索引搜索启动的性能问题（Tom Lane，Vinod Sridharan）\u003ca href=\"https://postgr.es/c/308d0d443\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/c7597a1d3\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e具有大量键的可索引子句（例如，\u003ccode\u003ejsonbcol ?| array[...]\u003c/code\u003e 包含数万个数组元素）启动时需要 O(N\u003csup\u003e2\u003c/sup\u003e) 的时间，并且在此期间也无法被取消。\u003c/p\u003e","id":"13.21-8e25b16da69e5339","identity_text":"Fix performance issues in GIN index search startup when there are many search keys (Tom Lane, Vinod Sridharan) An indexable clause with many keys (for example, jsonbcol ?| array[...] with tens of thousands of array elements) took O(N2) time to start up, and was uncancelable for that interval too.","part":"changes","patch_ids":["de4829b5fcffd69ee19e71256ee340b9","ec9c3e41474954f7fb3b16769b3eaf5f"],"related_changes":[{"db_id":"c2e95259bc7f81ee87e2761072380865","evidence":{"patch_ids":["de4829b5fcffd69ee19e71256ee340b9","ec9c3e41474954f7fb3b16769b3eaf5f"],"same_day":true,"statement_hash":"93737b3baf31ce844a14e13d2cb447939c4de0b0f6567d19e55d971b065c60b0"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"修复存在大量搜索键时 GIN 索引搜索启动的性能问题","url":"/docs/compare/?release=17.5#17.5-6b61702f0e96682e","version":"17.5"},{"db_id":"707313a20483b8bc0146a58eceddd16a","evidence":{"patch_ids":["de4829b5fcffd69ee19e71256ee340b9","ec9c3e41474954f7fb3b16769b3eaf5f"],"same_day":true,"statement_hash":"93737b3baf31ce844a14e13d2cb447939c4de0b0f6567d19e55d971b065c60b0"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"修复存在大量搜索键时 GIN 索引搜索启动的性能问题","url":"/docs/compare/?release=16.9#16.9-76f9b8a1ec89763d","version":"16.9"},{"db_id":"65badec0734fc6d175300062388f4788","evidence":{"patch_ids":["de4829b5fcffd69ee19e71256ee340b9","ec9c3e41474954f7fb3b16769b3eaf5f"],"same_day":true,"statement_hash":"93737b3baf31ce844a14e13d2cb447939c4de0b0f6567d19e55d971b065c60b0"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"修复存在大量搜索键时 GIN 索引搜索启动的性能问题","url":"/docs/compare/?release=15.13#15.13-2d5e284461370519","version":"15.13"},{"db_id":"1ab0dec254a916d8527a62996788c2ae","evidence":{"patch_ids":["de4829b5fcffd69ee19e71256ee340b9","ec9c3e41474954f7fb3b16769b3eaf5f"],"same_day":true,"statement_hash":"93737b3baf31ce844a14e13d2cb447939c4de0b0f6567d19e55d971b065c60b0"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"修复存在大量搜索键时 GIN 索引搜索启动的性能问题","url":"/docs/compare/?release=14.18#14.18-84519914d6f02e17","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["de4829b5fcffd69ee19e71256ee340b9","ec9c3e41474954f7fb3b16769b3eaf5f"],"same_day":true,"statement_hash":"93737b3baf31ce844a14e13d2cb447939c4de0b0f6567d19e55d971b065c60b0"},"rule":2,"target":"1ab0dec254a916d8527a62996788c2ae","type":"equivalent"},{"evidence":{"patch_ids":["de4829b5fcffd69ee19e71256ee340b9","ec9c3e41474954f7fb3b16769b3eaf5f"],"same_day":true,"statement_hash":"93737b3baf31ce844a14e13d2cb447939c4de0b0f6567d19e55d971b065c60b0"},"rule":2,"target":"65badec0734fc6d175300062388f4788","type":"equivalent"},{"evidence":{"patch_ids":["de4829b5fcffd69ee19e71256ee340b9","ec9c3e41474954f7fb3b16769b3eaf5f"],"same_day":true,"statement_hash":"93737b3baf31ce844a14e13d2cb447939c4de0b0f6567d19e55d971b065c60b0"},"rule":2,"target":"707313a20483b8bc0146a58eceddd16a","type":"equivalent"},{"evidence":{"patch_ids":["de4829b5fcffd69ee19e71256ee340b9","ec9c3e41474954f7fb3b16769b3eaf5f"],"same_day":true,"statement_hash":"93737b3baf31ce844a14e13d2cb447939c4de0b0f6567d19e55d971b065c60b0"},"rule":2,"target":"c2e95259bc7f81ee87e2761072380865","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["308d0d443","c7597a1d3"],"source_entry_id":"13.21/changes/011","source_hash":"461008b7c7bbb4b4463a434445f6f7fac0e4de60342037437639fdbdcda7f7cf","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"93737b3baf31ce844a14e13d2cb447939c4de0b0f6567d19e55d971b065c60b0","text":"修复存在大量搜索键时 GIN 索引搜索启动的性能问题（Tom Lane，Vinod Sridharan）§ § 具有大量键的可索引子句（例如，jsonbcol ?| array[...] 包含数万个数组元素）启动时需要 O(N2) 的时间，并且在此期间也无法被取消。","title":"修复存在大量搜索键时 GIN 索引搜索启动的性能问题","variants":[],"version":"13.21"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["17ce344f8","5144e1f8f","5d8c58800","ade976f8b","e0d8f49a3","f5b4a0b49"],"commit_groups":[["17ce344f8","5144e1f8f","5d8c58800","ade976f8b","e0d8f49a3","f5b4a0b49"]],"commits":["f5b4a0b49"],"cves":[],"db_id":"5013f22cc83ed83185fae40ec6f85d0c","html":"\u003cp\u003e检测 BRIN 索引操作符类中缺失的支持函数，并报告错误而不是崩溃（Álvaro Herrera）\u003ca href=\"https://postgr.es/c/f5b4a0b49\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"13.21-96cb58bb59f0ca93","identity_text":"Detect missing support procedures in a BRIN index operator class, and report an error instead of crashing (Álvaro Herrera)","part":"changes","patch_ids":["a6ad3f27f4898d4cf7e1f8d5714f4623"],"related_changes":[{"db_id":"5267301b9758c9e418c0bd305338d9d1","evidence":{"patch_ids":["a6ad3f27f4898d4cf7e1f8d5714f4623"],"same_day":true,"statement_hash":"434633f2d6ebbae84da60c5fa9e653325724888f4ced50a9c929141223e20276"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"检测 BRIN 索引操作符类中缺失的支持函数，并报告错误而不是崩溃","url":"/docs/compare/?release=17.5#17.5-71d6a890dc54737c","version":"17.5"},{"db_id":"81a8c631d535b28a942e5afb558c8727","evidence":{"patch_ids":["a6ad3f27f4898d4cf7e1f8d5714f4623"],"same_day":true,"statement_hash":"434633f2d6ebbae84da60c5fa9e653325724888f4ced50a9c929141223e20276"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"检测 BRIN 索引操作符类中缺失的支持函数，并报告错误而不是崩溃","url":"/docs/compare/?release=16.9#16.9-d751d04da9ab2a78","version":"16.9"},{"db_id":"52095fe055fa798df8e06d9733eeeee4","evidence":{"patch_ids":["a6ad3f27f4898d4cf7e1f8d5714f4623"],"same_day":true,"statement_hash":"434633f2d6ebbae84da60c5fa9e653325724888f4ced50a9c929141223e20276"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"检测 BRIN 索引操作符类中缺失的支持函数，并报告错误而不是崩溃","url":"/docs/compare/?release=15.13#15.13-b46b133391a86774","version":"15.13"},{"db_id":"07795445e3fa35543669ce4ac06e9c03","evidence":{"patch_ids":["a6ad3f27f4898d4cf7e1f8d5714f4623"],"same_day":true,"statement_hash":"434633f2d6ebbae84da60c5fa9e653325724888f4ced50a9c929141223e20276"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"检测 BRIN 索引操作符类中缺失的支持函数，并报告错误而不是崩溃","url":"/docs/compare/?release=14.18#14.18-c82d8eee5284ac1f","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["a6ad3f27f4898d4cf7e1f8d5714f4623"],"same_day":true,"statement_hash":"434633f2d6ebbae84da60c5fa9e653325724888f4ced50a9c929141223e20276"},"rule":2,"target":"07795445e3fa35543669ce4ac06e9c03","type":"equivalent"},{"evidence":{"patch_ids":["a6ad3f27f4898d4cf7e1f8d5714f4623"],"same_day":true,"statement_hash":"434633f2d6ebbae84da60c5fa9e653325724888f4ced50a9c929141223e20276"},"rule":2,"target":"52095fe055fa798df8e06d9733eeeee4","type":"equivalent"},{"evidence":{"patch_ids":["a6ad3f27f4898d4cf7e1f8d5714f4623"],"same_day":true,"statement_hash":"434633f2d6ebbae84da60c5fa9e653325724888f4ced50a9c929141223e20276"},"rule":2,"target":"5267301b9758c9e418c0bd305338d9d1","type":"equivalent"},{"evidence":{"patch_ids":["a6ad3f27f4898d4cf7e1f8d5714f4623"],"same_day":true,"statement_hash":"434633f2d6ebbae84da60c5fa9e653325724888f4ced50a9c929141223e20276"},"rule":2,"target":"81a8c631d535b28a942e5afb558c8727","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["f5b4a0b49"],"source_entry_id":"13.21/changes/012","source_hash":"6433a917c327fe5d3bc60d1d9bd07bf7fc7c3dffd44f8a3d616515326f318367","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"434633f2d6ebbae84da60c5fa9e653325724888f4ced50a9c929141223e20276","text":"检测 BRIN 索引操作符类中缺失的支持函数，并报告错误而不是崩溃（Álvaro Herrera）§","title":"检测 BRIN 索引操作符类中缺失的支持函数，并报告错误而不是崩溃","variants":[],"version":"13.21"},{"also_in":[],"category":"bugfix","category_label":"Bug fixes","commit_aliases":["2e5779083","3339847cc","873aff945","c922ae2c4","e2f42f812","ec59500a1"],"commit_groups":[["2e5779083","3339847cc","873aff945","c922ae2c4","e2f42f812","ec59500a1"]],"commits":["e2f42f812"],"cves":[],"db_id":"f619fee730a419517f64c1c847ade820","html":"\u003cp\u003e修复启动后立即处理 \u003ccode\u003esynchronous_standby_names\u003c/code\u003e 时的竞态条件（Melnikov Maksim，Michael Paquier）\u003ca href=\"https://postgr.es/c/e2f42f812\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e在系统启动后的短暂时间内，即使 \u003ccode\u003esynchronous_standby_names\u003c/code\u003e 已启用，后端可能也不会等待同步提交。\u003c/p\u003e","id":"13.21-3cf6ae8c0b81ee2a","identity_text":"Fix race condition in handling of synchronous_standby_names immediately after startup (Melnikov Maksim, Michael Paquier) For a short period after system startup, backends might fail to wait for synchronous commit even though synchronous_standby_names is enabled.","part":"changes","patch_ids":["b2c5c57c59d2226fd83183d134c26bfb"],"related_changes":[{"db_id":"9daf50395d2f4aead8175d388ace78ce","evidence":{"patch_ids":["b2c5c57c59d2226fd83183d134c26bfb"],"same_day":true,"statement_hash":"1bff9c7be1dcaac9e45a1e59931ceb888f07976bdf3e98fa0402ce01d5069e14"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"修复启动后立即处理 synchronous_standby_names 时的竞态条件","url":"/docs/compare/?release=17.5#17.5-f91016ff67d3fd61","version":"17.5"},{"db_id":"dfb958de881085e4bc9b09b3e0e8e2ad","evidence":{"patch_ids":["b2c5c57c59d2226fd83183d134c26bfb"],"same_day":true,"statement_hash":"1bff9c7be1dcaac9e45a1e59931ceb888f07976bdf3e98fa0402ce01d5069e14"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"修复启动后立即处理 synchronous_standby_names 时的竞态条件","url":"/docs/compare/?release=16.9#16.9-e1d42624d237cb4c","version":"16.9"},{"db_id":"025a2fc043dac6b32bb98f471a1aabd7","evidence":{"patch_ids":["b2c5c57c59d2226fd83183d134c26bfb"],"same_day":true,"statement_hash":"1bff9c7be1dcaac9e45a1e59931ceb888f07976bdf3e98fa0402ce01d5069e14"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"修复启动后立即处理 synchronous_standby_names 时的竞态条件","url":"/docs/compare/?release=15.13#15.13-bcea9256969a7e79","version":"15.13"},{"db_id":"9b50aea034b0d7075666b593cc8d7a51","evidence":{"patch_ids":["b2c5c57c59d2226fd83183d134c26bfb"],"same_day":true,"statement_hash":"1bff9c7be1dcaac9e45a1e59931ceb888f07976bdf3e98fa0402ce01d5069e14"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"修复启动后立即处理 synchronous_standby_names 时的竞态条件","url":"/docs/compare/?release=14.18#14.18-5c3390e2c8ae7fd4","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["b2c5c57c59d2226fd83183d134c26bfb"],"same_day":true,"statement_hash":"1bff9c7be1dcaac9e45a1e59931ceb888f07976bdf3e98fa0402ce01d5069e14"},"rule":2,"target":"025a2fc043dac6b32bb98f471a1aabd7","type":"equivalent"},{"evidence":{"patch_ids":["b2c5c57c59d2226fd83183d134c26bfb"],"same_day":true,"statement_hash":"1bff9c7be1dcaac9e45a1e59931ceb888f07976bdf3e98fa0402ce01d5069e14"},"rule":2,"target":"9b50aea034b0d7075666b593cc8d7a51","type":"equivalent"},{"evidence":{"patch_ids":["b2c5c57c59d2226fd83183d134c26bfb"],"same_day":true,"statement_hash":"1bff9c7be1dcaac9e45a1e59931ceb888f07976bdf3e98fa0402ce01d5069e14"},"rule":2,"target":"9daf50395d2f4aead8175d388ace78ce","type":"equivalent"},{"evidence":{"patch_ids":["b2c5c57c59d2226fd83183d134c26bfb"],"same_day":true,"statement_hash":"1bff9c7be1dcaac9e45a1e59931ceb888f07976bdf3e98fa0402ce01d5069e14"},"rule":2,"target":"dfb958de881085e4bc9b09b3e0e8e2ad","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["e2f42f812"],"source_entry_id":"13.21/changes/013","source_hash":"314079dea86b53c7b0445e8f4cca761ba53e7b883765497a3c62746906cfe290","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"1bff9c7be1dcaac9e45a1e59931ceb888f07976bdf3e98fa0402ce01d5069e14","text":"修复启动后立即处理 synchronous_standby_names 时的竞态条件（Melnikov Maksim，Michael Paquier）§ 在系统启动后的短暂时间内，即使 synchronous_standby_names 已启用，后端可能也不会等待同步提交。","title":"修复启动后立即处理 synchronous_standby_names 时的竞态条件","variants":[],"version":"13.21"},{"also_in":[],"category":"bugfix","category_label":"Bug fixes","commit_aliases":["00d61a08c","5c64ece8a","76fbb38ef","c7303f01c","d69c78108","ebe919e95"],"commit_groups":[["00d61a08c","5c64ece8a","76fbb38ef","c7303f01c","d69c78108","ebe919e95"]],"commits":["ebe919e95"],"cves":[],"db_id":"ccd517602e74f9b689358e51afeece0f","html":"\u003cp\u003e修复 \u003ccode\u003epg_strtof()\u003c/code\u003e 在空 endptr 时崩溃的问题（Alexander Lakhin，Tom Lane）\u003ca href=\"https://postgr.es/c/ebe919e95\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"13.21-7c56dbb1dfbb40f8","identity_text":"Fix pg_strtof() to not crash with null endptr (Alexander Lakhin, Tom Lane)","part":"changes","patch_ids":["cf60307fd4303d87ba2e2b826fe85843"],"related_changes":[{"db_id":"c50ce57a6db50401acd8695788584541","evidence":{"patch_ids":["cf60307fd4303d87ba2e2b826fe85843"],"same_day":true,"statement_hash":"6f00ddb45ac2f0ee4d0f0c3be7297735b4cbfce76dda50a1e9284695b618f980"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"修复 pg_strtof() 在空 endptr 时崩溃的问题","url":"/docs/compare/?release=17.5#17.5-8e29d20712a0fb85","version":"17.5"},{"db_id":"7f2b718202a5a9c141d5f9543c3d8422","evidence":{"patch_ids":["cf60307fd4303d87ba2e2b826fe85843"],"same_day":true,"statement_hash":"6f00ddb45ac2f0ee4d0f0c3be7297735b4cbfce76dda50a1e9284695b618f980"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"修复 pg_strtof() 在空 endptr 时崩溃的问题","url":"/docs/compare/?release=16.9#16.9-9cb2e21ff3e54366","version":"16.9"},{"db_id":"5a9fac352de1c6dc8c61e9196414a07f","evidence":{"patch_ids":["cf60307fd4303d87ba2e2b826fe85843"],"same_day":true,"statement_hash":"6f00ddb45ac2f0ee4d0f0c3be7297735b4cbfce76dda50a1e9284695b618f980"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"修复 pg_strtof() 在空 endptr 时崩溃的问题","url":"/docs/compare/?release=15.13#15.13-3832bc9bcdef8ae6","version":"15.13"},{"db_id":"291c1b10af654d11c4f58eca3ba7f03a","evidence":{"patch_ids":["cf60307fd4303d87ba2e2b826fe85843"],"same_day":true,"statement_hash":"6f00ddb45ac2f0ee4d0f0c3be7297735b4cbfce76dda50a1e9284695b618f980"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"修复 pg_strtof() 在空 endptr 时崩溃的问题","url":"/docs/compare/?release=14.18#14.18-faecb4df8b710ad1","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["cf60307fd4303d87ba2e2b826fe85843"],"same_day":true,"statement_hash":"6f00ddb45ac2f0ee4d0f0c3be7297735b4cbfce76dda50a1e9284695b618f980"},"rule":2,"target":"291c1b10af654d11c4f58eca3ba7f03a","type":"equivalent"},{"evidence":{"patch_ids":["cf60307fd4303d87ba2e2b826fe85843"],"same_day":true,"statement_hash":"6f00ddb45ac2f0ee4d0f0c3be7297735b4cbfce76dda50a1e9284695b618f980"},"rule":2,"target":"5a9fac352de1c6dc8c61e9196414a07f","type":"equivalent"},{"evidence":{"patch_ids":["cf60307fd4303d87ba2e2b826fe85843"],"same_day":true,"statement_hash":"6f00ddb45ac2f0ee4d0f0c3be7297735b4cbfce76dda50a1e9284695b618f980"},"rule":2,"target":"7f2b718202a5a9c141d5f9543c3d8422","type":"equivalent"},{"evidence":{"patch_ids":["cf60307fd4303d87ba2e2b826fe85843"],"same_day":true,"statement_hash":"6f00ddb45ac2f0ee4d0f0c3be7297735b4cbfce76dda50a1e9284695b618f980"},"rule":2,"target":"c50ce57a6db50401acd8695788584541","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["ebe919e95"],"source_entry_id":"13.21/changes/014","source_hash":"b8e084ce7e0ae8c1b77ebc4bb8facc5afc67395af820dfbaa7b05384e0b1c544","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"6f00ddb45ac2f0ee4d0f0c3be7297735b4cbfce76dda50a1e9284695b618f980","text":"修复 pg_strtof() 在空 endptr 时崩溃的问题（Alexander Lakhin，Tom Lane）§","title":"修复 pg_strtof() 在空 endptr 时崩溃的问题","variants":[],"version":"13.21"},{"also_in":[],"category":"bugfix","category_label":"Bug fixes","commit_aliases":["197427fb3","7edd2cbc5","8388cae55","9c46d902b","b464e51ab","c0c364fa1"],"commit_groups":[["197427fb3","7edd2cbc5","8388cae55","9c46d902b","b464e51ab","c0c364fa1"]],"commits":["197427fb3"],"cves":[],"db_id":"43dbc69a435522e8a12bbf37193bcbca","html":"\u003cp\u003e避免在 Snowball 词干提取器遇到内存不足条件时崩溃（Maksim Korotkov）\u003ca href=\"https://postgr.es/c/197427fb3\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"13.21-7de382d5402e6e82","identity_text":"Avoid crash when a Snowball stemmer encounters an out-of-memory condition (Maksim Korotkov)","part":"changes","patch_ids":["d20fbffc83ee90d1348f1d03836b8f18"],"related_changes":[{"db_id":"d02c90e2590d4a47f73a5782496b4966","evidence":{"patch_ids":["d20fbffc83ee90d1348f1d03836b8f18"],"same_day":false},"kind":"related","label":"18.0","source_url":"/docs/release/18.0/#RELEASE-18-DATATYPES","title":"添加爱沙尼亚语的全文检索词干提取","url":"/docs/compare/?release=18.0#18.0-ddc75ea0db8ffc49","version":"18.0"},{"db_id":"fe6fa87c7f7a2f01e5226fc8b75d4395","evidence":{"patch_ids":["d20fbffc83ee90d1348f1d03836b8f18"],"same_day":true,"statement_hash":"6c8d8c6f1cd71c3e595998d2cabe403f95a5078a14911e8bf0245a28e047a7c5"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"避免在 Snowball 词干提取器遇到内存不足条件时崩溃","url":"/docs/compare/?release=17.5#17.5-88fad50b7b3b2e15","version":"17.5"},{"db_id":"c2850458f2850974df366bef8a85488e","evidence":{"patch_ids":["d20fbffc83ee90d1348f1d03836b8f18"],"same_day":true,"statement_hash":"6c8d8c6f1cd71c3e595998d2cabe403f95a5078a14911e8bf0245a28e047a7c5"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"避免在 Snowball 词干提取器遇到内存不足条件时崩溃","url":"/docs/compare/?release=16.9#16.9-71f38ed0f1b64f88","version":"16.9"},{"db_id":"00feddbb8384a7a8cefe4217cd497215","evidence":{"patch_ids":["d20fbffc83ee90d1348f1d03836b8f18"],"same_day":true,"statement_hash":"6c8d8c6f1cd71c3e595998d2cabe403f95a5078a14911e8bf0245a28e047a7c5"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"避免在 Snowball 词干提取器遇到内存不足条件时崩溃","url":"/docs/compare/?release=15.13#15.13-6fa1c30b53ef4a7a","version":"15.13"},{"db_id":"d6bf0f560b8ac8cad3c1d6a070b45594","evidence":{"patch_ids":["d20fbffc83ee90d1348f1d03836b8f18"],"same_day":true,"statement_hash":"6c8d8c6f1cd71c3e595998d2cabe403f95a5078a14911e8bf0245a28e047a7c5"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"避免在 Snowball 词干提取器遇到内存不足条件时崩溃","url":"/docs/compare/?release=14.18#14.18-813abffbc8584526","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["d20fbffc83ee90d1348f1d03836b8f18"],"same_day":true,"statement_hash":"6c8d8c6f1cd71c3e595998d2cabe403f95a5078a14911e8bf0245a28e047a7c5"},"rule":2,"target":"00feddbb8384a7a8cefe4217cd497215","type":"equivalent"},{"evidence":{"patch_ids":["d20fbffc83ee90d1348f1d03836b8f18"],"same_day":true,"statement_hash":"6c8d8c6f1cd71c3e595998d2cabe403f95a5078a14911e8bf0245a28e047a7c5"},"rule":2,"target":"c2850458f2850974df366bef8a85488e","type":"equivalent"},{"evidence":{"patch_ids":["d20fbffc83ee90d1348f1d03836b8f18"],"same_day":false},"rule":2,"target":"d02c90e2590d4a47f73a5782496b4966","type":"related"},{"evidence":{"patch_ids":["d20fbffc83ee90d1348f1d03836b8f18"],"same_day":true,"statement_hash":"6c8d8c6f1cd71c3e595998d2cabe403f95a5078a14911e8bf0245a28e047a7c5"},"rule":2,"target":"d6bf0f560b8ac8cad3c1d6a070b45594","type":"equivalent"},{"evidence":{"patch_ids":["d20fbffc83ee90d1348f1d03836b8f18"],"same_day":true,"statement_hash":"6c8d8c6f1cd71c3e595998d2cabe403f95a5078a14911e8bf0245a28e047a7c5"},"rule":2,"target":"fe6fa87c7f7a2f01e5226fc8b75d4395","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["197427fb3"],"source_entry_id":"13.21/changes/015","source_hash":"799bdfd3b2518d6b68446814a6d7abc606b7591483476d4330a6267aff6abe09","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"6c8d8c6f1cd71c3e595998d2cabe403f95a5078a14911e8bf0245a28e047a7c5","text":"避免在 Snowball 词干提取器遇到内存不足条件时崩溃（Maksim Korotkov）§","title":"避免在 Snowball 词干提取器遇到内存不足条件时崩溃","variants":[],"version":"13.21"},{"also_in":[],"category":"bugfix","category_label":"Bug fixes","commit_aliases":["014a50800","20e5ef3ca","3635a0a35","47d2d2982","675b771ca","69a498eb6","6b168c129","8967dddf0","a5b0c06da","b494640e8","cbed472a9","d0b6acaf0","df8ec9634","e77d9cd4f"],"commit_groups":[["014a50800","a5b0c06da"],["20e5ef3ca","8967dddf0"],["3635a0a35","69a498eb6"],["47d2d2982","e77d9cd4f"],["675b771ca","cbed472a9"],["6b168c129","df8ec9634"],["b494640e8","d0b6acaf0"]],"commits":["20e5ef3ca","69a498eb6","a5b0c06da","cbed472a9","d0b6acaf0","df8ec9634","e77d9cd4f"],"cves":[],"db_id":"b842d35812fd4dccc20e10f02d02054b","html":"\u003cp\u003e在归档恢复期间跳过 WAL 回收和预分配，以避免损坏从归档恢复的 WAL 文件（Noah Misch，Arun Thirupathi）\u003ca href=\"https://postgr.es/c/69a498eb6\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/a5b0c06da\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/cbed472a9\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/d0b6acaf0\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/20e5ef3ca\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/df8ec9634\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/e77d9cd4f\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e此变更回移了 v15 时代的修复，当时被认为大致是修饰性的，但事实证明能防止后续修复引起的数据损坏。\u003c/p\u003e","id":"13.21-9b87d7de8c25c3f0","identity_text":"Skip WAL recycling and preallocation during archive recovery, to avoid corruption of WAL files that were restored from the archive (Noah Misch, Arun Thirupathi) This change back-patches v15-era fixes that were considered largely cosmetic at the time, but turn out to prevent data corruption in the wake of subsequent fixes.","part":"changes","patch_ids":["1bd30e735049752d222fed282133803b","25f05f737eb4cd25dd48075af25822bf","365ae5d7e204f6fbf63eb8c1a697bf19","3852e89dc35d895ed63430872e57871a","8b4cd2f73a31dedce996842d8b5326fa","e0a697951b2b92108b28bf1a3da663b3","e86ac1d3bb0f3ec5a6522d0d1efdb714"],"related_changes":[{"db_id":"726b7a7b03842bf8479c5717753b7eab","evidence":{"patch_ids":["1bd30e735049752d222fed282133803b","25f05f737eb4cd25dd48075af25822bf","365ae5d7e204f6fbf63eb8c1a697bf19","3852e89dc35d895ed63430872e57871a","8b4cd2f73a31dedce996842d8b5326fa","e0a697951b2b92108b28bf1a3da663b3","e86ac1d3bb0f3ec5a6522d0d1efdb714"],"same_day":true,"statement_hash":"8d1c9d897734cf8ca6c18af8760a9dce3701be4fa1830f5f413fe7055d4ea717"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"在归档恢复期间跳过 WAL 回收和预分配，以避免损坏从归档恢复的 WAL 文件","url":"/docs/compare/?release=14.18#14.18-bd1a7105f7b974d5","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["1bd30e735049752d222fed282133803b","25f05f737eb4cd25dd48075af25822bf","365ae5d7e204f6fbf63eb8c1a697bf19","3852e89dc35d895ed63430872e57871a","8b4cd2f73a31dedce996842d8b5326fa","e0a697951b2b92108b28bf1a3da663b3","e86ac1d3bb0f3ec5a6522d0d1efdb714"],"same_day":true,"statement_hash":"8d1c9d897734cf8ca6c18af8760a9dce3701be4fa1830f5f413fe7055d4ea717"},"rule":2,"target":"726b7a7b03842bf8479c5717753b7eab","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["20e5ef3ca","69a498eb6","a5b0c06da","cbed472a9","d0b6acaf0","df8ec9634","e77d9cd4f"],"source_entry_id":"13.21/changes/016","source_hash":"65ddc69a396e854957c9ad36545f7a17375336ed4e1eb8993b8517b6b7a40ff2","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"8d1c9d897734cf8ca6c18af8760a9dce3701be4fa1830f5f413fe7055d4ea717","text":"在归档恢复期间跳过 WAL 回收和预分配，以避免损坏从归档恢复的 WAL 文件（Noah Misch，Arun Thirupathi）§ § § § § § § 此变更回移了 v15 时代的修复，当时被认为大致是修饰性的，但事实证明能防止后续修复引起的数据损坏。","title":"在归档恢复期间跳过 WAL 回收和预分配，以避免损坏从归档恢复的 WAL 文件","variants":[],"version":"13.21"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["1f63b3626","21a7caeeb","36148b22e","aaf9e95e8","d65485b02","f6429bd7d"],"commit_groups":[["1f63b3626","21a7caeeb","36148b22e","aaf9e95e8","d65485b02","f6429bd7d"]],"commits":["d65485b02"],"cves":[],"db_id":"57b3f47815396fdd9a70a193be305bf1","html":"\u003cp\u003e防止在逻辑解码的\u003cspan\u003e“\u003cspan\u003e快进\u003c/span\u003e”\u003c/span\u003e模式中过度推进 catalog xmin（Zhijie Hou）\u003ca href=\"https://postgr.es/c/d65485b02\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e这个错误可能导致已删除的目录条目被清理掉，即使 WAL 读取进程仍可能需要它们。\u003c/p\u003e","id":"13.21-0d96e68077e9aca8","identity_text":"Prevent over-advancement of catalog xmin in fast forward mode of logical decoding (Zhijie Hou) This mistake could allow deleted catalog entries to be vacuumed away even though they were still potentially needed by the WAL-reading process.","part":"changes","patch_ids":["c6475433b3466d0d333287697a22d76c"],"related_changes":[{"db_id":"db9ffe506fd9139225111a635c8cd253","evidence":{"patch_ids":["c6475433b3466d0d333287697a22d76c"],"same_day":true,"statement_hash":"31124da856306a5fd3e362458ee2fb654f10aae3d57980427c12efefa655eb2a"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"防止在逻辑解码的“快进”模式中过度推进 catalog xmin","url":"/docs/compare/?release=17.5#17.5-2bb0e54648533251","version":"17.5"},{"db_id":"ddf70cdfdcf26f0a407827ed50eeab10","evidence":{"patch_ids":["c6475433b3466d0d333287697a22d76c"],"same_day":true,"statement_hash":"31124da856306a5fd3e362458ee2fb654f10aae3d57980427c12efefa655eb2a"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"防止在逻辑解码的“快进”模式中过度推进 catalog xmin","url":"/docs/compare/?release=16.9#16.9-c9dae01c18776f9c","version":"16.9"},{"db_id":"cfae289c787a92c54518341586bfbe9a","evidence":{"patch_ids":["c6475433b3466d0d333287697a22d76c"],"same_day":true,"statement_hash":"31124da856306a5fd3e362458ee2fb654f10aae3d57980427c12efefa655eb2a"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"防止在逻辑解码的“快进”模式中过度推进 catalog xmin","url":"/docs/compare/?release=15.13#15.13-bb45c4bf697c7ebc","version":"15.13"},{"db_id":"3ab082e1dcff51c82a077f2f62e6407c","evidence":{"patch_ids":["c6475433b3466d0d333287697a22d76c"],"same_day":true,"statement_hash":"31124da856306a5fd3e362458ee2fb654f10aae3d57980427c12efefa655eb2a"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"防止在逻辑解码的“快进”模式中过度推进 catalog xmin","url":"/docs/compare/?release=14.18#14.18-bec28c31b4951bab","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["c6475433b3466d0d333287697a22d76c"],"same_day":true,"statement_hash":"31124da856306a5fd3e362458ee2fb654f10aae3d57980427c12efefa655eb2a"},"rule":2,"target":"3ab082e1dcff51c82a077f2f62e6407c","type":"equivalent"},{"evidence":{"patch_ids":["c6475433b3466d0d333287697a22d76c"],"same_day":true,"statement_hash":"31124da856306a5fd3e362458ee2fb654f10aae3d57980427c12efefa655eb2a"},"rule":2,"target":"cfae289c787a92c54518341586bfbe9a","type":"equivalent"},{"evidence":{"patch_ids":["c6475433b3466d0d333287697a22d76c"],"same_day":true,"statement_hash":"31124da856306a5fd3e362458ee2fb654f10aae3d57980427c12efefa655eb2a"},"rule":2,"target":"db9ffe506fd9139225111a635c8cd253","type":"equivalent"},{"evidence":{"patch_ids":["c6475433b3466d0d333287697a22d76c"],"same_day":true,"statement_hash":"31124da856306a5fd3e362458ee2fb654f10aae3d57980427c12efefa655eb2a"},"rule":2,"target":"ddf70cdfdcf26f0a407827ed50eeab10","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["d65485b02"],"source_entry_id":"13.21/changes/017","source_hash":"617efd71ff9e3ad97f636490c3c07c965f6aef308cd39035998bc67276c3f540","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"31124da856306a5fd3e362458ee2fb654f10aae3d57980427c12efefa655eb2a","text":"防止在逻辑解码的“快进”模式中过度推进 catalog xmin（Zhijie Hou）§ 这个错误可能导致已删除的目录条目被清理掉，即使 WAL 读取进程仍可能需要它们。","title":"防止在逻辑解码的“快进”模式中过度推进 catalog xmin","variants":[],"version":"13.21"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["0434033e8","247ee9415","4164d6976","4909b38af","50b8ad30f","90bc4523f","9987c9466","9a2f8b4f0","9f21be08e","bb1bc9fa9","cadaf0ac4","d96206f25"],"commit_groups":[["0434033e8","247ee9415","4909b38af","9a2f8b4f0","9f21be08e","cadaf0ac4"],["4164d6976","50b8ad30f","90bc4523f","9987c9466","bb1bc9fa9","d96206f25"]],"commits":["247ee9415","4164d6976"],"cves":[],"db_id":"ee4a2645d0b3d70cbf64253af5bf4bbd","html":"\u003cp\u003e避免在不需要强锁的 DDL 操作影响正在进行逻辑复制的表时丢失数据（Shlok Kyal，Hayato Kuroda）\u003ca href=\"https://postgr.es/c/247ee9415\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/4164d6976\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eDDL 命令导致的目录变更未被反映到 WAL 解码进程中，使其可能使用过期的目录数据解码后续变更，很可能导致数据损坏。\u003c/p\u003e","id":"13.21-c43037ec57336487","identity_text":"Avoid data loss when DDL operations that don't take a strong lock affect tables that are being logically replicated (Shlok Kyal, Hayato Kuroda) The catalog changes caused by the DDL command were not reflected into WAL-decoding processes, allowing them to decode subsequent changes using stale catalog data, probably resulting in data corruption.","part":"changes","patch_ids":["3b9707f5e94616c6b08bba7b727d1833","7aa92ec4c1375172371c770fad1e069d"],"related_changes":[{"db_id":"8e6377590f7704ee937288d5751d0fe8","evidence":{"patch_ids":["3b9707f5e94616c6b08bba7b727d1833","7aa92ec4c1375172371c770fad1e069d"],"same_day":true,"statement_hash":"5087b6eeaa58053beb4e5956f3a1760c3fdcd576933d1be27f37a897f9b40e9a"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"避免在不需要强锁的 DDL 操作影响正在进行逻辑复制的表时丢失数据","url":"/docs/compare/?release=17.5#17.5-e21de69a327984e5","version":"17.5"},{"db_id":"db54a729c489a33329efd16078c5f632","evidence":{"patch_ids":["3b9707f5e94616c6b08bba7b727d1833","7aa92ec4c1375172371c770fad1e069d"],"same_day":true,"statement_hash":"5087b6eeaa58053beb4e5956f3a1760c3fdcd576933d1be27f37a897f9b40e9a"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"避免在不需要强锁的 DDL 操作影响正在进行逻辑复制的表时丢失数据","url":"/docs/compare/?release=16.9#16.9-99af33434b873ed3","version":"16.9"},{"db_id":"19e936ef0715c52fd027234b084245a4","evidence":{"patch_ids":["3b9707f5e94616c6b08bba7b727d1833","7aa92ec4c1375172371c770fad1e069d"],"same_day":true,"statement_hash":"5087b6eeaa58053beb4e5956f3a1760c3fdcd576933d1be27f37a897f9b40e9a"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"避免在不需要强锁的 DDL 操作影响正在进行逻辑复制的表时丢失数据","url":"/docs/compare/?release=15.13#15.13-2f66029919c20aba","version":"15.13"},{"db_id":"f2d1d9e7b4a609d7869646462b740f14","evidence":{"patch_ids":["3b9707f5e94616c6b08bba7b727d1833","7aa92ec4c1375172371c770fad1e069d"],"same_day":true,"statement_hash":"5087b6eeaa58053beb4e5956f3a1760c3fdcd576933d1be27f37a897f9b40e9a"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"避免在不需要强锁的 DDL 操作影响正在进行逻辑复制的表时丢失数据","url":"/docs/compare/?release=14.18#14.18-f53a16ec53117501","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["3b9707f5e94616c6b08bba7b727d1833","7aa92ec4c1375172371c770fad1e069d"],"same_day":true,"statement_hash":"5087b6eeaa58053beb4e5956f3a1760c3fdcd576933d1be27f37a897f9b40e9a"},"rule":2,"target":"19e936ef0715c52fd027234b084245a4","type":"equivalent"},{"evidence":{"patch_ids":["3b9707f5e94616c6b08bba7b727d1833","7aa92ec4c1375172371c770fad1e069d"],"same_day":true,"statement_hash":"5087b6eeaa58053beb4e5956f3a1760c3fdcd576933d1be27f37a897f9b40e9a"},"rule":2,"target":"8e6377590f7704ee937288d5751d0fe8","type":"equivalent"},{"evidence":{"patch_ids":["3b9707f5e94616c6b08bba7b727d1833","7aa92ec4c1375172371c770fad1e069d"],"same_day":true,"statement_hash":"5087b6eeaa58053beb4e5956f3a1760c3fdcd576933d1be27f37a897f9b40e9a"},"rule":2,"target":"db54a729c489a33329efd16078c5f632","type":"equivalent"},{"evidence":{"patch_ids":["3b9707f5e94616c6b08bba7b727d1833","7aa92ec4c1375172371c770fad1e069d"],"same_day":true,"statement_hash":"5087b6eeaa58053beb4e5956f3a1760c3fdcd576933d1be27f37a897f9b40e9a"},"rule":2,"target":"f2d1d9e7b4a609d7869646462b740f14","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["247ee9415","4164d6976"],"source_entry_id":"13.21/changes/018","source_hash":"fdd3bbec473af3d53cc3aa1be72068fa1e7623e25c7dc4ee551759341e7b074f","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"5087b6eeaa58053beb4e5956f3a1760c3fdcd576933d1be27f37a897f9b40e9a","text":"避免在不需要强锁的 DDL 操作影响正在进行逻辑复制的表时丢失数据（Shlok Kyal，Hayato Kuroda）§ § DDL 命令导致的目录变更未被反映到 WAL 解码进程中，使其可能使用过期的目录数据解码后续变更，很可能导致数据损坏。","title":"避免在不需要强锁的 DDL 操作影响正在进行逻辑复制的表时丢失数据","variants":[],"version":"13.21"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["136e68b46","236750317","2ef048855","324e0b656","50c589992","6c1e79589","8171d2dae","9b3914f18","c1dd3a944","d765226cb","f1ef111a0","f7c566a1a"],"commit_groups":[["136e68b46","324e0b656","6c1e79589","d765226cb","f1ef111a0","f7c566a1a"],["236750317","2ef048855","50c589992","8171d2dae","9b3914f18","c1dd3a944"]],"commits":["6c1e79589","9b3914f18"],"cves":[],"db_id":"27c56fefd26a3de8d757bbd085e3ccf7","html":"\u003cp\u003e避免在逻辑复制索引查找中重复创建快照（Heikki Linnakangas）\u003ca href=\"https://postgr.es/c/9b3914f18\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/6c1e79589\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"13.21-b909fdf92799340c","identity_text":"Avoid duplicate snapshot creation in logical replication index lookups (Heikki Linnakangas)","part":"changes","patch_ids":["1adc95ac621663bc7fa51f18ad33a68d","809047aed79be0ed50900ccbf42f80fa"],"related_changes":[{"db_id":"68a6f444e2dd1111866e1692a09eaee9","evidence":{"patch_ids":["1adc95ac621663bc7fa51f18ad33a68d","809047aed79be0ed50900ccbf42f80fa"],"same_day":true,"statement_hash":"16fba735d9e2dacfd355019baedc5bac39309c551378ee63052a10c4debdade9"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"避免在逻辑复制索引查找中重复创建快照","url":"/docs/compare/?release=17.5#17.5-2069efadcbfce474","version":"17.5"},{"db_id":"c4856066739f35020574380d1ebe619e","evidence":{"patch_ids":["1adc95ac621663bc7fa51f18ad33a68d","809047aed79be0ed50900ccbf42f80fa"],"same_day":true,"statement_hash":"16fba735d9e2dacfd355019baedc5bac39309c551378ee63052a10c4debdade9"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"避免在逻辑复制索引查找中重复创建快照","url":"/docs/compare/?release=16.9#16.9-844f220134ec081b","version":"16.9"},{"db_id":"4cbd410dcacccd81b5e565436db7bc7a","evidence":{"patch_ids":["1adc95ac621663bc7fa51f18ad33a68d","809047aed79be0ed50900ccbf42f80fa"],"same_day":true,"statement_hash":"16fba735d9e2dacfd355019baedc5bac39309c551378ee63052a10c4debdade9"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"避免在逻辑复制索引查找中重复创建快照","url":"/docs/compare/?release=15.13#15.13-a7ab6f2ad8ceed1e","version":"15.13"},{"db_id":"62d7ad831c6b591f2d8c9f0a041d221b","evidence":{"patch_ids":["1adc95ac621663bc7fa51f18ad33a68d","809047aed79be0ed50900ccbf42f80fa"],"same_day":true,"statement_hash":"16fba735d9e2dacfd355019baedc5bac39309c551378ee63052a10c4debdade9"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"避免在逻辑复制索引查找中重复创建快照","url":"/docs/compare/?release=14.18#14.18-8a94534beb8d394b","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["1adc95ac621663bc7fa51f18ad33a68d","809047aed79be0ed50900ccbf42f80fa"],"same_day":true,"statement_hash":"16fba735d9e2dacfd355019baedc5bac39309c551378ee63052a10c4debdade9"},"rule":2,"target":"4cbd410dcacccd81b5e565436db7bc7a","type":"equivalent"},{"evidence":{"patch_ids":["1adc95ac621663bc7fa51f18ad33a68d","809047aed79be0ed50900ccbf42f80fa"],"same_day":true,"statement_hash":"16fba735d9e2dacfd355019baedc5bac39309c551378ee63052a10c4debdade9"},"rule":2,"target":"62d7ad831c6b591f2d8c9f0a041d221b","type":"equivalent"},{"evidence":{"patch_ids":["1adc95ac621663bc7fa51f18ad33a68d","809047aed79be0ed50900ccbf42f80fa"],"same_day":true,"statement_hash":"16fba735d9e2dacfd355019baedc5bac39309c551378ee63052a10c4debdade9"},"rule":2,"target":"68a6f444e2dd1111866e1692a09eaee9","type":"equivalent"},{"evidence":{"patch_ids":["1adc95ac621663bc7fa51f18ad33a68d","809047aed79be0ed50900ccbf42f80fa"],"same_day":true,"statement_hash":"16fba735d9e2dacfd355019baedc5bac39309c551378ee63052a10c4debdade9"},"rule":2,"target":"c4856066739f35020574380d1ebe619e","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["6c1e79589","9b3914f18"],"source_entry_id":"13.21/changes/019","source_hash":"793ae6c6b0d83952f05de996831166d53b614b0d190acf2338cec4b972959063","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"16fba735d9e2dacfd355019baedc5bac39309c551378ee63052a10c4debdade9","text":"避免在逻辑复制索引查找中重复创建快照（Heikki Linnakangas）§ §","title":"避免在逻辑复制索引查找中重复创建快照","variants":[],"version":"13.21"},{"also_in":[],"category":"bugfix","category_label":"Bug fixes","commit_aliases":["3c0fe75c4","419321398","6526d0794","7afca7ede","a749c6f18","b92482dc3"],"commit_groups":[["3c0fe75c4","419321398","6526d0794","7afca7ede","a749c6f18","b92482dc3"]],"commits":["b92482dc3"],"cves":[],"db_id":"e6d6bd528a6a18567eddf6d6d0bd348d","html":"\u003cp\u003e修复 \u003ccode\u003egistFindCorrectParent()\u003c/code\u003e 中过于严格的断言（Heikki Linnakangas）\u003ca href=\"https://postgr.es/c/b92482dc3\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"13.21-43c27eaaeb1d9bf4","identity_text":"Fix overly-strict assertion in gistFindCorrectParent() (Heikki Linnakangas)","part":"changes","patch_ids":["0fbdfd9512143481ddba29600dae91de"],"related_changes":[{"db_id":"ca5aa9bfc0cd6a3986c25a9bb834efea","evidence":{"patch_ids":["0fbdfd9512143481ddba29600dae91de"],"same_day":true,"statement_hash":"7991ac5c15dda3f769161967c88693ea957ab1e582f1ecb61df8823d0f1d4f43"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"修复 gistFindCorrectParent() 中过于严格的断言","url":"/docs/compare/?release=17.5#17.5-2088f11ca5c4831c","version":"17.5"},{"db_id":"8d4744d9a3fed01ed5b740a2da43b6eb","evidence":{"patch_ids":["0fbdfd9512143481ddba29600dae91de"],"same_day":true,"statement_hash":"7991ac5c15dda3f769161967c88693ea957ab1e582f1ecb61df8823d0f1d4f43"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"修复 gistFindCorrectParent() 中过于严格的断言","url":"/docs/compare/?release=16.9#16.9-4c94d4fcc8fe7123","version":"16.9"},{"db_id":"47c7b886e00ee5dd3ededee611b2d16a","evidence":{"patch_ids":["0fbdfd9512143481ddba29600dae91de"],"same_day":true,"statement_hash":"7991ac5c15dda3f769161967c88693ea957ab1e582f1ecb61df8823d0f1d4f43"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"修复 gistFindCorrectParent() 中过于严格的断言","url":"/docs/compare/?release=15.13#15.13-62cae577b4df954b","version":"15.13"},{"db_id":"27a1adb1cdf9f664d38d47c14da8e9a1","evidence":{"patch_ids":["0fbdfd9512143481ddba29600dae91de"],"same_day":true,"statement_hash":"7991ac5c15dda3f769161967c88693ea957ab1e582f1ecb61df8823d0f1d4f43"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"修复 gistFindCorrectParent() 中过于严格的断言","url":"/docs/compare/?release=14.18#14.18-6a368ff09e31fc48","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["0fbdfd9512143481ddba29600dae91de"],"same_day":true,"statement_hash":"7991ac5c15dda3f769161967c88693ea957ab1e582f1ecb61df8823d0f1d4f43"},"rule":2,"target":"27a1adb1cdf9f664d38d47c14da8e9a1","type":"equivalent"},{"evidence":{"patch_ids":["0fbdfd9512143481ddba29600dae91de"],"same_day":true,"statement_hash":"7991ac5c15dda3f769161967c88693ea957ab1e582f1ecb61df8823d0f1d4f43"},"rule":2,"target":"47c7b886e00ee5dd3ededee611b2d16a","type":"equivalent"},{"evidence":{"patch_ids":["0fbdfd9512143481ddba29600dae91de"],"same_day":true,"statement_hash":"7991ac5c15dda3f769161967c88693ea957ab1e582f1ecb61df8823d0f1d4f43"},"rule":2,"target":"8d4744d9a3fed01ed5b740a2da43b6eb","type":"equivalent"},{"evidence":{"patch_ids":["0fbdfd9512143481ddba29600dae91de"],"same_day":true,"statement_hash":"7991ac5c15dda3f769161967c88693ea957ab1e582f1ecb61df8823d0f1d4f43"},"rule":2,"target":"ca5aa9bfc0cd6a3986c25a9bb834efea","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["b92482dc3"],"source_entry_id":"13.21/changes/020","source_hash":"5c372546e2194e837fb746514b68f09f79e28e8aae950d33ce486526fa40c1b4","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"7991ac5c15dda3f769161967c88693ea957ab1e582f1ecb61df8823d0f1d4f43","text":"修复 gistFindCorrectParent() 中过于严格的断言（Heikki Linnakangas）§","title":"修复 gistFindCorrectParent() 中过于严格的断言","variants":[],"version":"13.21"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["0f60e1fba","1353b1161","5e56efa7c","7fe312f60","a28c1fb61","c196c610b"],"commit_groups":[["0f60e1fba","1353b1161","5e56efa7c","7fe312f60","a28c1fb61","c196c610b"]],"commits":["0f60e1fba"],"cves":[],"db_id":"7c6fc81e4da27ce44047105c6c5470d3","html":"\u003cp\u003e在 PL/pgSQL 中，避免当可滚动游标定义在简单 \u003ccode\u003eSELECT \u003cem\u003e\u003ccode\u003eexpression\u003c/code\u003e\u003c/em\u003e\u003c/code\u003e 查询上时出现 \u003cspan\u003e“\u003cspan\u003eunexpected plan node type\u003c/span\u003e”\u003c/span\u003e 错误（Andrei Lepikhov）\u003ca href=\"https://postgr.es/c/0f60e1fba\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"13.21-3bd8b23d952a1816","identity_text":"In PL/pgSQL, avoid unexpected plan node type error when a scrollable cursor is defined on a simple SELECT expression query (Andrei Lepikhov)","part":"changes","patch_ids":["f12a136931a2c9b85092405b258f239d"],"related_changes":[{"db_id":"5d327155f21daa11c824f675329dd129","evidence":{"patch_ids":["f12a136931a2c9b85092405b258f239d"],"same_day":true,"statement_hash":"b4aad974b17bda0a76dd37ef72496e590fcabf2c46a61ba4894df2a3e4e60bf8"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"在 PL/pgSQL 中，避免当可滚动游标定义在简单 SELECT expression 查询上时出现 “unexpected plan node type” 错误","url":"/docs/compare/?release=17.5#17.5-49aae01e3ea0240a","version":"17.5"},{"db_id":"3d77b38c14caf8186c9c4c8d7073f660","evidence":{"patch_ids":["f12a136931a2c9b85092405b258f239d"],"same_day":true,"statement_hash":"b4aad974b17bda0a76dd37ef72496e590fcabf2c46a61ba4894df2a3e4e60bf8"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"在 PL/pgSQL 中，避免当可滚动游标定义在简单 SELECT expression 查询上时出现 “unexpected plan node type” 错误","url":"/docs/compare/?release=16.9#16.9-5a72f158f19fb45f","version":"16.9"},{"db_id":"1cf4e3ccb27beb351563e92204699ddf","evidence":{"patch_ids":["f12a136931a2c9b85092405b258f239d"],"same_day":true,"statement_hash":"b4aad974b17bda0a76dd37ef72496e590fcabf2c46a61ba4894df2a3e4e60bf8"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"在 PL/pgSQL 中，避免当可滚动游标定义在简单 SELECT expression 查询上时出现 “unexpected plan node type” 错误","url":"/docs/compare/?release=15.13#15.13-4f40d70662d8882c","version":"15.13"},{"db_id":"3e2662777ac979f38f4588bb5b04a2d3","evidence":{"patch_ids":["f12a136931a2c9b85092405b258f239d"],"same_day":true,"statement_hash":"b4aad974b17bda0a76dd37ef72496e590fcabf2c46a61ba4894df2a3e4e60bf8"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"在 PL/pgSQL 中，避免当可滚动游标定义在简单 SELECT expression 查询上时出现 “unexpected plan node type” 错误","url":"/docs/compare/?release=14.18#14.18-d202fbcf25295587","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["f12a136931a2c9b85092405b258f239d"],"same_day":true,"statement_hash":"b4aad974b17bda0a76dd37ef72496e590fcabf2c46a61ba4894df2a3e4e60bf8"},"rule":2,"target":"1cf4e3ccb27beb351563e92204699ddf","type":"equivalent"},{"evidence":{"patch_ids":["f12a136931a2c9b85092405b258f239d"],"same_day":true,"statement_hash":"b4aad974b17bda0a76dd37ef72496e590fcabf2c46a61ba4894df2a3e4e60bf8"},"rule":2,"target":"3d77b38c14caf8186c9c4c8d7073f660","type":"equivalent"},{"evidence":{"patch_ids":["f12a136931a2c9b85092405b258f239d"],"same_day":true,"statement_hash":"b4aad974b17bda0a76dd37ef72496e590fcabf2c46a61ba4894df2a3e4e60bf8"},"rule":2,"target":"3e2662777ac979f38f4588bb5b04a2d3","type":"equivalent"},{"evidence":{"patch_ids":["f12a136931a2c9b85092405b258f239d"],"same_day":true,"statement_hash":"b4aad974b17bda0a76dd37ef72496e590fcabf2c46a61ba4894df2a3e4e60bf8"},"rule":2,"target":"5d327155f21daa11c824f675329dd129","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["0f60e1fba"],"source_entry_id":"13.21/changes/021","source_hash":"3ab1fb005c151ef6dae214caa6cb52b2b8e6ba17498400560a0be3edd424e39a","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"b4aad974b17bda0a76dd37ef72496e590fcabf2c46a61ba4894df2a3e4e60bf8","text":"在 PL/pgSQL 中，避免当可滚动游标定义在简单 SELECT expression 查询上时出现 “unexpected plan node type” 错误（Andrei Lepikhov）§","title":"在 PL/pgSQL 中，避免当可滚动游标定义在简单 SELECT expression 查询上时出现 “unexpected plan node type” 错误","variants":[],"version":"13.21"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["148cc0105","1fc340362","3424c1075","6a3e57865","7144cd538","a25f21d99"],"commit_groups":[["148cc0105","1fc340362","3424c1075","6a3e57865","7144cd538","a25f21d99"]],"commits":["6a3e57865"],"cves":[],"db_id":"42df3da7d8c6955067fbe63c28f79b7f","html":"\u003cp\u003e在 \u003cspan\u003epg_dump\u003c/span\u003e 的 \u003ccode\u003e--clean\u003c/code\u003e 模式中不再尝试删除单个索引分区（Jian He）\u003ca href=\"https://postgr.es/c/6a3e57865\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e服务器会拒绝这样的 \u003ccode\u003eDROP\u003c/code\u003e 命令。这实际上没有什么影响，因为这些分区在后续对其父表或分区索引执行 \u003ccode\u003eDROP\u003c/code\u003e 时会被自动删除。但是，尝试删除时报告的错误会在以 \u003ccode\u003e--single-transaction\u003c/code\u003e 模式恢复时造成问题。\u003c/p\u003e","id":"13.21-ae695bef185b433b","identity_text":"Don't try to drop individual index partitions in pg_dump's --clean mode (Jian He) The server rejects such DROP commands. That has no real consequences, since the partitions will go away anyway in the subsequent DROPs of either their parent tables or their partitioned index. However, the error reported for the attempted drop causes problems when restoring in --single-transaction mode.","part":"changes","patch_ids":["9cc39f67b2112ad724d3dd4a32e53e3b"],"related_changes":[{"db_id":"4b6e027be9c24d09a0bd8e953edf317c","evidence":{"patch_ids":["9cc39f67b2112ad724d3dd4a32e53e3b"],"same_day":true,"statement_hash":"e67fba1cf484eebaf3c4c42d5ece9796503851f5392fb5c05c0952acff3b2b13"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"在 pg_dump 的 --clean 模式中不再尝试删除单个索引分区","url":"/docs/compare/?release=17.5#17.5-130186541e057b56","version":"17.5"},{"db_id":"69851138f2b853be3168d802588a9520","evidence":{"patch_ids":["9cc39f67b2112ad724d3dd4a32e53e3b"],"same_day":true,"statement_hash":"e67fba1cf484eebaf3c4c42d5ece9796503851f5392fb5c05c0952acff3b2b13"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"在 pg_dump 的 --clean 模式中不再尝试删除单个索引分区","url":"/docs/compare/?release=16.9#16.9-5ae9f3957cb2bed6","version":"16.9"},{"db_id":"eb7b42e15648d7b8b3c440a7101915a2","evidence":{"patch_ids":["9cc39f67b2112ad724d3dd4a32e53e3b"],"same_day":true,"statement_hash":"e67fba1cf484eebaf3c4c42d5ece9796503851f5392fb5c05c0952acff3b2b13"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"在 pg_dump 的 --clean 模式中不再尝试删除单个索引分区","url":"/docs/compare/?release=15.13#15.13-48059b5256fc8763","version":"15.13"},{"db_id":"d6903e20c3eee4fa2356e0d2b2c154d8","evidence":{"patch_ids":["9cc39f67b2112ad724d3dd4a32e53e3b"],"same_day":true,"statement_hash":"e67fba1cf484eebaf3c4c42d5ece9796503851f5392fb5c05c0952acff3b2b13"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"在 pg_dump 的 --clean 模式中不再尝试删除单个索引分区","url":"/docs/compare/?release=14.18#14.18-a62c77db7183ddb7","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["9cc39f67b2112ad724d3dd4a32e53e3b"],"same_day":true,"statement_hash":"e67fba1cf484eebaf3c4c42d5ece9796503851f5392fb5c05c0952acff3b2b13"},"rule":2,"target":"4b6e027be9c24d09a0bd8e953edf317c","type":"equivalent"},{"evidence":{"patch_ids":["9cc39f67b2112ad724d3dd4a32e53e3b"],"same_day":true,"statement_hash":"e67fba1cf484eebaf3c4c42d5ece9796503851f5392fb5c05c0952acff3b2b13"},"rule":2,"target":"69851138f2b853be3168d802588a9520","type":"equivalent"},{"evidence":{"patch_ids":["9cc39f67b2112ad724d3dd4a32e53e3b"],"same_day":true,"statement_hash":"e67fba1cf484eebaf3c4c42d5ece9796503851f5392fb5c05c0952acff3b2b13"},"rule":2,"target":"d6903e20c3eee4fa2356e0d2b2c154d8","type":"equivalent"},{"evidence":{"patch_ids":["9cc39f67b2112ad724d3dd4a32e53e3b"],"same_day":true,"statement_hash":"e67fba1cf484eebaf3c4c42d5ece9796503851f5392fb5c05c0952acff3b2b13"},"rule":2,"target":"eb7b42e15648d7b8b3c440a7101915a2","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["6a3e57865"],"source_entry_id":"13.21/changes/022","source_hash":"414288d705b8955959cbeaa08569332351d7e71777b346cb5dbe92a8730d8328","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"e67fba1cf484eebaf3c4c42d5ece9796503851f5392fb5c05c0952acff3b2b13","text":"在 pg_dump 的 --clean 模式中不再尝试删除单个索引分区（Jian He）§ 服务器会拒绝这样的 DROP 命令。这实际上没有什么影响，因为这些分区在后续对其父表或分区索引执行 DROP 时会被自动删除。但是，尝试删除时报告的错误会在以 --single-transaction 模式恢复时造成问题。","title":"在 pg_dump 的 --clean 模式中不再尝试删除单个索引分区","variants":[],"version":"13.21"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["16eff4261","29d75b25b","5302ff95c","6df3be415","ce1475acd","d850a6600"],"commit_groups":[["16eff4261","29d75b25b","5302ff95c","6df3be415","ce1475acd","d850a6600"]],"commits":["5302ff95c"],"cves":[],"db_id":"037e06a9150261d4225482652afbae69","html":"\u003cp\u003e在 \u003cspan\u003epg_dumpall\u003c/span\u003e 中，避免在 \u003ccode\u003epg_auth_members\u003c/code\u003e 包含无效角色 OID 时生成无效的角色 \u003ccode\u003eGRANT\u003c/code\u003e 命令（Tom Lane）\u003ca href=\"https://postgr.es/c/5302ff95c\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e改为打印警告并跳过该条目。这能更好地处理在后端分支中因 \u003ccode\u003eGRANT\u003c/code\u003e 和 \u003ccode\u003eDROP ROLE\u003c/code\u003e 之间的竞态条件而导致的目录损坏。\u003c/p\u003e","id":"13.21-70bdf129a37d033e","identity_text":"In pg_dumpall, avoid emitting invalid role GRANT commands if pg_auth_members contains invalid role OIDs (Tom Lane) Instead, print a warning and skip the entry. This copes better with catalog corruption that has been seen to occur in back branches as a result of race conditions between GRANT and DROP ROLE.","part":"changes","patch_ids":["f2b1be5bd5a37e4c2f6310eac9a9677e"],"related_changes":[{"db_id":"14be69327836b06f72a5afffc236458d","evidence":{"patch_ids":["f2b1be5bd5a37e4c2f6310eac9a9677e"],"same_day":true,"statement_hash":"6729e0781366fce928be3cedd2434b59ba0db94ff9e8f2492dfbca532d833f8a"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"在 pg_dumpall 中，避免在 pg_auth_members 包含无效角色 OID 时生成无效的角色 GRANT 命令","url":"/docs/compare/?release=17.5#17.5-2696110d8fb93792","version":"17.5"},{"db_id":"4220609cab0faa9ff9b9847d6eaf69af","evidence":{"patch_ids":["f2b1be5bd5a37e4c2f6310eac9a9677e"],"same_day":true,"statement_hash":"6729e0781366fce928be3cedd2434b59ba0db94ff9e8f2492dfbca532d833f8a"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"在 pg_dumpall 中，避免在 pg_auth_members 包含无效角色 OID 时生成无效的角色 GRANT 命令","url":"/docs/compare/?release=16.9#16.9-9ea97d37c27d913b","version":"16.9"},{"db_id":"e29abb4009fe4358d8ffa797134f6858","evidence":{"patch_ids":["f2b1be5bd5a37e4c2f6310eac9a9677e"],"same_day":true,"statement_hash":"6729e0781366fce928be3cedd2434b59ba0db94ff9e8f2492dfbca532d833f8a"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"在 pg_dumpall 中，避免在 pg_auth_members 包含无效角色 OID 时生成无效的角色 GRANT 命令","url":"/docs/compare/?release=15.13#15.13-f1fceade151b6e7f","version":"15.13"},{"db_id":"592072835cdff737b256d67238063430","evidence":{"patch_ids":["f2b1be5bd5a37e4c2f6310eac9a9677e"],"same_day":true,"statement_hash":"6729e0781366fce928be3cedd2434b59ba0db94ff9e8f2492dfbca532d833f8a"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"在 pg_dumpall 中，避免在 pg_auth_members 包含无效角色 OID 时生成无效的角色 GRANT 命令","url":"/docs/compare/?release=14.18#14.18-3480ee8713990fb4","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["f2b1be5bd5a37e4c2f6310eac9a9677e"],"same_day":true,"statement_hash":"6729e0781366fce928be3cedd2434b59ba0db94ff9e8f2492dfbca532d833f8a"},"rule":2,"target":"14be69327836b06f72a5afffc236458d","type":"equivalent"},{"evidence":{"patch_ids":["f2b1be5bd5a37e4c2f6310eac9a9677e"],"same_day":true,"statement_hash":"6729e0781366fce928be3cedd2434b59ba0db94ff9e8f2492dfbca532d833f8a"},"rule":2,"target":"4220609cab0faa9ff9b9847d6eaf69af","type":"equivalent"},{"evidence":{"patch_ids":["f2b1be5bd5a37e4c2f6310eac9a9677e"],"same_day":true,"statement_hash":"6729e0781366fce928be3cedd2434b59ba0db94ff9e8f2492dfbca532d833f8a"},"rule":2,"target":"592072835cdff737b256d67238063430","type":"equivalent"},{"evidence":{"patch_ids":["f2b1be5bd5a37e4c2f6310eac9a9677e"],"same_day":true,"statement_hash":"6729e0781366fce928be3cedd2434b59ba0db94ff9e8f2492dfbca532d833f8a"},"rule":2,"target":"e29abb4009fe4358d8ffa797134f6858","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["5302ff95c"],"source_entry_id":"13.21/changes/023","source_hash":"37c2f1cd92f84b03d7d8f3f89b10a37896edf9be234ce4d9518d1e06a4392184","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"6729e0781366fce928be3cedd2434b59ba0db94ff9e8f2492dfbca532d833f8a","text":"在 pg_dumpall 中，避免在 pg_auth_members 包含无效角色 OID 时生成无效的角色 GRANT 命令（Tom Lane）§ 改为打印警告并跳过该条目。这能更好地处理在后端分支中因 GRANT 和 DROP ROLE 之间的竞态条件而导致的目录损坏。","title":"在 pg_dumpall 中，避免在 pg_auth_members 包含无效角色 OID 时生成无效的角色 GRANT 命令","variants":[],"version":"13.21"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["186c586c3","5a3d5c083","63f6ecb6b","82a8f0f46","9e129a224","a8a918937","aa435d7c4"],"commit_groups":[["186c586c3","63f6ecb6b","82a8f0f46","a8a918937"],["5a3d5c083","9e129a224","aa435d7c4"]],"commits":["186c586c3","5a3d5c083"],"cves":[],"db_id":"a5e5804883000d7caae4a81a4c09dbaa","html":"\u003cp\u003e允许 \u003ccode\u003econtrib/dblink\u003c/code\u003e 查询被查询取消中断（Noah Misch）\u003ca href=\"https://postgr.es/c/186c586c3\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/5a3d5c083\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e此变更回移了 v17 时代的修复。它防止了由于未能检测到死锁而导致 \u003ccode\u003eCREATE DATABASE\u003c/code\u003e 和 \u003ccode\u003eDROP DATABASE\u003c/code\u003e 可能挂起的问题。\u003c/p\u003e","id":"13.21-736328c87f8209db","identity_text":"Allow contrib/dblink queries to be interrupted by query cancel (Noah Misch) This change back-patches a v17-era fix. It prevents possible hangs in CREATE DATABASE and DROP DATABASE due to failure to detect deadlocks.","part":"changes","patch_ids":["8f1ad091ce9b23cfc6305a698cc71e6e","dc10c968932851c1acbe96c36de940e6"],"related_changes":[{"db_id":"45cb7740e3e69e082ddadfab7e5eff0f","evidence":{"patch_ids":["8f1ad091ce9b23cfc6305a698cc71e6e","dc10c968932851c1acbe96c36de940e6"],"same_day":true,"statement_hash":"573ad5b54dc619c764849e48330e325d45d7e75df13514333eed58b16ba893de"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"允许通过查询取消来中断 contrib/dblink 查询","url":"/docs/compare/?release=16.9#16.9-102f920c2fa17d5a","version":"16.9"},{"db_id":"1800a63062f35b7be464be11f98012ca","evidence":{"patch_ids":["8f1ad091ce9b23cfc6305a698cc71e6e","dc10c968932851c1acbe96c36de940e6"],"same_day":true,"statement_hash":"573ad5b54dc619c764849e48330e325d45d7e75df13514333eed58b16ba893de"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"允许通过查询取消来中断 contrib/dblink 查询","url":"/docs/compare/?release=15.13#15.13-d66f9c3e0287eec0","version":"15.13"},{"db_id":"d1403c93f35837d1084fb34435822aae","evidence":{"patch_ids":["8f1ad091ce9b23cfc6305a698cc71e6e","dc10c968932851c1acbe96c36de940e6"],"same_day":true,"statement_hash":"573ad5b54dc619c764849e48330e325d45d7e75df13514333eed58b16ba893de"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"允许通过查询取消来中断 contrib/dblink 查询","url":"/docs/compare/?release=14.18#14.18-d66f9c3e0287eec0","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["8f1ad091ce9b23cfc6305a698cc71e6e","dc10c968932851c1acbe96c36de940e6"],"same_day":true,"statement_hash":"573ad5b54dc619c764849e48330e325d45d7e75df13514333eed58b16ba893de"},"rule":2,"target":"1800a63062f35b7be464be11f98012ca","type":"equivalent"},{"evidence":{"patch_ids":["8f1ad091ce9b23cfc6305a698cc71e6e","dc10c968932851c1acbe96c36de940e6"],"same_day":true,"statement_hash":"573ad5b54dc619c764849e48330e325d45d7e75df13514333eed58b16ba893de"},"rule":2,"target":"45cb7740e3e69e082ddadfab7e5eff0f","type":"equivalent"},{"evidence":{"patch_ids":["8f1ad091ce9b23cfc6305a698cc71e6e","dc10c968932851c1acbe96c36de940e6"],"same_day":true,"statement_hash":"573ad5b54dc619c764849e48330e325d45d7e75df13514333eed58b16ba893de"},"rule":2,"target":"d1403c93f35837d1084fb34435822aae","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["186c586c3","5a3d5c083"],"source_entry_id":"13.21/changes/024","source_hash":"4e9b8f3c246af42253922b36d57247d6c115fe6773b0802e84a8882422e7a058","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"573ad5b54dc619c764849e48330e325d45d7e75df13514333eed58b16ba893de","text":"允许 contrib/dblink 查询被查询取消中断（Noah Misch）§ § 此变更回移了 v17 时代的修复。它防止了由于未能检测到死锁而导致 CREATE DATABASE 和 DROP DATABASE 可能挂起的问题。","title":"允许 contrib/dblink 查询被查询取消中断","variants":[],"version":"13.21"},{"also_in":[],"category":"bugfix","category_label":"Bug fixes","commit_aliases":["2d33cf7b8","3c2ea65bd","3f9132ed2","90a3fd811","d05996340","ecb8e5641"],"commit_groups":[["2d33cf7b8","3c2ea65bd","3f9132ed2","90a3fd811","d05996340","ecb8e5641"]],"commits":["3f9132ed2"],"cves":[],"db_id":"aa20cf1d90a687514d529cf07c387ac3","html":"\u003cp\u003e避免在 \u003ccode\u003econtrib/pageinspect\u003c/code\u003e 的 \u003ccode\u003eheap_page_items()\u003c/code\u003e 中因损坏的输入数据而崩溃（Dmitry Kovalenko）\u003ca href=\"https://postgr.es/c/3f9132ed2\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"13.21-fd890674555ab03b","identity_text":"Avoid crashing with corrupt input data in contrib/pageinspect's heap_page_items() (Dmitry Kovalenko)","part":"changes","patch_ids":["2435530dffce06becc5d751283d5f833"],"related_changes":[{"db_id":"ce0bbe28db794f9f70b7f7db6b8181ea","evidence":{"patch_ids":["2435530dffce06becc5d751283d5f833"],"same_day":true,"statement_hash":"790d101cd9311d28874a47621867e0f86ac13af8fc3973712618b15dc6acdf40"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"避免在 contrib/pageinspect 的 heap_page_items() 中因损坏的输入数据而崩溃","url":"/docs/compare/?release=17.5#17.5-0e11947bab051637","version":"17.5"},{"db_id":"8881e1af5842b40914bd9c207c6751b0","evidence":{"patch_ids":["2435530dffce06becc5d751283d5f833"],"same_day":true,"statement_hash":"790d101cd9311d28874a47621867e0f86ac13af8fc3973712618b15dc6acdf40"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"避免在 contrib/pageinspect 的 heap_page_items() 中因损坏的输入数据而崩溃","url":"/docs/compare/?release=16.9#16.9-4e36ed5d94cadcea","version":"16.9"},{"db_id":"ace2bc25865466ba2e780658d626980b","evidence":{"patch_ids":["2435530dffce06becc5d751283d5f833"],"same_day":true,"statement_hash":"790d101cd9311d28874a47621867e0f86ac13af8fc3973712618b15dc6acdf40"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"避免在 contrib/pageinspect 的 heap_page_items() 中因损坏的输入数据而崩溃","url":"/docs/compare/?release=15.13#15.13-a090ff4536e44a9a","version":"15.13"},{"db_id":"582e08e155bdd58b1d1937a654a61592","evidence":{"patch_ids":["2435530dffce06becc5d751283d5f833"],"same_day":true,"statement_hash":"790d101cd9311d28874a47621867e0f86ac13af8fc3973712618b15dc6acdf40"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"避免在 contrib/pageinspect 的 heap_page_items() 中因损坏的输入数据而崩溃","url":"/docs/compare/?release=14.18#14.18-5b312ef265127ea5","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["2435530dffce06becc5d751283d5f833"],"same_day":true,"statement_hash":"790d101cd9311d28874a47621867e0f86ac13af8fc3973712618b15dc6acdf40"},"rule":2,"target":"582e08e155bdd58b1d1937a654a61592","type":"equivalent"},{"evidence":{"patch_ids":["2435530dffce06becc5d751283d5f833"],"same_day":true,"statement_hash":"790d101cd9311d28874a47621867e0f86ac13af8fc3973712618b15dc6acdf40"},"rule":2,"target":"8881e1af5842b40914bd9c207c6751b0","type":"equivalent"},{"evidence":{"patch_ids":["2435530dffce06becc5d751283d5f833"],"same_day":true,"statement_hash":"790d101cd9311d28874a47621867e0f86ac13af8fc3973712618b15dc6acdf40"},"rule":2,"target":"ace2bc25865466ba2e780658d626980b","type":"equivalent"},{"evidence":{"patch_ids":["2435530dffce06becc5d751283d5f833"],"same_day":true,"statement_hash":"790d101cd9311d28874a47621867e0f86ac13af8fc3973712618b15dc6acdf40"},"rule":2,"target":"ce0bbe28db794f9f70b7f7db6b8181ea","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["3f9132ed2"],"source_entry_id":"13.21/changes/025","source_hash":"348cb99fcb37af5e1fd327a59dc0b304ecde704a5f17fff91443efc15024ae7c","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"790d101cd9311d28874a47621867e0f86ac13af8fc3973712618b15dc6acdf40","text":"避免在 contrib/pageinspect 的 heap_page_items() 中因损坏的输入数据而崩溃（Dmitry Kovalenko）§","title":"避免在 contrib/pageinspect 的 heap_page_items() 中因损坏的输入数据而崩溃","variants":[],"version":"13.21"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["0e86bad38","41ed749e4","4623d7144","51d038da8","5ff827389","db8238da4"],"commit_groups":[["0e86bad38","41ed749e4","4623d7144","51d038da8","5ff827389","db8238da4"]],"commits":["db8238da4"],"cves":[],"db_id":"adfcc6ef0adfbe59858de60aa47488f2","html":"\u003cp\u003e防止 \u003ccode\u003econtrib/pg_freespacemap\u003c/code\u003e 的 \u003ccode\u003epg_freespacemap()\u003c/code\u003e 中的断言失败（Tender Wang）\u003ca href=\"https://postgr.es/c/db8238da4\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e对没有存储的关系（如视图）应用 \u003ccode\u003epg_freespacemap()\u003c/code\u003e 会导致断言失败，尽管在非断言构建中没有不良影响。增加了错误检查以拒绝这种情况。\u003c/p\u003e","id":"13.21-de4430d9db2f49d8","identity_text":"Prevent assertion failure in contrib/pg_freespacemap's pg_freespacemap() (Tender Wang) Applying pg_freespacemap() to a relation lacking storage (such as a view) caused an assertion failure, although there was no ill effect in non-assert builds. Add an error check to reject that case.","part":"changes","patch_ids":["3e5cc9e814c9dece1afb8c66792c24b0"],"related_changes":[{"db_id":"ed681893dd2413de875556a68dd1f326","evidence":{"patch_ids":["3e5cc9e814c9dece1afb8c66792c24b0"],"same_day":true,"statement_hash":"ac76386686f5a22f3f9f87e3acb88251eb3917b665302519ad233f4c0b2cd83d"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"防止 contrib/pg_freespacemap 的 pg_freespacemap() 中的断言失败","url":"/docs/compare/?release=17.5#17.5-1dffc3d6b9d4a839","version":"17.5"},{"db_id":"a31972a05b0a88178f98582dd5a915ab","evidence":{"patch_ids":["3e5cc9e814c9dece1afb8c66792c24b0"],"same_day":true,"statement_hash":"ac76386686f5a22f3f9f87e3acb88251eb3917b665302519ad233f4c0b2cd83d"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"防止 contrib/pg_freespacemap 的 pg_freespacemap() 中的断言失败","url":"/docs/compare/?release=16.9#16.9-7f0fd7a665d6f996","version":"16.9"},{"db_id":"2b6a0f3f7be35f404a9c6d630e81966f","evidence":{"patch_ids":["3e5cc9e814c9dece1afb8c66792c24b0"],"same_day":true,"statement_hash":"ac76386686f5a22f3f9f87e3acb88251eb3917b665302519ad233f4c0b2cd83d"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"防止 contrib/pg_freespacemap 的 pg_freespacemap() 中的断言失败","url":"/docs/compare/?release=15.13#15.13-c355b8b2ba341fdd","version":"15.13"},{"db_id":"81e603618cc6cfaecbb907958d188bb0","evidence":{"patch_ids":["3e5cc9e814c9dece1afb8c66792c24b0"],"same_day":true,"statement_hash":"ac76386686f5a22f3f9f87e3acb88251eb3917b665302519ad233f4c0b2cd83d"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"防止 contrib/pg_freespacemap 的 pg_freespacemap() 中的断言失败","url":"/docs/compare/?release=14.18#14.18-d9a739915b758a3d","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["3e5cc9e814c9dece1afb8c66792c24b0"],"same_day":true,"statement_hash":"ac76386686f5a22f3f9f87e3acb88251eb3917b665302519ad233f4c0b2cd83d"},"rule":2,"target":"2b6a0f3f7be35f404a9c6d630e81966f","type":"equivalent"},{"evidence":{"patch_ids":["3e5cc9e814c9dece1afb8c66792c24b0"],"same_day":true,"statement_hash":"ac76386686f5a22f3f9f87e3acb88251eb3917b665302519ad233f4c0b2cd83d"},"rule":2,"target":"81e603618cc6cfaecbb907958d188bb0","type":"equivalent"},{"evidence":{"patch_ids":["3e5cc9e814c9dece1afb8c66792c24b0"],"same_day":true,"statement_hash":"ac76386686f5a22f3f9f87e3acb88251eb3917b665302519ad233f4c0b2cd83d"},"rule":2,"target":"a31972a05b0a88178f98582dd5a915ab","type":"equivalent"},{"evidence":{"patch_ids":["3e5cc9e814c9dece1afb8c66792c24b0"],"same_day":true,"statement_hash":"ac76386686f5a22f3f9f87e3acb88251eb3917b665302519ad233f4c0b2cd83d"},"rule":2,"target":"ed681893dd2413de875556a68dd1f326","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["db8238da4"],"source_entry_id":"13.21/changes/026","source_hash":"62cc60d08eb86bf3b3ea60b70c790623f8434de93b367ae38491492bb77cc789","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"ac76386686f5a22f3f9f87e3acb88251eb3917b665302519ad233f4c0b2cd83d","text":"防止 contrib/pg_freespacemap 的 pg_freespacemap() 中的断言失败（Tender Wang）§ 对没有存储的关系（如视图）应用 pg_freespacemap() 会导致断言失败，尽管在非断言构建中没有不良影响。增加了错误检查以拒绝这种情况。","title":"防止 contrib/pg_freespacemap 的 pg_freespacemap() 中的断言失败","variants":[],"version":"13.21"},{"also_in":[],"category":"bugfix","category_label":"Bug fixes","commit_aliases":["0de9560ba","6da2ba1d8","71790aef1","915e88968","a39eb9c77","e4440a73c"],"commit_groups":[["0de9560ba","6da2ba1d8","71790aef1","915e88968","a39eb9c77","e4440a73c"]],"commits":["e4440a73c"],"cves":[],"db_id":"df8ba4ebb72714714838bb3067224a56","html":"\u003cp\u003e修复在 macOS 15.4 上的构建失败（Tom Lane，Peter Eisentraut）\u003ca href=\"https://postgr.es/c/e4440a73c\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e此 macOS 更新破坏了我们对 \u003ccode\u003estrchrnul()\u003c/code\u003e 的配置探测。\u003c/p\u003e","id":"13.21-1d245447bc27aad2","identity_text":"Fix build failure on macOS 15.4 (Tom Lane, Peter Eisentraut) This macOS update broke our configuration probe for strchrnul().","part":"changes","patch_ids":["2c43c28d6c52dc62356a0bdf9130845e"],"related_changes":[{"db_id":"de586d1393e514a8fd81f47aaa090f70","evidence":{"patch_ids":["2c43c28d6c52dc62356a0bdf9130845e"],"same_day":true,"statement_hash":"dc558bd7f237a01581ee701a0432e3c4e6a8a5891bf7de9f894b410cd957d189"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"修复在 macOS 15.4 上的构建失败","url":"/docs/compare/?release=17.5#17.5-d6e8a72bfcea4b53","version":"17.5"},{"db_id":"d81851b981e6555614e00ec1b2accc47","evidence":{"patch_ids":["2c43c28d6c52dc62356a0bdf9130845e"],"same_day":true,"statement_hash":"dc558bd7f237a01581ee701a0432e3c4e6a8a5891bf7de9f894b410cd957d189"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"修复在 macOS 15.4 上的构建失败","url":"/docs/compare/?release=16.9#16.9-d09a72f3b5c71225","version":"16.9"},{"db_id":"b63702f305707fa1db21237db0526102","evidence":{"patch_ids":["2c43c28d6c52dc62356a0bdf9130845e"],"same_day":true,"statement_hash":"dc558bd7f237a01581ee701a0432e3c4e6a8a5891bf7de9f894b410cd957d189"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"修复在 macOS 15.4 上的构建失败","url":"/docs/compare/?release=15.13#15.13-6538bafc805a3489","version":"15.13"},{"db_id":"ff82d3e77efcd654ca0d58a8b8a7b301","evidence":{"patch_ids":["2c43c28d6c52dc62356a0bdf9130845e"],"same_day":true,"statement_hash":"dc558bd7f237a01581ee701a0432e3c4e6a8a5891bf7de9f894b410cd957d189"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"修复在 macOS 15.4 上的构建失败","url":"/docs/compare/?release=14.18#14.18-9c9b5926d69ff118","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["2c43c28d6c52dc62356a0bdf9130845e"],"same_day":true,"statement_hash":"dc558bd7f237a01581ee701a0432e3c4e6a8a5891bf7de9f894b410cd957d189"},"rule":2,"target":"b63702f305707fa1db21237db0526102","type":"equivalent"},{"evidence":{"patch_ids":["2c43c28d6c52dc62356a0bdf9130845e"],"same_day":true,"statement_hash":"dc558bd7f237a01581ee701a0432e3c4e6a8a5891bf7de9f894b410cd957d189"},"rule":2,"target":"d81851b981e6555614e00ec1b2accc47","type":"equivalent"},{"evidence":{"patch_ids":["2c43c28d6c52dc62356a0bdf9130845e"],"same_day":true,"statement_hash":"dc558bd7f237a01581ee701a0432e3c4e6a8a5891bf7de9f894b410cd957d189"},"rule":2,"target":"de586d1393e514a8fd81f47aaa090f70","type":"equivalent"},{"evidence":{"patch_ids":["2c43c28d6c52dc62356a0bdf9130845e"],"same_day":true,"statement_hash":"dc558bd7f237a01581ee701a0432e3c4e6a8a5891bf7de9f894b410cd957d189"},"rule":2,"target":"ff82d3e77efcd654ca0d58a8b8a7b301","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["e4440a73c"],"source_entry_id":"13.21/changes/027","source_hash":"3a35a2f644fe0c4051deafcf0fc1e4aecfbb324aa068cca5ff3d62e6492aa1ea","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"dc558bd7f237a01581ee701a0432e3c4e6a8a5891bf7de9f894b410cd957d189","text":"修复在 macOS 15.4 上的构建失败（Tom Lane，Peter Eisentraut）§ 此 macOS 更新破坏了我们对 strchrnul() 的配置探测。","title":"修复在 macOS 15.4 上的构建失败","variants":[],"version":"13.21"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["368c3fbf9","5d5970b9f","9da548df3","a144cf145","e076120d9","fa4244a43"],"commit_groups":[["368c3fbf9","5d5970b9f","9da548df3","a144cf145","e076120d9","fa4244a43"]],"commits":["9da548df3"],"cves":[],"db_id":"c1730518d55761ba90941aa06c170dfb","html":"\u003cp\u003e更新时区数据文件至 \u003cspan\u003etzdata\u003c/span\u003e 2025b 版本，包含智利的夏令时法律变更以及伊朗的历史修正（Tom Lane）\u003ca href=\"https://postgr.es/c/9da548df3\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e新增时区 America/Coyhaique 用于智利的 Aysén 大区，以反映其改为全年使用 UTC-03，从而与 America/Santiago 产生差异。\u003c/p\u003e","id":"13.21-fa15b367f3d46c9d","identity_text":"Update time zone data files to tzdata release 2025b for DST law changes in Chile, plus historical corrections for Iran (Tom Lane) There is a new time zone America/Coyhaique for Chile's Aysén Region, to account for it changing to UTC-03 year-round and thus diverging from America/Santiago.","part":"changes","patch_ids":["37a58a33f41e391eeea747c321eac090"],"related_changes":[{"db_id":"b46b51b6ab58678c9616193380655da3","evidence":{"patch_ids":["37a58a33f41e391eeea747c321eac090"],"same_day":true,"statement_hash":"c09a94c4e1b7ddfa12a3f8c5c4ab5fff67151ab86b10b4c4da218d744a15f8b4"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"更新时区数据文件至 tzdata 2025b 版本，包含智利的夏令时法律变更以及伊朗的历史修正","url":"/docs/compare/?release=17.5#17.5-1787eeef076438cb","version":"17.5"},{"db_id":"89bbdc6060fef88d085afd6409e10416","evidence":{"patch_ids":["37a58a33f41e391eeea747c321eac090"],"same_day":true,"statement_hash":"c09a94c4e1b7ddfa12a3f8c5c4ab5fff67151ab86b10b4c4da218d744a15f8b4"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"更新时区数据文件至 tzdata 2025b 版本，包含智利的夏令时法律变更以及伊朗的历史修正","url":"/docs/compare/?release=16.9#16.9-edae619b47bafc29","version":"16.9"},{"db_id":"2e73cf839c165cbbaf867b7175690bd0","evidence":{"patch_ids":["37a58a33f41e391eeea747c321eac090"],"same_day":true,"statement_hash":"c09a94c4e1b7ddfa12a3f8c5c4ab5fff67151ab86b10b4c4da218d744a15f8b4"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#ZH-AUTO-RELEASE-15-SECT2-10","title":"更新时区数据文件至 tzdata 2025b 版本，包含智利的夏令时法律变更以及伊朗的历史修正","url":"/docs/compare/?release=15.13#15.13-7905b2aef76f37fd","version":"15.13"},{"db_id":"85360ac1e18899dc279978e17903e0fd","evidence":{"patch_ids":["37a58a33f41e391eeea747c321eac090"],"same_day":true,"statement_hash":"c09a94c4e1b7ddfa12a3f8c5c4ab5fff67151ab86b10b4c4da218d744a15f8b4"},"kind":"equivalent","label":"14.18","source_url":"/docs/release/14.18/#ZH-AUTO-RELEASE-14-SECT2-10","title":"更新时区数据文件至 tzdata 2025b 版本，包含智利的夏令时法律变更以及伊朗的历史修正","url":"/docs/compare/?release=14.18#14.18-08e4060ba79b5c53","version":"14.18"}],"relations":[{"evidence":{"patch_ids":["37a58a33f41e391eeea747c321eac090"],"same_day":true,"statement_hash":"c09a94c4e1b7ddfa12a3f8c5c4ab5fff67151ab86b10b4c4da218d744a15f8b4"},"rule":2,"target":"2e73cf839c165cbbaf867b7175690bd0","type":"equivalent"},{"evidence":{"patch_ids":["37a58a33f41e391eeea747c321eac090"],"same_day":true,"statement_hash":"c09a94c4e1b7ddfa12a3f8c5c4ab5fff67151ab86b10b4c4da218d744a15f8b4"},"rule":2,"target":"85360ac1e18899dc279978e17903e0fd","type":"equivalent"},{"evidence":{"patch_ids":["37a58a33f41e391eeea747c321eac090"],"same_day":true,"statement_hash":"c09a94c4e1b7ddfa12a3f8c5c4ab5fff67151ab86b10b4c4da218d744a15f8b4"},"rule":2,"target":"89bbdc6060fef88d085afd6409e10416","type":"equivalent"},{"evidence":{"patch_ids":["37a58a33f41e391eeea747c321eac090"],"same_day":true,"statement_hash":"c09a94c4e1b7ddfa12a3f8c5c4ab5fff67151ab86b10b4c4da218d744a15f8b4"},"rule":2,"target":"b46b51b6ab58678c9616193380655da3","type":"equivalent"}],"section":"变更","section_path":["变更"],"source_commits":["9da548df3"],"source_entry_id":"13.21/changes/028","source_hash":"05037ad1e93b041b5620165f253399fb7610308c44840de5983c12ab70311fec","source_url":"/docs/release/13.21/#id-1.11.6.8.6","statement_hash":"c09a94c4e1b7ddfa12a3f8c5c4ab5fff67151ab86b10b4c4da218d744a15f8b4","text":"更新时区数据文件至 tzdata 2025b 版本，包含智利的夏令时法律变更以及伊朗的历史修正（Tom Lane）§ 新增时区 America/Coyhaique 用于智利的 Aysén 大区，以反映其改为全年使用 UTC-03，从而与 America/Santiago 产生差异。","title":"更新时区数据文件至 tzdata 2025b 版本，包含智利的夏令时法律变更以及伊朗的历史修正","variants":[],"version":"13.21"}],"entry_count":28,"eol":"2025-11-13","eol_date":"2025-11-13","label":"13.21","major":"13","manual":"13","manual_build":"13.23","manual_url":"/docs/13/release-13-21.html","migration_html":"\u003cp\u003e对于运行 13.X 的用户，不需要执行导出/恢复。\u003c/p\u003e\n\u003cp\u003e但是，如果分区表上存在自引用外键约束，可能需要重新创建这些约束，以确保它们得到正确执行。请参见下面的第二个变更日志条目。\u003c/p\u003e\n\u003cp\u003e此外，如果是从早于 13.17 的版本升级，请参见\u003ca href=\"/docs/13/release-13-17.html\" title=\"E.7. 发布版本 13.17\"\u003e第 E.7 节\u003c/a\u003e。\u003c/p\u003e","minor":21,"placeholder":false,"source_as_of":"","source_url":"/docs/release/13.21/","status":"stable","status_label":"Historical","support_days":-333,"supported":false,"version":"13.21"}],"mode":"release","release_count":1,"remaining_cves":[],"security_as_of":"2026-09-26","security_regressions":[],"source_as_of":"2026-09-26","stats":[{"count":28,"key":"all","label":"All changes"},{"count":0,"key":"feature","label":"Features"},{"count":12,"key":"bugfix","label":"Bug fixes"},{"count":1,"key":"security","label":"Security"},{"count":0,"key":"performance","label":"Performance"},{"count":0,"key":"compatibility","label":"Compatibility"},{"count":15,"key":"improvement","label":"Improvements"}],"to_release":{"age_days":522,"build":"13.21","changes_count":28,"compatibility_count":0,"content_hash":"8271ee3c9efd763a52a23e6cbb6003155215b7adc6a32f2514cdf2079649188b","date":"2025-05-08","date_text":"2025-05-08","doc_git":"","doc_loaded_at":"2026-09-26T02:56:40.428744","entry_count":28,"eol":"2025-11-13","eol_date":"2025-11-13","label":"13.21","major":"13","manual":"13","manual_build":"13.23","manual_url":"/docs/13/release-13-21.html","migration_html":"\u003cp\u003e对于运行 13.X 的用户，不需要执行导出/恢复。\u003c/p\u003e\n\u003cp\u003e但是，如果分区表上存在自引用外键约束，可能需要重新创建这些约束，以确保它们得到正确执行。请参见下面的第二个变更日志条目。\u003c/p\u003e\n\u003cp\u003e此外，如果是从早于 13.17 的版本升级，请参见\u003ca href=\"/docs/13/release-13-17.html\" title=\"E.7. 发布版本 13.17\"\u003e第 E.7 节\u003c/a\u003e。\u003c/p\u003e","minor":21,"placeholder":false,"source_as_of":"","source_url":"/docs/release/13.21/","status":"stable","status_label":"Historical","support_days":-333,"supported":false,"version":"13.21"},"total":28,"warnings":[]}
