{"format": 1, "mode": "release", "from_release": null, "to_release": {"date": "2018-05-10", "build": "10.4", "major": "10", "minor": 4, "manual": "10", "status": "stable", "doc_git": "", "version": "10.4", "eol_date": "2022-11-10", "date_text": "2018-05-10", "supported": false, "manual_url": "/docs/10/release-10-4.html", "source_url": "/docs/release/10.4/", "entry_count": 53, "placeholder": false, "content_hash": "5d784ee9afb64e464158734d594a7ef094aca0c9a84fdc6154b3c3b9d73addb9", "manual_build": "10.23", "source_as_of": "", "changes_count": 53, "doc_loaded_at": "2026-09-25T02:22:44.760693", "migration_html": "<p>A dump/restore is not required for those running 10.X.</p>\n<p>However, if you use the <code>adminpack</code> extension, you should update it as per the first changelog entry below.</p>\n<p>Also, if the function marking mistakes mentioned in the second and third changelog entries below affect you, you will want to take steps to correct your database catalogs.</p>\n<p>Also, if you are upgrading from a version earlier than 10.3, see <a href=\"/docs/10/release-10-3.html\" title=\"E.21. Release 10.3\">Section E.21</a>.</p>", "compatibility_count": 0, "label": "10.4", "status_label": "Historical", "eol": "2022-11-10", "age_days": 3064, "support_days": -1419}, "groups": [{"date": "2018-05-10", "build": "10.4", "major": "10", "minor": 4, "manual": "10", "status": "stable", "doc_git": "", "version": "10.4", "eol_date": "2022-11-10", "date_text": "2018-05-10", "supported": false, "manual_url": "/docs/10/release-10-4.html", "source_url": "/docs/release/10.4/", "entry_count": 53, "placeholder": false, "content_hash": "5d784ee9afb64e464158734d594a7ef094aca0c9a84fdc6154b3c3b9d73addb9", "manual_build": "10.23", "source_as_of": "", "changes_count": 53, "doc_loaded_at": "2026-09-25T02:22:44.760693", "migration_html": "<p>A dump/restore is not required for those running 10.X.</p>\n<p>However, if you use the <code>adminpack</code> extension, you should update it as per the first changelog entry below.</p>\n<p>Also, if the function marking mistakes mentioned in the second and third changelog entries below affect you, you will want to take steps to correct your database catalogs.</p>\n<p>Also, if you are upgrading from a version earlier than 10.3, see <a href=\"/docs/10/release-10-3.html\" title=\"E.21. Release 10.3\">Section E.21</a>.</p>", "compatibility_count": 0, "label": "10.4", "status_label": "Historical", "eol": "2022-11-10", "age_days": 3064, "support_days": -1419, "entries": [{"id": "10.4-3da95ecc3e828f89", "cves": ["CVE-2018-1115"], "html": "<p>Remove public execute privilege from <code>contrib/adminpack</code>'s <code>pg_logfile_rotate()</code> function (Stephen Frost)</p>\n<p><code>pg_logfile_rotate()</code> is a deprecated wrapper for the core function <code>pg_rotate_logfile()</code>. When that function was changed to rely on SQL privileges for access control rather than a hard-coded superuser check, <code>pg_logfile_rotate()</code> should have been updated as well, but the need for this was missed. Hence, if <code>adminpack</code> is installed, any user could request a logfile rotation, creating a minor security issue.</p>\n<p>After installing this update, administrators should update <code>adminpack</code> by performing <code>ALTER EXTENSION adminpack UPDATE</code> in each database in which <code>adminpack</code> is installed. (CVE-2018-1115)</p>", "text": "Remove public execute privilege from contrib/adminpack's pg_logfile_rotate() function (Stephen Frost) pg_logfile_rotate() is a deprecated wrapper for the core function pg_rotate_logfile(). When that function was changed to rely on SQL privileges for access control rather than a hard-coded superuser check, pg_logfile_rotate() should have been updated as well, but the need for this was missed. Hence, if adminpack is installed, any user could request a logfile rotation, creating a minor security issue. After installing this update, administrators should update adminpack by performing ALTER EXTENSION adminpack UPDATE in each database in which adminpack is installed. (CVE-2018-1115)", "title": "Remove public execute privilege from contrib/adminpack's pg_logfile_rotate() function", "commits": [], "section": "Changes", "category": "security", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "6b74734093902121ed92834625bef2c3df8e4b18dc6ad0a053273c6f7adb4da7", "section_path": ["Changes"], "commit_groups": [["20f01fc45", "53b79ab4f", "7b347409f"]], "identity_text": "Remove public execute privilege from contrib/adminpack's pg_logfile_rotate() function (Stephen Frost) pg_logfile_rotate() is a deprecated wrapper for the core function pg_rotate_logfile(). When that function was changed to rely on SQL privileges for access control rather than a hard-coded superuser check, pg_logfile_rotate() should have been updated as well, but the need for this was missed. Hence, if adminpack is installed, any user could request a logfile rotation, creating a minor security issue. After installing this update, administrators should update adminpack by performing ALTER EXTENSION adminpack UPDATE in each database in which adminpack is installed. (CVE-2018-1115)", "commit_aliases": ["20f01fc45", "53b79ab4f", "7b347409f"], "source_commits": ["20f01fc45"], "source_entry_id": "10.4/changes/001", "db_id": "80ebe5c1773e98378ec6eead218154c5", "patch_ids": ["6a056ccaef6d578da7ff2890c0facc7b"], "statement_hash": "712f4f58dc3ea1094b64a653a1d9e436db51f07641cfcdbe625ac9aea5d16df5", "relations": [{"rule": 2, "type": "equivalent", "target": "3b614dbfc79d425c587fd768b20b393d", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "712f4f58dc3ea1094b64a653a1d9e436db51f07641cfcdbe625ac9aea5d16df5"}}], "version": "10.4", "category_label": "Security", "also_in": [], "variants": [], "related_changes": [{"db_id": "3b614dbfc79d425c587fd768b20b393d", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Remove public execute privilege from contrib/adminpack's pg_logfile_rotate() function", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "712f4f58dc3ea1094b64a653a1d9e436db51f07641cfcdbe625ac9aea5d16df5"}, "url": "/docs/compare/?release=9.6.9#9.6.9-3da95ecc3e828f89", "source_url": "/docs/release/9.6.9/#AEN134496"}]}, {"id": "10.4-d69dd3296f3254e9", "cves": [], "html": "<p>Fix incorrect volatility markings on a few built-in functions (Thomas Munro, Tom Lane)</p>\n<p>The functions <code>query_to_xml</code>, <code>cursor_to_xml</code>, <code>cursor_to_xmlschema</code>, <code>query_to_xmlschema</code>, and <code>query_to_xml_and_xmlschema</code> should be marked volatile because they execute user-supplied queries that might contain volatile operations. They were not, leading to a risk of incorrect query optimization. This has been repaired for new installations by correcting the initial catalog data, but existing installations will continue to contain the incorrect markings. Practical use of these functions seems to pose little hazard, but in case of trouble, it can be fixed by manually updating these functions' <code>pg_proc</code> entries, for example <code>ALTER FUNCTION pg_catalog.query_to_xml(text, boolean, boolean, text) VOLATILE</code>. (Note that that will need to be done in each database of the installation.) Another option is to <span>pg_upgrade</span> the database to a version containing the corrected initial data.</p>", "text": "Fix incorrect volatility markings on a few built-in functions (Thomas Munro, Tom Lane) The functions query_to_xml, cursor_to_xml, cursor_to_xmlschema, query_to_xmlschema, and query_to_xml_and_xmlschema should be marked volatile because they execute user-supplied queries that might contain volatile operations. They were not, leading to a risk of incorrect query optimization. This has been repaired for new installations by correcting the initial catalog data, but existing installations will continue to contain the incorrect markings. Practical use of these functions seems to pose little hazard, but in case of trouble, it can be fixed by manually updating these functions' pg_proc entries, for example ALTER FUNCTION pg_catalog.query_to_xml(text, boolean, boolean, text) VOLATILE. (Note that that will need to be done in each database of the installation.) Another option is to pg_upgrade the database to a version containing the corrected initial data.", "title": "Fix incorrect volatility markings on a few built-in functions", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "013b61fc65364bd8d44d569e773abae8e5570bec5d7ebe38b2b5688b68327092", "section_path": ["Changes"], "commit_groups": [["11002f8af", "283262cd9", "485857d44", "91d82317d", "b7537ffb1", "ea83c7e66"]], "identity_text": "Fix incorrect volatility markings on a few built-in functions (Thomas Munro, Tom Lane) The functions query_to_xml, cursor_to_xml, cursor_to_xmlschema, query_to_xmlschema, and query_to_xml_and_xmlschema should be marked volatile because they execute user-supplied queries that might contain volatile operations. They were not, leading to a risk of incorrect query optimization. This has been repaired for new installations by correcting the initial catalog data, but existing installations will continue to contain the incorrect markings. Practical use of these functions seems to pose little hazard, but in case of trouble, it can be fixed by manually updating these functions' pg_proc entries, for example ALTER FUNCTION pg_catalog.query_to_xml(text, boolean, boolean, text) VOLATILE. (Note that that will need to be done in each database of the installation.) Another option is to pg_upgrade the database to a version containing the corrected initial data.", "commit_aliases": ["11002f8af", "283262cd9", "485857d44", "91d82317d", "b7537ffb1", "ea83c7e66"], "source_commits": ["283262cd9"], "source_entry_id": "10.4/changes/002", "db_id": "4dbf8dadd96c167df439302bf984d30d", "patch_ids": ["803b6d012c731531667f61834b5cd4e4"], "statement_hash": "a848020ace21692d8bfea310bd5099e26e664b6b63f997e2f6b10411bf84f83f", "relations": [{"rule": 2, "type": "equivalent", "target": "090b34a702ec6a2ca8c64febbfa28ccf", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a848020ace21692d8bfea310bd5099e26e664b6b63f997e2f6b10411bf84f83f", "ambiguous_patch_ids": ["803b6d012c731531667f61834b5cd4e4"]}}, {"rule": 2, "type": "equivalent", "target": "4e64c4d279195ebda2ab22e8ffc64993", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a848020ace21692d8bfea310bd5099e26e664b6b63f997e2f6b10411bf84f83f", "ambiguous_patch_ids": ["803b6d012c731531667f61834b5cd4e4"]}}, {"rule": 2, "type": "equivalent", "target": "5b3b555d5cbf741c78a2ffd945e5a415", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a848020ace21692d8bfea310bd5099e26e664b6b63f997e2f6b10411bf84f83f", "ambiguous_patch_ids": ["803b6d012c731531667f61834b5cd4e4"]}}, {"rule": 2, "type": "equivalent", "target": "a6ba23544bda9d746f0fa25a72cecaf6", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a848020ace21692d8bfea310bd5099e26e664b6b63f997e2f6b10411bf84f83f", "ambiguous_patch_ids": ["803b6d012c731531667f61834b5cd4e4"]}}, {"rule": 2, "type": "related", "target": "a8ee70e2cea4b27b449669d787034969", "evidence": {"same_day": true, "patch_ids": ["803b6d012c731531667f61834b5cd4e4"], "ambiguous_patch_ids": ["803b6d012c731531667f61834b5cd4e4"]}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "a8ee70e2cea4b27b449669d787034969", "kind": "related", "version": "10.4", "label": "10.4", "title": "Fix incorrect parallel-safety markings on a few built-in functions", "evidence": {"same_day": true, "patch_ids": ["803b6d012c731531667f61834b5cd4e4"], "ambiguous_patch_ids": ["803b6d012c731531667f61834b5cd4e4"]}, "url": "/docs/compare/?release=10.4#10.4-041b0aa0ba937b35", "source_url": "/docs/release/10.4/#id-1.11.6.24.5"}, {"db_id": "a6ba23544bda9d746f0fa25a72cecaf6", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Fix incorrect volatility markings on a few built-in functions", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a848020ace21692d8bfea310bd5099e26e664b6b63f997e2f6b10411bf84f83f", "ambiguous_patch_ids": ["803b6d012c731531667f61834b5cd4e4"]}, "url": "/docs/compare/?release=9.6.9#9.6.9-d69dd3296f3254e9", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "5b3b555d5cbf741c78a2ffd945e5a415", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Fix incorrect volatility markings on a few built-in functions", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a848020ace21692d8bfea310bd5099e26e664b6b63f997e2f6b10411bf84f83f", "ambiguous_patch_ids": ["803b6d012c731531667f61834b5cd4e4"]}, "url": "/docs/compare/?release=9.5.13#9.5.13-d69dd3296f3254e9", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "4e64c4d279195ebda2ab22e8ffc64993", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Fix incorrect volatility markings on a few built-in functions", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a848020ace21692d8bfea310bd5099e26e664b6b63f997e2f6b10411bf84f83f", "ambiguous_patch_ids": ["803b6d012c731531667f61834b5cd4e4"]}, "url": "/docs/compare/?release=9.4.18#9.4.18-d69dd3296f3254e9", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "090b34a702ec6a2ca8c64febbfa28ccf", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Fix incorrect volatility markings on a few built-in functions", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a848020ace21692d8bfea310bd5099e26e664b6b63f997e2f6b10411bf84f83f", "ambiguous_patch_ids": ["803b6d012c731531667f61834b5cd4e4"]}, "url": "/docs/compare/?release=9.3.23#9.3.23-d69dd3296f3254e9", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-041b0aa0ba937b35", "cves": [], "html": "<p>Fix incorrect parallel-safety markings on a few built-in functions (Thomas Munro, Tom Lane)</p>\n<p>The functions <code>brin_summarize_new_values</code>, <code>brin_summarize_range</code>, <code>brin_desummarize_range</code>, <code>gin_clean_pending_list</code>, <code>cursor_to_xml</code>, <code>cursor_to_xmlschema</code>, <code>ts_rewrite</code>, <code>ts_stat</code>, <code>binary_upgrade_create_empty_extension</code>, and <code>pg_import_system_collations</code> should be marked parallel-unsafe; some because they perform database modifications directly, and others because they execute user-supplied queries that might do so. They were marked parallel-restricted instead, leading to a risk of unexpected query errors. This has been repaired for new installations by correcting the initial catalog data, but existing installations will continue to contain the incorrect markings. Practical use of these functions seems to pose little hazard unless <code>force_parallel_mode</code> is turned on. In case of trouble, it can be fixed by manually updating these functions' <code>pg_proc</code> entries, for example <code>ALTER FUNCTION pg_catalog.brin_summarize_new_values(regclass) PARALLEL UNSAFE</code>. (Note that that will need to be done in each database of the installation.) Another option is to <span>pg_upgrade</span> the database to a version containing the corrected initial data.</p>", "text": "Fix incorrect parallel-safety markings on a few built-in functions (Thomas Munro, Tom Lane) The functions brin_summarize_new_values, brin_summarize_range, brin_desummarize_range, gin_clean_pending_list, cursor_to_xml, cursor_to_xmlschema, ts_rewrite, ts_stat, binary_upgrade_create_empty_extension, and pg_import_system_collations should be marked parallel-unsafe; some because they perform database modifications directly, and others because they execute user-supplied queries that might do so. They were marked parallel-restricted instead, leading to a risk of unexpected query errors. This has been repaired for new installations by correcting the initial catalog data, but existing installations will continue to contain the incorrect markings. Practical use of these functions seems to pose little hazard unless force_parallel_mode is turned on. In case of trouble, it can be fixed by manually updating these functions' pg_proc entries, for example ALTER FUNCTION pg_catalog.brin_summarize_new_values(regclass) PARALLEL UNSAFE. (Note that that will need to be done in each database of the installation.) Another option is to pg_upgrade the database to a version containing the corrected initial data.", "title": "Fix incorrect parallel-safety markings on a few built-in functions", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "059b199e2f7c8e806ad579f611244c670ea22b2843d7fddbe66e6417317a51b8", "section_path": ["Changes"], "commit_groups": [["11002f8af", "283262cd9", "485857d44", "91d82317d", "b7537ffb1", "ea83c7e66"]], "identity_text": "Fix incorrect parallel-safety markings on a few built-in functions (Thomas Munro, Tom Lane) The functions brin_summarize_new_values, brin_summarize_range, brin_desummarize_range, gin_clean_pending_list, cursor_to_xml, cursor_to_xmlschema, ts_rewrite, ts_stat, binary_upgrade_create_empty_extension, and pg_import_system_collations should be marked parallel-unsafe; some because they perform database modifications directly, and others because they execute user-supplied queries that might do so. They were marked parallel-restricted instead, leading to a risk of unexpected query errors. This has been repaired for new installations by correcting the initial catalog data, but existing installations will continue to contain the incorrect markings. Practical use of these functions seems to pose little hazard unless force_parallel_mode is turned on. In case of trouble, it can be fixed by manually updating these functions' pg_proc entries, for example ALTER FUNCTION pg_catalog.brin_summarize_new_values(regclass) PARALLEL UNSAFE. (Note that that will need to be done in each database of the installation.) Another option is to pg_upgrade the database to a version containing the corrected initial data.", "commit_aliases": ["11002f8af", "283262cd9", "485857d44", "91d82317d", "b7537ffb1", "ea83c7e66"], "source_commits": ["283262cd9"], "source_entry_id": "10.4/changes/003", "db_id": "a8ee70e2cea4b27b449669d787034969", "patch_ids": ["803b6d012c731531667f61834b5cd4e4"], "statement_hash": "9b476fe77f2a3a70a90e81d0a15a55093c1e9218e17bde338e014f7ceb4b8d7b", "relations": [{"rule": 2, "type": "related", "target": "4dbf8dadd96c167df439302bf984d30d", "evidence": {"same_day": true, "patch_ids": ["803b6d012c731531667f61834b5cd4e4"], "ambiguous_patch_ids": ["803b6d012c731531667f61834b5cd4e4"]}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "4dbf8dadd96c167df439302bf984d30d", "kind": "related", "version": "10.4", "label": "10.4", "title": "Fix incorrect volatility markings on a few built-in functions", "evidence": {"same_day": true, "patch_ids": ["803b6d012c731531667f61834b5cd4e4"], "ambiguous_patch_ids": ["803b6d012c731531667f61834b5cd4e4"]}, "url": "/docs/compare/?release=10.4#10.4-d69dd3296f3254e9", "source_url": "/docs/release/10.4/#id-1.11.6.24.5"}]}, {"id": "10.4-2e9ceb7faf49d36e", "cves": [], "html": "<p>Avoid re-using TOAST value OIDs that match dead-but-not-yet-vacuumed TOAST entries (Pavan Deolasee)</p>\n<p>Once the OID counter has wrapped around, it's possible to assign a TOAST value whose OID matches a previously deleted entry in the same TOAST table. If that entry were not yet vacuumed away, this resulted in <span>“<span>unexpected chunk number 0 (expected 1) for toast value <em><code>nnnnn</code></em></span>”</span> errors, which would persist until the dead entry was removed by <code>VACUUM</code>. Fix by not selecting such OIDs when creating a new TOAST entry.</p>", "text": "Avoid re-using TOAST value OIDs that match dead-but-not-yet-vacuumed TOAST entries (Pavan Deolasee) Once the OID counter has wrapped around, it's possible to assign a TOAST value whose OID matches a previously deleted entry in the same TOAST table. If that entry were not yet vacuumed away, this resulted in “unexpected chunk number 0 (expected 1) for toast value nnnnn” errors, which would persist until the dead entry was removed by VACUUM. Fix by not selecting such OIDs when creating a new TOAST entry.", "title": "Avoid re-using TOAST value OIDs that match dead-but-not-yet-vacuumed TOAST entries", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "f07ca2127e8026fab1a27477a5730f43a14a48035a3a8dd8b4ee9516b9c888c5", "section_path": ["Changes"], "commit_groups": [["0408e1ed5", "3767216fb", "5a11bf970", "5b3ed6b78", "7448e7e23", "8bba10f7e"], ["060bb38d0", "08e6cda1c", "66d4b6bb8", "6943fb927", "d1e907929", "efbe36a2c"]], "identity_text": "Avoid re-using TOAST value OIDs that match dead-but-not-yet-vacuumed TOAST entries (Pavan Deolasee) Once the OID counter has wrapped around, it's possible to assign a TOAST value whose OID matches a previously deleted entry in the same TOAST table. If that entry were not yet vacuumed away, this resulted in unexpected chunk number 0 (expected 1) for toast value nnnnn errors, which would persist until the dead entry was removed by VACUUM. Fix by not selecting such OIDs when creating a new TOAST entry.", "commit_aliases": ["0408e1ed5", "060bb38d0", "08e6cda1c", "3767216fb", "5a11bf970", "5b3ed6b78", "66d4b6bb8", "6943fb927", "7448e7e23", "8bba10f7e", "d1e907929", "efbe36a2c"], "source_commits": ["08e6cda1c", "5a11bf970"], "source_entry_id": "10.4/changes/004", "db_id": "e392178093fe6d0921ffb62054aa789b", "patch_ids": ["80bcfa319e6f74f5df35c80346ae3065", "f22869d731943e0d0ff9a59c77d64f7e"], "statement_hash": "41071cbd7b24941a80f90ae00e8631a89cce2cdc34545f79240e099448269380", "relations": [{"rule": 2, "type": "equivalent", "target": "4035d185e648f4a1a98665cfb8f9342c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "41071cbd7b24941a80f90ae00e8631a89cce2cdc34545f79240e099448269380"}}, {"rule": 2, "type": "equivalent", "target": "6880622ffcd47407c39b65ab10c581e1", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "41071cbd7b24941a80f90ae00e8631a89cce2cdc34545f79240e099448269380"}}, {"rule": 2, "type": "equivalent", "target": "862469b6786f98380f5d936984d0d58d", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "41071cbd7b24941a80f90ae00e8631a89cce2cdc34545f79240e099448269380"}}, {"rule": 2, "type": "equivalent", "target": "87f78c7f9303d4e8f2177bdb76e23f66", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "41071cbd7b24941a80f90ae00e8631a89cce2cdc34545f79240e099448269380"}}], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "4035d185e648f4a1a98665cfb8f9342c", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Avoid re-using TOAST value OIDs that match dead-but-not-yet-vacuumed TOAST entries", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "41071cbd7b24941a80f90ae00e8631a89cce2cdc34545f79240e099448269380"}, "url": "/docs/compare/?release=9.6.9#9.6.9-2e9ceb7faf49d36e", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "6880622ffcd47407c39b65ab10c581e1", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Avoid re-using TOAST value OIDs that match dead-but-not-yet-vacuumed TOAST entries", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "41071cbd7b24941a80f90ae00e8631a89cce2cdc34545f79240e099448269380"}, "url": "/docs/compare/?release=9.5.13#9.5.13-2e9ceb7faf49d36e", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "87f78c7f9303d4e8f2177bdb76e23f66", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Avoid re-using TOAST value OIDs that match dead-but-not-yet-vacuumed TOAST entries", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "41071cbd7b24941a80f90ae00e8631a89cce2cdc34545f79240e099448269380"}, "url": "/docs/compare/?release=9.4.18#9.4.18-2e9ceb7faf49d36e", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "862469b6786f98380f5d936984d0d58d", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Avoid re-using TOAST value OIDs that match dead-but-not-yet-vacuumed TOAST entries", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "41071cbd7b24941a80f90ae00e8631a89cce2cdc34545f79240e099448269380"}, "url": "/docs/compare/?release=9.3.23#9.3.23-2e9ceb7faf49d36e", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-90a6a3e2eb9e33d6", "cves": [], "html": "<p>Correctly enforce any <code>CHECK</code> constraints on individual partitions during <code>COPY</code> to a partitioned table (Etsuro Fujita)</p>\n<p>Previously, only constraints declared for the partitioned table as a whole were checked.</p>", "text": "Correctly enforce any CHECK constraints on individual partitions during COPY to a partitioned table (Etsuro Fujita) Previously, only constraints declared for the partitioned table as a whole were checked.", "title": "Correctly enforce any CHECK constraints on individual partitions during COPY to a partitioned table", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "a473f9d5bb0593dadd6068a236984a88b24a6b85b30d36e65d1552d898567e25", "section_path": ["Changes"], "commit_groups": [["29ab1e24a", "cfbecf810"]], "identity_text": "Correctly enforce any CHECK constraints on individual partitions during COPY to a partitioned table (Etsuro Fujita) Previously, only constraints declared for the partitioned table as a whole were checked.", "commit_aliases": ["29ab1e24a", "cfbecf810"], "source_commits": ["29ab1e24a"], "source_entry_id": "10.4/changes/005", "db_id": "3142e7ded6f20ed2f9a679dc072695b5", "patch_ids": ["9667d9d3873f76394e353fad4b93d263"], "statement_hash": "a0aa0730d65036cb05c237bf44a2aaf4c03ff6b57e0677f1467f89c0c41b6984", "relations": [], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": []}, {"id": "10.4-64ad455616d43f95", "cves": [], "html": "<p>Accept <code>TRUE</code> and <code>FALSE</code> as partition bound values (Amit Langote)</p>\n<p>Previously, only string-literal values were accepted for a boolean partitioning column. But then <span>pg_dump</span> would print such values as <code>TRUE</code> or <code>FALSE</code>, leading to dump/reload failures.</p>", "text": "Accept TRUE and FALSE as partition bound values (Amit Langote) Previously, only string-literal values were accepted for a boolean partitioning column. But then pg_dump would print such values as TRUE or FALSE, leading to dump/reload failures.", "title": "Accept TRUE and FALSE as partition bound values", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "c7feccfe2b8c60d6b885a9e831dd011399010a2dbf275b606fdf25f897812122", "section_path": ["Changes"], "commit_groups": [["1222db999", "4df58f7ed"]], "identity_text": "Accept TRUE and FALSE as partition bound values (Amit Langote) Previously, only string-literal values were accepted for a boolean partitioning column. But then pg_dump would print such values as TRUE or FALSE, leading to dump/reload failures.", "commit_aliases": ["1222db999", "4df58f7ed"], "source_commits": ["1222db999"], "source_entry_id": "10.4/changes/006", "db_id": "5cf5feb9874ec5d78f298c76f8aeb6e4", "patch_ids": ["7867b8061066051a9891f11df3490926"], "statement_hash": "ed8020e743ec15fa28850730aabbe7ab97a20dc72eb0691ba7aa28561e585bca", "relations": [], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": []}, {"id": "10.4-7b905fcc4f3879a7", "cves": [], "html": "<p>Fix memory management for partition key comparison functions (Álvaro Herrera, Amit Langote)</p>\n<p>This error could lead to crashes when using user-defined operator classes for partition keys.</p>", "text": "Fix memory management for partition key comparison functions (Álvaro Herrera, Amit Langote) This error could lead to crashes when using user-defined operator classes for partition keys.", "title": "Fix memory management for partition key comparison functions", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "0d21fd2da63eb46e76b8f172b347327dfb5eb37f01b8f1908814f36ea7b2d3e9", "section_path": ["Changes"], "commit_groups": [["5f11c6ec6", "a4d56f583"]], "identity_text": "Fix memory management for partition key comparison functions (Álvaro Herrera, Amit Langote) This error could lead to crashes when using user-defined operator classes for partition keys.", "commit_aliases": ["5f11c6ec6", "a4d56f583"], "source_commits": ["5f11c6ec6"], "source_entry_id": "10.4/changes/007", "db_id": "d51b31b662338778e70e011dffc01c45", "patch_ids": ["2d47e8fa48c0a1e84ce022777f143570"], "statement_hash": "e13e616a4259b584d7a9093703ebe0f1f244177898d7f8b5b7b1b773b7d4f9ef", "relations": [], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": []}, {"id": "10.4-ecf919556c8d0cc2", "cves": [], "html": "<p>Fix possible crash when a query inserts tuples in several partitions of a partitioned table, and those partitions don't have identical row types (Etsuro Fujita, Amit Langote)</p>", "text": "Fix possible crash when a query inserts tuples in several partitions of a partitioned table, and those partitions don't have identical row types (Etsuro Fujita, Amit Langote)", "title": "Fix possible crash when a query inserts tuples in several partitions of a partitioned table, and those partitions don't have identical row types", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "29213c821581d7933887503c1e794e644dbd5dc28d8d3eb955cc887b17bc9080", "section_path": ["Changes"], "commit_groups": [["6666ee49f", "e3faddf53"]], "identity_text": "Fix possible crash when a query inserts tuples in several partitions of a partitioned table, and those partitions don't have identical row types (Etsuro Fujita, Amit Langote)", "commit_aliases": ["6666ee49f", "e3faddf53"], "source_commits": ["e3faddf53"], "source_entry_id": "10.4/changes/008", "db_id": "99bf21b68110e8f462913641709eec82", "patch_ids": ["08aa73d38a99e83eaa1a870048359d6a"], "statement_hash": "1d3412285c90b78122ab43bb6fa1ac05100efb1a1a0d6f2595c0b1216fd262ec", "relations": [], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": []}, {"id": "10.4-5dea6d3282166bc5", "cves": [], "html": "<p>Change <code>ANALYZE</code>'s algorithm for updating <code>pg_class</code>.<code>reltuples</code> (David Gould)</p>\n<p>Previously, pages not actually scanned by <code>ANALYZE</code> were assumed to retain their old tuple density. In a large table where <code>ANALYZE</code> samples only a small fraction of the pages, this meant that the overall tuple density estimate could not change very much, so that <code>reltuples</code> would change nearly proportionally to changes in the table's physical size (<code>relpages</code>) regardless of what was actually happening in the table. This has been observed to result in <code>reltuples</code> becoming so much larger than reality as to effectively shut off autovacuuming. To fix, assume that <code>ANALYZE</code>'s sample is a statistically unbiased sample of the table (as it should be), and just extrapolate the density observed within those pages to the whole table.</p>", "text": "Change ANALYZE's algorithm for updating pg_class.reltuples (David Gould) Previously, pages not actually scanned by ANALYZE were assumed to retain their old tuple density. In a large table where ANALYZE samples only a small fraction of the pages, this meant that the overall tuple density estimate could not change very much, so that reltuples would change nearly proportionally to changes in the table's physical size (relpages) regardless of what was actually happening in the table. This has been observed to result in reltuples becoming so much larger than reality as to effectively shut off autovacuuming. To fix, assume that ANALYZE's sample is a statistically unbiased sample of the table (as it should be), and just extrapolate the density observed within those pages to the whole table.", "title": "Change ANALYZE's algorithm for updating pg_class.reltuples", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "ab582ed68ed7af70856cc451cf021d8aa4bc6eef4a5f40d817f1ad4b80b93876", "section_path": ["Changes"], "commit_groups": [["1bfb56723", "25a2ba35e", "c2c4bc628", "c9414e786", "d04900de7", "d44ce7b1a"]], "identity_text": "Change ANALYZE's algorithm for updating pg_class.reltuples (David Gould) Previously, pages not actually scanned by ANALYZE were assumed to retain their old tuple density. In a large table where ANALYZE samples only a small fraction of the pages, this meant that the overall tuple density estimate could not change very much, so that reltuples would change nearly proportionally to changes in the table's physical size (relpages) regardless of what was actually happening in the table. This has been observed to result in reltuples becoming so much larger than reality as to effectively shut off autovacuuming. To fix, assume that ANALYZE's sample is a statistically unbiased sample of the table (as it should be), and just extrapolate the density observed within those pages to the whole table.", "commit_aliases": ["1bfb56723", "25a2ba35e", "c2c4bc628", "c9414e786", "d04900de7", "d44ce7b1a"], "source_commits": ["1bfb56723"], "source_entry_id": "10.4/changes/009", "db_id": "49169d0a2a7bf9f563f7cc87052ed66c", "patch_ids": ["5323dcece858f3c09fd3ed27478da47c"], "statement_hash": "3f7486be39637dca1b6d81e43cfb528cb043b1048f4d302b41ad6f0bcf06deca", "relations": [{"rule": 2, "type": "equivalent", "target": "0d77dfa076b199c528dac488a698de1c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3f7486be39637dca1b6d81e43cfb528cb043b1048f4d302b41ad6f0bcf06deca"}}, {"rule": 2, "type": "equivalent", "target": "1e07897a13bb0d50127fcd293b5bc360", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3f7486be39637dca1b6d81e43cfb528cb043b1048f4d302b41ad6f0bcf06deca"}}, {"rule": 2, "type": "equivalent", "target": "3e963cf0d2e3a8f46e9b73a2a5a181bd", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3f7486be39637dca1b6d81e43cfb528cb043b1048f4d302b41ad6f0bcf06deca"}}, {"rule": 2, "type": "equivalent", "target": "4a1631e90e65b4c3703e7b1179d0803e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3f7486be39637dca1b6d81e43cfb528cb043b1048f4d302b41ad6f0bcf06deca"}}], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "0d77dfa076b199c528dac488a698de1c", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Change ANALYZE's algorithm for updating pg_class.reltuples", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3f7486be39637dca1b6d81e43cfb528cb043b1048f4d302b41ad6f0bcf06deca"}, "url": "/docs/compare/?release=9.6.9#9.6.9-5dea6d3282166bc5", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "4a1631e90e65b4c3703e7b1179d0803e", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Change ANALYZE's algorithm for updating pg_class.reltuples", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3f7486be39637dca1b6d81e43cfb528cb043b1048f4d302b41ad6f0bcf06deca"}, "url": "/docs/compare/?release=9.5.13#9.5.13-5dea6d3282166bc5", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "1e07897a13bb0d50127fcd293b5bc360", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Change ANALYZE's algorithm for updating pg_class.reltuples", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3f7486be39637dca1b6d81e43cfb528cb043b1048f4d302b41ad6f0bcf06deca"}, "url": "/docs/compare/?release=9.4.18#9.4.18-5dea6d3282166bc5", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "3e963cf0d2e3a8f46e9b73a2a5a181bd", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Change ANALYZE's algorithm for updating pg_class.reltuples", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3f7486be39637dca1b6d81e43cfb528cb043b1048f4d302b41ad6f0bcf06deca"}, "url": "/docs/compare/?release=9.3.23#9.3.23-5dea6d3282166bc5", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-f5a7c8ee70a3051a", "cves": [], "html": "<p>Include extended-statistics objects in the set of table properties duplicated by <code>CREATE TABLE ... LIKE ... INCLUDING ALL</code> (David Rowley)</p>\n<p>Also add an <code>INCLUDING STATISTICS</code> option, to allow finer-grained control over whether this happens.</p>", "text": "Include extended-statistics objects in the set of table properties duplicated by CREATE TABLE ... LIKE ... INCLUDING ALL (David Rowley) Also add an INCLUDING STATISTICS option, to allow finer-grained control over whether this happens.", "title": "Include extended-statistics objects in the set of table properties duplicated by CREATE TABLE ... LIKE ... INCLUDING ALL", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "66a48adcb4bf6318e0dc9c8c2ad483801376eabba3206dcaadec1aa339bc069b", "section_path": ["Changes"], "commit_groups": [["5564c1181", "911e6236b"]], "identity_text": "Include extended-statistics objects in the set of table properties duplicated by CREATE TABLE ... LIKE ... INCLUDING ALL (David Rowley) Also add an INCLUDING STATISTICS option, to allow finer-grained control over whether this happens.", "commit_aliases": ["5564c1181", "911e6236b"], "source_commits": ["911e6236b"], "source_entry_id": "10.4/changes/010", "db_id": "194677f3a808568f91ed37bb11c970fd", "patch_ids": ["289e1b6f599f8666e851f608cc90b6f7"], "statement_hash": "43458dd41fd6b810eaeb70af9f6ff3bd7de2a82f962ff9f9e498233d24801387", "relations": [], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": []}, {"id": "10.4-0d4f64bebf03af20", "cves": [], "html": "<p>Fix <code>CREATE TABLE ... LIKE</code> with <code>bigint</code> identity columns (Peter Eisentraut)</p>\n<p>On platforms where <code>long</code> is 32 bits (which includes 64-bit Windows as well as most 32-bit machines), copied sequence parameters would be truncated to 32 bits.</p>", "text": "Fix CREATE TABLE ... LIKE with bigint identity columns (Peter Eisentraut) On platforms where long is 32 bits (which includes 64-bit Windows as well as most 32-bit machines), copied sequence parameters would be truncated to 32 bits.", "title": "Fix CREATE TABLE ... LIKE with bigint identity columns", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "3d7db3ca85c04e570331126aab284d52d4b1a7196f50f3ea85b5e11593f47518", "section_path": ["Changes"], "commit_groups": [["377b5ac48", "c32f44c4a"]], "identity_text": "Fix CREATE TABLE ... LIKE with bigint identity columns (Peter Eisentraut) On platforms where long is 32 bits (which includes 64-bit Windows as well as most 32-bit machines), copied sequence parameters would be truncated to 32 bits.", "commit_aliases": ["377b5ac48", "c32f44c4a"], "source_commits": ["c32f44c4a"], "source_entry_id": "10.4/changes/011", "db_id": "d558ba637b37345625f83d9b11f2de9a", "patch_ids": ["6ffbb4ff89a5ba3233d415a67f643f42"], "statement_hash": "4f1e35217a6b7ac1c1cccc7ac533b955ce805513a16be87dda28486eb14360c4", "relations": [], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": []}, {"id": "10.4-89c9b69f91335f3f", "cves": [], "html": "<p>Avoid deadlocks in concurrent <code>CREATE INDEX CONCURRENTLY</code> commands that are run under <code>SERIALIZABLE</code> or <code>REPEATABLE READ</code> transaction isolation (Tom Lane)</p>", "text": "Avoid deadlocks in concurrent CREATE INDEX CONCURRENTLY commands that are run under SERIALIZABLE or REPEATABLE READ transaction isolation (Tom Lane)", "title": "Avoid deadlocks in concurrent CREATE INDEX CONCURRENTLY commands that are run under SERIALIZABLE or REPEATABLE READ transaction isolation", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "691f98ec8d154c24c7fae645a93cc84b63d6d7bdd4571f124375594474de50ea", "section_path": ["Changes"], "commit_groups": [["1dec82068", "69e3a548e", "7490ce725", "82acf3eb7", "94a898f69"]], "identity_text": "Avoid deadlocks in concurrent CREATE INDEX CONCURRENTLY commands that are run under SERIALIZABLE or REPEATABLE READ transaction isolation (Tom Lane)", "commit_aliases": ["1dec82068", "69e3a548e", "7490ce725", "82acf3eb7", "94a898f69"], "source_commits": ["94a898f69"], "source_entry_id": "10.4/changes/012", "db_id": "aad884265a80122f34b9b9684b3f4cfe", "patch_ids": ["1df24e8843beb655110c1ceca922eb53"], "statement_hash": "21ba85c192f8e7aef47763976074fb88ac7afbb31e5ab0c0ab8477104ce277fe", "relations": [{"rule": 2, "type": "equivalent", "target": "191769a0661f7d949b324009d138f340", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "21ba85c192f8e7aef47763976074fb88ac7afbb31e5ab0c0ab8477104ce277fe"}}, {"rule": 2, "type": "equivalent", "target": "1dd46aade8b4ab20cf5381f9a17a609c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "21ba85c192f8e7aef47763976074fb88ac7afbb31e5ab0c0ab8477104ce277fe"}}, {"rule": 2, "type": "equivalent", "target": "9d82a4f873bce505f63f2ef3c5270503", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "21ba85c192f8e7aef47763976074fb88ac7afbb31e5ab0c0ab8477104ce277fe"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "9d82a4f873bce505f63f2ef3c5270503", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Avoid deadlocks in concurrent CREATE INDEX CONCURRENTLY commands that are run under SERIALIZABLE or REPEATABLE READ transaction isolation", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "21ba85c192f8e7aef47763976074fb88ac7afbb31e5ab0c0ab8477104ce277fe"}, "url": "/docs/compare/?release=9.6.9#9.6.9-89c9b69f91335f3f", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "191769a0661f7d949b324009d138f340", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Avoid deadlocks in concurrent CREATE INDEX CONCURRENTLY commands that are run under SERIALIZABLE or REPEATABLE READ transaction isolation", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "21ba85c192f8e7aef47763976074fb88ac7afbb31e5ab0c0ab8477104ce277fe"}, "url": "/docs/compare/?release=9.5.13#9.5.13-89c9b69f91335f3f", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "1dd46aade8b4ab20cf5381f9a17a609c", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Avoid deadlocks in concurrent CREATE INDEX CONCURRENTLY commands that are run under SERIALIZABLE or REPEATABLE READ transaction isolation", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "21ba85c192f8e7aef47763976074fb88ac7afbb31e5ab0c0ab8477104ce277fe"}, "url": "/docs/compare/?release=9.4.18#9.4.18-89c9b69f91335f3f", "source_url": "/docs/release/9.4.18/#AEN120949"}]}, {"id": "10.4-346358bbf5b80085", "cves": [], "html": "<p>Fix possible slow execution of <code>REFRESH MATERIALIZED VIEW CONCURRENTLY</code> (Thomas Munro)</p>", "text": "Fix possible slow execution of REFRESH MATERIALIZED VIEW CONCURRENTLY (Thomas Munro)", "title": "Fix possible slow execution of REFRESH MATERIALIZED VIEW CONCURRENTLY", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "7954e71f56db9d726e5932a8e07933a3d575cc067d76fbf3dbd05b686b66c90b", "section_path": ["Changes"], "commit_groups": [["1568156d8", "6fbd5cce2", "b6ba94ec4", "c553e4a50", "ebcf34d46"]], "identity_text": "Fix possible slow execution of REFRESH MATERIALIZED VIEW CONCURRENTLY (Thomas Munro)", "commit_aliases": ["1568156d8", "6fbd5cce2", "b6ba94ec4", "c553e4a50", "ebcf34d46"], "source_commits": ["1568156d8"], "source_entry_id": "10.4/changes/013", "db_id": "ce75059760758e482fd277227a78929c", "patch_ids": ["5c5155149946c4a19c3187976ab648ad"], "statement_hash": "dd5714dcd06b3a893294d447b1244e8640ae9eee7666c845027c8465fa82db83", "relations": [{"rule": 2, "type": "equivalent", "target": "2276c457fca4b0de608c590235198202", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "dd5714dcd06b3a893294d447b1244e8640ae9eee7666c845027c8465fa82db83"}}, {"rule": 2, "type": "equivalent", "target": "23bedbfaa5c8a44d40d533c53085aadd", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "dd5714dcd06b3a893294d447b1244e8640ae9eee7666c845027c8465fa82db83"}}, {"rule": 2, "type": "equivalent", "target": "e720684aa44612421ccfa3003345c1d7", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "dd5714dcd06b3a893294d447b1244e8640ae9eee7666c845027c8465fa82db83"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "23bedbfaa5c8a44d40d533c53085aadd", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Fix possible slow execution of REFRESH MATERIALIZED VIEW CONCURRENTLY", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "dd5714dcd06b3a893294d447b1244e8640ae9eee7666c845027c8465fa82db83"}, "url": "/docs/compare/?release=9.6.9#9.6.9-346358bbf5b80085", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "e720684aa44612421ccfa3003345c1d7", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Fix possible slow execution of REFRESH MATERIALIZED VIEW CONCURRENTLY", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "dd5714dcd06b3a893294d447b1244e8640ae9eee7666c845027c8465fa82db83"}, "url": "/docs/compare/?release=9.5.13#9.5.13-346358bbf5b80085", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "2276c457fca4b0de608c590235198202", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Fix possible slow execution of REFRESH MATERIALIZED VIEW CONCURRENTLY", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "dd5714dcd06b3a893294d447b1244e8640ae9eee7666c845027c8465fa82db83"}, "url": "/docs/compare/?release=9.4.18#9.4.18-346358bbf5b80085", "source_url": "/docs/release/9.4.18/#AEN120949"}]}, {"id": "10.4-61a23abfc56e0656", "cves": [], "html": "<p>Fix <code>UPDATE/DELETE ... WHERE CURRENT OF</code> to not fail when the referenced cursor uses an index-only-scan plan (Yugo Nagata, Tom Lane)</p>", "text": "Fix UPDATE/DELETE ... WHERE CURRENT OF to not fail when the referenced cursor uses an index-only-scan plan (Yugo Nagata, Tom Lane)", "title": "Fix UPDATE/DELETE ... WHERE CURRENT OF to not fail when the referenced cursor uses an index-only-scan plan", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "3d12414526203c306635fb0b65ea2a6424484dc506669342de8224ea7e30e05f", "section_path": ["Changes"], "commit_groups": [["0a0721f84", "12d18b487", "5b77c11da", "7de7ddb27", "8f5ac4404", "ee7bf0fd9"]], "identity_text": "Fix UPDATE/DELETE ... WHERE CURRENT OF to not fail when the referenced cursor uses an index-only-scan plan (Yugo Nagata, Tom Lane)", "commit_aliases": ["0a0721f84", "12d18b487", "5b77c11da", "7de7ddb27", "8f5ac4404", "ee7bf0fd9"], "source_commits": ["ee7bf0fd9"], "source_entry_id": "10.4/changes/014", "db_id": "276437aae600160130d6f092ec25aebd", "patch_ids": ["78ce9c5f1a3ef5e1808077f6ab982bde"], "statement_hash": "ea5abd72e1126fd333dcb5f251416bf100dfecbe0c24e2f2a25ddd2ee8738356", "relations": [{"rule": 2, "type": "equivalent", "target": "2a0ab3053bfdfc51b055b43959af1610", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ea5abd72e1126fd333dcb5f251416bf100dfecbe0c24e2f2a25ddd2ee8738356"}}, {"rule": 2, "type": "equivalent", "target": "4740d9f31fd4c12b6d5a04c40c8195be", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ea5abd72e1126fd333dcb5f251416bf100dfecbe0c24e2f2a25ddd2ee8738356"}}, {"rule": 2, "type": "equivalent", "target": "97bb10cc9f08896474b1fbb4124b5dea", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ea5abd72e1126fd333dcb5f251416bf100dfecbe0c24e2f2a25ddd2ee8738356"}}, {"rule": 2, "type": "equivalent", "target": "a676ae183019c3faf5d5c6e70ec82251", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ea5abd72e1126fd333dcb5f251416bf100dfecbe0c24e2f2a25ddd2ee8738356"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "a676ae183019c3faf5d5c6e70ec82251", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Fix UPDATE/DELETE ... WHERE CURRENT OF to not fail when the referenced cursor uses an index-only-scan plan", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ea5abd72e1126fd333dcb5f251416bf100dfecbe0c24e2f2a25ddd2ee8738356"}, "url": "/docs/compare/?release=9.6.9#9.6.9-61a23abfc56e0656", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "4740d9f31fd4c12b6d5a04c40c8195be", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Fix UPDATE/DELETE ... WHERE CURRENT OF to not fail when the referenced cursor uses an index-only-scan plan", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ea5abd72e1126fd333dcb5f251416bf100dfecbe0c24e2f2a25ddd2ee8738356"}, "url": "/docs/compare/?release=9.5.13#9.5.13-61a23abfc56e0656", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "97bb10cc9f08896474b1fbb4124b5dea", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Fix UPDATE/DELETE ... WHERE CURRENT OF to not fail when the referenced cursor uses an index-only-scan plan", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ea5abd72e1126fd333dcb5f251416bf100dfecbe0c24e2f2a25ddd2ee8738356"}, "url": "/docs/compare/?release=9.4.18#9.4.18-61a23abfc56e0656", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "2a0ab3053bfdfc51b055b43959af1610", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Fix UPDATE/DELETE ... WHERE CURRENT OF to not fail when the referenced cursor uses an index-only-scan plan", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ea5abd72e1126fd333dcb5f251416bf100dfecbe0c24e2f2a25ddd2ee8738356"}, "url": "/docs/compare/?release=9.3.23#9.3.23-61a23abfc56e0656", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-b0579bfa657b1fd7", "cves": [], "html": "<p>Fix incorrect planning of join clauses pushed into parameterized paths (Andrew Gierth, Tom Lane)</p>\n<p>This error could result in misclassifying a condition as a <span>“<span>join filter</span>”</span> for an outer join when it should be a plain <span>“<span>filter</span>”</span> condition, leading to incorrect join output.</p>", "text": "Fix incorrect planning of join clauses pushed into parameterized paths (Andrew Gierth, Tom Lane) This error could result in misclassifying a condition as a “join filter” for an outer join when it should be a plain “filter” condition, leading to incorrect join output.", "title": "Fix incorrect planning of join clauses pushed into parameterized paths", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "def47e36009954abad3d966522be5964fedbe7248350b22ae488e2b81c30e5bb", "section_path": ["Changes"], "commit_groups": [["0c141fcaa", "68fab04f7", "a347d5210", "e1d4398c0", "e4e43a16b", "e5d83995e"], ["306d6e59f"], ["58fec9526", "64ad85860", "80e12a621", "8b6294c7a", "9680c120e", "c792c7db4"]], "identity_text": "Fix incorrect planning of join clauses pushed into parameterized paths (Andrew Gierth, Tom Lane) This error could result in misclassifying a condition as a join filter for an outer join when it should be a plain filter condition, leading to incorrect join output.", "commit_aliases": ["0c141fcaa", "306d6e59f", "58fec9526", "64ad85860", "68fab04f7", "80e12a621", "8b6294c7a", "9680c120e", "a347d5210", "c792c7db4", "e1d4398c0", "e4e43a16b", "e5d83995e"], "source_commits": ["306d6e59f", "68fab04f7", "8b6294c7a"], "source_entry_id": "10.4/changes/015", "db_id": "06975570bb43368f9da3f3e6e63f9b5b", "patch_ids": ["888a5601317ad504d59eaeee4efcfba1", "ab7bbdd393e8339654afa30b4b191ef3", "b314ba5a764db1a77dabd23c1561b6e5"], "statement_hash": "b2d3d92abe45b4bc5c4c2e763a9089f60d7d13c908a2a9bacc483ebf0261889e", "relations": [{"rule": 2, "type": "equivalent", "target": "09ec2b803f67c9b215ef0d191cc745b9", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b2d3d92abe45b4bc5c4c2e763a9089f60d7d13c908a2a9bacc483ebf0261889e"}}, {"rule": 2, "type": "equivalent", "target": "385cc7ec3e8ca84a5532528a2053d355", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b2d3d92abe45b4bc5c4c2e763a9089f60d7d13c908a2a9bacc483ebf0261889e"}}, {"rule": 2, "type": "equivalent", "target": "c3f441037d6fc540343df997ba5757c6", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b2d3d92abe45b4bc5c4c2e763a9089f60d7d13c908a2a9bacc483ebf0261889e"}}, {"rule": 2, "type": "equivalent", "target": "f76c4e3fcb04e1fb3730b3de25bf89fd", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b2d3d92abe45b4bc5c4c2e763a9089f60d7d13c908a2a9bacc483ebf0261889e"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "385cc7ec3e8ca84a5532528a2053d355", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Fix incorrect planning of join clauses pushed into parameterized paths", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b2d3d92abe45b4bc5c4c2e763a9089f60d7d13c908a2a9bacc483ebf0261889e"}, "url": "/docs/compare/?release=9.6.9#9.6.9-b0579bfa657b1fd7", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "f76c4e3fcb04e1fb3730b3de25bf89fd", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Fix incorrect planning of join clauses pushed into parameterized paths", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b2d3d92abe45b4bc5c4c2e763a9089f60d7d13c908a2a9bacc483ebf0261889e"}, "url": "/docs/compare/?release=9.5.13#9.5.13-b0579bfa657b1fd7", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "c3f441037d6fc540343df997ba5757c6", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Fix incorrect planning of join clauses pushed into parameterized paths", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b2d3d92abe45b4bc5c4c2e763a9089f60d7d13c908a2a9bacc483ebf0261889e"}, "url": "/docs/compare/?release=9.4.18#9.4.18-b0579bfa657b1fd7", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "09ec2b803f67c9b215ef0d191cc745b9", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Fix incorrect planning of join clauses pushed into parameterized paths", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b2d3d92abe45b4bc5c4c2e763a9089f60d7d13c908a2a9bacc483ebf0261889e"}, "url": "/docs/compare/?release=9.3.23#9.3.23-b0579bfa657b1fd7", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-96b00218af1172bd", "cves": [], "html": "<p>Fix possibly incorrect generation of an index-only-scan plan when the same table column appears in multiple index columns, and only some of those index columns use operator classes that can return the column value (Kyotaro Horiguchi)</p>", "text": "Fix possibly incorrect generation of an index-only-scan plan when the same table column appears in multiple index columns, and only some of those index columns use operator classes that can return the column value (Kyotaro Horiguchi)", "title": "Fix possibly incorrect generation of an index-only-scan plan when the same table column appears in multiple index columns, and only some of those index columns use operator classes that can return the column value", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "9b7b1244f57e604bce03083833696e7538c40f04ade8fe0beff8feae648cfd62", "section_path": ["Changes"], "commit_groups": [["147b59971", "3f26be83e", "b5febc1d1", "be55bfc93"]], "identity_text": "Fix possibly incorrect generation of an index-only-scan plan when the same table column appears in multiple index columns, and only some of those index columns use operator classes that can return the column value (Kyotaro Horiguchi)", "commit_aliases": ["147b59971", "3f26be83e", "b5febc1d1", "be55bfc93"], "source_commits": ["147b59971"], "source_entry_id": "10.4/changes/016", "db_id": "5e50f2ba78c090789c3986ee7584e581", "patch_ids": ["c761d23ef8867f9737453beaac8da2e1"], "statement_hash": "8faf64f27dbbac5471cc14d45186c67d0150608739e241b36785cc3599bc1b1b", "relations": [{"rule": 2, "type": "equivalent", "target": "02264aa09149ae35fed8d78b05f44669", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8faf64f27dbbac5471cc14d45186c67d0150608739e241b36785cc3599bc1b1b"}}, {"rule": 2, "type": "equivalent", "target": "335bf823501c9efe11167e9cb9942f02", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8faf64f27dbbac5471cc14d45186c67d0150608739e241b36785cc3599bc1b1b"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "335bf823501c9efe11167e9cb9942f02", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Fix possibly incorrect generation of an index-only-scan plan when the same table column appears in multiple index columns, and only some of those index columns use operator classes that can return the column value", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8faf64f27dbbac5471cc14d45186c67d0150608739e241b36785cc3599bc1b1b"}, "url": "/docs/compare/?release=9.6.9#9.6.9-96b00218af1172bd", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "02264aa09149ae35fed8d78b05f44669", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Fix possibly incorrect generation of an index-only-scan plan when the same table column appears in multiple index columns, and only some of those index columns use operator classes that can return the column value", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8faf64f27dbbac5471cc14d45186c67d0150608739e241b36785cc3599bc1b1b"}, "url": "/docs/compare/?release=9.5.13#9.5.13-96b00218af1172bd", "source_url": "/docs/release/9.5.13/#AEN129230"}]}, {"id": "10.4-94adec7d109fb45c", "cves": [], "html": "<p>Fix misoptimization of <code>CHECK</code> constraints having provably-NULL subclauses of top-level <code>AND</code>/<code>OR</code> conditions (Tom Lane, Dean Rasheed)</p>\n<p>This could, for example, allow constraint exclusion to exclude a child table that should not be excluded from a query.</p>", "text": "Fix misoptimization of CHECK constraints having provably-NULL subclauses of top-level AND/OR conditions (Tom Lane, Dean Rasheed) This could, for example, allow constraint exclusion to exclude a child table that should not be excluded from a query.", "title": "Fix misoptimization of CHECK constraints having provably-NULL subclauses of top-level AND/OR conditions", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "5d1ec154901768e9c63d72fcb97a2eff9cf25e76e08c93d073a277e4b75e1743", "section_path": ["Changes"], "commit_groups": [["106d58805", "4a4e2442a", "925581d89", "976e5844e", "e2ed3c4a3", "e556fb137"]], "identity_text": "Fix misoptimization of CHECK constraints having provably-NULL subclauses of top-level AND/OR conditions (Tom Lane, Dean Rasheed) This could, for example, allow constraint exclusion to exclude a child table that should not be excluded from a query.", "commit_aliases": ["106d58805", "4a4e2442a", "925581d89", "976e5844e", "e2ed3c4a3", "e556fb137"], "source_commits": ["e2ed3c4a3"], "source_entry_id": "10.4/changes/017", "db_id": "93aed99951085f5f712fdcc5e8e7b204", "patch_ids": ["0e11974f1dc9eb4726463568149ca6ae"], "statement_hash": "6d749968e0afa0cfaf9eed8c508bebbf93e3915e6de338de79618220b40171e8", "relations": [{"rule": 2, "type": "equivalent", "target": "751864888c8d30783ddb1f606d0926b7", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6d749968e0afa0cfaf9eed8c508bebbf93e3915e6de338de79618220b40171e8"}}, {"rule": 2, "type": "equivalent", "target": "882de0e68f70dccc590c805899ce41b4", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6d749968e0afa0cfaf9eed8c508bebbf93e3915e6de338de79618220b40171e8"}}, {"rule": 2, "type": "equivalent", "target": "e895843a75a8dc275aec770e0af95c62", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6d749968e0afa0cfaf9eed8c508bebbf93e3915e6de338de79618220b40171e8"}}, {"rule": 2, "type": "equivalent", "target": "f3056884eb9a381bf3016240f199c28f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6d749968e0afa0cfaf9eed8c508bebbf93e3915e6de338de79618220b40171e8"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "f3056884eb9a381bf3016240f199c28f", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Fix misoptimization of CHECK constraints having provably-NULL subclauses of top-level AND/OR conditions", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6d749968e0afa0cfaf9eed8c508bebbf93e3915e6de338de79618220b40171e8"}, "url": "/docs/compare/?release=9.6.9#9.6.9-94adec7d109fb45c", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "751864888c8d30783ddb1f606d0926b7", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Fix misoptimization of CHECK constraints having provably-NULL subclauses of top-level AND/OR conditions", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6d749968e0afa0cfaf9eed8c508bebbf93e3915e6de338de79618220b40171e8"}, "url": "/docs/compare/?release=9.5.13#9.5.13-94adec7d109fb45c", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "e895843a75a8dc275aec770e0af95c62", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Fix misoptimization of CHECK constraints having provably-NULL subclauses of top-level AND/OR conditions", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6d749968e0afa0cfaf9eed8c508bebbf93e3915e6de338de79618220b40171e8"}, "url": "/docs/compare/?release=9.4.18#9.4.18-94adec7d109fb45c", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "882de0e68f70dccc590c805899ce41b4", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Fix misoptimization of CHECK constraints having provably-NULL subclauses of top-level AND/OR conditions", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6d749968e0afa0cfaf9eed8c508bebbf93e3915e6de338de79618220b40171e8"}, "url": "/docs/compare/?release=9.3.23#9.3.23-94adec7d109fb45c", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-4154f6e42d9f5928", "cves": [], "html": "<p>Prevent planner crash when a query has multiple <code>GROUPING SETS</code>, none of which can be implemented by sorting (Andrew Gierth)</p>", "text": "Prevent planner crash when a query has multiple GROUPING SETS, none of which can be implemented by sorting (Andrew Gierth)", "title": "Prevent planner crash when a query has multiple GROUPING SETS, none of which can be implemented by sorting", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "f5fe361d6ae23aea23847e8ac60ca0c13bac63ce171db1c3c00d920d91d3e20a", "section_path": ["Changes"], "commit_groups": [["cf21c4649", "d2d79887e"]], "identity_text": "Prevent planner crash when a query has multiple GROUPING SETS, none of which can be implemented by sorting (Andrew Gierth)", "commit_aliases": ["cf21c4649", "d2d79887e"], "source_commits": ["cf21c4649"], "source_entry_id": "10.4/changes/018", "db_id": "2c663a2cc0478045d5349111117004ac", "patch_ids": ["aca717029a267371c59c236bd3312f5c"], "statement_hash": "c1587c350f9df87537c95a09d0799cf58040a7a3076b5494ccde45a67d875508", "relations": [], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": []}, {"id": "10.4-62b827c119b42bb5", "cves": [], "html": "<p>Fix executor crash due to double free in some <code>GROUPING SETS</code> usages (Peter Geoghegan)</p>", "text": "Fix executor crash due to double free in some GROUPING SETS usages (Peter Geoghegan)", "title": "Fix executor crash due to double free in some GROUPING SETS usages", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "eca943b5c1fc23e680ab62e63abb266ef0687d5f83473e295a71cc2400b76e81", "section_path": ["Changes"], "commit_groups": [["90decdba3", "c2d4eb1b1", "c98f218fb", "e4ff71158"]], "identity_text": "Fix executor crash due to double free in some GROUPING SETS usages (Peter Geoghegan)", "commit_aliases": ["90decdba3", "c2d4eb1b1", "c98f218fb", "e4ff71158"], "source_commits": ["c98f218fb"], "source_entry_id": "10.4/changes/019", "db_id": "96c9ca643452e8d317b11b5de5e77054", "patch_ids": ["936db855f3bab83d9fb1f139db3a963e"], "statement_hash": "f4179e2dfec8305f9f81f2dafc55175cd75c4dd78697070f1511b2d0a4e4de7f", "relations": [], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": []}, {"id": "10.4-8a3164de88bbcd7c", "cves": [], "html": "<p>Fix misexecution of self-joins on transition tables (Thomas Munro)</p>", "text": "Fix misexecution of self-joins on transition tables (Thomas Munro)", "title": "Fix misexecution of self-joins on transition tables", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "673d02061dca0d0459864c1ac1653c5073b6fe57813e21cae8d04044ff101a20", "section_path": ["Changes"], "commit_groups": [["b9dac4a6e", "e98a4de7d"]], "identity_text": "Fix misexecution of self-joins on transition tables (Thomas Munro)", "commit_aliases": ["b9dac4a6e", "e98a4de7d"], "source_commits": ["b9dac4a6e"], "source_entry_id": "10.4/changes/020", "db_id": "15a5cfefc984af5adaa843ae8d9fc07c", "patch_ids": ["5a8ec9775d7b44eb8fa925decc400034"], "statement_hash": "ebd1d85f5738df86e2ace98d2b060d333bd8864c30c81ec3c0a5a1d7b3a60ccf", "relations": [], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": []}, {"id": "10.4-6f6e7de390c981c4", "cves": [], "html": "<p>Avoid crash if a table rewrite event trigger is added concurrently with a command that could call such a trigger (Álvaro Herrera, Andrew Gierth, Tom Lane)</p>", "text": "Avoid crash if a table rewrite event trigger is added concurrently with a command that could call such a trigger (Álvaro Herrera, Andrew Gierth, Tom Lane)", "title": "Avoid crash if a table rewrite event trigger is added concurrently with a command that could call such a trigger", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "fc799c55d28293d9fc23bb58fafc5d2ca168766c492c435af6cadf4eb485b74b", "section_path": ["Changes"], "commit_groups": [["168df1b84", "b1b71f165", "c76d0eed2", "fab4ecacc"]], "identity_text": "Avoid crash if a table rewrite event trigger is added concurrently with a command that could call such a trigger (Álvaro Herrera, Andrew Gierth, Tom Lane)", "commit_aliases": ["168df1b84", "b1b71f165", "c76d0eed2", "fab4ecacc"], "source_commits": ["fab4ecacc"], "source_entry_id": "10.4/changes/021", "db_id": "54bc88655b4d449b3ded2bcec026a3b0", "patch_ids": ["5561754879b3df8b8cbe37c2b5dbec86"], "statement_hash": "03f74730007f0bec49a7ddf89cc7e53d382284442baa9869c8e49b7e9a2f20ae", "relations": [{"rule": 2, "type": "equivalent", "target": "48f75aca2470d1ed3c33a2c14b6be9da", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "03f74730007f0bec49a7ddf89cc7e53d382284442baa9869c8e49b7e9a2f20ae"}}, {"rule": 2, "type": "equivalent", "target": "808fd84d59264eecac5e89ba65c97b92", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "03f74730007f0bec49a7ddf89cc7e53d382284442baa9869c8e49b7e9a2f20ae"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "48f75aca2470d1ed3c33a2c14b6be9da", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Avoid crash if a table rewrite event trigger is added concurrently with a command that could call such a trigger", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "03f74730007f0bec49a7ddf89cc7e53d382284442baa9869c8e49b7e9a2f20ae"}, "url": "/docs/compare/?release=9.6.9#9.6.9-6f6e7de390c981c4", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "808fd84d59264eecac5e89ba65c97b92", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Avoid crash if a table rewrite event trigger is added concurrently with a command that could call such a trigger", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "03f74730007f0bec49a7ddf89cc7e53d382284442baa9869c8e49b7e9a2f20ae"}, "url": "/docs/compare/?release=9.5.13#9.5.13-6f6e7de390c981c4", "source_url": "/docs/release/9.5.13/#AEN129230"}]}, {"id": "10.4-11745830bec5b166", "cves": [], "html": "<p>Avoid failure if a query-cancel or session-termination interrupt occurs while committing a prepared transaction (Stas Kelvich)</p>", "text": "Avoid failure if a query-cancel or session-termination interrupt occurs while committing a prepared transaction (Stas Kelvich)", "title": "Avoid failure if a query-cancel or session-termination interrupt occurs while committing a prepared transaction", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "62fc34ae70cb2ad37a6fe682ce14547e7e574564e421da3fdfde1d8c35eb319f", "section_path": ["Changes"], "commit_groups": [["540e7a6e5", "6bd659f19", "8f9be261f", "d3fc427f4", "d9b3bc552", "ee492e3de"]], "identity_text": "Avoid failure if a query-cancel or session-termination interrupt occurs while committing a prepared transaction (Stas Kelvich)", "commit_aliases": ["540e7a6e5", "6bd659f19", "8f9be261f", "d3fc427f4", "d9b3bc552", "ee492e3de"], "source_commits": ["ee492e3de"], "source_entry_id": "10.4/changes/022", "db_id": "ca27f93498d8f85bc983e8f7cce04b4e", "patch_ids": ["8a71f2a773678185211dd85e0a816ea5"], "statement_hash": "26732acdda4921b6f838a4333718ce3c83af57120659d19116cb1f6c71a643c6", "relations": [{"rule": 2, "type": "equivalent", "target": "012d886d228aff5bad6e972250232db0", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "26732acdda4921b6f838a4333718ce3c83af57120659d19116cb1f6c71a643c6"}}, {"rule": 2, "type": "equivalent", "target": "5628c69795113451c28bba4883f0f9de", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "26732acdda4921b6f838a4333718ce3c83af57120659d19116cb1f6c71a643c6"}}, {"rule": 2, "type": "equivalent", "target": "cff7a0484624c247e29a0c6b706c2f13", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "26732acdda4921b6f838a4333718ce3c83af57120659d19116cb1f6c71a643c6"}}, {"rule": 2, "type": "equivalent", "target": "d849870dcc8a1165e36e3e5ce10a3b6d", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "26732acdda4921b6f838a4333718ce3c83af57120659d19116cb1f6c71a643c6"}}], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "d849870dcc8a1165e36e3e5ce10a3b6d", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Avoid failure if a query-cancel or session-termination interrupt occurs while committing a prepared transaction", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "26732acdda4921b6f838a4333718ce3c83af57120659d19116cb1f6c71a643c6"}, "url": "/docs/compare/?release=9.6.9#9.6.9-11745830bec5b166", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "012d886d228aff5bad6e972250232db0", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Avoid failure if a query-cancel or session-termination interrupt occurs while committing a prepared transaction", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "26732acdda4921b6f838a4333718ce3c83af57120659d19116cb1f6c71a643c6"}, "url": "/docs/compare/?release=9.5.13#9.5.13-11745830bec5b166", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "cff7a0484624c247e29a0c6b706c2f13", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Avoid failure if a query-cancel or session-termination interrupt occurs while committing a prepared transaction", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "26732acdda4921b6f838a4333718ce3c83af57120659d19116cb1f6c71a643c6"}, "url": "/docs/compare/?release=9.4.18#9.4.18-11745830bec5b166", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "5628c69795113451c28bba4883f0f9de", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Avoid failure if a query-cancel or session-termination interrupt occurs while committing a prepared transaction", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "26732acdda4921b6f838a4333718ce3c83af57120659d19116cb1f6c71a643c6"}, "url": "/docs/compare/?release=9.3.23#9.3.23-11745830bec5b166", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-286400ffee089031", "cves": [], "html": "<p>Fix query-lifespan memory leakage in repeatedly executed hash joins (Tom Lane)</p>", "text": "Fix query-lifespan memory leakage in repeatedly executed hash joins (Tom Lane)", "title": "Fix query-lifespan memory leakage in repeatedly executed hash joins", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "ccd18928e29728c814961d5f7bac070dcaf63a10cb68eb352385f0fef4ef07fa", "section_path": ["Changes"], "commit_groups": [["2709549ec", "5149dc934", "574386ddc", "9e17bdb8a", "bdc7f686d", "c17a58967"]], "identity_text": "Fix query-lifespan memory leakage in repeatedly executed hash joins (Tom Lane)", "commit_aliases": ["2709549ec", "5149dc934", "574386ddc", "9e17bdb8a", "bdc7f686d", "c17a58967"], "source_commits": ["bdc7f686d"], "source_entry_id": "10.4/changes/023", "db_id": "37e110dbf8a28646a158b4bd829b0115", "patch_ids": ["57b9b44ced3e8312c9b9155e4d394474"], "statement_hash": "0f4a9b752cfbda9ec6ff503ebc96756625ad75ca12c51d4ecbc5a3387e7a0647", "relations": [{"rule": 2, "type": "equivalent", "target": "0df67385cc5c95a9daf22ff35d53e649", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0f4a9b752cfbda9ec6ff503ebc96756625ad75ca12c51d4ecbc5a3387e7a0647"}}, {"rule": 2, "type": "equivalent", "target": "4f09861cbb7f6d11a0d870c50652e1a6", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0f4a9b752cfbda9ec6ff503ebc96756625ad75ca12c51d4ecbc5a3387e7a0647"}}, {"rule": 2, "type": "equivalent", "target": "71c7a2b03e210421a27cd8b7e75a48fc", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0f4a9b752cfbda9ec6ff503ebc96756625ad75ca12c51d4ecbc5a3387e7a0647"}}, {"rule": 2, "type": "equivalent", "target": "9e4930edcd94bb3585db04e3f475fb38", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0f4a9b752cfbda9ec6ff503ebc96756625ad75ca12c51d4ecbc5a3387e7a0647"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "71c7a2b03e210421a27cd8b7e75a48fc", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Fix query-lifespan memory leakage in repeatedly executed hash joins", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0f4a9b752cfbda9ec6ff503ebc96756625ad75ca12c51d4ecbc5a3387e7a0647"}, "url": "/docs/compare/?release=9.6.9#9.6.9-286400ffee089031", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "0df67385cc5c95a9daf22ff35d53e649", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Fix query-lifespan memory leakage in repeatedly executed hash joins", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0f4a9b752cfbda9ec6ff503ebc96756625ad75ca12c51d4ecbc5a3387e7a0647"}, "url": "/docs/compare/?release=9.5.13#9.5.13-286400ffee089031", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "4f09861cbb7f6d11a0d870c50652e1a6", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Fix query-lifespan memory leakage in repeatedly executed hash joins", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0f4a9b752cfbda9ec6ff503ebc96756625ad75ca12c51d4ecbc5a3387e7a0647"}, "url": "/docs/compare/?release=9.4.18#9.4.18-286400ffee089031", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "9e4930edcd94bb3585db04e3f475fb38", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Fix query-lifespan memory leakage in repeatedly executed hash joins", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0f4a9b752cfbda9ec6ff503ebc96756625ad75ca12c51d4ecbc5a3387e7a0647"}, "url": "/docs/compare/?release=9.3.23#9.3.23-286400ffee089031", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-b90c5debbb84c613", "cves": [], "html": "<p>Fix possible leak or double free of visibility map buffer pins (Amit Kapila)</p>", "text": "Fix possible leak or double free of visibility map buffer pins (Amit Kapila)", "title": "Fix possible leak or double free of visibility map buffer pins", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "1e3d7cdc3ddbc90d3203c865101ce97c1d32e9875ffd80668c01e2efe26903d4", "section_path": ["Changes"], "commit_groups": [["0b1d1a038", "76ec45756", "96d2df840"]], "identity_text": "Fix possible leak or double free of visibility map buffer pins (Amit Kapila)", "commit_aliases": ["0b1d1a038", "76ec45756", "96d2df840"], "source_commits": ["76ec45756"], "source_entry_id": "10.4/changes/024", "db_id": "20a33648aac76ececec461e92d30ddd2", "patch_ids": ["d4407fedf486297b7a96d7a9e17a2afd"], "statement_hash": "d986de5693d65fb975708e8752deb458d5ddde3b65760ce863b7321a3b14c008", "relations": [{"rule": 2, "type": "equivalent", "target": "ac64c8fe93d04a833ec28069fedd286b", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "d986de5693d65fb975708e8752deb458d5ddde3b65760ce863b7321a3b14c008"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "ac64c8fe93d04a833ec28069fedd286b", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Fix possible leak or double free of visibility map buffer pins", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "d986de5693d65fb975708e8752deb458d5ddde3b65760ce863b7321a3b14c008"}, "url": "/docs/compare/?release=9.6.9#9.6.9-b90c5debbb84c613", "source_url": "/docs/release/9.6.9/#AEN134496"}]}, {"id": "10.4-521ff4cd3cdcb7f7", "cves": [], "html": "<p>Avoid spuriously marking pages as all-visible (Dan Wood, Pavan Deolasee, Álvaro Herrera)</p>\n<p>This could happen if some tuples were locked (but not deleted). While queries would still function correctly, vacuum would normally ignore such pages, with the long-term effect that the tuples were never frozen. In recent releases this would eventually result in errors such as <span>“<span>found multixact <em><code>nnnnn</code></em> from before relminmxid <em><code>nnnnn</code></em></span>”</span>.</p>", "text": "Avoid spuriously marking pages as all-visible (Dan Wood, Pavan Deolasee, Álvaro Herrera) This could happen if some tuples were locked (but not deleted). While queries would still function correctly, vacuum would normally ignore such pages, with the long-term effect that the tuples were never frozen. In recent releases this would eventually result in errors such as “found multixact nnnnn from before relminmxid nnnnn”.", "title": "Avoid spuriously marking pages as all-visible", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "7ace8e387b3ab98f864aee4251e40ac8818fca446504ca00b6f162d4aa9a056e", "section_path": ["Changes"], "commit_groups": [["3a11485a5", "d2599ecfc", "e1d634758"]], "identity_text": "Avoid spuriously marking pages as all-visible (Dan Wood, Pavan Deolasee, Álvaro Herrera) This could happen if some tuples were locked (but not deleted). While queries would still function correctly, vacuum would normally ignore such pages, with the long-term effect that the tuples were never frozen. In recent releases this would eventually result in errors such as found multixact nnnnn from before relminmxid nnnnn.", "commit_aliases": ["3a11485a5", "d2599ecfc", "e1d634758"], "source_commits": ["e1d634758"], "source_entry_id": "10.4/changes/025", "db_id": "1d3b6cece276e3df26ef170aa10e1859", "patch_ids": ["584a0a4893fa7a75bee0efe2aad2a8c0"], "statement_hash": "fca671a395fba358138ebd33a829783c11a8a8e7abac639f86535c692ce667f9", "relations": [{"rule": 2, "type": "equivalent", "target": "e4779bd0f848729c290922e037e56984", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "fca671a395fba358138ebd33a829783c11a8a8e7abac639f86535c692ce667f9"}}], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "e4779bd0f848729c290922e037e56984", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Avoid spuriously marking pages as all-visible", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "fca671a395fba358138ebd33a829783c11a8a8e7abac639f86535c692ce667f9"}, "url": "/docs/compare/?release=9.6.9#9.6.9-521ff4cd3cdcb7f7", "source_url": "/docs/release/9.6.9/#AEN134496"}]}, {"id": "10.4-8878acbffdf39b4e", "cves": [], "html": "<p>Fix overly strict sanity check in <code>heap_prepare_freeze_tuple</code> (Álvaro Herrera)</p>\n<p>This could result in incorrect <span>“<span>cannot freeze committed xmax</span>”</span> failures in databases that have been <span>pg_upgrade</span>'d from 9.2 or earlier.</p>", "text": "Fix overly strict sanity check in heap_prepare_freeze_tuple (Álvaro Herrera) This could result in incorrect “cannot freeze committed xmax” failures in databases that have been pg_upgrade'd from 9.2 or earlier.", "title": "Fix overly strict sanity check in heap_prepare_freeze_tuple", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "fbca40a4fb8da5317b9219df920bda94fb10fc6748d88dba8ebc360819b5f707", "section_path": ["Changes"], "commit_groups": [["0ddaaa4cf", "3ee23834e", "477ad05e1", "491bbc36e", "650f3863f", "aad956ada"]], "identity_text": "Fix overly strict sanity check in heap_prepare_freeze_tuple (Álvaro Herrera) This could result in incorrect cannot freeze committed xmax failures in databases that have been pg_upgrade'd from 9.2 or earlier.", "commit_aliases": ["0ddaaa4cf", "3ee23834e", "477ad05e1", "491bbc36e", "650f3863f", "aad956ada"], "source_commits": ["aad956ada"], "source_entry_id": "10.4/changes/026", "db_id": "398a20d1a113f4524097788e53a7290d", "patch_ids": ["f48373906a2952201874cd74711ef8ee"], "statement_hash": "7ed39eef1e57cd7e00a373aac583d30ed3c0bf86f233c1d555ddc4cf3ba152dc", "relations": [{"rule": 2, "type": "equivalent", "target": "2abcc7387b054f346a1363b3f6a58d27", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "7ed39eef1e57cd7e00a373aac583d30ed3c0bf86f233c1d555ddc4cf3ba152dc"}}, {"rule": 2, "type": "equivalent", "target": "79e214f56277346dcf9d8f861f30a6de", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "7ed39eef1e57cd7e00a373aac583d30ed3c0bf86f233c1d555ddc4cf3ba152dc"}}, {"rule": 2, "type": "equivalent", "target": "eb8fd9fe9ea505f2e72c7ec81b50306c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "7ed39eef1e57cd7e00a373aac583d30ed3c0bf86f233c1d555ddc4cf3ba152dc"}}, {"rule": 2, "type": "equivalent", "target": "f6753ab33de390a304692dce8a7a98aa", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "7ed39eef1e57cd7e00a373aac583d30ed3c0bf86f233c1d555ddc4cf3ba152dc"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "79e214f56277346dcf9d8f861f30a6de", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Fix overly strict sanity check in heap_prepare_freeze_tuple", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "7ed39eef1e57cd7e00a373aac583d30ed3c0bf86f233c1d555ddc4cf3ba152dc"}, "url": "/docs/compare/?release=9.6.9#9.6.9-8878acbffdf39b4e", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "f6753ab33de390a304692dce8a7a98aa", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Fix overly strict sanity check in heap_prepare_freeze_tuple", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "7ed39eef1e57cd7e00a373aac583d30ed3c0bf86f233c1d555ddc4cf3ba152dc"}, "url": "/docs/compare/?release=9.5.13#9.5.13-8878acbffdf39b4e", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "2abcc7387b054f346a1363b3f6a58d27", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Fix overly strict sanity check in heap_prepare_freeze_tuple", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "7ed39eef1e57cd7e00a373aac583d30ed3c0bf86f233c1d555ddc4cf3ba152dc"}, "url": "/docs/compare/?release=9.4.18#9.4.18-8878acbffdf39b4e", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "eb8fd9fe9ea505f2e72c7ec81b50306c", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Fix overly strict sanity check in heap_prepare_freeze_tuple", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "7ed39eef1e57cd7e00a373aac583d30ed3c0bf86f233c1d555ddc4cf3ba152dc"}, "url": "/docs/compare/?release=9.3.23#9.3.23-8878acbffdf39b4e", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-1cd3232ce28f55c1", "cves": [], "html": "<p>Prevent dangling-pointer dereference when a C-coded before-update row trigger returns the <span>“<span>old</span>”</span> tuple (Rushabh Lathia)</p>", "text": "Prevent dangling-pointer dereference when a C-coded before-update row trigger returns the “old” tuple (Rushabh Lathia)", "title": "Prevent dangling-pointer dereference when a C-coded before-update row trigger returns the “old” tuple", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "89c3d75c786ed55ca553708856e49b33fa30afe0b811dcd86e9d6542d30c837e", "section_path": ["Changes"], "commit_groups": [["06f47297e", "25b692568", "2ee44e10d", "5ccb77586", "9bc33ef5e", "b45f821e2"]], "identity_text": "Prevent dangling-pointer dereference when a C-coded before-update row trigger returns the old tuple (Rushabh Lathia)", "commit_aliases": ["06f47297e", "25b692568", "2ee44e10d", "5ccb77586", "9bc33ef5e", "b45f821e2"], "source_commits": ["b45f821e2"], "source_entry_id": "10.4/changes/027", "db_id": "682362add12a729c5489dda7142bb171", "patch_ids": ["d8b22bb1093d874a7a622e749525e5c3"], "statement_hash": "1581e97b63de5ec4cf403ff5eb79d5d42e75c8a4a73e4fea04cec1547ec53db5", "relations": [{"rule": 2, "type": "equivalent", "target": "42acf6090644d3f87227ffaf6b8764ed", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1581e97b63de5ec4cf403ff5eb79d5d42e75c8a4a73e4fea04cec1547ec53db5"}}, {"rule": 2, "type": "equivalent", "target": "88113e2fb8b0f955ded947c1de92d902", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1581e97b63de5ec4cf403ff5eb79d5d42e75c8a4a73e4fea04cec1547ec53db5"}}, {"rule": 2, "type": "equivalent", "target": "c6793ae4b983258e6c3bf3db3f4a11c5", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1581e97b63de5ec4cf403ff5eb79d5d42e75c8a4a73e4fea04cec1547ec53db5"}}, {"rule": 2, "type": "equivalent", "target": "e75cd9e0f10d48299c3554b88d509da4", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1581e97b63de5ec4cf403ff5eb79d5d42e75c8a4a73e4fea04cec1547ec53db5"}}], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "e75cd9e0f10d48299c3554b88d509da4", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Prevent dangling-pointer dereference when a C-coded before-update row trigger returns the \"old\" tuple", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1581e97b63de5ec4cf403ff5eb79d5d42e75c8a4a73e4fea04cec1547ec53db5"}, "url": "/docs/compare/?release=9.6.9#9.6.9-967a3d0887295315", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "42acf6090644d3f87227ffaf6b8764ed", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Prevent dangling-pointer dereference when a C-coded before-update row trigger returns the \"old\" tuple", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1581e97b63de5ec4cf403ff5eb79d5d42e75c8a4a73e4fea04cec1547ec53db5"}, "url": "/docs/compare/?release=9.5.13#9.5.13-967a3d0887295315", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "88113e2fb8b0f955ded947c1de92d902", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Prevent dangling-pointer dereference when a C-coded before-update row trigger returns the \"old\" tuple", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1581e97b63de5ec4cf403ff5eb79d5d42e75c8a4a73e4fea04cec1547ec53db5"}, "url": "/docs/compare/?release=9.4.18#9.4.18-967a3d0887295315", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "c6793ae4b983258e6c3bf3db3f4a11c5", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Prevent dangling-pointer dereference when a C-coded before-update row trigger returns the \"old\" tuple", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "1581e97b63de5ec4cf403ff5eb79d5d42e75c8a4a73e4fea04cec1547ec53db5"}, "url": "/docs/compare/?release=9.3.23#9.3.23-967a3d0887295315", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-44a8dc1fe66d2d6d", "cves": [], "html": "<p>Reduce locking during autovacuum worker scheduling (Jeff Janes)</p>\n<p>The previous behavior caused drastic loss of potential worker concurrency in databases with many tables.</p>", "text": "Reduce locking during autovacuum worker scheduling (Jeff Janes) The previous behavior caused drastic loss of potential worker concurrency in databases with many tables.", "title": "Reduce locking during autovacuum worker scheduling", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "3387455cccb0c66de0a2f5bb8bb12f0af5c66558a7843d04caa83d7164d7ef33", "section_path": ["Changes"], "commit_groups": [["231329a17", "38f7831d7", "4460964ae", "4b0e71705", "5328b6135", "95f08d32d"]], "identity_text": "Reduce locking during autovacuum worker scheduling (Jeff Janes) The previous behavior caused drastic loss of potential worker concurrency in databases with many tables.", "commit_aliases": ["231329a17", "38f7831d7", "4460964ae", "4b0e71705", "5328b6135", "95f08d32d"], "source_commits": ["4460964ae"], "source_entry_id": "10.4/changes/028", "db_id": "c2fe5d0b1b1ea315c42bb0cbb189e2e2", "patch_ids": ["9b43380243e3f0d020834e1da7d560e2"], "statement_hash": "14de4f415f73c95f0c21dc7a5a2f4dcb137aa0473d074fd71c6a8f14019a7ff4", "relations": [{"rule": 2, "type": "equivalent", "target": "3b3a523818a14c0f9504acf49b8853ed", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "14de4f415f73c95f0c21dc7a5a2f4dcb137aa0473d074fd71c6a8f14019a7ff4"}}, {"rule": 2, "type": "equivalent", "target": "69c3a93060056cf09ae728faa3c6b1ef", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "14de4f415f73c95f0c21dc7a5a2f4dcb137aa0473d074fd71c6a8f14019a7ff4"}}, {"rule": 2, "type": "equivalent", "target": "9879651e1577c9bf2b980164dc96fc99", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "14de4f415f73c95f0c21dc7a5a2f4dcb137aa0473d074fd71c6a8f14019a7ff4"}}, {"rule": 2, "type": "equivalent", "target": "cbe49277038634d0ff5d46032b18414e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "14de4f415f73c95f0c21dc7a5a2f4dcb137aa0473d074fd71c6a8f14019a7ff4"}}], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "69c3a93060056cf09ae728faa3c6b1ef", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Reduce locking during autovacuum worker scheduling", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "14de4f415f73c95f0c21dc7a5a2f4dcb137aa0473d074fd71c6a8f14019a7ff4"}, "url": "/docs/compare/?release=9.6.9#9.6.9-44a8dc1fe66d2d6d", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "cbe49277038634d0ff5d46032b18414e", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Reduce locking during autovacuum worker scheduling", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "14de4f415f73c95f0c21dc7a5a2f4dcb137aa0473d074fd71c6a8f14019a7ff4"}, "url": "/docs/compare/?release=9.5.13#9.5.13-44a8dc1fe66d2d6d", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "3b3a523818a14c0f9504acf49b8853ed", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Reduce locking during autovacuum worker scheduling", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "14de4f415f73c95f0c21dc7a5a2f4dcb137aa0473d074fd71c6a8f14019a7ff4"}, "url": "/docs/compare/?release=9.4.18#9.4.18-44a8dc1fe66d2d6d", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "9879651e1577c9bf2b980164dc96fc99", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Reduce locking during autovacuum worker scheduling", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "14de4f415f73c95f0c21dc7a5a2f4dcb137aa0473d074fd71c6a8f14019a7ff4"}, "url": "/docs/compare/?release=9.3.23#9.3.23-44a8dc1fe66d2d6d", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-a93cd3ee21b64e07", "cves": [], "html": "<p>Ensure client hostname is copied while copying <code>pg_stat_activity</code> data to local memory (Edmund Horner)</p>\n<p>Previously the supposedly-local snapshot contained a pointer into shared memory, allowing the client hostname column to change unexpectedly if any existing session disconnected.</p>", "text": "Ensure client hostname is copied while copying pg_stat_activity data to local memory (Edmund Horner) Previously the supposedly-local snapshot contained a pointer into shared memory, allowing the client hostname column to change unexpectedly if any existing session disconnected.", "title": "Ensure client hostname is copied while copying pg_stat_activity data to local memory", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "ec3d644d56289ae06f6ac477f736e7c3a3c800f98581d08892c7e12e4609b38b", "section_path": ["Changes"], "commit_groups": [["310d1379d", "74dc05e01", "89c2ab340", "a820b4c32", "dfc383cf3", "fd2efda5d"]], "identity_text": "Ensure client hostname is copied while copying pg_stat_activity data to local memory (Edmund Horner) Previously the supposedly-local snapshot contained a pointer into shared memory, allowing the client hostname column to change unexpectedly if any existing session disconnected.", "commit_aliases": ["310d1379d", "74dc05e01", "89c2ab340", "a820b4c32", "dfc383cf3", "fd2efda5d"], "source_commits": ["89c2ab340"], "source_entry_id": "10.4/changes/029", "db_id": "8b056c527a773e38bdf57355cb610251", "patch_ids": ["6d759f4f9909d6a7fa6c849e5d24f964"], "statement_hash": "78dc8299634ce114ccef0a29a0137833d2b717c32aef987d8972f700e819ef2d", "relations": [{"rule": 2, "type": "equivalent", "target": "5c7983b5c911e39d4fb4734b69fbec03", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "78dc8299634ce114ccef0a29a0137833d2b717c32aef987d8972f700e819ef2d"}}, {"rule": 2, "type": "equivalent", "target": "92c0710eaf0262eb5500ccb1efe0542e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "78dc8299634ce114ccef0a29a0137833d2b717c32aef987d8972f700e819ef2d"}}, {"rule": 2, "type": "equivalent", "target": "af3a25fc707a614cafcb9ff72f88cf20", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "78dc8299634ce114ccef0a29a0137833d2b717c32aef987d8972f700e819ef2d"}}, {"rule": 2, "type": "equivalent", "target": "fda974396483a47344c45c305f2cefe9", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "78dc8299634ce114ccef0a29a0137833d2b717c32aef987d8972f700e819ef2d"}}], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "5c7983b5c911e39d4fb4734b69fbec03", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Ensure client hostname is copied while copying pg_stat_activity data to local memory", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "78dc8299634ce114ccef0a29a0137833d2b717c32aef987d8972f700e819ef2d"}, "url": "/docs/compare/?release=9.6.9#9.6.9-a93cd3ee21b64e07", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "fda974396483a47344c45c305f2cefe9", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Ensure client hostname is copied while copying pg_stat_activity data to local memory", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "78dc8299634ce114ccef0a29a0137833d2b717c32aef987d8972f700e819ef2d"}, "url": "/docs/compare/?release=9.5.13#9.5.13-a93cd3ee21b64e07", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "92c0710eaf0262eb5500ccb1efe0542e", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Ensure client hostname is copied while copying pg_stat_activity data to local memory", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "78dc8299634ce114ccef0a29a0137833d2b717c32aef987d8972f700e819ef2d"}, "url": "/docs/compare/?release=9.4.18#9.4.18-a93cd3ee21b64e07", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "af3a25fc707a614cafcb9ff72f88cf20", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Ensure client hostname is copied while copying pg_stat_activity data to local memory", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "78dc8299634ce114ccef0a29a0137833d2b717c32aef987d8972f700e819ef2d"}, "url": "/docs/compare/?release=9.3.23#9.3.23-a93cd3ee21b64e07", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-2df014e38d82a933", "cves": [], "html": "<p>Handle <code>pg_stat_activity</code> information for auxiliary processes correctly (Edmund Horner)</p>\n<p>The <code>application_name</code>, <code>client_hostname</code>, and <code>query</code> fields might show incorrect data for such processes.</p>", "text": "Handle pg_stat_activity information for auxiliary processes correctly (Edmund Horner) The application_name, client_hostname, and query fields might show incorrect data for such processes.", "title": "Handle pg_stat_activity information for auxiliary processes correctly", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "36727c810a10fe5d3d78fa64553351f20833555053e79f4dbeda7b90ee27ee44", "section_path": ["Changes"], "commit_groups": [["811969b21", "93b3d43dc"]], "identity_text": "Handle pg_stat_activity information for auxiliary processes correctly (Edmund Horner) The application_name, client_hostname, and query fields might show incorrect data for such processes.", "commit_aliases": ["811969b21", "93b3d43dc"], "source_commits": ["93b3d43dc"], "source_entry_id": "10.4/changes/030", "db_id": "e130c4af0440ff7ef93bf71883857a40", "patch_ids": ["bae11d41151c1b600867dccde769af50"], "statement_hash": "417af5aab2a4ddb911c61c879c523b92e0487d1117c5efa3e60763f8c15f3140", "relations": [], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": []}, {"id": "10.4-b34afb9e7acc8bbe", "cves": [], "html": "<p>Fix incorrect processing of multiple compound affixes in <code>ispell</code> dictionaries (Arthur Zakirov)</p>", "text": "Fix incorrect processing of multiple compound affixes in ispell dictionaries (Arthur Zakirov)", "title": "Fix incorrect processing of multiple compound affixes in ispell dictionaries", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "aa4fd8e8ec0ae4aee4c7dc0a770d06f2d007ffcd5d3d2d50e80bc9d316cc84c2", "section_path": ["Changes"], "commit_groups": [["0f439c8dd", "40132187e", "65a69dfa0", "906e44d4d", "ac8ea0f27", "f71d803c8"]], "identity_text": "Fix incorrect processing of multiple compound affixes in ispell dictionaries (Arthur Zakirov)", "commit_aliases": ["0f439c8dd", "40132187e", "65a69dfa0", "906e44d4d", "ac8ea0f27", "f71d803c8"], "source_commits": ["40132187e"], "source_entry_id": "10.4/changes/031", "db_id": "291efb69928283fba2177fa4566082b5", "patch_ids": ["1bef50b4ac3be0fef854e7a9e6323d31"], "statement_hash": "b0f8a47c5225ea0f137a489c6c2ec51fd60e9ece4f298fe13f97ecc888e51ce6", "relations": [{"rule": 2, "type": "equivalent", "target": "0f6e4e08bd85104518b0759c3a13b12f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b0f8a47c5225ea0f137a489c6c2ec51fd60e9ece4f298fe13f97ecc888e51ce6"}}, {"rule": 2, "type": "equivalent", "target": "2eeabca54ad4f767b22d9570cc8adcf2", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b0f8a47c5225ea0f137a489c6c2ec51fd60e9ece4f298fe13f97ecc888e51ce6"}}, {"rule": 2, "type": "equivalent", "target": "6130400fb1f41c260f1e042643d0507b", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b0f8a47c5225ea0f137a489c6c2ec51fd60e9ece4f298fe13f97ecc888e51ce6"}}, {"rule": 2, "type": "equivalent", "target": "c39b806add06e980c2133a2ff25fa94c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b0f8a47c5225ea0f137a489c6c2ec51fd60e9ece4f298fe13f97ecc888e51ce6"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "2eeabca54ad4f767b22d9570cc8adcf2", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Fix incorrect processing of multiple compound affixes in ispell dictionaries", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b0f8a47c5225ea0f137a489c6c2ec51fd60e9ece4f298fe13f97ecc888e51ce6"}, "url": "/docs/compare/?release=9.6.9#9.6.9-b34afb9e7acc8bbe", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "0f6e4e08bd85104518b0759c3a13b12f", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Fix incorrect processing of multiple compound affixes in ispell dictionaries", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b0f8a47c5225ea0f137a489c6c2ec51fd60e9ece4f298fe13f97ecc888e51ce6"}, "url": "/docs/compare/?release=9.5.13#9.5.13-b34afb9e7acc8bbe", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "c39b806add06e980c2133a2ff25fa94c", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Fix incorrect processing of multiple compound affixes in ispell dictionaries", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b0f8a47c5225ea0f137a489c6c2ec51fd60e9ece4f298fe13f97ecc888e51ce6"}, "url": "/docs/compare/?release=9.4.18#9.4.18-b34afb9e7acc8bbe", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "6130400fb1f41c260f1e042643d0507b", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Fix incorrect processing of multiple compound affixes in ispell dictionaries", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b0f8a47c5225ea0f137a489c6c2ec51fd60e9ece4f298fe13f97ecc888e51ce6"}, "url": "/docs/compare/?release=9.3.23#9.3.23-b34afb9e7acc8bbe", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-861a738fb8b280b3", "cves": [], "html": "<p>Fix collation-aware searches (that is, indexscans using inequality operators) in SP-GiST indexes on text columns (Tom Lane)</p>\n<p>Such searches would return the wrong set of rows in most non-C locales.</p>", "text": "Fix collation-aware searches (that is, indexscans using inequality operators) in SP-GiST indexes on text columns (Tom Lane) Such searches would return the wrong set of rows in most non-C locales.", "title": "Fix collation-aware searches (that is, indexscans using inequality operators) in SP-GiST indexes on text columns", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "e9b2882905cc24d98df0938237bab2be74c77d158235960e5310dcff464ff904", "section_path": ["Changes"], "commit_groups": [["3397c6727", "608d1f971", "93053aca5", "b15e8f71d", "cf73a5b34", "d90b2904c"]], "identity_text": "Fix collation-aware searches (that is, indexscans using inequality operators) in SP-GiST indexes on text columns (Tom Lane) Such searches would return the wrong set of rows in most non-C locales.", "commit_aliases": ["3397c6727", "608d1f971", "93053aca5", "b15e8f71d", "cf73a5b34", "d90b2904c"], "source_commits": ["3397c6727"], "source_entry_id": "10.4/changes/032", "db_id": "6c5489f304d2067655ec90f6b952d748", "patch_ids": ["d859e3898b39624607704e8268393b04"], "statement_hash": "48ab0a47cf70df52e051e183c7d5a16381f26b772924e25c3ad2da1a02c46aa1", "relations": [{"rule": 2, "type": "equivalent", "target": "02e9f30aadf663eed076639c509b35b3", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "48ab0a47cf70df52e051e183c7d5a16381f26b772924e25c3ad2da1a02c46aa1"}}, {"rule": 2, "type": "equivalent", "target": "055505907ab73dcd556292fb81ea9c61", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "48ab0a47cf70df52e051e183c7d5a16381f26b772924e25c3ad2da1a02c46aa1"}}, {"rule": 2, "type": "equivalent", "target": "4806991de97b350a9da8549508ceca1c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "48ab0a47cf70df52e051e183c7d5a16381f26b772924e25c3ad2da1a02c46aa1"}}, {"rule": 2, "type": "equivalent", "target": "b4cab7f36fbf2fbcac26864909208677", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "48ab0a47cf70df52e051e183c7d5a16381f26b772924e25c3ad2da1a02c46aa1"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "4806991de97b350a9da8549508ceca1c", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Fix collation-aware searches (that is, indexscans using inequality operators) in SP-GiST indexes on text columns", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "48ab0a47cf70df52e051e183c7d5a16381f26b772924e25c3ad2da1a02c46aa1"}, "url": "/docs/compare/?release=9.6.9#9.6.9-861a738fb8b280b3", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "b4cab7f36fbf2fbcac26864909208677", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Fix collation-aware searches (that is, indexscans using inequality operators) in SP-GiST indexes on text columns", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "48ab0a47cf70df52e051e183c7d5a16381f26b772924e25c3ad2da1a02c46aa1"}, "url": "/docs/compare/?release=9.5.13#9.5.13-861a738fb8b280b3", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "02e9f30aadf663eed076639c509b35b3", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Fix collation-aware searches (that is, indexscans using inequality operators) in SP-GiST indexes on text columns", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "48ab0a47cf70df52e051e183c7d5a16381f26b772924e25c3ad2da1a02c46aa1"}, "url": "/docs/compare/?release=9.4.18#9.4.18-861a738fb8b280b3", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "055505907ab73dcd556292fb81ea9c61", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Fix collation-aware searches (that is, indexscans using inequality operators) in SP-GiST indexes on text columns", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "48ab0a47cf70df52e051e183c7d5a16381f26b772924e25c3ad2da1a02c46aa1"}, "url": "/docs/compare/?release=9.3.23#9.3.23-861a738fb8b280b3", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-06de5d5da0fab926", "cves": [], "html": "<p>Prevent query-lifespan memory leakage with SP-GiST operator classes that use traversal values (Anton Dignös)</p>", "text": "Prevent query-lifespan memory leakage with SP-GiST operator classes that use traversal values (Anton Dignös)", "title": "Prevent query-lifespan memory leakage with SP-GiST operator classes that use traversal values", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "e9cf211fe032bdd4177ddc80c1a9a5ef3a8168e2f22d606661bc0789e43eee5c", "section_path": ["Changes"], "commit_groups": [["467963c3e", "57ef2da43", "d18a88acf"]], "identity_text": "Prevent query-lifespan memory leakage with SP-GiST operator classes that use traversal values (Anton Dignös)", "commit_aliases": ["467963c3e", "57ef2da43", "d18a88acf"], "source_commits": ["d18a88acf"], "source_entry_id": "10.4/changes/033", "db_id": "e48ed71cdf50c0ea45c777f512fc0884", "patch_ids": ["282673fe0841590431955f111824c0b8"], "statement_hash": "85f7f33d33f9aa8b84dfe5452235932dde27b6f7c1c3c3bbadace1bc9ce6f3ac", "relations": [{"rule": 2, "type": "equivalent", "target": "28cd9314ae4251cc0b65883f52703f4c", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "85f7f33d33f9aa8b84dfe5452235932dde27b6f7c1c3c3bbadace1bc9ce6f3ac"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "28cd9314ae4251cc0b65883f52703f4c", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Prevent query-lifespan memory leakage with SP-GiST operator classes that use traversal values", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "85f7f33d33f9aa8b84dfe5452235932dde27b6f7c1c3c3bbadace1bc9ce6f3ac"}, "url": "/docs/compare/?release=9.6.9#9.6.9-06de5d5da0fab926", "source_url": "/docs/release/9.6.9/#AEN134496"}]}, {"id": "10.4-e8dbb8e8fe3dffc2", "cves": [], "html": "<p>Count the number of index tuples correctly during initial build of an SP-GiST index (Tomas Vondra)</p>\n<p>Previously, the tuple count was reported to be the same as that of the underlying table, which is wrong if the index is partial.</p>", "text": "Count the number of index tuples correctly during initial build of an SP-GiST index (Tomas Vondra) Previously, the tuple count was reported to be the same as that of the underlying table, which is wrong if the index is partial.", "title": "Count the number of index tuples correctly during initial build of an SP-GiST index", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "bc513acecef831bd7fae1d405d3fef772df46496d81b3a14f2db7e98b6e1d002", "section_path": ["Changes"], "commit_groups": [["46f80803a", "649f17925", "7f6f8ccd9", "bf14575c8", "db35bf507", "eee190da7"]], "identity_text": "Count the number of index tuples correctly during initial build of an SP-GiST index (Tomas Vondra) Previously, the tuple count was reported to be the same as that of the underlying table, which is wrong if the index is partial.", "commit_aliases": ["46f80803a", "649f17925", "7f6f8ccd9", "bf14575c8", "db35bf507", "eee190da7"], "source_commits": ["bf14575c8"], "source_entry_id": "10.4/changes/034", "db_id": "17ec129a297bb8205d81fbea0ba2dc46", "patch_ids": ["0e95f90ff047a90d471fc64b8fb39033"], "statement_hash": "eb26d2e14abe070a0cdd663f1654b75b4093aaba180e261e66d6db3ce75e01f0", "relations": [{"rule": 2, "type": "equivalent", "target": "2bd7aaa9f4c77b34211ebaa6805b7b9b", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "eb26d2e14abe070a0cdd663f1654b75b4093aaba180e261e66d6db3ce75e01f0"}}, {"rule": 2, "type": "equivalent", "target": "87a9fe257dbbf67ae0f5420069f6a5dd", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "eb26d2e14abe070a0cdd663f1654b75b4093aaba180e261e66d6db3ce75e01f0"}}, {"rule": 2, "type": "equivalent", "target": "ac6f0f2aa60298980a4a8234b8d6ea2f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "eb26d2e14abe070a0cdd663f1654b75b4093aaba180e261e66d6db3ce75e01f0"}}, {"rule": 2, "type": "equivalent", "target": "f3cfe66abaea835caf64a0f0666a4e06", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "eb26d2e14abe070a0cdd663f1654b75b4093aaba180e261e66d6db3ce75e01f0"}}], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "87a9fe257dbbf67ae0f5420069f6a5dd", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Count the number of index tuples correctly during initial build of an SP-GiST index", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "eb26d2e14abe070a0cdd663f1654b75b4093aaba180e261e66d6db3ce75e01f0"}, "url": "/docs/compare/?release=9.6.9#9.6.9-e8dbb8e8fe3dffc2", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "ac6f0f2aa60298980a4a8234b8d6ea2f", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Count the number of index tuples correctly during initial build of an SP-GiST index", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "eb26d2e14abe070a0cdd663f1654b75b4093aaba180e261e66d6db3ce75e01f0"}, "url": "/docs/compare/?release=9.5.13#9.5.13-e8dbb8e8fe3dffc2", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "f3cfe66abaea835caf64a0f0666a4e06", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Count the number of index tuples correctly during initial build of an SP-GiST index", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "eb26d2e14abe070a0cdd663f1654b75b4093aaba180e261e66d6db3ce75e01f0"}, "url": "/docs/compare/?release=9.4.18#9.4.18-e8dbb8e8fe3dffc2", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "2bd7aaa9f4c77b34211ebaa6805b7b9b", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Count the number of index tuples correctly during initial build of an SP-GiST index", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "eb26d2e14abe070a0cdd663f1654b75b4093aaba180e261e66d6db3ce75e01f0"}, "url": "/docs/compare/?release=9.3.23#9.3.23-e8dbb8e8fe3dffc2", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-f95a7e752e851eca", "cves": [], "html": "<p>Count the number of index tuples correctly during vacuuming of a GiST index (Andrey Borodin)</p>\n<p>Previously it reported the estimated number of heap tuples, which might be inaccurate, and is certainly wrong if the index is partial.</p>", "text": "Count the number of index tuples correctly during vacuuming of a GiST index (Andrey Borodin) Previously it reported the estimated number of heap tuples, which might be inaccurate, and is certainly wrong if the index is partial.", "title": "Count the number of index tuples correctly during vacuuming of a GiST index", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "32546822588ffc67b8a22b0cf53f46ef5f025e6ec55ecdc504460fd6630ccc27", "section_path": ["Changes"], "commit_groups": [["46d98da43", "529137cac", "6b56f0752", "81b9b5ce4", "947f06c62", "ccd650430"]], "identity_text": "Count the number of index tuples correctly during vacuuming of a GiST index (Andrey Borodin) Previously it reported the estimated number of heap tuples, which might be inaccurate, and is certainly wrong if the index is partial.", "commit_aliases": ["46d98da43", "529137cac", "6b56f0752", "81b9b5ce4", "947f06c62", "ccd650430"], "source_commits": ["ccd650430"], "source_entry_id": "10.4/changes/035", "db_id": "29e33e77b216dbbb7810840bad771441", "patch_ids": ["6e84c3dd2e185313d9c3b1dffe565f22"], "statement_hash": "b306cd9024e03b3ab020486ecf482f698c62c5c17a9780180417312d4850b015", "relations": [{"rule": 2, "type": "equivalent", "target": "a638da4d9b969dd3191b7d6887f7e419", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b306cd9024e03b3ab020486ecf482f698c62c5c17a9780180417312d4850b015"}}, {"rule": 2, "type": "equivalent", "target": "ab9bdfe958543add18823d023e5242b4", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b306cd9024e03b3ab020486ecf482f698c62c5c17a9780180417312d4850b015"}}, {"rule": 2, "type": "equivalent", "target": "bccd0d9a1621ebeaa4e5af223bee719f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b306cd9024e03b3ab020486ecf482f698c62c5c17a9780180417312d4850b015"}}, {"rule": 2, "type": "equivalent", "target": "cfdf30adb94a383b4ee43f96cc2045bf", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b306cd9024e03b3ab020486ecf482f698c62c5c17a9780180417312d4850b015"}}], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "ab9bdfe958543add18823d023e5242b4", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Count the number of index tuples correctly during vacuuming of a GiST index", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b306cd9024e03b3ab020486ecf482f698c62c5c17a9780180417312d4850b015"}, "url": "/docs/compare/?release=9.6.9#9.6.9-f95a7e752e851eca", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "bccd0d9a1621ebeaa4e5af223bee719f", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Count the number of index tuples correctly during vacuuming of a GiST index", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b306cd9024e03b3ab020486ecf482f698c62c5c17a9780180417312d4850b015"}, "url": "/docs/compare/?release=9.5.13#9.5.13-f95a7e752e851eca", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "a638da4d9b969dd3191b7d6887f7e419", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Count the number of index tuples correctly during vacuuming of a GiST index", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b306cd9024e03b3ab020486ecf482f698c62c5c17a9780180417312d4850b015"}, "url": "/docs/compare/?release=9.4.18#9.4.18-f95a7e752e851eca", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "cfdf30adb94a383b4ee43f96cc2045bf", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Count the number of index tuples correctly during vacuuming of a GiST index", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b306cd9024e03b3ab020486ecf482f698c62c5c17a9780180417312d4850b015"}, "url": "/docs/compare/?release=9.3.23#9.3.23-f95a7e752e851eca", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-a1c62c0189f0c682", "cves": [], "html": "<p>Fix a corner case where a streaming standby gets stuck at a WAL continuation record (Kyotaro Horiguchi)</p>", "text": "Fix a corner case where a streaming standby gets stuck at a WAL continuation record (Kyotaro Horiguchi)", "title": "Fix a corner case where a streaming standby gets stuck at a WAL continuation record", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "4f542afd3fdcd0a65832b29e2288e29408b255d6a34f6a7fde254476ede1cf59", "section_path": ["Changes"], "commit_groups": [["066871980", "4ea8f7d45", "7b7521d65", "c06380e97", "ca572db22"]], "identity_text": "Fix a corner case where a streaming standby gets stuck at a WAL continuation record (Kyotaro Horiguchi)", "commit_aliases": ["066871980", "4ea8f7d45", "7b7521d65", "c06380e97", "ca572db22"], "source_commits": ["ca572db22"], "source_entry_id": "10.4/changes/036", "db_id": "f3045f78276ee10683eac5528bd5a4a6", "patch_ids": ["b2c714e0f2692a55d962b66cd6ae01a3"], "statement_hash": "59351e6443dbaf7dc4c2220aa69782841d1772b68fb9a372533c7d2adb428416", "relations": [{"rule": 2, "type": "equivalent", "target": "33600bedb0d368c126b4c7b22224ab68", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "59351e6443dbaf7dc4c2220aa69782841d1772b68fb9a372533c7d2adb428416"}}, {"rule": 2, "type": "equivalent", "target": "a93f663903aa06ad4ff1792dc4f9a275", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "59351e6443dbaf7dc4c2220aa69782841d1772b68fb9a372533c7d2adb428416"}}, {"rule": 2, "type": "equivalent", "target": "c68e07e15fb54547cdd38501bb1af2c0", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "59351e6443dbaf7dc4c2220aa69782841d1772b68fb9a372533c7d2adb428416"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "a93f663903aa06ad4ff1792dc4f9a275", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Fix a corner case where a streaming standby gets stuck at a WAL continuation record", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "59351e6443dbaf7dc4c2220aa69782841d1772b68fb9a372533c7d2adb428416"}, "url": "/docs/compare/?release=9.6.9#9.6.9-a1c62c0189f0c682", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "c68e07e15fb54547cdd38501bb1af2c0", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Fix a corner case where a streaming standby gets stuck at a WAL continuation record", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "59351e6443dbaf7dc4c2220aa69782841d1772b68fb9a372533c7d2adb428416"}, "url": "/docs/compare/?release=9.5.13#9.5.13-a1c62c0189f0c682", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "33600bedb0d368c126b4c7b22224ab68", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Fix a corner case where a streaming standby gets stuck at a WAL continuation record", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "59351e6443dbaf7dc4c2220aa69782841d1772b68fb9a372533c7d2adb428416"}, "url": "/docs/compare/?release=9.4.18#9.4.18-a1c62c0189f0c682", "source_url": "/docs/release/9.4.18/#AEN120949"}]}, {"id": "10.4-56ebd12b4ad1f895", "cves": [], "html": "<p>In logical decoding, avoid possible double processing of WAL data when a walsender restarts (Craig Ringer)</p>", "text": "In logical decoding, avoid possible double processing of WAL data when a walsender restarts (Craig Ringer)", "title": "In logical decoding, avoid possible double processing of WAL data when a walsender restarts", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "0689e34e9d695832b44e274b2d5aac529a73112ad7892e1accb28177b3b2cd11", "section_path": ["Changes"], "commit_groups": [["6d30e3a2b", "8aa75e138", "8e5c2afa9", "cee1dd1ee", "d4429d50a"]], "identity_text": "In logical decoding, avoid possible double processing of WAL data when a walsender restarts (Craig Ringer)", "commit_aliases": ["6d30e3a2b", "8aa75e138", "8e5c2afa9", "cee1dd1ee", "d4429d50a"], "source_commits": ["cee1dd1ee"], "source_entry_id": "10.4/changes/037", "db_id": "4ba8666af1d4895ce1d50bca6abee36a", "patch_ids": ["c1b46ebb1d822821d90b9d849c25d220"], "statement_hash": "79549c9f3064d99035b8cf21625e13f2f9197ede19c546433974bb00a8b90f6b", "relations": [{"rule": 2, "type": "equivalent", "target": "47bc65eec35ea4781ec3ef7802aed738", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "79549c9f3064d99035b8cf21625e13f2f9197ede19c546433974bb00a8b90f6b"}}, {"rule": 2, "type": "equivalent", "target": "4c2ba004af8104bf528e8cf48a5125a1", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "79549c9f3064d99035b8cf21625e13f2f9197ede19c546433974bb00a8b90f6b"}}, {"rule": 2, "type": "equivalent", "target": "ffa981528713bc0c5dfb6ad2ed90ea75", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "79549c9f3064d99035b8cf21625e13f2f9197ede19c546433974bb00a8b90f6b"}}], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "4c2ba004af8104bf528e8cf48a5125a1", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "In logical decoding, avoid possible double processing of WAL data when a walsender restarts", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "79549c9f3064d99035b8cf21625e13f2f9197ede19c546433974bb00a8b90f6b"}, "url": "/docs/compare/?release=9.6.9#9.6.9-56ebd12b4ad1f895", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "47bc65eec35ea4781ec3ef7802aed738", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "In logical decoding, avoid possible double processing of WAL data when a walsender restarts", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "79549c9f3064d99035b8cf21625e13f2f9197ede19c546433974bb00a8b90f6b"}, "url": "/docs/compare/?release=9.5.13#9.5.13-56ebd12b4ad1f895", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "ffa981528713bc0c5dfb6ad2ed90ea75", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "In logical decoding, avoid possible double processing of WAL data when a walsender restarts", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "79549c9f3064d99035b8cf21625e13f2f9197ede19c546433974bb00a8b90f6b"}, "url": "/docs/compare/?release=9.4.18#9.4.18-56ebd12b4ad1f895", "source_url": "/docs/release/9.4.18/#AEN120949"}]}, {"id": "10.4-7b7a446cc5337062", "cves": [], "html": "<p>Fix logical replication to not assume that type OIDs match between the local and remote servers (Masahiko Sawada)</p>", "text": "Fix logical replication to not assume that type OIDs match between the local and remote servers (Masahiko Sawada)", "title": "Fix logical replication to not assume that type OIDs match between the local and remote servers", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "1e6c94ffb839fb02ac0f3a7f6d081a7c08db8d978dfd49b80f46f4fc1462014a", "section_path": ["Changes"], "commit_groups": [["24c0a6c64", "3c3450e74"]], "identity_text": "Fix logical replication to not assume that type OIDs match between the local and remote servers (Masahiko Sawada)", "commit_aliases": ["24c0a6c64", "3c3450e74"], "source_commits": ["3c3450e74"], "source_entry_id": "10.4/changes/038", "db_id": "6c8cf3f2d26c20019396866f24d875c7", "patch_ids": ["c5bfa97f7bcf125a0a919f673a473296"], "statement_hash": "f7abef90ae00d1fee38cdf7c89efcdb7c0db5facf5489b2c7db04aba9c419c40", "relations": [], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": []}, {"id": "10.4-e8d913e4e2b84ae6", "cves": [], "html": "<p>Allow <code>scalarltsel</code> and <code>scalargtsel</code> to be used on non-core datatypes (Tomas Vondra)</p>", "text": "Allow scalarltsel and scalargtsel to be used on non-core datatypes (Tomas Vondra)", "title": "Allow scalarltsel and scalargtsel to be used on non-core datatypes", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "90ca9f138a7286859ffa5f654feb2fd4093dde39552dd06121ee3410475e5b31", "section_path": ["Changes"], "commit_groups": [["0bea99bd9", "165fa27fe", "58d9acc18", "ad3e3d731", "bfade0e51", "e2108f581"]], "identity_text": "Allow scalarltsel and scalargtsel to be used on non-core datatypes (Tomas Vondra)", "commit_aliases": ["0bea99bd9", "165fa27fe", "58d9acc18", "ad3e3d731", "bfade0e51", "e2108f581"], "source_commits": ["bfade0e51"], "source_entry_id": "10.4/changes/039", "db_id": "b1bfdd907aec89a75bf1cc9b9d040f56", "patch_ids": ["11d594f2cfd4c53b899a4cace0fa3084"], "statement_hash": "3cf7c4620528c8a92f3ef599197cc213c6a2ae988ce5537647a25de2b7d6b50e", "relations": [{"rule": 2, "type": "equivalent", "target": "2489a01a1aa072ea9c497779d2c095fa", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3cf7c4620528c8a92f3ef599197cc213c6a2ae988ce5537647a25de2b7d6b50e"}}, {"rule": 2, "type": "equivalent", "target": "2d1c9127abf9e220078ac95813fe7259", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3cf7c4620528c8a92f3ef599197cc213c6a2ae988ce5537647a25de2b7d6b50e"}}, {"rule": 2, "type": "equivalent", "target": "a8eeba970cd71720b89ea607aaf6d323", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3cf7c4620528c8a92f3ef599197cc213c6a2ae988ce5537647a25de2b7d6b50e"}}, {"rule": 2, "type": "equivalent", "target": "f282a2d1093812925f015ba800325075", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3cf7c4620528c8a92f3ef599197cc213c6a2ae988ce5537647a25de2b7d6b50e"}}], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "2489a01a1aa072ea9c497779d2c095fa", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Allow scalarltsel and scalargtsel to be used on non-core datatypes", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3cf7c4620528c8a92f3ef599197cc213c6a2ae988ce5537647a25de2b7d6b50e"}, "url": "/docs/compare/?release=9.6.9#9.6.9-e8d913e4e2b84ae6", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "2d1c9127abf9e220078ac95813fe7259", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Allow scalarltsel and scalargtsel to be used on non-core datatypes", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3cf7c4620528c8a92f3ef599197cc213c6a2ae988ce5537647a25de2b7d6b50e"}, "url": "/docs/compare/?release=9.5.13#9.5.13-e8d913e4e2b84ae6", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "f282a2d1093812925f015ba800325075", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Allow scalarltsel and scalargtsel to be used on non-core datatypes", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3cf7c4620528c8a92f3ef599197cc213c6a2ae988ce5537647a25de2b7d6b50e"}, "url": "/docs/compare/?release=9.4.18#9.4.18-e8d913e4e2b84ae6", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "a8eeba970cd71720b89ea607aaf6d323", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Allow scalarltsel and scalargtsel to be used on non-core datatypes", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3cf7c4620528c8a92f3ef599197cc213c6a2ae988ce5537647a25de2b7d6b50e"}, "url": "/docs/compare/?release=9.3.23#9.3.23-e8d913e4e2b84ae6", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-d206ca3ddb7a548d", "cves": [], "html": "<p>Reduce <span>libpq</span>'s memory consumption when a server error is reported after a large amount of query output has been collected (Tom Lane)</p>\n<p>Discard the previous output before, not after, processing the error message. On some platforms, notably Linux, this can make a difference in the application's subsequent memory footprint.</p>", "text": "Reduce libpq's memory consumption when a server error is reported after a large amount of query output has been collected (Tom Lane) Discard the previous output before, not after, processing the error message. On some platforms, notably Linux, this can make a difference in the application's subsequent memory footprint.", "title": "Reduce libpq's memory consumption when a server error is reported after a large amount of query output has been collected", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "31d9842a4f9faf41d21d46f4fedb3e479e5238dfd38bbd9b2d89d0892e866fb2", "section_path": ["Changes"], "commit_groups": [["131f6a958", "2278e94ae", "3dd36aa4b", "bbec33c2d", "d014b38df", "d25c2ee9c"]], "identity_text": "Reduce libpq's memory consumption when a server error is reported after a large amount of query output has been collected (Tom Lane) Discard the previous output before, not after, processing the error message. On some platforms, notably Linux, this can make a difference in the application's subsequent memory footprint.", "commit_aliases": ["131f6a958", "2278e94ae", "3dd36aa4b", "bbec33c2d", "d014b38df", "d25c2ee9c"], "source_commits": ["d014b38df"], "source_entry_id": "10.4/changes/040", "db_id": "7fd00656eb3166d11d40b31d0a701cde", "patch_ids": ["62e721775f6a4e5cf0507ee43f53f917"], "statement_hash": "ee45378f3c6b3c086ad2ba13f134eaf2fded2d377b6f9d8bef976b79920ce308", "relations": [{"rule": 2, "type": "equivalent", "target": "2e2e30d4f45969ba61c1eae7a82d4a2f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ee45378f3c6b3c086ad2ba13f134eaf2fded2d377b6f9d8bef976b79920ce308"}}, {"rule": 2, "type": "equivalent", "target": "629f2ba7fe42a5b76da1d69efc49c42f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ee45378f3c6b3c086ad2ba13f134eaf2fded2d377b6f9d8bef976b79920ce308"}}, {"rule": 2, "type": "equivalent", "target": "653ce78a669b47808c6c21ba056c6b28", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ee45378f3c6b3c086ad2ba13f134eaf2fded2d377b6f9d8bef976b79920ce308"}}, {"rule": 2, "type": "equivalent", "target": "93194ee05134f259b2e143780f4fd441", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ee45378f3c6b3c086ad2ba13f134eaf2fded2d377b6f9d8bef976b79920ce308"}}], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "653ce78a669b47808c6c21ba056c6b28", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Reduce libpq's memory consumption when a server error is reported after a large amount of query output has been collected", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ee45378f3c6b3c086ad2ba13f134eaf2fded2d377b6f9d8bef976b79920ce308"}, "url": "/docs/compare/?release=9.6.9#9.6.9-d206ca3ddb7a548d", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "629f2ba7fe42a5b76da1d69efc49c42f", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Reduce libpq's memory consumption when a server error is reported after a large amount of query output has been collected", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ee45378f3c6b3c086ad2ba13f134eaf2fded2d377b6f9d8bef976b79920ce308"}, "url": "/docs/compare/?release=9.5.13#9.5.13-d206ca3ddb7a548d", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "93194ee05134f259b2e143780f4fd441", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Reduce libpq's memory consumption when a server error is reported after a large amount of query output has been collected", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ee45378f3c6b3c086ad2ba13f134eaf2fded2d377b6f9d8bef976b79920ce308"}, "url": "/docs/compare/?release=9.4.18#9.4.18-d206ca3ddb7a548d", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "2e2e30d4f45969ba61c1eae7a82d4a2f", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Reduce libpq's memory consumption when a server error is reported after a large amount of query output has been collected", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ee45378f3c6b3c086ad2ba13f134eaf2fded2d377b6f9d8bef976b79920ce308"}, "url": "/docs/compare/?release=9.3.23#9.3.23-d206ca3ddb7a548d", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-2d0560a3b41b4d57", "cves": [], "html": "<p>Fix double-free crashes in <span>ecpg</span> (Patrick Krecker, Jeevan Ladhe)</p>", "text": "Fix double-free crashes in ecpg (Patrick Krecker, Jeevan Ladhe)", "title": "Fix double-free crashes in ecpg", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "1a7a579800f426d539bdde028e234cb71554a69e2e097827b5d01a120540783a", "section_path": ["Changes"], "commit_groups": [["042badc37", "44a36a8d9", "95f026021", "b32fad52e", "bd7eb6fe6", "fe65f5931"], ["09f4ca92b", "837d4f739", "8559b40c5", "8e3f3ab5b", "db2fc801f", "fcc15bf38"]], "identity_text": "Fix double-free crashes in ecpg (Patrick Krecker, Jeevan Ladhe)", "commit_aliases": ["042badc37", "09f4ca92b", "44a36a8d9", "837d4f739", "8559b40c5", "8e3f3ab5b", "95f026021", "b32fad52e", "bd7eb6fe6", "db2fc801f", "fcc15bf38", "fe65f5931"], "source_commits": ["8559b40c5", "fe65f5931"], "source_entry_id": "10.4/changes/041", "db_id": "bb37def1d3ffbdb16f5423882ee284aa", "patch_ids": ["1e0f4d974967ce7a6b90aae2fac5cf6a", "83542969ebe8b8cd2c5ef25174bd1525"], "statement_hash": "6465908dd7596f242150881ffc742caee3fd0439bee866f9ee28e11ba1348214", "relations": [{"rule": 2, "type": "equivalent", "target": "159b1c65a03eae282bbd2bae744da93b", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6465908dd7596f242150881ffc742caee3fd0439bee866f9ee28e11ba1348214"}}, {"rule": 2, "type": "equivalent", "target": "7c6cac4a57b4ffe489adb9d1f1a4fe93", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6465908dd7596f242150881ffc742caee3fd0439bee866f9ee28e11ba1348214"}}, {"rule": 2, "type": "equivalent", "target": "ca20789dd1f6eb8145ffe8a4f7dc0023", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6465908dd7596f242150881ffc742caee3fd0439bee866f9ee28e11ba1348214"}}, {"rule": 2, "type": "equivalent", "target": "cd90ef8d70cdc0271c0e79bedcfd2dab", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6465908dd7596f242150881ffc742caee3fd0439bee866f9ee28e11ba1348214"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "ca20789dd1f6eb8145ffe8a4f7dc0023", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Fix double-free crashes in ecpg", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6465908dd7596f242150881ffc742caee3fd0439bee866f9ee28e11ba1348214"}, "url": "/docs/compare/?release=9.6.9#9.6.9-2d0560a3b41b4d57", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "7c6cac4a57b4ffe489adb9d1f1a4fe93", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Fix double-free crashes in ecpg", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6465908dd7596f242150881ffc742caee3fd0439bee866f9ee28e11ba1348214"}, "url": "/docs/compare/?release=9.5.13#9.5.13-2d0560a3b41b4d57", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "159b1c65a03eae282bbd2bae744da93b", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Fix double-free crashes in ecpg", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6465908dd7596f242150881ffc742caee3fd0439bee866f9ee28e11ba1348214"}, "url": "/docs/compare/?release=9.4.18#9.4.18-2d0560a3b41b4d57", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "cd90ef8d70cdc0271c0e79bedcfd2dab", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Fix double-free crashes in ecpg", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6465908dd7596f242150881ffc742caee3fd0439bee866f9ee28e11ba1348214"}, "url": "/docs/compare/?release=9.3.23#9.3.23-2d0560a3b41b4d57", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-ad63b50e8c2300e2", "cves": [], "html": "<p>Fix <span>ecpg</span> to handle <code>long long int</code> variables correctly in MSVC builds (Michael Meskes, Andrew Gierth)</p>", "text": "Fix ecpg to handle long long int variables correctly in MSVC builds (Michael Meskes, Andrew Gierth)", "title": "Fix ecpg to handle long long int variables correctly in MSVC builds", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "4666a4767fde193d3a6e31f5560cde8051328917fa9c43d83f193d0e966b65d3", "section_path": ["Changes"], "commit_groups": [["49f9014c8", "51057feaa", "7ee8005ce", "87b7e1e88", "f171cbe0d", "fda3e6578"]], "identity_text": "Fix ecpg to handle long long int variables correctly in MSVC builds (Michael Meskes, Andrew Gierth)", "commit_aliases": ["49f9014c8", "51057feaa", "7ee8005ce", "87b7e1e88", "f171cbe0d", "fda3e6578"], "source_commits": ["fda3e6578"], "source_entry_id": "10.4/changes/042", "db_id": "b84680c11f9ad876ed9801ec7a9e50eb", "patch_ids": ["28c30566205f56a53ca8c75fe867815a"], "statement_hash": "54b461d4af0c113d1b77ed4d9f923e7764adb7d9d1cb0f9a16b96f9b5f1dbac6", "relations": [{"rule": 2, "type": "equivalent", "target": "194d09c49132cfa28077c392a69ced5b", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "54b461d4af0c113d1b77ed4d9f923e7764adb7d9d1cb0f9a16b96f9b5f1dbac6"}}, {"rule": 2, "type": "equivalent", "target": "959c04fbac5a9ce1540e3a3c941bb0d5", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "54b461d4af0c113d1b77ed4d9f923e7764adb7d9d1cb0f9a16b96f9b5f1dbac6"}}, {"rule": 2, "type": "equivalent", "target": "d18f2c181c8331b1b400398ab6b42c29", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "54b461d4af0c113d1b77ed4d9f923e7764adb7d9d1cb0f9a16b96f9b5f1dbac6"}}, {"rule": 2, "type": "equivalent", "target": "d3d056491c2eb1de16daf122bc461cb3", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "54b461d4af0c113d1b77ed4d9f923e7764adb7d9d1cb0f9a16b96f9b5f1dbac6"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "d18f2c181c8331b1b400398ab6b42c29", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Fix ecpg to handle long long int variables correctly in MSVC builds", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "54b461d4af0c113d1b77ed4d9f923e7764adb7d9d1cb0f9a16b96f9b5f1dbac6"}, "url": "/docs/compare/?release=9.6.9#9.6.9-ad63b50e8c2300e2", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "194d09c49132cfa28077c392a69ced5b", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Fix ecpg to handle long long int variables correctly in MSVC builds", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "54b461d4af0c113d1b77ed4d9f923e7764adb7d9d1cb0f9a16b96f9b5f1dbac6"}, "url": "/docs/compare/?release=9.5.13#9.5.13-ad63b50e8c2300e2", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "959c04fbac5a9ce1540e3a3c941bb0d5", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Fix ecpg to handle long long int variables correctly in MSVC builds", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "54b461d4af0c113d1b77ed4d9f923e7764adb7d9d1cb0f9a16b96f9b5f1dbac6"}, "url": "/docs/compare/?release=9.4.18#9.4.18-ad63b50e8c2300e2", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "d3d056491c2eb1de16daf122bc461cb3", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Fix ecpg to handle long long int variables correctly in MSVC builds", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "54b461d4af0c113d1b77ed4d9f923e7764adb7d9d1cb0f9a16b96f9b5f1dbac6"}, "url": "/docs/compare/?release=9.3.23#9.3.23-ad63b50e8c2300e2", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-444df280c90421ad", "cves": [], "html": "<p>Fix mis-quoting of values for list-valued GUC variables in dumps (Michael Paquier, Tom Lane)</p>\n<p>The <code>local_preload_libraries</code>, <code>session_preload_libraries</code>, <code>shared_preload_libraries</code>, and <code>temp_tablespaces</code> variables were not correctly quoted in <span>pg_dump</span> output. This would cause problems if settings for these variables appeared in <code>CREATE FUNCTION ... SET</code> or <code>ALTER DATABASE/ROLE ... SET</code> clauses.</p>", "text": "Fix mis-quoting of values for list-valued GUC variables in dumps (Michael Paquier, Tom Lane) The local_preload_libraries, session_preload_libraries, shared_preload_libraries, and temp_tablespaces variables were not correctly quoted in pg_dump output. This would cause problems if settings for these variables appeared in CREATE FUNCTION ... SET or ALTER DATABASE/ROLE ... SET clauses.", "title": "Fix mis-quoting of values for list-valued GUC variables in dumps", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "ba81e1e504e8f148ddd8d90d16ccd22d7f567c9208b9d7179732e01cca7dc468", "section_path": ["Changes"], "commit_groups": [["66e92878a", "67e02cde7", "742869946", "8132f0f38", "a35d72923", "be677bb5a"]], "identity_text": "Fix mis-quoting of values for list-valued GUC variables in dumps (Michael Paquier, Tom Lane) The local_preload_libraries, session_preload_libraries, shared_preload_libraries, and temp_tablespaces variables were not correctly quoted in pg_dump output. This would cause problems if settings for these variables appeared in CREATE FUNCTION ... SET or ALTER DATABASE/ROLE ... SET clauses.", "commit_aliases": ["66e92878a", "67e02cde7", "742869946", "8132f0f38", "a35d72923", "be677bb5a"], "source_commits": ["66e92878a"], "source_entry_id": "10.4/changes/043", "db_id": "b6b812536ccecbcc7bb8b23c8c49a53e", "patch_ids": ["b40782f49e0072299c4243c0c9ed47c0"], "statement_hash": "facaf7b5caa7d3fe8c0ba335d3cac1bd92504392178f2c9b85a0491ad2288a8a", "relations": [{"rule": 2, "type": "equivalent", "target": "064841bc3fa7e083d2bfa3086a3aed02", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "facaf7b5caa7d3fe8c0ba335d3cac1bd92504392178f2c9b85a0491ad2288a8a"}}, {"rule": 2, "type": "equivalent", "target": "749eef6a8625564b60808c33fbf43cdb", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "facaf7b5caa7d3fe8c0ba335d3cac1bd92504392178f2c9b85a0491ad2288a8a"}}, {"rule": 2, "type": "equivalent", "target": "8ad311f47bc62ac7d78638203bbff004", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "facaf7b5caa7d3fe8c0ba335d3cac1bd92504392178f2c9b85a0491ad2288a8a"}}, {"rule": 2, "type": "equivalent", "target": "de2bab69cea68ac0568fcd06178a4d74", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "facaf7b5caa7d3fe8c0ba335d3cac1bd92504392178f2c9b85a0491ad2288a8a"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "749eef6a8625564b60808c33fbf43cdb", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Fix mis-quoting of values for list-valued GUC variables in dumps", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "facaf7b5caa7d3fe8c0ba335d3cac1bd92504392178f2c9b85a0491ad2288a8a"}, "url": "/docs/compare/?release=9.6.9#9.6.9-444df280c90421ad", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "de2bab69cea68ac0568fcd06178a4d74", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Fix mis-quoting of values for list-valued GUC variables in dumps", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "facaf7b5caa7d3fe8c0ba335d3cac1bd92504392178f2c9b85a0491ad2288a8a"}, "url": "/docs/compare/?release=9.5.13#9.5.13-444df280c90421ad", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "064841bc3fa7e083d2bfa3086a3aed02", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Fix mis-quoting of values for list-valued GUC variables in dumps", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "facaf7b5caa7d3fe8c0ba335d3cac1bd92504392178f2c9b85a0491ad2288a8a"}, "url": "/docs/compare/?release=9.4.18#9.4.18-444df280c90421ad", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "8ad311f47bc62ac7d78638203bbff004", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Fix mis-quoting of values for list-valued GUC variables in dumps", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "facaf7b5caa7d3fe8c0ba335d3cac1bd92504392178f2c9b85a0491ad2288a8a"}, "url": "/docs/compare/?release=9.3.23#9.3.23-444df280c90421ad", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-10a830371aa6d110", "cves": [], "html": "<p>Fix <span>pg_recvlogical</span> to not fail against pre-v10 <span>PostgreSQL</span> servers (Michael Paquier)</p>\n<p>A previous fix caused <span>pg_recvlogical</span> to issue a command regardless of server version, but it should only be issued to v10 and later servers.</p>", "text": "Fix pg_recvlogical to not fail against pre-v10 PostgreSQL servers (Michael Paquier) A previous fix caused pg_recvlogical to issue a command regardless of server version, but it should only be issued to v10 and later servers.", "title": "Fix pg_recvlogical to not fail against pre-v10 PostgreSQL servers", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "8c1d8eab1e4f699376168d4cb00944d2cdebbffaeec75a8f6f0af7f19712e4f2", "section_path": ["Changes"], "commit_groups": [["24f1e9ca0", "32c247629", "6336b6dfc", "bb532859f", "c7cc9b7d4"], ["24ff0fe87", "59743deca", "8d2814f27", "af5fbb128", "e7d3a37d9"]], "identity_text": "Fix pg_recvlogical to not fail against pre-v10 PostgreSQL servers (Michael Paquier) A previous fix caused pg_recvlogical to issue a command regardless of server version, but it should only be issued to v10 and later servers.", "commit_aliases": ["24f1e9ca0", "24ff0fe87", "32c247629", "59743deca", "6336b6dfc", "8d2814f27", "af5fbb128", "bb532859f", "c7cc9b7d4", "e7d3a37d9"], "source_commits": ["c7cc9b7d4", "e7d3a37d9"], "source_entry_id": "10.4/changes/044", "db_id": "55cb57b038e68ea6b0b8d7e11a0cafc7", "patch_ids": ["b216788b6e4ae68df37d4509c9a72bda", "c93c590bec64afd672b44f00c76c057e"], "statement_hash": "c716a7e497f76a8db30692f10bb32810d56aa2cda4e87c95f139ae48ebee3369", "relations": [{"rule": 2, "type": "equivalent", "target": "0440be8fe69545fdda3d0a01868a1801", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c716a7e497f76a8db30692f10bb32810d56aa2cda4e87c95f139ae48ebee3369"}}, {"rule": 2, "type": "equivalent", "target": "b8cf863de5c67f4abba5f0e00e1a6fdd", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c716a7e497f76a8db30692f10bb32810d56aa2cda4e87c95f139ae48ebee3369"}}, {"rule": 2, "type": "equivalent", "target": "f16ab393fa01f02407f84a89b30117bb", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c716a7e497f76a8db30692f10bb32810d56aa2cda4e87c95f139ae48ebee3369"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "0440be8fe69545fdda3d0a01868a1801", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Fix pg_recvlogical to not fail against pre-v10 PostgreSQL servers", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c716a7e497f76a8db30692f10bb32810d56aa2cda4e87c95f139ae48ebee3369"}, "url": "/docs/compare/?release=9.6.9#9.6.9-10a830371aa6d110", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "f16ab393fa01f02407f84a89b30117bb", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Fix pg_recvlogical to not fail against pre-v10 PostgreSQL servers", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c716a7e497f76a8db30692f10bb32810d56aa2cda4e87c95f139ae48ebee3369"}, "url": "/docs/compare/?release=9.5.13#9.5.13-10a830371aa6d110", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "b8cf863de5c67f4abba5f0e00e1a6fdd", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Fix pg_recvlogical to not fail against pre-v10 PostgreSQL servers", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c716a7e497f76a8db30692f10bb32810d56aa2cda4e87c95f139ae48ebee3369"}, "url": "/docs/compare/?release=9.4.18#9.4.18-10a830371aa6d110", "source_url": "/docs/release/9.4.18/#AEN120949"}]}, {"id": "10.4-fc1d311eb84f7b24", "cves": [], "html": "<p>Ensure that <span>pg_rewind</span> deletes files on the target server if they are deleted from the source server during the run (Takayuki Tsunakawa)</p>\n<p>Failure to do this could result in data inconsistency on the target, particularly if the file in question is a WAL segment.</p>", "text": "Ensure that pg_rewind deletes files on the target server if they are deleted from the source server during the run (Takayuki Tsunakawa) Failure to do this could result in data inconsistency on the target, particularly if the file in question is a WAL segment.", "title": "Ensure that pg_rewind deletes files on the target server if they are deleted from the source server during the run", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "1a7c7202e070c5c0dc096bff52c8e956e5b00cbe9d39aaa77714045689f44941", "section_path": ["Changes"], "commit_groups": [["09e96b3f3", "52c32d8d8", "b33e38cb1", "f1e07d576"]], "identity_text": "Ensure that pg_rewind deletes files on the target server if they are deleted from the source server during the run (Takayuki Tsunakawa) Failure to do this could result in data inconsistency on the target, particularly if the file in question is a WAL segment.", "commit_aliases": ["09e96b3f3", "52c32d8d8", "b33e38cb1", "f1e07d576"], "source_commits": ["f1e07d576"], "source_entry_id": "10.4/changes/045", "db_id": "b3524dc578645acbd0fb38efdfced2af", "patch_ids": ["df1a69794304e41b7480e2fc1112eb4c"], "statement_hash": "47b08c66475edd72563b8c327b1a85cbdeaea10dba7f72de51d48ed24c65ad87", "relations": [{"rule": 2, "type": "equivalent", "target": "63ef77e71621c5b56849f0a0ab070f0f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "47b08c66475edd72563b8c327b1a85cbdeaea10dba7f72de51d48ed24c65ad87"}}, {"rule": 2, "type": "equivalent", "target": "f3f2b75fd8ee3ce46c63fc0ed4eb5daf", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "47b08c66475edd72563b8c327b1a85cbdeaea10dba7f72de51d48ed24c65ad87"}}], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "f3f2b75fd8ee3ce46c63fc0ed4eb5daf", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Ensure that pg_rewind deletes files on the target server if they are deleted from the source server during the run", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "47b08c66475edd72563b8c327b1a85cbdeaea10dba7f72de51d48ed24c65ad87"}, "url": "/docs/compare/?release=9.6.9#9.6.9-fc1d311eb84f7b24", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "63ef77e71621c5b56849f0a0ab070f0f", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Ensure that pg_rewind deletes files on the target server if they are deleted from the source server during the run", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "47b08c66475edd72563b8c327b1a85cbdeaea10dba7f72de51d48ed24c65ad87"}, "url": "/docs/compare/?release=9.5.13#9.5.13-fc1d311eb84f7b24", "source_url": "/docs/release/9.5.13/#AEN129230"}]}, {"id": "10.4-6cdc4d22dd13190d", "cves": [], "html": "<p>Fix <span>pg_rewind</span> to handle tables in non-default tablespaces correctly (Takayuki Tsunakawa)</p>", "text": "Fix pg_rewind to handle tables in non-default tablespaces correctly (Takayuki Tsunakawa)", "title": "Fix pg_rewind to handle tables in non-default tablespaces correctly", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "cfefde282a1b20b0a6620620da38170dfdb99d22b9ed43addd66b6729fbf9af3", "section_path": ["Changes"], "commit_groups": [["2f3e2340c", "7aba4f23f", "bca696ab0", "cb5c141ed"]], "identity_text": "Fix pg_rewind to handle tables in non-default tablespaces correctly (Takayuki Tsunakawa)", "commit_aliases": ["2f3e2340c", "7aba4f23f", "bca696ab0", "cb5c141ed"], "source_commits": ["bca696ab0"], "source_entry_id": "10.4/changes/046", "db_id": "f4331bc1623a254caab99493f629b0bb", "patch_ids": ["1b44cd11c44b29eec5a0d39c84a4b6f4"], "statement_hash": "932daf9e6b2f777411f62b04968cac85e0cc105ef415a5d7903dd503256a7785", "relations": [{"rule": 2, "type": "equivalent", "target": "42143c0be482380ba7422d02bdf4b093", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "932daf9e6b2f777411f62b04968cac85e0cc105ef415a5d7903dd503256a7785"}}, {"rule": 2, "type": "equivalent", "target": "fed34683425f21d3357383e253a5687d", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "932daf9e6b2f777411f62b04968cac85e0cc105ef415a5d7903dd503256a7785"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "42143c0be482380ba7422d02bdf4b093", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Fix pg_rewind to handle tables in non-default tablespaces correctly", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "932daf9e6b2f777411f62b04968cac85e0cc105ef415a5d7903dd503256a7785"}, "url": "/docs/compare/?release=9.6.9#9.6.9-6cdc4d22dd13190d", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "fed34683425f21d3357383e253a5687d", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Fix pg_rewind to handle tables in non-default tablespaces correctly", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "932daf9e6b2f777411f62b04968cac85e0cc105ef415a5d7903dd503256a7785"}, "url": "/docs/compare/?release=9.5.13#9.5.13-6cdc4d22dd13190d", "source_url": "/docs/release/9.5.13/#AEN129230"}]}, {"id": "10.4-16b731b8d2ef5588", "cves": [], "html": "<p>Fix overflow handling in <span>PL/pgSQL</span> integer <code>FOR</code> loops (Tom Lane)</p>\n<p>The previous coding failed to detect overflow of the loop variable on some non-gcc compilers, leading to an infinite loop.</p>", "text": "Fix overflow handling in PL/pgSQL integer FOR loops (Tom Lane) The previous coding failed to detect overflow of the loop variable on some non-gcc compilers, leading to an infinite loop.", "title": "Fix overflow handling in PL/pgSQL integer FOR loops", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "7afb60a92172757a00decadeabbbbff65371606e349f322087c2258a82f84966", "section_path": ["Changes"], "commit_groups": [["04c76acab", "092401b14", "2dbee9f19", "5917297bf", "b3fade55c", "f1f7a85d8"]], "identity_text": "Fix overflow handling in PL/pgSQL integer FOR loops (Tom Lane) The previous coding failed to detect overflow of the loop variable on some non-gcc compilers, leading to an infinite loop.", "commit_aliases": ["04c76acab", "092401b14", "2dbee9f19", "5917297bf", "b3fade55c", "f1f7a85d8"], "source_commits": ["04c76acab"], "source_entry_id": "10.4/changes/047", "db_id": "f450345e6832e0dd2c5a1b3a45c6ac38", "patch_ids": ["d316853a9c19a216ea992347fb061fdb"], "statement_hash": "0a4ef063cc03701150ad1f4b3f3bf285a431381585df071d65872a7709d5492f", "relations": [{"rule": 2, "type": "equivalent", "target": "3cc06ac8b9c606122033c3c3c23e3aae", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0a4ef063cc03701150ad1f4b3f3bf285a431381585df071d65872a7709d5492f"}}, {"rule": 2, "type": "equivalent", "target": "96f35c267ed059265a5bd3db3e0992bf", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0a4ef063cc03701150ad1f4b3f3bf285a431381585df071d65872a7709d5492f"}}, {"rule": 2, "type": "equivalent", "target": "eb6e1fc684cee262048ebc8962c28dc9", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0a4ef063cc03701150ad1f4b3f3bf285a431381585df071d65872a7709d5492f"}}, {"rule": 2, "type": "equivalent", "target": "fe4e9cda6c02ace229e826230e1d5be7", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0a4ef063cc03701150ad1f4b3f3bf285a431381585df071d65872a7709d5492f"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "3cc06ac8b9c606122033c3c3c23e3aae", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Fix overflow handling in PL/pgSQL integer FOR loops", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0a4ef063cc03701150ad1f4b3f3bf285a431381585df071d65872a7709d5492f"}, "url": "/docs/compare/?release=9.6.9#9.6.9-16b731b8d2ef5588", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "fe4e9cda6c02ace229e826230e1d5be7", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Fix overflow handling in PL/pgSQL integer FOR loops", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0a4ef063cc03701150ad1f4b3f3bf285a431381585df071d65872a7709d5492f"}, "url": "/docs/compare/?release=9.5.13#9.5.13-16b731b8d2ef5588", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "eb6e1fc684cee262048ebc8962c28dc9", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Fix overflow handling in PL/pgSQL integer FOR loops", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0a4ef063cc03701150ad1f4b3f3bf285a431381585df071d65872a7709d5492f"}, "url": "/docs/compare/?release=9.4.18#9.4.18-16b731b8d2ef5588", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "96f35c267ed059265a5bd3db3e0992bf", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Fix overflow handling in PL/pgSQL integer FOR loops", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0a4ef063cc03701150ad1f4b3f3bf285a431381585df071d65872a7709d5492f"}, "url": "/docs/compare/?release=9.3.23#9.3.23-16b731b8d2ef5588", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-ac8baa932d7d6d77", "cves": [], "html": "<p>Adjust <span>PL/Python</span> regression tests to pass under Python 3.7 (Peter Eisentraut)</p>", "text": "Adjust PL/Python regression tests to pass under Python 3.7 (Peter Eisentraut)", "title": "Adjust PL/Python regression tests to pass under Python 3.7", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "6802139133e280db5c80e8e192111854b565e21604a3259b3c7f8e102a12f07d", "section_path": ["Changes"], "commit_groups": [["7d8679975", "8f1787a8f", "ab7825ead", "af9e0d5cd", "b812d6372", "e7f904715"], ["fa03769e4"]], "identity_text": "Adjust PL/Python regression tests to pass under Python 3.7 (Peter Eisentraut)", "commit_aliases": ["7d8679975", "8f1787a8f", "ab7825ead", "af9e0d5cd", "b812d6372", "e7f904715", "fa03769e4"], "source_commits": ["8f1787a8f", "fa03769e4"], "source_entry_id": "10.4/changes/048", "db_id": "f6ba738d03ea0144cae827cb325f389e", "patch_ids": ["6b3d77ee3300df0c7c0cb722487a731b", "9dccd34054aad23b6a2448526c038424"], "statement_hash": "780cda6aa19cce3f7e34d381505d0cf4d3e5d79f0f57a64b19d5c54ad437e235", "relations": [{"rule": 2, "type": "equivalent", "target": "092a5c903e18a218cb0e3d07c1ddfa58", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "780cda6aa19cce3f7e34d381505d0cf4d3e5d79f0f57a64b19d5c54ad437e235"}}, {"rule": 2, "type": "equivalent", "target": "164add571e0be8b919d0c5b3da2daead", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "780cda6aa19cce3f7e34d381505d0cf4d3e5d79f0f57a64b19d5c54ad437e235"}}, {"rule": 2, "type": "equivalent", "target": "5aab5e26643cc2e13c498816801dc7bf", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "780cda6aa19cce3f7e34d381505d0cf4d3e5d79f0f57a64b19d5c54ad437e235"}}, {"rule": 2, "type": "equivalent", "target": "b0c08871487406ad55fa03671c7c93db", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "780cda6aa19cce3f7e34d381505d0cf4d3e5d79f0f57a64b19d5c54ad437e235"}}], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "164add571e0be8b919d0c5b3da2daead", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Adjust PL/Python regression tests to pass under Python 3.7", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "780cda6aa19cce3f7e34d381505d0cf4d3e5d79f0f57a64b19d5c54ad437e235"}, "url": "/docs/compare/?release=9.6.9#9.6.9-ac8baa932d7d6d77", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "092a5c903e18a218cb0e3d07c1ddfa58", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Adjust PL/Python regression tests to pass under Python 3.7", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "780cda6aa19cce3f7e34d381505d0cf4d3e5d79f0f57a64b19d5c54ad437e235"}, "url": "/docs/compare/?release=9.5.13#9.5.13-ac8baa932d7d6d77", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "b0c08871487406ad55fa03671c7c93db", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Adjust PL/Python regression tests to pass under Python 3.7", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "780cda6aa19cce3f7e34d381505d0cf4d3e5d79f0f57a64b19d5c54ad437e235"}, "url": "/docs/compare/?release=9.4.18#9.4.18-ac8baa932d7d6d77", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "5aab5e26643cc2e13c498816801dc7bf", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Adjust PL/Python regression tests to pass under Python 3.7", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "780cda6aa19cce3f7e34d381505d0cf4d3e5d79f0f57a64b19d5c54ad437e235"}, "url": "/docs/compare/?release=9.3.23#9.3.23-ac8baa932d7d6d77", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-3ca38344c632ee03", "cves": [], "html": "<p>Support testing <span>PL/Python</span> and related modules when building with Python 3 and MSVC (Andrew Dunstan)</p>", "text": "Support testing PL/Python and related modules when building with Python 3 and MSVC (Andrew Dunstan)", "title": "Support testing PL/Python and related modules when building with Python 3 and MSVC", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "a88c428271185801edfbe925efdb85bcd4cfa637a94510ff97eade6713a4be49", "section_path": ["Changes"], "commit_groups": [["0e6114be8", "1eb24720c", "289bafdbc", "2b9bdda74", "3b17d4b9d", "a75b01c61"], ["134db37d2", "56a45646d", "966268c76", "a9fbf550b", "af39c1da7", "c1f3638d2"]], "identity_text": "Support testing PL/Python and related modules when building with Python 3 and MSVC (Andrew Dunstan)", "commit_aliases": ["0e6114be8", "134db37d2", "1eb24720c", "289bafdbc", "2b9bdda74", "3b17d4b9d", "56a45646d", "966268c76", "a75b01c61", "a9fbf550b", "af39c1da7", "c1f3638d2"], "source_commits": ["0e6114be8", "56a45646d"], "source_entry_id": "10.4/changes/049", "db_id": "67249569a8f02ab6d5b7fda603dafabe", "patch_ids": ["389b03b92212f2a96693294ed95500b0", "52d28559764fd9ceac4a8e1499687418"], "statement_hash": "5634bb83ea20c4ad2d8a041c709d9c2b0786277710bfef1dfcfa50b8db46482c", "relations": [{"rule": 2, "type": "equivalent", "target": "b861e1fba741bc04dc0960df73737ae4", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5634bb83ea20c4ad2d8a041c709d9c2b0786277710bfef1dfcfa50b8db46482c"}}, {"rule": 2, "type": "equivalent", "target": "bbb1df0c4d80a4d41956812f4c8d0341", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5634bb83ea20c4ad2d8a041c709d9c2b0786277710bfef1dfcfa50b8db46482c"}}, {"rule": 2, "type": "equivalent", "target": "e0c74adb069c3d08a3e6b9c95c9f695e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5634bb83ea20c4ad2d8a041c709d9c2b0786277710bfef1dfcfa50b8db46482c"}}, {"rule": 2, "type": "equivalent", "target": "e72aa8d3414b4f61eb5f961a40796c82", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5634bb83ea20c4ad2d8a041c709d9c2b0786277710bfef1dfcfa50b8db46482c"}}], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "e0c74adb069c3d08a3e6b9c95c9f695e", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Support testing PL/Python and related modules when building with Python 3 and MSVC", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5634bb83ea20c4ad2d8a041c709d9c2b0786277710bfef1dfcfa50b8db46482c"}, "url": "/docs/compare/?release=9.6.9#9.6.9-3ca38344c632ee03", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "e72aa8d3414b4f61eb5f961a40796c82", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Support testing PL/Python and related modules when building with Python 3 and MSVC", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5634bb83ea20c4ad2d8a041c709d9c2b0786277710bfef1dfcfa50b8db46482c"}, "url": "/docs/compare/?release=9.5.13#9.5.13-3ca38344c632ee03", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "bbb1df0c4d80a4d41956812f4c8d0341", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Support testing PL/Python and related modules when building with Python 3 and MSVC", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5634bb83ea20c4ad2d8a041c709d9c2b0786277710bfef1dfcfa50b8db46482c"}, "url": "/docs/compare/?release=9.4.18#9.4.18-3ca38344c632ee03", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "b861e1fba741bc04dc0960df73737ae4", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Support testing PL/Python and related modules when building with Python 3 and MSVC", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "5634bb83ea20c4ad2d8a041c709d9c2b0786277710bfef1dfcfa50b8db46482c"}, "url": "/docs/compare/?release=9.3.23#9.3.23-3ca38344c632ee03", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-a990d01a1a84c423", "cves": [], "html": "<p>Fix errors in initial build of <code>contrib/bloom</code> indexes (Tomas Vondra, Tom Lane)</p>\n<p>Fix possible omission of the table's last tuple from the index. Count the number of index tuples correctly, in case it is a partial index.</p>", "text": "Fix errors in initial build of contrib/bloom indexes (Tomas Vondra, Tom Lane) Fix possible omission of the table's last tuple from the index. Count the number of index tuples correctly, in case it is a partial index.", "title": "Fix errors in initial build of contrib/bloom indexes", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "6044b23c680c0b0eb81feb30387d6989943466d98ae630637fa0180daedbc62f", "section_path": ["Changes"], "commit_groups": [["76e2b5ae4", "c35b47286", "df9040155"]], "identity_text": "Fix errors in initial build of contrib/bloom indexes (Tomas Vondra, Tom Lane) Fix possible omission of the table's last tuple from the index. Count the number of index tuples correctly, in case it is a partial index.", "commit_aliases": ["76e2b5ae4", "c35b47286", "df9040155"], "source_commits": ["76e2b5ae4"], "source_entry_id": "10.4/changes/050", "db_id": "b313f995f2a654b488f9b627a1a12bb8", "patch_ids": ["f632874e3c7d53d2f43a2daf911f3b2a"], "statement_hash": "d31f8239fd7adb90c80f8352ee81fd414db1869f5f615a2b908608d07ea18ec8", "relations": [{"rule": 2, "type": "equivalent", "target": "7c8059a665605976c3ad67c39d56a955", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "d31f8239fd7adb90c80f8352ee81fd414db1869f5f615a2b908608d07ea18ec8"}}], "version": "10.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "7c8059a665605976c3ad67c39d56a955", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Fix errors in initial build of contrib/bloom indexes", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "d31f8239fd7adb90c80f8352ee81fd414db1869f5f615a2b908608d07ea18ec8"}, "url": "/docs/compare/?release=9.6.9#9.6.9-a990d01a1a84c423", "source_url": "/docs/release/9.6.9/#AEN134496"}]}, {"id": "10.4-047410f08d5d82c0", "cves": [], "html": "<p>Rename internal <code>b64_encode</code> and <code>b64_decode</code> functions to avoid conflict with Solaris 11.4 built-in functions (Rainer Orth)</p>", "text": "Rename internal b64_encode and b64_decode functions to avoid conflict with Solaris 11.4 built-in functions (Rainer Orth)", "title": "Rename internal b64_encode and b64_decode functions to avoid conflict with Solaris 11.4 built-in functions", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "11729c45b68623e91028a067c62e569954ffc9eb9c8a5d9ee58824c103220714", "section_path": ["Changes"], "commit_groups": [["10102c91e", "11e7700e5", "43e949086", "679df2b8d", "aac6286d8", "d07f79a9c"]], "identity_text": "Rename internal b64_encode and b64_decode functions to avoid conflict with Solaris 11.4 built-in functions (Rainer Orth)", "commit_aliases": ["10102c91e", "11e7700e5", "43e949086", "679df2b8d", "aac6286d8", "d07f79a9c"], "source_commits": ["aac6286d8"], "source_entry_id": "10.4/changes/051", "db_id": "7540f3603393aeae040a4659ba200e0c", "patch_ids": ["dc2ebd1729d896c8cde9cabde75f7a3e"], "statement_hash": "ccdc115d4c7c4a9b335673b20b16a2b15c333f987124bf1d81085fa184d5388c", "relations": [{"rule": 2, "type": "equivalent", "target": "06b9ed0200a03897f6a65af4cb9e00ea", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ccdc115d4c7c4a9b335673b20b16a2b15c333f987124bf1d81085fa184d5388c"}}, {"rule": 2, "type": "equivalent", "target": "4ad3cf7374fe1c4733020237eb54702e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ccdc115d4c7c4a9b335673b20b16a2b15c333f987124bf1d81085fa184d5388c"}}, {"rule": 2, "type": "equivalent", "target": "54f9a13e02ec87667d4e9b57e8db3799", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ccdc115d4c7c4a9b335673b20b16a2b15c333f987124bf1d81085fa184d5388c"}}, {"rule": 2, "type": "equivalent", "target": "77b02662e7b58dcfdfd84bea5cf2e418", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ccdc115d4c7c4a9b335673b20b16a2b15c333f987124bf1d81085fa184d5388c"}}], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "4ad3cf7374fe1c4733020237eb54702e", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Rename internal b64_encode and b64_decode functions to avoid conflict with Solaris 11.4 built-in functions", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ccdc115d4c7c4a9b335673b20b16a2b15c333f987124bf1d81085fa184d5388c"}, "url": "/docs/compare/?release=9.6.9#9.6.9-047410f08d5d82c0", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "06b9ed0200a03897f6a65af4cb9e00ea", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Rename internal b64_encode and b64_decode functions to avoid conflict with Solaris 11.4 built-in functions", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ccdc115d4c7c4a9b335673b20b16a2b15c333f987124bf1d81085fa184d5388c"}, "url": "/docs/compare/?release=9.5.13#9.5.13-047410f08d5d82c0", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "54f9a13e02ec87667d4e9b57e8db3799", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Rename internal b64_encode and b64_decode functions to avoid conflict with Solaris 11.4 built-in functions", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ccdc115d4c7c4a9b335673b20b16a2b15c333f987124bf1d81085fa184d5388c"}, "url": "/docs/compare/?release=9.4.18#9.4.18-047410f08d5d82c0", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "77b02662e7b58dcfdfd84bea5cf2e418", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Rename internal b64_encode and b64_decode functions to avoid conflict with Solaris 11.4 built-in functions", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ccdc115d4c7c4a9b335673b20b16a2b15c333f987124bf1d81085fa184d5388c"}, "url": "/docs/compare/?release=9.3.23#9.3.23-047410f08d5d82c0", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-b6fe8539df563651", "cves": [], "html": "<p>Sync our copy of the timezone library with IANA tzcode release 2018e (Tom Lane)</p>\n<p>This fixes the <span>zic</span> timezone data compiler to cope with negative daylight-savings offsets. While the <span>PostgreSQL</span> project will not immediately ship such timezone data, <span>zic</span> might be used with timezone data obtained directly from IANA, so it seems prudent to update <span>zic</span> now.</p>", "text": "Sync our copy of the timezone library with IANA tzcode release 2018e (Tom Lane) This fixes the zic timezone data compiler to cope with negative daylight-savings offsets. While the PostgreSQL project will not immediately ship such timezone data, zic might be used with timezone data obtained directly from IANA, so it seems prudent to update zic now.", "title": "Sync our copy of the timezone library with IANA tzcode release 2018e", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "3da33e6ff2a7cca34c943286e37564ef88b9924296a1df87312d1ccf42987ce5", "section_path": ["Changes"], "commit_groups": [["2d123b310", "4e0e9e59b", "7a83323f2", "9469ebc71", "b45f6613e", "b49f4e69a"]], "identity_text": "Sync our copy of the timezone library with IANA tzcode release 2018e (Tom Lane) This fixes the zic timezone data compiler to cope with negative daylight-savings offsets. While the PostgreSQL project will not immediately ship such timezone data, zic might be used with timezone data obtained directly from IANA, so it seems prudent to update zic now.", "commit_aliases": ["2d123b310", "4e0e9e59b", "7a83323f2", "9469ebc71", "b45f6613e", "b49f4e69a"], "source_commits": ["b49f4e69a"], "source_entry_id": "10.4/changes/052", "db_id": "0cc1900bec6f69ad0bba2717f75f98fc", "patch_ids": ["516cee10a9cf84f423a6c41a417bd5da"], "statement_hash": "b468918eca3475825fe4c623ae5493359c6550f7d2a598bdecc14068d7d4c224", "relations": [{"rule": 2, "type": "equivalent", "target": "18a599de7bec16fd8a0238f0fda5a7f4", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b468918eca3475825fe4c623ae5493359c6550f7d2a598bdecc14068d7d4c224"}}, {"rule": 2, "type": "equivalent", "target": "578af37ef74ed8fc4e94dc6d8da39545", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b468918eca3475825fe4c623ae5493359c6550f7d2a598bdecc14068d7d4c224"}}, {"rule": 2, "type": "equivalent", "target": "95f2feddf6ec11ef3108ac02a7a07d65", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b468918eca3475825fe4c623ae5493359c6550f7d2a598bdecc14068d7d4c224"}}, {"rule": 2, "type": "equivalent", "target": "ad2a1d2d86c8ebbe87d1da7a8cd6341a", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b468918eca3475825fe4c623ae5493359c6550f7d2a598bdecc14068d7d4c224"}}], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "ad2a1d2d86c8ebbe87d1da7a8cd6341a", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Sync our copy of the timezone library with IANA tzcode release 2018e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b468918eca3475825fe4c623ae5493359c6550f7d2a598bdecc14068d7d4c224"}, "url": "/docs/compare/?release=9.6.9#9.6.9-b6fe8539df563651", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "578af37ef74ed8fc4e94dc6d8da39545", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Sync our copy of the timezone library with IANA tzcode release 2018e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b468918eca3475825fe4c623ae5493359c6550f7d2a598bdecc14068d7d4c224"}, "url": "/docs/compare/?release=9.5.13#9.5.13-b6fe8539df563651", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "18a599de7bec16fd8a0238f0fda5a7f4", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Sync our copy of the timezone library with IANA tzcode release 2018e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b468918eca3475825fe4c623ae5493359c6550f7d2a598bdecc14068d7d4c224"}, "url": "/docs/compare/?release=9.4.18#9.4.18-b6fe8539df563651", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "95f2feddf6ec11ef3108ac02a7a07d65", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Sync our copy of the timezone library with IANA tzcode release 2018e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b468918eca3475825fe4c623ae5493359c6550f7d2a598bdecc14068d7d4c224"}, "url": "/docs/compare/?release=9.3.23#9.3.23-b6fe8539df563651", "source_url": "/docs/release/9.3.23/#AEN115427"}]}, {"id": "10.4-01ee705bfe62fea4", "cves": [], "html": "<p>Update time zone data files to <span>tzdata</span> release 2018d for DST law changes in Palestine and Antarctica (Casey Station), plus historical corrections for Portugal and its colonies, as well as Enderbury, Jamaica, Turks &amp; Caicos Islands, and Uruguay.</p>", "text": "Update time zone data files to tzdata release 2018d for DST law changes in Palestine and Antarctica (Casey Station), plus historical corrections for Portugal and its colonies, as well as Enderbury, Jamaica, Turks & Caicos Islands, and Uruguay.", "title": "Update time zone data files to tzdata release 2018d for DST law changes in Palestine and Antarctica (Casey Station), plus historical corrections for Portugal and its colonies, as well as Enderbury, Jamaica, Turks & Caicos Islands, and Uruguay.", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/10.4/#id-1.11.6.24.5", "source_hash": "1728f59816b73605d86d2b49b478729950428763ed4e222baecfb9846e921486", "section_path": ["Changes"], "commit_groups": [["2acbeea48", "37c02b2b0", "783e8f56d", "adcd0c2be", "df629586e", "eaed0d230"]], "identity_text": "Update time zone data files to tzdata release 2018d for DST law changes in Palestine and Antarctica (Casey Station), plus historical corrections for Portugal and its colonies, as well as Enderbury, Jamaica, Turks & Caicos Islands, and Uruguay.", "commit_aliases": ["2acbeea48", "37c02b2b0", "783e8f56d", "adcd0c2be", "df629586e", "eaed0d230"], "source_commits": ["783e8f56d"], "source_entry_id": "10.4/changes/053", "db_id": "7dc8ddc7c7abdcbec76b5a5d16b5f3d5", "patch_ids": ["e0d2e1304634c95e03b4a9a5e2e809bb"], "statement_hash": "daaa97fbe432facdb0e4bdf124621a21c9254d2f2c8ea69c358da90ab50e9a8c", "relations": [{"rule": 2, "type": "equivalent", "target": "15e000d884ef74d4cb086fd21b0fd5a7", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "daaa97fbe432facdb0e4bdf124621a21c9254d2f2c8ea69c358da90ab50e9a8c"}}, {"rule": 2, "type": "equivalent", "target": "19c596e1b4b3f3be560f47d5d1f241f2", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "daaa97fbe432facdb0e4bdf124621a21c9254d2f2c8ea69c358da90ab50e9a8c"}}, {"rule": 2, "type": "equivalent", "target": "634fe596a9e43c164d6ac3eb53037661", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "daaa97fbe432facdb0e4bdf124621a21c9254d2f2c8ea69c358da90ab50e9a8c"}}, {"rule": 2, "type": "equivalent", "target": "daa3f8bca1c58eb91ab08201f80cebfa", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "daaa97fbe432facdb0e4bdf124621a21c9254d2f2c8ea69c358da90ab50e9a8c"}}], "version": "10.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "19c596e1b4b3f3be560f47d5d1f241f2", "kind": "equivalent", "version": "9.6.9", "label": "9.6.9", "title": "Update time zone data files to tzdata release 2018d for DST law changes in Palestine and Antarctica (Casey Station), plus historical corrections for Portugal and its colonies, as well as Enderbury, Jamaica, Turks & Caicos Islands, and Uruguay.", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "daaa97fbe432facdb0e4bdf124621a21c9254d2f2c8ea69c358da90ab50e9a8c"}, "url": "/docs/compare/?release=9.6.9#9.6.9-01ee705bfe62fea4", "source_url": "/docs/release/9.6.9/#AEN134496"}, {"db_id": "15e000d884ef74d4cb086fd21b0fd5a7", "kind": "equivalent", "version": "9.5.13", "label": "9.5.13", "title": "Update time zone data files to tzdata release 2018d for DST law changes in Palestine and Antarctica (Casey Station), plus historical corrections for Portugal and its colonies, as well as Enderbury, Jamaica, Turks & Caicos Islands, and Uruguay.", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "daaa97fbe432facdb0e4bdf124621a21c9254d2f2c8ea69c358da90ab50e9a8c"}, "url": "/docs/compare/?release=9.5.13#9.5.13-01ee705bfe62fea4", "source_url": "/docs/release/9.5.13/#AEN129230"}, {"db_id": "634fe596a9e43c164d6ac3eb53037661", "kind": "equivalent", "version": "9.4.18", "label": "9.4.18", "title": "Update time zone data files to tzdata release 2018d for DST law changes in Palestine and Antarctica (Casey Station), plus historical corrections for Portugal and its colonies, as well as Enderbury, Jamaica, Turks & Caicos Islands, and Uruguay.", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "daaa97fbe432facdb0e4bdf124621a21c9254d2f2c8ea69c358da90ab50e9a8c"}, "url": "/docs/compare/?release=9.4.18#9.4.18-01ee705bfe62fea4", "source_url": "/docs/release/9.4.18/#AEN120949"}, {"db_id": "daa3f8bca1c58eb91ab08201f80cebfa", "kind": "equivalent", "version": "9.3.23", "label": "9.3.23", "title": "Update time zone data files to tzdata release 2018d for DST law changes in Palestine and Antarctica (Casey Station), plus historical corrections for Portugal and its colonies, as well as Enderbury, Jamaica, Turks & Caicos Islands, and Uruguay.", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "daaa97fbe432facdb0e4bdf124621a21c9254d2f2c8ea69c358da90ab50e9a8c"}, "url": "/docs/compare/?release=9.3.23#9.3.23-01ee705bfe62fea4", "source_url": "/docs/release/9.3.23/#AEN115427"}]}]}], "stats": [{"key": "all", "label": "All changes", "count": 53}, {"key": "feature", "label": "Features", "count": 0}, {"key": "bugfix", "label": "Bug fixes", "count": 30}, {"key": "security", "label": "Security", "count": 1}, {"key": "performance", "label": "Performance", "count": 0}, {"key": "compatibility", "label": "Compatibility", "count": 0}, {"key": "improvement", "label": "Improvements", "count": 22}], "total": 53, "release_count": 1, "cross_major": false, "cve_count": 1, "cves": [{"id": "CVE-2018-1115", "url": "https://www.postgresql.org/support/security/CVE-2018-1115/", "fixed": {"10": "10.4", "9.6": "9.6.9"}, "score": 3.1, "title": "Remove public execute privilege from contrib/adminpack's pg_logfile_rotate() function", "vector": "AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N", "affected": {"10": "10", "9.6": "9.6"}, "component": "contrib module", "published": {"10": "2018-05-10", "9.6": "2018-05-10"}, "introduced": {}, "cvss_version": "3.0", "description_en": "", "first_published": "2018-05-10", "fixed_version": "10.4"}], "cve_available": true, "remaining_cves": [], "security_regressions": [], "warnings": [], "candidate_count": 53, "already_in_source_count": 0, "duplicate_count": 0, "excluded_count": 0, "exclusions": [], "source_as_of": "2026-09-26", "security_as_of": "2026-09-26"}