{"format": 1, "mode": "release", "from_release": null, "to_release": {"date": "2012-06-04", "build": "9.1.4", "major": "9.1", "minor": 4, "manual": "9.1", "status": "stable", "doc_git": "", "version": "9.1.4", "eol_date": "2016-10-27", "date_text": "2012-06-04", "supported": false, "manual_url": "/docs/9.1/release-9-1-4.html", "source_url": "/docs/release/9.1.4/", "entry_count": 42, "placeholder": false, "content_hash": "f04d8d266d77cd9eb65193e62ff6357c482cd41d23a6a8d52e989803ecd59c6b", "manual_build": "9.1.24", "source_as_of": "", "changes_count": 42, "doc_loaded_at": "2026-09-25T02:22:44.760693", "migration_html": "<p>A dump/restore is not required for those running 9.1.X.</p>\n<p>However, if you use the citext data type, and you upgraded from a previous major release by running <span>pg_upgrade</span>, you should run CREATE EXTENSION citext FROM unpackaged to avoid collation-related failures in citext operations. The same is necessary if you restore a dump from a pre-9.1 database that contains an instance of the citext data type. If you've already run the CREATE EXTENSION command before upgrading to 9.1.4, you will instead need to do manual catalog updates as explained in the third changelog item below.</p>\n<p>Also, if you are upgrading from a version earlier than 9.1.2, see <a href=\"/docs/9.1/release-9-1-2.html\">Section E.23</a>.</p>", "compatibility_count": 0, "label": "9.1.4", "status_label": "Historical", "eol": "2016-10-27", "age_days": 5230, "support_days": -3624}, "groups": [{"date": "2012-06-04", "build": "9.1.4", "major": "9.1", "minor": 4, "manual": "9.1", "status": "stable", "doc_git": "", "version": "9.1.4", "eol_date": "2016-10-27", "date_text": "2012-06-04", "supported": false, "manual_url": "/docs/9.1/release-9-1-4.html", "source_url": "/docs/release/9.1.4/", "entry_count": 42, "placeholder": false, "content_hash": "f04d8d266d77cd9eb65193e62ff6357c482cd41d23a6a8d52e989803ecd59c6b", "manual_build": "9.1.24", "source_as_of": "", "changes_count": 42, "doc_loaded_at": "2026-09-25T02:22:44.760693", "migration_html": "<p>A dump/restore is not required for those running 9.1.X.</p>\n<p>However, if you use the citext data type, and you upgraded from a previous major release by running <span>pg_upgrade</span>, you should run CREATE EXTENSION citext FROM unpackaged to avoid collation-related failures in citext operations. The same is necessary if you restore a dump from a pre-9.1 database that contains an instance of the citext data type. If you've already run the CREATE EXTENSION command before upgrading to 9.1.4, you will instead need to do manual catalog updates as explained in the third changelog item below.</p>\n<p>Also, if you are upgrading from a version earlier than 9.1.2, see <a href=\"/docs/9.1/release-9-1-2.html\">Section E.23</a>.</p>", "compatibility_count": 0, "label": "9.1.4", "status_label": "Historical", "eol": "2016-10-27", "age_days": 5230, "support_days": -3624, "entries": [{"id": "9.1.4-e572f3b965c38e34", "cves": ["CVE-2012-2143"], "html": "<p>Fix incorrect password transformation in contrib/pgcrypto's DES <code>crypt()</code> function (Solar Designer)</p>\n<p>If a password string contained the byte value 0x80, the remainder of the password was ignored, causing the password to be much weaker than it appeared. With this fix, the rest of the string is properly included in the DES hash. Any stored password values that are affected by this bug will thus no longer match, so the stored values may need to be updated. (CVE-2012-2143)</p>", "text": "Fix incorrect password transformation in contrib/pgcrypto's DES crypt() function (Solar Designer) If a password string contained the byte value 0x80, the remainder of the password was ignored, causing the password to be much weaker than it appeared. With this fix, the rest of the string is properly included in the DES hash. Any stored password values that are affected by this bug will thus no longer match, so the stored values may need to be updated. (CVE-2012-2143)", "title": "Fix incorrect password transformation in contrib/pgcrypto's DES crypt() function", "commits": [], "section": "Changes", "category": "security", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "03a1260ee215d2a25cc1484b7103f4107390ddf678301f7bd1ceae282b0d55b1", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix incorrect password transformation in contrib/pgcrypto's DES crypt() function (Solar Designer) If a password string contained the byte value 0x80, the remainder of the password was ignored, causing the password to be much weaker than it appeared. With this fix, the rest of the string is properly included in the DES hash. Any stored password values that are affected by this bug will thus no longer match, so the stored values may need to be updated. (CVE-2012-2143)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/001", "db_id": "d1c9aa8a6e42b789d6b12bf1c19ff48d", "patch_ids": [], "statement_hash": "0f947a81af48a2bd27b30000bab97b036e134d06ee4907612bcff56b4d16f7aa", "relations": [{"rule": 2, "type": "equivalent", "target": "cb5920a7729a661d027d04e87378653a", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0f947a81af48a2bd27b30000bab97b036e134d06ee4907612bcff56b4d16f7aa"}}], "version": "9.1.4", "category_label": "Security", "also_in": [], "variants": [], "related_changes": [{"db_id": "cb5920a7729a661d027d04e87378653a", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Fix incorrect password transformation in contrib/pgcrypto's DES crypt() function", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0f947a81af48a2bd27b30000bab97b036e134d06ee4907612bcff56b4d16f7aa"}, "url": "/docs/compare/?release=9.0.8#9.0.8-e572f3b965c38e34", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-22abb084ee375aae", "cves": ["CVE-2012-2655"], "html": "<p>Ignore SECURITY DEFINER and SET attributes for a procedural language's call handler (Tom Lane)</p>\n<p>Applying such attributes to a call handler could crash the server. (CVE-2012-2655)</p>", "text": "Ignore SECURITY DEFINER and SET attributes for a procedural language's call handler (Tom Lane) Applying such attributes to a call handler could crash the server. (CVE-2012-2655)", "title": "Ignore SECURITY DEFINER and SET attributes for a procedural language's call handler", "commits": [], "section": "Changes", "category": "security", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "bbdb239a6841f1e9d3da8a3a37b3e91395b788f87fd1a80b91653ba2dd93352c", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Ignore SECURITY DEFINER and SET attributes for a procedural language's call handler (Tom Lane) Applying such attributes to a call handler could crash the server. (CVE-2012-2655)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/002", "db_id": "1e9aa9dadb7f705940e29fe92ef4e58c", "patch_ids": [], "statement_hash": "3a45f8c9f78d68b6bb81173d47eee8e0f3bfb011cdfceb55b611990b4bfde531", "relations": [{"rule": 2, "type": "equivalent", "target": "2dc791f135e8a00bb8117ee8ba9bbf9f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3a45f8c9f78d68b6bb81173d47eee8e0f3bfb011cdfceb55b611990b4bfde531"}}], "version": "9.1.4", "category_label": "Security", "also_in": [], "variants": [], "related_changes": [{"db_id": "2dc791f135e8a00bb8117ee8ba9bbf9f", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Ignore SECURITY DEFINER and SET attributes for a procedural language's call handler", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3a45f8c9f78d68b6bb81173d47eee8e0f3bfb011cdfceb55b611990b4bfde531"}, "url": "/docs/compare/?release=9.0.8#9.0.8-22abb084ee375aae", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-e8202e40a2ac0405", "cves": [], "html": "<p>Make contrib/citext's upgrade script fix collations of citext arrays and domains over citext (Tom Lane)</p>\n<p>Release 9.1.2 provided a fix for collations of citext columns and indexes in databases upgraded or reloaded from pre-9.1 installations, but that fix was incomplete: it neglected to handle arrays and domains over citext. This release extends the module's upgrade script to handle these cases. As before, if you have already run the upgrade script, you'll need to run the collation update commands by hand instead. See the 9.1.2 release notes for more information about doing this.</p>", "text": "Make contrib/citext's upgrade script fix collations of citext arrays and domains over citext (Tom Lane) Release 9.1.2 provided a fix for collations of citext columns and indexes in databases upgraded or reloaded from pre-9.1 installations, but that fix was incomplete: it neglected to handle arrays and domains over citext. This release extends the module's upgrade script to handle these cases. As before, if you have already run the upgrade script, you'll need to run the collation update commands by hand instead. See the 9.1.2 release notes for more information about doing this.", "title": "Make contrib/citext's upgrade script fix collations of citext arrays and domains over citext", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "12a9b14edfff3624036b615300f4a7d4a9af0eb6e62f322d70de46fdab3ce67b", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Make contrib/citext's upgrade script fix collations of citext arrays and domains over citext (Tom Lane) Release 9.1.2 provided a fix for collations of citext columns and indexes in databases upgraded or reloaded from pre-9.1 installations, but that fix was incomplete: it neglected to handle arrays and domains over citext. This release extends the module's upgrade script to handle these cases. As before, if you have already run the upgrade script, you'll need to run the collation update commands by hand instead. See the 9.1.2 release notes for more information about doing this.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/003", "db_id": "7a5054a2657a09e320d20c003f377cbe", "patch_ids": [], "statement_hash": "a079dead48e4f1a0b2dc5d0da6bfc73779eb2946f0679b82f06379567d148b63", "relations": [], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.1.4-a095d0662d392497", "cves": [], "html": "<p>Allow numeric timezone offsets in timestamp input to be up to 16 hours away from UTC (Tom Lane)</p>\n<p>Some historical time zones have offsets larger than 15 hours, the previous limit. This could result in dumped data values being rejected during reload.</p>", "text": "Allow numeric timezone offsets in timestamp input to be up to 16 hours away from UTC (Tom Lane) Some historical time zones have offsets larger than 15 hours, the previous limit. This could result in dumped data values being rejected during reload.", "title": "Allow numeric timezone offsets in timestamp input to be up to 16 hours away from UTC", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "095455017b66c55da7ed039aa3f5560a3263adfea20dda6aa302de82de828030", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Allow numeric timezone offsets in timestamp input to be up to 16 hours away from UTC (Tom Lane) Some historical time zones have offsets larger than 15 hours, the previous limit. This could result in dumped data values being rejected during reload.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/004", "db_id": "148a0e4a0398fc58c07421da3704ba28", "patch_ids": [], "statement_hash": "c3e3ec0ac5c3d36697ec4d7790092641fb62939d3e45a1ab5fb07e9627be88e7", "relations": [{"rule": 2, "type": "equivalent", "target": "66dfcc585e0253d76efafa427b1cfacf", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c3e3ec0ac5c3d36697ec4d7790092641fb62939d3e45a1ab5fb07e9627be88e7"}}], "version": "9.1.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "66dfcc585e0253d76efafa427b1cfacf", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Allow numeric timezone offsets in timestamp input to be up to 16 hours away from UTC", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "c3e3ec0ac5c3d36697ec4d7790092641fb62939d3e45a1ab5fb07e9627be88e7"}, "url": "/docs/compare/?release=9.0.8#9.0.8-a095d0662d392497", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-6ac4ba6a4dabe8cd", "cves": [], "html": "<p>Fix timestamp conversion to cope when the given time is exactly the last DST transition time for the current timezone (Tom Lane)</p>\n<p>This oversight has been there a long time, but was not noticed previously because most DST-using zones are presumed to have an indefinite sequence of future DST transitions.</p>", "text": "Fix timestamp conversion to cope when the given time is exactly the last DST transition time for the current timezone (Tom Lane) This oversight has been there a long time, but was not noticed previously because most DST-using zones are presumed to have an indefinite sequence of future DST transitions.", "title": "Fix timestamp conversion to cope when the given time is exactly the last DST transition time for the current timezone", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "dcb250ef64a23c07160dcef95f88732260b4bea6fb201bd5fc62375f81319c48", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix timestamp conversion to cope when the given time is exactly the last DST transition time for the current timezone (Tom Lane) This oversight has been there a long time, but was not noticed previously because most DST-using zones are presumed to have an indefinite sequence of future DST transitions.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/005", "db_id": "dba677f0792ea4293b27390098dc3d6d", "patch_ids": [], "statement_hash": "83fe48e3588100d31ea25ded9b792e4acf012f89a6827c2e26ad123c24092655", "relations": [{"rule": 2, "type": "equivalent", "target": "adbae31d5c047fe31754c449e1bbaa24", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "83fe48e3588100d31ea25ded9b792e4acf012f89a6827c2e26ad123c24092655"}}], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "adbae31d5c047fe31754c449e1bbaa24", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Fix timestamp conversion to cope when the given time is exactly the last DST transition time for the current timezone", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "83fe48e3588100d31ea25ded9b792e4acf012f89a6827c2e26ad123c24092655"}, "url": "/docs/compare/?release=9.0.8#9.0.8-6ac4ba6a4dabe8cd", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-854fede49eee61a3", "cves": [], "html": "<p>Fix text to name and char to name casts to perform string truncation correctly in multibyte encodings (Karl Schnaitter)</p>", "text": "Fix text to name and char to name casts to perform string truncation correctly in multibyte encodings (Karl Schnaitter)", "title": "Fix text to name and char to name casts to perform string truncation correctly in multibyte encodings", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "b238c8128f334e29dd27f26a155f4798409dd546ad6a8b2118ce60dec4ea1779", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix text to name and char to name casts to perform string truncation correctly in multibyte encodings (Karl Schnaitter)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/006", "db_id": "d2cebd1f21edbebaa93a2a85740498f1", "patch_ids": [], "statement_hash": "2c91579c14e0421cc4befc73e67c9f3a6bdee231311a8a3f88da3cea2f6eaa05", "relations": [{"rule": 2, "type": "equivalent", "target": "b62ecf087122590c91da50302d70e3ff", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2c91579c14e0421cc4befc73e67c9f3a6bdee231311a8a3f88da3cea2f6eaa05"}}], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "b62ecf087122590c91da50302d70e3ff", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Fix text to name and char to name casts to perform string truncation correctly in multibyte encodings", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "2c91579c14e0421cc4befc73e67c9f3a6bdee231311a8a3f88da3cea2f6eaa05"}, "url": "/docs/compare/?release=9.0.8#9.0.8-854fede49eee61a3", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-55cd3108c9926c31", "cves": [], "html": "<p>Fix memory copying bug in <code>to_tsquery()</code> (Heikki Linnakangas)</p>", "text": "Fix memory copying bug in to_tsquery() (Heikki Linnakangas)", "title": "Fix memory copying bug in to_tsquery()", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "88d94d6ef8e5b743952e58e6e2f93bb4574b553085c6bc89ed71c0e9e1b0413d", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix memory copying bug in to_tsquery() (Heikki Linnakangas)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/007", "db_id": "246ee9f97ad753e16c3afac6fdea659c", "patch_ids": [], "statement_hash": "17052e5fa0cc283e7f8c8c7f3b11ae8239d038ed05d86b422f744fa3e28545f4", "relations": [{"rule": 2, "type": "equivalent", "target": "c69a6087c68a06d664f2f8f71e09fb6e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "17052e5fa0cc283e7f8c8c7f3b11ae8239d038ed05d86b422f744fa3e28545f4"}}], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "c69a6087c68a06d664f2f8f71e09fb6e", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Fix memory copying bug in to_tsquery()", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "17052e5fa0cc283e7f8c8c7f3b11ae8239d038ed05d86b422f744fa3e28545f4"}, "url": "/docs/compare/?release=9.0.8#9.0.8-55cd3108c9926c31", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-44c43c1cad7baaf9", "cves": [], "html": "<p>Ensure <code>txid_current()</code> reports the correct epoch when executed in hot standby (Simon Riggs)</p>", "text": "Ensure txid_current() reports the correct epoch when executed in hot standby (Simon Riggs)", "title": "Ensure txid_current() reports the correct epoch when executed in hot standby", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "b0ccb6472cbc75c153b6da657f721258b1d7c69f33eb187eca5ff4774d793988", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Ensure txid_current() reports the correct epoch when executed in hot standby (Simon Riggs)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/008", "db_id": "2c0dec606905b65df86f3696314a0f28", "patch_ids": [], "statement_hash": "6ff384176800c990eead1448541e563e2034b2d035497e65e5f33c45cff13118", "relations": [{"rule": 2, "type": "equivalent", "target": "558735af561463755186750792b27395", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6ff384176800c990eead1448541e563e2034b2d035497e65e5f33c45cff13118"}}], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "558735af561463755186750792b27395", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Ensure txid_current() reports the correct epoch when executed in hot standby", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6ff384176800c990eead1448541e563e2034b2d035497e65e5f33c45cff13118"}, "url": "/docs/compare/?release=9.0.8#9.0.8-44c43c1cad7baaf9", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-672fa046a7ce9b4b", "cves": [], "html": "<p>Fix planner's handling of outer PlaceHolderVars within subqueries (Tom Lane)</p>\n<p>This bug concerns sub-SELECTs that reference variables coming from the nullable side of an outer join of the surrounding query. In 9.1, queries affected by this bug would fail with <span>\"ERROR: Upper-level PlaceHolderVar found where not expected\"</span>. But in 9.0 and 8.4, you'd silently get possibly-wrong answers, since the value transmitted into the subquery wouldn't go to null when it should.</p>", "text": "Fix planner's handling of outer PlaceHolderVars within subqueries (Tom Lane) This bug concerns sub-SELECTs that reference variables coming from the nullable side of an outer join of the surrounding query. In 9.1, queries affected by this bug would fail with \"ERROR: Upper-level PlaceHolderVar found where not expected\". But in 9.0 and 8.4, you'd silently get possibly-wrong answers, since the value transmitted into the subquery wouldn't go to null when it should.", "title": "Fix planner's handling of outer PlaceHolderVars within subqueries", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "74402dad6b2aa4c05f2ded5ac17ec2100eab3cb773d7b741805a6b81b4c7e85b", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix planner's handling of outer PlaceHolderVars within subqueries (Tom Lane) This bug concerns sub-SELECTs that reference variables coming from the nullable side of an outer join of the surrounding query. In 9.1, queries affected by this bug would fail with ERROR: Upper-level PlaceHolderVar found where not expected. But in 9.0 and 8.4, you'd silently get possibly-wrong answers, since the value transmitted into the subquery wouldn't go to null when it should.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/009", "db_id": "ef188976cac2505dda8376e40a42b5d1", "patch_ids": [], "statement_hash": "8ee28efc2fbfda74cb453da5f680773337fd25421ee1855c571078dd937bb706", "relations": [{"rule": 2, "type": "equivalent", "target": "19a6e1973e59e9da729551e85bc3d665", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8ee28efc2fbfda74cb453da5f680773337fd25421ee1855c571078dd937bb706"}}], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "19a6e1973e59e9da729551e85bc3d665", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Fix planner's handling of outer PlaceHolderVars within subqueries", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8ee28efc2fbfda74cb453da5f680773337fd25421ee1855c571078dd937bb706"}, "url": "/docs/compare/?release=9.0.8#9.0.8-672fa046a7ce9b4b", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-7d1ae968bf2270c2", "cves": [], "html": "<p>Fix planning of UNION ALL subqueries with output columns that are not simple variables (Tom Lane)</p>\n<p>Planning of such cases got noticeably worse in 9.1 as a result of a misguided fix for <span>\"MergeAppend child's targetlist doesn't match MergeAppend\"</span> errors. Revert that fix and do it another way.</p>", "text": "Fix planning of UNION ALL subqueries with output columns that are not simple variables (Tom Lane) Planning of such cases got noticeably worse in 9.1 as a result of a misguided fix for \"MergeAppend child's targetlist doesn't match MergeAppend\" errors. Revert that fix and do it another way.", "title": "Fix planning of UNION ALL subqueries with output columns that are not simple variables", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "6a4ffc166064f8b09ddf911e02e920c1c2db28138bce1d70ac841fd8c29d3d10", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix planning of UNION ALL subqueries with output columns that are not simple variables (Tom Lane) Planning of such cases got noticeably worse in 9.1 as a result of a misguided fix for MergeAppend child's targetlist doesn't match MergeAppend errors. Revert that fix and do it another way.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/010", "db_id": "20c9f5ca515c6f79fec1b5ee504114c4", "patch_ids": [], "statement_hash": "a8ca38d6526e03443cf9a6f6e68f96da93674c7f63884b21d932bc75efdc2d2e", "relations": [], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.1.4-f53fd1ab1aae3c28", "cves": [], "html": "<p>Fix slow session startup when pg_attribute is very large (Tom Lane)</p>\n<p>If pg_attribute exceeds one-fourth of shared_buffers, cache rebuilding code that is sometimes needed during session start would trigger the synchronized-scan logic, causing it to take many times longer than normal. The problem was particularly acute if many new sessions were starting at once.</p>", "text": "Fix slow session startup when pg_attribute is very large (Tom Lane) If pg_attribute exceeds one-fourth of shared_buffers, cache rebuilding code that is sometimes needed during session start would trigger the synchronized-scan logic, causing it to take many times longer than normal. The problem was particularly acute if many new sessions were starting at once.", "title": "Fix slow session startup when pg_attribute is very large", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "f291eb34a8053b272fe285d3cb88a3e84de3ed5e0d6a59c98714e1d708ded0e3", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix slow session startup when pg_attribute is very large (Tom Lane) If pg_attribute exceeds one-fourth of shared_buffers, cache rebuilding code that is sometimes needed during session start would trigger the synchronized-scan logic, causing it to take many times longer than normal. The problem was particularly acute if many new sessions were starting at once.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/011", "db_id": "3067d257f33b50d90891579b75bb82b1", "patch_ids": [], "statement_hash": "0a7f507b1407c40499c963726716788f68d57c16325ddd52739c2610a0f7af0b", "relations": [{"rule": 2, "type": "equivalent", "target": "8e30e72a2405bcb8cb42f78c56812986", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0a7f507b1407c40499c963726716788f68d57c16325ddd52739c2610a0f7af0b"}}], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "8e30e72a2405bcb8cb42f78c56812986", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Fix slow session startup when pg_attribute is very large", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0a7f507b1407c40499c963726716788f68d57c16325ddd52739c2610a0f7af0b"}, "url": "/docs/compare/?release=9.0.8#9.0.8-f53fd1ab1aae3c28", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-72f74d32c0ae6c23", "cves": [], "html": "<p>Ensure sequential scans check for query cancel reasonably often (Merlin Moncure)</p>\n<p>A scan encountering many consecutive pages that contain no live tuples would not respond to interrupts meanwhile.</p>", "text": "Ensure sequential scans check for query cancel reasonably often (Merlin Moncure) A scan encountering many consecutive pages that contain no live tuples would not respond to interrupts meanwhile.", "title": "Ensure sequential scans check for query cancel reasonably often", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "48f014989507f574f50e0319eea1787d248a8c0acb89c83bd8cb242202121d25", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Ensure sequential scans check for query cancel reasonably often (Merlin Moncure) A scan encountering many consecutive pages that contain no live tuples would not respond to interrupts meanwhile.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/012", "db_id": "bd6436e92343187447f9bd25be2155e3", "patch_ids": [], "statement_hash": "32c4ebad7086dd8ff0fb67a82b5d81e2020c0da9c949bd90c1da163f46f80891", "relations": [{"rule": 2, "type": "equivalent", "target": "1adeba20bc22f27bf9f5441c733c00fe", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "32c4ebad7086dd8ff0fb67a82b5d81e2020c0da9c949bd90c1da163f46f80891"}}], "version": "9.1.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "1adeba20bc22f27bf9f5441c733c00fe", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Ensure sequential scans check for query cancel reasonably often", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "32c4ebad7086dd8ff0fb67a82b5d81e2020c0da9c949bd90c1da163f46f80891"}, "url": "/docs/compare/?release=9.0.8#9.0.8-72f74d32c0ae6c23", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-6f29443ce19348de", "cves": [], "html": "<p>Ensure the Windows implementation of <code>PGSemaphoreLock()</code> clears ImmediateInterruptOK before returning (Tom Lane)</p>\n<p>This oversight meant that a query-cancel interrupt received later in the same query could be accepted at an unsafe time, with unpredictable but not good consequences.</p>", "text": "Ensure the Windows implementation of PGSemaphoreLock() clears ImmediateInterruptOK before returning (Tom Lane) This oversight meant that a query-cancel interrupt received later in the same query could be accepted at an unsafe time, with unpredictable but not good consequences.", "title": "Ensure the Windows implementation of PGSemaphoreLock() clears ImmediateInterruptOK before returning", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "0515df05c357e80f06528ed45102c74a7345c0c78656281ee72ab3a2948a8f1b", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Ensure the Windows implementation of PGSemaphoreLock() clears ImmediateInterruptOK before returning (Tom Lane) This oversight meant that a query-cancel interrupt received later in the same query could be accepted at an unsafe time, with unpredictable but not good consequences.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/013", "db_id": "db01691604fa124e6f972589c146118e", "patch_ids": [], "statement_hash": "475baa30bf05e7068b9227b884192b9296ffb209bb282f734ab8b4f1bad76d95", "relations": [{"rule": 2, "type": "equivalent", "target": "621e08ded86dac462543a1b66528aedf", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "475baa30bf05e7068b9227b884192b9296ffb209bb282f734ab8b4f1bad76d95"}}], "version": "9.1.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "621e08ded86dac462543a1b66528aedf", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Ensure the Windows implementation of PGSemaphoreLock() clears ImmediateInterruptOK before returning", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "475baa30bf05e7068b9227b884192b9296ffb209bb282f734ab8b4f1bad76d95"}, "url": "/docs/compare/?release=9.0.8#9.0.8-6f29443ce19348de", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-f425228a4f106310", "cves": [], "html": "<p>Show whole-row variables safely when printing views or rules (Abbas Butt, Tom Lane)</p>\n<p>Corner cases involving ambiguous names (that is, the name could be either a table or column name of the query) were printed in an ambiguous way, risking that the view or rule would be interpreted differently after dump and reload. Avoid the ambiguous case by attaching a no-op cast.</p>", "text": "Show whole-row variables safely when printing views or rules (Abbas Butt, Tom Lane) Corner cases involving ambiguous names (that is, the name could be either a table or column name of the query) were printed in an ambiguous way, risking that the view or rule would be interpreted differently after dump and reload. Avoid the ambiguous case by attaching a no-op cast.", "title": "Show whole-row variables safely when printing views or rules", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "3e74b472e7c0b99515ebc321a5a5838a351a6c867b3a9ba9b84464243793b519", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Show whole-row variables safely when printing views or rules (Abbas Butt, Tom Lane) Corner cases involving ambiguous names (that is, the name could be either a table or column name of the query) were printed in an ambiguous way, risking that the view or rule would be interpreted differently after dump and reload. Avoid the ambiguous case by attaching a no-op cast.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/014", "db_id": "4c8e9274b22ace290b1f223746068ee3", "patch_ids": [], "statement_hash": "b08bd7aedbfa17f2c0ae9439b638e1f95a9356d905183fa9049d8bf16d7b6dcb", "relations": [{"rule": 2, "type": "equivalent", "target": "046268baafb6eb208a178d325c4f509f", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b08bd7aedbfa17f2c0ae9439b638e1f95a9356d905183fa9049d8bf16d7b6dcb"}}], "version": "9.1.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "046268baafb6eb208a178d325c4f509f", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Show whole-row variables safely when printing views or rules", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "b08bd7aedbfa17f2c0ae9439b638e1f95a9356d905183fa9049d8bf16d7b6dcb"}, "url": "/docs/compare/?release=9.0.8#9.0.8-f425228a4f106310", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-6383db2c20607036", "cves": [], "html": "<p>Fix COPY FROM to properly handle null marker strings that correspond to invalid encoding (Tom Lane)</p>\n<p>A null marker string such as E'\\\\0' should work, and did work in the past, but the case got broken in 8.4.</p>", "text": "Fix COPY FROM to properly handle null marker strings that correspond to invalid encoding (Tom Lane) A null marker string such as E'\\\\0' should work, and did work in the past, but the case got broken in 8.4.", "title": "Fix COPY FROM to properly handle null marker strings that correspond to invalid encoding", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "cae92798a320025c41a60c0b6591a20eb89652cf2db5351718a0341c03f56614", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix COPY FROM to properly handle null marker strings that correspond to invalid encoding (Tom Lane) A null marker string such as E'\\\\0' should work, and did work in the past, but the case got broken in 8.4.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/015", "db_id": "b5da3801ab6a6f88ccbc5d535a02965a", "patch_ids": [], "statement_hash": "e95a56110050751e2be814ee1968520c2f1bdb1d487ab0ed47dfa2672f30fb83", "relations": [{"rule": 2, "type": "equivalent", "target": "2a4117a0b88da00252fd221e090f5545", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e95a56110050751e2be814ee1968520c2f1bdb1d487ab0ed47dfa2672f30fb83"}}], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "2a4117a0b88da00252fd221e090f5545", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Fix COPY FROM to properly handle null marker strings that correspond to invalid encoding", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "e95a56110050751e2be814ee1968520c2f1bdb1d487ab0ed47dfa2672f30fb83"}, "url": "/docs/compare/?release=9.0.8#9.0.8-6383db2c20607036", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-08592c4dfd37486b", "cves": [], "html": "<p>Fix EXPLAIN VERBOSE for writable CTEs containing RETURNING clauses (Tom Lane)</p>", "text": "Fix EXPLAIN VERBOSE for writable CTEs containing RETURNING clauses (Tom Lane)", "title": "Fix EXPLAIN VERBOSE for writable CTEs containing RETURNING clauses", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "564c50f39c057642819a7912f781fdbc912050c0b224c7bfade74fbd6055230f", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix EXPLAIN VERBOSE for writable CTEs containing RETURNING clauses (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/016", "db_id": "fc051691b52cddae39d4d8c157aaa728", "patch_ids": [], "statement_hash": "ddcf47296fbc3c1ed3a57ffe85c117e3bf9fd55ae31d8333dcc3dfdf14260a3c", "relations": [], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.1.4-68f3444812c98766", "cves": [], "html": "<p>Fix PREPARE TRANSACTION to work correctly in the presence of advisory locks (Tom Lane)</p>\n<p>Historically, PREPARE TRANSACTION has simply ignored any session-level advisory locks the session holds, but this case was accidentally broken in 9.1.</p>", "text": "Fix PREPARE TRANSACTION to work correctly in the presence of advisory locks (Tom Lane) Historically, PREPARE TRANSACTION has simply ignored any session-level advisory locks the session holds, but this case was accidentally broken in 9.1.", "title": "Fix PREPARE TRANSACTION to work correctly in the presence of advisory locks", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "a5ad4561250e96eb25db4447e37e6847054a938ca67c64a15a1cb0ca98ced1d8", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix PREPARE TRANSACTION to work correctly in the presence of advisory locks (Tom Lane) Historically, PREPARE TRANSACTION has simply ignored any session-level advisory locks the session holds, but this case was accidentally broken in 9.1.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/017", "db_id": "d2ac23659db22528c2334253d495cea4", "patch_ids": [], "statement_hash": "bbdd4c20d59d087b915ac9b4e5450dfa34448620f33ed397b657edcca0ff255f", "relations": [], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.1.4-09bb70b516cc8dfe", "cves": [], "html": "<p>Fix truncation of unlogged tables (Robert Haas)</p>", "text": "Fix truncation of unlogged tables (Robert Haas)", "title": "Fix truncation of unlogged tables", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "21d0fbcb273a5da09b73bc0639c36814bfa5f725f7570384a9975cb3626a27d7", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix truncation of unlogged tables (Robert Haas)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/018", "db_id": "17ed1c76e5151bd0bba763ca52c8ecd6", "patch_ids": [], "statement_hash": "ff4154f593a7b044f91bd2d9ef7e5da2c6f9df095e75854b966579f7dcf1e8b4", "relations": [], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.1.4-39abd590d982f13d", "cves": [], "html": "<p>Ignore missing schemas during non-interactive assignments of search_path (Tom Lane)</p>\n<p>This re-aligns 9.1's behavior with that of older branches. Previously 9.1 would throw an error for nonexistent schemas mentioned in search_path settings obtained from places such as ALTER DATABASE SET.</p>", "text": "Ignore missing schemas during non-interactive assignments of search_path (Tom Lane) This re-aligns 9.1's behavior with that of older branches. Previously 9.1 would throw an error for nonexistent schemas mentioned in search_path settings obtained from places such as ALTER DATABASE SET.", "title": "Ignore missing schemas during non-interactive assignments of search_path", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "91f1af1d48033ea678df9b48137aee24885eaefdedfa0a8d3f8ff19fc38248f3", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Ignore missing schemas during non-interactive assignments of search_path (Tom Lane) This re-aligns 9.1's behavior with that of older branches. Previously 9.1 would throw an error for nonexistent schemas mentioned in search_path settings obtained from places such as ALTER DATABASE SET.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/019", "db_id": "4d9cf0df443d441a54b965139c833176", "patch_ids": [], "statement_hash": "04eff021561bcdc2ea899b1fafb87fa0efe3d77c8b9954985f5ff4050c390e23", "relations": [], "version": "9.1.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.1.4-dc5cc8d20ac2c7f0", "cves": [], "html": "<p>Fix bugs with temporary or transient tables used in extension scripts (Tom Lane)</p>\n<p>This includes cases such as a rewriting ALTER TABLE within an extension update script, since that uses a transient table behind the scenes.</p>", "text": "Fix bugs with temporary or transient tables used in extension scripts (Tom Lane) This includes cases such as a rewriting ALTER TABLE within an extension update script, since that uses a transient table behind the scenes.", "title": "Fix bugs with temporary or transient tables used in extension scripts", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "b98858cb58a37497d41c9f612bec77ae2cc764d97e106cd534a45e7f0eded109", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix bugs with temporary or transient tables used in extension scripts (Tom Lane) This includes cases such as a rewriting ALTER TABLE within an extension update script, since that uses a transient table behind the scenes.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/020", "db_id": "444893c2ef670dcf05e3fcdb06c70a28", "patch_ids": [], "statement_hash": "20e47b8235c2f13608ca7205e54f43222c4f6e12ed1c8fea06e062a3f3ca0a94", "relations": [], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.1.4-11ce81bfd73f79af", "cves": [], "html": "<p>Ensure autovacuum worker processes perform stack depth checking properly (Heikki Linnakangas)</p>\n<p>Previously, infinite recursion in a function invoked by auto-ANALYZE could crash worker processes.</p>", "text": "Ensure autovacuum worker processes perform stack depth checking properly (Heikki Linnakangas) Previously, infinite recursion in a function invoked by auto-ANALYZE could crash worker processes.", "title": "Ensure autovacuum worker processes perform stack depth checking properly", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "b794dd5ddc8be160f08b469b5728c89827fbc41451390fb278c4a23161abce8e", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Ensure autovacuum worker processes perform stack depth checking properly (Heikki Linnakangas) Previously, infinite recursion in a function invoked by auto-ANALYZE could crash worker processes.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/021", "db_id": "5163f9da5a826eaa7bbcf89a43982fec", "patch_ids": [], "statement_hash": "0f52396aa707d6b843a52a7c887bbdde0c730d2fec6c70552b6a7c795241c07e", "relations": [{"rule": 2, "type": "equivalent", "target": "36167ec72ac13f36f65ffe51dfc10ef8", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0f52396aa707d6b843a52a7c887bbdde0c730d2fec6c70552b6a7c795241c07e"}}], "version": "9.1.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "36167ec72ac13f36f65ffe51dfc10ef8", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Ensure autovacuum worker processes perform stack depth checking properly", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "0f52396aa707d6b843a52a7c887bbdde0c730d2fec6c70552b6a7c795241c07e"}, "url": "/docs/compare/?release=9.0.8#9.0.8-11ce81bfd73f79af", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-c567676d308121d8", "cves": [], "html": "<p>Fix logging collector to not lose log coherency under high load (Andrew Dunstan)</p>\n<p>The collector previously could fail to reassemble large messages if it got too busy.</p>", "text": "Fix logging collector to not lose log coherency under high load (Andrew Dunstan) The collector previously could fail to reassemble large messages if it got too busy.", "title": "Fix logging collector to not lose log coherency under high load", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "92a514017fd659be3e62a4e84ff9ac785df62dba2904561c23526e0231724645", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix logging collector to not lose log coherency under high load (Andrew Dunstan) The collector previously could fail to reassemble large messages if it got too busy.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/022", "db_id": "b153bdac2cdae4cf4c2db4419094a37c", "patch_ids": [], "statement_hash": "a8f1eaf60d9cbec4f01617787fed23b1a7342ea79b3c4a281c02d49023cafb0e", "relations": [{"rule": 2, "type": "equivalent", "target": "7bf5d3e7f3ea95a754f5c5a79f806a3b", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a8f1eaf60d9cbec4f01617787fed23b1a7342ea79b3c4a281c02d49023cafb0e"}}], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "7bf5d3e7f3ea95a754f5c5a79f806a3b", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Fix logging collector to not lose log coherency under high load", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "a8f1eaf60d9cbec4f01617787fed23b1a7342ea79b3c4a281c02d49023cafb0e"}, "url": "/docs/compare/?release=9.0.8#9.0.8-c567676d308121d8", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-d392dac1daa79a66", "cves": [], "html": "<p>Fix logging collector to ensure it will restart file rotation after receiving <span>SIGHUP</span> (Tom Lane)</p>", "text": "Fix logging collector to ensure it will restart file rotation after receiving SIGHUP (Tom Lane)", "title": "Fix logging collector to ensure it will restart file rotation after receiving SIGHUP", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "ab1071859ba97152c11f5b6a38b747a6de1aab06302f74487e414a0272650715", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix logging collector to ensure it will restart file rotation after receiving SIGHUP (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/023", "db_id": "874b3ea93908f9ba5c8325180087db06", "patch_ids": [], "statement_hash": "6fac7f36ad3dde95d58b318c8f49bfa7bae648666592c387f0e27dca94ab7c6b", "relations": [{"rule": 2, "type": "equivalent", "target": "848cae60cce40e40e5f5d0f271a779af", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6fac7f36ad3dde95d58b318c8f49bfa7bae648666592c387f0e27dca94ab7c6b"}}], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "848cae60cce40e40e5f5d0f271a779af", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Fix logging collector to ensure it will restart file rotation after receiving SIGHUP", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "6fac7f36ad3dde95d58b318c8f49bfa7bae648666592c387f0e27dca94ab7c6b"}, "url": "/docs/compare/?release=9.0.8#9.0.8-d392dac1daa79a66", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-a65cb282138cf414", "cves": [], "html": "<p>Fix <span>\"too many LWLocks taken\"</span> failure in GiST indexes (Heikki Linnakangas)</p>", "text": "Fix \"too many LWLocks taken\" failure in GiST indexes (Heikki Linnakangas)", "title": "Fix \"too many LWLocks taken\" failure in GiST indexes", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "bce2dbabcd752202cdc66dac45e711d262cee9b0f10df206978f9e1da90de45c", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix too many LWLocks taken failure in GiST indexes (Heikki Linnakangas)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/024", "db_id": "bfca532ae65e5fb44e4753e3c87e22a3", "patch_ids": [], "statement_hash": "b5924c66708ab079e3ce312baafe6c1ba257ab8925a5e3034564186db552b699", "relations": [], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.1.4-2babc0fb7e7d1f51", "cves": [], "html": "<p>Fix WAL replay logic for GIN indexes to not fail if the index was subsequently dropped (Tom Lane)</p>", "text": "Fix WAL replay logic for GIN indexes to not fail if the index was subsequently dropped (Tom Lane)", "title": "Fix WAL replay logic for GIN indexes to not fail if the index was subsequently dropped", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "9c968194c67f0d8782fce65804003937935d85c5c96170c7279f172e067c889e", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix WAL replay logic for GIN indexes to not fail if the index was subsequently dropped (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/025", "db_id": "78130b6a8a0ac77de9d35f9a208a5366", "patch_ids": [], "statement_hash": "3c20319e0fbcbc1ecbf8cc8cc2c9c0d70f21c12ade0d88c48cc5722447792d84", "relations": [{"rule": 2, "type": "equivalent", "target": "f31f64f9c579661cdacb2fbfa7f24af1", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3c20319e0fbcbc1ecbf8cc8cc2c9c0d70f21c12ade0d88c48cc5722447792d84"}}], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "f31f64f9c579661cdacb2fbfa7f24af1", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Fix WAL replay logic for GIN indexes to not fail if the index was subsequently dropped", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3c20319e0fbcbc1ecbf8cc8cc2c9c0d70f21c12ade0d88c48cc5722447792d84"}, "url": "/docs/compare/?release=9.0.8#9.0.8-2babc0fb7e7d1f51", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-3f3ccc00745779f6", "cves": [], "html": "<p>Correctly detect SSI conflicts of prepared transactions after a crash (Dan Ports)</p>", "text": "Correctly detect SSI conflicts of prepared transactions after a crash (Dan Ports)", "title": "Correctly detect SSI conflicts of prepared transactions after a crash", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "9d9db73d779ea54ad581e6a62888062cb3c74a571b20b639523775e2e70a4e70", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Correctly detect SSI conflicts of prepared transactions after a crash (Dan Ports)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/026", "db_id": "0204f739ff3a41e1aaf90f0876cc7490", "patch_ids": [], "statement_hash": "3b2c31053ef2d6e0f3ba5d8ecbcae1f20218069ce273fb7dc7ac589f85a5e4f3", "relations": [], "version": "9.1.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.1.4-53d2b1991aee0884", "cves": [], "html": "<p>Avoid synchronous replication delay when committing a transaction that only modified temporary tables (Heikki Linnakangas)</p>\n<p>In such a case the transaction's commit record need not be flushed to standby servers, but some of the code didn't know that and waited for it to happen anyway.</p>", "text": "Avoid synchronous replication delay when committing a transaction that only modified temporary tables (Heikki Linnakangas) In such a case the transaction's commit record need not be flushed to standby servers, but some of the code didn't know that and waited for it to happen anyway.", "title": "Avoid synchronous replication delay when committing a transaction that only modified temporary tables", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "04540e5b970745fed2f4a52e2dc7d76548ef3780ed75e6aa5f7a1312727d7fc0", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Avoid synchronous replication delay when committing a transaction that only modified temporary tables (Heikki Linnakangas) In such a case the transaction's commit record need not be flushed to standby servers, but some of the code didn't know that and waited for it to happen anyway.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/027", "db_id": "0f900e1a68944cf03b5da0315e43da18", "patch_ids": [], "statement_hash": "ec796da42ceedb016930d033b7f92b520f8aa49e4a3c793ce0276c81a3006c38", "relations": [], "version": "9.1.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.1.4-60abbfb449c73eba", "cves": [], "html": "<p>Fix error handling in <span>pg_basebackup</span> (Thomas Ogrisegg, Fujii Masao)</p>", "text": "Fix error handling in pg_basebackup (Thomas Ogrisegg, Fujii Masao)", "title": "Fix error handling in pg_basebackup", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "64bb746e9d6d5a7485c790cda4bd8e58484bf9d1af415f9ff505bc37a01912de", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix error handling in pg_basebackup (Thomas Ogrisegg, Fujii Masao)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/028", "db_id": "f5210d623185d388d4aee4c64c05d5c0", "patch_ids": [], "statement_hash": "69b9cb9e94069d0d8223d5597e58bdc44b4016b0eaf057be999fd2c3fa014ad0", "relations": [], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.1.4-511725f9b962d8ae", "cves": [], "html": "<p>Fix <span>walsender</span> to not go into a busy loop if connection is terminated (Fujii Masao)</p>", "text": "Fix walsender to not go into a busy loop if connection is terminated (Fujii Masao)", "title": "Fix walsender to not go into a busy loop if connection is terminated", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "dff005265ce8dc8ed714c48f8f616e291ca76588a1194d2ed0fd2d8883f71961", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix walsender to not go into a busy loop if connection is terminated (Fujii Masao)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/029", "db_id": "5653f675daab797d5b93ec8ad9a3eaac", "patch_ids": [], "statement_hash": "34cb84ea65145e471c71da8a1cadcf48334f91e9aa9c1c23934b12ce41c4a2ca", "relations": [], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.1.4-9ad194a1cd8f8f1f", "cves": [], "html": "<p>Fix memory leak in PL/pgSQL's RETURN NEXT command (Joe Conway)</p>", "text": "Fix memory leak in PL/pgSQL's RETURN NEXT command (Joe Conway)", "title": "Fix memory leak in PL/pgSQL's RETURN NEXT command", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "d6994eee9cd96838028f24df93e4f13f0c4a1e76dc3d347dee298abb934442e1", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix memory leak in PL/pgSQL's RETURN NEXT command (Joe Conway)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/030", "db_id": "ae5ee9f16eeeec833b76b57a9a9ce715", "patch_ids": [], "statement_hash": "ff4f48f8b2ccc6064b6ea5b63e49627a4fff4828e77ab95c5cb88d7917cd3e05", "relations": [{"rule": 2, "type": "equivalent", "target": "540f10a54d1bf2813fecd40209bc5457", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ff4f48f8b2ccc6064b6ea5b63e49627a4fff4828e77ab95c5cb88d7917cd3e05"}}], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "540f10a54d1bf2813fecd40209bc5457", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Fix memory leak in PL/pgSQL's RETURN NEXT command", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ff4f48f8b2ccc6064b6ea5b63e49627a4fff4828e77ab95c5cb88d7917cd3e05"}, "url": "/docs/compare/?release=9.0.8#9.0.8-9ad194a1cd8f8f1f", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-8c00a3297041a76f", "cves": [], "html": "<p>Fix PL/pgSQL's GET DIAGNOSTICS command when the target is the function's first variable (Tom Lane)</p>", "text": "Fix PL/pgSQL's GET DIAGNOSTICS command when the target is the function's first variable (Tom Lane)", "title": "Fix PL/pgSQL's GET DIAGNOSTICS command when the target is the function's first variable", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "c45f1bfd877d53a249b8e330a739f5cf5ac77d73651702b41c94463e1223fd18", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix PL/pgSQL's GET DIAGNOSTICS command when the target is the function's first variable (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/031", "db_id": "87472d649a176ede91baaebedd0b831d", "patch_ids": [], "statement_hash": "ac74968daa2b65e50dc6e0d049d58e3be94549e24bc4bf9939ab692a8b4b4222", "relations": [{"rule": 2, "type": "equivalent", "target": "7f0bc33006563175bc5414d7816dcf96", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ac74968daa2b65e50dc6e0d049d58e3be94549e24bc4bf9939ab692a8b4b4222"}}], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "7f0bc33006563175bc5414d7816dcf96", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Fix PL/pgSQL's GET DIAGNOSTICS command when the target is the function's first variable", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ac74968daa2b65e50dc6e0d049d58e3be94549e24bc4bf9939ab692a8b4b4222"}, "url": "/docs/compare/?release=9.0.8#9.0.8-8c00a3297041a76f", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-10b0e9c72b009016", "cves": [], "html": "<p>Ensure that PL/Perl package-qualifies the _TD variable (Alex Hunsaker)</p>\n<p>This bug caused trigger invocations to fail when they are nested within a function invocation that changes the current package.</p>", "text": "Ensure that PL/Perl package-qualifies the _TD variable (Alex Hunsaker) This bug caused trigger invocations to fail when they are nested within a function invocation that changes the current package.", "title": "Ensure that PL/Perl package-qualifies the _TD variable", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "d443707d1971df9f1b49d09fe0ac7829dbcf270fbb13d2d687d72e49f828958f", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Ensure that PL/Perl package-qualifies the _TD variable (Alex Hunsaker) This bug caused trigger invocations to fail when they are nested within a function invocation that changes the current package.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/032", "db_id": "e39cefe06dc82100b98cca42c83390be", "patch_ids": [], "statement_hash": "e1346acfbe992fb05cc60071d12466af05b5cbf97e1f40bfe95a2339ed411d12", "relations": [], "version": "9.1.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.1.4-2b230d3ad26a5181", "cves": [], "html": "<p>Fix PL/Python functions returning composite types to accept a string for their result value (Jan Urbanski)</p>\n<p>This case was accidentally broken by the 9.1 additions to allow a composite result value to be supplied in other formats, such as dictionaries.</p>", "text": "Fix PL/Python functions returning composite types to accept a string for their result value (Jan Urbanski) This case was accidentally broken by the 9.1 additions to allow a composite result value to be supplied in other formats, such as dictionaries.", "title": "Fix PL/Python functions returning composite types to accept a string for their result value", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "b4e1682ff6ae2eda1408f4021bc843edee21f02917eedc4fca0a1b16b620e2cd", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix PL/Python functions returning composite types to accept a string for their result value (Jan Urbanski) This case was accidentally broken by the 9.1 additions to allow a composite result value to be supplied in other formats, such as dictionaries.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/033", "db_id": "401ad4687a0cbc46db7b34f1555502c3", "patch_ids": [], "statement_hash": "dc4e78883e4e56221d3f737b816745e518e023b7d501b419b7cd9a92f5f71aa8", "relations": [], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.1.4-47290352b0f24163", "cves": [], "html": "<p>Fix potential access off the end of memory in <span>psql</span>'s expanded display (\\x) mode (Peter Eisentraut)</p>", "text": "Fix potential access off the end of memory in psql's expanded display (\\x) mode (Peter Eisentraut)", "title": "Fix potential access off the end of memory in psql's expanded display (\\x) mode", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "589cf070918bbc41aa76c74fc9ab68b3c5b10e1f95bba059b7ebf1eae17d599f", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix potential access off the end of memory in psql's expanded display (\\x) mode (Peter Eisentraut)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/034", "db_id": "03d3ce536e76a31bdcc0cc050132798f", "patch_ids": [], "statement_hash": "cd3f8f30a929dcb62c007262f8144eb4ff9da0bb6418fc7c9f05188a025e2d00", "relations": [{"rule": 2, "type": "equivalent", "target": "73ebf284c9b01ca4b21dd84fb622e363", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cd3f8f30a929dcb62c007262f8144eb4ff9da0bb6418fc7c9f05188a025e2d00"}}], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "73ebf284c9b01ca4b21dd84fb622e363", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Fix potential access off the end of memory in psql's expanded display (\\x) mode", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cd3f8f30a929dcb62c007262f8144eb4ff9da0bb6418fc7c9f05188a025e2d00"}, "url": "/docs/compare/?release=9.0.8#9.0.8-47290352b0f24163", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-1e5e0cef30b15ef7", "cves": [], "html": "<p>Fix several performance problems in <span>pg_dump</span> when the database contains many objects (Jeff Janes, Tom Lane)</p>\n<p><span>pg_dump</span> could get very slow if the database contained many schemas, or if many objects are in dependency loops, or if there are many owned sequences.</p>", "text": "Fix several performance problems in pg_dump when the database contains many objects (Jeff Janes, Tom Lane) pg_dump could get very slow if the database contained many schemas, or if many objects are in dependency loops, or if there are many owned sequences.", "title": "Fix several performance problems in pg_dump when the database contains many objects", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "0b7b863e6ad07da1a0c1b29b0e6399b9cbafefcbfb400ad6e854033bf55f1521", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix several performance problems in pg_dump when the database contains many objects (Jeff Janes, Tom Lane) pg_dump could get very slow if the database contained many schemas, or if many objects are in dependency loops, or if there are many owned sequences.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/035", "db_id": "e3be79fdcc3d8276f9c34911da1b31e1", "patch_ids": [], "statement_hash": "ba9de3cb96597ea955a9878da3161da87dfdaf13e916d135578cb969c0f0a402", "relations": [{"rule": 2, "type": "equivalent", "target": "5b97b955dcbbdace43be1ac7e00eca55", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ba9de3cb96597ea955a9878da3161da87dfdaf13e916d135578cb969c0f0a402"}}], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "5b97b955dcbbdace43be1ac7e00eca55", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Fix several performance problems in pg_dump when the database contains many objects", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "ba9de3cb96597ea955a9878da3161da87dfdaf13e916d135578cb969c0f0a402"}, "url": "/docs/compare/?release=9.0.8#9.0.8-1e5e0cef30b15ef7", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-2da2f9b4635a1d9d", "cves": [], "html": "<p>Fix memory and file descriptor leaks in <span>pg_restore</span> when reading a directory-format archive (Peter Eisentraut)</p>", "text": "Fix memory and file descriptor leaks in pg_restore when reading a directory-format archive (Peter Eisentraut)", "title": "Fix memory and file descriptor leaks in pg_restore when reading a directory-format archive", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "3ca3b182ffd49bd4cdb2a4b5b9f88023e50cf8f053a76e3c554045e8eb7ffa72", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix memory and file descriptor leaks in pg_restore when reading a directory-format archive (Peter Eisentraut)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/036", "db_id": "3ae5179e03566c2502475f33fd78f19a", "patch_ids": [], "statement_hash": "9061ae73e6da88f904b1e39682172de0eb049d04e541bc251a6b0aac632d64da", "relations": [], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": []}, {"id": "9.1.4-7e4596d72a1be367", "cves": [], "html": "<p>Fix <span>pg_upgrade</span> for the case that a database stored in a non-default tablespace contains a table in the cluster's default tablespace (Bruce Momjian)</p>", "text": "Fix pg_upgrade for the case that a database stored in a non-default tablespace contains a table in the cluster's default tablespace (Bruce Momjian)", "title": "Fix pg_upgrade for the case that a database stored in a non-default tablespace contains a table in the cluster's default tablespace", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "3a5130d2f40e09ab624cebd62dfdebfddab087f3853ddfbded5155986a620e56", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix pg_upgrade for the case that a database stored in a non-default tablespace contains a table in the cluster's default tablespace (Bruce Momjian)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/037", "db_id": "c7ed7794cd7dd70f465e312ef9cf1d26", "patch_ids": [], "statement_hash": "8aad3c1d6704206ddf8218a7c0e100bc2566e7363ba0fcc9658c1870879f552d", "relations": [{"rule": 2, "type": "equivalent", "target": "01705f9cce568b7bae7577ad54fe41ee", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8aad3c1d6704206ddf8218a7c0e100bc2566e7363ba0fcc9658c1870879f552d"}}], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "01705f9cce568b7bae7577ad54fe41ee", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Fix pg_upgrade for the case that a database stored in a non-default tablespace contains a table in the cluster's default tablespace", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "8aad3c1d6704206ddf8218a7c0e100bc2566e7363ba0fcc9658c1870879f552d"}, "url": "/docs/compare/?release=9.0.8#9.0.8-7e4596d72a1be367", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-43e42056abae80e3", "cves": [], "html": "<p>In <span>ecpg</span>, fix rare memory leaks and possible overwrite of one byte after the sqlca_t structure (Peter Eisentraut)</p>", "text": "In ecpg, fix rare memory leaks and possible overwrite of one byte after the sqlca_t structure (Peter Eisentraut)", "title": "In ecpg, fix rare memory leaks and possible overwrite of one byte after the sqlca_t structure", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "6c439c4f1d44043b85741512b28bdd168696c05a022adc48627638aef88e23ff", "section_path": ["Changes"], "commit_groups": [], "identity_text": "In ecpg, fix rare memory leaks and possible overwrite of one byte after the sqlca_t structure (Peter Eisentraut)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/038", "db_id": "0e0311bb9e47ab1a5317107abd83681e", "patch_ids": [], "statement_hash": "cd0d7d48c81eb93b5adce5ca4e2079fcd7d857236d49b52474fb34287e7501f0", "relations": [{"rule": 2, "type": "equivalent", "target": "968b61bf5aa38dbfd77252a6036bdf7e", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cd0d7d48c81eb93b5adce5ca4e2079fcd7d857236d49b52474fb34287e7501f0"}}], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "968b61bf5aa38dbfd77252a6036bdf7e", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "In ecpg, fix rare memory leaks and possible overwrite of one byte after the sqlca_t structure", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "cd0d7d48c81eb93b5adce5ca4e2079fcd7d857236d49b52474fb34287e7501f0"}, "url": "/docs/compare/?release=9.0.8#9.0.8-43e42056abae80e3", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-113b51ee244d3d97", "cves": [], "html": "<p>Fix contrib/dblink's <code>dblink_exec()</code> to not leak temporary database connections upon error (Tom Lane)</p>", "text": "Fix contrib/dblink's dblink_exec() to not leak temporary database connections upon error (Tom Lane)", "title": "Fix contrib/dblink's dblink_exec() to not leak temporary database connections upon error", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "a470ae866f4e01750447f1fdf06ef55889b7db57a610b08252029e543c795568", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix contrib/dblink's dblink_exec() to not leak temporary database connections upon error (Tom Lane)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/039", "db_id": "4a40399bde68729941fab650eecad469", "patch_ids": [], "statement_hash": "162444061d4bb632cb068bb4a6f0205104aeb64fea3c3c2a7ac8203c344b958e", "relations": [{"rule": 2, "type": "equivalent", "target": "0a4347750fa1fc8bdc0b002851db44ff", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "162444061d4bb632cb068bb4a6f0205104aeb64fea3c3c2a7ac8203c344b958e"}}], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "0a4347750fa1fc8bdc0b002851db44ff", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Fix contrib/dblink's dblink_exec() to not leak temporary database connections upon error", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "162444061d4bb632cb068bb4a6f0205104aeb64fea3c3c2a7ac8203c344b958e"}, "url": "/docs/compare/?release=9.0.8#9.0.8-113b51ee244d3d97", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-7a01fa3cd1f4dbc2", "cves": [], "html": "<p>Fix contrib/dblink to report the correct connection name in error messages (Kyotaro Horiguchi)</p>", "text": "Fix contrib/dblink to report the correct connection name in error messages (Kyotaro Horiguchi)", "title": "Fix contrib/dblink to report the correct connection name in error messages", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "b9663f734e81c9170f9ba6ef52e2d1004f33b98d2a59f9df1f6e205f5ab8b572", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix contrib/dblink to report the correct connection name in error messages (Kyotaro Horiguchi)", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/040", "db_id": "8f6f7773f98b1d3398f9747ac43e8ead", "patch_ids": [], "statement_hash": "73885a3938aa56d22a54a4a7b9f4738ae3ca9e973105cdf6dddb2d188782ee30", "relations": [{"rule": 2, "type": "equivalent", "target": "debb644b8744c4750b6f6786febb0987", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "73885a3938aa56d22a54a4a7b9f4738ae3ca9e973105cdf6dddb2d188782ee30"}}], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "debb644b8744c4750b6f6786febb0987", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Fix contrib/dblink to report the correct connection name in error messages", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "73885a3938aa56d22a54a4a7b9f4738ae3ca9e973105cdf6dddb2d188782ee30"}, "url": "/docs/compare/?release=9.0.8#9.0.8-7a01fa3cd1f4dbc2", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-5528da127cb2e178", "cves": [], "html": "<p>Fix contrib/vacuumlo to use multiple transactions when dropping many large objects (Tim Lewis, Robert Haas, Tom Lane)</p>\n<p>This change avoids exceeding max_locks_per_transaction when many objects need to be dropped. The behavior can be adjusted with the new -l (limit) option.</p>", "text": "Fix contrib/vacuumlo to use multiple transactions when dropping many large objects (Tim Lewis, Robert Haas, Tom Lane) This change avoids exceeding max_locks_per_transaction when many objects need to be dropped. The behavior can be adjusted with the new -l (limit) option.", "title": "Fix contrib/vacuumlo to use multiple transactions when dropping many large objects", "commits": [], "section": "Changes", "category": "bugfix", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "b4a2df1eb0447802de26c326832d9843c2242374b13f375b386e450227910397", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Fix contrib/vacuumlo to use multiple transactions when dropping many large objects (Tim Lewis, Robert Haas, Tom Lane) This change avoids exceeding max_locks_per_transaction when many objects need to be dropped. The behavior can be adjusted with the new -l (limit) option.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/041", "db_id": "041593791e94dea325e10e027f7ff0c2", "patch_ids": [], "statement_hash": "fa38809048291f61b64535c94125b01f22bbe03881cae84b7aa8f3448aa98433", "relations": [{"rule": 2, "type": "equivalent", "target": "9e65fef5790e9fb2e40776c0dce94ba1", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "fa38809048291f61b64535c94125b01f22bbe03881cae84b7aa8f3448aa98433"}}], "version": "9.1.4", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": [{"db_id": "9e65fef5790e9fb2e40776c0dce94ba1", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Fix contrib/vacuumlo to use multiple transactions when dropping many large objects", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "fa38809048291f61b64535c94125b01f22bbe03881cae84b7aa8f3448aa98433"}, "url": "/docs/compare/?release=9.0.8#9.0.8-5528da127cb2e178", "source_url": "/docs/release/9.0.8/#AEN101167"}]}, {"id": "9.1.4-4189de2570bac196", "cves": [], "html": "<p>Update time zone data files to <span>tzdata</span> release 2012c for DST law changes in Antarctica, Armenia, Chile, Cuba, Falkland Islands, Gaza, Haiti, Hebron, Morocco, Syria, and Tokelau Islands; also historical corrections for Canada.</p>", "text": "Update time zone data files to tzdata release 2012c for DST law changes in Antarctica, Armenia, Chile, Cuba, Falkland Islands, Gaza, Haiti, Hebron, Morocco, Syria, and Tokelau Islands; also historical corrections for Canada.", "title": "Update time zone data files to tzdata release 2012c for DST law changes in Antarctica, Armenia, Chile, Cuba, Falkland Islands, Gaza, Haiti, Hebron, Morocco, Syria, and Tokelau Islands; also historical corrections for Canada.", "commits": [], "section": "Changes", "category": "improvement", "source_url": "/docs/release/9.1.4/#AEN109701", "source_hash": "dc0176a41c662846b8edd357cf239310d2889274a66ba9ecc80334be96fa97b7", "section_path": ["Changes"], "commit_groups": [], "identity_text": "Update time zone data files to tzdata release 2012c for DST law changes in Antarctica, Armenia, Chile, Cuba, Falkland Islands, Gaza, Haiti, Hebron, Morocco, Syria, and Tokelau Islands; also historical corrections for Canada.", "commit_aliases": [], "source_commits": [], "source_entry_id": "9.1.4/changes/042", "db_id": "0a49d71104e76727e9d5ecdcfc06035e", "patch_ids": [], "statement_hash": "3f17c38061acf5621020544a0ed298975c38f8f64df80267f36868e3cdcb8114", "relations": [{"rule": 2, "type": "equivalent", "target": "545903ff595e4f4546424f7f487341da", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3f17c38061acf5621020544a0ed298975c38f8f64df80267f36868e3cdcb8114"}}], "version": "9.1.4", "category_label": "Improvements", "also_in": [], "variants": [], "related_changes": [{"db_id": "545903ff595e4f4546424f7f487341da", "kind": "equivalent", "version": "9.0.8", "label": "9.0.8", "title": "Update time zone data files to tzdata release 2012c for DST law changes in Antarctica, Armenia, Chile, Cuba, Falkland Islands, Gaza, Haiti, Hebron, Morocco, Syria, and Tokelau Islands; also historical corrections for Canada.", "evidence": {"same_day": true, "patch_ids": [], "statement_hash": "3f17c38061acf5621020544a0ed298975c38f8f64df80267f36868e3cdcb8114"}, "url": "/docs/compare/?release=9.0.8#9.0.8-4189de2570bac196", "source_url": "/docs/release/9.0.8/#AEN101167"}]}]}], "stats": [{"key": "all", "label": "All changes", "count": 42}, {"key": "feature", "label": "Features", "count": 0}, {"key": "bugfix", "label": "Bug fixes", "count": 30}, {"key": "security", "label": "Security", "count": 2}, {"key": "performance", "label": "Performance", "count": 0}, {"key": "compatibility", "label": "Compatibility", "count": 0}, {"key": "improvement", "label": "Improvements", "count": 10}], "total": 42, "release_count": 1, "cross_major": false, "cve_count": 2, "cves": [{"id": "CVE-2012-2655", "url": "https://www.postgresql.org/support/security/CVE-2012-2655/", "fixed": {"8.3": "8.3.19", "8.4": "8.4.12", "9.0": "9.0.8", "9.1": "9.1.4"}, "score": null, "title": "Ignore SECURITY DEFINER and SET attributes for a procedural language's call handler", "vector": "", "affected": {"8.3": "8.3", "8.4": "8.4", "9.0": "9.0", "9.1": "9.1"}, "component": "", "published": {}, "introduced": {}, "cvss_version": "", "description_en": "", "first_published": null, "fixed_version": "9.1.4"}, {"id": "CVE-2012-2143", "url": "https://www.postgresql.org/support/security/CVE-2012-2143/", "fixed": {"8.3": "8.3.19", "8.4": "8.4.12", "9.0": "9.0.8", "9.1": "9.1.4"}, "score": null, "title": "Fix incorrect password transformation in contrib/pgcrypto's DES crypt() function", "vector": "", "affected": {"8.3": "8.3", "8.4": "8.4", "9.0": "9.0", "9.1": "9.1"}, "component": "", "published": {}, "introduced": {}, "cvss_version": "", "description_en": "", "first_published": null, "fixed_version": "9.1.4"}], "cve_available": true, "remaining_cves": [], "security_regressions": [], "warnings": [], "candidate_count": 42, "already_in_source_count": 0, "duplicate_count": 0, "excluded_count": 0, "exclusions": [], "source_as_of": "2026-09-26", "security_as_of": "2026-09-26"}