diff --git a/doc/src/sgml/filelist.sgml b/doc/src/sgml/filelist.sgml index 56b8da0448..f010cd4c3b 100644 --- a/doc/src/sgml/filelist.sgml +++ b/doc/src/sgml/filelist.sgml @@ -166,6 +166,7 @@ + diff --git a/doc/src/sgml/release-11.sgml b/doc/src/sgml/release-11.sgml new file mode 100644 index 0000000000..1b5db2912c --- /dev/null +++ b/doc/src/sgml/release-11.sgml @@ -0,0 +1,2630 @@ + + + + + Release 11 + + + Release date: + 2018-??-?? (CURRENT AS OF 2018-05-01) + + + + Overview + + + Major enhancements in PostgreSQL 11 include: + + + + + + + XXX + + + + The above items are explained in more detail in the sections below. + + + + + + + Migration to Version 11 + + + A dump/restore using , or use of , is required for those wishing to migrate data + from any previous release. + + + + Version 11 contains a number of changes that may affect compatibility + with previous releases. Observe the following incompatibilities: + + + + + + + + + Have pg_dump dump all aspects of a database (Haribabu Kommi) + + + + Previously database attributes like GRANT/REVOKE permissions and ALTER + DATABASE SET and ALTER ROLE IN DATABASE SET variable settings were only + dumped by pg_dumpall. Now pg_dump --create and pg_restore --create + will restore all database aspects. pg_dumpall -g will now only output + role and tablespace-related attributes. pg_dumpall's output (without + -g) is unchanged. + + + + pg_dump and pg_restore, without --clean, no longer dump/restore database + comments and security labels. + + + + pg_dumpall --clean now restores the "postgres" and "template1" databases + with the original locale and encoding settings. + + + + A restore of pg_dumpall will now create databases with their original + locale and encoding, and will fail if the creation fails. Previously + CREATE DATABASE would be dumped without such specifications if the + database locale and encoding matched the old cluster's defaults. + + + + DID I GET EVERYTHING? + + + + + + + + Correct information schema column tables.table_type to return 'FOREIGN' + instead of 'FOREIGN TABLE' (Peter Eisentraut) + + + + This new output matches the SQL standard. + + + + + + + + Change the ps process display labels to match the + pg_stat_activity.backend_type labels (Peter Eisentraut) + + + + + + + + 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, and commas. + + + + + + + + Fix to_date(), to_number(), and to_timestamp() to skip a character for + each template character (Tom Lane) + + + + Previously _bytes_ were skipped. + + + + + + + + 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. + + + + + + + + Have libpq's PQhost() always return the actual connected host (Hari + Babu) + + + + Previously PQhost() often returned the supplied host parameters, which + could contain several hosts. The same is true of PQport(), which now + returns the actual port number, not the multiple supplied port numbers. + ACCURATE? + + + + + + + + Remove relhaspkey column from system table pg_class (Peter Eisentraut) + + + + Applications needing to check for a primary key should consult pg_index. + + + + + + + + Replace system table pg_proc's proisagg and proiswindow with prokind + (Peter Eisentraut) + + + + This new column more clearly identifies functions, procedures, + aggregates, and window functions. + + + + + + + + Cause large object permission checks to happen on large object open, + lo_open(), not read/write (Tom Lane) + + + + + + + + Remove deprecated contrib/adminpack functions pg_file_read(), + pg_file_length(), and pg_logfile_rotate() (Stephen Frost) + + + + These function are now present by default. Old adminpack installs will + continue to have access to these functions until they are updated via + ALTER EXTENSION ... UPDATE. + + + + + + + + Honor the capitalization of double-quoted command options (Daniel + Gustafsson) + + + + Previously index options names like ("FillFactor" = 50) were + automatically lower-cased. This quoted capitalization will now generate + an error. + + + + + + + + Remove WITH clause in CREATE FUNCTION (Michael Paquier) + + + + Postgres has long supported a more standard-compliant syntax for this + capability. + + + + + + + + + + Changes + + + Below you will find a detailed account of the changes between + PostgreSQL 10 and the previous major + release. + + + + Server + + + Partitioning + + + + + + + + Allow faster partition elimination during query processing (Amit Langote, + David Rowley, Dilip Kumar) + + + + This speeds access to partitioned tables with many partitions. + + + + + + + + Allow partition elimination during query execution (David Rowley, Beena + Emerson) + + + + Previously partition elimination could only happen at planning time, + meaning many joins and prepared queries could not use partition + elimination. + + + + + + + + Allow the creation of partitions based on hashing a key (Amul Sul) + + + + + + + + Allow updated rows to automatically move to new partitions based on the + new row contents (Amit Khandekar) + + + + + + + + Allow partitioned tables to have a default partition (Jeevan Ladhe, + Beena Emerson, Ashutosh Bapat, Rahila Syed, Robert Haas) + + + + The default partition can store rows that don't match any of the other + defined partitions, and is searched accordingly. + + + + + + + + Allow UNIQUE indexes on partitioned tables if the partition key + guarantees uniqueness (Álvaro Herrera, Amit Langote) + + + + + + + + Allow indexes on a partitioned table to be automatically created in any + child partitions (Álvaro Herrera) + + + + The new command ALTER INDEX ATTACH PARTITION allows indexes to be attached + to partitions. This does not behave as a global index since the + contents are private to each index. WARN WHEN USING AN EXISTING INDEX? + + + + + + + + Allow foreign keys on partitioned tables (Álvaro Herrera) + + + + + + + + Allow INSERTs, UPDATEs, and COPY on partitioned tables to properly route + rows to foreign partitions (Etsuro Fujita, Amit Langote) + + + + This is supported by postgres_fdw foreign tables. + + + + + + + + Allow FOR EACH ROW triggers on partitioned tables (Álvaro Herrera) + + + + Creation of a trigger on partitioned tables automatically creates + triggers on all partition tables, and on newly-created ones. This also + allows deferred unique constraints on partitioned tables. + + + + + + + + Allow equality joins between partitioned tables with identically + partitioned child tables to join the child tables directly (Ashutosh + Bapat) + + + + This features is disabled by default but can be enabled by changing + enable_partitionwise_join. + + + + + + + + Perform aggregation on each partition, and then merge the results + (Jeevan Chalke, Ashutosh Bapat, Robert Haas) + + + + This features is disabled by default but can be enabled by changing + enable_partitionwise_aggregate. + + + + + + + + Allow postgres_fdw to push down aggregates to foreign tables that are + partitions (Jeevan Chalke) + + + + + + + + + + Parallel Queries + + + + + + + + Allow indexes to be built in parallel (Peter + Geoghegan, Rushabh Lathia, Heikki Linnakangas) + + + + + + + + Allow hash joins to be performed in parallel using a shared hash table + (Thomas Munro) + + + + + + + + Allow UNION to run each SELECT in parallel if the individual SELECTs cannot be + parallelized (Amit Khandekar, Robert Haas, Amul Sul) + + + + + + + + Allow partition scans to more efficiently use parallel workers (Amit Khandekar, Robert + Haas, Amul Sul) + + + + + + + + Allow LIMIT to be passed to parallel workers (Robert Haas, Tom Lane) + + + + This allows workers to reduce returned results and use targeted index + scans. + + + + + + + + Add server option parallel_leader_participation to control if the leader + executes subplans (Thomas Munro) + + + + The default is enabled, meaning the leader will execute subplans. + + + + + + + + Allow parallelization of commands CREATE TABLE .. AS, SELECT INTO, and CREATE + MATERIALIZED VIEW (Haribabu Kommi) + + + + + + + + Add reporting of parallel worker sort activity to EXPLAIN (Robert Haas, Tom Lane) + + + + + + + + + + Indexes + + + + + + + + Allow indexes to INCLUDE columns that are not part of the unique + constraint but are available for index-only scans (Anastasia + Lubennikova, Alexander Korotkov, Teodor Sigaev) + + + + This is also useful for including columns that don't have btree support. + + + + + + + + Remember the highest btree index page to optimize future monotonically + increasing index additions (Pavan Deolasee, Peter Geoghegan) + + + + + + + + Allow entire hash index pages to be scanned (Ashutosh Sharma) + + + + Previously each hash index entry has to be locked and scanned + separately. + + + + + + + + Add predicate locking for Hash, GiST and GIN indexes (Shubham Barai) + + + + This reduces the likelyhood of serialization conflicts. ACCURATE? + + + + + + + + Allow heap-only-tuple (HOT) updates for expression indexes when the + values of the expressions are unchanged (Konstantin Knizhnik) + + + + + + + + SP-Gist + + + + + + + + Add TEXT prefix operator ^@ which is supported by SP-GiST (Ildus + Kurbangaliev) + + + + This is similar to using LIKE 'word%' with btree indexes, but is more efficient. + + + + + + + + Allow polygons to be indexed with SP-GiST (Nikita Glukhov, Alexander + Korotkov) + + + + + + + + Allow SP-GiST indexes to optionally use compression (Teodor Sigaev, + Heikki Linnakangas, Alexander Korotkov, Nikita Glukhov) + + + + + + + + + + + + Optimizer + + + + + + + + Improve the selection of the optimizer statistics' most-common-values + (Jeff Janes, Dean Rasheed) + + + + Previously most-common-values (MCV) were chosen based on their + significance compared to all column values. Now, MCV are chosen based + on their significance compared to the non-MCV values. This improves the + statistics for uniform (fewer) and non-uniform (more) distributions. + + + + + + + + Improve selectivity estimates for >= and <= when the constants are not + common values (Tom Lane) + + + + Previously such cases used the same selectivity as > and <, + respectively. This change is particularly useful for BETWEEN with + small ranges. + + + + + + + + Optimize var = var to var IS NOT NULL where equivalent (Tom Lane) + + + + This leads to better selectivity estimates. + + + + + + + + Improve row count optimizer estimates for EXISTS and NOT EXISTS queries (Tom + Lane) + + + + + + + + Add optimizer selectivity costs for HAVING clauses (Tom Lane) + + + + + + + + + + General Performance + + + + + + + + Add Just-In-time (JIT) compilation of plans run the by the executor +(Andres Freund) + + + + + + + + Allow bitmap scans to perform index-only scans when possible (Alexander + Kuzmenkov) + + + + + + + + Update the free space map during vacuum (Claudio Freire) + + + + This allows free space to be reused more quickly. + + + + + + + + Improve performance of committing multiple concurrent transactions (Amit Kapila) + + + + + + + + Reduce memory usage for queries using set-returning functions in their + target lists (Andres Freund) + + + + + + + + Allow postgres_fdw to push UPDATEs and DELETEs using joins to foreign + servers (Etsuro Fujita) + + + + Previously only non-join UPDATEs and DELETEs were pushed. + + + + + + + + + + Monitoring + + + + + + + + Show memory usage in log_statement_stats, log_parser_stats, + log_planner_stats, log_executor_stats (Justin Pryzby, Peter Eisentraut) + + + + + + + + Add pg_stat_activity.backend_type now shows the type of background worker +(Peter Eisentraut) + + + + Add bgw_type to the background worker C structure (Peter Eisentraut) + + + + This is displayed to the user in pg_stat_activity.backend_type and ps + output. + + + + + + + + Have log_autovacuum_min_duration log skipped tables that are + concurrently being dropped (Nathan Bossart) + + + + + + + + Information Schema + + + + + + + + Add information_schema columns related to table constraints and triggers + (Michael Paquier) + + + + Specifically, table_constraints.enforced, triggers.action_order, + triggers.action_reference_old_table, and + triggers.action_reference_new_table. + + + + + + + + + + + <acronym>Authentication</acronym> + + + + + + + + Add libpq option to support channel binding when using SCRAM + authentication (Michael Paquier) + + + + Channel binding requires the server end of the TLS connection to prove + that it knows the password. The options are + 'scram_channel_binding=tls-unique' and + 'scram_channel_binding=tls-server-end-point'. + + + + WHAT DOES THIS DOC TEXT MEAN? "An empty value specifies that the client will not + use channel binding. The default value is tls-unique." + + + + + + + + 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. + + + + + + + + Allow LDAP authentication to use ldaps (Thomas Munro) + + + + We already supported LDAP over TLS by using ldaptls=1. This new TLS + LDAP method of encrypted LDAP is enabled with ldapscheme=ldaps or + ldapurl=ldaps://. + + + + + + + + Improve LDAP logging of errors (Thomas Munro) + + + + + + + + + + Permissions + + + + + + + + Add default roles which controls file system access (Stephen Frost) + + + + Specifically, the new roles are: pg_read_server_files, + pg_write_server_files, pg_execute_server_program. These roles now also + control who can use COPY and extension file_fdw. Previously only + super-users could use these functions, and that is still the default + behavior. + + + + + + + + Allow access to file system functions to be controlled by GRANT/REVOKE + permissions, rather than super-user checks (Michael Paquier) + + + + Specifically, these functions were modified: pg_ls_dir(), pg_read_file(), + pg_read_binary_file(), pg_stat_file(). + + + + + + + + Use GRANT/REVOKE to control access to lo_import() and lo_export() + (Michael Paquier) + + + + Previously super users were exclusively granted to access these + functions. + + + + Compile-time option ALLOW_DANGEROUS_LO_FUNCTIONS has been removed. + + + + + + + + Use view owner not session owner when preventing non-password access to + postgres_fdw tables (Robert Haas) + + + + Postgres only allows super-users to access postgres_fdw tables without + passwords, e.g. via peer. Previously the session owner had to be a + super-user to allow such access; now the view owner is checked instead. + + + + + + + + Fix invalid locking permission check in SELECT FOR UPDATE on views (Tom + Lane) + + + + + + + + + + Server Configuration + + + + + + + + Add server setting ssl_passphrase_command to allow supplying of the the + passphrase for SSL key files (Peter Eisentraut) + + + + Also add ssl_passphrase_command_supports_reload to specify whether the + the SSL configuration should be reloaded and ssl_passphrase_command + called during a server configuration reload. + + + + + + + + Add server variable toast_tuple_target to control the minimum length + before TOAST storage will be considered for new rows (Simon Riggs) + + + + The default TOAST threshold has not been changed. + + + + + + + + Allow bytes to be specified for server variable sizes (Beena Emerson) + + + + The specification is "B". + + + + + + + + + + <link linkend="wal">Write-Ahead Log</link> (<acronym>WAL</acronym>) + + + + + + + + Allow the WAL file size to be set via initdb (Beena Emerson) + + + + Previously the 16MB default could only be changed at compile time. + + + + + + + + No longer retain WAL that spans two checkpoints (Simon Riggs) + + + + The retention of WAL records for only one checkpoint is required. + + + + + + + + Fill the unused portion of force-switched WAL segment files with zeros + for improved compressibility (Chapman Flack) + + + + + + + + + + + + Base Backup and Streaming Replication + + + + + + + + Replicate TRUNCATE activity when using logical replication (Simon Riggs, + Marco Nenciarini, Peter Eisentraut) + + + + + + + + Pass prepared transaction information to logical replication subscribers + (Nikhil Sontakke, Stas Kelvich) + + + + + + + + Exclude unlogged and temporary tables from streaming base backups (David + Steele) + + + + There is no need to copy such files. + + + + + + + + Allow heap pages checksums to be checked during streaming base backup + (Michael Banck) + + + + + + + + Allow replication slots to be advanced programatically, rather than be + consumed by subscribers (Petr Jelinek) + + + + This allows efficient advancement replication slots when the contents do + not need to be consumed. This is performed by pg_replication_slot_advance(). + + + + + + + + Add timeline information to the backup_label file (Simon Riggs) + + + + Also add a check that the WAL timeline matches the backup_label file's + timeline. + + + + + + + + Add host and port connection information to the pg_stat_wal_receiver + system view (Haribabu Kommi) + + + + + + + + Document that pg_internal.init files do not need to be included in the + base backup (David Steele) + + + + + + + + + + Window Functions + + + + + + + + Add window function features to complete SQL:2011 compliance (Oliver + Ford, Tom Lane) + + + + Specifically, allow RANGE mode to use PRECEDING and FOLLOWING to specify + peer groups with values 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. + + + + + + + + + + Utility Commands + + + + + + + + Allow NOT NULL to be added to columns without requiring a table rewrite + (Andrew Dunstan, Serge Rielau) + + + + + + + + Allow views to be locked by locking the underlying tables (Yugo Nagata) + + + + + + + + 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. + + + + + + + + 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 ANALYZE + keyword must be supplied; previously ANALYZE was implied in such cases. + + + + + + + + Add parenthesized options syntax to ANALYZE (Nathan Bossart) + + + + This is similar to the syntax supported by VACUUM. + + + + + + + + Add CREATE AGGREGATE option to specify the behavior of the aggregate + finalization function (Tom Lane) + + + + This is useful for allowing aggregate functions be optimized and to work + as window functions. + + + + + + + + + + Data Types + + + + + + + + Allow the creation of arrays of domains (Tom Lane) + + + + This also allows array_agg() to be used on domains. + + + + + + + + Support domains over composite types (Tom Lane) + + + + Also allow PL/PL/Perl, PL/Python, and PL/Tcl to handle composite-domain + function arguments and results. Also improve PL/Python domain handling. + + + + + + + + Add casts from jsonb scalars to numeric and boolean data types +(Anastasia Lubennikova) + + + + + + + + + + Functions + + + + + + + + Add SHA-2 family of hash functions (Peter Eisentraut) + + + + Specifically, sha224(), sha256(), sha384(), sha512() were added. + + + + + + + + Add support for 64-bit non-cryptographic hash functions (Robert Haas, Amul Sul) + + + + + + + + Allow to_char() and to_timestamp() to specify the time zone's hours and + minutes from UTC (Nikita Glukhov, Andrew Dunstan) + + + + This is done with format specifications TZH and TZM. + + + + + + Improve the speed of aggregate computations (Andres Freund) + + + + + + + + Add text search function websearch_to_tsquery() that supports a queries + syntax similar to that used by web search engines (Victor Drobny, Dmitry + Ivanov) + + + + + + + + Add functionjson(b)_to_tsvector to create usable text search queries + matching JSON/JSONB values (Dmitry Dolgov) + + + + + + + + + + Server-Side Languages + + + + + + + + Add SQL 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 allows altering/dropping of + procedures, functions, and aggregates. + + + + + + + + Add transaction control to PL/pgSQL, PL/Perl, PL/Python, PL/Tcl, and SPI + server-side languages (Peter Eisentraut) + + + + Transaction control is only available to top-transaction-level CALLs or + in nested PL/pgSQL DO and CALL blocks that only contain other PL/pgSQL + DO and CALL blocks. ACCURATE? + + + + + + + + Add the ability to define PL/pgSQL record types as not null, constant, or + with initial values (Tom Lane) + + + + + + + + Add extension jsonb_plpython to transform JSONB to/from PL/Python + types (Anthony Bykov) + + + + + + + + Add extension jsonb_plpython to transform JSONB to/from PL/Perl types + (Anthony Bykov) + + + + + + + + + + Client Interfaces + + + + + + + + Add libpq parameter to allow physical and logical replication + connections (Michael Paquier) + + + + The libpq connection parameter is called replication. + + + + + + + + Change libpq to disable compression by default (Peter Eisentraut) + + + + Compression is already disabled in modern OpenSSL versions and the libpq + setting had no effect in that case. + + + + + + + + Add DO CONTINUE action to the ECPG 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. + + + + + + + + Add ecpg mode to enable Oracle Pro*C handling of char arrays. + + + + This mode is enabled with -C. + + + + + + + + + + Client Applications + + + <xref linkend="app-psql"/> + + + + + + + + Add psql command \gdesc to display the column names and types of the + query output (Pavel Stehule) + + + + + + + + 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. + + + + + + + + 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. + + + + + + + + Add 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. + + + + + + + + Have psql \d+ show a partition count of zero (Amit Langote) + + + + Previously no partition information would be displayed for such tables. + Also indicate which partitions are themselves partitioned. + ACCURATE? + + + + + + + + Have psql report the proper user name before the password prompt (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. + + + + + + + + Allow 'quit' and 'exit' to exit psql when used in an empty buffer (Bruce + Momjian) + + + + Also add hints of how to exit when 'quit' and 'exit' are used alone on a + line in a non-empty buffer. Add a similar hint for 'help'. + + + + + + + + Have 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. + + + + + + + + Improve tab-completion for ALTER INDEX RESET/SET (Masahiko Sawada) + + + + + + + + Add infrastructure to allow psql to customize tab completion queries + based on the server version (Tom Lane) + + + + Previously tab completion queries could fail. + + + + + + + + + + <xref linkend="pgbench"/> + + + + + + + + Add major scripting features to pgbench (Fabien Coelho) + + + + + + + + Add \if macro support to pgbench (Fabien Coelho) + + + + + + + + Allow the use of non-ASCII characters in pgbench variable names (Fabien + Coelho) + + + + + + + + Add pgbench option --init-steps to control the initialization steps + performed (Masahiko Sawada) + + + + + + + + Add approximated Zipfian-distributed random generator to pgbench (Alik + Khilazhev) + + + + + + + + Allow the random seed to be set in pgbench (Fabien Coelho) + + + + + + + + Allow pgbench to do exponentiation with pow() and power() (Raúl + Marín Rodríguez) + + + + + + + + Add hashing functions to pgbench (Ildar Musin) + + + + + + + + Make pgbench statistics more accurate when using --latency-limit and + --rate (Fabien Coelho) + + + + + + + + + + + + Server Applications + + + + + + + + Add pg_basebackup option to create 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. + + + + IS IT CLEAR FROM THE DOCS THAT THE REPLICATION SLOT IS NOT TEMPORARY? + + + + + + + + Allow initdb to set group read access to the data directory (David + Steele) + + + + This is accomplished with the initdb --allow-group-access flag. + 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. + + + + + + + + Add pg_verify_checksums tool to verify database checksums while offline + (Magnus Hagander) + + + + + + + + Allow pg_resetwal to change the WAL segment size via --wal-segsize (Nathan + Bossart) + + + + + + + + Add long options to pg_resetwal and pg_controldata (Nathan Bossart, + Peter Eisentraut) + + + + + + + + Add pg_receivewal option --no-sync to prevent synchronous WAL writes + (Michael Paquier) + + + + + + + + Add pg_receivewal option --endpos to specify when WAL receiving should + stop (Michael Paquier) + + + + + + + + Allow pg_ctl to send the SIGKILL signal to processes (Andres Freund) + + + + This was originally unsupported due to concerns over its misuse. + + + + + + + + Reduce the number of files copied by pg_rewind (Michael Paquier) + + + + + + + + Prevent pg_rewind from running as root (Magnus Hagander) + + + + + + + + <link linkend="app-pgdump"><application>pg_dump</application></link>, + <link linkend="app-pg-dumpall"><application>pg_dumpall</application></link>, + <link linkend="app-pgrestore"><application>pg_restore</application></link> + + + + + + + + Add pg_dumpall option --encoding to control encoding (Michael Paquier) + + + + pg_dump already had this option. + + + + + + + + Add pg_dump option --load-via-partition-root to force loading of data + into the partition's root table, rather than the original partitions +(Rushabh Lathia) + + + + This is useful if the system to be loaded has a different collation + definitions or endianness, requiring the rows to be stored in different partitions. + + + + + + + + Add ability to suppress dumping and restoring of comments (Robins Tharakan) + + + + The new pg_dump, pg_dumpall, and pg_restore option is --no-comments. + + + + + + + + + + + + Source Code + + + + + + + + Add support for with huge(large) pages on Windows (Takayuki Tsunakawa, + Thomas Munro) + + + + + + + + Add support for ARMv8 hardware CRC calculations (Yuqi Gu, Heikki Linnakangas) + + + + + + + + Add configure flag --with-llvm to test for LLVM support (Andres Freund) + + + + + + + + Have configure check for the availability of a C++ compiler (Andres + Freund) + + + + + + + + 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. + + + + + + + + Overhaul the way system tables are defined for bootstrap use (John + Naylor) + + + + + + + + Allow background workers to attach to databases that normally disallow + connections (Magnus Hagander) + + + + + + + + Speed up lookups of builtin function names matching oids (Andres Freund) + + + + The previous binary search now uses a lookup array. + + + + + + + + Speed up construction of query results (Andres Freund) + + + + + + + + Improve access speed to system caches (Andres Freund) + + + + + + + + Add a generational memory allocator which is optimized for serial + allocation/deallocation (Tomas Vondra) + + + + This reduces memory usage for logical decoding. + + + + + + + + Make the computation of system column pg_class.reltuples consistent +(Tomas Vondra) + + + + + + + + Update to use perltidy version 20170521 (Tom Lane) + + + + + + + + Remove the ability to perform replacement sorts (Peter Geoghegan) + + + + Replacement sorts were determined to be no longer useful. Also remove + server variable replacement sorts. + + + + + + + + + + Additional Modules + + + + + + + + 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 buffer + relation/offset values to disk occasionally during server operation and + shutdown. + + + + + + + + Add pgtrgm 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. + + + + + + + + Allow creation of indexes on citext-extension columns that can be used + by LIKE comparisons (Alexey Chernyshov) + + + + Specifically, indexes must be created using the citext_pattern_ops + operator class. + + + + + + + + Allow btree_gin to index bool, bpchar, name and uuid data types (Matheus + Oliveira) + + + + + + + + Allow cube and seg extensions using GiST indexes to perform index-only + scans (Andrey Borodin) + + + + + + + + Allow retrieval of negative cube coordinates using the ~> operator + (Alexander Korotkov) + + + + This is useful for knn-gist searches. HOW? + + + + + + + + Add Vietnamese letter detection to the unaccent extension (Dang Minh Huong, Michael Paquier) + + + + + + + + Enhance contrib/amcheck to check that each heap tuple has an index entry +(Peter Geoghegan) + + + + + + + + Have contrib/adminpack use the new default file system access roles + (Stephen Frost) + + + + Previously only super-users could call adminpack functions; now role + permissions are checked. + + + + + + + + Increase 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. + + + + + + + + Install errcodes.txt to provide access to the error codes reported by + Postgres (Thomas Munro) + + + + + + + + Prevent extensions from creating custom server variables that take a + quoted list of values (Tom Lane) + + + + This was never intended to be supported. + + + + + + + + Remove contrib/start-scripts/osx since they are no longer recommended + (Tom Lane) + + + + + + + + Remove extension chkpass (Peter Eisentraut) + + + + This extension no longer served as a usable security tool or example of + how to write an extension. + + + + + + + + + + + + Acknowledgments + + + The following individuals (in alphabetical order) have contributed to this + release as patch authors, committers, reviewers, testers, or reporters of + issues. + + + + XXX + + + + diff --git a/doc/src/sgml/release.sgml b/doc/src/sgml/release.sgml index 646d252b0c..11a7f171c6 100644 --- a/doc/src/sgml/release.sgml +++ b/doc/src/sgml/release.sgml @@ -76,6 +76,7 @@ For new features, add links to the documentation sections. The reason for splitting the release notes this way is so that appropriate subsets can easily be copied into back branches. --> +&release-11; &release-10; &release-9.6; &release-9.5;