{"format": 1, "mode": "release", "from_release": null, "to_release": {"date": "2018-10-18", "build": "11.0", "major": "11", "minor": 0, "manual": "11", "status": "stable", "doc_git": "", "version": "11.0", "eol_date": "2023-11-09", "date_text": "2018-10-18", "supported": false, "manual_url": "/docs/11/release-11.html", "source_url": "/docs/release/11.0/", "entry_count": 170, "placeholder": false, "content_hash": "17d3f2a125f3dea606c1db8708ad0a3766c2e5f723a31c13dc410825b3aaa42b", "manual_build": "11.22", "source_as_of": "", "changes_count": 150, "doc_loaded_at": "2026-09-25T02:22:44.760693", "migration_html": "<p>A dump/restore using <a href=\"/docs/11/app-pg-dumpall.html\" title=\"pg_dumpall\"><span><span>pg_dumpall</span></span></a> or use of <a href=\"/docs/11/pgupgrade.html\" title=\"pg_upgrade\"><span><span>pg_upgrade</span></span></a> or logical replication is required for those wishing to migrate data from any previous release. See <a href=\"/docs/11/upgrading.html\" title=\"18.6. Upgrading a PostgreSQL Cluster\">Section 18.6</a> for general information on migrating to new major releases.</p>\n<p>Version 11 contains a number of changes that may affect compatibility with previous releases. Observe the following incompatibilities:</p>\n<div>\n</div>", "compatibility_count": 20, "label": "11.0", "status_label": "Historical", "eol": "2023-11-09", "age_days": 2903, "support_days": -1055}, "groups": [{"date": "2018-10-18", "build": "11.0", "major": "11", "minor": 0, "manual": "11", "status": "stable", "doc_git": "", "version": "11.0", "eol_date": "2023-11-09", "date_text": "2018-10-18", "supported": false, "manual_url": "/docs/11/release-11.html", "source_url": "/docs/release/11.0/", "entry_count": 170, "placeholder": false, "content_hash": "17d3f2a125f3dea606c1db8708ad0a3766c2e5f723a31c13dc410825b3aaa42b", "manual_build": "11.22", "source_as_of": "", "changes_count": 150, "doc_loaded_at": "2026-09-25T02:22:44.760693", "migration_html": "<p>A dump/restore using <a href=\"/docs/11/app-pg-dumpall.html\" title=\"pg_dumpall\"><span><span>pg_dumpall</span></span></a> or use of <a href=\"/docs/11/pgupgrade.html\" title=\"pg_upgrade\"><span><span>pg_upgrade</span></span></a> or logical replication is required for those wishing to migrate data from any previous release. See <a href=\"/docs/11/upgrading.html\" title=\"18.6. Upgrading a PostgreSQL Cluster\">Section 18.6</a> for general information on migrating to new major releases.</p>\n<p>Version 11 contains a number of changes that may affect compatibility with previous releases. Observe the following incompatibilities:</p>\n<div>\n</div>", "compatibility_count": 20, "label": "11.0", "status_label": "Historical", "eol": "2023-11-09", "age_days": 2903, "support_days": -1055, "entries": [{"id": "11.0-0b94db52d2670c3e", "cves": [], "html": "<p>Make <a href=\"/docs/11/app-pgdump.html\" title=\"pg_dump\"><span>pg_dump</span></a> dump the properties of a database, not just its contents (Haribabu Kommi)</p>\n<p>Previously, attributes of the database itself, such as database-level <code>GRANT</code>/<code>REVOKE</code> permissions and <code>ALTER DATABASE SET</code> variable settings, were only dumped by <a href=\"/docs/11/app-pg-dumpall.html\" title=\"pg_dumpall\"><span>pg_dumpall</span></a>. Now <code>pg_dump --create</code> and <code>pg_restore --create</code> will restore these database properties in addition to the objects within the database. <code>pg_dumpall -g</code> now only dumps role- and tablespace-related attributes. <span>pg_dumpall</span>'s complete output (without <code>-g</code>) is unchanged.</p>\n<p><span>pg_dump</span> and <span>pg_restore</span>, without <code>--create</code>, no longer dump/restore database-level comments and security labels; those are now treated as properties of the database.</p>\n<p><span>pg_dumpall</span>'s output script will now always create databases with their original locale and encoding, and hence will fail if the locale or encoding name is unknown to the destination system. Previously, <code>CREATE DATABASE</code> would be emitted without these specifications if the database locale and encoding matched the old cluster's defaults.</p>\n<p><code>pg_dumpall --clean</code> now restores the original locale and encoding settings of the <code>postgres</code> and <code>template1</code> databases, as well as those of user-created databases.</p>", "text": "Make pg_dump dump the properties of a database, not just its contents (Haribabu Kommi) Previously, attributes of the database itself, such as database-level GRANT/REVOKE permissions and ALTER DATABASE SET variable settings, were only dumped by pg_dumpall. Now pg_dump --create and pg_restore --create will restore these database properties in addition to the objects within the database. pg_dumpall -g now only dumps role- and tablespace-related attributes. pg_dumpall's complete output (without -g) is unchanged. pg_dump and pg_restore, without --create, no longer dump/restore database-level comments and security labels; those are now treated as properties of the database. pg_dumpall's output script will now always create databases with their original locale and encoding, and hence will fail if the locale or encoding name is unknown to the destination system. Previously, CREATE DATABASE would be emitted without these specifications if the database locale and encoding matched the old cluster's defaults. pg_dumpall --clean now restores the original locale and encoding settings of the postgres and template1 databases, as well as those of user-created databases.", "title": "Make pg_dump dump the properties of a database, not just its contents", "commits": [], "section": "Compatibility", "category": "compatibility", "source_url": "/docs/release/11.0/#id-1.11.6.27.4", "source_hash": "a3fc124e927ee593f80c81266c48456ab0138d5dde0ab768ea58ba6ff0ebb7da", "section_path": ["Compatibility"], "commit_groups": [["0d4e6ed30"], ["160a4f62e"], ["b3f840120"]], "identity_text": "Make pg_dump dump the properties of a database, not just its contents (Haribabu Kommi) Previously, attributes of the database itself, such as database-level GRANT/REVOKE permissions and ALTER DATABASE SET variable settings, were only dumped by pg_dumpall. Now pg_dump --create and pg_restore --create will restore these database properties in addition to the objects within the database. pg_dumpall -g now only dumps role- and tablespace-related attributes. pg_dumpall's complete output (without -g) is unchanged. pg_dump and pg_restore, without --create, no longer dump/restore database-level comments and security labels; those are now treated as properties of the database. pg_dumpall's output script will now always create databases with their original locale and encoding, and hence will fail if the locale or encoding name is unknown to the destination system. Previously, CREATE DATABASE would be emitted without these specifications if the database locale and encoding matched the old cluster's defaults. pg_dumpall --clean now restores the original locale and encoding settings of the postgres and template1 databases, as well as those of user-created databases.", "commit_aliases": ["0d4e6ed30", "160a4f62e", "b3f840120"], "source_commits": ["0d4e6ed30", "160a4f62e", "b3f840120"], "source_entry_id": "11.0/migration/001", "db_id": "510a32841a2049816360194221e43ee2", "patch_ids": ["0974504ea6d572a67eaaecd6e867bd81", "409084a206143e94c12ed6cd19fa75ef", "d9e7426a5acc449d5a2a31a7c4c41a96"], "statement_hash": "e4f13e5dac9e70b1266e5396673a114cf8ea5f2043cb960385af08047e4dbfc7", "relations": [], "version": "11.0", "category_label": "Compatibility", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-1c34699599c17d70", "cves": [], "html": "<p>Consider syntactic form when disambiguating function versus column references (Tom Lane)</p>\n<p>When <em><code>x</code></em> is a table name or composite column, <span>PostgreSQL</span> has traditionally considered the syntactic forms <code><em><code>f</code></em>(<em><code>x</code></em>)</code> and <code><em><code>x</code></em>.<em><code>f</code></em></code> to be equivalent, allowing tricks such as writing a function and then using it as though it were a computed-on-demand column. However, if both interpretations are feasible, the column interpretation was always chosen, leading to surprising results if the user intended the function interpretation. Now, if there is ambiguity, the interpretation that matches the syntactic form is chosen.</p>", "text": "Consider syntactic form when disambiguating function versus column references (Tom Lane) When x is a table name or composite column, PostgreSQL has traditionally considered the syntactic forms f(x) and x.f to be equivalent, allowing tricks such as writing a function and then using it as though it were a computed-on-demand column. However, if both interpretations are feasible, the column interpretation was always chosen, leading to surprising results if the user intended the function interpretation. Now, if there is ambiguity, the interpretation that matches the syntactic form is chosen.", "title": "Consider syntactic form when disambiguating function versus column references", "commits": [], "section": "Compatibility", "category": "compatibility", "source_url": "/docs/release/11.0/#id-1.11.6.27.4", "source_hash": "6b1a7e86ae5baeb7ce4047394f21fd6c9b4acf02f2406cd658ed621d21b51451", "section_path": ["Compatibility"], "commit_groups": [["45e98ee73"], ["b97a3465d"]], "identity_text": "Consider syntactic form when disambiguating function versus column references (Tom Lane) When x is a table name or composite column, PostgreSQL has traditionally considered the syntactic forms f(x) and x.f to be equivalent, allowing tricks such as writing a function and then using it as though it were a computed-on-demand column. However, if both interpretations are feasible, the column interpretation was always chosen, leading to surprising results if the user intended the function interpretation. Now, if there is ambiguity, the interpretation that matches the syntactic form is chosen.", "commit_aliases": ["45e98ee73", "b97a3465d"], "source_commits": ["45e98ee73", "b97a3465d"], "source_entry_id": "11.0/migration/002", "db_id": "b4298d6c99dbe4cf7d2409833c389286", "patch_ids": ["02b06845841ba971aff8fcd922b61337", "f7546b8e9785d12b512e34d9a4ba5fe3"], "statement_hash": "0eee1185e933ebe2dbd87214fd3e57d626d0675cbc410f2a2f5da4c088141965", "relations": [], "version": "11.0", "category_label": "Compatibility", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-d351ff14e88dd64a", "cves": [], "html": "<p>Fully enforce uniqueness of table and domain constraint names (Tom Lane)</p>\n<p><span>PostgreSQL</span> expects the names of a table's constraints to be distinct, and likewise for the names of a domain's constraints. However, there was not rigid enforcement of this, and previously there were corner cases where duplicate names could be created.</p>", "text": "Fully enforce uniqueness of table and domain constraint names (Tom Lane) PostgreSQL expects the names of a table's constraints to be distinct, and likewise for the names of a domain's constraints. However, there was not rigid enforcement of this, and previously there were corner cases where duplicate names could be created.", "title": "Fully enforce uniqueness of table and domain constraint names", "commits": [], "section": "Compatibility", "category": "compatibility", "source_url": "/docs/release/11.0/#id-1.11.6.27.4", "source_hash": "4bdebe8985707e6d9f0b290305681832b94c60751c1e706067f6eab95315dff1", "section_path": ["Compatibility"], "commit_groups": [["fb466d7b5"]], "identity_text": "Fully enforce uniqueness of table and domain constraint names (Tom Lane) PostgreSQL expects the names of a table's constraints to be distinct, and likewise for the names of a domain's constraints. However, there was not rigid enforcement of this, and previously there were corner cases where duplicate names could be created.", "commit_aliases": ["fb466d7b5"], "source_commits": ["fb466d7b5"], "source_entry_id": "11.0/migration/003", "db_id": "123aceccc369aadda88119d2695f9eb3", "patch_ids": ["06b45dc7ea0b7a5af683574355ab7287"], "statement_hash": "4bf3335d18dccf3f5928783a351ae52a804cbdaffe0158949c9fc541ee53f290", "relations": [], "version": "11.0", "category_label": "Compatibility", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-96d537fb03ad4297", "cves": [], "html": "<p>Make <code>power(numeric, numeric)</code> and <code>power(float8, float8)</code> handle <code>NaN</code> inputs according to the POSIX standard (Tom Lane, Dang Minh Huong)</p>\n<p>POSIX says that <code>NaN ^ 0 = 1</code> and <code>1 ^ NaN = 1</code>, but all other cases with <code>NaN</code> input(s) should return <code>NaN</code>. <code>power(numeric, numeric)</code> just returned <code>NaN</code> in all such cases; now it honors the two exceptions. <code>power(float8, float8)</code> followed the standard if the C library does; but on some old Unix platforms the library doesn't, and there were also problems on some versions of Windows.</p>", "text": "Make power(numeric, numeric) and power(float8, float8) handle NaN inputs according to the POSIX standard (Tom Lane, Dang Minh Huong) POSIX says that NaN ^ 0 = 1 and 1 ^ NaN = 1, but all other cases with NaN input(s) should return NaN. power(numeric, numeric) just returned NaN in all such cases; now it honors the two exceptions. power(float8, float8) followed the standard if the C library does; but on some old Unix platforms the library doesn't, and there were also problems on some versions of Windows.", "title": "Make power(numeric, numeric) and power(float8, float8) handle NaN inputs according to the POSIX standard", "commits": [], "section": "Compatibility", "category": "compatibility", "source_url": "/docs/release/11.0/#id-1.11.6.27.4", "source_hash": "5554f49f3f044353fc7f73c11d549e019b1782c9309c16bb446d94149037e422", "section_path": ["Compatibility"], "commit_groups": [["61b200e2f"], ["6bdf1303b"], ["d1fc750b5"]], "identity_text": "Make power(numeric, numeric) and power(float8, float8) handle NaN inputs according to the POSIX standard (Tom Lane, Dang Minh Huong) POSIX says that NaN ^ 0 = 1 and 1 ^ NaN = 1, but all other cases with NaN input(s) should return NaN. power(numeric, numeric) just returned NaN in all such cases; now it honors the two exceptions. power(float8, float8) followed the standard if the C library does; but on some old Unix platforms the library doesn't, and there were also problems on some versions of Windows.", "commit_aliases": ["61b200e2f", "6bdf1303b", "d1fc750b5"], "source_commits": ["61b200e2f", "6bdf1303b", "d1fc750b5"], "source_entry_id": "11.0/migration/004", "db_id": "774865e34c7515aa91e3954bddc9c088", "patch_ids": ["92ec1df68ae5a65e5445a5b40d18cd26", "9c552403bc78d2542d99a074870a187c", "d72bdf8e00e2fa5ba515124464876c9b"], "statement_hash": "4dcc5e958d4fa836cd03e271c736ab7cc41bfc4d90d16c5fa3a6277a347ecc85", "relations": [], "version": "11.0", "category_label": "Compatibility", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-107bad2c081c8ba2", "cves": [], "html": "<p>Prevent <a href=\"/docs/11/functions-formatting.html#FUNCTIONS-FORMATTING-NUMERIC-TABLE\" title=\"Table 9.26. Template Patterns for Numeric Formatting\"><code>to_number()</code></a> from consuming characters when the template separator does not match (Oliver Ford)</p>\n<p>Specifically, <code>SELECT to_number('1234', '9,999')</code> used to return <code>134</code>. It will now return <code>1234</code>. <code>L</code> and <code>TH</code> now only consume characters that are not digits, positive/negative signs, decimal points, or commas.</p>", "text": "Prevent to_number() from consuming characters when the template separator does not match (Oliver Ford) Specifically, SELECT to_number('1234', '9,999') used to return 134. It will now return 1234. L and TH now only consume characters that are not digits, positive/negative signs, decimal points, or commas.", "title": "Prevent to_number() from consuming characters when the template separator does not match", "commits": [], "section": "Compatibility", "category": "compatibility", "source_url": "/docs/release/11.0/#id-1.11.6.27.4", "source_hash": "84e053e31addcc6beee4d530bd85c36c2f29403bde928d8aebbc6455d3688439", "section_path": ["Compatibility"], "commit_groups": [["e87d4965b"]], "identity_text": "Prevent to_number() from consuming characters when the template separator does not match (Oliver Ford) Specifically, SELECT to_number('1234', '9,999') used to return 134. It will now return 1234. L and TH now only consume characters that are not digits, positive/negative signs, decimal points, or commas.", "commit_aliases": ["e87d4965b"], "source_commits": ["e87d4965b"], "source_entry_id": "11.0/migration/005", "db_id": "3d9024d04496de827ad1fe1243461c4f", "patch_ids": ["b85ccd508e90be82b57823635b20b89e"], "statement_hash": "518a3c07a26c6294b4251f9a88b7093173f758eaae092425187c8bfa11281b75", "relations": [], "version": "11.0", "category_label": "Compatibility", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-b0d5c90cd0bc99ab", "cves": [], "html": "<p>Fix <a href=\"/docs/11/functions-formatting.html\" title=\"9.8. Data Type Formatting Functions\"><code>to_date()</code></a>, <code>to_number()</code>, and <code>to_timestamp()</code> to skip a character for each template character (Tom Lane)</p>\n<p>Previously, they skipped one <span><em>byte</em></span> for each byte of template character, resulting in strange behavior if either string contained multibyte characters.</p>", "text": "Fix to_date(), to_number(), and to_timestamp() to skip a character for each template character (Tom Lane) Previously, they skipped one byte for each byte of template character, resulting in strange behavior if either string contained multibyte characters.", "title": "Fix to_date(), to_number(), and to_timestamp() to skip a character for each template character", "commits": [], "section": "Compatibility", "category": "compatibility", "source_url": "/docs/release/11.0/#id-1.11.6.27.4", "source_hash": "b9bb1d95a02a2e58a51443c4d3556a46902084423cd01266e1fb3af2b232d31a", "section_path": ["Compatibility"], "commit_groups": [["976a1a48f"]], "identity_text": "Fix to_date(), to_number(), and to_timestamp() to skip a character for each template character (Tom Lane) Previously, they skipped one byte for each byte of template character, resulting in strange behavior if either string contained multibyte characters.", "commit_aliases": ["976a1a48f"], "source_commits": ["976a1a48f"], "source_entry_id": "11.0/migration/006", "db_id": "6df82a80a5d3a6122d268b3bbdf21b2a", "patch_ids": ["269cd62584c55d7d310c398734f57870"], "statement_hash": "2836a86a738388e6f787cca08001f8204dd38eb0fdf5473b72d6f62fb16b569d", "relations": [], "version": "11.0", "category_label": "Compatibility", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-53745e11ac593655", "cves": [], "html": "<p>Adjust the handling of backslashes inside double-quotes in template strings for <code>to_char()</code>, <code>to_number()</code>, and <code>to_timestamp()</code>.</p>\n<p>Such a backslash now escapes the character after it, particularly a double-quote or another backslash.</p>", "text": "Adjust the handling of backslashes inside double-quotes in template strings for to_char(), to_number(), and to_timestamp(). Such a backslash now escapes the character after it, particularly a double-quote or another backslash.", "title": "Adjust the handling of backslashes inside double-quotes in template strings for to_char(), to_number(), and to_timestamp().", "commits": [], "section": "Compatibility", "category": "compatibility", "source_url": "/docs/release/11.0/#id-1.11.6.27.4", "source_hash": "77a41e11b951df5a820061b703f45127f9a7f403c1cd7ca8d47a09aa6fe4e4e8", "section_path": ["Compatibility"], "commit_groups": [["63ca86318"]], "identity_text": "Adjust the handling of backslashes inside double-quotes in template strings for to_char(), to_number(), and to_timestamp(). Such a backslash now escapes the character after it, particularly a double-quote or another backslash.", "commit_aliases": ["63ca86318"], "source_commits": ["63ca86318"], "source_entry_id": "11.0/migration/007", "db_id": "8b765ef312915548a5d0e1b3dc25e93a", "patch_ids": ["541fc3a298457cbbdf17a516fb268b77"], "statement_hash": "a1ad21134ed44eba401dac111dbdfa9da67d26118cc360a58ab81a619eee4c5a", "relations": [], "version": "11.0", "category_label": "Compatibility", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-d27830fc4724ae5b", "cves": [], "html": "<p>Correctly handle relative path expressions in <code>xmltable()</code>, <code>xpath()</code>, and other XML-handling functions (Markus Winand)</p>\n<p>Per the SQL standard, relative paths start from the document node of the XML input document, not the root node as these functions previously did.</p>", "text": "Correctly handle relative path expressions in xmltable(), xpath(), and other XML-handling functions (Markus Winand) Per the SQL standard, relative paths start from the document node of the XML input document, not the root node as these functions previously did.", "title": "Correctly handle relative path expressions in xmltable(), xpath(), and other XML-handling functions", "commits": [], "section": "Compatibility", "category": "compatibility", "source_url": "/docs/release/11.0/#id-1.11.6.27.4", "source_hash": "b57dec541603d4df7eb296d86e9638bfc2b9f8aa1bc6bdd17dcd42c0bc1e4a98", "section_path": ["Compatibility"], "commit_groups": [["e474c2b7e"]], "identity_text": "Correctly handle relative path expressions in xmltable(), xpath(), and other XML-handling functions (Markus Winand) Per the SQL standard, relative paths start from the document node of the XML input document, not the root node as these functions previously did.", "commit_aliases": ["e474c2b7e"], "source_commits": ["e474c2b7e"], "source_entry_id": "11.0/migration/008", "db_id": "5699f3abda8af69c0a85646bb3ff0293", "patch_ids": ["076da883585834bc70dee1fd22aadc3f"], "statement_hash": "6ada139b2aab9ed5d53b101a7faf9c590fe786f1bfa9c5afb96e2c98de1a7ea4", "relations": [], "version": "11.0", "category_label": "Compatibility", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-1a8f765898894430", "cves": [], "html": "<p>In the <a href=\"/docs/11/protocol-overview.html#PROTOCOL-QUERY-CONCEPTS\" title=\"53.1.2. Extended Query Overview\">extended query protocol</a>, make <a href=\"/docs/11/runtime-config-client.html#GUC-STATEMENT-TIMEOUT\"><code>statement_timeout</code></a> apply to each Execute message separately, not to all commands before Sync (Tatsuo Ishii, Andres Freund)</p>", "text": "In the extended query protocol, make statement_timeout apply to each Execute message separately, not to all commands before Sync (Tatsuo Ishii, Andres Freund)", "title": "In the extended query protocol, make statement_timeout apply to each Execute message separately, not to all commands before Sync", "commits": [], "section": "Compatibility", "category": "compatibility", "source_url": "/docs/release/11.0/#id-1.11.6.27.4", "source_hash": "358af8b1107e42da798f0b9df23e9add71aa9c531a2dc9cedce5990e770eee9f", "section_path": ["Compatibility"], "commit_groups": [["f8e5f156b"]], "identity_text": "In the extended query protocol, make statement_timeout apply to each Execute message separately, not to all commands before Sync (Tatsuo Ishii, Andres Freund)", "commit_aliases": ["f8e5f156b"], "source_commits": ["f8e5f156b"], "source_entry_id": "11.0/migration/009", "db_id": "7b054776734f8bbad92203a21929b6f2", "patch_ids": ["952a043065a2e0f994801faf295f7690"], "statement_hash": "c8f1b61b2cc8d888cf47553ea280aafe672562ce969f97a37cd33e301944740e", "relations": [], "version": "11.0", "category_label": "Compatibility", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-f4a49b1c48b93fe3", "cves": [], "html": "<p>Remove the <code>relhaspkey</code> column from system catalog <code>pg_class</code> (Peter Eisentraut)</p>\n<p>Applications needing to check for a primary key should consult <code>pg_index</code>.</p>", "text": "Remove the relhaspkey column from system catalog pg_class (Peter Eisentraut) Applications needing to check for a primary key should consult pg_index.", "title": "Remove the relhaspkey column from system catalog pg_class", "commits": [], "section": "Compatibility", "category": "compatibility", "source_url": "/docs/release/11.0/#id-1.11.6.27.4", "source_hash": "451074f233412662a2c3ed546f9353c63eabddbf07e0114a91484df133a55bbd", "section_path": ["Compatibility"], "commit_groups": [["f66e8bf87"]], "identity_text": "Remove the relhaspkey column from system catalog pg_class (Peter Eisentraut) Applications needing to check for a primary key should consult pg_index.", "commit_aliases": ["f66e8bf87"], "source_commits": ["f66e8bf87"], "source_entry_id": "11.0/migration/010", "db_id": "4c202a68fddd3e594d876c0bc62862fa", "patch_ids": ["0403068faf237aae663158147663f0ef"], "statement_hash": "e5748c4a1299e1a8552d224d6dcb9446c88bfcf9e6a974d95a1ba66bb2b09340", "relations": [], "version": "11.0", "category_label": "Compatibility", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-063b871fd685ca91", "cves": [], "html": "<p>Replace system catalog <code>pg_proc</code>'s <code>proisagg</code> and <code>proiswindow</code> columns with <code>prokind</code> (Peter Eisentraut)</p>\n<p>This new column more clearly distinguishes functions, procedures, aggregates, and window functions.</p>", "text": "Replace system catalog pg_proc's proisagg and proiswindow columns with prokind (Peter Eisentraut) This new column more clearly distinguishes functions, procedures, aggregates, and window functions.", "title": "Replace system catalog pg_proc's proisagg and proiswindow columns with prokind", "commits": [], "section": "Compatibility", "category": "compatibility", "source_url": "/docs/release/11.0/#id-1.11.6.27.4", "source_hash": "bd0cff500a63df2a36b517e981ac6a039083dad6ee29fa17bc325925aba9d41a", "section_path": ["Compatibility"], "commit_groups": [["fd1a421fe"]], "identity_text": "Replace system catalog pg_proc's proisagg and proiswindow columns with prokind (Peter Eisentraut) This new column more clearly distinguishes functions, procedures, aggregates, and window functions.", "commit_aliases": ["fd1a421fe"], "source_commits": ["fd1a421fe"], "source_entry_id": "11.0/migration/011", "db_id": "46b97d9b8fc22340398342e0e2d1af76", "patch_ids": ["8e17e29f1be6a33f04f90f3e744bd693"], "statement_hash": "8b0e803bb096d60aa7eb687a94d5616f94c85849b514712421c46aa1ee399657", "relations": [], "version": "11.0", "category_label": "Compatibility", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-66d4250734e2755c", "cves": [], "html": "<p>Correct information schema column <a href=\"/docs/11/infoschema-tables.html\" title=\"37.52. tables\"><code>tables</code>.<code>table_type</code></a> to return <code>FOREIGN</code> instead of <code>FOREIGN TABLE</code> (Peter Eisentraut)</p>\n<p>This new output matches the SQL standard.</p>", "text": "Correct information schema column tables.table_type to return FOREIGN instead of FOREIGN TABLE (Peter Eisentraut) This new output matches the SQL standard.", "title": "Correct information schema column tables.table_type to return FOREIGN instead of FOREIGN TABLE", "commits": [], "section": "Compatibility", "category": "compatibility", "source_url": "/docs/release/11.0/#id-1.11.6.27.4", "source_hash": "54c773d3100e6e4d43ff5a65d6a7d79e575f33c2989f8650d43da735819f98fc", "section_path": ["Compatibility"], "commit_groups": [["9b5140fb5"]], "identity_text": "Correct information schema column tables.table_type to return FOREIGN instead of FOREIGN TABLE (Peter Eisentraut) This new output matches the SQL standard.", "commit_aliases": ["9b5140fb5"], "source_commits": ["9b5140fb5"], "source_entry_id": "11.0/migration/012", "db_id": "4d19dd34e3e88bc61a91087b1c7ec4ff", "patch_ids": ["cc9473f3c6726efa0e5ba7d6df4d4cf0"], "statement_hash": "f16352bb86564ed5ad249abaa57ab4134e8626c1817850d5fa9ab17c7d785329", "relations": [], "version": "11.0", "category_label": "Compatibility", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-55a11b0c3ad6a121", "cves": [], "html": "<p>Change the ps process display labels for background workers to match the <a href=\"/docs/11/monitoring-stats.html#PG-STAT-ACTIVITY-VIEW\" title=\"Table 28.3. pg_stat_activity View\"><code>pg_stat_activity</code>.<code>backend_type</code></a> labels (Peter Eisentraut)</p>", "text": "Change the ps process display labels for background workers to match the pg_stat_activity.backend_type labels (Peter Eisentraut)", "title": "Change the ps process display labels for background workers to match the pg_stat_activity.backend_type labels", "commits": [], "section": "Compatibility", "category": "compatibility", "source_url": "/docs/release/11.0/#id-1.11.6.27.4", "source_hash": "78ad95b9fb7bbbcb4a72cd05fd8f8ed571ffba7c07c5e2be273cce5c20a541f8", "section_path": ["Compatibility"], "commit_groups": [["be87b70b6"]], "identity_text": "Change the ps process display labels for background workers to match the pg_stat_activity.backend_type labels (Peter Eisentraut)", "commit_aliases": ["be87b70b6"], "source_commits": ["be87b70b6"], "source_entry_id": "11.0/migration/013", "db_id": "974a16b2c4345122e35fa3a44924a194", "patch_ids": ["962260b669a8a3c9158847504ed83da2"], "statement_hash": "d94fed9aaa18477c55da1c4a98d92f1fd5e1369723456135838b39efe9bef50b", "relations": [], "version": "11.0", "category_label": "Compatibility", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-5a79e1f9c954df3b", "cves": [], "html": "<p>Cause large object permission checks to happen during large object open, <a href=\"/docs/11/lo-interfaces.html#LO-OPEN\" title=\"35.3.4. Opening an Existing Large Object\"><code>lo_open()</code></a>, not when a read or write is attempted (Tom Lane, Michael Paquier)</p>\n<p>If write access is requested and not available, an error will now be thrown even if the large object is never written to.</p>", "text": "Cause large object permission checks to happen during large object open, lo_open(), not when a read or write is attempted (Tom Lane, Michael Paquier) If write access is requested and not available, an error will now be thrown even if the large object is never written to.", "title": "Cause large object permission checks to happen during large object open, lo_open(), not when a read or write is attempted", "commits": [], "section": "Compatibility", "category": "compatibility", "source_url": "/docs/release/11.0/#id-1.11.6.27.4", "source_hash": "fbf598ce9dad5b80cc65f4e4eb9f86d3f1ab70ba114fe741648f08aa5274ff7c", "section_path": ["Compatibility"], "commit_groups": [["6d776522d"], ["ae20b23a9"]], "identity_text": "Cause large object permission checks to happen during large object open, lo_open(), not when a read or write is attempted (Tom Lane, Michael Paquier) If write access is requested and not available, an error will now be thrown even if the large object is never written to.", "commit_aliases": ["6d776522d", "ae20b23a9"], "source_commits": ["6d776522d", "ae20b23a9"], "source_entry_id": "11.0/migration/014", "db_id": "0b279c27863f37b234d2c71e90a34f66", "patch_ids": ["2f492a4642cc93d8877db1a9839f8422", "e024d72ca9cefd67b4b949d559a264bf"], "statement_hash": "6471209976cf5d1276925197802d9c912a204d4416a08695e9f340c57266c9a6", "relations": [{"rule": 2, "type": "related", "target": "64317dec4095a31874ad8bfffd1b3783", "evidence": {"same_day": true, "patch_ids": ["2f492a4642cc93d8877db1a9839f8422"]}}], "version": "11.0", "category_label": "Compatibility", "also_in": [], "variants": [], "related_changes": [{"db_id": "64317dec4095a31874ad8bfffd1b3783", "kind": "related", "version": "11.0", "label": "11.0", "title": "Use GRANT/REVOKE to control access to lo_import() and lo_export()", "evidence": {"same_day": true, "patch_ids": ["2f492a4642cc93d8877db1a9839f8422"]}, "url": "/docs/compare/?release=11.0#11.0-c176612752aa5375", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.9"}]}, {"id": "11.0-b15970c5e596245a", "cves": [], "html": "<p>Prevent non-superusers from reindexing shared catalogs (Michael Paquier, Robert Haas)</p>\n<p>Previously, database owners were also allowed to do this, but now it is considered outside the bounds of their privileges.</p>", "text": "Prevent non-superusers from reindexing shared catalogs (Michael Paquier, Robert Haas) Previously, database owners were also allowed to do this, but now it is considered outside the bounds of their privileges.", "title": "Prevent non-superusers from reindexing shared catalogs", "commits": [], "section": "Compatibility", "category": "compatibility", "source_url": "/docs/release/11.0/#id-1.11.6.27.4", "source_hash": "8ee57ba2c765d48589177b630d60a310a9805abf65fe0b35d18186b18095ca00", "section_path": ["Compatibility"], "commit_groups": [["87330e21c"]], "identity_text": "Prevent non-superusers from reindexing shared catalogs (Michael Paquier, Robert Haas) Previously, database owners were also allowed to do this, but now it is considered outside the bounds of their privileges.", "commit_aliases": ["87330e21c"], "source_commits": ["87330e21c"], "source_entry_id": "11.0/migration/015", "db_id": "7eb022cb658a9316dd3bdbcb7c457b1d", "patch_ids": ["20edf52c8362f05176bca0d955851dcd"], "statement_hash": "7e78d2559eccc3fd82555d10ac834c89f03850fc49bcb728a3cfbe396a10c518", "relations": [], "version": "11.0", "category_label": "Compatibility", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-b0f3872508582cd7", "cves": [], "html": "<p>Remove deprecated <a href=\"/docs/11/adminpack.html\" title=\"F.1. adminpack\"><code>adminpack</code></a> functions <code>pg_file_read()</code>, <code>pg_file_length()</code>, and <code>pg_logfile_rotate()</code> (Stephen Frost)</p>\n<p>Equivalent functionality is now present in the core backend. Existing <code>adminpack</code> installs will continue to have access to these functions until they are updated via <code>ALTER EXTENSION ... UPDATE</code>.</p>", "text": "Remove deprecated adminpack functions pg_file_read(), pg_file_length(), and pg_logfile_rotate() (Stephen Frost) Equivalent functionality is now present in the core backend. Existing adminpack installs will continue to have access to these functions until they are updated via ALTER EXTENSION ... UPDATE.", "title": "Remove deprecated adminpack functions pg_file_read(), pg_file_length(), and pg_logfile_rotate()", "commits": [], "section": "Compatibility", "category": "compatibility", "source_url": "/docs/release/11.0/#id-1.11.6.27.4", "source_hash": "5265628b2223c3e03cd8827f788814ce551b8093d67f273345401417cd2cf864", "section_path": ["Compatibility"], "commit_groups": [["11523e860"]], "identity_text": "Remove deprecated adminpack functions pg_file_read(), pg_file_length(), and pg_logfile_rotate() (Stephen Frost) Equivalent functionality is now present in the core backend. Existing adminpack installs will continue to have access to these functions until they are updated via ALTER EXTENSION ... UPDATE.", "commit_aliases": ["11523e860"], "source_commits": ["11523e860"], "source_entry_id": "11.0/migration/016", "db_id": "9fb362899a6b27f50f661fe029c5b5e3", "patch_ids": ["dc2579f2ac86796bba3e529db6afcab1"], "statement_hash": "6df57454c38ce36bb64e7db089172bcada5adb47c75a9f4313930af80c253463", "relations": [{"rule": 2, "type": "related", "target": "b927f77f6c379e3df3fb9257f14a8557", "evidence": {"same_day": true, "patch_ids": ["dc2579f2ac86796bba3e529db6afcab1"]}}], "version": "11.0", "category_label": "Compatibility", "also_in": [], "variants": [], "related_changes": [{"db_id": "b927f77f6c379e3df3fb9257f14a8557", "kind": "related", "version": "11.0", "label": "11.0", "title": "Have adminpack use the new default file system access roles", "evidence": {"same_day": true, "patch_ids": ["dc2579f2ac86796bba3e529db6afcab1"]}, "url": "/docs/compare/?release=11.0#11.0-6f304ca3d06ba27c", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.13"}]}, {"id": "11.0-68132f03e2aaf3c7", "cves": [], "html": "<p>Honor the capitalization of double-quoted command options (Daniel Gustafsson)</p>\n<p>Previously, option names in certain SQL commands were forcibly lower-cased even if entered with double quotes; thus for example <code>\"FillFactor\"</code> would be accepted as an index storage option, though properly its name is lower-case. Such cases will now generate an error.</p>", "text": "Honor the capitalization of double-quoted command options (Daniel Gustafsson) Previously, option names in certain SQL commands were forcibly lower-cased even if entered with double quotes; thus for example \"FillFactor\" would be accepted as an index storage option, though properly its name is lower-case. Such cases will now generate an error.", "title": "Honor the capitalization of double-quoted command options", "commits": [], "section": "Compatibility", "category": "compatibility", "source_url": "/docs/release/11.0/#id-1.11.6.27.4", "source_hash": "218bf299f7628e439c3addff07016c15f6800099f2d7cfca00389aa2f05dc7ba", "section_path": ["Compatibility"], "commit_groups": [["fb8697b31"]], "identity_text": "Honor the capitalization of double-quoted command options (Daniel Gustafsson) Previously, option names in certain SQL commands were forcibly lower-cased even if entered with double quotes; thus for example \"FillFactor\" would be accepted as an index storage option, though properly its name is lower-case. Such cases will now generate an error.", "commit_aliases": ["fb8697b31"], "source_commits": ["fb8697b31"], "source_entry_id": "11.0/migration/017", "db_id": "c6ca40c272e7970f7da69fafb122d105", "patch_ids": ["c4734e217c6eb8282130838c53e589f0"], "statement_hash": "d04dc17c486643760b8b7d810de699cd7f12333e05109893fda6b927a0d69b59", "relations": [], "version": "11.0", "category_label": "Compatibility", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-a71269230008213a", "cves": [], "html": "<p>Remove server parameter <code>replacement_sort_tuples</code> (Peter Geoghegan)</p>\n<p>Replacement sorts were determined to be no longer useful.</p>", "text": "Remove server parameter replacement_sort_tuples (Peter Geoghegan) Replacement sorts were determined to be no longer useful.", "title": "Remove server parameter replacement_sort_tuples", "commits": [], "section": "Compatibility", "category": "compatibility", "source_url": "/docs/release/11.0/#id-1.11.6.27.4", "source_hash": "328feeb2742bcb24f952fbbe24eaddd4b5e18e433102baf7563d95bbcd58bd5f", "section_path": ["Compatibility"], "commit_groups": [["8b304b8b7"]], "identity_text": "Remove server parameter replacement_sort_tuples (Peter Geoghegan) Replacement sorts were determined to be no longer useful.", "commit_aliases": ["8b304b8b7"], "source_commits": ["8b304b8b7"], "source_entry_id": "11.0/migration/018", "db_id": "7cf4f2ec73d04546c03927edbe4be9db", "patch_ids": ["d1cfa6a03d12878685c6b764ca4f9db4"], "statement_hash": "d57f08d89d73c4b87c76f348e43051202a8046ebd46f6e18465db1ccb95d31ed", "relations": [], "version": "11.0", "category_label": "Compatibility", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-7c86363d1dbc7c49", "cves": [], "html": "<p>Remove <code>WITH</code> clause in <a href=\"/docs/11/sql-createfunction.html\" title=\"CREATE FUNCTION\"><code>CREATE FUNCTION</code></a> (Michael Paquier)</p>\n<p><span>PostgreSQL</span> has long supported a more standard-compliant syntax for this capability.</p>", "text": "Remove WITH clause in CREATE FUNCTION (Michael Paquier) PostgreSQL has long supported a more standard-compliant syntax for this capability.", "title": "Remove WITH clause in CREATE FUNCTION", "commits": [], "section": "Compatibility", "category": "compatibility", "source_url": "/docs/release/11.0/#id-1.11.6.27.4", "source_hash": "921bb3d803a01622c41f642f4f66cf8b29e3a539e253dd0a6b0d173761c3e179", "section_path": ["Compatibility"], "commit_groups": [["4971d2a32"]], "identity_text": "Remove WITH clause in CREATE FUNCTION (Michael Paquier) PostgreSQL has long supported a more standard-compliant syntax for this capability.", "commit_aliases": ["4971d2a32"], "source_commits": ["4971d2a32"], "source_entry_id": "11.0/migration/019", "db_id": "3cccbdd25cbdc9c0bb3564745dec576b", "patch_ids": ["e0b5bcba963a61c883ea515233c7a2a0"], "statement_hash": "8375875dcb7c64b550b7fd2f590205498270caebe376f4dfdb8b2d975cecadd9", "relations": [], "version": "11.0", "category_label": "Compatibility", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-2b2bad106b554156", "cves": [], "html": "<p>In PL/pgSQL trigger functions, the <code>OLD</code> and <code>NEW</code> variables now read as NULL when not assigned (Tom Lane)</p>\n<p>Previously, references to these variables could be parsed but not executed.</p>", "text": "In PL/pgSQL trigger functions, the OLD and NEW variables now read as NULL when not assigned (Tom Lane) Previously, references to these variables could be parsed but not executed.", "title": "In PL/pgSQL trigger functions, the OLD and NEW variables now read as NULL when not assigned", "commits": [], "section": "Compatibility", "category": "compatibility", "source_url": "/docs/release/11.0/#id-1.11.6.27.4", "source_hash": "893abeb3bea6ccf4e04e46bbe3bbff6d0ba0df6c8e8c1797978e15061a8669e3", "section_path": ["Compatibility"], "commit_groups": [["4b93f5799"]], "identity_text": "In PL/pgSQL trigger functions, the OLD and NEW variables now read as NULL when not assigned (Tom Lane) Previously, references to these variables could be parsed but not executed.", "commit_aliases": ["4b93f5799"], "source_commits": ["4b93f5799"], "source_entry_id": "11.0/migration/020", "db_id": "3a10a968211dd2f57e469ce081a0fb6d", "patch_ids": ["f114eab24a7e02f5cca2a84c5e3329c7"], "statement_hash": "a5b061ff232949ced51b689168c06f142e18a6bb650ae9cc49f239b3f31d077f", "relations": [{"rule": 2, "type": "related", "target": "a3362f67b1e652e63b477f8810eafbf7", "evidence": {"same_day": true, "patch_ids": ["f114eab24a7e02f5cca2a84c5e3329c7"]}}], "version": "11.0", "category_label": "Compatibility", "also_in": [], "variants": [], "related_changes": [{"db_id": "a3362f67b1e652e63b477f8810eafbf7", "kind": "related", "version": "11.0", "label": "11.0", "title": "Allow PL/pgSQL to handle changes to composite types (e.g., record, row) that happen between the first and later function executions in the same session", "evidence": {"same_day": true, "patch_ids": ["f114eab24a7e02f5cca2a84c5e3329c7"]}, "url": "/docs/compare/?release=11.0#11.0-ec613ada745aed67", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.8"}]}, {"id": "11.0-5e2cee2e5613d3fd", "cves": [], "html": "<p>Allow the creation of partitions based on hashing a key column (Amul Sul)</p>", "text": "Allow the creation of partitions based on hashing a key column (Amul Sul)", "title": "Allow the creation of partitions based on hashing a key column", "commits": [], "section": "Server / Partitioning", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.2", "source_hash": "11e55c3fd2c68b90e12e4a8d18713e5ab35ef293cd478bfd59544f56cfa4ec5f", "section_path": ["Server", "Partitioning"], "commit_groups": [["1aba8e651"]], "identity_text": "Allow the creation of partitions based on hashing a key column (Amul Sul)", "commit_aliases": ["1aba8e651"], "source_commits": ["1aba8e651"], "source_entry_id": "11.0/changes/001", "db_id": "f7cb7d4d9f264e9a3e3d4868febbb04f", "patch_ids": ["194514b774748b3babd76e89c9041d5a"], "statement_hash": "d80ddc780f51bb6e799c5e814e146dbd9c8ed9981cac21cb5a64bc13ed039cc2", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-c4ba4b130ff218b9", "cves": [], "html": "<p>Support indexes on partitioned tables (Álvaro Herrera, Amit Langote)</p>\n<p>An <span>“<span>index</span>”</span> on a partitioned table is not a physical index across the whole partitioned table, but rather a template for automatically creating similar indexes on each partition of the table.</p>\n<p>If the partition key is part of the index's column set, a partitioned index may be declared <code>UNIQUE</code>. It will represent a valid uniqueness constraint across the whole partitioned table, even though each physical index only enforces uniqueness within its own partition.</p>\n<p>The new command <a href=\"/docs/11/sql-alterindex.html\" title=\"ALTER INDEX\"><code>ALTER INDEX ATTACH PARTITION</code></a> causes an existing index on a partition to be associated with a matching index template for its partitioned table. This provides flexibility in setting up a new partitioned index for an existing partitioned table.</p>", "text": "Support indexes on partitioned tables (Álvaro Herrera, Amit Langote) An “index” on a partitioned table is not a physical index across the whole partitioned table, but rather a template for automatically creating similar indexes on each partition of the table. If the partition key is part of the index's column set, a partitioned index may be declared UNIQUE. It will represent a valid uniqueness constraint across the whole partitioned table, even though each physical index only enforces uniqueness within its own partition. The new command ALTER INDEX ATTACH PARTITION causes an existing index on a partition to be associated with a matching index template for its partitioned table. This provides flexibility in setting up a new partitioned index for an existing partitioned table.", "title": "Support indexes on partitioned tables", "commits": [], "section": "Server / Partitioning", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.2", "source_hash": "09d91f248d197869ecaba39a253217462cad230e134d4fb8c349b4f0439e460e", "section_path": ["Server", "Partitioning"], "commit_groups": [["555ee77a9"], ["8b08f7d48"], ["eb7ed3f30"]], "identity_text": "Support indexes on partitioned tables (Álvaro Herrera, Amit Langote) An index on a partitioned table is not a physical index across the whole partitioned table, but rather a template for automatically creating similar indexes on each partition of the table. If the partition key is part of the index's column set, a partitioned index may be declared UNIQUE. It will represent a valid uniqueness constraint across the whole partitioned table, even though each physical index only enforces uniqueness within its own partition. The new command ALTER INDEX ATTACH PARTITION causes an existing index on a partition to be associated with a matching index template for its partitioned table. This provides flexibility in setting up a new partitioned index for an existing partitioned table.", "commit_aliases": ["555ee77a9", "8b08f7d48", "eb7ed3f30"], "source_commits": ["555ee77a9", "8b08f7d48", "eb7ed3f30"], "source_entry_id": "11.0/changes/002", "db_id": "d72fc05b7d427a4995beac3f67085a53", "patch_ids": ["5ab7dbf3fad9b7142e1a9ebc497b3a04", "a341f869453793cabfee85393430eafe", "ff33867a62dae9d424759786a99d73d1"], "statement_hash": "75e1306aa923c835b68f797a11c28bc5b1a1e1883880ee48a72919b63a62bf3c", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-185e4198bf9f183e", "cves": [], "html": "<p>Allow foreign keys on partitioned tables (Álvaro Herrera)</p>", "text": "Allow foreign keys on partitioned tables (Álvaro Herrera)", "title": "Allow foreign keys on partitioned tables", "commits": [], "section": "Server / Partitioning", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.2", "source_hash": "dc67bc785f7e1778043b758f310adc04b5852b98cdb4a903aeba155d7d10ba9f", "section_path": ["Server", "Partitioning"], "commit_groups": [["3de241dba"]], "identity_text": "Allow foreign keys on partitioned tables (Álvaro Herrera)", "commit_aliases": ["3de241dba"], "source_commits": ["3de241dba"], "source_entry_id": "11.0/changes/003", "db_id": "0c7773820a30b56570d6f95aedfd1133", "patch_ids": ["94ca84cd999984e6a0b8c8ea9b634215"], "statement_hash": "5bd0ab22d8a44ac8754731968e3f4c5e559c0d9a06c5329944cdd698c6f9dbc4", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-74481e55c84136b7", "cves": [], "html": "<p>Allow <code>FOR EACH ROW</code> triggers on partitioned tables (Álvaro Herrera)</p>\n<p>Creation of a trigger on a partitioned table automatically creates triggers on all existing and future partitions. This also allows deferred unique constraints on partitioned tables.</p>", "text": "Allow FOR EACH ROW triggers on partitioned tables (Álvaro Herrera) Creation of a trigger on a partitioned table automatically creates triggers on all existing and future partitions. This also allows deferred unique constraints on partitioned tables.", "title": "Allow FOR EACH ROW triggers on partitioned tables", "commits": [], "section": "Server / Partitioning", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.2", "source_hash": "cd41f776dce1c2c452de71398963679266387c8bf3d67f8d6f3df01c3ce559b3", "section_path": ["Server", "Partitioning"], "commit_groups": [["86f575948"]], "identity_text": "Allow FOR EACH ROW triggers on partitioned tables (Álvaro Herrera) Creation of a trigger on a partitioned table automatically creates triggers on all existing and future partitions. This also allows deferred unique constraints on partitioned tables.", "commit_aliases": ["86f575948"], "source_commits": ["86f575948"], "source_entry_id": "11.0/changes/004", "db_id": "7d6202919b4586a86ada3b9fe59af082", "patch_ids": ["2b43e0cd05fd6b6d7632c98a936ad926"], "statement_hash": "1b03ebef716f00a393887f86f649f7e30c34fe9ffdb5ed2b50e28a8ced284685", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-2ff6cd3047aa6aa2", "cves": [], "html": "<p>Allow partitioned tables to have a default partition (Jeevan Ladhe, Beena Emerson, Ashutosh Bapat, Rahila Syed, Robert Haas)</p>\n<p>The default partition will store rows that don't match any of the other defined partitions, and is searched accordingly.</p>", "text": "Allow partitioned tables to have a default partition (Jeevan Ladhe, Beena Emerson, Ashutosh Bapat, Rahila Syed, Robert Haas) The default partition will store rows that don't match any of the other defined partitions, and is searched accordingly.", "title": "Allow partitioned tables to have a default partition", "commits": [], "section": "Server / Partitioning", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.2", "source_hash": "9d9e2098b2319a321ba73f8de42ec125424bf45c54362e4e4d356446612f607e", "section_path": ["Server", "Partitioning"], "commit_groups": [["6f6b99d13"], ["72cf7f310"]], "identity_text": "Allow partitioned tables to have a default partition (Jeevan Ladhe, Beena Emerson, Ashutosh Bapat, Rahila Syed, Robert Haas) The default partition will store rows that don't match any of the other defined partitions, and is searched accordingly.", "commit_aliases": ["6f6b99d13", "72cf7f310"], "source_commits": ["6f6b99d13", "72cf7f310"], "source_entry_id": "11.0/changes/005", "db_id": "a090353dc7e17740c7bdec216dd25f67", "patch_ids": ["434bfc281b2b0fd143b31d7eaab8272e", "d6b1868800d61b8f4183e57bfe95403e"], "statement_hash": "aed453c47c8a416546140b6e6ebcdaf1acc5acff4d4fb887b0daf143ea385c09", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-3944dd9ead8ce4fe", "cves": [], "html": "<p><code>UPDATE</code> statements that change a partition key column now cause affected rows to be moved to the appropriate partitions (Amit Khandekar)</p>", "text": "UPDATE statements that change a partition key column now cause affected rows to be moved to the appropriate partitions (Amit Khandekar)", "title": "UPDATE statements that change a partition key column now cause affected rows to be moved to the appropriate partitions", "commits": [], "section": "Server / Partitioning", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.2", "source_hash": "94596f6d3bb090343d91f90c6ff6b397eadddd955aab7d7531c5ebcf72e2ccce", "section_path": ["Server", "Partitioning"], "commit_groups": [["2f1784410"]], "identity_text": "UPDATE statements that change a partition key column now cause affected rows to be moved to the appropriate partitions (Amit Khandekar)", "commit_aliases": ["2f1784410"], "source_commits": ["2f1784410"], "source_entry_id": "11.0/changes/006", "db_id": "950d9a12b523abd981f23d93636390d8", "patch_ids": ["0feecd873e1e184b14c0fefaae3b69fb"], "statement_hash": "78b5268f96133fd77fde7c25e6a70aaf9ece45f31b015b6e1191af8b0db09364", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-29dee5b795fa079d", "cves": [], "html": "<p>Allow <code>INSERT</code>, <code>UPDATE</code>, and <code>COPY</code> on partitioned tables to properly route rows to foreign partitions (Etsuro Fujita, Amit Langote)</p>\n<p>This is supported by <code>postgres_fdw</code> foreign tables. Since the <code>ExecForeignInsert</code> callback function is called for this in a different way than it used to be, foreign data wrappers must be modified to cope with this change.</p>", "text": "Allow INSERT, UPDATE, and COPY on partitioned tables to properly route rows to foreign partitions (Etsuro Fujita, Amit Langote) This is supported by postgres_fdw foreign tables. Since the ExecForeignInsert callback function is called for this in a different way than it used to be, foreign data wrappers must be modified to cope with this change.", "title": "Allow INSERT, UPDATE, and COPY on partitioned tables to properly route rows to foreign partitions", "commits": [], "section": "Server / Partitioning", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.2", "source_hash": "f708e373fb2cea9940c751fc9cc0eac09afd27b0c307d046f95227c585ba7ffc", "section_path": ["Server", "Partitioning"], "commit_groups": [["3d956d956"]], "identity_text": "Allow INSERT, UPDATE, and COPY on partitioned tables to properly route rows to foreign partitions (Etsuro Fujita, Amit Langote) This is supported by postgres_fdw foreign tables. Since the ExecForeignInsert callback function is called for this in a different way than it used to be, foreign data wrappers must be modified to cope with this change.", "commit_aliases": ["3d956d956"], "source_commits": ["3d956d956"], "source_entry_id": "11.0/changes/007", "db_id": "b6fc302a95d7e4562a7c1aebdd906e30", "patch_ids": ["4b757543bac150c278156ee58c1bac29"], "statement_hash": "b4e5f0b07d6e96953c54686cbc006e25e46b925e51caee10240c72754078b92f", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-b7357ee2010a39df", "cves": [], "html": "<p>Allow faster partition elimination during query processing (Amit Langote, David Rowley, Dilip Kumar)</p>\n<p>This speeds access to partitioned tables with many partitions.</p>", "text": "Allow faster partition elimination during query processing (Amit Langote, David Rowley, Dilip Kumar) This speeds access to partitioned tables with many partitions.", "title": "Allow faster partition elimination during query processing", "commits": [], "section": "Server / Partitioning", "category": "performance", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.2", "source_hash": "7f642df7b782ddb3cf168bee3ae7796785e4625279f9ae5840d2838ba121e7fb", "section_path": ["Server", "Partitioning"], "commit_groups": [["055fb8d33"], ["9aef17316"], ["9fdb675fc"], ["f724022d0"]], "identity_text": "Allow faster partition elimination during query processing (Amit Langote, David Rowley, Dilip Kumar) This speeds access to partitioned tables with many partitions.", "commit_aliases": ["055fb8d33", "9aef17316", "9fdb675fc", "f724022d0"], "source_commits": ["055fb8d33", "9aef17316", "9fdb675fc", "f724022d0"], "source_entry_id": "11.0/changes/008", "db_id": "04be6fa026234526485799d43b324c90", "patch_ids": ["43f08e14edc9aa39d146e6feed033b5e", "48df2b8793fbd9e9af3599d5123c8ab0", "606557f0940af2073b36c96583ac1c7c", "a21bda5efcbb10a8727735a7d332ff4a"], "statement_hash": "a31961ad07ce3b19c800101372954cd30abd16a9c1a777a5c57ba3625141edd6", "relations": [], "version": "11.0", "category_label": "Performance", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-4ba86d212695cc58", "cves": [], "html": "<p>Allow partition elimination during query execution (David Rowley, Beena Emerson)</p>\n<p>Previously, partition elimination only happened at planning time, meaning many joins and prepared queries could not use partition elimination.</p>", "text": "Allow partition elimination during query execution (David Rowley, Beena Emerson) Previously, partition elimination only happened at planning time, meaning many joins and prepared queries could not use partition elimination.", "title": "Allow partition elimination during query execution", "commits": [], "section": "Server / Partitioning", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.2", "source_hash": "2aab3bab67d46f7fc4ed1bb73cafba823169c33dd0e17894b21e9b584acc2d2d", "section_path": ["Server", "Partitioning"], "commit_groups": [["499be013d"]], "identity_text": "Allow partition elimination during query execution (David Rowley, Beena Emerson) Previously, partition elimination only happened at planning time, meaning many joins and prepared queries could not use partition elimination.", "commit_aliases": ["499be013d"], "source_commits": ["499be013d"], "source_entry_id": "11.0/changes/009", "db_id": "7e8f633201ff318bd320ea749fae06c7", "patch_ids": ["70e0afea6729c77502adb2f42a1048b8"], "statement_hash": "78e23bccb69798ba20a75be445dcb4e4933bab6afdf00adec16a26e1809ef408", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-d7f7e9f625551653", "cves": [], "html": "<p>In an equality join between partitioned tables, allow matching partitions to be joined directly (Ashutosh Bapat)</p>\n<p>This feature is disabled by default but can be enabled by changing <a href=\"/docs/11/runtime-config-query.html#GUC-ENABLE-PARTITIONWISE-JOIN\"><code>enable_partitionwise_join</code></a>.</p>", "text": "In an equality join between partitioned tables, allow matching partitions to be joined directly (Ashutosh Bapat) This feature is disabled by default but can be enabled by changing enable_partitionwise_join.", "title": "In an equality join between partitioned tables, allow matching partitions to be joined directly", "commits": [], "section": "Server / Partitioning", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.2", "source_hash": "505d80d9ec655989b6c957202481ad9c140a07ca87eea0c61c6b4c54e05cd66f", "section_path": ["Server", "Partitioning"], "commit_groups": [["2fb1abaeb"], ["e139f1953"], ["f49842d1e"]], "identity_text": "In an equality join between partitioned tables, allow matching partitions to be joined directly (Ashutosh Bapat) This feature is disabled by default but can be enabled by changing enable_partitionwise_join.", "commit_aliases": ["2fb1abaeb", "e139f1953", "f49842d1e"], "source_commits": ["2fb1abaeb", "e139f1953", "f49842d1e"], "source_entry_id": "11.0/changes/010", "db_id": "9f1dff93addd5e6ccfc1d5cf5bc93924", "patch_ids": ["0148c002d7ca693a052a743d05ecfa5f", "447a1218b7a0008691ae64608e3d0347", "4cce865ecbe08ad30eae3ba4b7cb2473"], "statement_hash": "6d5d2c2e7fb7d79ac1d07cf8eb001c19eba92fde05a378e7e831e6344de2ee00", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-59e66fd01ebd9846", "cves": [], "html": "<p>Allow aggregate functions on partitioned tables to be evaluated separately for each partition, subsequently merging the results (Jeevan Chalke, Ashutosh Bapat, Robert Haas)</p>\n<p>This feature is disabled by default but can be enabled by changing <a href=\"/docs/11/runtime-config-query.html#GUC-ENABLE-PARTITIONWISE-AGGREGATE\"><code>enable_partitionwise_aggregate</code></a>.</p>", "text": "Allow aggregate functions on partitioned tables to be evaluated separately for each partition, subsequently merging the results (Jeevan Chalke, Ashutosh Bapat, Robert Haas) This feature is disabled by default but can be enabled by changing enable_partitionwise_aggregate.", "title": "Allow aggregate functions on partitioned tables to be evaluated separately for each partition, subsequently merging the results", "commits": [], "section": "Server / Partitioning", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.2", "source_hash": "336bf7f0d4876b4637d5843ed841bfb97c5053368f864f1758b8405d080122a5", "section_path": ["Server", "Partitioning"], "commit_groups": [["9fd8b7d63"], ["e2f1eb0ee"]], "identity_text": "Allow aggregate functions on partitioned tables to be evaluated separately for each partition, subsequently merging the results (Jeevan Chalke, Ashutosh Bapat, Robert Haas) This feature is disabled by default but can be enabled by changing enable_partitionwise_aggregate.", "commit_aliases": ["9fd8b7d63", "e2f1eb0ee"], "source_commits": ["9fd8b7d63", "e2f1eb0ee"], "source_entry_id": "11.0/changes/011", "db_id": "44f21364e31dfd8522d7a01889731157", "patch_ids": ["3bef689ffc2a98f5414ffd72f4033088", "87c6820de261a5d378c20c4ba3f23d19"], "statement_hash": "56df2f82008c99f2a7623254ca73cfdd6035b60b20adccf4448698ac9c204974", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-0dae33fe3226efba", "cves": [], "html": "<p>Allow <a href=\"/docs/11/postgres-fdw.html\" title=\"F.33. postgres_fdw\"><code>postgres_fdw</code></a> to push down aggregates to foreign tables that are partitions (Jeevan Chalke)</p>", "text": "Allow postgres_fdw to push down aggregates to foreign tables that are partitions (Jeevan Chalke)", "title": "Allow postgres_fdw to push down aggregates to foreign tables that are partitions", "commits": [], "section": "Server / Partitioning", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.2", "source_hash": "fbf833ecf1f1a2407438032a4ba5d94b057b83298e3c3a531030b8f1d23fa086", "section_path": ["Server", "Partitioning"], "commit_groups": [["7e0d64c7a"]], "identity_text": "Allow postgres_fdw to push down aggregates to foreign tables that are partitions (Jeevan Chalke)", "commit_aliases": ["7e0d64c7a"], "source_commits": ["7e0d64c7a"], "source_entry_id": "11.0/changes/012", "db_id": "aa51051328181541cd022765486fa6c5", "patch_ids": ["60052ed7971443c33c8e4a78ff70f193"], "statement_hash": "c41b12e3c7db8df08ae6d10522b587b74acde453d4f7ccb4c893117521929865", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-13cfd9760ca6fc8e", "cves": [], "html": "<p>Allow parallel building of a btree index (Peter Geoghegan, Rushabh Lathia, Heikki Linnakangas)</p>", "text": "Allow parallel building of a btree index (Peter Geoghegan, Rushabh Lathia, Heikki Linnakangas)", "title": "Allow parallel building of a btree index", "commits": [], "section": "Server / Parallel Queries", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.3", "source_hash": "db1cde0d14ee2d0513ea8231c9ee5e4b638a0205981f862f8cd4e941173aeab5", "section_path": ["Server", "Parallel Queries"], "commit_groups": [["9da0cc352"]], "identity_text": "Allow parallel building of a btree index (Peter Geoghegan, Rushabh Lathia, Heikki Linnakangas)", "commit_aliases": ["9da0cc352"], "source_commits": ["9da0cc352"], "source_entry_id": "11.0/changes/013", "db_id": "ebebcb159958434c7a70968c23e45efa", "patch_ids": ["2c9c56459f484ad9645918bc5f548db7"], "statement_hash": "38142ba29149c0a51365408497f76dd359050b4781d2dc8217f27272786ccf88", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-17653d4fc11d35fd", "cves": [], "html": "<p>Allow hash joins to be performed in parallel using a shared hash table (Thomas Munro)</p>", "text": "Allow hash joins to be performed in parallel using a shared hash table (Thomas Munro)", "title": "Allow hash joins to be performed in parallel using a shared hash table", "commits": [], "section": "Server / Parallel Queries", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.3", "source_hash": "d11762aa88afbc10ebc63c7eed2512e24eb7b869384b2be50f80b74269bba3b8", "section_path": ["Server", "Parallel Queries"], "commit_groups": [["180428404"]], "identity_text": "Allow hash joins to be performed in parallel using a shared hash table (Thomas Munro)", "commit_aliases": ["180428404"], "source_commits": ["180428404"], "source_entry_id": "11.0/changes/014", "db_id": "31c36b3f68c262b2ed036aa00cf5080f", "patch_ids": ["3231d47f627676812da6968fb733723b"], "statement_hash": "433681317904435eb293602ed6bb0c77e69dff46d8a42deeb7efc78697cbd0f9", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-2d20d6ee8c97b06a", "cves": [], "html": "<p>Allow <code>UNION</code> to run each <code>SELECT</code> in parallel if the individual <code>SELECT</code>s cannot be parallelized (Amit Khandekar, Robert Haas, Amul Sul)</p>", "text": "Allow UNION to run each SELECT in parallel if the individual SELECTs cannot be parallelized (Amit Khandekar, Robert Haas, Amul Sul)", "title": "Allow UNION to run each SELECT in parallel if the individual SELECTs cannot be parallelized", "commits": [], "section": "Server / Parallel Queries", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.3", "source_hash": "0b55cb2b1296bb43c85a3acf8ca76220c9b51a193e5d97344c18196018e0dbd2", "section_path": ["Server", "Parallel Queries"], "commit_groups": [["88ba0ae2a"], ["ab7271677"]], "identity_text": "Allow UNION to run each SELECT in parallel if the individual SELECTs cannot be parallelized (Amit Khandekar, Robert Haas, Amul Sul)", "commit_aliases": ["88ba0ae2a", "ab7271677"], "source_commits": ["88ba0ae2a", "ab7271677"], "source_entry_id": "11.0/changes/015", "db_id": "9ab18149bf30a44705b6fa2b2403debe", "patch_ids": ["457c25b7a415826ca03aceac35deb1f2", "c400bcb186f456151e538f876d061e4c"], "statement_hash": "750d99fe8ada34b14751dbd07736e10c363777e70a1405cc8b9bc85b6682486a", "relations": [{"rule": 2, "type": "related", "target": "5b4957aa1d555480e40c68785e28f2b2", "evidence": {"same_day": true, "patch_ids": ["457c25b7a415826ca03aceac35deb1f2", "c400bcb186f456151e538f876d061e4c"], "ambiguous_patch_ids": ["457c25b7a415826ca03aceac35deb1f2", "c400bcb186f456151e538f876d061e4c"]}}], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": [{"db_id": "5b4957aa1d555480e40c68785e28f2b2", "kind": "related", "version": "11.0", "label": "11.0", "title": "Allow partition scans to more efficiently use parallel workers", "evidence": {"same_day": true, "patch_ids": ["457c25b7a415826ca03aceac35deb1f2", "c400bcb186f456151e538f876d061e4c"], "ambiguous_patch_ids": ["457c25b7a415826ca03aceac35deb1f2", "c400bcb186f456151e538f876d061e4c"]}, "url": "/docs/compare/?release=11.0#11.0-92f1dec8cd1e377a", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.3"}]}, {"id": "11.0-92f1dec8cd1e377a", "cves": [], "html": "<p>Allow partition scans to more efficiently use parallel workers (Amit Khandekar, Robert Haas, Amul Sul)</p>", "text": "Allow partition scans to more efficiently use parallel workers (Amit Khandekar, Robert Haas, Amul Sul)", "title": "Allow partition scans to more efficiently use parallel workers", "commits": [], "section": "Server / Parallel Queries", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.3", "source_hash": "ceeddd9150462be93a5bc2af2afb7683b54e2ff2f93081dfe923d974fd8bd8de", "section_path": ["Server", "Parallel Queries"], "commit_groups": [["88ba0ae2a"], ["ab7271677"]], "identity_text": "Allow partition scans to more efficiently use parallel workers (Amit Khandekar, Robert Haas, Amul Sul)", "commit_aliases": ["88ba0ae2a", "ab7271677"], "source_commits": ["88ba0ae2a", "ab7271677"], "source_entry_id": "11.0/changes/016", "db_id": "5b4957aa1d555480e40c68785e28f2b2", "patch_ids": ["457c25b7a415826ca03aceac35deb1f2", "c400bcb186f456151e538f876d061e4c"], "statement_hash": "ec2ed8211c34a41619081f1957d1c4a9a7a8755aa8298b747a37851b1ec69cd8", "relations": [{"rule": 2, "type": "related", "target": "9ab18149bf30a44705b6fa2b2403debe", "evidence": {"same_day": true, "patch_ids": ["457c25b7a415826ca03aceac35deb1f2", "c400bcb186f456151e538f876d061e4c"], "ambiguous_patch_ids": ["457c25b7a415826ca03aceac35deb1f2", "c400bcb186f456151e538f876d061e4c"]}}], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": [{"db_id": "9ab18149bf30a44705b6fa2b2403debe", "kind": "related", "version": "11.0", "label": "11.0", "title": "Allow UNION to run each SELECT in parallel if the individual SELECTs cannot be parallelized", "evidence": {"same_day": true, "patch_ids": ["457c25b7a415826ca03aceac35deb1f2", "c400bcb186f456151e538f876d061e4c"], "ambiguous_patch_ids": ["457c25b7a415826ca03aceac35deb1f2", "c400bcb186f456151e538f876d061e4c"]}, "url": "/docs/compare/?release=11.0#11.0-2d20d6ee8c97b06a", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.3"}]}, {"id": "11.0-a1fc32442584e363", "cves": [], "html": "<p>Allow <code>LIMIT</code> to be passed to parallel workers (Robert Haas, Tom Lane)</p>\n<p>This allows workers to reduce returned results and use targeted index scans.</p>", "text": "Allow LIMIT to be passed to parallel workers (Robert Haas, Tom Lane) This allows workers to reduce returned results and use targeted index scans.", "title": "Allow LIMIT to be passed to parallel workers", "commits": [], "section": "Server / Parallel Queries", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.3", "source_hash": "d590d55b923012dc29e2732ed6a6f3942308bea790764414a940b800e5ab8ffd", "section_path": ["Server", "Parallel Queries"], "commit_groups": [["3452dc524"]], "identity_text": "Allow LIMIT to be passed to parallel workers (Robert Haas, Tom Lane) This allows workers to reduce returned results and use targeted index scans.", "commit_aliases": ["3452dc524"], "source_commits": ["3452dc524"], "source_entry_id": "11.0/changes/017", "db_id": "30df37453e20ca98232664b124039f4b", "patch_ids": ["1be8b1adc84325ccba41b724023c2e8b"], "statement_hash": "d0e795a7c3b810f98b7c28a67b1142d1cf0c7d0e112cdee0eaa80a9674afd95e", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-21cbc1967fb0c6e1", "cves": [], "html": "<p>Allow single-evaluation queries, e.g., <code>WHERE</code> clause aggregate queries, and functions in the target list to be parallelized (Amit Kapila, Robert Haas)</p>", "text": "Allow single-evaluation queries, e.g., WHERE clause aggregate queries, and functions in the target list to be parallelized (Amit Kapila, Robert Haas)", "title": "Allow single-evaluation queries, e.g., WHERE clause aggregate queries, and functions in the target list to be parallelized", "commits": [], "section": "Server / Parallel Queries", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.3", "source_hash": "26ce97bf6117ae138a57a9824b94dde5bcabad9c72913c97ddce6aea2368fd85", "section_path": ["Server", "Parallel Queries"], "commit_groups": [["11cf92f6e"], ["3f90ec859"], ["e89a71fb4"]], "identity_text": "Allow single-evaluation queries, e.g., WHERE clause aggregate queries, and functions in the target list to be parallelized (Amit Kapila, Robert Haas)", "commit_aliases": ["11cf92f6e", "3f90ec859", "e89a71fb4"], "source_commits": ["11cf92f6e", "3f90ec859", "e89a71fb4"], "source_entry_id": "11.0/changes/018", "db_id": "6921601e548922177857c5d9a863b97e", "patch_ids": ["65f46529ac0e5b9a09541c2a835f00c8", "84107a026ee9a9c573a3d0417c5f2707", "9325816eb6a477aa09aac32dcf9ddab4"], "statement_hash": "090239b014323f30bccaf0ee12de27a755e1aab44aba5cbaa4ad19330bd0eb87", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-0986e21ced78fc5b", "cves": [], "html": "<p>Add server parameter <a href=\"/docs/11/runtime-config-query.html#GUC-PARALLEL-LEADER-PARTICIPATION\"><code>parallel_leader_participation</code></a> to control whether the leader also executes subplans (Thomas Munro)</p>\n<p>The default is enabled, meaning the leader will execute subplans.</p>", "text": "Add server parameter parallel_leader_participation to control whether the leader also executes subplans (Thomas Munro) The default is enabled, meaning the leader will execute subplans.", "title": "Add server parameter parallel_leader_participation to control whether the leader also executes subplans", "commits": [], "section": "Server / Parallel Queries", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.3", "source_hash": "794ce133d5cac0266f8545c6981f9faee1ab00872b7454600b97c200e2df1248", "section_path": ["Server", "Parallel Queries"], "commit_groups": [["e5253fdc4"]], "identity_text": "Add server parameter parallel_leader_participation to control whether the leader also executes subplans (Thomas Munro) The default is enabled, meaning the leader will execute subplans.", "commit_aliases": ["e5253fdc4"], "source_commits": ["e5253fdc4"], "source_entry_id": "11.0/changes/019", "db_id": "b134e0a76a7aee98a1afcac2792b8de4", "patch_ids": ["01e563d1799001dfd99ef9fe35b40c37"], "statement_hash": "b91357664ec5d7f37fb805c30cf11e2b16b3f20107382d65f389037fc723dfc3", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-76809852bb315102", "cves": [], "html": "<p>Allow parallelization of commands <code>CREATE TABLE ... AS</code>, <code>SELECT INTO</code>, and <code>CREATE MATERIALIZED VIEW</code> (Haribabu Kommi)</p>", "text": "Allow parallelization of commands CREATE TABLE ... AS, SELECT INTO, and CREATE MATERIALIZED VIEW (Haribabu Kommi)", "title": "Allow parallelization of commands CREATE TABLE ... AS, SELECT INTO, and CREATE MATERIALIZED VIEW", "commits": [], "section": "Server / Parallel Queries", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.3", "source_hash": "b5519faedd277dbf9e180830abb76664eb3480a61b27f0292687f838e5295e35", "section_path": ["Server", "Parallel Queries"], "commit_groups": [["e9baa5e9f"]], "identity_text": "Allow parallelization of commands CREATE TABLE ... AS, SELECT INTO, and CREATE MATERIALIZED VIEW (Haribabu Kommi)", "commit_aliases": ["e9baa5e9f"], "source_commits": ["e9baa5e9f"], "source_entry_id": "11.0/changes/020", "db_id": "ad309561a89639a6aa19395b36c923f2", "patch_ids": ["150f122ba1d6744993080a89f415a61c"], "statement_hash": "94d2055493d8e577193e80e94ff856533fea901202e0835a3454b624c816deb6", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-8cff8aa01cbeb111", "cves": [], "html": "<p>Improve performance of sequential scans with many parallel workers (David Rowley)</p>", "text": "Improve performance of sequential scans with many parallel workers (David Rowley)", "title": "Improve performance of sequential scans with many parallel workers", "commits": [], "section": "Server / Parallel Queries", "category": "performance", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.3", "source_hash": "c62c76641150bf17c2599909498c957e4fe0906808eae9cb6052570f6ab8e5c7", "section_path": ["Server", "Parallel Queries"], "commit_groups": [["3cda10f41"]], "identity_text": "Improve performance of sequential scans with many parallel workers (David Rowley)", "commit_aliases": ["3cda10f41"], "source_commits": ["3cda10f41"], "source_entry_id": "11.0/changes/021", "db_id": "98bbf7f7cdf8dd1962475e9ab5f9deee", "patch_ids": ["b14f13b397af28878149f0eb50c883c2"], "statement_hash": "bdada06eadb287e076c383460c1ca8494141bd9499a43a5975a407c22f0d8431", "relations": [], "version": "11.0", "category_label": "Performance", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-d6ccc5300ab8f3b9", "cves": [], "html": "<p>Add reporting of parallel workers' sort activity in <code>EXPLAIN</code> (Robert Haas, Tom Lane)</p>", "text": "Add reporting of parallel workers' sort activity in EXPLAIN (Robert Haas, Tom Lane)", "title": "Add reporting of parallel workers' sort activity in EXPLAIN", "commits": [], "section": "Server / Parallel Queries", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.3", "source_hash": "1c09c7648298d38d4ca1bfc43b8b1d1a524b164df3ca610583e65190d78ff95d", "section_path": ["Server", "Parallel Queries"], "commit_groups": [["bf11e7ee2"]], "identity_text": "Add reporting of parallel workers' sort activity in EXPLAIN (Robert Haas, Tom Lane)", "commit_aliases": ["bf11e7ee2"], "source_commits": ["bf11e7ee2"], "source_entry_id": "11.0/changes/022", "db_id": "ff7af4478826195e22223dc3a5e41588", "patch_ids": ["b15bea951f332f2a4f5f9c2056ed4964"], "statement_hash": "0677e46819b901aba318420833485f71a2163dbef4261549cbee4c578fb60605", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-df858d01ae18cdc2", "cves": [], "html": "<p>Allow B-tree indexes to include columns that are not part of the search key or unique constraint, but are available to be read by index-only scans (Anastasia Lubennikova, Alexander Korotkov, Teodor Sigaev)</p>\n<p>This is enabled by the new <code>INCLUDE</code> clause of <a href=\"/docs/11/sql-createindex.html\" title=\"CREATE INDEX\"><code>CREATE INDEX</code></a>. It facilitates building <span>“<span>covering indexes</span>”</span> that optimize specific types of queries. Columns can be included even if their data types don't have B-tree support.</p>", "text": "Allow B-tree indexes to include columns that are not part of the search key or unique constraint, but are available to be read by index-only scans (Anastasia Lubennikova, Alexander Korotkov, Teodor Sigaev) This is enabled by the new INCLUDE clause of CREATE INDEX. It facilitates building “covering indexes” that optimize specific types of queries. Columns can be included even if their data types don't have B-tree support.", "title": "Allow B-tree indexes to include columns that are not part of the search key or unique constraint, but are available to be read by index-only scans", "commits": [], "section": "Server / Indexes", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.4", "source_hash": "87c127880b7adabebf856b5bdb9f8ba90b4991cb42a650dac1858fb97843fd0f", "section_path": ["Server", "Indexes"], "commit_groups": [["8224de4f4"]], "identity_text": "Allow B-tree indexes to include columns that are not part of the search key or unique constraint, but are available to be read by index-only scans (Anastasia Lubennikova, Alexander Korotkov, Teodor Sigaev) This is enabled by the new INCLUDE clause of CREATE INDEX. It facilitates building covering indexes that optimize specific types of queries. Columns can be included even if their data types don't have B-tree support.", "commit_aliases": ["8224de4f4"], "source_commits": ["8224de4f4"], "source_entry_id": "11.0/changes/023", "db_id": "325771f1f09193edbacc69d41276c27a", "patch_ids": ["bfb5abdd25d6d89590c8f1a81a47ef5c"], "statement_hash": "5195f56fc97b0d06c83c3fa2d21e0adc16582152f35da5063bca358fe67318ea", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-0f0557d42cfb38e8", "cves": [], "html": "<p>Improve performance of monotonically increasing index additions (Pavan Deolasee, Peter Geoghegan)</p>", "text": "Improve performance of monotonically increasing index additions (Pavan Deolasee, Peter Geoghegan)", "title": "Improve performance of monotonically increasing index additions", "commits": [], "section": "Server / Indexes", "category": "performance", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.4", "source_hash": "8b797f071f1c8a7e58ddce756a6c4b742b4fb9bba551e89dc80e5ef4482f5181", "section_path": ["Server", "Indexes"], "commit_groups": [["074251db6"], ["2b2727343"]], "identity_text": "Improve performance of monotonically increasing index additions (Pavan Deolasee, Peter Geoghegan)", "commit_aliases": ["074251db6", "2b2727343"], "source_commits": ["074251db6", "2b2727343"], "source_entry_id": "11.0/changes/024", "db_id": "0a2c17b4f262ca2cbf31e08a86f28b64", "patch_ids": ["8291df90338ca33ba8bd74f6ef15f9c4", "96d574c1377b5e0b2212470971aed433"], "statement_hash": "7020dab0076cc612ced27f2276826615f33675938ad21ef3bb11a0805a3f6a54", "relations": [], "version": "11.0", "category_label": "Performance", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-8a77a2cc14f0e83c", "cves": [], "html": "<p>Improve performance of hash index scans (Ashutosh Sharma)</p>", "text": "Improve performance of hash index scans (Ashutosh Sharma)", "title": "Improve performance of hash index scans", "commits": [], "section": "Server / Indexes", "category": "performance", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.4", "source_hash": "2e45c1dbbd6985d3e5202b267405f61340b7d7f47064b1a1844c630a9537a22b", "section_path": ["Server", "Indexes"], "commit_groups": [["7c75ef571"]], "identity_text": "Improve performance of hash index scans (Ashutosh Sharma)", "commit_aliases": ["7c75ef571"], "source_commits": ["7c75ef571"], "source_entry_id": "11.0/changes/025", "db_id": "f9beb9582e618a52d28ddab461ed1fe7", "patch_ids": ["390439a03f9f19fbf9aebf5352b4557f"], "statement_hash": "4b62f17e465249d53d3e410f97852643353e94a638947f0a4c4f89f83a64a62b", "relations": [], "version": "11.0", "category_label": "Performance", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-e1589fe63297c5f4", "cves": [], "html": "<p>Add predicate locking for hash, GiST and GIN indexes (Shubham Barai)</p>\n<p>This reduces the likelihood of serialization conflicts in serializable-mode transactions.</p>", "text": "Add predicate locking for hash, GiST and GIN indexes (Shubham Barai) This reduces the likelihood of serialization conflicts in serializable-mode transactions.", "title": "Add predicate locking for hash, GiST and GIN indexes", "commits": [], "section": "Server / Indexes", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.4", "source_hash": "347646bfcfbb4666f75d6b10e9e221d38d8b9c2475a1524b42fd72085228c68a", "section_path": ["Server", "Indexes"], "commit_groups": [["3ad55863e"], ["43d1ed60f"], ["b508a56f2"]], "identity_text": "Add predicate locking for hash, GiST and GIN indexes (Shubham Barai) This reduces the likelihood of serialization conflicts in serializable-mode transactions.", "commit_aliases": ["3ad55863e", "43d1ed60f", "b508a56f2"], "source_commits": ["3ad55863e", "43d1ed60f", "b508a56f2"], "source_entry_id": "11.0/changes/026", "db_id": "56d4ff9224e92787bc5b133c0439a804", "patch_ids": ["51712d8aa268bfd72afe25c8101eeb2c", "cabe231e7f9494b1182875f43b9c5fa1", "f336752de7832a5a32d0e9566bbc1f55"], "statement_hash": "a2a55f03f5bc9d8b2bad0415f9b49e75774ccae0af5cc8270d62a5675ee420f1", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-5a3cb2da0e27f395", "cves": [], "html": "<p>Add prefix-match operator <code>text</code> <code>^@</code> <code>text</code>, which is supported by SP-GiST (Ildus Kurbangaliev)</p>\n<p>This is similar to using <em><code>var</code></em> <code>LIKE 'word%'</code> with a btree index, but it is more efficient.</p>", "text": "Add prefix-match operator text ^@ text, which is supported by SP-GiST (Ildus Kurbangaliev) This is similar to using var LIKE 'word%' with a btree index, but it is more efficient.", "title": "Add prefix-match operator text ^@ text, which is supported by SP-GiST", "commits": [], "section": "Server / Indexes / SP-Gist", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.4.3", "source_hash": "e5975e818d72191abde477f490cea447e153c3636583d66c8d7180bff2d9aee1", "section_path": ["Server", "Indexes", "SP-Gist"], "commit_groups": [["710d90da1"]], "identity_text": "Add prefix-match operator text ^@ text, which is supported by SP-GiST (Ildus Kurbangaliev) This is similar to using var LIKE 'word%' with a btree index, but it is more efficient.", "commit_aliases": ["710d90da1"], "source_commits": ["710d90da1"], "source_entry_id": "11.0/changes/027", "db_id": "46320fa8a8deeaaa533d724513600f68", "patch_ids": ["3e3aafa6df61dfbb37d7239e673e5daf"], "statement_hash": "ec9c89c21ae50c83076bc15b97cd2144a8c9fd620064cafdf34f727ceff707bf", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-a37fd2a9b4520054", "cves": [], "html": "<p>Allow polygons to be indexed with SP-GiST (Nikita Glukhov, Alexander Korotkov)</p>", "text": "Allow polygons to be indexed with SP-GiST (Nikita Glukhov, Alexander Korotkov)", "title": "Allow polygons to be indexed with SP-GiST", "commits": [], "section": "Server / Indexes / SP-Gist", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.4.3", "source_hash": "4b97263a7e19682c270e260a8efe02c5ba14faa94bddd354aaddca0f2aff51ba", "section_path": ["Server", "Indexes", "SP-Gist"], "commit_groups": [["ff963b393"]], "identity_text": "Allow polygons to be indexed with SP-GiST (Nikita Glukhov, Alexander Korotkov)", "commit_aliases": ["ff963b393"], "source_commits": ["ff963b393"], "source_entry_id": "11.0/changes/028", "db_id": "6be9a520a242153b75eebfbba4588589", "patch_ids": ["d495145a3de97e76dd0322c0133acc45"], "statement_hash": "2a543c7819b7fdd499e0f23e17345cd5bcc80f6f4b2afe955c689f400b98ce32", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-5b38bcb186e5ceba", "cves": [], "html": "<p>Allow SP-GiST to use lossy representation of leaf keys (Teodor Sigaev, Heikki Linnakangas, Alexander Korotkov, Nikita Glukhov)</p>", "text": "Allow SP-GiST to use lossy representation of leaf keys (Teodor Sigaev, Heikki Linnakangas, Alexander Korotkov, Nikita Glukhov)", "title": "Allow SP-GiST to use lossy representation of leaf keys", "commits": [], "section": "Server / Indexes / SP-Gist", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.4.3", "source_hash": "934e662cc299f46f3d66e15d86fedb656e31911d39f1e9c52b5d1804b30864b2", "section_path": ["Server", "Indexes", "SP-Gist"], "commit_groups": [["854823fa3"]], "identity_text": "Allow SP-GiST to use lossy representation of leaf keys (Teodor Sigaev, Heikki Linnakangas, Alexander Korotkov, Nikita Glukhov)", "commit_aliases": ["854823fa3"], "source_commits": ["854823fa3"], "source_entry_id": "11.0/changes/029", "db_id": "92b6279f35dba8bb5f148642d5b113e2", "patch_ids": ["8f2ec9b90cb397c84384c01087623f9d"], "statement_hash": "6231f1fbbafb16e4353b03b7bc06d2b364386735502856f50ffe93768b491030", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-1b67ce4fc9d85658", "cves": [], "html": "<p>Improve selection of the most common values for statistics (Jeff Janes, Dean Rasheed)</p>\n<p>Previously, the most common values (<acronym>MCV</acronym>s) were identified based on their frequency compared to all column values. Now, <acronym>MCV</acronym>s are chosen based on their frequency compared to the non-<acronym>MCV</acronym> values. This improves the robustness of the algorithm for both uniform and non-uniform distributions.</p>", "text": "Improve selection of the most common values for statistics (Jeff Janes, Dean Rasheed) Previously, the most common values (MCVs) were identified based on their frequency compared to all column values. Now, MCVs are chosen based on their frequency compared to the non-MCV values. This improves the robustness of the algorithm for both uniform and non-uniform distributions.", "title": "Improve selection of the most common values for statistics", "commits": [], "section": "Server / Optimizer", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.5", "source_hash": "10ab43b7e90578617411a30b09731f72b935cdc22732f17e6a9bdbd9a6a18e6f", "section_path": ["Server", "Optimizer"], "commit_groups": [["b5db1d93d"]], "identity_text": "Improve selection of the most common values for statistics (Jeff Janes, Dean Rasheed) Previously, the most common values (MCVs) were identified based on their frequency compared to all column values. Now, MCVs are chosen based on their frequency compared to the non-MCV values. This improves the robustness of the algorithm for both uniform and non-uniform distributions.", "commit_aliases": ["b5db1d93d"], "source_commits": ["b5db1d93d"], "source_entry_id": "11.0/changes/030", "db_id": "c77333ec171bc43be04e4dafa9d0c35b", "patch_ids": ["e46d4e93a2e3aacd9a08bb2b6bcb47a3"], "statement_hash": "89dbd93d9935ba3283605c3b4868d0bc6a7739e43d0b237979fa31ba89cf0d12", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-6d100988719012af", "cves": [], "html": "<p>Improve selectivity estimates for <code>&gt;=</code> and <code>&lt;=</code> (Tom Lane)</p>\n<p>Previously, such cases used the same selectivity estimates as <code>&gt;</code> and <code>&lt;</code>, respectively, unless the comparison constants are <acronym>MCV</acronym>s. This change is particularly helpful for queries involving <code>BETWEEN</code> with small ranges.</p>", "text": "Improve selectivity estimates for >= and <= (Tom Lane) Previously, such cases used the same selectivity estimates as > and <, respectively, unless the comparison constants are MCVs. This change is particularly helpful for queries involving BETWEEN with small ranges.", "title": "Improve selectivity estimates for >= and <=", "commits": [], "section": "Server / Optimizer", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.5", "source_hash": "090fa160ccb0ca59724d042f1a3c44f53011320b592388f5c45aff2569644dc1", "section_path": ["Server", "Optimizer"], "commit_groups": [["7d08ce286"]], "identity_text": "Improve selectivity estimates for >= and <= (Tom Lane) Previously, such cases used the same selectivity estimates as > and <, respectively, unless the comparison constants are MCVs. This change is particularly helpful for queries involving BETWEEN with small ranges.", "commit_aliases": ["7d08ce286"], "source_commits": ["7d08ce286"], "source_entry_id": "11.0/changes/031", "db_id": "0b3334bf981ded75cf45d021f530d940", "patch_ids": ["40b1a8f4b28c2b3736ba00fb0482b532"], "statement_hash": "e7f1a38caa4a012087f9302ef675dd2445064f3cb50d73fea8e04fa7aee33ca0", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-1ec8d2d707f41d9b", "cves": [], "html": "<p>Reduce <em><code>var</code></em> <code>=</code> <em><code>var</code></em> to <em><code>var</code></em> <code>IS NOT NULL</code> where equivalent (Tom Lane)</p>\n<p>This leads to better selectivity estimates.</p>", "text": "Reduce var = var to var IS NOT NULL where equivalent (Tom Lane) This leads to better selectivity estimates.", "title": "Reduce var = var to var IS NOT NULL where equivalent", "commits": [], "section": "Server / Optimizer", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.5", "source_hash": "0f3f8bf24f025674077e3649a68c2525a73e800523d4da1e2167f9dbff07aafd", "section_path": ["Server", "Optimizer"], "commit_groups": [["8ec5429e2"]], "identity_text": "Reduce var = var to var IS NOT NULL where equivalent (Tom Lane) This leads to better selectivity estimates.", "commit_aliases": ["8ec5429e2"], "source_commits": ["8ec5429e2"], "source_entry_id": "11.0/changes/032", "db_id": "f502793100de87c3464c2c49ea723ea0", "patch_ids": ["dacc2d199e6c2e60c0492e312eabfdba"], "statement_hash": "3bb7d6a4177ae8a51bac6fe0c13f693d48b8d778812f8e9244428563253f5625", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-b07d9fb0172c0158", "cves": [], "html": "<p>Improve optimizer's row count estimates for <code>EXISTS</code> and <code>NOT EXISTS</code> queries (Tom Lane)</p>", "text": "Improve optimizer's row count estimates for EXISTS and NOT EXISTS queries (Tom Lane)", "title": "Improve optimizer's row count estimates for EXISTS and NOT EXISTS queries", "commits": [], "section": "Server / Optimizer", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.5", "source_hash": "908db9e44d74c344eb305ccdaea254c4e522d2b45c69430f07b9fddbc60a5f3a", "section_path": ["Server", "Optimizer"], "commit_groups": [["7ca25b7de"]], "identity_text": "Improve optimizer's row count estimates for EXISTS and NOT EXISTS queries (Tom Lane)", "commit_aliases": ["7ca25b7de"], "source_commits": ["7ca25b7de"], "source_entry_id": "11.0/changes/033", "db_id": "3b77a42da87058878d3f8c2bad1bf641", "patch_ids": ["6e2ea6da93bee89ca8a2c222e89f9171"], "statement_hash": "7ea93b3b1546cb08db73d8001dd171d4995f52fef196b80fb1f91089d1e1c4f4", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-96e927bf4ae5321f", "cves": [], "html": "<p>Make the optimizer account for evaluation costs and selectivity of <code>HAVING</code> clauses (Tom Lane)</p>", "text": "Make the optimizer account for evaluation costs and selectivity of HAVING clauses (Tom Lane)", "title": "Make the optimizer account for evaluation costs and selectivity of HAVING clauses", "commits": [], "section": "Server / Optimizer", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.5", "source_hash": "891acf201d79c06b5b6bc78dbbdfddc490b08475d6260f4d0c1173aa0c7ec926", "section_path": ["Server", "Optimizer"], "commit_groups": [["7b6c07547"]], "identity_text": "Make the optimizer account for evaluation costs and selectivity of HAVING clauses (Tom Lane)", "commit_aliases": ["7b6c07547"], "source_commits": ["7b6c07547"], "source_entry_id": "11.0/changes/034", "db_id": "052751c55c90337df824376b3c705a83", "patch_ids": ["baf0f860793fca5df09360ec5584f58a"], "statement_hash": "e32870aaeefeebb49a20b88ac4468b08be0e48af609f71c3371afb5c47a5766d", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-d4e0ae3615647eee", "cves": [], "html": "<p>Add <a href=\"/docs/11/jit.html\" title=\"Chapter 32. Just-in-Time Compilation (JIT)\">Just-in-Time</a> (<acronym>JIT</acronym>) compilation of some parts of query plans to improve execution speed (Andres Freund)</p>\n<p>This feature requires <span>LLVM</span> to be available. It is not currently enabled by default, even in builds that support it.</p>", "text": "Add Just-in-Time (JIT) compilation of some parts of query plans to improve execution speed (Andres Freund) This feature requires LLVM to be available. It is not currently enabled by default, even in builds that support it.", "title": "Add Just-in-Time (JIT) compilation of some parts of query plans to improve execution speed", "commits": [], "section": "Server / General Performance", "category": "performance", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.6", "source_hash": "7113bf4da653975a08301a40ad892f415ed572c16d58a9889dbec4db6e947376", "section_path": ["Server", "General Performance"], "commit_groups": [["0fdadfb01"], ["32af96b2b"], ["432bb9e04"], ["9370462e9"], ["b96d550eb"], ["cc415a56d"], ["f4f5845b3"]], "identity_text": "Add Just-in-Time (JIT) compilation of some parts of query plans to improve execution speed (Andres Freund) This feature requires LLVM to be available. It is not currently enabled by default, even in builds that support it.", "commit_aliases": ["0fdadfb01", "32af96b2b", "432bb9e04", "9370462e9", "b96d550eb", "cc415a56d", "f4f5845b3"], "source_commits": ["0fdadfb01", "32af96b2b", "432bb9e04", "9370462e9", "b96d550eb", "cc415a56d", "f4f5845b3"], "source_entry_id": "11.0/changes/035", "db_id": "f5aa0e68c7bb86ea988d9629a59e39b7", "patch_ids": ["04a274b866c80eebad3a30af5cbb12e4", "43c5b65c52a6d29a9ca45b1db25bc1bf", "4da261a19858bd649076a90e04ee448d", "4f1617e0f9afec0375f9e30035939be7", "661d5108f639ab722bb541e9841e5edf", "dc124cfb0ef67126a9c06e536b2b9986", "f6fd992546ccbc05f174abb1796e6aa1"], "statement_hash": "cd4ada7658f0e7adb0764a4b0ef5cecd34aa92798c5cf4c93a0dfa5d0c3ad733", "relations": [], "version": "11.0", "category_label": "Performance", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-34808ea1a0c5ac12", "cves": [], "html": "<p>Allow bitmap scans to perform index-only scans when possible (Alexander Kuzmenkov)</p>", "text": "Allow bitmap scans to perform index-only scans when possible (Alexander Kuzmenkov)", "title": "Allow bitmap scans to perform index-only scans when possible", "commits": [], "section": "Server / General Performance", "category": "performance", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.6", "source_hash": "eb40b6dd6abde2a00dd8680972cb51da09b06f99a0a284faa3e78f50ba4568d8", "section_path": ["Server", "General Performance"], "commit_groups": [["7c70996eb"]], "identity_text": "Allow bitmap scans to perform index-only scans when possible (Alexander Kuzmenkov)", "commit_aliases": ["7c70996eb"], "source_commits": ["7c70996eb"], "source_entry_id": "11.0/changes/036", "db_id": "cdc84ae14a90b8f8f74e98d7e9f60cbf", "patch_ids": ["14ddb409be3f6465527dcb705962e11d"], "statement_hash": "f0583b530831e72163b7f48bdfdf8b23deefacc92ea563dff9ffae66833c7f7b", "relations": [], "version": "11.0", "category_label": "Performance", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-11154d7b93ee730f", "cves": [], "html": "<p>Update the free space map during <code>VACUUM</code> (Claudio Freire)</p>\n<p>This allows free space to be reused more quickly.</p>", "text": "Update the free space map during VACUUM (Claudio Freire) This allows free space to be reused more quickly.", "title": "Update the free space map during VACUUM", "commits": [], "section": "Server / General Performance", "category": "performance", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.6", "source_hash": "5cf5dbc6f367bd7329ffee73b644d9d3f51ec5f11c9fcb816a4c7ca1f4e2852e", "section_path": ["Server", "General Performance"], "commit_groups": [["851a26e26"], ["c79f6df75"]], "identity_text": "Update the free space map during VACUUM (Claudio Freire) This allows free space to be reused more quickly.", "commit_aliases": ["851a26e26", "c79f6df75"], "source_commits": ["851a26e26", "c79f6df75"], "source_entry_id": "11.0/changes/037", "db_id": "79c5cb83f4ceb7751e4b14cecd300b36", "patch_ids": ["263848c0a37e919e865258f46a2ee719", "63ead92f5d0dcc96b6dfa6c5cb86b146"], "statement_hash": "094f6d9fe3db0306f0d79d92de59ca3fd75d1e6470dbc72648e9712ce296d869", "relations": [], "version": "11.0", "category_label": "Performance", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-384b16eb83a0184f", "cves": [], "html": "<p>Allow <code>VACUUM</code> to avoid unnecessary index scans (Masahiko Sawada, Alexander Korotkov)</p>", "text": "Allow VACUUM to avoid unnecessary index scans (Masahiko Sawada, Alexander Korotkov)", "title": "Allow VACUUM to avoid unnecessary index scans", "commits": [], "section": "Server / General Performance", "category": "performance", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.6", "source_hash": "b5468a842be5013fb4bcf4826bf18e468ee3327a70d3828faad143988c72031c", "section_path": ["Server", "General Performance"], "commit_groups": [["857f9c36c"]], "identity_text": "Allow VACUUM to avoid unnecessary index scans (Masahiko Sawada, Alexander Korotkov)", "commit_aliases": ["857f9c36c"], "source_commits": ["857f9c36c"], "source_entry_id": "11.0/changes/038", "db_id": "360eaafec92ed03025911dc26316f168", "patch_ids": ["0ffa80cae94d257eada4c7964cadcd7c"], "statement_hash": "ee96fffa3b2c2dc994bfd7b590983442e111e209ba2b5aed71501b0dd45269a1", "relations": [], "version": "11.0", "category_label": "Performance", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-31557340919d4c15", "cves": [], "html": "<p>Improve performance of committing multiple concurrent transactions (Amit Kapila)</p>", "text": "Improve performance of committing multiple concurrent transactions (Amit Kapila)", "title": "Improve performance of committing multiple concurrent transactions", "commits": [], "section": "Server / General Performance", "category": "performance", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.6", "source_hash": "02afbdcc08010f053e25e805fef6da95c49915ccdc235ebe7c21cfd4e14b8c44", "section_path": ["Server", "General Performance"], "commit_groups": [["baaf272ac"]], "identity_text": "Improve performance of committing multiple concurrent transactions (Amit Kapila)", "commit_aliases": ["baaf272ac"], "source_commits": ["baaf272ac"], "source_entry_id": "11.0/changes/039", "db_id": "36dce2fac3398c608c1fe1a9905e22f1", "patch_ids": ["fb852ad8c1824c2d025dbff3c5b8a500"], "statement_hash": "da412e08e1358a01844d255132284cd3484d5fa33bc99b62ea6e2b860ae621f5", "relations": [], "version": "11.0", "category_label": "Performance", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-0d35cf84c0aff19b", "cves": [], "html": "<p>Reduce memory usage for queries using set-returning functions in their target lists (Andres Freund)</p>", "text": "Reduce memory usage for queries using set-returning functions in their target lists (Andres Freund)", "title": "Reduce memory usage for queries using set-returning functions in their target lists", "commits": [], "section": "Server / General Performance", "category": "performance", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.6", "source_hash": "a7aa3d1942a52d0821ec6e5298fec9a9acd7cf0a37297ebcebe9d794bb982e29", "section_path": ["Server", "General Performance"], "commit_groups": [["84ad4b036"]], "identity_text": "Reduce memory usage for queries using set-returning functions in their target lists (Andres Freund)", "commit_aliases": ["84ad4b036"], "source_commits": ["84ad4b036"], "source_entry_id": "11.0/changes/040", "db_id": "3aa21c8b21b62e64afb38c65fb73486f", "patch_ids": ["a6cbdecc9c0c45a47c95dbaa5fc4fcc2"], "statement_hash": "bae35c7905967036eed535a2c3125e2d327250937a3832e02d6aefe9a0ae47f6", "relations": [], "version": "11.0", "category_label": "Performance", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-e4a2d395d4eced6a", "cves": [], "html": "<p>Improve the speed of aggregate computations (Andres Freund)</p>", "text": "Improve the speed of aggregate computations (Andres Freund)", "title": "Improve the speed of aggregate computations", "commits": [], "section": "Server / General Performance", "category": "performance", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.6", "source_hash": "58dab48812275fbe84b759a84cf96a0ff33877f0f5a22a4640bc4be40235958e", "section_path": ["Server", "General Performance"], "commit_groups": [["69c3936a1"]], "identity_text": "Improve the speed of aggregate computations (Andres Freund)", "commit_aliases": ["69c3936a1"], "source_commits": ["69c3936a1"], "source_entry_id": "11.0/changes/041", "db_id": "991c579f8f8714afaac4570c5441a21a", "patch_ids": ["84624809612700b979c023402b09d3f1"], "statement_hash": "5848429f9dbd27d63af51305d76199d4f0ed81090d48f7f55f64dd8c6c795d77", "relations": [], "version": "11.0", "category_label": "Performance", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-2e19bf99fd89285d", "cves": [], "html": "<p>Allow <a href=\"/docs/11/postgres-fdw.html\" title=\"F.33. postgres_fdw\"><code>postgres_fdw</code></a> to push <code>UPDATE</code>s and <code>DELETE</code>s using joins to foreign servers (Etsuro Fujita)</p>\n<p>Previously, only non-join <code>UPDATE</code>s and <code>DELETE</code>s were pushed.</p>", "text": "Allow postgres_fdw to push UPDATEs and DELETEs using joins to foreign servers (Etsuro Fujita) Previously, only non-join UPDATEs and DELETEs were pushed.", "title": "Allow postgres_fdw to push UPDATEs and DELETEs using joins to foreign servers", "commits": [], "section": "Server / General Performance", "category": "performance", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.6", "source_hash": "7af6aba3fd3ff098488f18d40cc91ba0e73d821ecdfe62f11a6886a0ac4c57e3", "section_path": ["Server", "General Performance"], "commit_groups": [["1bc0100d2"]], "identity_text": "Allow postgres_fdw to push UPDATEs and DELETEs using joins to foreign servers (Etsuro Fujita) Previously, only non-join UPDATEs and DELETEs were pushed.", "commit_aliases": ["1bc0100d2"], "source_commits": ["1bc0100d2"], "source_entry_id": "11.0/changes/042", "db_id": "f815ff05a510c59f5a6e98584b9a87d3", "patch_ids": ["a8a0d59ad3a814fa06a6a91bd92a1b1e"], "statement_hash": "60c79720aae03ab01ef636c4476335c9ab91393cbdc338cf6978943836db155d", "relations": [], "version": "11.0", "category_label": "Performance", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-611017ad9987418a", "cves": [], "html": "<p>Add support for <em>large pages</em> on Windows (Takayuki Tsunakawa, Thomas Munro)</p>\n<p>This is controlled by the <a href=\"/docs/11/runtime-config-resource.html#GUC-HUGE-PAGES\">huge_pages</a> configuration parameter.</p>", "text": "Add support for large pages on Windows (Takayuki Tsunakawa, Thomas Munro) This is controlled by the huge_pages configuration parameter.", "title": "Add support for large pages on Windows", "commits": [], "section": "Server / General Performance", "category": "performance", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.6", "source_hash": "b6cfca66a8916570598eb6191a174c0037103df1d7e93ba6b1a62a534161aa3b", "section_path": ["Server", "General Performance"], "commit_groups": [["1cc4f536e"]], "identity_text": "Add support for large pages on Windows (Takayuki Tsunakawa, Thomas Munro) This is controlled by the huge_pages configuration parameter.", "commit_aliases": ["1cc4f536e"], "source_commits": ["1cc4f536e"], "source_entry_id": "11.0/changes/043", "db_id": "f01fb3ea5f5e5114b391d3f3253b246d", "patch_ids": ["11e4d73b483ef111f384ec9213b96db8"], "statement_hash": "97e99e91a4fee7f004238a46669b2ce164ad40eaaee3b5d47f7cbcb51d336dac", "relations": [], "version": "11.0", "category_label": "Performance", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-8aa4f1320fb0625a", "cves": [], "html": "<p>Show memory usage in output from <a href=\"/docs/11/runtime-config-statistics.html#RUNTIME-CONFIG-STATISTICS-MONITOR\" title=\"19.9.2. Statistics Monitoring\"><code>log_statement_stats</code></a>, <code>log_parser_stats</code>, <code>log_planner_stats</code>, and <code>log_executor_stats</code> (Justin Pryzby, Peter Eisentraut)</p>", "text": "Show memory usage in output from log_statement_stats, log_parser_stats, log_planner_stats, and log_executor_stats (Justin Pryzby, Peter Eisentraut)", "title": "Show memory usage in output from log_statement_stats, log_parser_stats, log_planner_stats, and log_executor_stats", "commits": [], "section": "Server / Monitoring", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.7", "source_hash": "64ecae2a3ec998cdcb6525a26d60f1b2e18b28b6bb370aacad52a8ddfeca9421", "section_path": ["Server", "Monitoring"], "commit_groups": [["c039ba071"]], "identity_text": "Show memory usage in output from log_statement_stats, log_parser_stats, log_planner_stats, and log_executor_stats (Justin Pryzby, Peter Eisentraut)", "commit_aliases": ["c039ba071"], "source_commits": ["c039ba071"], "source_entry_id": "11.0/changes/044", "db_id": "7dcabb69d1b8dd9c4ea37ec0d94b6d12", "patch_ids": ["c25846230fc69fed24972a078f3a2201"], "statement_hash": "d22122e62af85b058c29fb988f376813ac3a44c55ab15cd99516df4883bfb9bf", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-eb7807ce53995830", "cves": [], "html": "<p>Add column <a href=\"/docs/11/monitoring-stats.html#PG-STAT-ACTIVITY-VIEW\" title=\"Table 28.3. pg_stat_activity View\"><code>pg_stat_activity</code>.<code>backend_type</code></a> to show the type of a background worker (Peter Eisentraut)</p>\n<p>The type is also visible in <span>ps</span> output.</p>", "text": "Add column pg_stat_activity.backend_type to show the type of a background worker (Peter Eisentraut) The type is also visible in ps output.", "title": "Add column pg_stat_activity.backend_type to show the type of a background worker", "commits": [], "section": "Server / Monitoring", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.7", "source_hash": "14fccba940dda1c121267fc4000b512603cd920429994468f870242cef74b317", "section_path": ["Server", "Monitoring"], "commit_groups": [["5373bc2a0"]], "identity_text": "Add column pg_stat_activity.backend_type to show the type of a background worker (Peter Eisentraut) The type is also visible in ps output.", "commit_aliases": ["5373bc2a0"], "source_commits": ["5373bc2a0"], "source_entry_id": "11.0/changes/045", "db_id": "50ce9aa0b2a355c578fef384489ef45e", "patch_ids": ["2dae9ba379e6b0016d69c23449d9d026"], "statement_hash": "85fbb6a715d941890095670548c2ed66c4964c6cb04d54a44c0ea0b5fa2574cf", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-72d0bcdcb321c3ec", "cves": [], "html": "<p>Make <a href=\"/docs/11/runtime-config-autovacuum.html#GUC-LOG-AUTOVACUUM-MIN-DURATION\"><code>log_autovacuum_min_duration</code></a> log skipped tables that are concurrently being dropped (Nathan Bossart)</p>", "text": "Make log_autovacuum_min_duration log skipped tables that are concurrently being dropped (Nathan Bossart)", "title": "Make log_autovacuum_min_duration log skipped tables that are concurrently being dropped", "commits": [], "section": "Server / Monitoring", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.7", "source_hash": "d96daaf8e255bcc0d57bab63add4623a10278f0ca37cb3aa0555f07fec7e8f1f", "section_path": ["Server", "Monitoring"], "commit_groups": [["ab6eaee88"]], "identity_text": "Make log_autovacuum_min_duration log skipped tables that are concurrently being dropped (Nathan Bossart)", "commit_aliases": ["ab6eaee88"], "source_commits": ["ab6eaee88"], "source_entry_id": "11.0/changes/046", "db_id": "88e11376873db37860a8283def88c839", "patch_ids": ["89a735098dfe8b0bcc438bf4793d0997"], "statement_hash": "90ba145481ec14835594d2a0c1e729f9304df3343b8eeaa4d7092c35c639013a", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-43018a0ef62375e8", "cves": [], "html": "<p>Add <code>information_schema</code> columns related to table constraints and triggers (Peter Eisentraut)</p>\n<p>Specifically, <code>triggers</code>.<code>action_order</code>, <code>triggers</code>.<code>action_reference_old_table</code>, and <code>triggers</code>.<code>action_reference_new_table</code> are now populated, where before they were always null. Also, <code>table_constraints</code>.<code>enforced</code> now exists but is not yet usefully populated.</p>", "text": "Add information_schema columns related to table constraints and triggers (Peter Eisentraut) Specifically, triggers.action_order, triggers.action_reference_old_table, and triggers.action_reference_new_table are now populated, where before they were always null. Also, table_constraints.enforced now exists but is not yet usefully populated.", "title": "Add information_schema columns related to table constraints and triggers", "commits": [], "section": "Server / Monitoring / Information Schema", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.7.3", "source_hash": "cc450cc8213f864cd5c0790d5bdebf53df55c7a1040bb789197e7803afdaffda", "section_path": ["Server", "Monitoring", "Information Schema"], "commit_groups": [["32ff26911"]], "identity_text": "Add information_schema columns related to table constraints and triggers (Peter Eisentraut) Specifically, triggers.action_order, triggers.action_reference_old_table, and triggers.action_reference_new_table are now populated, where before they were always null. Also, table_constraints.enforced now exists but is not yet usefully populated.", "commit_aliases": ["32ff26911"], "source_commits": ["32ff26911"], "source_entry_id": "11.0/changes/047", "db_id": "cf80aa0f9ac6ab113721ddb044aa374d", "patch_ids": ["cbc5472bccfe53c66431a3fd73625c53"], "statement_hash": "a17ecaf69e32ee3595693ac6f1e78626c35e124b67869aeaabded89dbea5be1f", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-ef712b41f6bdb055", "cves": [], "html": "<p>Allow the server to specify more complex <a href=\"/docs/11/auth-ldap.html\" title=\"20.10. LDAP Authentication\"><acronym>LDAP</acronym></a> specifications in search+bind mode (Thomas Munro)</p>\n<p>Specifically, <code>ldapsearchfilter</code> allows pattern matching using combinations of <acronym>LDAP</acronym> attributes.</p>", "text": "Allow the server to specify more complex LDAP specifications in search+bind mode (Thomas Munro) Specifically, ldapsearchfilter allows pattern matching using combinations of LDAP attributes.", "title": "Allow the server to specify more complex LDAP specifications in search+bind mode", "commits": [], "section": "Server / Authentication", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.8", "source_hash": "a4b1deaa0e9d80d3250d3652b701e4e77b40d919f87ab148869c954e63445d05", "section_path": ["Server", "Authentication"], "commit_groups": [["83aaac41c"]], "identity_text": "Allow the server to specify more complex LDAP specifications in search+bind mode (Thomas Munro) Specifically, ldapsearchfilter allows pattern matching using combinations of LDAP attributes.", "commit_aliases": ["83aaac41c"], "source_commits": ["83aaac41c"], "source_entry_id": "11.0/changes/048", "db_id": "72437165e1f32f65a6b478fd95d22270", "patch_ids": ["7c27a2d87838ac41c99b47ba05185979"], "statement_hash": "123b50ea60bada2ea580cbd9b1350bd8ba9f8d67566ea0fd411ff164dab6179c", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-ad961216d35f471f", "cves": [], "html": "<p>Allow <acronym>LDAP</acronym> authentication to use encrypted <acronym>LDAP</acronym> (Thomas Munro)</p>\n<p>We already supported <acronym>LDAP</acronym> over <acronym>TLS</acronym> by using <code>ldaptls=1</code>. This new <acronym>TLS</acronym> <acronym>LDAP</acronym> method for encrypted <acronym>LDAP</acronym> is enabled with <code>ldapscheme=ldaps</code> or <code>ldapurl=ldaps://</code>.</p>", "text": "Allow LDAP authentication to use encrypted LDAP (Thomas Munro) We already supported LDAP over TLS by using ldaptls=1. This new TLS LDAP method for encrypted LDAP is enabled with ldapscheme=ldaps or ldapurl=ldaps://.", "title": "Allow LDAP authentication to use encrypted LDAP", "commits": [], "section": "Server / Authentication", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.8", "source_hash": "3a42e9208f95522bb8d3575c4d10b5538ed83859bd7b13419493ba02a6e27f4a", "section_path": ["Server", "Authentication"], "commit_groups": [["35c0754fa"], ["3ad2afc2e"]], "identity_text": "Allow LDAP authentication to use encrypted LDAP (Thomas Munro) We already supported LDAP over TLS by using ldaptls=1. This new TLS LDAP method for encrypted LDAP is enabled with ldapscheme=ldaps or ldapurl=ldaps://.", "commit_aliases": ["35c0754fa", "3ad2afc2e"], "source_commits": ["35c0754fa", "3ad2afc2e"], "source_entry_id": "11.0/changes/049", "db_id": "e31102ddd553ae8c026e924c160ca2de", "patch_ids": ["7f792f3c6c305b482aabc29d8d651dae", "af52c47b54f2f733770555d57b1b5863"], "statement_hash": "048d30c49c17c7cc24a7667f8fa8dcf1f4b9a5cb0041d1d9e77c3d174ee62217", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-62a12682b37a5e1b", "cves": [], "html": "<p>Improve logging of <acronym>LDAP</acronym> errors (Thomas Munro)</p>", "text": "Improve logging of LDAP errors (Thomas Munro)", "title": "Improve logging of LDAP errors", "commits": [], "section": "Server / Authentication", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.8", "source_hash": "ba42ec08339ab64fe9d31d3c817bdaf20c7d8ccfc855404be63bc3a947473a52", "section_path": ["Server", "Authentication"], "commit_groups": [["cf1238cd9"]], "identity_text": "Improve logging of LDAP errors (Thomas Munro)", "commit_aliases": ["cf1238cd9"], "source_commits": ["cf1238cd9"], "source_entry_id": "11.0/changes/050", "db_id": "d835fe9c0c6d7625838a8d833f2e30c5", "patch_ids": ["dcdc5233ecc8a2496357e0a0dd8f06c6"], "statement_hash": "ae64df16cae8d6bf31768ae216689854e043231ae9b13136c821d6ecddfaf46b", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-f68259adc5e3164d", "cves": [], "html": "<p>Add <a href=\"/docs/11/default-roles.html#DEFAULT-ROLES-TABLE\" title=\"Table 21.1. Default Roles\">default roles</a> that enable file system access (Stephen Frost)</p>\n<p>Specifically, the new roles are: <code>pg_read_server_files</code>, <code>pg_write_server_files</code>, and <code>pg_execute_server_program</code>. These roles now also control who can use server-side <code>COPY</code> and the <a href=\"/docs/11/file-fdw.html\" title=\"F.14. file_fdw\"><code>file_fdw</code></a> extension. Previously, only superusers could use these functions, and that is still the default behavior.</p>", "text": "Add default roles that enable file system access (Stephen Frost) Specifically, the new roles are: pg_read_server_files, pg_write_server_files, and pg_execute_server_program. These roles now also control who can use server-side COPY and the file_fdw extension. Previously, only superusers could use these functions, and that is still the default behavior.", "title": "Add default roles that enable file system access", "commits": [], "section": "Server / Permissions", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.9", "source_hash": "95ab77073d9dbcc05a6d6e47ec1a5b1b1ebed919a876af45f11c329ebccfd1dc", "section_path": ["Server", "Permissions"], "commit_groups": [["0fdc8495b"], ["da9b580d8"]], "identity_text": "Add default roles that enable file system access (Stephen Frost) Specifically, the new roles are: pg_read_server_files, pg_write_server_files, and pg_execute_server_program. These roles now also control who can use server-side COPY and the file_fdw extension. Previously, only superusers could use these functions, and that is still the default behavior.", "commit_aliases": ["0fdc8495b", "da9b580d8"], "source_commits": ["0fdc8495b", "da9b580d8"], "source_entry_id": "11.0/changes/051", "db_id": "85bdcc58d402a70b786b4dbaa25e9112", "patch_ids": ["b2284d966eee3ea07f814fe4acc65444", "c99685c206c48f557f29180150aff351"], "statement_hash": "87c001eeacc10fdb471734302f10333359437cd738296d57b8e38c7d51fd5512", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-6466a0b0c92c614a", "cves": [], "html": "<p>Allow access to file system functions to be controlled by <code>GRANT</code>/<code>REVOKE</code> permissions, rather than superuser checks (Stephen Frost)</p>\n<p>Specifically, these functions were modified: <a href=\"/docs/11/functions-admin.html#FUNCTIONS-ADMIN-GENFILE-TABLE\" title=\"Table 9.88. Generic File Access Functions\"><code>pg_ls_dir()</code></a>, <code>pg_read_file()</code>, <code>pg_read_binary_file()</code>, <code>pg_stat_file()</code>.</p>", "text": "Allow access to file system functions to be controlled by GRANT/REVOKE permissions, rather than superuser checks (Stephen Frost) Specifically, these functions were modified: pg_ls_dir(), pg_read_file(), pg_read_binary_file(), pg_stat_file().", "title": "Allow access to file system functions to be controlled by GRANT/REVOKE permissions, rather than superuser checks", "commits": [], "section": "Server / Permissions", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.9", "source_hash": "a65c6b73288b7b880dedbe59821d5ae9045e2d87088c2c2bc0e9d956af5e19f1", "section_path": ["Server", "Permissions"], "commit_groups": [["e79350fef"]], "identity_text": "Allow access to file system functions to be controlled by GRANT/REVOKE permissions, rather than superuser checks (Stephen Frost) Specifically, these functions were modified: pg_ls_dir(), pg_read_file(), pg_read_binary_file(), pg_stat_file().", "commit_aliases": ["e79350fef"], "source_commits": ["e79350fef"], "source_entry_id": "11.0/changes/052", "db_id": "34d1eed64f84c453bb8312cbc9140641", "patch_ids": ["048c8a6d4d3033f6b8d5fd387fbe3ab1"], "statement_hash": "51a5c14900450660a2b2e01fd036bc6bd1f3cbfd923c4e483cbd1d605c4c2f00", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-c176612752aa5375", "cves": [], "html": "<p>Use <code>GRANT</code>/<code>REVOKE</code> to control access to <a href=\"/docs/11/lo-interfaces.html#LO-IMPORT\" title=\"35.3.2. Importing a Large Object\"><code>lo_import()</code></a> and <code>lo_export()</code> (Michael Paquier, Tom Lane)</p>\n<p>Previously, only superusers were granted access to these functions.</p>\n<p>The compile-time option <code>ALLOW_DANGEROUS_LO_FUNCTIONS</code> has been removed.</p>", "text": "Use GRANT/REVOKE to control access to lo_import() and lo_export() (Michael Paquier, Tom Lane) Previously, only superusers were granted access to these functions. The compile-time option ALLOW_DANGEROUS_LO_FUNCTIONS has been removed.", "title": "Use GRANT/REVOKE to control access to lo_import() and lo_export()", "commits": [], "section": "Server / Permissions", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.9", "source_hash": "625daac310004e879ba11c4bd9eeed72815852ca08c6b64d9110baa3932b77af", "section_path": ["Server", "Permissions"], "commit_groups": [["5ecc0d738"], ["6d776522d"]], "identity_text": "Use GRANT/REVOKE to control access to lo_import() and lo_export() (Michael Paquier, Tom Lane) Previously, only superusers were granted access to these functions. The compile-time option ALLOW_DANGEROUS_LO_FUNCTIONS has been removed.", "commit_aliases": ["5ecc0d738", "6d776522d"], "source_commits": ["5ecc0d738", "6d776522d"], "source_entry_id": "11.0/changes/053", "db_id": "64317dec4095a31874ad8bfffd1b3783", "patch_ids": ["2f492a4642cc93d8877db1a9839f8422", "eedf0c6681cf9bbd404133ffc0f03ee6"], "statement_hash": "e0cf2e7bb8d51667238f48e5e52b8b75d3e546af7734ef077d690510d104dd56", "relations": [{"rule": 2, "type": "related", "target": "0b279c27863f37b234d2c71e90a34f66", "evidence": {"same_day": true, "patch_ids": ["2f492a4642cc93d8877db1a9839f8422"]}}], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": [{"db_id": "0b279c27863f37b234d2c71e90a34f66", "kind": "related", "version": "11.0", "label": "11.0", "title": "Cause large object permission checks to happen during large object open, lo_open(), not when a read or write is attempted", "evidence": {"same_day": true, "patch_ids": ["2f492a4642cc93d8877db1a9839f8422"]}, "url": "/docs/compare/?release=11.0#11.0-5a79e1f9c954df3b", "source_url": "/docs/release/11.0/#id-1.11.6.27.4"}]}, {"id": "11.0-9e348be3e5e35834", "cves": [], "html": "<p>Use view owner not session owner when preventing non-password access to <a href=\"/docs/11/postgres-fdw.html\" title=\"F.33. postgres_fdw\"><code>postgres_fdw</code></a> tables (Robert Haas)</p>\n<p><span>PostgreSQL</span> only allows superusers to access <code>postgres_fdw</code> tables without passwords, e.g., via <code>peer</code>. Previously, the session owner had to be a superuser to allow such access; now the view owner is checked instead.</p>", "text": "Use view owner not session owner when preventing non-password access to postgres_fdw tables (Robert Haas) PostgreSQL only allows superusers to access postgres_fdw tables without passwords, e.g., via peer. Previously, the session owner had to be a superuser to allow such access; now the view owner is checked instead.", "title": "Use view owner not session owner when preventing non-password access to postgres_fdw tables", "commits": [], "section": "Server / Permissions", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.9", "source_hash": "d617a30dad4d948433ebc5b591ad047022fce48b9411b04049e32b1b4a91d50d", "section_path": ["Server", "Permissions"], "commit_groups": [["ab3f008a2"]], "identity_text": "Use view owner not session owner when preventing non-password access to postgres_fdw tables (Robert Haas) PostgreSQL only allows superusers to access postgres_fdw tables without passwords, e.g., via peer. Previously, the session owner had to be a superuser to allow such access; now the view owner is checked instead.", "commit_aliases": ["ab3f008a2"], "source_commits": ["ab3f008a2"], "source_entry_id": "11.0/changes/054", "db_id": "2e59df2e588f076ca6157783090eb5ec", "patch_ids": ["64ebc2a165cd0a5f9081a99fc69f0ca2"], "statement_hash": "28a830b2113c7496b5a784770c4ead4699ebe99b0f862c2e12109020264eb31f", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-de62e32d5059f218", "cves": [], "html": "<p>Fix invalid locking permission check in <code>SELECT FOR UPDATE</code> on views (Tom Lane)</p>", "text": "Fix invalid locking permission check in SELECT FOR UPDATE on views (Tom Lane)", "title": "Fix invalid locking permission check in SELECT FOR UPDATE on views", "commits": [], "section": "Server / Permissions", "category": "bugfix", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.9", "source_hash": "34fc37020aadaeea60cf066257a3039194807a5d3177bf9b3a4ec03f6d3ad468", "section_path": ["Server", "Permissions"], "commit_groups": [["50c6bb022"]], "identity_text": "Fix invalid locking permission check in SELECT FOR UPDATE on views (Tom Lane)", "commit_aliases": ["50c6bb022"], "source_commits": ["50c6bb022"], "source_entry_id": "11.0/changes/055", "db_id": "0c62ce14098f322927822e44b798037e", "patch_ids": ["54064ad075bc8751bd8417591b9195ac"], "statement_hash": "93c405beb7da8351ff3728369fa0b6c0ce5d4deb25a23dd029e8b1a4b8fcb87d", "relations": [], "version": "11.0", "category_label": "Bug fixes", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-43eb10ce211d4505", "cves": [], "html": "<p>Add server setting <a href=\"/docs/11/runtime-config-connection.html#GUC-SSL-PASSPHRASE-COMMAND\"><code>ssl_passphrase_command</code></a> to allow supplying of the passphrase for <acronym>SSL</acronym> key files (Peter Eisentraut)</p>\n<p>Also add <a href=\"/docs/11/runtime-config-connection.html#GUC-SSL-PASSPHRASE-COMMAND-SUPPORTS-RELOAD\"><code>ssl_passphrase_command_supports_reload</code></a> to specify whether the <acronym>SSL</acronym> configuration should be reloaded and <code>ssl_passphrase_command</code> called during a server configuration reload.</p>", "text": "Add server setting ssl_passphrase_command to allow supplying of the passphrase for SSL key files (Peter Eisentraut) Also add ssl_passphrase_command_supports_reload to specify whether the SSL configuration should be reloaded and ssl_passphrase_command called during a server configuration reload.", "title": "Add server setting ssl_passphrase_command to allow supplying of the passphrase for SSL key files", "commits": [], "section": "Server / Server Configuration", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.10", "source_hash": "d3778df3f88ce6485b4741b45a9dd1af27f3e94c9d688d4e468dc7f4e145f41f", "section_path": ["Server", "Server Configuration"], "commit_groups": [["8a3d94252"]], "identity_text": "Add server setting ssl_passphrase_command to allow supplying of the passphrase for SSL key files (Peter Eisentraut) Also add ssl_passphrase_command_supports_reload to specify whether the SSL configuration should be reloaded and ssl_passphrase_command called during a server configuration reload.", "commit_aliases": ["8a3d94252"], "source_commits": ["8a3d94252"], "source_entry_id": "11.0/changes/056", "db_id": "f64e6c3af83ac5540c0680fb03310080", "patch_ids": ["8a61c8906208b6f444a925ba6398b5f2"], "statement_hash": "fe073f5577ea791b20141412bf9c7dcee45b103f6ec0bf492c3c01a5e68faab3", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-e9d9cb3317857eef", "cves": [], "html": "<p>Add storage parameter <a href=\"/docs/11/sql-createtable.html#SQL-CREATETABLE-STORAGE-PARAMETERS\" title=\"Storage Parameters\"><code>toast_tuple_target</code></a> to control the minimum tuple length before <acronym>TOAST</acronym> storage will be considered (Simon Riggs)</p>\n<p>The default <acronym>TOAST</acronym> threshold has not been changed.</p>", "text": "Add storage parameter toast_tuple_target to control the minimum tuple length before TOAST storage will be considered (Simon Riggs) The default TOAST threshold has not been changed.", "title": "Add storage parameter toast_tuple_target to control the minimum tuple length before TOAST storage will be considered", "commits": [], "section": "Server / Server Configuration", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.10", "source_hash": "35a464e2aeb91ffb892bb99c2fdb1484274b1e86d619ce65830cfde29bed4f39", "section_path": ["Server", "Server Configuration"], "commit_groups": [["c2513365a"]], "identity_text": "Add storage parameter toast_tuple_target to control the minimum tuple length before TOAST storage will be considered (Simon Riggs) The default TOAST threshold has not been changed.", "commit_aliases": ["c2513365a"], "source_commits": ["c2513365a"], "source_entry_id": "11.0/changes/057", "db_id": "ace5f27f4a22e60e5e315e523db0d475", "patch_ids": ["f38bc3b70a551b1688d8e728acf7441e"], "statement_hash": "d5dc594bc3fc7340bd7891227b000cc0bcc1b869027a591115a7fb0e8e23c398", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-f790a91d04cae931", "cves": [], "html": "<p>Allow server options related to memory and file sizes to be specified in units of bytes (Beena Emerson)</p>\n<p>The new unit suffix is <span>“<span>B</span>”</span>. This is in addition to the existing units <span>“<span>kB</span>”</span>, <span>“<span>MB</span>”</span>, <span>“<span>GB</span>”</span> and <span>“<span>TB</span>”</span>.</p>", "text": "Allow server options related to memory and file sizes to be specified in units of bytes (Beena Emerson) The new unit suffix is “B”. This is in addition to the existing units “kB”, “MB”, “GB” and “TB”.", "title": "Allow server options related to memory and file sizes to be specified in units of bytes", "commits": [], "section": "Server / Server Configuration", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.10", "source_hash": "cb52ef7d99025408e5a80f9fd9b3b0e35f32c64a857e0f7869435bbd25a71b29", "section_path": ["Server", "Server Configuration"], "commit_groups": [["6e7baa322"], ["b06d8e58b"]], "identity_text": "Allow server options related to memory and file sizes to be specified in units of bytes (Beena Emerson) The new unit suffix is B. This is in addition to the existing units kB, MB, GB and TB.", "commit_aliases": ["6e7baa322", "b06d8e58b"], "source_commits": ["6e7baa322", "b06d8e58b"], "source_entry_id": "11.0/changes/058", "db_id": "04aa60ab2b89066ec89bd6c60605739f", "patch_ids": ["9d6582b2063b65dcd591508db87d200b", "deb10772777150c2727b2fb1111e397a"], "statement_hash": "bf40f7571fa9ca8a72e64645abededd51cb9dbc57408ce8c91da5b4d30a04fe0", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-69758857bc0db0b2", "cves": [], "html": "<p>Allow the <acronym>WAL</acronym> file size to be set during <span>initdb</span> (Beena Emerson)</p>\n<p>Previously, the 16MB default could only be changed at compile time.</p>", "text": "Allow the WAL file size to be set during initdb (Beena Emerson) Previously, the 16MB default could only be changed at compile time.", "title": "Allow the WAL file size to be set during initdb", "commits": [], "section": "Server / Write-Ahead Log (WAL)", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.11", "source_hash": "a4b35c4d9ef913a225d8b16649c7a028a8745439b219f63babe5cc56ef7a410d", "section_path": ["Server", "Write-Ahead Log (WAL)"], "commit_groups": [["fc49e24fa"]], "identity_text": "Allow the WAL file size to be set during initdb (Beena Emerson) Previously, the 16MB default could only be changed at compile time.", "commit_aliases": ["fc49e24fa"], "source_commits": ["fc49e24fa"], "source_entry_id": "11.0/changes/059", "db_id": "47fbfb37e540c4f7c25c4d48495164a6", "patch_ids": ["ee4d6e1f35c15ef4c16cbe190565844b"], "statement_hash": "1a93805137ff3cfed2d7c3a0ebc49e8ec2f0d1870b2808eea2695c68735c8814", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-00dd091b29883661", "cves": [], "html": "<p>Retain <acronym>WAL</acronym> data for only a single checkpoint (Simon Riggs)</p>\n<p>Previously, <acronym>WAL</acronym> was retained for two checkpoints.</p>", "text": "Retain WAL data for only a single checkpoint (Simon Riggs) Previously, WAL was retained for two checkpoints.", "title": "Retain WAL data for only a single checkpoint", "commits": [], "section": "Server / Write-Ahead Log (WAL)", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.11", "source_hash": "50c9f9b4293446b1347e8322d6f1625f4e563ab6935111083d59bc30509e84de", "section_path": ["Server", "Write-Ahead Log (WAL)"], "commit_groups": [["4b0d28de0"]], "identity_text": "Retain WAL data for only a single checkpoint (Simon Riggs) Previously, WAL was retained for two checkpoints.", "commit_aliases": ["4b0d28de0"], "source_commits": ["4b0d28de0"], "source_entry_id": "11.0/changes/060", "db_id": "3c4e095cf338efc7d6cff054f32a1b69", "patch_ids": ["3f2f66997e3f108a9c73bf448bc219f7"], "statement_hash": "af4dbd2ba0c5566e7873419a170a149c449d50f89532ebbd550f38329bb1e8ca", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-fe3126ce51e18d9b", "cves": [], "html": "<p>Fill the unused portion of force-switched <acronym>WAL</acronym> segment files with zeros for improved compressibility (Chapman Flack)</p>", "text": "Fill the unused portion of force-switched WAL segment files with zeros for improved compressibility (Chapman Flack)", "title": "Fill the unused portion of force-switched WAL segment files with zeros for improved compressibility", "commits": [], "section": "Server / Write-Ahead Log (WAL)", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.3.11", "source_hash": "1fe7484f03ff0030c53014fc689c2b7c839496546b2b6d1f100be6ef5b1d62ab", "section_path": ["Server", "Write-Ahead Log (WAL)"], "commit_groups": [["4a33bb59d"]], "identity_text": "Fill the unused portion of force-switched WAL segment files with zeros for improved compressibility (Chapman Flack)", "commit_aliases": ["4a33bb59d"], "source_commits": ["4a33bb59d"], "source_entry_id": "11.0/changes/061", "db_id": "4e3acc0d84234a1ec3efd039df3393e4", "patch_ids": ["8fd6fa5958971b4f1660135683d1d71c"], "statement_hash": "7af1a11e9a791a7fd72fdb1ca63c549cee73f7e0277ca37f6ea45c4ecbbf0533", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-469fa4ba49c2542f", "cves": [], "html": "<p>Replicate <code>TRUNCATE</code> activity when using logical replication (Simon Riggs, Marco Nenciarini, Peter Eisentraut)</p>", "text": "Replicate TRUNCATE activity when using logical replication (Simon Riggs, Marco Nenciarini, Peter Eisentraut)", "title": "Replicate TRUNCATE activity when using logical replication", "commits": [], "section": "Base Backup and Streaming Replication", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.4", "source_hash": "25cb4127d8b8e3cc2fb7cac3cb30ef3715ed2d960ec3969000518cdcc867edc4", "section_path": ["Base Backup and Streaming Replication"], "commit_groups": [["039eb6e92"], ["5dfd1e5a6"]], "identity_text": "Replicate TRUNCATE activity when using logical replication (Simon Riggs, Marco Nenciarini, Peter Eisentraut)", "commit_aliases": ["039eb6e92", "5dfd1e5a6"], "source_commits": ["039eb6e92", "5dfd1e5a6"], "source_entry_id": "11.0/changes/062", "db_id": "164fa0e9adf445552a7c00a4c8fe4ff1", "patch_ids": ["5de3880bacfbe1672f9c26bc5d16ffab", "eeba644012c423c481f908b61f588aca"], "statement_hash": "8d03bd450fef5a9dc672c93666b8fec72eb4f786fd89982d53d77a51d275e97b", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-4825fba736902cfa", "cves": [], "html": "<p>Pass prepared transaction information to logical replication subscribers (Nikhil Sontakke, Stas Kelvich)</p>", "text": "Pass prepared transaction information to logical replication subscribers (Nikhil Sontakke, Stas Kelvich)", "title": "Pass prepared transaction information to logical replication subscribers", "commits": [], "section": "Base Backup and Streaming Replication", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.4", "source_hash": "dc49bbb987a75a0d038856abcbce2adb6ec1c67e109f31ee83310ec95767eab0", "section_path": ["Base Backup and Streaming Replication"], "commit_groups": [["1eb6d6527"]], "identity_text": "Pass prepared transaction information to logical replication subscribers (Nikhil Sontakke, Stas Kelvich)", "commit_aliases": ["1eb6d6527"], "source_commits": ["1eb6d6527"], "source_entry_id": "11.0/changes/063", "db_id": "000e84c6a14d505070db1fde381d32d1", "patch_ids": ["2ba325ad80ccae1670c875ef0fd4af0f"], "statement_hash": "673a98baf03e197ddf064444b068b41028b57f3b1508951514933c8e8e019c7e", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-3706ca3f807f81c6", "cves": [], "html": "<p>Exclude unlogged tables, temporary tables, and <code>pg_internal.init</code> files from streaming base backups (David Steele)</p>\n<p>There is no need to copy such files.</p>", "text": "Exclude unlogged tables, temporary tables, and pg_internal.init files from streaming base backups (David Steele) There is no need to copy such files.", "title": "Exclude unlogged tables, temporary tables, and pg_internal.init files from streaming base backups", "commits": [], "section": "Base Backup and Streaming Replication", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.4", "source_hash": "9178b93090507d43bcfd51ac6be8adb84020ca93413294e0baff628f8ebef3a2", "section_path": ["Base Backup and Streaming Replication"], "commit_groups": [["8694cc96b"], ["920a5e500"], ["98267ee83"]], "identity_text": "Exclude unlogged tables, temporary tables, and pg_internal.init files from streaming base backups (David Steele) There is no need to copy such files.", "commit_aliases": ["8694cc96b", "920a5e500", "98267ee83"], "source_commits": ["8694cc96b", "920a5e500", "98267ee83"], "source_entry_id": "11.0/changes/064", "db_id": "3ff82d6fb2b9b7d7c949768a55cc2c64", "patch_ids": ["af9ef3186ec110b08c56cf73eac67d2f", "cf882b1a701bad25e36043c11c518f4e", "f88ea6b39b72b92570f52b22c9b3b017"], "statement_hash": "617b9d4b6fd00f590e792ecd9b54bf4d5fd58ecd9ef5f7e98cd71e97750e1d01", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-ca6b48c1de362316", "cves": [], "html": "<p>Allow checksums of heap pages to be verified during streaming base backup (Michael Banck)</p>", "text": "Allow checksums of heap pages to be verified during streaming base backup (Michael Banck)", "title": "Allow checksums of heap pages to be verified during streaming base backup", "commits": [], "section": "Base Backup and Streaming Replication", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.4", "source_hash": "43354a3a0759f59c26e71c6c038d2dff6642e6e6c8ad8ce7c5af025d8f2104f3", "section_path": ["Base Backup and Streaming Replication"], "commit_groups": [["4eb77d50c"]], "identity_text": "Allow checksums of heap pages to be verified during streaming base backup (Michael Banck)", "commit_aliases": ["4eb77d50c"], "source_commits": ["4eb77d50c"], "source_entry_id": "11.0/changes/065", "db_id": "01df6d05d7b158bfd2b91e2bf4237f07", "patch_ids": ["f8b763beb9b5b162f708472e1eb70b24"], "statement_hash": "a5d71ce1a1f7fa28f7cddd7dec2454b3de7d49fa803c8a655225317978c4fa4c", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-ecfba3464a2e9b3c", "cves": [], "html": "<p>Allow replication slots to be advanced programmatically, rather than be consumed by subscribers (Petr Jelinek)</p>\n<p>This allows efficient advancement of replication slots when the contents do not need to be consumed. This is performed by <code>pg_replication_slot_advance()</code>.</p>", "text": "Allow replication slots to be advanced programmatically, rather than be consumed by subscribers (Petr Jelinek) This allows efficient advancement of replication slots when the contents do not need to be consumed. This is performed by pg_replication_slot_advance().", "title": "Allow replication slots to be advanced programmatically, rather than be consumed by subscribers", "commits": [], "section": "Base Backup and Streaming Replication", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.4", "source_hash": "aa666cf32990c0cf34e31b90626a250b5eba1e31468538439a84e6fb86aac274", "section_path": ["Base Backup and Streaming Replication"], "commit_groups": [["9c7d06d60"]], "identity_text": "Allow replication slots to be advanced programmatically, rather than be consumed by subscribers (Petr Jelinek) This allows efficient advancement of replication slots when the contents do not need to be consumed. This is performed by pg_replication_slot_advance().", "commit_aliases": ["9c7d06d60"], "source_commits": ["9c7d06d60"], "source_entry_id": "11.0/changes/066", "db_id": "94643a2a0775154a475639a52a5abc5a", "patch_ids": ["a7fd8c3d552a4be04526b2ee42fa6edc"], "statement_hash": "db0f1bb8d06a42c6dc6059a363c88a66c26084e5ddb2191d034b12bb06bce9a2", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-84a3cdb0e5520850", "cves": [], "html": "<p>Add timeline information to the <a href=\"/docs/11/continuous-archiving.html#BACKUP-LOWLEVEL-BASE-BACKUP\" title=\"25.3.3. Making a Base Backup Using the Low Level API\"><code>backup_label</code></a> file (Michael Paquier)</p>\n<p>Also add a check that the <acronym>WAL</acronym> timeline matches the <code>backup_label</code> file's timeline.</p>", "text": "Add timeline information to the backup_label file (Michael Paquier) Also add a check that the WAL timeline matches the backup_label file's timeline.", "title": "Add timeline information to the backup_label file", "commits": [], "section": "Base Backup and Streaming Replication", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.4", "source_hash": "97b3584d8363ff9f6434d2d56edde17cd80e0e86c4efc45a4281debddaf8da89", "section_path": ["Base Backup and Streaming Replication"], "commit_groups": [["6271fceb8"]], "identity_text": "Add timeline information to the backup_label file (Michael Paquier) Also add a check that the WAL timeline matches the backup_label file's timeline.", "commit_aliases": ["6271fceb8"], "source_commits": ["6271fceb8"], "source_entry_id": "11.0/changes/067", "db_id": "2d198131b7f807abc638c59b2a16fc72", "patch_ids": ["fdbbc3a012b2f53e9c9fb2db464d6c81"], "statement_hash": "167aa43c1da2759e8266cf7f057de0c9dc1534af0f6a6cdae15d34a9e66899bb", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-618bb1840a233bc2", "cves": [], "html": "<p>Add host and port connection information to the <code>pg_stat_wal_receiver</code> system view (Haribabu Kommi)</p>", "text": "Add host and port connection information to the pg_stat_wal_receiver system view (Haribabu Kommi)", "title": "Add host and port connection information to the pg_stat_wal_receiver system view", "commits": [], "section": "Base Backup and Streaming Replication", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.4", "source_hash": "4d60245f5860bfd860c2096d91e8266bd0b727791355712cbfe6007712cf41af", "section_path": ["Base Backup and Streaming Replication"], "commit_groups": [["9a895462d"]], "identity_text": "Add host and port connection information to the pg_stat_wal_receiver system view (Haribabu Kommi)", "commit_aliases": ["9a895462d"], "source_commits": ["9a895462d"], "source_entry_id": "11.0/changes/068", "db_id": "dc062bc3528315fc0e62faa27773981d", "patch_ids": ["8abe5be701e1777a2d6f2aca86827a80"], "statement_hash": "c531e19e287247320f490f7d3fd668cb1fdf849e7efd565be6b9bc61be90febe", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-4225a7cadd725f97", "cves": [], "html": "<p>Allow <code>ALTER TABLE</code> to add a column with a non-null default without doing a table rewrite (Andrew Dunstan, Serge Rielau)</p>\n<p>This is enabled when the default value is a constant.</p>", "text": "Allow ALTER TABLE to add a column with a non-null default without doing a table rewrite (Andrew Dunstan, Serge Rielau) This is enabled when the default value is a constant.", "title": "Allow ALTER TABLE to add a column with a non-null default without doing a table rewrite", "commits": [], "section": "Utility Commands", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.5", "source_hash": "ab9acc3a94dc6e6f2b802a749ca8b7ebe5ed9da9e517844138fb502da921ef62", "section_path": ["Utility Commands"], "commit_groups": [["16828d5c0"]], "identity_text": "Allow ALTER TABLE to add a column with a non-null default without doing a table rewrite (Andrew Dunstan, Serge Rielau) This is enabled when the default value is a constant.", "commit_aliases": ["16828d5c0"], "source_commits": ["16828d5c0"], "source_entry_id": "11.0/changes/069", "db_id": "ace512d78734cf5085a3fe9cbd1d25b6", "patch_ids": ["cea7a1fe3222777a2fed9157ac898a65"], "statement_hash": "3fa7b43f1eb4f52baf2d7a121c418f0f9d9a9ffa8edc7f7daf132b5f92096d76", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-5330165d64d3fe8c", "cves": [], "html": "<p>Allow views to be locked by locking the underlying tables (Yugo Nagata)</p>", "text": "Allow views to be locked by locking the underlying tables (Yugo Nagata)", "title": "Allow views to be locked by locking the underlying tables", "commits": [], "section": "Utility Commands", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.5", "source_hash": "a718af0a0a99ba22d9f3cb076d327b173193f11d6db34ad4509996619007fa99", "section_path": ["Utility Commands"], "commit_groups": [["1b26bd408"], ["34c20de4d"]], "identity_text": "Allow views to be locked by locking the underlying tables (Yugo Nagata)", "commit_aliases": ["1b26bd408", "34c20de4d"], "source_commits": ["1b26bd408", "34c20de4d"], "source_entry_id": "11.0/changes/070", "db_id": "378f06d3060eb35779f10e6b19f7eb45", "patch_ids": ["0ac14f284c72a9a43a4f307047dd95d9", "ff4e3e43f9330e79c2d8d139accc0b29"], "statement_hash": "2b58056cab3df82d676457915083bd3da77e51662b112be4266df5e394b51812", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-06be5c3ceeaae325", "cves": [], "html": "<p>Allow <code>ALTER INDEX</code> to set statistics-gathering targets for expression indexes (Alexander Korotkov, Adrien Nayrat)</p>\n<p>In <span>psql</span>, <code>\\d+</code> now shows the statistics target for indexes.</p>", "text": "Allow ALTER INDEX to set statistics-gathering targets for expression indexes (Alexander Korotkov, Adrien Nayrat) In psql, \\d+ now shows the statistics target for indexes.", "title": "Allow ALTER INDEX to set statistics-gathering targets for expression indexes", "commits": [], "section": "Utility Commands", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.5", "source_hash": "a999420b31b598dd41990ce6ed2bbfa7635c78643bfa8ce2a626b0cf2de88157", "section_path": ["Utility Commands"], "commit_groups": [["5b6d13eec"]], "identity_text": "Allow ALTER INDEX to set statistics-gathering targets for expression indexes (Alexander Korotkov, Adrien Nayrat) In psql, \\d+ now shows the statistics target for indexes.", "commit_aliases": ["5b6d13eec"], "source_commits": ["5b6d13eec"], "source_entry_id": "11.0/changes/071", "db_id": "08fbf01c204df9801746485917ab5722", "patch_ids": ["ae0cdad77783bca63369d70fd15ed21e"], "statement_hash": "728e0f1deb38999bc57a33e3235851bdefa5228867d25142987c102a51095fc1", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-36d1f1199965baf8", "cves": [], "html": "<p>Allow multiple tables to be specified in one <code>VACUUM</code> or <code>ANALYZE</code> command (Nathan Bossart)</p>\n<p>Also, if any table mentioned in <code>VACUUM</code> uses a column list, then the <code>ANALYZE</code> keyword must be supplied; previously, <code>ANALYZE</code> was implied in such cases.</p>", "text": "Allow multiple tables to be specified in one VACUUM or ANALYZE command (Nathan Bossart) Also, if any table mentioned in VACUUM uses a column list, then the ANALYZE keyword must be supplied; previously, ANALYZE was implied in such cases.", "title": "Allow multiple tables to be specified in one VACUUM or ANALYZE command", "commits": [], "section": "Utility Commands", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.5", "source_hash": "5e254339fe0f66c56f36cc7152f4771a3d269ab347fecef466518db8146c93f9", "section_path": ["Utility Commands"], "commit_groups": [["11d8d72c2"]], "identity_text": "Allow multiple tables to be specified in one VACUUM or ANALYZE command (Nathan Bossart) Also, if any table mentioned in VACUUM uses a column list, then the ANALYZE keyword must be supplied; previously, ANALYZE was implied in such cases.", "commit_aliases": ["11d8d72c2"], "source_commits": ["11d8d72c2"], "source_entry_id": "11.0/changes/072", "db_id": "213c175ea8ffac3162f44961c3e59b4e", "patch_ids": ["3c7c8769a33ff3cf87e4b5e8afd653c6"], "statement_hash": "7c69a7020b9a85f28f12f6568f597c81025369ab3191921fa22562f995bd8c45", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-9c021215a35169e7", "cves": [], "html": "<p>Add parenthesized options syntax to <code>ANALYZE</code> (Nathan Bossart)</p>\n<p>This is similar to the syntax supported by <code>VACUUM</code>.</p>", "text": "Add parenthesized options syntax to ANALYZE (Nathan Bossart) This is similar to the syntax supported by VACUUM.", "title": "Add parenthesized options syntax to ANALYZE", "commits": [], "section": "Utility Commands", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.5", "source_hash": "164982c8296b975f314371c082ee9a1482a1285036c87ddcc412aa4b61343365", "section_path": ["Utility Commands"], "commit_groups": [["854dd8cff"]], "identity_text": "Add parenthesized options syntax to ANALYZE (Nathan Bossart) This is similar to the syntax supported by VACUUM.", "commit_aliases": ["854dd8cff"], "source_commits": ["854dd8cff"], "source_entry_id": "11.0/changes/073", "db_id": "e09607130b5178d6cdf4bddd84e5b496", "patch_ids": ["b1cf2f2f882733e528512609874b3aac"], "statement_hash": "f1833745fba1f0b3f86d2ec0d4fbf3017c3ec4fa5b8504e1be238637582d781a", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-210081b18b57610b", "cves": [], "html": "<p>Add <code>CREATE AGGREGATE</code> option to specify the behavior of the aggregate's finalization function (Tom Lane)</p>\n<p>This is helpful for allowing user-defined aggregate functions to be optimized and to work as window functions.</p>", "text": "Add CREATE AGGREGATE option to specify the behavior of the aggregate's finalization function (Tom Lane) This is helpful for allowing user-defined aggregate functions to be optimized and to work as window functions.", "title": "Add CREATE AGGREGATE option to specify the behavior of the aggregate's finalization function", "commits": [], "section": "Utility Commands", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.5", "source_hash": "4f78a0f85dee9a484d4bb3c107bfd03080ecebd91239d9f766191b64f149dfa9", "section_path": ["Utility Commands"], "commit_groups": [["4de2d4fba"], ["be0ebb65f"]], "identity_text": "Add CREATE AGGREGATE option to specify the behavior of the aggregate's finalization function (Tom Lane) This is helpful for allowing user-defined aggregate functions to be optimized and to work as window functions.", "commit_aliases": ["4de2d4fba", "be0ebb65f"], "source_commits": ["4de2d4fba", "be0ebb65f"], "source_entry_id": "11.0/changes/074", "db_id": "28b3f7fda0292e912add1c943a7a36bc", "patch_ids": ["1e8ad797a9d1556bd7f2f6b05ca3ec2b", "b71a80b232b7e351f4c1036ef6d403c5"], "statement_hash": "63cadbb561a467935ff1ad72a07f6a0a4cf117c8495caa648fc9df104a28f5a1", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-97b942eba75141ee", "cves": [], "html": "<p>Allow the creation of arrays of domains (Tom Lane)</p>\n<p>This also allows <code>array_agg()</code> to be used on domains.</p>", "text": "Allow the creation of arrays of domains (Tom Lane) This also allows array_agg() to be used on domains.", "title": "Allow the creation of arrays of domains", "commits": [], "section": "Data Types", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.6", "source_hash": "4d4236d5e84aa1239eac81d7d5324bcb461abd4132b1fb6f243539c73ab58990", "section_path": ["Data Types"], "commit_groups": [["c12d570fa"]], "identity_text": "Allow the creation of arrays of domains (Tom Lane) This also allows array_agg() to be used on domains.", "commit_aliases": ["c12d570fa"], "source_commits": ["c12d570fa"], "source_entry_id": "11.0/changes/075", "db_id": "32e6fb4d45890c0a29cbdc83127a786a", "patch_ids": ["1d8e7e77c302e7ec7391bb9d39b6fffc"], "statement_hash": "831a23663ffda7a4d1096003aadfae1b0b62142df1920fe9eee1e58c6bfdd91e", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-d4a9cf4426b1828c", "cves": [], "html": "<p>Support domains over composite types (Tom Lane)</p>\n<p>Also allow PL/Perl, PL/Python, and PL/Tcl to handle composite-domain function arguments and results. Also improve PL/Python domain handling.</p>", "text": "Support domains over composite types (Tom Lane) Also allow PL/Perl, PL/Python, and PL/Tcl to handle composite-domain function arguments and results. Also improve PL/Python domain handling.", "title": "Support domains over composite types", "commits": [], "section": "Data Types", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.6", "source_hash": "a0906d2fe9ca776ec3d672a430c9575e2adb19e499bf46714cafe5148c31155a", "section_path": ["Data Types"], "commit_groups": [["37a795a60"], ["60651e4cd"], ["687f096ea"], ["820c0305f"]], "identity_text": "Support domains over composite types (Tom Lane) Also allow PL/Perl, PL/Python, and PL/Tcl to handle composite-domain function arguments and results. Also improve PL/Python domain handling.", "commit_aliases": ["37a795a60", "60651e4cd", "687f096ea", "820c0305f"], "source_commits": ["37a795a60", "60651e4cd", "687f096ea", "820c0305f"], "source_entry_id": "11.0/changes/076", "db_id": "a929b9dce201e5448b7104fdb8f9ca52", "patch_ids": ["0199429a370a79ecc83782c7a1802524", "067667940e422ee6ab3fc971f7da687e", "243494c5c925b1ac225a902e971cbcbc", "32f98202db83f109091677492b37b96a"], "statement_hash": "bd778de7e9ae77d4bb0fdafcc086815da2c753347a2afc96999f843667f91741", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-e665f2e83388e0e2", "cves": [], "html": "<p>Add casts from <code>JSONB</code> scalars to numeric and boolean data types (Anastasia Lubennikova)</p>", "text": "Add casts from JSONB scalars to numeric and boolean data types (Anastasia Lubennikova)", "title": "Add casts from JSONB scalars to numeric and boolean data types", "commits": [], "section": "Data Types", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.6", "source_hash": "2bc9f1bf2e18ecbf7c93ad040f6cf514d8e8db9b459fe4e4f590ff44772bdfe3", "section_path": ["Data Types"], "commit_groups": [["c0cbe00fe"]], "identity_text": "Add casts from JSONB scalars to numeric and boolean data types (Anastasia Lubennikova)", "commit_aliases": ["c0cbe00fe"], "source_commits": ["c0cbe00fe"], "source_entry_id": "11.0/changes/077", "db_id": "f15ce8671923e4ede1d00b4745184fa4", "patch_ids": ["ae65c087435a9fa70bbf6cf9dcf801a9"], "statement_hash": "c9fa1d37a771f1f17c90a4952f2e8d03d3c1fcab7b389c496032dfadcc301102", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-69cd9c4b7d44a412", "cves": [], "html": "<p>Add all <a href=\"/docs/11/sql-select.html#SQL-WINDOW\" title=\"WINDOW Clause\">window function</a> framing options specified by SQL:2011 (Oliver Ford, Tom Lane)</p>\n<p>Specifically, allow <code>RANGE</code> mode to use <code>PRECEDING</code> and <code>FOLLOWING</code> to select rows having grouping values within plus or minus the specified offset. Add <code>GROUPS</code> mode to include plus or minus the number of peer groups. Frame exclusion syntax was also added.</p>", "text": "Add all window function framing options specified by SQL:2011 (Oliver Ford, Tom Lane) Specifically, allow RANGE mode to use PRECEDING and FOLLOWING to select rows having grouping values within plus or minus the specified offset. Add GROUPS mode to include plus or minus the number of peer groups. Frame exclusion syntax was also added.", "title": "Add all window function framing options specified by SQL:2011", "commits": [], "section": "Functions", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.7", "source_hash": "2ea3d66c2850747a9cb8d3f9483e3ffe9d13e8bff25ac5caaf1afb481b515eb7", "section_path": ["Functions"], "commit_groups": [["0a459cec9"], ["8b29e88cd"]], "identity_text": "Add all window function framing options specified by SQL:2011 (Oliver Ford, Tom Lane) Specifically, allow RANGE mode to use PRECEDING and FOLLOWING to select rows having grouping values within plus or minus the specified offset. Add GROUPS mode to include plus or minus the number of peer groups. Frame exclusion syntax was also added.", "commit_aliases": ["0a459cec9", "8b29e88cd"], "source_commits": ["0a459cec9", "8b29e88cd"], "source_entry_id": "11.0/changes/078", "db_id": "bb9d7a4b6dce3d96fd390234653bc70a", "patch_ids": ["20d71601baf9e5175243e91d755d5871", "2c076692cff80bd372c4f8b71c65f9d2"], "statement_hash": "e60f0610ee35dc7903c889238a4fddee9c56b21b6ad55798eba361e7f8ba6da3", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-17bd5a3738dd712e", "cves": [], "html": "<p>Add <acronym>SHA-2</acronym> family of hash functions (Peter Eisentraut)</p>\n<p>Specifically, <a href=\"/docs/11/functions-binarystring.html#FUNCTIONS-BINARYSTRING-OTHER\" title=\"Table 9.12. Other Binary String Functions\"><code>sha224()</code></a>, <code>sha256()</code>, <code>sha384()</code>, <code>sha512()</code> were added.</p>", "text": "Add SHA-2 family of hash functions (Peter Eisentraut) Specifically, sha224(), sha256(), sha384(), sha512() were added.", "title": "Add SHA-2 family of hash functions", "commits": [], "section": "Functions", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.7", "source_hash": "f543350727dcc7a40ad1013f079a5988e5f90e44b1f4d5f0d3ad5f100310fc06", "section_path": ["Functions"], "commit_groups": [["10cfce34c"]], "identity_text": "Add SHA-2 family of hash functions (Peter Eisentraut) Specifically, sha224(), sha256(), sha384(), sha512() were added.", "commit_aliases": ["10cfce34c"], "source_commits": ["10cfce34c"], "source_entry_id": "11.0/changes/079", "db_id": "c8d6d29b976d71bac97a021e691aebfb", "patch_ids": ["17e3c6819732f8198b21b89d4d62422c"], "statement_hash": "0a79aa493d4885c20799fff34df540fbfebaa6cac6d5747b84a13b80beaa6f34", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-ec134803f7d58926", "cves": [], "html": "<p>Add support for 64-bit non-cryptographic hash functions (Robert Haas, Amul Sul)</p>", "text": "Add support for 64-bit non-cryptographic hash functions (Robert Haas, Amul Sul)", "title": "Add support for 64-bit non-cryptographic hash functions", "commits": [], "section": "Functions", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.7", "source_hash": "94fbc570e9870b1cf1a594a84337e5bd4e171490b8492107204670236d7a1847", "section_path": ["Functions"], "commit_groups": [["81c5e46c4"]], "identity_text": "Add support for 64-bit non-cryptographic hash functions (Robert Haas, Amul Sul)", "commit_aliases": ["81c5e46c4"], "source_commits": ["81c5e46c4"], "source_entry_id": "11.0/changes/080", "db_id": "ff64ebfcf14bf447f2efd05d00561849", "patch_ids": ["17130222dbd63f36c1476c5e317600f0"], "statement_hash": "f4a02ff76aa1c37c206f293d495a68200e5e504efec5553e76d0fe8517b56598", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-fe004b9a5df6c339", "cves": [], "html": "<p>Allow <code>to_char()</code> and <code>to_timestamp()</code> to specify the time zone's offset from <acronym>UTC</acronym> in hours and minutes (Nikita Glukhov, Andrew Dunstan)</p>\n<p>This is done with format specifications <a href=\"/docs/11/functions-formatting.html#FUNCTIONS-FORMATTING-DATETIME-TABLE\" title=\"Table 9.24. Template Patterns for Date/Time Formatting\"><code>TZH</code></a> and <code>TZM</code>.</p>", "text": "Allow to_char() and to_timestamp() to specify the time zone's offset from UTC in hours and minutes (Nikita Glukhov, Andrew Dunstan) This is done with format specifications TZH and TZM.", "title": "Allow to_char() and to_timestamp() to specify the time zone's offset from UTC in hours and minutes", "commits": [], "section": "Functions", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.7", "source_hash": "f670d7e15f599bb24811d7dbda90884bcda56a89df3ad06249282167c2fe1596", "section_path": ["Functions"], "commit_groups": [["11b623dd0"]], "identity_text": "Allow to_char() and to_timestamp() to specify the time zone's offset from UTC in hours and minutes (Nikita Glukhov, Andrew Dunstan) This is done with format specifications TZH and TZM.", "commit_aliases": ["11b623dd0"], "source_commits": ["11b623dd0"], "source_entry_id": "11.0/changes/081", "db_id": "65dbd3a84d812175bce5dec152424330", "patch_ids": ["0d5e5f9e697fb66d7e6cdfd20519a2e1"], "statement_hash": "2d7402cfb900b9d44e58cfa11962e2578394741e91615d665f1ccbffdad225e9", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-17aaa995e721eb4d", "cves": [], "html": "<p>Add text search function <a href=\"/docs/11/functions-textsearch.html#TEXTSEARCH-FUNCTIONS-TABLE\" title=\"Table 9.41. Text Search Functions\"><code>websearch_to_tsquery()</code></a> that supports a query syntax similar to that used by web search engines (Victor Drobny, Dmitry Ivanov)</p>", "text": "Add text search function websearch_to_tsquery() that supports a query syntax similar to that used by web search engines (Victor Drobny, Dmitry Ivanov)", "title": "Add text search function websearch_to_tsquery() that supports a query syntax similar to that used by web search engines", "commits": [], "section": "Functions", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.7", "source_hash": "99cd56ae56717f2ae652b302e02d542fbdea5fee0373cba7e9e5859a6b8c1ad7", "section_path": ["Functions"], "commit_groups": [["1664ae197"]], "identity_text": "Add text search function websearch_to_tsquery() that supports a query syntax similar to that used by web search engines (Victor Drobny, Dmitry Ivanov)", "commit_aliases": ["1664ae197"], "source_commits": ["1664ae197"], "source_entry_id": "11.0/changes/082", "db_id": "0f8913be490fdec87d85bbf5a4ed5b73", "patch_ids": ["0f648b1fa275972673c9ec9ae87755d7"], "statement_hash": "b23b7b2fd8d467329be39aec1e2178a0eeffa03d5f3b3fdec580c36c4a6bad48", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-747307d160fbb6f6", "cves": [], "html": "<p>Add functions <a href=\"/docs/11/functions-textsearch.html#TEXTSEARCH-FUNCTIONS-TABLE\" title=\"Table 9.41. Text Search Functions\"><code>json(b)_to_tsvector()</code></a> to create a text search query for matching <code>JSON</code>/<code>JSONB</code> values (Dmitry Dolgov)</p>", "text": "Add functions json(b)_to_tsvector() to create a text search query for matching JSON/JSONB values (Dmitry Dolgov)", "title": "Add functions json(b)_to_tsvector() to create a text search query for matching JSON/JSONB values", "commits": [], "section": "Functions", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.7", "source_hash": "7b3ad9aa54167d08a16f7c58e022d611ce6d0e32abdca63e0e7b52e7cf40de8a", "section_path": ["Functions"], "commit_groups": [["1c1791e00"]], "identity_text": "Add functions json(b)_to_tsvector() to create a text search query for matching JSON/JSONB values (Dmitry Dolgov)", "commit_aliases": ["1c1791e00"], "source_commits": ["1c1791e00"], "source_entry_id": "11.0/changes/083", "db_id": "428be590ba4e61514335442e071ab1aa", "patch_ids": ["af15325ba4741eb7ce94aeaca9e27122"], "statement_hash": "4c6d6c7ee0ab1dd64d6e0f651fd5f5136731f1f6e5d6f7a1de94358e935d22d9", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-addec613f090ff52", "cves": [], "html": "<p>Add SQL-level procedures, which can start and commit their own transactions (Peter Eisentraut)</p>\n<p>They are created with the new <a href=\"/docs/11/sql-createprocedure.html\" title=\"CREATE PROCEDURE\"><code>CREATE PROCEDURE</code></a> command and invoked via <a href=\"/docs/11/sql-call.html\" title=\"CALL\"><code>CALL</code></a>.</p>\n<p>The new <code>ALTER</code>/<code>DROP ROUTINE</code> commands allow altering/dropping of all routine-like objects, including procedures, functions, and aggregates.</p>\n<p>Also, writing <code>FUNCTION</code> is now preferred over writing <code>PROCEDURE</code> in <code>CREATE OPERATOR</code> and <code>CREATE TRIGGER</code>, because the referenced object must be a function not a procedure. However, the old syntax is still accepted for compatibility.</p>", "text": "Add SQL-level procedures, which can start and commit their own transactions (Peter Eisentraut) They are created with the new CREATE PROCEDURE command and invoked via CALL. The new ALTER/DROP ROUTINE commands allow altering/dropping of all routine-like objects, including procedures, functions, and aggregates. Also, writing FUNCTION is now preferred over writing PROCEDURE in CREATE OPERATOR and CREATE TRIGGER, because the referenced object must be a function not a procedure. However, the old syntax is still accepted for compatibility.", "title": "Add SQL-level procedures, which can start and commit their own transactions", "commits": [], "section": "Server-Side Languages", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.8", "source_hash": "7c05597903de0fb25322c8884269c7e466fd3502e1a23be0216b240c7425544f", "section_path": ["Server-Side Languages"], "commit_groups": [["33803f67f"], ["76b6aa41f"], ["a8677e3ff"], ["e0dc839e7"], ["e4128ee76"], ["fd4417e8a"]], "identity_text": "Add SQL-level procedures, which can start and commit their own transactions (Peter Eisentraut) They are created with the new CREATE PROCEDURE command and invoked via CALL. The new ALTER/DROP ROUTINE commands allow altering/dropping of all routine-like objects, including procedures, functions, and aggregates. Also, writing FUNCTION is now preferred over writing PROCEDURE in CREATE OPERATOR and CREATE TRIGGER, because the referenced object must be a function not a procedure. However, the old syntax is still accepted for compatibility.", "commit_aliases": ["33803f67f", "76b6aa41f", "a8677e3ff", "e0dc839e7", "e4128ee76", "fd4417e8a"], "source_commits": ["33803f67f", "76b6aa41f", "a8677e3ff", "e0dc839e7", "e4128ee76", "fd4417e8a"], "source_entry_id": "11.0/changes/084", "db_id": "5135771f6cf7bf716878062e41745a72", "patch_ids": ["31d6d75220105a1e70565af477f3d8e5", "5d339e15de5cd848317444f95ab520ff", "7c19eab97b972cfb399d06d0dfdc54b6", "9715922551cfceb62017f5220cb26e13", "df95ad61a3067c6a352cb4b03e0d8055", "e0c100b76f2f555fa3ea47d8758693de"], "statement_hash": "2d709a8e0b93faed1f6defd5bbfb56230210d5ee9850e7ca28cce49f66b95c74", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-f337a52e357f6c38", "cves": [], "html": "<p>Add transaction control to PL/pgSQL, PL/Perl, PL/Python, PL/Tcl, and <acronym>SPI</acronym> server-side languages (Peter Eisentraut)</p>\n<p>Transaction control is only available within top-transaction-level procedures and nested <code>DO</code> and <code>CALL</code> blocks that only contain other <code>DO</code> and <code>CALL</code> blocks.</p>", "text": "Add transaction control to PL/pgSQL, PL/Perl, PL/Python, PL/Tcl, and SPI server-side languages (Peter Eisentraut) Transaction control is only available within top-transaction-level procedures and nested DO and CALL blocks that only contain other DO and CALL blocks.", "title": "Add transaction control to PL/pgSQL, PL/Perl, PL/Python, PL/Tcl, and SPI server-side languages", "commits": [], "section": "Server-Side Languages", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.8", "source_hash": "a8213419f3c61f55de82dd9ebb7fe1a05e3d927a9c51f827b08bd8552ac9fe0f", "section_path": ["Server-Side Languages"], "commit_groups": [["056a5a3f6"], ["8561e4840"], ["b981275b6"], ["d92bc83c4"]], "identity_text": "Add transaction control to PL/pgSQL, PL/Perl, PL/Python, PL/Tcl, and SPI server-side languages (Peter Eisentraut) Transaction control is only available within top-transaction-level procedures and nested DO and CALL blocks that only contain other DO and CALL blocks.", "commit_aliases": ["056a5a3f6", "8561e4840", "b981275b6", "d92bc83c4"], "source_commits": ["056a5a3f6", "8561e4840", "b981275b6", "d92bc83c4"], "source_entry_id": "11.0/changes/085", "db_id": "ba203c2b17a4e7f1a6b9ec07386edd5a", "patch_ids": ["1dcb12e1817a0fa5a6a85027ea6c5144", "5f076e1aef418d0502951bf81239a5b2", "c8dfdc609d1048080bfe6c02737eaef4", "ee7b2cb499cabc726ce4f4d04a141b07"], "statement_hash": "26839d3d1f04ccbd564d9c3d1bbdd53d95c001271c9f2b35899b1150699f61f2", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-9f81f578c43418e1", "cves": [], "html": "<p>Add the ability to define PL/pgSQL composite-type variables as not null, constant, or with initial values (Tom Lane)</p>", "text": "Add the ability to define PL/pgSQL composite-type variables as not null, constant, or with initial values (Tom Lane)", "title": "Add the ability to define PL/pgSQL composite-type variables as not null, constant, or with initial values", "commits": [], "section": "Server-Side Languages", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.8", "source_hash": "7d6e07950b825c413df025174cf8ad1ef5fe17de427c46d3b360c861dae2cd46", "section_path": ["Server-Side Languages"], "commit_groups": [["f9263006d"]], "identity_text": "Add the ability to define PL/pgSQL composite-type variables as not null, constant, or with initial values (Tom Lane)", "commit_aliases": ["f9263006d"], "source_commits": ["f9263006d"], "source_entry_id": "11.0/changes/086", "db_id": "c743e55abd548e5d1814e204dce1bc90", "patch_ids": ["31928413ec8367c76704d16ecb2a7838"], "statement_hash": "f569e276f072fd72bfd4c385f16b2b3b0c879bdb169c0178b712440ac058f95b", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-ec613ada745aed67", "cves": [], "html": "<p>Allow PL/pgSQL to handle changes to composite types (e.g., record, row) that happen between the first and later function executions in the same session (Tom Lane)</p>\n<p>Previously, such circumstances generated errors.</p>", "text": "Allow PL/pgSQL to handle changes to composite types (e.g., record, row) that happen between the first and later function executions in the same session (Tom Lane) Previously, such circumstances generated errors.", "title": "Allow PL/pgSQL to handle changes to composite types (e.g., record, row) that happen between the first and later function executions in the same session", "commits": [], "section": "Server-Side Languages", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.8", "source_hash": "d68a6fec0c4f6c3eb768986d19d0f50095977c3bca932c38aa38bb0786da69ab", "section_path": ["Server-Side Languages"], "commit_groups": [["4b93f5799"]], "identity_text": "Allow PL/pgSQL to handle changes to composite types (e.g., record, row) that happen between the first and later function executions in the same session (Tom Lane) Previously, such circumstances generated errors.", "commit_aliases": ["4b93f5799"], "source_commits": ["4b93f5799"], "source_entry_id": "11.0/changes/087", "db_id": "a3362f67b1e652e63b477f8810eafbf7", "patch_ids": ["f114eab24a7e02f5cca2a84c5e3329c7"], "statement_hash": "d1994def39aae02afe1cce17c5c008d2559df4c0a092189349a94ebbed7ea19d", "relations": [{"rule": 2, "type": "related", "target": "3a10a968211dd2f57e469ce081a0fb6d", "evidence": {"same_day": true, "patch_ids": ["f114eab24a7e02f5cca2a84c5e3329c7"]}}], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": [{"db_id": "3a10a968211dd2f57e469ce081a0fb6d", "kind": "related", "version": "11.0", "label": "11.0", "title": "In PL/pgSQL trigger functions, the OLD and NEW variables now read as NULL when not assigned", "evidence": {"same_day": true, "patch_ids": ["f114eab24a7e02f5cca2a84c5e3329c7"]}, "url": "/docs/compare/?release=11.0#11.0-2b2bad106b554156", "source_url": "/docs/release/11.0/#id-1.11.6.27.4"}]}, {"id": "11.0-ed5c8d6f472e7e45", "cves": [], "html": "<p>Add extension <code>jsonb_plpython</code> to transform <code>JSONB</code> to/from PL/Python types (Anthony Bykov)</p>", "text": "Add extension jsonb_plpython to transform JSONB to/from PL/Python types (Anthony Bykov)", "title": "Add extension jsonb_plpython to transform JSONB to/from PL/Python types", "commits": [], "section": "Server-Side Languages", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.8", "source_hash": "274c981766a145b61ab4588071ff6056c907422ebca987281fdd1fc1bc40b253", "section_path": ["Server-Side Languages"], "commit_groups": [["3f44e3db7"]], "identity_text": "Add extension jsonb_plpython to transform JSONB to/from PL/Python types (Anthony Bykov)", "commit_aliases": ["3f44e3db7"], "source_commits": ["3f44e3db7"], "source_entry_id": "11.0/changes/088", "db_id": "42acdbe41df391e7f39cbffff6c15c15", "patch_ids": ["49eb8b6cc73b78a726535fb851d097c7"], "statement_hash": "64cc76e2ae239af268932ab3c0b724880b4bcac3abf9e8cfda632220d46c130a", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-79d3b87a53c8d336", "cves": [], "html": "<p>Add extension <code>jsonb_plperl</code> to transform <code>JSONB</code> to/from PL/Perl types (Anthony Bykov)</p>", "text": "Add extension jsonb_plperl to transform JSONB to/from PL/Perl types (Anthony Bykov)", "title": "Add extension jsonb_plperl to transform JSONB to/from PL/Perl types", "commits": [], "section": "Server-Side Languages", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.8", "source_hash": "2a79771704d5dda1d3b1b2200802888f54e86c9907fc3724c032555edb3555be", "section_path": ["Server-Side Languages"], "commit_groups": [["341e16618"]], "identity_text": "Add extension jsonb_plperl to transform JSONB to/from PL/Perl types (Anthony Bykov)", "commit_aliases": ["341e16618"], "source_commits": ["341e16618"], "source_entry_id": "11.0/changes/089", "db_id": "9efeda3c8eb4126afae5b7fed04f2d5f", "patch_ids": ["74f7e1d8c7aee54563553171ca6fecd1"], "statement_hash": "d5511c04b8520477ee3c7b839934536f057b85943f2af8b7ab8f58800807ab8c", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-12d87d68ca903372", "cves": [], "html": "<p>Change libpq to disable compression by default (Peter Eisentraut)</p>\n<p>Compression is already disabled in modern OpenSSL versions, so that the libpq setting had no effect with such libraries.</p>", "text": "Change libpq to disable compression by default (Peter Eisentraut) Compression is already disabled in modern OpenSSL versions, so that the libpq setting had no effect with such libraries.", "title": "Change libpq to disable compression by default", "commits": [], "section": "Client Interfaces", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.9", "source_hash": "8b7c8ea31266553c661c13e94dfdecc01941f01e1058cf911aa06ffc09d27b64", "section_path": ["Client Interfaces"], "commit_groups": [["e3bdb2d92"]], "identity_text": "Change libpq to disable compression by default (Peter Eisentraut) Compression is already disabled in modern OpenSSL versions, so that the libpq setting had no effect with such libraries.", "commit_aliases": ["e3bdb2d92"], "source_commits": ["e3bdb2d92"], "source_entry_id": "11.0/changes/090", "db_id": "ab14123142f2413561276971f9d15d31", "patch_ids": ["2e176b4eccc0a54ea0d5a691b357de75"], "statement_hash": "46b18ff8d5a860ece3b7f81b89c2a17c7dbb59fd5531759c5e1454095ce4483c", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-ece58f16c7776720", "cves": [], "html": "<p>Add <code>DO CONTINUE</code> option to <span>ecpg</span>'s <code>WHENEVER</code> statement (Vinayak Pokale)</p>\n<p>This generates a C <code>continue</code> statement, causing a return to the top of the contained loop when the specified condition occurs.</p>", "text": "Add DO CONTINUE option to ecpg's WHENEVER statement (Vinayak Pokale) This generates a C continue statement, causing a return to the top of the contained loop when the specified condition occurs.", "title": "Add DO CONTINUE option to ecpg's WHENEVER statement", "commits": [], "section": "Client Interfaces", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.9", "source_hash": "793e002961b618ca3439ebf81d45d813978dd4e93407ae8c0ae0db9bafd4c7d2", "section_path": ["Client Interfaces"], "commit_groups": [["d22e9d530"]], "identity_text": "Add DO CONTINUE option to ecpg's WHENEVER statement (Vinayak Pokale) This generates a C continue statement, causing a return to the top of the contained loop when the specified condition occurs.", "commit_aliases": ["d22e9d530"], "source_commits": ["d22e9d530"], "source_entry_id": "11.0/changes/091", "db_id": "91eb02b1331b4bc5b9aee073d198dd57", "patch_ids": ["86ea4adc836b749d5111c1c106a0b3c2"], "statement_hash": "141560abb1bde8dfc0b9b27437ef9d0770446d559e8996c3001f84aae01ed0a0", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-411cda0550b733c1", "cves": [], "html": "<p>Add an <span>ecpg</span> mode to enable Oracle Pro*C-style handling of char arrays.</p>\n<p>This mode is enabled with <code>-C</code>.</p>", "text": "Add an ecpg mode to enable Oracle Pro*C-style handling of char arrays. This mode is enabled with -C.", "title": "Add an ecpg mode to enable Oracle Pro*C-style handling of char arrays.", "commits": [], "section": "Client Interfaces", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.9", "source_hash": "bf6503abc5bd3b774147e66300996e8270183841720ce633313f9a54f4fe4a57", "section_path": ["Client Interfaces"], "commit_groups": [["3b7ab4380"]], "identity_text": "Add an ecpg mode to enable Oracle Pro*C-style handling of char arrays. This mode is enabled with -C.", "commit_aliases": ["3b7ab4380"], "source_commits": ["3b7ab4380"], "source_entry_id": "11.0/changes/092", "db_id": "327952deaebb848c1bc44a8117c12b77", "patch_ids": ["a90a0b7ff176ba322de34a85f573ac4b"], "statement_hash": "f8df18896dfb2161dad9a52090487cae3443cb2ed2bf008c9de75630a7d3a62a", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-dceb4e2144a2517c", "cves": [], "html": "<p>Add <span>psql</span> command <code>\\gdesc</code> to display the names and types of the columns in a query result (Pavel Stehule)</p>", "text": "Add psql command \\gdesc to display the names and types of the columns in a query result (Pavel Stehule)", "title": "Add psql command \\gdesc to display the names and types of the columns in a query result", "commits": [], "section": "Client Applications / psql", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.10.2", "source_hash": "1774464b8dc43a3ba20de9d4e0df8e4482653b16a362d2bbd106117d6c69b86d", "section_path": ["Client Applications", "psql"], "commit_groups": [["49ca462eb"]], "identity_text": "Add psql command \\gdesc to display the names and types of the columns in a query result (Pavel Stehule)", "commit_aliases": ["49ca462eb"], "source_commits": ["49ca462eb"], "source_entry_id": "11.0/changes/093", "db_id": "568ab1825d89d8f006ae0a291d78e114", "patch_ids": ["6bd6f9d6d51e15fefe7168f805539151"], "statement_hash": "f2a9ff494c88df7710eb783d1b8eae94e9f974c3ded9cdaa847e8d58ade2192c", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-19a3473229d96e5c", "cves": [], "html": "<p>Add <span>psql</span> variables to report query activity and errors (Fabien Coelho)</p>\n<p>Specifically, the new variables are <code>ERROR</code>, <code>SQLSTATE</code>, <code>ROW_COUNT</code>, <code>LAST_ERROR_MESSAGE</code>, and <code>LAST_ERROR_SQLSTATE</code>.</p>", "text": "Add psql variables to report query activity and errors (Fabien Coelho) Specifically, the new variables are ERROR, SQLSTATE, ROW_COUNT, LAST_ERROR_MESSAGE, and LAST_ERROR_SQLSTATE.", "title": "Add psql variables to report query activity and errors", "commits": [], "section": "Client Applications / psql", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.10.2", "source_hash": "bf96aced9940401a3648b97c36654c7e1377587ca21f46c5c236aed4f78aa928", "section_path": ["Client Applications", "psql"], "commit_groups": [["69835bc89"]], "identity_text": "Add psql variables to report query activity and errors (Fabien Coelho) Specifically, the new variables are ERROR, SQLSTATE, ROW_COUNT, LAST_ERROR_MESSAGE, and LAST_ERROR_SQLSTATE.", "commit_aliases": ["69835bc89"], "source_commits": ["69835bc89"], "source_entry_id": "11.0/changes/094", "db_id": "cbd12029b79759b801677f1f65cf8589", "patch_ids": ["1c23cad27524b6f652faf1a828c8ceed"], "statement_hash": "85c97fc83da955e60e3279479d4a74f058cd03d64eda29f2fa7c35d3a11d79de", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-f9d05b48eac50d11", "cves": [], "html": "<p>Allow <span>psql</span> to test for the existence of a variable (Fabien Coelho)</p>\n<p>Specifically, the syntax <code>:{?variable_name}</code> allows a variable's existence to be tested in an <code>\\if</code> statement.</p>", "text": "Allow psql to test for the existence of a variable (Fabien Coelho) Specifically, the syntax :{?variable_name} allows a variable's existence to be tested in an \\if statement.", "title": "Allow psql to test for the existence of a variable", "commits": [], "section": "Client Applications / psql", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.10.2", "source_hash": "bac0de9f285cbf8f95e1b74588726ff785b65079848a69541be04ed519066cb1", "section_path": ["Client Applications", "psql"], "commit_groups": [["d57c7a7c5"]], "identity_text": "Allow psql to test for the existence of a variable (Fabien Coelho) Specifically, the syntax :{?variable_name} allows a variable's existence to be tested in an \\if statement.", "commit_aliases": ["d57c7a7c5"], "source_commits": ["d57c7a7c5"], "source_entry_id": "11.0/changes/095", "db_id": "57c5dd3f44a5990e40e7ebcd2c773768", "patch_ids": ["7a0b347c3143ccc220d09ae4e77f8af9"], "statement_hash": "994de10116ab4464ee620fa52c403e053841ecde6bdf3c3455492928d36c3ac8", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-e48c65ae4ad058a2", "cves": [], "html": "<p>Allow environment variable <code>PSQL_PAGER</code> to control <span>psql</span>'s pager (Pavel Stehule)</p>\n<p>This allows <span>psql</span>'s default pager to be specified as a separate environment variable from the pager for other applications. <code>PAGER</code> is still honored if <code>PSQL_PAGER</code> is not set.</p>", "text": "Allow environment variable PSQL_PAGER to control psql's pager (Pavel Stehule) This allows psql's default pager to be specified as a separate environment variable from the pager for other applications. PAGER is still honored if PSQL_PAGER is not set.", "title": "Allow environment variable PSQL_PAGER to control psql's pager", "commits": [], "section": "Client Applications / psql", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.10.2", "source_hash": "16bef6fa58e77dcdc68ec5ff62318c1c134241a8cbd5325bb0efb5320d99c737", "section_path": ["Client Applications", "psql"], "commit_groups": [["5e8304fdc"]], "identity_text": "Allow environment variable PSQL_PAGER to control psql's pager (Pavel Stehule) This allows psql's default pager to be specified as a separate environment variable from the pager for other applications. PAGER is still honored if PSQL_PAGER is not set.", "commit_aliases": ["5e8304fdc"], "source_commits": ["5e8304fdc"], "source_entry_id": "11.0/changes/096", "db_id": "387bb73fbc59db26be162f0f55b1f416", "patch_ids": ["150ef34f5bb73bbf4d433c4ae517f4d6"], "statement_hash": "58ef6b5666ba6825355264aef6c1883f186feb406260d69852c78c77a6e61ff3", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-0e37ab551f211260", "cves": [], "html": "<p>Make psql's <code>\\d+</code> command always show the table's partitioning information (Amit Langote, Ashutosh Bapat)</p>\n<p>Previously, partition information would not be displayed for a partitioned table if it had no partitions. Also indicate which partitions are themselves partitioned.</p>", "text": "Make psql's \\d+ command always show the table's partitioning information (Amit Langote, Ashutosh Bapat) Previously, partition information would not be displayed for a partitioned table if it had no partitions. Also indicate which partitions are themselves partitioned.", "title": "Make psql's \\d+ command always show the table's partitioning information", "commits": [], "section": "Client Applications / psql", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.10.2", "source_hash": "ec6eced2b9ee5c76f4be7245d0cfe270d47bdca45bf074a6e4da386f47b97493", "section_path": ["Client Applications", "psql"], "commit_groups": [["05b6ec39d"]], "identity_text": "Make psql's \\d+ command always show the table's partitioning information (Amit Langote, Ashutosh Bapat) Previously, partition information would not be displayed for a partitioned table if it had no partitions. Also indicate which partitions are themselves partitioned.", "commit_aliases": ["05b6ec39d"], "source_commits": ["05b6ec39d"], "source_entry_id": "11.0/changes/097", "db_id": "ddd8a240f034d09cb69e0c7072aabf9d", "patch_ids": ["d7e1c099800b2ba39c455082c9700779"], "statement_hash": "beec64e9ac1cbe7cc263e9e6c9f7b8ff3d9cb011f8099794589c2264749321c3", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-f9bb9ec0c6f4e0d1", "cves": [], "html": "<p>Ensure that <span>psql</span> reports the proper user name when prompting for a password (Tom Lane)</p>\n<p>Previously, combinations of <code>-U</code> and a user name embedded in a <acronym>URI</acronym> caused incorrect reporting. Also suppress the user name before the password prompt when <code>--password</code> is specified.</p>", "text": "Ensure that psql reports the proper user name when prompting for a password (Tom Lane) Previously, combinations of -U and a user name embedded in a URI caused incorrect reporting. Also suppress the user name before the password prompt when --password is specified.", "title": "Ensure that psql reports the proper user name when prompting for a password", "commits": [], "section": "Client Applications / psql", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.10.2", "source_hash": "3851e392bf011d4ec27c553f473f455f1f567f095b56816b9e8a3b3fd9e18c3b", "section_path": ["Client Applications", "psql"], "commit_groups": [["15be27460"]], "identity_text": "Ensure that psql reports the proper user name when prompting for a password (Tom Lane) Previously, combinations of -U and a user name embedded in a URI caused incorrect reporting. Also suppress the user name before the password prompt when --password is specified.", "commit_aliases": ["15be27460"], "source_commits": ["15be27460"], "source_entry_id": "11.0/changes/098", "db_id": "e4716a90aa639758b4d44f3dc612213e", "patch_ids": ["77738ba8aed437819bd7491959778ba0"], "statement_hash": "9bb12d5e97b986d4732cd978a132ac6a539fae622f9a843fbd5c5abfbbc543c6", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-1c64bfc378ad4971", "cves": [], "html": "<p>Allow <code>quit</code> and <code>exit</code> to exit <span>psql</span> when given with no prior input (Bruce Momjian)</p>\n<p>Also print hints about how to exit when <code>quit</code> and <code>exit</code> are used alone on a line while the input buffer is not empty. Add a similar hint for <code>help</code>.</p>", "text": "Allow quit and exit to exit psql when given with no prior input (Bruce Momjian) Also print hints about how to exit when quit and exit are used alone on a line while the input buffer is not empty. Add a similar hint for help.", "title": "Allow quit and exit to exit psql when given with no prior input", "commits": [], "section": "Client Applications / psql", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.10.2", "source_hash": "43286ba1f616b9216852d534166241f3c02d3e71fc66ab7bba75cc790b3258e6", "section_path": ["Client Applications", "psql"], "commit_groups": [["df9f599bc"]], "identity_text": "Allow quit and exit to exit psql when given with no prior input (Bruce Momjian) Also print hints about how to exit when quit and exit are used alone on a line while the input buffer is not empty. Add a similar hint for help.", "commit_aliases": ["df9f599bc"], "source_commits": ["df9f599bc"], "source_entry_id": "11.0/changes/099", "db_id": "5ddd50866f85a5c43c8bbff8ce5fb96e", "patch_ids": ["c9a907d761431b406796090e463db7df"], "statement_hash": "08bb453874c5b924ba185cb45b62b6bca44df35e56883e8a8a8b6bcb9e11491f", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-13b9fbdbb1ac9d9b", "cves": [], "html": "<p>Make <span>psql</span> hint at using control-D when <code>\\q</code> is entered alone on a line but ignored (Bruce Momjian)</p>\n<p>For example, <code>\\q</code> does not exit when supplied in character strings.</p>", "text": "Make psql hint at using control-D when \\q is entered alone on a line but ignored (Bruce Momjian) For example, \\q does not exit when supplied in character strings.", "title": "Make psql hint at using control-D when \\q is entered alone on a line but ignored", "commits": [], "section": "Client Applications / psql", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.10.2", "source_hash": "1ca6bccfc4b6a11063e33a962324cd732f6d3481cea441625db4b30d917fd2da", "section_path": ["Client Applications", "psql"], "commit_groups": [["91389228a"]], "identity_text": "Make psql hint at using control-D when \\q is entered alone on a line but ignored (Bruce Momjian) For example, \\q does not exit when supplied in character strings.", "commit_aliases": ["91389228a"], "source_commits": ["91389228a"], "source_entry_id": "11.0/changes/100", "db_id": "dc5b6fb7a989328a5f7126c102b2693f", "patch_ids": ["a1f3986bb430d801d3ae35e7ead1e130"], "statement_hash": "317ad16c82b17831a6632c9c8649f83affe7b1bd5171f332e1cd1a8d7ce03855", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-a5d5d27df1bf9738", "cves": [], "html": "<p>Improve tab completion for <code>ALTER INDEX RESET</code>/<code>SET</code> (Masahiko Sawada)</p>", "text": "Improve tab completion for ALTER INDEX RESET/SET (Masahiko Sawada)", "title": "Improve tab completion for ALTER INDEX RESET/SET", "commits": [], "section": "Client Applications / psql", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.10.2", "source_hash": "c7756dc1edd472206904ea21252714f37690dd86f6a7111a35a35eca7476d178", "section_path": ["Client Applications", "psql"], "commit_groups": [["2b8c94e1b"]], "identity_text": "Improve tab completion for ALTER INDEX RESET/SET (Masahiko Sawada)", "commit_aliases": ["2b8c94e1b"], "source_commits": ["2b8c94e1b"], "source_entry_id": "11.0/changes/101", "db_id": "2f40b444f58c57254698d62a7e9150fd", "patch_ids": ["9c58f08247690c60e029b6f4f90a6dc3"], "statement_hash": "37e9b7a68097ccfcc9185188cfbec94744ec6063bb37c29d1ba937cdf44be140", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-3fc414fc01f18042", "cves": [], "html": "<p>Add infrastructure to allow <span>psql</span> to adapt its tab completion queries based on the server version (Tom Lane)</p>\n<p>Previously, tab completion queries could fail against older servers.</p>", "text": "Add infrastructure to allow psql to adapt its tab completion queries based on the server version (Tom Lane) Previously, tab completion queries could fail against older servers.", "title": "Add infrastructure to allow psql to adapt its tab completion queries based on the server version", "commits": [], "section": "Client Applications / psql", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.10.2", "source_hash": "a5798e3ff9afccea76b5c3acb305a938d58bdd611887aba4a371db458e38d6c4", "section_path": ["Client Applications", "psql"], "commit_groups": [["722408bcd"]], "identity_text": "Add infrastructure to allow psql to adapt its tab completion queries based on the server version (Tom Lane) Previously, tab completion queries could fail against older servers.", "commit_aliases": ["722408bcd"], "source_commits": ["722408bcd"], "source_entry_id": "11.0/changes/102", "db_id": "d73cc3fa3a9277b3b73a041107e70106", "patch_ids": ["0c3d876ea5142ca54846b4b4a10f23ff"], "statement_hash": "042ce4291bd63660fa7896b9744350dc4341129d4181716ab348e8766d3bca18", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-933cef256c656079", "cves": [], "html": "<p>Add <span>pgbench</span> expression support for NULLs, booleans, and some functions and operators (Fabien Coelho)</p>", "text": "Add pgbench expression support for NULLs, booleans, and some functions and operators (Fabien Coelho)", "title": "Add pgbench expression support for NULLs, booleans, and some functions and operators", "commits": [], "section": "Client Applications / pgbench", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.10.3", "source_hash": "41ba284f3f76d243280aaff9f0084c2972b4e53266ec1d405d93f6b1017a41ce", "section_path": ["Client Applications", "pgbench"], "commit_groups": [["bc7fa0c15"]], "identity_text": "Add pgbench expression support for NULLs, booleans, and some functions and operators (Fabien Coelho)", "commit_aliases": ["bc7fa0c15"], "source_commits": ["bc7fa0c15"], "source_entry_id": "11.0/changes/103", "db_id": "cfa65d518b36a213a88cc8f92b88f355", "patch_ids": ["f678764112d3f53e34e26137a4d40018"], "statement_hash": "e9a92c818aaf876c88bf006316c026821bccac67a2faf9b13b9b078d73c0678d", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-e662db452f7bbca6", "cves": [], "html": "<p>Add <code>\\if</code> conditional support to <span>pgbench</span> (Fabien Coelho)</p>", "text": "Add \\if conditional support to pgbench (Fabien Coelho)", "title": "Add \\if conditional support to pgbench", "commits": [], "section": "Client Applications / pgbench", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.10.3", "source_hash": "d18edf3f201876d64fbf283ffd83bce4aeced5490fc034f7703276d01e4dcc9e", "section_path": ["Client Applications", "pgbench"], "commit_groups": [["f67b113ac"]], "identity_text": "Add \\if conditional support to pgbench (Fabien Coelho)", "commit_aliases": ["f67b113ac"], "source_commits": ["f67b113ac"], "source_entry_id": "11.0/changes/104", "db_id": "a4912d0dc58d011c2968b31e10201088", "patch_ids": ["8f2fcc47faa962ba3ae44b1bde045f17"], "statement_hash": "53c468880d005cc548c99c2274714784adfd25a8a18c29b44502736972aad8b5", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-4867b7ab936c3b49", "cves": [], "html": "<p>Allow the use of non-<acronym>ASCII</acronym> characters in <span>pgbench</span> variable names (Fabien Coelho)</p>", "text": "Allow the use of non-ASCII characters in pgbench variable names (Fabien Coelho)", "title": "Allow the use of non-ASCII characters in pgbench variable names", "commits": [], "section": "Client Applications / pgbench", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.10.3", "source_hash": "69a59e5fa35a7d954e181bc8e55aea4f46bbc8c43e0864c97c70de554a2aa59e", "section_path": ["Client Applications", "pgbench"], "commit_groups": [["9d36a3866"]], "identity_text": "Allow the use of non-ASCII characters in pgbench variable names (Fabien Coelho)", "commit_aliases": ["9d36a3866"], "source_commits": ["9d36a3866"], "source_entry_id": "11.0/changes/105", "db_id": "bb0f6df209355898befb0a1ecd000bd6", "patch_ids": ["0881ff570e19830837c6e7e8bf5df1b4"], "statement_hash": "50562993e22d16dd1d6f31b4cfb5b47023b6097d02d249e21e0ea1ba07ee9cb2", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-eff671e08a2bc056", "cves": [], "html": "<p>Add <span>pgbench</span> option <code>--init-steps</code> to control the initialization steps performed (Masahiko Sawada)</p>", "text": "Add pgbench option --init-steps to control the initialization steps performed (Masahiko Sawada)", "title": "Add pgbench option --init-steps to control the initialization steps performed", "commits": [], "section": "Client Applications / pgbench", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.10.3", "source_hash": "8c8c6d2fc5c5fdacba54550e2b1985a335ad69dd3e05f9deac3f53d01bd181cb", "section_path": ["Client Applications", "pgbench"], "commit_groups": [["591c504fa"]], "identity_text": "Add pgbench option --init-steps to control the initialization steps performed (Masahiko Sawada)", "commit_aliases": ["591c504fa"], "source_commits": ["591c504fa"], "source_entry_id": "11.0/changes/106", "db_id": "f7dd508d1dd6fb5b7c3ca2f6d5f85014", "patch_ids": ["09ba057ecee29d1b5636edd9a63b3714"], "statement_hash": "85b5ab3829010b2dd974ea29d6482dd3914c51ae9dadd790cdc862e107bb7f5f", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-d81360e9018edbf9", "cves": [], "html": "<p>Add an approximately Zipfian-distributed random generator to <span>pgbench</span> (Alik Khilazhev)</p>", "text": "Add an approximately Zipfian-distributed random generator to pgbench (Alik Khilazhev)", "title": "Add an approximately Zipfian-distributed random generator to pgbench", "commits": [], "section": "Client Applications / pgbench", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.10.3", "source_hash": "87e8768e86e3ceb136565edb6b1c07b808e27e1100eb8e29d99f2c0dd232c666", "section_path": ["Client Applications", "pgbench"], "commit_groups": [["1fcd0adeb"]], "identity_text": "Add an approximately Zipfian-distributed random generator to pgbench (Alik Khilazhev)", "commit_aliases": ["1fcd0adeb"], "source_commits": ["1fcd0adeb"], "source_entry_id": "11.0/changes/107", "db_id": "c576e674c678e17e35cbec7c1dc0f5f8", "patch_ids": ["50df856d2fb3e7fd21aef2f17d02e136"], "statement_hash": "d5f7f2deddb1d83f5349378c3fd2a0618546941cad634081203daecf24d3e445", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-89104eedaf626e78", "cves": [], "html": "<p>Allow the random seed to be set in <span>pgbench</span> (Fabien Coelho)</p>", "text": "Allow the random seed to be set in pgbench (Fabien Coelho)", "title": "Allow the random seed to be set in pgbench", "commits": [], "section": "Client Applications / pgbench", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.10.3", "source_hash": "57035472ff139c6e6578c2bc3e854b63185504a958c9407218e5d85498b45257", "section_path": ["Client Applications", "pgbench"], "commit_groups": [["64f85894a"]], "identity_text": "Allow the random seed to be set in pgbench (Fabien Coelho)", "commit_aliases": ["64f85894a"], "source_commits": ["64f85894a"], "source_entry_id": "11.0/changes/108", "db_id": "45271260a2db818e3a5fbd5e4fc61371", "patch_ids": ["03d4f513f7fe8d96e42426d3c6e9fc36"], "statement_hash": "043567b7ed20da4e08f7a4c36a62cf0875c0a88984611d1a23616a35a0428e86", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-58150ec28b89fd9b", "cves": [], "html": "<p>Allow <span>pgbench</span> to do exponentiation with <code>pow()</code> and <code>power()</code> (Raúl Marín Rodríguez)</p>", "text": "Allow pgbench to do exponentiation with pow() and power() (Raúl Marín Rodríguez)", "title": "Allow pgbench to do exponentiation with pow() and power()", "commits": [], "section": "Client Applications / pgbench", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.10.3", "source_hash": "84e23987bf1348c67e03c842993bddbbe1f233c546e092ae99ebdf2fcfd43f47", "section_path": ["Client Applications", "pgbench"], "commit_groups": [["7a727c180"]], "identity_text": "Allow pgbench to do exponentiation with pow() and power() (Raúl Marín Rodríguez)", "commit_aliases": ["7a727c180"], "source_commits": ["7a727c180"], "source_entry_id": "11.0/changes/109", "db_id": "ebb4a3542c54fafa224a758205635537", "patch_ids": ["c71113edfe9b3b1b6f22dc981688e0b2"], "statement_hash": "91aa2b6b93b3c1f0593d645bbc93a22b14a66eb85ee308255fc738fd409e8954", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-b4d71b195514fa37", "cves": [], "html": "<p>Add hashing functions to <span>pgbench</span> (Ildar Musin)</p>", "text": "Add hashing functions to pgbench (Ildar Musin)", "title": "Add hashing functions to pgbench", "commits": [], "section": "Client Applications / pgbench", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.10.3", "source_hash": "3785f7ae7a1b86ce8eb9c5c8c842d1b16f304e26a3cbac05d80b8faf0722ce75", "section_path": ["Client Applications", "pgbench"], "commit_groups": [["e51a04840"]], "identity_text": "Add hashing functions to pgbench (Ildar Musin)", "commit_aliases": ["e51a04840"], "source_commits": ["e51a04840"], "source_entry_id": "11.0/changes/110", "db_id": "c620d215e9b3e2dc3c7876f99e5e8b97", "patch_ids": ["a431cd372e5bebd56707bc7d847928ea"], "statement_hash": "dcfad91620e5e826d5d4d3613a1e958a6a189ec1230900af619eb97b3daac6af", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-fc9819e366d7c610", "cves": [], "html": "<p>Make <span>pgbench</span> statistics more accurate when using <code>--latency-limit</code> and <code>--rate</code> (Fabien Coelho)</p>", "text": "Make pgbench statistics more accurate when using --latency-limit and --rate (Fabien Coelho)", "title": "Make pgbench statistics more accurate when using --latency-limit and --rate", "commits": [], "section": "Client Applications / pgbench", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.10.3", "source_hash": "25417f4108e571fd2ad9e5827821cc7a7cf06f31ea8eb617106227d3c1e27271", "section_path": ["Client Applications", "pgbench"], "commit_groups": [["16827d442"], ["c23bb6bad"]], "identity_text": "Make pgbench statistics more accurate when using --latency-limit and --rate (Fabien Coelho)", "commit_aliases": ["16827d442", "c23bb6bad"], "source_commits": ["16827d442", "c23bb6bad"], "source_entry_id": "11.0/changes/111", "db_id": "a7a46fb3455983614ec31b8e989b4d1b", "patch_ids": ["733adcea4d17ab1749892561edbeaccd", "91040386f514a52fb33989358a42d749"], "statement_hash": "d79427853df63fef9ff2ae94ae8ecdb8227439b707a01ae058595bcad46679c7", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-2dac50ee4c473fca", "cves": [], "html": "<p>Add an option to <a href=\"/docs/11/app-pgbasebackup.html\" title=\"pg_basebackup\"><span>pg_basebackup</span></a> that creates a named replication slot (Michael Banck)</p>\n<p>The option <code>--create-slot</code> creates the named replication slot (<code>--slot</code>) when the <acronym>WAL</acronym> streaming method (<code>--wal-method=stream</code>) is used.</p>", "text": "Add an option to pg_basebackup that creates a named replication slot (Michael Banck) The option --create-slot creates the named replication slot (--slot) when the WAL streaming method (--wal-method=stream) is used.", "title": "Add an option to pg_basebackup that creates a named replication slot", "commits": [], "section": "Server Applications", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.11", "source_hash": "d078b056831b83a97ca6802621f4785248155dc1e03e21ae8967d4fdc814785c", "section_path": ["Server Applications"], "commit_groups": [["3709ca1cf"]], "identity_text": "Add an option to pg_basebackup that creates a named replication slot (Michael Banck) The option --create-slot creates the named replication slot (--slot) when the WAL streaming method (--wal-method=stream) is used.", "commit_aliases": ["3709ca1cf"], "source_commits": ["3709ca1cf"], "source_entry_id": "11.0/changes/112", "db_id": "a0c12a97cd330098b5ad768d0546379b", "patch_ids": ["430a4c7bc0f5554f2457537e4b8243fb"], "statement_hash": "612e2391bcbc689a68d0a834a285daa2aa800ab41a432a300b9f17b6a4364639", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-3a85a135668861b6", "cves": [], "html": "<p>Allow <a href=\"/docs/11/app-initdb.html\" title=\"initdb\"><span>initdb</span></a> to set group read access to the data directory (David Steele)</p>\n<p>This is accomplished with the new initdb option <code>--allow-group-access</code>. Administrators can also set group permissions on the empty data directory before running initdb. Server variable <a href=\"/docs/11/runtime-config-file-locations.html#GUC-DATA-DIRECTORY\"><code>data_directory_mode</code></a> allows reading of data directory group permissions.</p>", "text": "Allow initdb to set group read access to the data directory (David Steele) This is accomplished with the new initdb option --allow-group-access. Administrators can also set group permissions on the empty data directory before running initdb. Server variable data_directory_mode allows reading of data directory group permissions.", "title": "Allow initdb to set group read access to the data directory", "commits": [], "section": "Server Applications", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.11", "source_hash": "252c3f135e0cad4abcb11dcdeb4a227f32fc7c92a4ba48950d52150a1e3676ea", "section_path": ["Server Applications"], "commit_groups": [["c37b3d08c"]], "identity_text": "Allow initdb to set group read access to the data directory (David Steele) This is accomplished with the new initdb option --allow-group-access. Administrators can also set group permissions on the empty data directory before running initdb. Server variable data_directory_mode allows reading of data directory group permissions.", "commit_aliases": ["c37b3d08c"], "source_commits": ["c37b3d08c"], "source_entry_id": "11.0/changes/113", "db_id": "ceebcc586ee816150c2c66ed85cbbba4", "patch_ids": ["6acc52018c27af56a30a29fda0066895"], "statement_hash": "81de74bed7dc5d9d6603fb6d2c9189edef723448d4ee1c1e5552037b3cf718c8", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-b2b436cf3c8007e1", "cves": [], "html": "<p>Add <a href=\"/docs/11/pgverifychecksums.html\" title=\"pg_verify_checksums\"><span>pg_verify_checksums</span></a> tool to verify database checksums while offline (Magnus Hagander)</p>", "text": "Add pg_verify_checksums tool to verify database checksums while offline (Magnus Hagander)", "title": "Add pg_verify_checksums tool to verify database checksums while offline", "commits": [], "section": "Server Applications", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.11", "source_hash": "95dd64ab542cfee27d56fbc8ff75696901a456bcd3ce7bf956e297aaa2f9a226", "section_path": ["Server Applications"], "commit_groups": [["1fde38bea"], ["a228cc13a"]], "identity_text": "Add pg_verify_checksums tool to verify database checksums while offline (Magnus Hagander)", "commit_aliases": ["1fde38bea", "a228cc13a"], "source_commits": ["1fde38bea", "a228cc13a"], "source_entry_id": "11.0/changes/114", "db_id": "7bc800b6ddf2404a8af49dadcb85f760", "patch_ids": ["493c868c123954ae362bb49b0c6af372", "6a2ad58e29e69d02b6a5334d5b22bce5"], "statement_hash": "cd09e84a3fe2abc536d67cdb5b0c937939f7d74bde53bd33adaf58b1e5d93ad9", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-a9197e235286639d", "cves": [], "html": "<p>Allow <a href=\"/docs/11/app-pgresetwal.html\" title=\"pg_resetwal\"><span>pg_resetwal</span></a> to change the <acronym>WAL</acronym> segment size via <code>--wal-segsize</code> (Nathan Bossart)</p>", "text": "Allow pg_resetwal to change the WAL segment size via --wal-segsize (Nathan Bossart)", "title": "Allow pg_resetwal to change the WAL segment size via --wal-segsize", "commits": [], "section": "Server Applications", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.11", "source_hash": "1d7e01f9a55ac52dbf26df781a07142ea7325e26749f1b2f852415b4951780af", "section_path": ["Server Applications"], "commit_groups": [["bf4a8676c"]], "identity_text": "Allow pg_resetwal to change the WAL segment size via --wal-segsize (Nathan Bossart)", "commit_aliases": ["bf4a8676c"], "source_commits": ["bf4a8676c"], "source_entry_id": "11.0/changes/115", "db_id": "c3688a65af2f14b76f98274cc78851f4", "patch_ids": ["0ec904ca051942c22a5e278c4bbbdd54"], "statement_hash": "fcec33e3235f8ff4e37a6f2e7f7e3acc927452a00cd28271b9e3a074cde1ad94", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-020a56d96186decc", "cves": [], "html": "<p>Add long options to <span>pg_resetwal</span> and <span>pg_controldata</span> (Nathan Bossart, Peter Eisentraut)</p>", "text": "Add long options to pg_resetwal and pg_controldata (Nathan Bossart, Peter Eisentraut)", "title": "Add long options to pg_resetwal and pg_controldata", "commits": [], "section": "Server Applications", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.11", "source_hash": "47cda5e08b88dd2bc9511855ef02d7bcde1b58c9f1f09946fdaf93ad7864530c", "section_path": ["Server Applications"], "commit_groups": [["e22b27f0c"]], "identity_text": "Add long options to pg_resetwal and pg_controldata (Nathan Bossart, Peter Eisentraut)", "commit_aliases": ["e22b27f0c"], "source_commits": ["e22b27f0c"], "source_entry_id": "11.0/changes/116", "db_id": "032dbbc37940357248f8193567e674ab", "patch_ids": ["3ba65b9a6f132e2aa46a0e0982aad992"], "statement_hash": "de6b68ffb2cb31c118a0badc8472afd999544a39c92bb589d14cdf5778c95fd4", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-cd71c286b1bac040", "cves": [], "html": "<p>Add <a href=\"/docs/11/app-pgreceivewal.html\" title=\"pg_receivewal\"><span>pg_receivewal</span></a> option <code>--no-sync</code> to prevent synchronous <acronym>WAL</acronym> writes, for testing (Michael Paquier)</p>", "text": "Add pg_receivewal option --no-sync to prevent synchronous WAL writes, for testing (Michael Paquier)", "title": "Add pg_receivewal option --no-sync to prevent synchronous WAL writes, for testing", "commits": [], "section": "Server Applications", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.11", "source_hash": "7bcea8714c9fcf703d0f3ff93e1b6977b2806d8749f24c473a2e9c0de06248d3", "section_path": ["Server Applications"], "commit_groups": [["5f3971291"]], "identity_text": "Add pg_receivewal option --no-sync to prevent synchronous WAL writes, for testing (Michael Paquier)", "commit_aliases": ["5f3971291"], "source_commits": ["5f3971291"], "source_entry_id": "11.0/changes/117", "db_id": "13f3806e367ef1ad598f35745f83e8b8", "patch_ids": ["410232b5129a36e27a41859397d973ab"], "statement_hash": "1491bcaf51a90b2a4500a71c32001185170c373350264f8a7783325f77787c6c", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-81ff4f14edf5c350", "cves": [], "html": "<p>Add <span>pg_receivewal</span> option <code>--endpos</code> to specify when <acronym>WAL</acronym> receiving should stop (Michael Paquier)</p>", "text": "Add pg_receivewal option --endpos to specify when WAL receiving should stop (Michael Paquier)", "title": "Add pg_receivewal option --endpos to specify when WAL receiving should stop", "commits": [], "section": "Server Applications", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.11", "source_hash": "2a3569fdded5147513de96b71170020be0110682de1789e44d9f89f02632e5f4", "section_path": ["Server Applications"], "commit_groups": [["6d9fa5264"]], "identity_text": "Add pg_receivewal option --endpos to specify when WAL receiving should stop (Michael Paquier)", "commit_aliases": ["6d9fa5264"], "source_commits": ["6d9fa5264"], "source_entry_id": "11.0/changes/118", "db_id": "9664ba088f735afaa25a006980ac1be6", "patch_ids": ["6e329c5ac3bab5466479cf5ae6ed2c38"], "statement_hash": "6ac2b54bf7ab77b1a1ab6524f497381a3d0414844a2de9ea3bafdd0806e38720", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-880c547a93befcd9", "cves": [], "html": "<p>Allow <a href=\"/docs/11/app-pg-ctl.html\" title=\"pg_ctl\"><span>pg_ctl</span></a> to send the <code>SIGKILL</code> signal to processes (Andres Freund)</p>\n<p>This was previously unsupported due to concerns over possible misuse.</p>", "text": "Allow pg_ctl to send the SIGKILL signal to processes (Andres Freund) This was previously unsupported due to concerns over possible misuse.", "title": "Allow pg_ctl to send the SIGKILL signal to processes", "commits": [], "section": "Server Applications", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.11", "source_hash": "14a7befffcafd97427bf9194ae669ea045e11739b6ebc814a39daec13e44509a", "section_path": ["Server Applications"], "commit_groups": [["2e83db3ad"]], "identity_text": "Allow pg_ctl to send the SIGKILL signal to processes (Andres Freund) This was previously unsupported due to concerns over possible misuse.", "commit_aliases": ["2e83db3ad"], "source_commits": ["2e83db3ad"], "source_entry_id": "11.0/changes/119", "db_id": "879b7bfac469d8b0819e2423c3427698", "patch_ids": ["7b5cc9dcbb869008d2f5042b03e1a1c4"], "statement_hash": "d613ec4710d919dd19c1d1ec90c05467cf23acaead0071c04777f9f72b306284", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-dd90be6e95dcd86c", "cves": [], "html": "<p>Reduce the number of files copied by <a href=\"/docs/11/app-pgrewind.html\" title=\"pg_rewind\"><span>pg_rewind</span></a> (Michael Paquier)</p>", "text": "Reduce the number of files copied by pg_rewind (Michael Paquier)", "title": "Reduce the number of files copied by pg_rewind", "commits": [], "section": "Server Applications", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.11", "source_hash": "c68a4a15563a4d0424f0c3cdd10549b95c9ae64a68afa2d18c26c67516727d16", "section_path": ["Server Applications"], "commit_groups": [["266b6acb3"]], "identity_text": "Reduce the number of files copied by pg_rewind (Michael Paquier)", "commit_aliases": ["266b6acb3"], "source_commits": ["266b6acb3"], "source_entry_id": "11.0/changes/120", "db_id": "494a3012f8ad23efa3c627cf39818950", "patch_ids": ["f41bfcea710b81a51151e05ecea904d1"], "statement_hash": "a552fbbfdc9cbed77f552bf61232ee99de360c4223c7f99ce0913243d4ae0399", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-536ce22cbe46170f", "cves": [], "html": "<p>Prevent <span>pg_rewind</span> from running as <code>root</code> (Michael Paquier)</p>", "text": "Prevent pg_rewind from running as root (Michael Paquier)", "title": "Prevent pg_rewind from running as root", "commits": [], "section": "Server Applications", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.11", "source_hash": "d80b6bb32ff84c4ba8b127a97d365ae0680044e3692c30ed1b662ded3df9b858", "section_path": ["Server Applications"], "commit_groups": [["5d5aeddab"]], "identity_text": "Prevent pg_rewind from running as root (Michael Paquier)", "commit_aliases": ["5d5aeddab"], "source_commits": ["5d5aeddab"], "source_entry_id": "11.0/changes/121", "db_id": "11a4c0c051427349cda9b1086b1d1e69", "patch_ids": ["2aaa28499fa17c5776ef0805c7f8468f"], "statement_hash": "f8602997ecd95ab5c8f7f39509b34535e63a937eedb6d5ad352dfa1a635ec906", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-92097d5f27ab61ee", "cves": [], "html": "<p>Add <span>pg_dumpall</span> option <code>--encoding</code> to control output encoding (Michael Paquier)</p>\n<p><span>pg_dump</span> already had this option.</p>", "text": "Add pg_dumpall option --encoding to control output encoding (Michael Paquier) pg_dump already had this option.", "title": "Add pg_dumpall option --encoding to control output encoding", "commits": [], "section": "Server Applications / pg_dump, pg_dumpall, pg_restore", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.11.3", "source_hash": "7607d71661db12b412d17a4b449175f5dc834359c21292fb11712e46e96e6ac5", "section_path": ["Server Applications", "pg_dump, pg_dumpall, pg_restore"], "commit_groups": [["84be67181"]], "identity_text": "Add pg_dumpall option --encoding to control output encoding (Michael Paquier) pg_dump already had this option.", "commit_aliases": ["84be67181"], "source_commits": ["84be67181"], "source_entry_id": "11.0/changes/122", "db_id": "8a3be6dda64a9c63bbd5d83e04c4fb42", "patch_ids": ["ec4ecedd6ae3ad1a5657e30c466497ca"], "statement_hash": "a1b1a073366d289d12eac1c0b2e44e48415911558a9ee262668621c17f58aad8", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-3ebceaa73bcf8442", "cves": [], "html": "<p>Add <span>pg_dump</span> option <code>--load-via-partition-root</code> to force loading of data into the partition's root table, rather than the original partition (Rushabh Lathia)</p>\n<p>This is useful if the system to be loaded to has different collation definitions or endianness, possibly requiring rows to be stored in different partitions than previously.</p>", "text": "Add pg_dump option --load-via-partition-root to force loading of data into the partition's root table, rather than the original partition (Rushabh Lathia) This is useful if the system to be loaded to has different collation definitions or endianness, possibly requiring rows to be stored in different partitions than previously.", "title": "Add pg_dump option --load-via-partition-root to force loading of data into the partition's root table, rather than the original partition", "commits": [], "section": "Server Applications / pg_dump, pg_dumpall, pg_restore", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.11.3", "source_hash": "1362f6a9caf76fbf03f21925047fabe3723535e7f8fb06d5e2a6992b0ed2a41b", "section_path": ["Server Applications", "pg_dump, pg_dumpall, pg_restore"], "commit_groups": [["23d7680d0"]], "identity_text": "Add pg_dump option --load-via-partition-root to force loading of data into the partition's root table, rather than the original partition (Rushabh Lathia) This is useful if the system to be loaded to has different collation definitions or endianness, possibly requiring rows to be stored in different partitions than previously.", "commit_aliases": ["23d7680d0"], "source_commits": ["23d7680d0"], "source_entry_id": "11.0/changes/123", "db_id": "d8ce247aa432f1b8c31b6582bd5d701f", "patch_ids": ["361ec601363ea8647143e2bc114d4d6b"], "statement_hash": "56de5be176992f656fdaa53f7c753cc20cc5d621a1be24dafc607cbfe19fc0aa", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-2f9251e411cfc586", "cves": [], "html": "<p>Add an option to suppress dumping and restoring database object comments (Robins Tharakan)</p>\n<p>The new <span>pg_dump</span>, <span>pg_dumpall</span>, and <span>pg_restore</span> option is <code>--no-comments</code>.</p>", "text": "Add an option to suppress dumping and restoring database object comments (Robins Tharakan) The new pg_dump, pg_dumpall, and pg_restore option is --no-comments.", "title": "Add an option to suppress dumping and restoring database object comments", "commits": [], "section": "Server Applications / pg_dump, pg_dumpall, pg_restore", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.11.3", "source_hash": "2c47b1ccb5e89fbdc63195f1c043857cd4c4b7dec69040c570e186b71132a0d0", "section_path": ["Server Applications", "pg_dump, pg_dumpall, pg_restore"], "commit_groups": [["1368e92e1"]], "identity_text": "Add an option to suppress dumping and restoring database object comments (Robins Tharakan) The new pg_dump, pg_dumpall, and pg_restore option is --no-comments.", "commit_aliases": ["1368e92e1"], "source_commits": ["1368e92e1"], "source_entry_id": "11.0/changes/124", "db_id": "f8b71da06e197023e3d027f3c51fea59", "patch_ids": ["399fbef1314949d74dd4de8dfb969122"], "statement_hash": "1542bc2f63bdf01ca9f4fa8d006c7d46d07846e109846cc867efaaa9fbe78f62", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-de9f810beb0272c4", "cves": [], "html": "<p>Add <span>PGXS</span> support for installing include files (Andrew Gierth)</p>\n<p>This supports creating extension modules that depend on other modules. Formerly there was no easy way for the dependent module to find the referenced one's include files. Several existing <code>contrib</code> modules that define data types have been adjusted to install relevant files. Also, PL/Perl and PL/Python now install their include files, to support creation of transform modules for those languages.</p>", "text": "Add PGXS support for installing include files (Andrew Gierth) This supports creating extension modules that depend on other modules. Formerly there was no easy way for the dependent module to find the referenced one's include files. Several existing contrib modules that define data types have been adjusted to install relevant files. Also, PL/Perl and PL/Python now install their include files, to support creation of transform modules for those languages.", "title": "Add PGXS support for installing include files", "commits": [], "section": "Source Code", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.12", "source_hash": "9631a4a5b9ee1519bd33142b062eaf496f441950008cfdc10be2d6aa83049116", "section_path": ["Source Code"], "commit_groups": [["094ffd684"], ["235526a20"], ["d06eebce5"], ["f1ca5a654"]], "identity_text": "Add PGXS support for installing include files (Andrew Gierth) This supports creating extension modules that depend on other modules. Formerly there was no easy way for the dependent module to find the referenced one's include files. Several existing contrib modules that define data types have been adjusted to install relevant files. Also, PL/Perl and PL/Python now install their include files, to support creation of transform modules for those languages.", "commit_aliases": ["094ffd684", "235526a20", "d06eebce5", "f1ca5a654"], "source_commits": ["094ffd684", "235526a20", "d06eebce5", "f1ca5a654"], "source_entry_id": "11.0/changes/125", "db_id": "df3b752844a957876f98117a141a4d1b", "patch_ids": ["0376d7456cf71f7bc8c3ea3259ac55cf", "03bf60a4bcfddb4aee8754d6f7ceee17", "f80ded311b195e159e77fb306ebfe83c", "faf72fb2e1c934dbc4c9a99144d05f21"], "statement_hash": "fac74fd0ed20cf6e8c2dc2e1b23640bd7a2fe7a0e2b611762cc4a7bbcb791385", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-39e4aef12f4b446c", "cves": [], "html": "<p>Install <code>errcodes.txt</code> to allow extensions to access the list of error codes known to <span>PostgreSQL</span> (Thomas Munro)</p>", "text": "Install errcodes.txt to allow extensions to access the list of error codes known to PostgreSQL (Thomas Munro)", "title": "Install errcodes.txt to allow extensions to access the list of error codes known to PostgreSQL", "commits": [], "section": "Source Code", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.12", "source_hash": "0fee07a93a1e74984c41a0bb2b2e2b8b97a28d19131cd909d3457da617265d91", "section_path": ["Source Code"], "commit_groups": [["1fd869066"]], "identity_text": "Install errcodes.txt to allow extensions to access the list of error codes known to PostgreSQL (Thomas Munro)", "commit_aliases": ["1fd869066"], "source_commits": ["1fd869066"], "source_entry_id": "11.0/changes/126", "db_id": "af8de42a029d75567588d441634d2ea2", "patch_ids": ["86739051b3caac1df6717bf3cf19ce45"], "statement_hash": "f601af79b78c66e70d4c40fcc9bda9c1788ca3ed40da5cbf37840cbc70fc5e57", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-7e6e55bcf08c2500", "cves": [], "html": "<p>Convert documentation to DocBook <acronym>XML</acronym> (Peter Eisentraut, Alexander Lakhin, Jürgen Purtz)</p>\n<p>The file names still use an <code>sgml</code> extension for compatibility with back branches.</p>", "text": "Convert documentation to DocBook XML (Peter Eisentraut, Alexander Lakhin, Jürgen Purtz) The file names still use an sgml extension for compatibility with back branches.", "title": "Convert documentation to DocBook XML", "commits": [], "section": "Source Code", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.12", "source_hash": "a0cd8258d174fc9e0f5c1270e84009fd723a835ad837ddf202f8d75035a2cba5", "section_path": ["Source Code"], "commit_groups": [["1c53f612b"], ["1ff01b390"], ["3c49c6fac"], ["c29c57890"]], "identity_text": "Convert documentation to DocBook XML (Peter Eisentraut, Alexander Lakhin, Jürgen Purtz) The file names still use an sgml extension for compatibility with back branches.", "commit_aliases": ["1c53f612b", "1ff01b390", "3c49c6fac", "c29c57890"], "source_commits": ["1c53f612b", "1ff01b390", "3c49c6fac", "c29c57890"], "source_entry_id": "11.0/changes/127", "db_id": "35d8a2cc37513d9594299871b7c5ad60", "patch_ids": ["0b850f7edb562632fc81009fd4b5c0b8", "70b034b977d67d4f7528a0465a95dce9", "85d64fbf7876df643071a2cc75374df0", "9ef7c6c7692224d1ddd894e98a51e665"], "statement_hash": "11a8abe140c538057a1df0ac32b9e7cecf2739789aadcf3a53bc0f5445161cf7", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-1a3cfdd7587fba1c", "cves": [], "html": "<p>Use <code>stdbool.h</code> to define type <code>bool</code> on platforms where it's suitable, which is most (Peter Eisentraut)</p>\n<p>This eliminates a coding hazard for extension modules that need to include <code>stdbool.h</code>.</p>", "text": "Use stdbool.h to define type bool on platforms where it's suitable, which is most (Peter Eisentraut) This eliminates a coding hazard for extension modules that need to include stdbool.h.", "title": "Use stdbool.h to define type bool on platforms where it's suitable, which is most", "commits": [], "section": "Source Code", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.12", "source_hash": "4ab5af379d48eb280bf2ff69a120b67f1a41e97e51403891fae52635fba8402c", "section_path": ["Source Code"], "commit_groups": [["6fe25c135"], ["7ba7986fb"], ["9a95a77d9"]], "identity_text": "Use stdbool.h to define type bool on platforms where it's suitable, which is most (Peter Eisentraut) This eliminates a coding hazard for extension modules that need to include stdbool.h.", "commit_aliases": ["6fe25c135", "7ba7986fb", "9a95a77d9"], "source_commits": ["6fe25c135", "7ba7986fb", "9a95a77d9"], "source_entry_id": "11.0/changes/128", "db_id": "486347283d6c5532d16acd16966c9fc6", "patch_ids": ["11ec2556dbd8593cadd4ccab7935edb8", "58e902e4117010276d5f039802279939", "fb5a913fe04fc0e302afd9ee1aad02b9"], "statement_hash": "dea5e3edd82e7a300aadbcac68808af20a6c82e77f42a5edce526f21f33a6b12", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-a0148bf83c9cd043", "cves": [], "html": "<p>Overhaul the way that initial system catalog contents are defined (John Naylor)</p>\n<p>The initial data is now represented in Perl data structures, making it much easier to manipulate mechanically.</p>", "text": "Overhaul the way that initial system catalog contents are defined (John Naylor) The initial data is now represented in Perl data structures, making it much easier to manipulate mechanically.", "title": "Overhaul the way that initial system catalog contents are defined", "commits": [], "section": "Source Code", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.12", "source_hash": "89f375702b2376b0f696d72accb1485a6f529ac8f1a8b341daacbec7f2a1b867", "section_path": ["Source Code"], "commit_groups": [["372728b0d"], ["5372c2c84"], ["55d26ff63"], ["9ffcccdb9"], ["a0854f107"], ["a351679c8"], ["d160882a1"], ["e90d4ddc6"]], "identity_text": "Overhaul the way that initial system catalog contents are defined (John Naylor) The initial data is now represented in Perl data structures, making it much easier to manipulate mechanically.", "commit_aliases": ["372728b0d", "5372c2c84", "55d26ff63", "9ffcccdb9", "a0854f107", "a351679c8", "d160882a1", "e90d4ddc6"], "source_commits": ["372728b0d", "5372c2c84", "55d26ff63", "9ffcccdb9", "a0854f107", "a351679c8", "d160882a1", "e90d4ddc6"], "source_entry_id": "11.0/changes/129", "db_id": "9773a2e3c16865a72cb89ce092d8f44b", "patch_ids": ["0a91fd7eea2bd9374829ba515dab3df0", "146bbe432469b2f8ab4b7b02eedcbe34", "2c15844dbb1f273678cdab191d7db6e8", "3f82aa50c53f911b5d1416fde037ec66", "643e802bb5429fae3bb9303b40c40b93", "720f9c40048efc8c8792b46269335825", "76eaa97376cc029d87cb57484e76f241", "bb35965bdb73e5dba9d3b451e5d4c8c4"], "statement_hash": "9baebafd01c5089c96fbb52e76f777150531e692f67e1bb1661d1d12b65166fe", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-f31a4682bee06909", "cves": [], "html": "<p>Prevent extensions from creating custom server parameters that take a quoted list of values (Tom Lane)</p>\n<p>This cannot be supported at present because knowledge of the parameter's property would be required even before the extension is loaded.</p>", "text": "Prevent extensions from creating custom server parameters that take a quoted list of values (Tom Lane) This cannot be supported at present because knowledge of the parameter's property would be required even before the extension is loaded.", "title": "Prevent extensions from creating custom server parameters that take a quoted list of values", "commits": [], "section": "Source Code", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.12", "source_hash": "3102df18fa840331516ae64a75e8dc100b0068e8fcb1aa385c497b9fe23b7e3d", "section_path": ["Source Code"], "commit_groups": [["846b5a525"]], "identity_text": "Prevent extensions from creating custom server parameters that take a quoted list of values (Tom Lane) This cannot be supported at present because knowledge of the parameter's property would be required even before the extension is loaded.", "commit_aliases": ["846b5a525"], "source_commits": ["846b5a525"], "source_entry_id": "11.0/changes/130", "db_id": "fa1933de3caaacef029869867e384235", "patch_ids": ["b2dfa83744fece20365ea5ce10500696"], "statement_hash": "de435aafd451f97414aa74df6755ec1a997a9c3b17bf6b70c7c4ca0a76a98e89", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-0380c6d8185e5155", "cves": [], "html": "<p>Add ability to use channel binding when using <a href=\"/docs/11/auth-password.html\" title=\"20.5. Password Authentication\"><acronym>SCRAM</acronym></a> authentication (Michael Paquier)</p>\n<p>Channel binding is intended to prevent man-in-the-middle attacks, but <acronym>SCRAM</acronym> cannot prevent them unless it can be forced to be active. Unfortunately, there is no way to do that in libpq. Support for it is expected in future versions of libpq and in interfaces not built using libpq, e.g., JDBC.</p>", "text": "Add ability to use channel binding when using SCRAM authentication (Michael Paquier) Channel binding is intended to prevent man-in-the-middle attacks, but SCRAM cannot prevent them unless it can be forced to be active. Unfortunately, there is no way to do that in libpq. Support for it is expected in future versions of libpq and in interfaces not built using libpq, e.g., JDBC.", "title": "Add ability to use channel binding when using SCRAM authentication", "commits": [], "section": "Source Code", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.12", "source_hash": "e9900e57e2ba7a3c7a5cf2db99ecd37d06b9c93d70d24ccb2c564c8ff678fb24", "section_path": ["Source Code"], "commit_groups": [["4bbf110d2"], ["9288d62bb"], ["d3fb72ea6"]], "identity_text": "Add ability to use channel binding when using SCRAM authentication (Michael Paquier) Channel binding is intended to prevent man-in-the-middle attacks, but SCRAM cannot prevent them unless it can be forced to be active. Unfortunately, there is no way to do that in libpq. Support for it is expected in future versions of libpq and in interfaces not built using libpq, e.g., JDBC.", "commit_aliases": ["4bbf110d2", "9288d62bb", "d3fb72ea6"], "source_commits": ["4bbf110d2", "9288d62bb", "d3fb72ea6"], "source_entry_id": "11.0/changes/131", "db_id": "bff2bbba65a3a78f20ded5b40ad97bcd", "patch_ids": ["58bcf4280be6f33e7af5b0fce5beae4c", "a5a66f394978747f567c44c5f56aee33", "f3f9ce78e54a2f22b140ce58321e5a30"], "statement_hash": "4ac7731ba95956c7ff0cba8389b5a9a073dde6f1c14af05a0d5c47b3b54538f1", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-5e62d54003b2c73d", "cves": [], "html": "<p>Allow background workers to attach to databases that normally disallow connections (Magnus Hagander)</p>", "text": "Allow background workers to attach to databases that normally disallow connections (Magnus Hagander)", "title": "Allow background workers to attach to databases that normally disallow connections", "commits": [], "section": "Source Code", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.12", "source_hash": "9c45d8fcc278a3c7b0a0f4ef4b33b3adeb678a0016f2368bc1e5e001c8d53d6a", "section_path": ["Source Code"], "commit_groups": [["eed1ce72e"]], "identity_text": "Allow background workers to attach to databases that normally disallow connections (Magnus Hagander)", "commit_aliases": ["eed1ce72e"], "source_commits": ["eed1ce72e"], "source_entry_id": "11.0/changes/132", "db_id": "bf4de24dee6e29eead99c6ef51fb51d4", "patch_ids": ["af425665c70b422de85126d33ad9ca7c"], "statement_hash": "b42172728d8c7ea936188af9479aaa827a39f49d295dd0d7c8bfa5e3cd08ab62", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-21b6fb7d0aead836", "cves": [], "html": "<p>Add support for hardware <acronym>CRC</acronym> calculations on <span>ARMv8</span> (Yuqi Gu, Heikki Linnakangas, Thomas Munro)</p>", "text": "Add support for hardware CRC calculations on ARMv8 (Yuqi Gu, Heikki Linnakangas, Thomas Munro)", "title": "Add support for hardware CRC calculations on ARMv8", "commits": [], "section": "Source Code", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.12", "source_hash": "9bb529820c80e4bad118d25ca812ada7ed0a23196ab2ebd89da8db11da75dc3a", "section_path": ["Source Code"], "commit_groups": [["f044d71e3"]], "identity_text": "Add support for hardware CRC calculations on ARMv8 (Yuqi Gu, Heikki Linnakangas, Thomas Munro)", "commit_aliases": ["f044d71e3"], "source_commits": ["f044d71e3"], "source_entry_id": "11.0/changes/133", "db_id": "cb36577d1888cc82e055d4a9a2b50b79", "patch_ids": ["647b77da2e2ae79ae08a85d5bd1918fb"], "statement_hash": "230ddd1801f8486e3fd8f84599fff320addedacf003bc6d2a71c5487e6ca4dc2", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-0d87f9109217aa7f", "cves": [], "html": "<p>Speed up lookups of built-in functions by OID (Andres Freund)</p>\n<p>The previous binary search has been replaced by a lookup array.</p>", "text": "Speed up lookups of built-in functions by OID (Andres Freund) The previous binary search has been replaced by a lookup array.", "title": "Speed up lookups of built-in functions by OID", "commits": [], "section": "Source Code", "category": "performance", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.12", "source_hash": "1ddf635d514b9be1402b8b86e931de9f5a1834ea84fa21c3bdd5f405d2b7a8d2", "section_path": ["Source Code"], "commit_groups": [["212e6f34d"]], "identity_text": "Speed up lookups of built-in functions by OID (Andres Freund) The previous binary search has been replaced by a lookup array.", "commit_aliases": ["212e6f34d"], "source_commits": ["212e6f34d"], "source_entry_id": "11.0/changes/134", "db_id": "94ec7e396f8dc999a09f697106c28df6", "patch_ids": ["e6e8c82618c377c8f870b965f7a9e7a5"], "statement_hash": "1b7371d563061a55030a2bdb6f00f1faa018c57f58fbb791e35a278258165c61", "relations": [], "version": "11.0", "category_label": "Performance", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-d947e917b0090b4f", "cves": [], "html": "<p>Speed up construction of query results (Andres Freund)</p>", "text": "Speed up construction of query results (Andres Freund)", "title": "Speed up construction of query results", "commits": [], "section": "Source Code", "category": "performance", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.12", "source_hash": "009117c5661b9c55dcb3714916c9cb0bf52478dd7c7c3da93f8f069a5ee96b51", "section_path": ["Source Code"], "commit_groups": [["1de09ad8e"]], "identity_text": "Speed up construction of query results (Andres Freund)", "commit_aliases": ["1de09ad8e"], "source_commits": ["1de09ad8e"], "source_entry_id": "11.0/changes/135", "db_id": "34053cc0896d4a9669457a67246f6e7e", "patch_ids": ["85f4e76a59e9c383cf86e2c7ccbafb4c"], "statement_hash": "1baaa4a1dd11964bc069e855ebcfd74456e27d8f3ca4dbddd461277708fae3e8", "relations": [], "version": "11.0", "category_label": "Performance", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-2dc50109d45a76e2", "cves": [], "html": "<p>Improve speed of access to system caches (Andres Freund)</p>", "text": "Improve speed of access to system caches (Andres Freund)", "title": "Improve speed of access to system caches", "commits": [], "section": "Source Code", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.12", "source_hash": "289e094cea74c24c298cf2c4e9a027dbf564b60c7ef76597ec4c18e422b11b65", "section_path": ["Source Code"], "commit_groups": [["141fd1b66"]], "identity_text": "Improve speed of access to system caches (Andres Freund)", "commit_aliases": ["141fd1b66"], "source_commits": ["141fd1b66"], "source_entry_id": "11.0/changes/136", "db_id": "530d1c150e18d66aee7af6b58cb4df9e", "patch_ids": ["29d10df3d54f86172861e68229213df5"], "statement_hash": "8b5ecdae4df4f12173450f136078ad967e4e1748ec9ea630c615bf56d915cb80", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-9169866db182e39b", "cves": [], "html": "<p>Add a generational memory allocator which is optimized for serial allocation/deallocation (Tomas Vondra)</p>\n<p>This reduces memory usage for logical decoding.</p>", "text": "Add a generational memory allocator which is optimized for serial allocation/deallocation (Tomas Vondra) This reduces memory usage for logical decoding.", "title": "Add a generational memory allocator which is optimized for serial allocation/deallocation", "commits": [], "section": "Source Code", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.12", "source_hash": "c14a53537d0af6cde8a251efb074496e1ebb45d22585e58639f74e6b465f3c04", "section_path": ["Source Code"], "commit_groups": [["a4ccc1cef"]], "identity_text": "Add a generational memory allocator which is optimized for serial allocation/deallocation (Tomas Vondra) This reduces memory usage for logical decoding.", "commit_aliases": ["a4ccc1cef"], "source_commits": ["a4ccc1cef"], "source_entry_id": "11.0/changes/137", "db_id": "9847caa26fee78f3b0a69dfc70e9bf63", "patch_ids": ["434d2d499e2bf454df5e0609073c2a1a"], "statement_hash": "789d55f1fe16c0d086a0320adbbe348ebf397aafbeb1cc1b2b5c2020d38060b9", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-1746e5b1e147b3cd", "cves": [], "html": "<p>Make the computation of <code>pg_class</code>.<code>reltuples</code> by <code>VACUUM</code> consistent with its computation by <code>ANALYZE</code> (Tomas Vondra)</p>", "text": "Make the computation of pg_class.reltuples by VACUUM consistent with its computation by ANALYZE (Tomas Vondra)", "title": "Make the computation of pg_class.reltuples by VACUUM consistent with its computation by ANALYZE", "commits": [], "section": "Source Code", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.12", "source_hash": "6b121e4a418ae18354bcf92f71fe7df04c120af3e94df86ef8c231a3002cf6f5", "section_path": ["Source Code"], "commit_groups": [["7c91a0364"]], "identity_text": "Make the computation of pg_class.reltuples by VACUUM consistent with its computation by ANALYZE (Tomas Vondra)", "commit_aliases": ["7c91a0364"], "source_commits": ["7c91a0364"], "source_entry_id": "11.0/changes/138", "db_id": "75ef39e2a1e5f1e2fa7899f39f183f89", "patch_ids": ["201d27d53baea195451d9f532ae517d6"], "statement_hash": "c8e56558edf875217d95429d9a630585f8473edc6e9b6f06045ccfdd1f5a0ad0", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-9d3a27da6ff2d044", "cves": [], "html": "<p>Update to use <span>perltidy</span> version <code>20170521</code> (Tom Lane, Peter Eisentraut)</p>", "text": "Update to use perltidy version 20170521 (Tom Lane, Peter Eisentraut)", "title": "Update to use perltidy version 20170521", "commits": [], "section": "Source Code", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.12", "source_hash": "e8d219272cfc1a988fcebd279cfd53803a0ae828f3ae3e826e8b11f23c899504", "section_path": ["Source Code"], "commit_groups": [["46cda5bf7"], ["a2ada08d4"]], "identity_text": "Update to use perltidy version 20170521 (Tom Lane, Peter Eisentraut)", "commit_aliases": ["46cda5bf7", "a2ada08d4"], "source_commits": ["46cda5bf7", "a2ada08d4"], "source_entry_id": "11.0/changes/139", "db_id": "1822e228a6bd6670b81ec36c715c197b", "patch_ids": ["14276318f7c4402df20bc60e880fbc25", "bcc6408a0de5637e4b3ac0bb9eecd3e9"], "statement_hash": "9cec03802250cebcbf437ee3c133afd35ddb6dd396a4e6bb15fcb3cfeed4aec4", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-7adfcc20f3986a03", "cves": [], "html": "<p>Allow extension <a href=\"/docs/11/pgprewarm.html\" title=\"F.27. pg_prewarm\"><code>pg_prewarm</code></a> to restore the previous shared buffer contents on startup (Mithun Cy, Robert Haas)</p>\n<p>This is accomplished by having <code>pg_prewarm</code> store the shared buffers' relation and block number data to disk occasionally during server operation, and at shutdown.</p>", "text": "Allow extension pg_prewarm to restore the previous shared buffer contents on startup (Mithun Cy, Robert Haas) This is accomplished by having pg_prewarm store the shared buffers' relation and block number data to disk occasionally during server operation, and at shutdown.", "title": "Allow extension pg_prewarm to restore the previous shared buffer contents on startup", "commits": [], "section": "Additional Modules", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.13", "source_hash": "10a681cbbfb3945ddaed6a754f3000403d4484d6dc4b5c3fd85f800c9aaefb97", "section_path": ["Additional Modules"], "commit_groups": [["79ccd7cbd"]], "identity_text": "Allow extension pg_prewarm to restore the previous shared buffer contents on startup (Mithun Cy, Robert Haas) This is accomplished by having pg_prewarm store the shared buffers' relation and block number data to disk occasionally during server operation, and at shutdown.", "commit_aliases": ["79ccd7cbd"], "source_commits": ["79ccd7cbd"], "source_entry_id": "11.0/changes/140", "db_id": "6c1433a7e00c9eb30caebd7fbd2ee276", "patch_ids": ["6c8f42aa5d46c2a7e94f757fa83ce295"], "statement_hash": "761e5bdd9b2f783ae29b40481b646b4c49e0b997a206ce3b688f5f69f2e2983a", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-10e4cc01270c6fab", "cves": [], "html": "<p>Add <a href=\"/docs/11/pgtrgm.html\" title=\"F.31. pg_trgm\"><code>pg_trgm</code></a> function <code>strict_word_similarity()</code> to compute the similarity of whole words (Alexander Korotkov)</p>\n<p>The function <code>word_similarity()</code> already existed for this purpose, but it was designed to find similar parts of words, while <code>strict_word_similarity()</code> computes the similarity to whole words.</p>", "text": "Add pg_trgm function strict_word_similarity() to compute the similarity of whole words (Alexander Korotkov) The function word_similarity() already existed for this purpose, but it was designed to find similar parts of words, while strict_word_similarity() computes the similarity to whole words.", "title": "Add pg_trgm function strict_word_similarity() to compute the similarity of whole words", "commits": [], "section": "Additional Modules", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.13", "source_hash": "6d23fa5433480140fdb813626bea2e73635e1fb469a74f533bc4cd9770e3bc83", "section_path": ["Additional Modules"], "commit_groups": [["be8a7a686"]], "identity_text": "Add pg_trgm function strict_word_similarity() to compute the similarity of whole words (Alexander Korotkov) The function word_similarity() already existed for this purpose, but it was designed to find similar parts of words, while strict_word_similarity() computes the similarity to whole words.", "commit_aliases": ["be8a7a686"], "source_commits": ["be8a7a686"], "source_entry_id": "11.0/changes/141", "db_id": "f1014ce3e43c216b9dcad78da5138a81", "patch_ids": ["0f4b342b8cb93241c23364cdf5c1dda7"], "statement_hash": "151ea6bb2fb9877874d17ece46593f2b4575c2fc5767ad96fc013d3715e67806", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-6c154812bfe1d5c9", "cves": [], "html": "<p>Allow <a href=\"/docs/11/btree-gin.html\" title=\"F.6. btree_gin\"><code>btree_gin</code></a> to index <code>bool</code>, <code>bpchar</code>, <code>name</code> and <code>uuid</code> data types (Matheus Oliveira)</p>", "text": "Allow btree_gin to index bool, bpchar, name and uuid data types (Matheus Oliveira)", "title": "Allow btree_gin to index bool, bpchar, name and uuid data types", "commits": [], "section": "Additional Modules", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.13", "source_hash": "76cd0462b6d8495d46fc6b951d0307febca8e7c496dcfa00ddc67d8ab8f29fea", "section_path": ["Additional Modules"], "commit_groups": [["f4cd7102b"]], "identity_text": "Allow btree_gin to index bool, bpchar, name and uuid data types (Matheus Oliveira)", "commit_aliases": ["f4cd7102b"], "source_commits": ["f4cd7102b"], "source_entry_id": "11.0/changes/142", "db_id": "80f872b8ca7bc9afc22bc564bcae5ba2", "patch_ids": ["6b2b72e5e845359fd705b45486be520a"], "statement_hash": "2afac32938ba1f1995e4ec03c7979cd33b05d3b17febc30eed00af21a2ed85c1", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-c50f41464bb2aa93", "cves": [], "html": "<p>Allow <a href=\"/docs/11/cube.html\" title=\"F.9. cube\"><code>cube</code></a> and <a href=\"/docs/11/seg.html\" title=\"F.34. seg\"><code>seg</code></a> extensions to perform index-only scans using GiST indexes (Andrey Borodin)</p>", "text": "Allow cube and seg extensions to perform index-only scans using GiST indexes (Andrey Borodin)", "title": "Allow cube and seg extensions to perform index-only scans using GiST indexes", "commits": [], "section": "Additional Modules", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.13", "source_hash": "b42910cc3332b4fabbf3664c49e330f2ecf4282339eb7f4325eb23591dda097d", "section_path": ["Additional Modules"], "commit_groups": [["de1d042f5"]], "identity_text": "Allow cube and seg extensions to perform index-only scans using GiST indexes (Andrey Borodin)", "commit_aliases": ["de1d042f5"], "source_commits": ["de1d042f5"], "source_entry_id": "11.0/changes/143", "db_id": "6fcbf080c9e781e9bd1ee58aea808abb", "patch_ids": ["3180dab0deb6c9113e5c77fd3fd94174"], "statement_hash": "c155f5baa195e10315b0fa5df0046f032e52635ecd9b2263557d159b3b72364d", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-713885ee9bd1fc03", "cves": [], "html": "<p>Allow retrieval of negative cube coordinates using the <code>~&gt;</code> operator (Alexander Korotkov)</p>\n<p>This is useful for KNN-GiST searches when looking for coordinates in descending order.</p>", "text": "Allow retrieval of negative cube coordinates using the ~> operator (Alexander Korotkov) This is useful for KNN-GiST searches when looking for coordinates in descending order.", "title": "Allow retrieval of negative cube coordinates using the ~> operator", "commits": [], "section": "Additional Modules", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.13", "source_hash": "3842508fe0dd5e6a829f4322a069c633f89a1b53f6dea2ab8b1cb00928da2118", "section_path": ["Additional Modules"], "commit_groups": [["f50c80dbb"]], "identity_text": "Allow retrieval of negative cube coordinates using the ~> operator (Alexander Korotkov) This is useful for KNN-GiST searches when looking for coordinates in descending order.", "commit_aliases": ["f50c80dbb"], "source_commits": ["f50c80dbb"], "source_entry_id": "11.0/changes/144", "db_id": "d0aa28ed8bdd90ef52a67c9ba53903da", "patch_ids": ["9d1210542967d5503d0d492e58a8c8b2"], "statement_hash": "121932e5d04988888fc75d9f792800af88fcf96b2654665d497a2a053f21253d", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-64d9029ba7e18c37", "cves": [], "html": "<p>Add Vietnamese letter handling to the <a href=\"/docs/11/unaccent.html\" title=\"F.43. unaccent\"><code>unaccent</code></a> extension (Dang Minh Huong, Michael Paquier)</p>", "text": "Add Vietnamese letter handling to the unaccent extension (Dang Minh Huong, Michael Paquier)", "title": "Add Vietnamese letter handling to the unaccent extension", "commits": [], "section": "Additional Modules", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.13", "source_hash": "c1c2941e0365790a6aada60bead8aff779349f538a1e18912cef4501f7532046", "section_path": ["Additional Modules"], "commit_groups": [["ec0a69e49"]], "identity_text": "Add Vietnamese letter handling to the unaccent extension (Dang Minh Huong, Michael Paquier)", "commit_aliases": ["ec0a69e49"], "source_commits": ["ec0a69e49"], "source_entry_id": "11.0/changes/145", "db_id": "c9b9043c2dae3234a019994ac7e7b2e9", "patch_ids": ["0357944373de665dac91a340dac183e6"], "statement_hash": "93c609692805e4b6b0f88a2fefca67045e7f468c774485cf897e7daed69e9eed", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-4ec3e3bd614b97c5", "cves": [], "html": "<p>Enhance <a href=\"/docs/11/amcheck.html\" title=\"F.2. amcheck\"><code>amcheck</code></a> to check that each heap tuple has an index entry (Peter Geoghegan)</p>", "text": "Enhance amcheck to check that each heap tuple has an index entry (Peter Geoghegan)", "title": "Enhance amcheck to check that each heap tuple has an index entry", "commits": [], "section": "Additional Modules", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.13", "source_hash": "ea79d6f6f0f25157dff7c70d3371dafe4eb5753ca27ea8f0e63d65511620159b", "section_path": ["Additional Modules"], "commit_groups": [["7f563c09f"]], "identity_text": "Enhance amcheck to check that each heap tuple has an index entry (Peter Geoghegan)", "commit_aliases": ["7f563c09f"], "source_commits": ["7f563c09f"], "source_entry_id": "11.0/changes/146", "db_id": "c859a8f8c7b738283e9fc94a73ad589a", "patch_ids": ["5a8ed74bb283c971489bc5efdc652e49"], "statement_hash": "8d9c6406a9ce9c93849bc78781e36512e250627ee7a01cd54ea3e817864d2553", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-6f304ca3d06ba27c", "cves": [], "html": "<p>Have <a href=\"/docs/11/adminpack.html\" title=\"F.1. adminpack\"><code>adminpack</code></a> use the new default file system access roles (Stephen Frost)</p>\n<p>Previously, only superusers could call <code>adminpack</code> functions; now role permissions are checked.</p>", "text": "Have adminpack use the new default file system access roles (Stephen Frost) Previously, only superusers could call adminpack functions; now role permissions are checked.", "title": "Have adminpack use the new default file system access roles", "commits": [], "section": "Additional Modules", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.13", "source_hash": "897127fdbe06c4acaafbbbf98b41859272d902716ec032351660f43e365d1c7c", "section_path": ["Additional Modules"], "commit_groups": [["11523e860"]], "identity_text": "Have adminpack use the new default file system access roles (Stephen Frost) Previously, only superusers could call adminpack functions; now role permissions are checked.", "commit_aliases": ["11523e860"], "source_commits": ["11523e860"], "source_entry_id": "11.0/changes/147", "db_id": "b927f77f6c379e3df3fb9257f14a8557", "patch_ids": ["dc2579f2ac86796bba3e529db6afcab1"], "statement_hash": "7943b40ab57d65245f38ca4a895110576e568eaf67b02ad97466d91bb0c34779", "relations": [{"rule": 2, "type": "related", "target": "9fb362899a6b27f50f661fe029c5b5e3", "evidence": {"same_day": true, "patch_ids": ["dc2579f2ac86796bba3e529db6afcab1"]}}], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": [{"db_id": "9fb362899a6b27f50f661fe029c5b5e3", "kind": "related", "version": "11.0", "label": "11.0", "title": "Remove deprecated adminpack functions pg_file_read(), pg_file_length(), and pg_logfile_rotate()", "evidence": {"same_day": true, "patch_ids": ["dc2579f2ac86796bba3e529db6afcab1"]}, "url": "/docs/compare/?release=11.0#11.0-b0f3872508582cd7", "source_url": "/docs/release/11.0/#id-1.11.6.27.4"}]}, {"id": "11.0-e3d5a61f940ac9c6", "cves": [], "html": "<p>Widen <code>pg_stat_statement</code>'s query ID to 64 bits (Robert Haas)</p>\n<p>This greatly reduces the chance of query ID hash collisions. The query ID can now potentially display as a negative value.</p>", "text": "Widen pg_stat_statement's query ID to 64 bits (Robert Haas) This greatly reduces the chance of query ID hash collisions. The query ID can now potentially display as a negative value.", "title": "Widen pg_stat_statement's query ID to 64 bits", "commits": [], "section": "Additional Modules", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.13", "source_hash": "9aee8b8a48ba3f9d4de3038864f86551f8c515fe2bfed89017de748d246ed8bc", "section_path": ["Additional Modules"], "commit_groups": [["cff440d36"]], "identity_text": "Widen pg_stat_statement's query ID to 64 bits (Robert Haas) This greatly reduces the chance of query ID hash collisions. The query ID can now potentially display as a negative value.", "commit_aliases": ["cff440d36"], "source_commits": ["cff440d36"], "source_entry_id": "11.0/changes/148", "db_id": "cfa11fa74eb230e29de71cc99e87ff06", "patch_ids": ["a3899478d8ed23a4dffcb46a113776b9"], "statement_hash": "aae9f267db0da793abb612ab114d96045f9f93bed9b72055f8fb49e00f704363", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-aa844fd2dc486f89", "cves": [], "html": "<p>Remove the <code>contrib/start-scripts/osx</code> scripts since they are no longer recommended (use <code>contrib/start-scripts/macos</code> instead) (Tom Lane)</p>", "text": "Remove the contrib/start-scripts/osx scripts since they are no longer recommended (use contrib/start-scripts/macos instead) (Tom Lane)", "title": "Remove the contrib/start-scripts/osx scripts since they are no longer recommended (use contrib/start-scripts/macos instead)", "commits": [], "section": "Additional Modules", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.13", "source_hash": "2803f29a5a24ba22fa5f1ad5923919e5cfc2495e581df4e6444ac65ed41c7349", "section_path": ["Additional Modules"], "commit_groups": [["527878635"]], "identity_text": "Remove the contrib/start-scripts/osx scripts since they are no longer recommended (use contrib/start-scripts/macos instead) (Tom Lane)", "commit_aliases": ["527878635"], "source_commits": ["527878635"], "source_entry_id": "11.0/changes/149", "db_id": "7098714ab96ed9bbd5b84dd5378ce13b", "patch_ids": ["460c117d45167b16f66bdc5fab6ad381"], "statement_hash": "dbd04e0da2933bb52ac9f3d54c97e3d1347ecc96f58be10c63f494c178095c5c", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}, {"id": "11.0-699a2bf9e7131ae3", "cves": [], "html": "<p>Remove the <code>chkpass</code> extension (Peter Eisentraut)</p>\n<p>This extension is no longer considered to be a usable security tool or example of how to write an extension.</p>", "text": "Remove the chkpass extension (Peter Eisentraut) This extension is no longer considered to be a usable security tool or example of how to write an extension.", "title": "Remove the chkpass extension", "commits": [], "section": "Additional Modules", "category": "feature", "source_url": "/docs/release/11.0/#id-1.11.6.27.5.13", "source_hash": "95299c9f9c2230254234ec626356d19fb8b136d7039caef28751950196c5d868", "section_path": ["Additional Modules"], "commit_groups": [["5d3cad564"]], "identity_text": "Remove the chkpass extension (Peter Eisentraut) This extension is no longer considered to be a usable security tool or example of how to write an extension.", "commit_aliases": ["5d3cad564"], "source_commits": ["5d3cad564"], "source_entry_id": "11.0/changes/150", "db_id": "012f7d9145630497084cdbbc91bd1273", "patch_ids": ["553aea83ba19f896ed71e578247646c9"], "statement_hash": "98de147845068f753a2ddc8d6d3457fb327083492cbdc9c4d065e7691423bacf", "relations": [], "version": "11.0", "category_label": "Features", "also_in": [], "variants": [], "related_changes": []}]}], "stats": [{"key": "all", "label": "All changes", "count": 170}, {"key": "feature", "label": "Features", "count": 134}, {"key": "bugfix", "label": "Bug fixes", "count": 1}, {"key": "security", "label": "Security", "count": 0}, {"key": "performance", "label": "Performance", "count": 15}, {"key": "compatibility", "label": "Compatibility", "count": 20}, {"key": "improvement", "label": "Improvements", "count": 0}], "total": 170, "release_count": 1, "cross_major": false, "cve_count": 0, "cves": [], "cve_available": true, "remaining_cves": [], "security_regressions": [], "warnings": [], "candidate_count": 170, "already_in_source_count": 0, "duplicate_count": 0, "excluded_count": 0, "exclusions": [], "source_as_of": "2026-09-26", "security_as_of": "2026-09-26"}