{"already_in_source_count":0,"candidate_count":35,"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":"14.18","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":"Avoid one-byte buffer overread when examining invalidly-encoded strings that are claimed to be in GB18030 encoding","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":553,"build":"14.18","changes_count":35,"compatibility_count":0,"content_hash":"3762e89cda196274615b9fac9ffcd640a55aa2dc595067dbc13686fa6ea75afa","date":"2025-05-08","date_text":"2025-05-08","doc_git":"","doc_loaded_at":"2026-09-25T02:22:44.760693","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":["258cde839","3f2ab7393"],"cves":["CVE-2025-4207"],"db_id":"dd8842462b8fd9529571acc51a1f45c1","html":"\u003cp\u003eAvoid one-byte buffer overread when examining invalidly-encoded strings that are claimed to be in GB18030 encoding (Noah Misch, Andres Freund) \u003ca href=\"https://postgr.es/c/3f2ab7393\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/258cde839\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWhile 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 \u003cspan\u003elibpq\u003c/span\u003e-using applications. (CVE-2025-4207)\u003c/p\u003e","id":"14.18-e7c0d482f98a0ba1","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":"Avoid one-byte buffer overread when examining invalidly-encoded strings that are claimed to be in GB18030 encoding","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":"Avoid one-byte buffer overread when examining invalidly-encoded strings that are claimed to be in GB18030 encoding","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/#id-1.11.6.12.5","title":"Avoid one-byte buffer overread when examining invalidly-encoded strings that are claimed to be in GB18030 encoding","url":"/docs/compare/?release=15.13#15.13-ac5445ebcc0439eb","version":"15.13"},{"db_id":"90816d8cb748849f968f5acd56673365","evidence":{"patch_ids":["46c8bf47167ab191e3280201c2564861","76df84f28287d373c8422ff9fd4dc342"],"same_day":true,"statement_hash":"de9bc622c1afed2365e92af367e89d9502a1c466f4c6dba55f3cf061e1d932af"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Avoid one-byte buffer overread when examining invalidly-encoded strings that are claimed to be in GB18030 encoding","url":"/docs/compare/?release=13.21#13.21-bc601768f2de7a35","version":"13.21"}],"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":"90816d8cb748849f968f5acd56673365","type":"equivalent"},{"evidence":{"patch_ids":["46c8bf47167ab191e3280201c2564861","76df84f28287d373c8422ff9fd4dc342"],"same_day":true,"statement_hash":"de9bc622c1afed2365e92af367e89d9502a1c466f4c6dba55f3cf061e1d932af"},"rule":2,"target":"b709e1b3e9d8624be870988b036fd152","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["258cde839","3f2ab7393"],"source_entry_id":"14.18/changes/001","source_hash":"15ca91fdc21208fdc2c9df4c5e94feb8b2470891c158621faadba16131c8107d","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"de9bc622c1afed2365e92af367e89d9502a1c466f4c6dba55f3cf061e1d932af","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)","title":"Avoid one-byte buffer overread when examining invalidly-encoded strings that are claimed to be in GB18030 encoding","variants":[],"version":"14.18"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["1649d153a","1817d62ec","6ba979cf5","b3a9c536d","c83a38758","f51ae3187"],"commit_groups":[["1649d153a","1817d62ec","6ba979cf5","b3a9c536d","c83a38758","f51ae3187"]],"commits":["1649d153a"],"cves":[],"db_id":"00a212cca3e46b43408a50bfb3f001a2","html":"\u003cp\u003eHandle self-referential foreign keys on partitioned tables correctly (Álvaro Herrera) \u003ca href=\"https://postgr.es/c/1649d153a\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eCreating 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.\u003c/p\u003e\n\u003cp\u003eTo 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.\u003c/p\u003e","id":"14.18-8508a57f7675f008","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":"Handle self-referential foreign keys on partitioned tables correctly","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":"Handle self-referential foreign keys on partitioned tables correctly","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/#id-1.11.6.12.5","title":"Handle self-referential foreign keys on partitioned tables correctly","url":"/docs/compare/?release=15.13#15.13-0a90d92fac91acc0","version":"15.13"},{"db_id":"1597348d9b84b108c65df5a25ccdad57","evidence":{"patch_ids":["ad242ea23eebb0296f36fddb8b8111c0"],"same_day":true,"statement_hash":"0c1635d2fbe51396a0afda654bfd96a5b65735f5ba956c95dbfb5862805e3a03"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Handle self-referential foreign keys on partitioned tables correctly","url":"/docs/compare/?release=13.21#13.21-5dfcd8e50f9f1cd7","version":"13.21"}],"relations":[{"evidence":{"patch_ids":["ad242ea23eebb0296f36fddb8b8111c0"],"same_day":true,"statement_hash":"0c1635d2fbe51396a0afda654bfd96a5b65735f5ba956c95dbfb5862805e3a03"},"rule":2,"target":"1597348d9b84b108c65df5a25ccdad57","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":"Changes","section_path":["Changes"],"source_commits":["1649d153a"],"source_entry_id":"14.18/changes/002","source_hash":"240ca5b1667e3b982a9a8263ccf5f6cfa8558d37e4f850613f6477b9848b6aba","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"0c1635d2fbe51396a0afda654bfd96a5b65735f5ba956c95dbfb5862805e3a03","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.","title":"Handle self-referential foreign keys on partitioned tables correctly","variants":[],"version":"14.18"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["6be02bbc8","818245506","cb0ad70b8","e064b770c","ebcc799a7"],"commit_groups":[["6be02bbc8","818245506","cb0ad70b8","e064b770c","ebcc799a7"]],"commits":["6be02bbc8"],"cves":[],"db_id":"bbe2be1a596ba923c5a319334510b4f8","html":"\u003cp\u003eAvoid data loss when merging compressed BRIN summaries in \u003ccode\u003ebrin_bloom_union()\u003c/code\u003e (Tomas Vondra) \u003ca href=\"https://postgr.es/c/6be02bbc8\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThe code failed to account for decompression results not being identical to the input objects, which would result in failure to add some of the data to the merged summary, leading to missed rows in index searches.\u003c/p\u003e\n\u003cp\u003eThis mistake was present back to v14 where BRIN bloom indexes were introduced, but this code path was only rarely reached then. It's substantially more likely to be hit in v17 because parallel index builds now use the code.\u003c/p\u003e","id":"14.18-f538b53a2f7f69ca","identity_text":"Avoid data loss when merging compressed BRIN summaries in brin_bloom_union() (Tomas Vondra) The code failed to account for decompression results not being identical to the input objects, which would result in failure to add some of the data to the merged summary, leading to missed rows in index searches. This mistake was present back to v14 where BRIN bloom indexes were introduced, but this code path was only rarely reached then. It's substantially more likely to be hit in v17 because parallel index builds now use the code.","part":"changes","patch_ids":["e7679010570c027f03bd2cfeabb18277"],"related_changes":[{"db_id":"485bff3c834029add3cd04127b9baf3b","evidence":{"patch_ids":["e7679010570c027f03bd2cfeabb18277"],"same_day":true,"statement_hash":"4b381913723c5c4a3d0d3be5e7454df4efc248655249905dff5dc8a58a402609"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"Avoid data loss when merging compressed BRIN summaries in brin_bloom_union()","url":"/docs/compare/?release=17.5#17.5-713c7047a302325a","version":"17.5"},{"db_id":"4843f13cf3d1c267a1482aff53d43829","evidence":{"patch_ids":["e7679010570c027f03bd2cfeabb18277"],"same_day":true,"statement_hash":"4b381913723c5c4a3d0d3be5e7454df4efc248655249905dff5dc8a58a402609"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"Avoid data loss when merging compressed BRIN summaries in brin_bloom_union()","url":"/docs/compare/?release=16.9#16.9-00a18a3ddf7896ba","version":"16.9"},{"db_id":"3a11ecf5fadca551924c452d89cfd2ae","evidence":{"patch_ids":["e7679010570c027f03bd2cfeabb18277"],"same_day":true,"statement_hash":"4b381913723c5c4a3d0d3be5e7454df4efc248655249905dff5dc8a58a402609"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#id-1.11.6.12.5","title":"Avoid data loss when merging compressed BRIN summaries in brin_bloom_union()","url":"/docs/compare/?release=15.13#15.13-32fb0ac8af362319","version":"15.13"}],"relations":[{"evidence":{"patch_ids":["e7679010570c027f03bd2cfeabb18277"],"same_day":true,"statement_hash":"4b381913723c5c4a3d0d3be5e7454df4efc248655249905dff5dc8a58a402609"},"rule":2,"target":"3a11ecf5fadca551924c452d89cfd2ae","type":"equivalent"},{"evidence":{"patch_ids":["e7679010570c027f03bd2cfeabb18277"],"same_day":true,"statement_hash":"4b381913723c5c4a3d0d3be5e7454df4efc248655249905dff5dc8a58a402609"},"rule":2,"target":"4843f13cf3d1c267a1482aff53d43829","type":"equivalent"},{"evidence":{"patch_ids":["e7679010570c027f03bd2cfeabb18277"],"same_day":true,"statement_hash":"4b381913723c5c4a3d0d3be5e7454df4efc248655249905dff5dc8a58a402609"},"rule":2,"target":"485bff3c834029add3cd04127b9baf3b","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["6be02bbc8"],"source_entry_id":"14.18/changes/003","source_hash":"c1f94514ebe798bc5d282b076686039c976ba39b93562cdc5fe49a99448d4eb1","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"4b381913723c5c4a3d0d3be5e7454df4efc248655249905dff5dc8a58a402609","text":"Avoid data loss when merging compressed BRIN summaries in brin_bloom_union() (Tomas Vondra) § The code failed to account for decompression results not being identical to the input objects, which would result in failure to add some of the data to the merged summary, leading to missed rows in index searches. This mistake was present back to v14 where BRIN bloom indexes were introduced, but this code path was only rarely reached then. It's substantially more likely to be hit in v17 because parallel index builds now use the code.","title":"Avoid data loss when merging compressed BRIN summaries in brin_bloom_union()","variants":[],"version":"14.18"},{"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":["1a20bc946","584f17a90","d3a29ae6a"],"cves":[],"db_id":"faecba315a6ff460195de2ac7c2156a1","html":"\u003cp\u003eFix unexpected \u003cspan\u003e“\u003cspan\u003eattribute has wrong type\u003c/span\u003e”\u003c/span\u003e errors in \u003ccode\u003eUPDATE\u003c/code\u003e, \u003ccode\u003eDELETE\u003c/code\u003e, and \u003ccode\u003eMERGE\u003c/code\u003e queries that use whole-row table references to views or functions in \u003ccode\u003eFROM\u003c/code\u003e (Tom Lane) \u003ca href=\"https://postgr.es/c/d3a29ae6a\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/584f17a90\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/1a20bc946\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"14.18-410db6a272093912","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":"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","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":"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","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/#id-1.11.6.12.5","title":"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","url":"/docs/compare/?release=15.13#15.13-77004cecd223761f","version":"15.13"},{"db_id":"78144efed294da8a2d5e820954befe01","evidence":{"patch_ids":["15bc8ca0e3cd0f7d7090dc8454de3307","48fefa97f07c981f3d50626a2693f764","59a3817ba039f85b8c7fd855a6cd7c4f"],"same_day":true,"statement_hash":"bfb3da86e84e7549dc5b96dc76b02432005d15b99e43155b4cbfbb516d6cbf54"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"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","url":"/docs/compare/?release=13.21#13.21-b31af4ef04e8f4e8","version":"13.21"}],"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":"78144efed294da8a2d5e820954befe01","type":"equivalent"},{"evidence":{"patch_ids":["15bc8ca0e3cd0f7d7090dc8454de3307","48fefa97f07c981f3d50626a2693f764","59a3817ba039f85b8c7fd855a6cd7c4f"],"same_day":true,"statement_hash":"bfb3da86e84e7549dc5b96dc76b02432005d15b99e43155b4cbfbb516d6cbf54"},"rule":2,"target":"7a02987633308bab11c9305847a877d0","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["1a20bc946","584f17a90","d3a29ae6a"],"source_entry_id":"14.18/changes/004","source_hash":"4e4aedfa61adcc95cb732fad33152d8fbdf4ecdcd5d37aae2c7d12beebf75059","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"bfb3da86e84e7549dc5b96dc76b02432005d15b99e43155b4cbfbb516d6cbf54","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) § § §","title":"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","variants":[],"version":"14.18"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["3c39c000c","4604928ed","7c8728494","97d671672","f04e0faa3"],"commit_groups":[["3c39c000c","4604928ed","7c8728494","97d671672","f04e0faa3"]],"commits":["4604928ed"],"cves":[],"db_id":"9968353971b2d90aabe2974ce8ca0b17","html":"\u003cp\u003ePrevent failure in \u003ccode\u003eINSERT\u003c/code\u003e commands when the table has a \u003ccode\u003eGENERATED\u003c/code\u003e column of a domain data type and the domain's constraints disallow null values (Jian He) \u003ca href=\"https://postgr.es/c/4604928ed\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eConstraint failure was reported even if the generation expression produced a perfectly okay result.\u003c/p\u003e","id":"14.18-0db2ae0d4a6db748","identity_text":"Prevent failure in INSERT commands when the table has a GENERATED column of a domain data type and the domain's constraints disallow null values (Jian He) Constraint failure was reported even if the generation expression produced a perfectly okay result.","part":"changes","patch_ids":["511a283a7a0968a300bcd6f1f483561c"],"related_changes":[{"db_id":"a4bb8d60d9ad06081b90421ad2dae048","evidence":{"patch_ids":["511a283a7a0968a300bcd6f1f483561c"],"same_day":true,"statement_hash":"b1bc50fa6460403502ac286fc1da724e43781afb7c442739f4cf1015e30f28d1"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"Prevent failure in INSERT commands when the table has a GENERATED column of a domain data type and the domain's constraints disallow null values","url":"/docs/compare/?release=17.5#17.5-6526003e508c4382","version":"17.5"},{"db_id":"1abab24628ec9d80474ca478204b54b6","evidence":{"patch_ids":["511a283a7a0968a300bcd6f1f483561c"],"same_day":true,"statement_hash":"b1bc50fa6460403502ac286fc1da724e43781afb7c442739f4cf1015e30f28d1"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"Prevent failure in INSERT commands when the table has a GENERATED column of a domain data type and the domain's constraints disallow null values","url":"/docs/compare/?release=16.9#16.9-9a8a93e856ab5a0d","version":"16.9"},{"db_id":"90be6e04fee2db08987030dda7e61c1c","evidence":{"patch_ids":["511a283a7a0968a300bcd6f1f483561c"],"same_day":true,"statement_hash":"b1bc50fa6460403502ac286fc1da724e43781afb7c442739f4cf1015e30f28d1"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#id-1.11.6.12.5","title":"Prevent failure in INSERT commands when the table has a GENERATED column of a domain data type and the domain's constraints disallow null values","url":"/docs/compare/?release=15.13#15.13-dc64f1cefed2c049","version":"15.13"}],"relations":[{"evidence":{"patch_ids":["511a283a7a0968a300bcd6f1f483561c"],"same_day":true,"statement_hash":"b1bc50fa6460403502ac286fc1da724e43781afb7c442739f4cf1015e30f28d1"},"rule":2,"target":"1abab24628ec9d80474ca478204b54b6","type":"equivalent"},{"evidence":{"patch_ids":["511a283a7a0968a300bcd6f1f483561c"],"same_day":true,"statement_hash":"b1bc50fa6460403502ac286fc1da724e43781afb7c442739f4cf1015e30f28d1"},"rule":2,"target":"90be6e04fee2db08987030dda7e61c1c","type":"equivalent"},{"evidence":{"patch_ids":["511a283a7a0968a300bcd6f1f483561c"],"same_day":true,"statement_hash":"b1bc50fa6460403502ac286fc1da724e43781afb7c442739f4cf1015e30f28d1"},"rule":2,"target":"a4bb8d60d9ad06081b90421ad2dae048","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["4604928ed"],"source_entry_id":"14.18/changes/005","source_hash":"9ef936958f1777aa95d9b58799c2d38c96fbbbb68aea97ec32b6597a94ecfd20","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"b1bc50fa6460403502ac286fc1da724e43781afb7c442739f4cf1015e30f28d1","text":"Prevent failure in INSERT commands when the table has a GENERATED column of a domain data type and the domain's constraints disallow null values (Jian He) § Constraint failure was reported even if the generation expression produced a perfectly okay result.","title":"Prevent failure in INSERT commands when the table has a GENERATED column of a domain data type and the domain's constraints disallow null values","variants":[],"version":"14.18"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["1980ec2bc","5e7be43f4","691836405","754a3d82d","e276b5829","ede29a1e4"],"commit_groups":[["1980ec2bc","5e7be43f4","691836405","754a3d82d","e276b5829","ede29a1e4"]],"commits":["754a3d82d"],"cves":[],"db_id":"43ef4362d82abd89c632923c19c63abe","html":"\u003cp\u003eCorrectly process references to outer CTE names that appear within a \u003ccode\u003eWITH\u003c/code\u003e clause attached to an \u003ccode\u003eINSERT\u003c/code\u003e/\u003ccode\u003eUPDATE\u003c/code\u003e/\u003ccode\u003eDELETE\u003c/code\u003e/\u003ccode\u003eMERGE\u003c/code\u003e command that's inside \u003ccode\u003eWITH\u003c/code\u003e (Tom Lane) \u003ca href=\"https://postgr.es/c/754a3d82d\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThe parser failed to detect disallowed recursion cases, nor did it account for such references when sorting CTEs into a usable order.\u003c/p\u003e","id":"14.18-1dfb1187293403b9","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":"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","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":"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","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/#id-1.11.6.12.5","title":"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","url":"/docs/compare/?release=15.13#15.13-f4e8b698cacd5fe8","version":"15.13"},{"db_id":"4e1153d84247e7968ad2cf656d1b8054","evidence":{"patch_ids":["d1ef004bfb3ff87f530f4c58b02fe0f0"],"same_day":true,"statement_hash":"bf2a0f590bb786488e65266418e36c3bf742fa81f661e219e66623e07c6f0096"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"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","url":"/docs/compare/?release=13.21#13.21-a47f4cde204a1376","version":"13.21"}],"relations":[{"evidence":{"patch_ids":["d1ef004bfb3ff87f530f4c58b02fe0f0"],"same_day":true,"statement_hash":"bf2a0f590bb786488e65266418e36c3bf742fa81f661e219e66623e07c6f0096"},"rule":2,"target":"4e1153d84247e7968ad2cf656d1b8054","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":"Changes","section_path":["Changes"],"source_commits":["754a3d82d"],"source_entry_id":"14.18/changes/006","source_hash":"792c41d43559197758ac5f865946921d386bb5644a449a0249ca1b1fe15ecc7e","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"bf2a0f590bb786488e65266418e36c3bf742fa81f661e219e66623e07c6f0096","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.","title":"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","variants":[],"version":"14.18"},{"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":["f7ae51312"],"cves":[],"db_id":"34305a36a827e7b4f59256045ef7ec72","html":"\u003cp\u003eFix \u003ccode\u003eARRAY(\u003cem\u003e\u003ccode\u003esubquery\u003c/code\u003e\u003c/em\u003e)\u003c/code\u003e and \u003ccode\u003eARRAY[\u003cem\u003e\u003ccode\u003eexpression, ...\u003c/code\u003e\u003c/em\u003e]\u003c/code\u003e constructs to produce sane results when the input is of type \u003ccode\u003eint2vector\u003c/code\u003e or \u003ccode\u003eoidvector\u003c/code\u003e (Tom Lane) \u003ca href=\"https://postgr.es/c/f7ae51312\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis patch restores the behavior that existed before \u003cspan\u003ePostgreSQL\u003c/span\u003e 9.5: the result is of type \u003ccode\u003eint2vector[]\u003c/code\u003e or \u003ccode\u003eoidvector[]\u003c/code\u003e.\u003c/p\u003e","id":"14.18-70198d240c4e5136","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":"Fix ARRAY(subquery) and ARRAY[expression, ...] constructs to produce sane results when the input is of type int2vector or 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":"Fix ARRAY(subquery) and ARRAY[expression, ...] constructs to produce sane results when the input is of type int2vector or 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/#id-1.11.6.12.5","title":"Fix ARRAY(subquery) and ARRAY[expression, ...] constructs to produce sane results when the input is of type int2vector or oidvector","url":"/docs/compare/?release=15.13#15.13-c6423740dd58b9c5","version":"15.13"},{"db_id":"776a870e5f87a27f3d8fd7999acd7ce5","evidence":{"patch_ids":["59bbe3085e9bcfcbfff1d9fc5b4c1c56"],"same_day":true,"statement_hash":"7afc60033c3c40c571fedbd57a2c2e696aadfd82fb0b2198db9afe0faeb53944"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Fix ARRAY(subquery) and ARRAY[expression, ...] constructs to produce sane results when the input is of type int2vector or oidvector","url":"/docs/compare/?release=13.21#13.21-5479a3227697d975","version":"13.21"}],"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":"776a870e5f87a27f3d8fd7999acd7ce5","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":"Changes","section_path":["Changes"],"source_commits":["f7ae51312"],"source_entry_id":"14.18/changes/007","source_hash":"82926317d0b8a8392a4a7338e16e36e9febbd980fb689f703456a22aa2387979","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"7afc60033c3c40c571fedbd57a2c2e696aadfd82fb0b2198db9afe0faeb53944","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[].","title":"Fix ARRAY(subquery) and ARRAY[expression, ...] constructs to produce sane results when the input is of type int2vector or oidvector","variants":[],"version":"14.18"},{"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":["da85544ae"],"cves":[],"db_id":"8d306975e4b0a9c39e7fff8c8ad3613e","html":"\u003cp\u003eFix possible erroneous reports of invalid affixes while parsing \u003cspan\u003eIspell\u003c/span\u003e dictionaries (Jacob Brazeal) \u003ca href=\"https://postgr.es/c/da85544ae\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"14.18-60d7303621919c68","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":"Fix possible erroneous reports of invalid affixes while parsing Ispell dictionaries","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":"Fix possible erroneous reports of invalid affixes while parsing Ispell dictionaries","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/#id-1.11.6.12.5","title":"Fix possible erroneous reports of invalid affixes while parsing Ispell dictionaries","url":"/docs/compare/?release=15.13#15.13-327c96a58899c1ae","version":"15.13"},{"db_id":"eb58cef266f21c9edb703764403f7168","evidence":{"patch_ids":["f2484a0ea37309c0a083683b6f24f404"],"same_day":true,"statement_hash":"a99d8bf2396babe0930adb5536a57eee692561e5efed988b319c441a85e28666"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Fix possible erroneous reports of invalid affixes while parsing Ispell dictionaries","url":"/docs/compare/?release=13.21#13.21-c84be53354aebbd7","version":"13.21"}],"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":"b921604055772bbf7e6449d7cc0b59cc","type":"equivalent"},{"evidence":{"patch_ids":["f2484a0ea37309c0a083683b6f24f404"],"same_day":true,"statement_hash":"a99d8bf2396babe0930adb5536a57eee692561e5efed988b319c441a85e28666"},"rule":2,"target":"eb58cef266f21c9edb703764403f7168","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["da85544ae"],"source_entry_id":"14.18/changes/008","source_hash":"8fb393f5889ecaa7561e565a5bf5289311f72a836075dfbfb1e1a79ac0a16ef5","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"a99d8bf2396babe0930adb5536a57eee692561e5efed988b319c441a85e28666","text":"Fix possible erroneous reports of invalid affixes while parsing Ispell dictionaries (Jacob Brazeal) §","title":"Fix possible erroneous reports of invalid affixes while parsing Ispell dictionaries","variants":[],"version":"14.18"},{"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":["c75c830e2","d31d39cfe"],"cves":[],"db_id":"37a827dba2a507a5634eda2d0066034c","html":"\u003cp\u003eFix \u003ccode\u003eALTER TABLE ADD COLUMN\u003c/code\u003e to correctly handle the case of a domain type that has a default (Jian He, Tom Lane, Tender Wang) \u003ca href=\"https://postgr.es/c/c75c830e2\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/d31d39cfe\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eIf a domain type has a default, adding a column of that type (without any explicit \u003ccode\u003eDEFAULT\u003c/code\u003e clause) failed to install the domain's default value in existing rows, instead leaving the new column null.\u003c/p\u003e","id":"14.18-338b3f4c18daa9a7","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":"Fix ALTER TABLE ADD COLUMN to correctly handle the case of a domain type that has a default","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":"Fix ALTER TABLE ADD COLUMN to correctly handle the case of a domain type that has a default","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/#id-1.11.6.12.5","title":"Fix ALTER TABLE ADD COLUMN to correctly handle the case of a domain type that has a default","url":"/docs/compare/?release=15.13#15.13-15397e28cacbb50b","version":"15.13"},{"db_id":"67b1fe09f72f93e8e744403275b7aa4e","evidence":{"patch_ids":["63b929a73acffed8834764ac057b1130","90edbbe7a64e4f9be0183e7d3a909fcb"],"same_day":true,"statement_hash":"9dde4454d5d016960324b8efe0e0cbc6cb88a91609eec3a0aac95a6b33e97448"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Fix ALTER TABLE ADD COLUMN to correctly handle the case of a domain type that has a default","url":"/docs/compare/?release=13.21#13.21-524aff75bb28f7d8","version":"13.21"}],"relations":[{"evidence":{"patch_ids":["63b929a73acffed8834764ac057b1130","90edbbe7a64e4f9be0183e7d3a909fcb"],"same_day":true,"statement_hash":"9dde4454d5d016960324b8efe0e0cbc6cb88a91609eec3a0aac95a6b33e97448"},"rule":2,"target":"67b1fe09f72f93e8e744403275b7aa4e","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":"Changes","section_path":["Changes"],"source_commits":["c75c830e2","d31d39cfe"],"source_entry_id":"14.18/changes/009","source_hash":"140a84a70caf844a0bb3654af95d6296699afa11011255716bfea4074d207542","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"9dde4454d5d016960324b8efe0e0cbc6cb88a91609eec3a0aac95a6b33e97448","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.","title":"Fix ALTER TABLE ADD COLUMN to correctly handle the case of a domain type that has a default","variants":[],"version":"14.18"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["0f354e080","4e026be5f","7bbc46213","931a1c023","9ea5fe5b6","bf1e2d2db"],"commit_groups":[["0f354e080","4e026be5f","7bbc46213","931a1c023","9ea5fe5b6","bf1e2d2db"]],"commits":["931a1c023"],"cves":[],"db_id":"0b9e876fbe15368f7eb3e73dd5bde6fd","html":"\u003cp\u003eImprove the error message for disallowed attempts to alter the properties of a foreign key constraint (Álvaro Herrera) \u003ca href=\"https://postgr.es/c/931a1c023\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"14.18-c2054eb401976a11","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":"Improve the error message for disallowed attempts to alter the properties of a foreign key constraint","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":"Improve the error message for disallowed attempts to alter the properties of a foreign key constraint","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/#id-1.11.6.12.5","title":"Improve the error message for disallowed attempts to alter the properties of a foreign key constraint","url":"/docs/compare/?release=15.13#15.13-5a8186c93235cabd","version":"15.13"},{"db_id":"0d1236e87dc3b61c47a965fdf13a3b6e","evidence":{"patch_ids":["728bdeda1a76ff257ed4bba316259080"],"same_day":true,"statement_hash":"69d10dbdc12bb154d1a6cea5ee9e09a2b99194bd690c1fcb18cb3ef905c1e82e"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Improve the error message for disallowed attempts to alter the properties of a foreign key constraint","url":"/docs/compare/?release=13.21#13.21-5056a890e5317fea","version":"13.21"}],"relations":[{"evidence":{"patch_ids":["728bdeda1a76ff257ed4bba316259080"],"same_day":true,"statement_hash":"69d10dbdc12bb154d1a6cea5ee9e09a2b99194bd690c1fcb18cb3ef905c1e82e"},"rule":2,"target":"0d1236e87dc3b61c47a965fdf13a3b6e","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":"Changes","section_path":["Changes"],"source_commits":["931a1c023"],"source_entry_id":"14.18/changes/010","source_hash":"95e93505101f94121f0ced212608dc71059db93ff7857653dfec2cbf66be566b","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"69d10dbdc12bb154d1a6cea5ee9e09a2b99194bd690c1fcb18cb3ef905c1e82e","text":"Improve the error message for disallowed attempts to alter the properties of a foreign key constraint (Álvaro Herrera) §","title":"Improve the error message for disallowed attempts to alter the properties of a foreign key constraint","variants":[],"version":"14.18"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["2d5350cfb","5905e9935","a61b67cd0","d0a049987","d34b671a6","e0f53e669"],"commit_groups":[["2d5350cfb","5905e9935","a61b67cd0","d0a049987","d34b671a6","e0f53e669"]],"commits":["a61b67cd0"],"cves":[],"db_id":"2970c113ec75804e2bbeaf779747bffa","html":"\u003cp\u003eAvoid error when resetting the \u003ccode\u003erelhassubclass\u003c/code\u003e flag of a temporary table that's marked \u003ccode\u003eON COMMIT DELETE ROWS\u003c/code\u003e (Noah Misch) \u003ca href=\"https://postgr.es/c/a61b67cd0\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"14.18-fc90ad8d130d1aa5","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":"Avoid error when resetting the relhassubclass flag of a temporary table that's marked ON COMMIT DELETE ROWS","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":"Avoid error when resetting the relhassubclass flag of a temporary table that's marked ON COMMIT DELETE ROWS","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/#id-1.11.6.12.5","title":"Avoid error when resetting the relhassubclass flag of a temporary table that's marked ON COMMIT DELETE ROWS","url":"/docs/compare/?release=15.13#15.13-aeab43b9af8c9591","version":"15.13"},{"db_id":"efa1ed5e465f24cd978e2e5f6a028f46","evidence":{"patch_ids":["094a862179c0b39d921a9e561fa15870"],"same_day":true,"statement_hash":"6a67c492f1ab19533dfcea2a041a797a78f234546ded977e8443af5eed897716"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Avoid error when resetting the relhassubclass flag of a temporary table that's marked ON COMMIT DELETE ROWS","url":"/docs/compare/?release=13.21#13.21-23bb14178943d8c3","version":"13.21"}],"relations":[{"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"},{"evidence":{"patch_ids":["094a862179c0b39d921a9e561fa15870"],"same_day":true,"statement_hash":"6a67c492f1ab19533dfcea2a041a797a78f234546ded977e8443af5eed897716"},"rule":2,"target":"efa1ed5e465f24cd978e2e5f6a028f46","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["a61b67cd0"],"source_entry_id":"14.18/changes/011","source_hash":"110b6d82e5e1ddeb25f7ea0f7b0d263dfd1d34c807790faba135057572970352","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"6a67c492f1ab19533dfcea2a041a797a78f234546ded977e8443af5eed897716","text":"Avoid error when resetting the relhassubclass flag of a temporary table that's marked ON COMMIT DELETE ROWS (Noah Misch) §","title":"Avoid error when resetting the relhassubclass flag of a temporary table that's marked ON COMMIT DELETE ROWS","variants":[],"version":"14.18"},{"also_in":[],"category":"bugfix","category_label":"Bug fixes","commit_aliases":["5672a8399","5a0840b76","a7f213b11","b136db07c","b68f664bb"],"commit_groups":[["5672a8399","5a0840b76","a7f213b11","b136db07c","b68f664bb"]],"commits":["b68f664bb"],"cves":[],"db_id":"66f870b5ef1cd244a3b518e906ac9cd2","html":"\u003cp\u003eFix planner's failure to identify more than one hashable ScalarArrayOpExpr subexpression within a top-level expression (David Geier) \u003ca href=\"https://postgr.es/c/b68f664bb\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis resulted in unnecessarily-inefficient execution of any additional subexpressions that could have been processed with a hash table (that is, \u003ccode\u003eIN\u003c/code\u003e, \u003ccode\u003eNOT IN\u003c/code\u003e, or \u003ccode\u003e= ANY\u003c/code\u003e clauses with all-constant right-hand sides).\u003c/p\u003e","id":"14.18-29258c00393168bc","identity_text":"Fix planner's failure to identify more than one hashable ScalarArrayOpExpr subexpression within a top-level expression (David Geier) This resulted in unnecessarily-inefficient execution of any additional subexpressions that could have been processed with a hash table (that is, IN, NOT IN, or = ANY clauses with all-constant right-hand sides).","part":"changes","patch_ids":["7715be38dbf205b60f1999a58eaaafa5"],"related_changes":[{"db_id":"c150b87872d0c81d516fa614daf2b7d7","evidence":{"patch_ids":["7715be38dbf205b60f1999a58eaaafa5"],"same_day":true,"statement_hash":"ebfd648fd24c795f3956756f7b503d27494bb599defa7b236acca07321b7d437"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"Fix planner's failure to identify more than one hashable ScalarArrayOpExpr subexpression within a top-level expression","url":"/docs/compare/?release=17.5#17.5-72f6f2b7819f75e2","version":"17.5"},{"db_id":"112b9b34138b4b2bd64079c8b58a28f4","evidence":{"patch_ids":["7715be38dbf205b60f1999a58eaaafa5"],"same_day":true,"statement_hash":"ebfd648fd24c795f3956756f7b503d27494bb599defa7b236acca07321b7d437"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"Fix planner's failure to identify more than one hashable ScalarArrayOpExpr subexpression within a top-level expression","url":"/docs/compare/?release=16.9#16.9-2d186c53852fc3ec","version":"16.9"},{"db_id":"e34f77635f11982d50f3bce9f2835399","evidence":{"patch_ids":["7715be38dbf205b60f1999a58eaaafa5"],"same_day":true,"statement_hash":"ebfd648fd24c795f3956756f7b503d27494bb599defa7b236acca07321b7d437"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#id-1.11.6.12.5","title":"Fix planner's failure to identify more than one hashable ScalarArrayOpExpr subexpression within a top-level expression","url":"/docs/compare/?release=15.13#15.13-157a0b9b63a2cd20","version":"15.13"}],"relations":[{"evidence":{"patch_ids":["7715be38dbf205b60f1999a58eaaafa5"],"same_day":true,"statement_hash":"ebfd648fd24c795f3956756f7b503d27494bb599defa7b236acca07321b7d437"},"rule":2,"target":"112b9b34138b4b2bd64079c8b58a28f4","type":"equivalent"},{"evidence":{"patch_ids":["7715be38dbf205b60f1999a58eaaafa5"],"same_day":true,"statement_hash":"ebfd648fd24c795f3956756f7b503d27494bb599defa7b236acca07321b7d437"},"rule":2,"target":"c150b87872d0c81d516fa614daf2b7d7","type":"equivalent"},{"evidence":{"patch_ids":["7715be38dbf205b60f1999a58eaaafa5"],"same_day":true,"statement_hash":"ebfd648fd24c795f3956756f7b503d27494bb599defa7b236acca07321b7d437"},"rule":2,"target":"e34f77635f11982d50f3bce9f2835399","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["b68f664bb"],"source_entry_id":"14.18/changes/012","source_hash":"0f6bb25683f4361129374a4c2e051707ef3fa9f756d983b62d8f9995ec0e6e4d","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"ebfd648fd24c795f3956756f7b503d27494bb599defa7b236acca07321b7d437","text":"Fix planner's failure to identify more than one hashable ScalarArrayOpExpr subexpression within a top-level expression (David Geier) § This resulted in unnecessarily-inefficient execution of any additional subexpressions that could have been processed with a hash table (that is, IN, NOT IN, or = ANY clauses with all-constant right-hand sides).","title":"Fix planner's failure to identify more than one hashable ScalarArrayOpExpr subexpression within a top-level expression","variants":[],"version":"14.18"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["459e7bf8e","4934d3875","77d90d6d6","78cb2466f","980727b84","b9ec8125d"],"commit_groups":[["459e7bf8e","4934d3875","77d90d6d6","78cb2466f","980727b84","b9ec8125d"]],"commits":["4934d3875"],"cves":[],"db_id":"5b84c530a1833db604577188570826f0","html":"\u003cp\u003eDisable \u003cspan\u003e“\u003cspan\u003eskip fetch\u003c/span\u003e”\u003c/span\u003e optimization in bitmap heap scan (Matthias van de Meent) \u003ca href=\"https://postgr.es/c/4934d3875\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eIt turns out that this optimization can result in returning dead tuples when a concurrent vacuum marks a page all-visible.\u003c/p\u003e","id":"14.18-7fee35a12ed31c20","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":"Disable “skip fetch” optimization in bitmap heap scan","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":"Disable “skip fetch” optimization in bitmap heap scan","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/#id-1.11.6.12.5","title":"Disable “skip fetch” optimization in bitmap heap scan","url":"/docs/compare/?release=15.13#15.13-0fcfc7db639b5e6d","version":"15.13"},{"db_id":"aad339e7e9006b00a0a084b4f930d309","evidence":{"patch_ids":["24bd9f8c7d1c77a2c13ebf151d4f8c78"],"same_day":true,"statement_hash":"8f4cf3b56c19d886317615b5f6a44c5d0e2b2b6a87c82a344367ba093f15aa67"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Disable “skip fetch” optimization in bitmap heap scan","url":"/docs/compare/?release=13.21#13.21-a23918277d20303c","version":"13.21"}],"relations":[{"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":"aad339e7e9006b00a0a084b4f930d309","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":"Changes","section_path":["Changes"],"source_commits":["4934d3875"],"source_entry_id":"14.18/changes/013","source_hash":"425a6c9ad0ce11fbe7a5632f01a7eec98214a639c5f1b8edd07ea4d93be637c6","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"8f4cf3b56c19d886317615b5f6a44c5d0e2b2b6a87c82a344367ba093f15aa67","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.","title":"Disable “skip fetch” optimization in bitmap heap scan","variants":[],"version":"14.18"},{"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":["1b47a112a","e2a6934a8"],"cves":[],"db_id":"1ab0dec254a916d8527a62996788c2ae","html":"\u003cp\u003eFix performance issues in GIN index search startup when there are many search keys (Tom Lane, Vinod Sridharan) \u003ca href=\"https://postgr.es/c/e2a6934a8\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/1b47a112a\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eAn indexable clause with many keys (for example, \u003ccode\u003ejsonbcol ?| array[...]\u003c/code\u003e with tens of thousands of array elements) took O(N\u003csup\u003e2\u003c/sup\u003e) time to start up, and was uncancelable for that interval too.\u003c/p\u003e","id":"14.18-84519914d6f02e17","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":"Fix performance issues in GIN index search startup when there are many search keys","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":"Fix performance issues in GIN index search startup when there are many search keys","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/#id-1.11.6.12.5","title":"Fix performance issues in GIN index search startup when there are many search keys","url":"/docs/compare/?release=15.13#15.13-2d5e284461370519","version":"15.13"},{"db_id":"e9ec96a7119ad1ceca446c7f063da569","evidence":{"patch_ids":["de4829b5fcffd69ee19e71256ee340b9","ec9c3e41474954f7fb3b16769b3eaf5f"],"same_day":true,"statement_hash":"93737b3baf31ce844a14e13d2cb447939c4de0b0f6567d19e55d971b065c60b0"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Fix performance issues in GIN index search startup when there are many search keys","url":"/docs/compare/?release=13.21#13.21-8e25b16da69e5339","version":"13.21"}],"relations":[{"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"},{"evidence":{"patch_ids":["de4829b5fcffd69ee19e71256ee340b9","ec9c3e41474954f7fb3b16769b3eaf5f"],"same_day":true,"statement_hash":"93737b3baf31ce844a14e13d2cb447939c4de0b0f6567d19e55d971b065c60b0"},"rule":2,"target":"e9ec96a7119ad1ceca446c7f063da569","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["1b47a112a","e2a6934a8"],"source_entry_id":"14.18/changes/014","source_hash":"600e6c7c2be370d50d0fc78e60a1f23a71d8f7c1f56fa7ef4dfc0e8bfa6f44dd","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"93737b3baf31ce844a14e13d2cb447939c4de0b0f6567d19e55d971b065c60b0","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.","title":"Fix performance issues in GIN index search startup when there are many search keys","variants":[],"version":"14.18"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["17ce344f8","5144e1f8f","5d8c58800","ade976f8b","e0d8f49a3","f5b4a0b49"],"commit_groups":[["17ce344f8","5144e1f8f","5d8c58800","ade976f8b","e0d8f49a3","f5b4a0b49"]],"commits":["5144e1f8f"],"cves":[],"db_id":"07795445e3fa35543669ce4ac06e9c03","html":"\u003cp\u003eDetect missing support procedures in a BRIN index operator class, and report an error instead of crashing (Álvaro Herrera) \u003ca href=\"https://postgr.es/c/5144e1f8f\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"14.18-c82d8eee5284ac1f","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":"Detect missing support procedures in a BRIN index operator class, and report an error instead of crashing","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":"Detect missing support procedures in a BRIN index operator class, and report an error instead of crashing","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/#id-1.11.6.12.5","title":"Detect missing support procedures in a BRIN index operator class, and report an error instead of crashing","url":"/docs/compare/?release=15.13#15.13-b46b133391a86774","version":"15.13"},{"db_id":"5013f22cc83ed83185fae40ec6f85d0c","evidence":{"patch_ids":["a6ad3f27f4898d4cf7e1f8d5714f4623"],"same_day":true,"statement_hash":"434633f2d6ebbae84da60c5fa9e653325724888f4ced50a9c929141223e20276"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Detect missing support procedures in a BRIN index operator class, and report an error instead of crashing","url":"/docs/compare/?release=13.21#13.21-96cb58bb59f0ca93","version":"13.21"}],"relations":[{"evidence":{"patch_ids":["a6ad3f27f4898d4cf7e1f8d5714f4623"],"same_day":true,"statement_hash":"434633f2d6ebbae84da60c5fa9e653325724888f4ced50a9c929141223e20276"},"rule":2,"target":"5013f22cc83ed83185fae40ec6f85d0c","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":"Changes","section_path":["Changes"],"source_commits":["5144e1f8f"],"source_entry_id":"14.18/changes/015","source_hash":"324a56d338e71ab82467dd643112c44a6eb06f99a784eb4e13190c85c4666d76","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"434633f2d6ebbae84da60c5fa9e653325724888f4ced50a9c929141223e20276","text":"Detect missing support procedures in a BRIN index operator class, and report an error instead of crashing (Álvaro Herrera) §","title":"Detect missing support procedures in a BRIN index operator class, and report an error instead of crashing","variants":[],"version":"14.18"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["004dbbd72","af717317a","d2fb076be","d4d34c08c","e731e9d5e"],"commit_groups":[["004dbbd72","af717317a","d2fb076be","d4d34c08c","e731e9d5e"]],"commits":["d2fb076be"],"cves":[],"db_id":"f96c8bb00838600eb0266dddb8c5497e","html":"\u003cp\u003eRespond to interrupts (such as query cancel) while waiting for asynchronous subplans of an Append plan node (Heikki Linnakangas) \u003ca href=\"https://postgr.es/c/d2fb076be\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003ePreviously, nothing would happen until one of the subplans becomes ready.\u003c/p\u003e","id":"14.18-ebb42881c8090b7d","identity_text":"Respond to interrupts (such as query cancel) while waiting for asynchronous subplans of an Append plan node (Heikki Linnakangas) Previously, nothing would happen until one of the subplans becomes ready.","part":"changes","patch_ids":["c064a1921c86b2d8f990d5d2c678cf3f"],"related_changes":[{"db_id":"bc6275afdb9fe4237e597f5a8a0f7d1e","evidence":{"patch_ids":["c064a1921c86b2d8f990d5d2c678cf3f"],"same_day":true,"statement_hash":"f35a3ca56391c5cc0085b028fe9770aec4c6158b8a3e85b4f85a689282d9f1c3"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"Respond to interrupts (such as query cancel) while waiting for asynchronous subplans of an Append plan node","url":"/docs/compare/?release=17.5#17.5-3b760fb385f5b7f6","version":"17.5"},{"db_id":"266ac90fa5b9b2152af01edeb08fb5b7","evidence":{"patch_ids":["c064a1921c86b2d8f990d5d2c678cf3f"],"same_day":true,"statement_hash":"f35a3ca56391c5cc0085b028fe9770aec4c6158b8a3e85b4f85a689282d9f1c3"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"Respond to interrupts (such as query cancel) while waiting for asynchronous subplans of an Append plan node","url":"/docs/compare/?release=16.9#16.9-43771120e2df4821","version":"16.9"},{"db_id":"f65f31a24c7b824da5419e0fce1173eb","evidence":{"patch_ids":["c064a1921c86b2d8f990d5d2c678cf3f"],"same_day":true,"statement_hash":"f35a3ca56391c5cc0085b028fe9770aec4c6158b8a3e85b4f85a689282d9f1c3"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#id-1.11.6.12.5","title":"Respond to interrupts (such as query cancel) while waiting for asynchronous subplans of an Append plan node","url":"/docs/compare/?release=15.13#15.13-e2829c92cb9c1878","version":"15.13"}],"relations":[{"evidence":{"patch_ids":["c064a1921c86b2d8f990d5d2c678cf3f"],"same_day":true,"statement_hash":"f35a3ca56391c5cc0085b028fe9770aec4c6158b8a3e85b4f85a689282d9f1c3"},"rule":2,"target":"266ac90fa5b9b2152af01edeb08fb5b7","type":"equivalent"},{"evidence":{"patch_ids":["c064a1921c86b2d8f990d5d2c678cf3f"],"same_day":true,"statement_hash":"f35a3ca56391c5cc0085b028fe9770aec4c6158b8a3e85b4f85a689282d9f1c3"},"rule":2,"target":"bc6275afdb9fe4237e597f5a8a0f7d1e","type":"equivalent"},{"evidence":{"patch_ids":["c064a1921c86b2d8f990d5d2c678cf3f"],"same_day":true,"statement_hash":"f35a3ca56391c5cc0085b028fe9770aec4c6158b8a3e85b4f85a689282d9f1c3"},"rule":2,"target":"f65f31a24c7b824da5419e0fce1173eb","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["d2fb076be"],"source_entry_id":"14.18/changes/016","source_hash":"1f0a3316a136636e298185c39cdc3f8dbe0c805065816a5e6d6b0aaa28388ac3","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"f35a3ca56391c5cc0085b028fe9770aec4c6158b8a3e85b4f85a689282d9f1c3","text":"Respond to interrupts (such as query cancel) while waiting for asynchronous subplans of an Append plan node (Heikki Linnakangas) § Previously, nothing would happen until one of the subplans becomes ready.","title":"Respond to interrupts (such as query cancel) while waiting for asynchronous subplans of an Append plan node","variants":[],"version":"14.18"},{"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":["873aff945"],"cves":[],"db_id":"9b50aea034b0d7075666b593cc8d7a51","html":"\u003cp\u003eFix race condition in handling of \u003ccode\u003esynchronous_standby_names\u003c/code\u003e immediately after startup (Melnikov Maksim, Michael Paquier) \u003ca href=\"https://postgr.es/c/873aff945\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eFor a short period after system startup, backends might fail to wait for synchronous commit even though \u003ccode\u003esynchronous_standby_names\u003c/code\u003e is enabled.\u003c/p\u003e","id":"14.18-5c3390e2c8ae7fd4","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":"Fix race condition in handling of synchronous_standby_names immediately after startup","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":"Fix race condition in handling of synchronous_standby_names immediately after startup","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/#id-1.11.6.12.5","title":"Fix race condition in handling of synchronous_standby_names immediately after startup","url":"/docs/compare/?release=15.13#15.13-bcea9256969a7e79","version":"15.13"},{"db_id":"f619fee730a419517f64c1c847ade820","evidence":{"patch_ids":["b2c5c57c59d2226fd83183d134c26bfb"],"same_day":true,"statement_hash":"1bff9c7be1dcaac9e45a1e59931ceb888f07976bdf3e98fa0402ce01d5069e14"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Fix race condition in handling of synchronous_standby_names immediately after startup","url":"/docs/compare/?release=13.21#13.21-3cf6ae8c0b81ee2a","version":"13.21"}],"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":"9daf50395d2f4aead8175d388ace78ce","type":"equivalent"},{"evidence":{"patch_ids":["b2c5c57c59d2226fd83183d134c26bfb"],"same_day":true,"statement_hash":"1bff9c7be1dcaac9e45a1e59931ceb888f07976bdf3e98fa0402ce01d5069e14"},"rule":2,"target":"dfb958de881085e4bc9b09b3e0e8e2ad","type":"equivalent"},{"evidence":{"patch_ids":["b2c5c57c59d2226fd83183d134c26bfb"],"same_day":true,"statement_hash":"1bff9c7be1dcaac9e45a1e59931ceb888f07976bdf3e98fa0402ce01d5069e14"},"rule":2,"target":"f619fee730a419517f64c1c847ade820","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["873aff945"],"source_entry_id":"14.18/changes/017","source_hash":"be0a8e128b5d64c31fa84fb16cff475e432939223ac5996efe7d0fc7e9247356","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"1bff9c7be1dcaac9e45a1e59931ceb888f07976bdf3e98fa0402ce01d5069e14","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.","title":"Fix race condition in handling of synchronous_standby_names immediately after startup","variants":[],"version":"14.18"},{"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":["76fbb38ef"],"cves":[],"db_id":"291c1b10af654d11c4f58eca3ba7f03a","html":"\u003cp\u003eFix \u003ccode\u003epg_strtof()\u003c/code\u003e to not crash with null endptr (Alexander Lakhin, Tom Lane) \u003ca href=\"https://postgr.es/c/76fbb38ef\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"14.18-faecb4df8b710ad1","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":"Fix pg_strtof() to not crash with null 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":"Fix pg_strtof() to not crash with null 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/#id-1.11.6.12.5","title":"Fix pg_strtof() to not crash with null endptr","url":"/docs/compare/?release=15.13#15.13-3832bc9bcdef8ae6","version":"15.13"},{"db_id":"ccd517602e74f9b689358e51afeece0f","evidence":{"patch_ids":["cf60307fd4303d87ba2e2b826fe85843"],"same_day":true,"statement_hash":"6f00ddb45ac2f0ee4d0f0c3be7297735b4cbfce76dda50a1e9284695b618f980"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Fix pg_strtof() to not crash with null endptr","url":"/docs/compare/?release=13.21#13.21-7c56dbb1dfbb40f8","version":"13.21"}],"relations":[{"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"},{"evidence":{"patch_ids":["cf60307fd4303d87ba2e2b826fe85843"],"same_day":true,"statement_hash":"6f00ddb45ac2f0ee4d0f0c3be7297735b4cbfce76dda50a1e9284695b618f980"},"rule":2,"target":"ccd517602e74f9b689358e51afeece0f","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["76fbb38ef"],"source_entry_id":"14.18/changes/018","source_hash":"8fbfce31e12c206e25f6031bdfa282aaf3141d195ee8352e8e76df58bc7d1dc7","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"6f00ddb45ac2f0ee4d0f0c3be7297735b4cbfce76dda50a1e9284695b618f980","text":"Fix pg_strtof() to not crash with null endptr (Alexander Lakhin, Tom Lane) §","title":"Fix pg_strtof() to not crash with null endptr","variants":[],"version":"14.18"},{"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":["8388cae55"],"cves":[],"db_id":"d6bf0f560b8ac8cad3c1d6a070b45594","html":"\u003cp\u003eAvoid crash when a Snowball stemmer encounters an out-of-memory condition (Maksim Korotkov) \u003ca href=\"https://postgr.es/c/8388cae55\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"14.18-813abffbc8584526","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":"Add full text search stemming for Estonian","url":"/docs/compare/?release=18.0#18.0-5f1391509757dd6d","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":"Avoid crash when a Snowball stemmer encounters an out-of-memory condition","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":"Avoid crash when a Snowball stemmer encounters an out-of-memory condition","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/#id-1.11.6.12.5","title":"Avoid crash when a Snowball stemmer encounters an out-of-memory condition","url":"/docs/compare/?release=15.13#15.13-6fa1c30b53ef4a7a","version":"15.13"},{"db_id":"43dbc69a435522e8a12bbf37193bcbca","evidence":{"patch_ids":["d20fbffc83ee90d1348f1d03836b8f18"],"same_day":true,"statement_hash":"6c8d8c6f1cd71c3e595998d2cabe403f95a5078a14911e8bf0245a28e047a7c5"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Avoid crash when a Snowball stemmer encounters an out-of-memory condition","url":"/docs/compare/?release=13.21#13.21-7de382d5402e6e82","version":"13.21"}],"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":"43dbc69a435522e8a12bbf37193bcbca","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":"fe6fa87c7f7a2f01e5226fc8b75d4395","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["8388cae55"],"source_entry_id":"14.18/changes/019","source_hash":"c99cd28c162609da1f05d97e7d8e5f309ac48c54654911f39ddd4cf85ff85868","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"6c8d8c6f1cd71c3e595998d2cabe403f95a5078a14911e8bf0245a28e047a7c5","text":"Avoid crash when a Snowball stemmer encounters an out-of-memory condition (Maksim Korotkov) §","title":"Avoid crash when a Snowball stemmer encounters an out-of-memory condition","variants":[],"version":"14.18"},{"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":["014a50800","3635a0a35","47d2d2982","675b771ca","6b168c129","8967dddf0","b494640e8"],"cves":[],"db_id":"726b7a7b03842bf8479c5717753b7eab","html":"\u003cp\u003eSkip WAL recycling and preallocation during archive recovery, to avoid corruption of WAL files that were restored from the archive (Noah Misch, Arun Thirupathi) \u003ca href=\"https://postgr.es/c/3635a0a35\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/014a50800\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/675b771ca\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/b494640e8\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/8967dddf0\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/6b168c129\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/47d2d2982\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis 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.\u003c/p\u003e","id":"14.18-bd1a7105f7b974d5","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":"b842d35812fd4dccc20e10f02d02054b","evidence":{"patch_ids":["1bd30e735049752d222fed282133803b","25f05f737eb4cd25dd48075af25822bf","365ae5d7e204f6fbf63eb8c1a697bf19","3852e89dc35d895ed63430872e57871a","8b4cd2f73a31dedce996842d8b5326fa","e0a697951b2b92108b28bf1a3da663b3","e86ac1d3bb0f3ec5a6522d0d1efdb714"],"same_day":true,"statement_hash":"8d1c9d897734cf8ca6c18af8760a9dce3701be4fa1830f5f413fe7055d4ea717"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Skip WAL recycling and preallocation during archive recovery, to avoid corruption of WAL files that were restored from the archive","url":"/docs/compare/?release=13.21#13.21-9b87d7de8c25c3f0","version":"13.21"}],"relations":[{"evidence":{"patch_ids":["1bd30e735049752d222fed282133803b","25f05f737eb4cd25dd48075af25822bf","365ae5d7e204f6fbf63eb8c1a697bf19","3852e89dc35d895ed63430872e57871a","8b4cd2f73a31dedce996842d8b5326fa","e0a697951b2b92108b28bf1a3da663b3","e86ac1d3bb0f3ec5a6522d0d1efdb714"],"same_day":true,"statement_hash":"8d1c9d897734cf8ca6c18af8760a9dce3701be4fa1830f5f413fe7055d4ea717"},"rule":2,"target":"b842d35812fd4dccc20e10f02d02054b","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["014a50800","3635a0a35","47d2d2982","675b771ca","6b168c129","8967dddf0","b494640e8"],"source_entry_id":"14.18/changes/020","source_hash":"c8b37ae8cd23778dfcd432fa5ef6c4e13a635b050b0fef4eff417280840a44ee","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"8d1c9d897734cf8ca6c18af8760a9dce3701be4fa1830f5f413fe7055d4ea717","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.","title":"Skip WAL recycling and preallocation during archive recovery, to avoid corruption of WAL files that were restored from the archive","variants":[],"version":"14.18"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["1f63b3626","21a7caeeb","36148b22e","aaf9e95e8","d65485b02","f6429bd7d"],"commit_groups":[["1f63b3626","21a7caeeb","36148b22e","aaf9e95e8","d65485b02","f6429bd7d"]],"commits":["1f63b3626"],"cves":[],"db_id":"3ab082e1dcff51c82a077f2f62e6407c","html":"\u003cp\u003ePrevent over-advancement of catalog xmin in \u003cspan\u003e“\u003cspan\u003efast forward\u003c/span\u003e”\u003c/span\u003e mode of logical decoding (Zhijie Hou) \u003ca href=\"https://postgr.es/c/1f63b3626\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis mistake could allow deleted catalog entries to be vacuumed away even though they were still potentially needed by the WAL-reading process.\u003c/p\u003e","id":"14.18-bec28c31b4951bab","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":"Prevent over-advancement of catalog xmin in “fast forward” mode of logical decoding","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":"Prevent over-advancement of catalog xmin in “fast forward” mode of logical decoding","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/#id-1.11.6.12.5","title":"Prevent over-advancement of catalog xmin in “fast forward” mode of logical decoding","url":"/docs/compare/?release=15.13#15.13-bb45c4bf697c7ebc","version":"15.13"},{"db_id":"57b3f47815396fdd9a70a193be305bf1","evidence":{"patch_ids":["c6475433b3466d0d333287697a22d76c"],"same_day":true,"statement_hash":"31124da856306a5fd3e362458ee2fb654f10aae3d57980427c12efefa655eb2a"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Prevent over-advancement of catalog xmin in “fast forward” mode of logical decoding","url":"/docs/compare/?release=13.21#13.21-0d96e68077e9aca8","version":"13.21"}],"relations":[{"evidence":{"patch_ids":["c6475433b3466d0d333287697a22d76c"],"same_day":true,"statement_hash":"31124da856306a5fd3e362458ee2fb654f10aae3d57980427c12efefa655eb2a"},"rule":2,"target":"57b3f47815396fdd9a70a193be305bf1","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":"Changes","section_path":["Changes"],"source_commits":["1f63b3626"],"source_entry_id":"14.18/changes/021","source_hash":"1038c15ac951c08269d434fea318f3070ccb842423589b2d2a562a27a49f7173","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"31124da856306a5fd3e362458ee2fb654f10aae3d57980427c12efefa655eb2a","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.","title":"Prevent over-advancement of catalog xmin in “fast forward” mode of logical decoding","variants":[],"version":"14.18"},{"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":["0434033e8","bb1bc9fa9"],"cves":[],"db_id":"f2d1d9e7b4a609d7869646462b740f14","html":"\u003cp\u003eAvoid data loss when DDL operations that don't take a strong lock affect tables that are being logically replicated (Shlok Kyal, Hayato Kuroda) \u003ca href=\"https://postgr.es/c/0434033e8\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/bb1bc9fa9\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThe 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.\u003c/p\u003e","id":"14.18-f53a16ec53117501","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":"Avoid data loss when DDL operations that don't take a strong lock affect tables that are being logically replicated","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":"Avoid data loss when DDL operations that don't take a strong lock affect tables that are being logically replicated","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/#id-1.11.6.12.5","title":"Avoid data loss when DDL operations that don't take a strong lock affect tables that are being logically replicated","url":"/docs/compare/?release=15.13#15.13-2f66029919c20aba","version":"15.13"},{"db_id":"ee4a2645d0b3d70cbf64253af5bf4bbd","evidence":{"patch_ids":["3b9707f5e94616c6b08bba7b727d1833","7aa92ec4c1375172371c770fad1e069d"],"same_day":true,"statement_hash":"5087b6eeaa58053beb4e5956f3a1760c3fdcd576933d1be27f37a897f9b40e9a"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Avoid data loss when DDL operations that don't take a strong lock affect tables that are being logically replicated","url":"/docs/compare/?release=13.21#13.21-c43037ec57336487","version":"13.21"}],"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":"ee4a2645d0b3d70cbf64253af5bf4bbd","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["0434033e8","bb1bc9fa9"],"source_entry_id":"14.18/changes/022","source_hash":"f02c67f05e20055aa7a389b5cdd43077274fb1d505a39936907123ad6e97d661","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"5087b6eeaa58053beb4e5956f3a1760c3fdcd576933d1be27f37a897f9b40e9a","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.","title":"Avoid data loss when DDL operations that don't take a strong lock affect tables that are being logically replicated","variants":[],"version":"14.18"},{"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":["136e68b46","2ef048855"],"cves":[],"db_id":"62d7ad831c6b591f2d8c9f0a041d221b","html":"\u003cp\u003eAvoid duplicate snapshot creation in logical replication index lookups (Heikki Linnakangas) \u003ca href=\"https://postgr.es/c/2ef048855\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/136e68b46\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"14.18-8a94534beb8d394b","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":"Avoid duplicate snapshot creation in logical replication index lookups","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":"Avoid duplicate snapshot creation in logical replication index lookups","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/#id-1.11.6.12.5","title":"Avoid duplicate snapshot creation in logical replication index lookups","url":"/docs/compare/?release=15.13#15.13-a7ab6f2ad8ceed1e","version":"15.13"},{"db_id":"27c56fefd26a3de8d757bbd085e3ccf7","evidence":{"patch_ids":["1adc95ac621663bc7fa51f18ad33a68d","809047aed79be0ed50900ccbf42f80fa"],"same_day":true,"statement_hash":"16fba735d9e2dacfd355019baedc5bac39309c551378ee63052a10c4debdade9"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Avoid duplicate snapshot creation in logical replication index lookups","url":"/docs/compare/?release=13.21#13.21-b909fdf92799340c","version":"13.21"}],"relations":[{"evidence":{"patch_ids":["1adc95ac621663bc7fa51f18ad33a68d","809047aed79be0ed50900ccbf42f80fa"],"same_day":true,"statement_hash":"16fba735d9e2dacfd355019baedc5bac39309c551378ee63052a10c4debdade9"},"rule":2,"target":"27c56fefd26a3de8d757bbd085e3ccf7","type":"equivalent"},{"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":"68a6f444e2dd1111866e1692a09eaee9","type":"equivalent"},{"evidence":{"patch_ids":["1adc95ac621663bc7fa51f18ad33a68d","809047aed79be0ed50900ccbf42f80fa"],"same_day":true,"statement_hash":"16fba735d9e2dacfd355019baedc5bac39309c551378ee63052a10c4debdade9"},"rule":2,"target":"c4856066739f35020574380d1ebe619e","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["136e68b46","2ef048855"],"source_entry_id":"14.18/changes/023","source_hash":"83f785a172515beb275482cda166e2227b2dd509dbd5ebc0f3cc039e83868024","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"16fba735d9e2dacfd355019baedc5bac39309c551378ee63052a10c4debdade9","text":"Avoid duplicate snapshot creation in logical replication index lookups (Heikki Linnakangas) § §","title":"Avoid duplicate snapshot creation in logical replication index lookups","variants":[],"version":"14.18"},{"also_in":[],"category":"bugfix","category_label":"Bug fixes","commit_aliases":["0f404c581","7be51eb4e"],"commit_groups":[["0f404c581","7be51eb4e"]],"commits":["7be51eb4e"],"cves":[],"db_id":"8c10e146eec8d58e822f99aad375b1fc","html":"\u003cp\u003eFix assertion failure in snapshot building (Masahiko Sawada) \u003ca href=\"https://postgr.es/c/7be51eb4e\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"14.18-6f83985ff3b5be82","identity_text":"Fix assertion failure in snapshot building (Masahiko Sawada)","part":"changes","patch_ids":["b7fcf2471858482da835ad63c73988e0"],"related_changes":[{"db_id":"bb3cd2aeb7508cecc34d22674c04cfce","evidence":{"patch_ids":["b7fcf2471858482da835ad63c73988e0"],"same_day":true,"statement_hash":"978d9fef615854e74284a20be4e4b29239b053483740c06da1e79a15dd4835ff"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#id-1.11.6.12.5","title":"Fix assertion failure in snapshot building","url":"/docs/compare/?release=15.13#15.13-b2f3f7b8005b2c50","version":"15.13"}],"relations":[{"evidence":{"patch_ids":["b7fcf2471858482da835ad63c73988e0"],"same_day":true,"statement_hash":"978d9fef615854e74284a20be4e4b29239b053483740c06da1e79a15dd4835ff"},"rule":2,"target":"bb3cd2aeb7508cecc34d22674c04cfce","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["7be51eb4e"],"source_entry_id":"14.18/changes/024","source_hash":"3880b4d9bc067aca564c99fc2caf3fd165090ac5744a761e92bf2467205189c5","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"978d9fef615854e74284a20be4e4b29239b053483740c06da1e79a15dd4835ff","text":"Fix assertion failure in snapshot building (Masahiko Sawada) §","title":"Fix assertion failure in snapshot building","variants":[],"version":"14.18"},{"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":["a749c6f18"],"cves":[],"db_id":"27a1adb1cdf9f664d38d47c14da8e9a1","html":"\u003cp\u003eFix overly-strict assertion in \u003ccode\u003egistFindCorrectParent()\u003c/code\u003e (Heikki Linnakangas) \u003ca href=\"https://postgr.es/c/a749c6f18\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"14.18-6a368ff09e31fc48","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":"Fix overly-strict assertion in 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":"Fix overly-strict assertion in 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/#id-1.11.6.12.5","title":"Fix overly-strict assertion in gistFindCorrectParent()","url":"/docs/compare/?release=15.13#15.13-62cae577b4df954b","version":"15.13"},{"db_id":"e6d6bd528a6a18567eddf6d6d0bd348d","evidence":{"patch_ids":["0fbdfd9512143481ddba29600dae91de"],"same_day":true,"statement_hash":"7991ac5c15dda3f769161967c88693ea957ab1e582f1ecb61df8823d0f1d4f43"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Fix overly-strict assertion in gistFindCorrectParent()","url":"/docs/compare/?release=13.21#13.21-43c27eaaeb1d9bf4","version":"13.21"}],"relations":[{"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"},{"evidence":{"patch_ids":["0fbdfd9512143481ddba29600dae91de"],"same_day":true,"statement_hash":"7991ac5c15dda3f769161967c88693ea957ab1e582f1ecb61df8823d0f1d4f43"},"rule":2,"target":"e6d6bd528a6a18567eddf6d6d0bd348d","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["a749c6f18"],"source_entry_id":"14.18/changes/025","source_hash":"f2aa624741c1ba916ae4e9b6edbaa7d4cb40eae64326daeeddc5f660d85937db","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"7991ac5c15dda3f769161967c88693ea957ab1e582f1ecb61df8823d0f1d4f43","text":"Fix overly-strict assertion in gistFindCorrectParent() (Heikki Linnakangas) §","title":"Fix overly-strict assertion in gistFindCorrectParent()","variants":[],"version":"14.18"},{"also_in":[],"category":"bugfix","category_label":"Bug fixes","commit_aliases":["2817525f0","2f33de3cd","302ce5bd9","66235baab","b30c77a0e"],"commit_groups":[["2817525f0","2f33de3cd","302ce5bd9","66235baab","b30c77a0e"]],"commits":["66235baab"],"cves":[],"db_id":"92378c11f17a7de0c034937e90f5f438","html":"\u003cp\u003eFix rare assertion failure in standby servers when the primary is restarted (Heikki Linnakangas) \u003ca href=\"https://postgr.es/c/66235baab\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"14.18-c0e9cfa3a39cfe3a","identity_text":"Fix rare assertion failure in standby servers when the primary is restarted (Heikki Linnakangas)","part":"changes","patch_ids":["9563520801fea9e205ae16e82ea7855b"],"related_changes":[{"db_id":"2e5dab43fa75fedfa20b60368b606121","evidence":{"patch_ids":["9563520801fea9e205ae16e82ea7855b"],"same_day":true,"statement_hash":"e03ba0b3fc8a8995594cd92902313647f941a8d013faea0b71e91ba7c6dcbd47"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"Fix rare assertion failure in standby servers when the primary is restarted","url":"/docs/compare/?release=17.5#17.5-aad4bd1803b8b133","version":"17.5"},{"db_id":"b243add7e25b9349d3df07b8524bbb10","evidence":{"patch_ids":["9563520801fea9e205ae16e82ea7855b"],"same_day":true,"statement_hash":"e03ba0b3fc8a8995594cd92902313647f941a8d013faea0b71e91ba7c6dcbd47"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"Fix rare assertion failure in standby servers when the primary is restarted","url":"/docs/compare/?release=16.9#16.9-d4a51d0e3bd64212","version":"16.9"},{"db_id":"66b073699b174d84b287cd5ba0bb5c0b","evidence":{"patch_ids":["9563520801fea9e205ae16e82ea7855b"],"same_day":true,"statement_hash":"e03ba0b3fc8a8995594cd92902313647f941a8d013faea0b71e91ba7c6dcbd47"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#id-1.11.6.12.5","title":"Fix rare assertion failure in standby servers when the primary is restarted","url":"/docs/compare/?release=15.13#15.13-a5839a410d8f1699","version":"15.13"}],"relations":[{"evidence":{"patch_ids":["9563520801fea9e205ae16e82ea7855b"],"same_day":true,"statement_hash":"e03ba0b3fc8a8995594cd92902313647f941a8d013faea0b71e91ba7c6dcbd47"},"rule":2,"target":"2e5dab43fa75fedfa20b60368b606121","type":"equivalent"},{"evidence":{"patch_ids":["9563520801fea9e205ae16e82ea7855b"],"same_day":true,"statement_hash":"e03ba0b3fc8a8995594cd92902313647f941a8d013faea0b71e91ba7c6dcbd47"},"rule":2,"target":"66b073699b174d84b287cd5ba0bb5c0b","type":"equivalent"},{"evidence":{"patch_ids":["9563520801fea9e205ae16e82ea7855b"],"same_day":true,"statement_hash":"e03ba0b3fc8a8995594cd92902313647f941a8d013faea0b71e91ba7c6dcbd47"},"rule":2,"target":"b243add7e25b9349d3df07b8524bbb10","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["66235baab"],"source_entry_id":"14.18/changes/026","source_hash":"c5eaaaeea4cc2b1ea8af89e186fc6c66c2bd4466ed2eda62fe2dfe6bd6b6b92b","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"e03ba0b3fc8a8995594cd92902313647f941a8d013faea0b71e91ba7c6dcbd47","text":"Fix rare assertion failure in standby servers when the primary is restarted (Heikki Linnakangas) §","title":"Fix rare assertion failure in standby servers when the primary is restarted","variants":[],"version":"14.18"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["0f60e1fba","1353b1161","5e56efa7c","7fe312f60","a28c1fb61","c196c610b"],"commit_groups":[["0f60e1fba","1353b1161","5e56efa7c","7fe312f60","a28c1fb61","c196c610b"]],"commits":["c196c610b"],"cves":[],"db_id":"3e2662777ac979f38f4588bb5b04a2d3","html":"\u003cp\u003eIn PL/pgSQL, avoid \u003cspan\u003e“\u003cspan\u003eunexpected plan node type\u003c/span\u003e”\u003c/span\u003e error when a scrollable cursor is defined on a simple \u003ccode\u003eSELECT \u003cem\u003e\u003ccode\u003eexpression\u003c/code\u003e\u003c/em\u003e\u003c/code\u003e query (Andrei Lepikhov) \u003ca href=\"https://postgr.es/c/c196c610b\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"14.18-d202fbcf25295587","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":"In PL/pgSQL, avoid “unexpected plan node type” error when a scrollable cursor is defined on a simple SELECT expression query","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":"In PL/pgSQL, avoid “unexpected plan node type” error when a scrollable cursor is defined on a simple SELECT expression query","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/#id-1.11.6.12.5","title":"In PL/pgSQL, avoid “unexpected plan node type” error when a scrollable cursor is defined on a simple SELECT expression query","url":"/docs/compare/?release=15.13#15.13-4f40d70662d8882c","version":"15.13"},{"db_id":"7c6fc81e4da27ce44047105c6c5470d3","evidence":{"patch_ids":["f12a136931a2c9b85092405b258f239d"],"same_day":true,"statement_hash":"b4aad974b17bda0a76dd37ef72496e590fcabf2c46a61ba4894df2a3e4e60bf8"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"In PL/pgSQL, avoid “unexpected plan node type” error when a scrollable cursor is defined on a simple SELECT expression query","url":"/docs/compare/?release=13.21#13.21-3bd8b23d952a1816","version":"13.21"}],"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":"5d327155f21daa11c824f675329dd129","type":"equivalent"},{"evidence":{"patch_ids":["f12a136931a2c9b85092405b258f239d"],"same_day":true,"statement_hash":"b4aad974b17bda0a76dd37ef72496e590fcabf2c46a61ba4894df2a3e4e60bf8"},"rule":2,"target":"7c6fc81e4da27ce44047105c6c5470d3","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["c196c610b"],"source_entry_id":"14.18/changes/027","source_hash":"5b5a6df8edc0444e44786baaa817feefa169f5ab1a1e7bb9fd0eb9f8d8910d3d","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"b4aad974b17bda0a76dd37ef72496e590fcabf2c46a61ba4894df2a3e4e60bf8","text":"In PL/pgSQL, avoid “unexpected plan node type” error when a scrollable cursor is defined on a simple SELECT expression query (Andrei Lepikhov) §","title":"In PL/pgSQL, avoid “unexpected plan node type” error when a scrollable cursor is defined on a simple SELECT expression query","variants":[],"version":"14.18"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["148cc0105","1fc340362","3424c1075","6a3e57865","7144cd538","a25f21d99"],"commit_groups":[["148cc0105","1fc340362","3424c1075","6a3e57865","7144cd538","a25f21d99"]],"commits":["148cc0105"],"cves":[],"db_id":"d6903e20c3eee4fa2356e0d2b2c154d8","html":"\u003cp\u003eDon't try to drop individual index partitions in \u003cspan\u003epg_dump\u003c/span\u003e's \u003ccode\u003e--clean\u003c/code\u003e mode (Jian He) \u003ca href=\"https://postgr.es/c/148cc0105\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThe server rejects such \u003ccode\u003eDROP\u003c/code\u003e commands. That has no real consequences, since the partitions will go away anyway in the subsequent \u003ccode\u003eDROP\u003c/code\u003es of either their parent tables or their partitioned index. However, the error reported for the attempted drop causes problems when restoring in \u003ccode\u003e--single-transaction\u003c/code\u003e mode.\u003c/p\u003e","id":"14.18-a62c77db7183ddb7","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":"Don't try to drop individual index partitions in pg_dump's --clean mode","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":"Don't try to drop individual index partitions in pg_dump's --clean mode","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/#id-1.11.6.12.5","title":"Don't try to drop individual index partitions in pg_dump's --clean mode","url":"/docs/compare/?release=15.13#15.13-48059b5256fc8763","version":"15.13"},{"db_id":"42df3da7d8c6955067fbe63c28f79b7f","evidence":{"patch_ids":["9cc39f67b2112ad724d3dd4a32e53e3b"],"same_day":true,"statement_hash":"e67fba1cf484eebaf3c4c42d5ece9796503851f5392fb5c05c0952acff3b2b13"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Don't try to drop individual index partitions in pg_dump's --clean mode","url":"/docs/compare/?release=13.21#13.21-ae695bef185b433b","version":"13.21"}],"relations":[{"evidence":{"patch_ids":["9cc39f67b2112ad724d3dd4a32e53e3b"],"same_day":true,"statement_hash":"e67fba1cf484eebaf3c4c42d5ece9796503851f5392fb5c05c0952acff3b2b13"},"rule":2,"target":"42df3da7d8c6955067fbe63c28f79b7f","type":"equivalent"},{"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":"eb7b42e15648d7b8b3c440a7101915a2","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["148cc0105"],"source_entry_id":"14.18/changes/028","source_hash":"f1d51321972d6014659d1efc62f47a86c08dd6fa35ea5955b127d16193705141","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"e67fba1cf484eebaf3c4c42d5ece9796503851f5392fb5c05c0952acff3b2b13","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.","title":"Don't try to drop individual index partitions in pg_dump's --clean mode","variants":[],"version":"14.18"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["16eff4261","29d75b25b","5302ff95c","6df3be415","ce1475acd","d850a6600"],"commit_groups":[["16eff4261","29d75b25b","5302ff95c","6df3be415","ce1475acd","d850a6600"]],"commits":["ce1475acd"],"cves":[],"db_id":"592072835cdff737b256d67238063430","html":"\u003cp\u003eIn \u003cspan\u003epg_dumpall\u003c/span\u003e, avoid emitting invalid role \u003ccode\u003eGRANT\u003c/code\u003e commands if \u003ccode\u003epg_auth_members\u003c/code\u003e contains invalid role OIDs (Tom Lane) \u003ca href=\"https://postgr.es/c/ce1475acd\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eInstead, 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 \u003ccode\u003eGRANT\u003c/code\u003e and \u003ccode\u003eDROP ROLE\u003c/code\u003e.\u003c/p\u003e","id":"14.18-3480ee8713990fb4","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":"In pg_dumpall, avoid emitting invalid role GRANT commands if pg_auth_members contains invalid role OIDs","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":"In pg_dumpall, avoid emitting invalid role GRANT commands if pg_auth_members contains invalid role OIDs","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/#id-1.11.6.12.5","title":"In pg_dumpall, avoid emitting invalid role GRANT commands if pg_auth_members contains invalid role OIDs","url":"/docs/compare/?release=15.13#15.13-f1fceade151b6e7f","version":"15.13"},{"db_id":"037e06a9150261d4225482652afbae69","evidence":{"patch_ids":["f2b1be5bd5a37e4c2f6310eac9a9677e"],"same_day":true,"statement_hash":"6729e0781366fce928be3cedd2434b59ba0db94ff9e8f2492dfbca532d833f8a"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"In pg_dumpall, avoid emitting invalid role GRANT commands if pg_auth_members contains invalid role OIDs","url":"/docs/compare/?release=13.21#13.21-70bdf129a37d033e","version":"13.21"}],"relations":[{"evidence":{"patch_ids":["f2b1be5bd5a37e4c2f6310eac9a9677e"],"same_day":true,"statement_hash":"6729e0781366fce928be3cedd2434b59ba0db94ff9e8f2492dfbca532d833f8a"},"rule":2,"target":"037e06a9150261d4225482652afbae69","type":"equivalent"},{"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":"e29abb4009fe4358d8ffa797134f6858","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["ce1475acd"],"source_entry_id":"14.18/changes/029","source_hash":"98770146fd2e0269e098bca3440ee8c340f88d8fc2dd5b2982b659712c35efc4","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"6729e0781366fce928be3cedd2434b59ba0db94ff9e8f2492dfbca532d833f8a","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.","title":"In pg_dumpall, avoid emitting invalid role GRANT commands if pg_auth_members contains invalid role OIDs","variants":[],"version":"14.18"},{"also_in":[],"category":"bugfix","category_label":"Bug fixes","commit_aliases":["0851b6573","2a083ab80","35a591a04","48e4ae9a0","57467ec7b","816149dc6","945126234","9ca2145b0","ec741d480","ee78823ff","f903d4da9"],"commit_groups":[["0851b6573","57467ec7b","945126234"],["2a083ab80","9ca2145b0","ee78823ff"],["35a591a04","48e4ae9a0","816149dc6","ec741d480","f903d4da9"]],"commits":["35a591a04"],"cves":[],"db_id":"ef4d0bd11b44a555d9ff5417d9062b2d","html":"\u003cp\u003eIn \u003cspan\u003epg_amcheck\u003c/span\u003e and \u003cspan\u003epg_upgrade\u003c/span\u003e, use the correct function to free allocations made by \u003cspan\u003elibpq\u003c/span\u003e (Michael Paquier, Ranier Vilela) \u003ca href=\"https://postgr.es/c/35a591a04\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThese oversights could result in crashes in certain Windows build configurations, such as a debug build of \u003cspan\u003elibpq\u003c/span\u003e used by a non-debug build of the calling application.\u003c/p\u003e","id":"14.18-7a70a94b4f51a3ee","identity_text":"In pg_amcheck and pg_upgrade, use the correct function to free allocations made by libpq (Michael Paquier, Ranier Vilela) These oversights could result in crashes in certain Windows build configurations, such as a debug build of libpq used by a non-debug build of the calling application.","part":"changes","patch_ids":["34b26a2c0bc11f53689f56c106a22dd3","5db415aa9fa83b6f5da048d1aaff9003","7d2d1045e1e8db0bcdd0ec88b43e297b"],"related_changes":[{"db_id":"8a119f30aebe8217bd24c84ac83c5357","evidence":{"patch_ids":["34b26a2c0bc11f53689f56c106a22dd3","5db415aa9fa83b6f5da048d1aaff9003","7d2d1045e1e8db0bcdd0ec88b43e297b"],"same_day":true,"statement_hash":"147a35118d1eb034a96eb96159a572da3cddff6637a9f24a2dbd4d0497d59fb6"},"kind":"equivalent","label":"17.5","source_url":"/docs/release/17.5/#RELEASE-17-5-CHANGES","title":"In pg_amcheck and pg_upgrade, use the correct function to free allocations made by libpq","url":"/docs/compare/?release=17.5#17.5-5ad323aca8e79aef","version":"17.5"},{"db_id":"60340d64ebc76c76673aee7bbdf1bf84","evidence":{"patch_ids":["34b26a2c0bc11f53689f56c106a22dd3","5db415aa9fa83b6f5da048d1aaff9003","7d2d1045e1e8db0bcdd0ec88b43e297b"],"same_day":true,"statement_hash":"147a35118d1eb034a96eb96159a572da3cddff6637a9f24a2dbd4d0497d59fb6"},"kind":"equivalent","label":"16.9","source_url":"/docs/release/16.9/#RELEASE-16-9-CHANGES","title":"In pg_amcheck and pg_upgrade, use the correct function to free allocations made by libpq","url":"/docs/compare/?release=16.9#16.9-76778728b70e985f","version":"16.9"},{"db_id":"ec8806ac157013d5a48910bd3a2696f9","evidence":{"patch_ids":["34b26a2c0bc11f53689f56c106a22dd3","5db415aa9fa83b6f5da048d1aaff9003","7d2d1045e1e8db0bcdd0ec88b43e297b"],"same_day":true,"statement_hash":"147a35118d1eb034a96eb96159a572da3cddff6637a9f24a2dbd4d0497d59fb6"},"kind":"equivalent","label":"15.13","source_url":"/docs/release/15.13/#id-1.11.6.12.5","title":"In pg_amcheck and pg_upgrade, use the correct function to free allocations made by libpq","url":"/docs/compare/?release=15.13#15.13-9bad788e9e990512","version":"15.13"}],"relations":[{"evidence":{"patch_ids":["34b26a2c0bc11f53689f56c106a22dd3","5db415aa9fa83b6f5da048d1aaff9003","7d2d1045e1e8db0bcdd0ec88b43e297b"],"same_day":true,"statement_hash":"147a35118d1eb034a96eb96159a572da3cddff6637a9f24a2dbd4d0497d59fb6"},"rule":2,"target":"60340d64ebc76c76673aee7bbdf1bf84","type":"equivalent"},{"evidence":{"patch_ids":["34b26a2c0bc11f53689f56c106a22dd3","5db415aa9fa83b6f5da048d1aaff9003","7d2d1045e1e8db0bcdd0ec88b43e297b"],"same_day":true,"statement_hash":"147a35118d1eb034a96eb96159a572da3cddff6637a9f24a2dbd4d0497d59fb6"},"rule":2,"target":"8a119f30aebe8217bd24c84ac83c5357","type":"equivalent"},{"evidence":{"patch_ids":["34b26a2c0bc11f53689f56c106a22dd3","5db415aa9fa83b6f5da048d1aaff9003","7d2d1045e1e8db0bcdd0ec88b43e297b"],"same_day":true,"statement_hash":"147a35118d1eb034a96eb96159a572da3cddff6637a9f24a2dbd4d0497d59fb6"},"rule":2,"target":"ec8806ac157013d5a48910bd3a2696f9","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["2a083ab80","35a591a04","945126234"],"source_entry_id":"14.18/changes/030","source_hash":"2c092d307e4a89c7c1ac6bd4e5ef63117909c504eec2ace6645aac551f787937","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"147a35118d1eb034a96eb96159a572da3cddff6637a9f24a2dbd4d0497d59fb6","text":"In pg_amcheck and pg_upgrade, use the correct function to free allocations made by libpq (Michael Paquier, Ranier Vilela) § These oversights could result in crashes in certain Windows build configurations, such as a debug build of libpq used by a non-debug build of the calling application.","title":"In pg_amcheck and pg_upgrade, use the correct function to free allocations made by libpq","variants":[],"version":"14.18"},{"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":["a8a918937","aa435d7c4"],"cves":[],"db_id":"d1403c93f35837d1084fb34435822aae","html":"\u003cp\u003eAllow \u003ccode\u003econtrib/dblink\u003c/code\u003e queries to be interrupted by query cancel (Noah Misch) \u003ca href=\"https://postgr.es/c/a8a918937\"\u003e§\u003c/a\u003e \u003ca href=\"https://postgr.es/c/aa435d7c4\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis change back-patches a v17-era fix. It prevents possible hangs in \u003ccode\u003eCREATE DATABASE\u003c/code\u003e and \u003ccode\u003eDROP DATABASE\u003c/code\u003e due to failure to detect deadlocks.\u003c/p\u003e","id":"14.18-c8dd66837d3b2468","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":"Allow contrib/dblink queries to be interrupted by query cancel","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/#id-1.11.6.12.5","title":"Allow contrib/dblink queries to be interrupted by query cancel","url":"/docs/compare/?release=15.13#15.13-d66f9c3e0287eec0","version":"15.13"},{"db_id":"a5e5804883000d7caae4a81a4c09dbaa","evidence":{"patch_ids":["8f1ad091ce9b23cfc6305a698cc71e6e","dc10c968932851c1acbe96c36de940e6"],"same_day":true,"statement_hash":"573ad5b54dc619c764849e48330e325d45d7e75df13514333eed58b16ba893de"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Allow contrib/dblink queries to be interrupted by query cancel","url":"/docs/compare/?release=13.21#13.21-736328c87f8209db","version":"13.21"}],"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":"a5e5804883000d7caae4a81a4c09dbaa","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["a8a918937","aa435d7c4"],"source_entry_id":"14.18/changes/031","source_hash":"7e7a32db5809273a173481172f166f8be8489121c5c1c6e1239ffd2f5697985f","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"573ad5b54dc619c764849e48330e325d45d7e75df13514333eed58b16ba893de","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.","title":"Allow contrib/dblink queries to be interrupted by query cancel","variants":[],"version":"14.18"},{"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":["3c2ea65bd"],"cves":[],"db_id":"582e08e155bdd58b1d1937a654a61592","html":"\u003cp\u003eAvoid crashing with corrupt input data in \u003ccode\u003econtrib/pageinspect\u003c/code\u003e's \u003ccode\u003eheap_page_items()\u003c/code\u003e (Dmitry Kovalenko) \u003ca href=\"https://postgr.es/c/3c2ea65bd\"\u003e§\u003c/a\u003e\u003c/p\u003e","id":"14.18-5b312ef265127ea5","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":"Avoid crashing with corrupt input data in contrib/pageinspect's 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":"Avoid crashing with corrupt input data in contrib/pageinspect's 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/#id-1.11.6.12.5","title":"Avoid crashing with corrupt input data in contrib/pageinspect's heap_page_items()","url":"/docs/compare/?release=15.13#15.13-a090ff4536e44a9a","version":"15.13"},{"db_id":"aa20cf1d90a687514d529cf07c387ac3","evidence":{"patch_ids":["2435530dffce06becc5d751283d5f833"],"same_day":true,"statement_hash":"790d101cd9311d28874a47621867e0f86ac13af8fc3973712618b15dc6acdf40"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Avoid crashing with corrupt input data in contrib/pageinspect's heap_page_items()","url":"/docs/compare/?release=13.21#13.21-fd890674555ab03b","version":"13.21"}],"relations":[{"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":"aa20cf1d90a687514d529cf07c387ac3","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":"Changes","section_path":["Changes"],"source_commits":["3c2ea65bd"],"source_entry_id":"14.18/changes/032","source_hash":"becd1b0043eb53679202dfbd384a12d8e4c7d0e6962588f1ec9cf652f43bc25c","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"790d101cd9311d28874a47621867e0f86ac13af8fc3973712618b15dc6acdf40","text":"Avoid crashing with corrupt input data in contrib/pageinspect's heap_page_items() (Dmitry Kovalenko) §","title":"Avoid crashing with corrupt input data in contrib/pageinspect's heap_page_items()","variants":[],"version":"14.18"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["0e86bad38","41ed749e4","4623d7144","51d038da8","5ff827389","db8238da4"],"commit_groups":[["0e86bad38","41ed749e4","4623d7144","51d038da8","5ff827389","db8238da4"]],"commits":["5ff827389"],"cves":[],"db_id":"81e603618cc6cfaecbb907958d188bb0","html":"\u003cp\u003ePrevent assertion failure in \u003ccode\u003econtrib/pg_freespacemap\u003c/code\u003e's \u003ccode\u003epg_freespacemap()\u003c/code\u003e (Tender Wang) \u003ca href=\"https://postgr.es/c/5ff827389\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eApplying \u003ccode\u003epg_freespacemap()\u003c/code\u003e 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.\u003c/p\u003e","id":"14.18-d9a739915b758a3d","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":"Prevent assertion failure in contrib/pg_freespacemap's 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":"Prevent assertion failure in contrib/pg_freespacemap's 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/#id-1.11.6.12.5","title":"Prevent assertion failure in contrib/pg_freespacemap's pg_freespacemap()","url":"/docs/compare/?release=15.13#15.13-c355b8b2ba341fdd","version":"15.13"},{"db_id":"adfcc6ef0adfbe59858de60aa47488f2","evidence":{"patch_ids":["3e5cc9e814c9dece1afb8c66792c24b0"],"same_day":true,"statement_hash":"ac76386686f5a22f3f9f87e3acb88251eb3917b665302519ad233f4c0b2cd83d"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Prevent assertion failure in contrib/pg_freespacemap's pg_freespacemap()","url":"/docs/compare/?release=13.21#13.21-de4430d9db2f49d8","version":"13.21"}],"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":"a31972a05b0a88178f98582dd5a915ab","type":"equivalent"},{"evidence":{"patch_ids":["3e5cc9e814c9dece1afb8c66792c24b0"],"same_day":true,"statement_hash":"ac76386686f5a22f3f9f87e3acb88251eb3917b665302519ad233f4c0b2cd83d"},"rule":2,"target":"adfcc6ef0adfbe59858de60aa47488f2","type":"equivalent"},{"evidence":{"patch_ids":["3e5cc9e814c9dece1afb8c66792c24b0"],"same_day":true,"statement_hash":"ac76386686f5a22f3f9f87e3acb88251eb3917b665302519ad233f4c0b2cd83d"},"rule":2,"target":"ed681893dd2413de875556a68dd1f326","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["5ff827389"],"source_entry_id":"14.18/changes/033","source_hash":"2b8c5c82355db513932c7d5ef4cefb223e86927df1194dfa498e9293caa7b9a1","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"ac76386686f5a22f3f9f87e3acb88251eb3917b665302519ad233f4c0b2cd83d","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.","title":"Prevent assertion failure in contrib/pg_freespacemap's pg_freespacemap()","variants":[],"version":"14.18"},{"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":["71790aef1"],"cves":[],"db_id":"ff82d3e77efcd654ca0d58a8b8a7b301","html":"\u003cp\u003eFix build failure on macOS 15.4 (Tom Lane, Peter Eisentraut) \u003ca href=\"https://postgr.es/c/71790aef1\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis macOS update broke our configuration probe for \u003ccode\u003estrchrnul()\u003c/code\u003e.\u003c/p\u003e","id":"14.18-9c9b5926d69ff118","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":"Fix build failure on 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":"Fix build failure on 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/#id-1.11.6.12.5","title":"Fix build failure on macOS 15.4","url":"/docs/compare/?release=15.13#15.13-6538bafc805a3489","version":"15.13"},{"db_id":"df8ba4ebb72714714838bb3067224a56","evidence":{"patch_ids":["2c43c28d6c52dc62356a0bdf9130845e"],"same_day":true,"statement_hash":"dc558bd7f237a01581ee701a0432e3c4e6a8a5891bf7de9f894b410cd957d189"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Fix build failure on macOS 15.4","url":"/docs/compare/?release=13.21#13.21-1d245447bc27aad2","version":"13.21"}],"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":"df8ba4ebb72714714838bb3067224a56","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["71790aef1"],"source_entry_id":"14.18/changes/034","source_hash":"f4551f1206ab3b76f05b6454b32c3699c9d43b25f2db99fda433df6c3f7caff3","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"dc558bd7f237a01581ee701a0432e3c4e6a8a5891bf7de9f894b410cd957d189","text":"Fix build failure on macOS 15.4 (Tom Lane, Peter Eisentraut) § This macOS update broke our configuration probe for strchrnul().","title":"Fix build failure on macOS 15.4","variants":[],"version":"14.18"},{"also_in":[],"category":"improvement","category_label":"Improvements","commit_aliases":["368c3fbf9","5d5970b9f","9da548df3","a144cf145","e076120d9","fa4244a43"],"commit_groups":[["368c3fbf9","5d5970b9f","9da548df3","a144cf145","e076120d9","fa4244a43"]],"commits":["fa4244a43"],"cves":[],"db_id":"85360ac1e18899dc279978e17903e0fd","html":"\u003cp\u003eUpdate time zone data files to \u003cspan\u003etzdata\u003c/span\u003e release 2025b for DST law changes in Chile, plus historical corrections for Iran (Tom Lane) \u003ca href=\"https://postgr.es/c/fa4244a43\"\u003e§\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThere 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.\u003c/p\u003e","id":"14.18-08e4060ba79b5c53","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":"Update time zone data files to tzdata release 2025b for DST law changes in Chile, plus historical corrections for Iran","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":"Update time zone data files to tzdata release 2025b for DST law changes in Chile, plus historical corrections for Iran","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/#id-1.11.6.12.5","title":"Update time zone data files to tzdata release 2025b for DST law changes in Chile, plus historical corrections for Iran","url":"/docs/compare/?release=15.13#15.13-7905b2aef76f37fd","version":"15.13"},{"db_id":"c1730518d55761ba90941aa06c170dfb","evidence":{"patch_ids":["37a58a33f41e391eeea747c321eac090"],"same_day":true,"statement_hash":"c09a94c4e1b7ddfa12a3f8c5c4ab5fff67151ab86b10b4c4da218d744a15f8b4"},"kind":"equivalent","label":"13.21","source_url":"/docs/release/13.21/#id-1.11.6.8.6","title":"Update time zone data files to tzdata release 2025b for DST law changes in Chile, plus historical corrections for Iran","url":"/docs/compare/?release=13.21#13.21-fa15b367f3d46c9d","version":"13.21"}],"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":"89bbdc6060fef88d085afd6409e10416","type":"equivalent"},{"evidence":{"patch_ids":["37a58a33f41e391eeea747c321eac090"],"same_day":true,"statement_hash":"c09a94c4e1b7ddfa12a3f8c5c4ab5fff67151ab86b10b4c4da218d744a15f8b4"},"rule":2,"target":"b46b51b6ab58678c9616193380655da3","type":"equivalent"},{"evidence":{"patch_ids":["37a58a33f41e391eeea747c321eac090"],"same_day":true,"statement_hash":"c09a94c4e1b7ddfa12a3f8c5c4ab5fff67151ab86b10b4c4da218d744a15f8b4"},"rule":2,"target":"c1730518d55761ba90941aa06c170dfb","type":"equivalent"}],"section":"Changes","section_path":["Changes"],"source_commits":["fa4244a43"],"source_entry_id":"14.18/changes/035","source_hash":"27fe9b54d05f1b83754e75f9bd319997a503cdf4ad21c3a399a1fac69d67562a","source_url":"/docs/release/14.18/#id-1.11.6.12.5","statement_hash":"c09a94c4e1b7ddfa12a3f8c5c4ab5fff67151ab86b10b4c4da218d744a15f8b4","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.","title":"Update time zone data files to tzdata release 2025b for DST law changes in Chile, plus historical corrections for Iran","variants":[],"version":"14.18"}],"entry_count":35,"eol":"2026-11-12","eol_date":"2026-11-12","label":"14.18","major":"14","manual":"14","manual_build":"14.24","manual_url":"/docs/14/release-14-18.html","migration_html":"\u003cp\u003eA dump/restore is not required for those running 14.X.\u003c/p\u003e\n\u003cp\u003eHowever, if you have any self-referential foreign key constraints on partitioned tables, it may be necessary to recreate those constraints to ensure that they are being enforced correctly. See the second changelog entry below.\u003c/p\u003e\n\u003cp\u003eAlso, if you have any BRIN bloom indexes, it may be advisable to reindex them after updating. See the third changelog entry below.\u003c/p\u003e\n\u003cp\u003eAlso, if you are upgrading from a version earlier than 14.14, see \u003ca href=\"/docs/14/release-14-14.html\" title=\"E.11. Release 14.14\"\u003eSection E.11\u003c/a\u003e.\u003c/p\u003e","minor":18,"placeholder":false,"source_as_of":"","source_url":"/docs/release/14.18/","status":"stable","status_label":"Supported","support_days":0,"supported":true,"version":"14.18"}],"mode":"release","release_count":1,"remaining_cves":[],"security_as_of":"2026-09-26","security_regressions":[],"source_as_of":"2026-09-26","stats":[{"count":35,"key":"all","label":"All changes"},{"count":0,"key":"feature","label":"Features"},{"count":16,"key":"bugfix","label":"Bug fixes"},{"count":1,"key":"security","label":"Security"},{"count":0,"key":"performance","label":"Performance"},{"count":0,"key":"compatibility","label":"Compatibility"},{"count":18,"key":"improvement","label":"Improvements"}],"to_release":{"age_days":553,"build":"14.18","changes_count":35,"compatibility_count":0,"content_hash":"3762e89cda196274615b9fac9ffcd640a55aa2dc595067dbc13686fa6ea75afa","date":"2025-05-08","date_text":"2025-05-08","doc_git":"","doc_loaded_at":"2026-09-25T02:22:44.760693","entry_count":35,"eol":"2026-11-12","eol_date":"2026-11-12","label":"14.18","major":"14","manual":"14","manual_build":"14.24","manual_url":"/docs/14/release-14-18.html","migration_html":"\u003cp\u003eA dump/restore is not required for those running 14.X.\u003c/p\u003e\n\u003cp\u003eHowever, if you have any self-referential foreign key constraints on partitioned tables, it may be necessary to recreate those constraints to ensure that they are being enforced correctly. See the second changelog entry below.\u003c/p\u003e\n\u003cp\u003eAlso, if you have any BRIN bloom indexes, it may be advisable to reindex them after updating. See the third changelog entry below.\u003c/p\u003e\n\u003cp\u003eAlso, if you are upgrading from a version earlier than 14.14, see \u003ca href=\"/docs/14/release-14-14.html\" title=\"E.11. Release 14.14\"\u003eSection E.11\u003c/a\u003e.\u003c/p\u003e","minor":18,"placeholder":false,"source_as_of":"","source_url":"/docs/release/14.18/","status":"stable","status_label":"Supported","support_days":0,"supported":true,"version":"14.18"},"total":35,"warnings":[]}
