Movatterモバイル変換


[0]ホーム

URL:



Facebook
Postgres Pro
Facebook
Downloads
E.41. Release 14
Prev UpAppendix E. Release NotesHome Next

E.41. Release 14

Release date: 2021-09-30

E.41.1. Overview

PostgreSQL 14 contains many new features and enhancements, including:

  • Stored procedures can now return data viaOUT parameters.

  • The SQL-standardSEARCH andCYCLE options for common table expressions have been implemented.

  • Subscripting can now be applied to any data type for which it is a useful notation, not only arrays. In this release, thejsonb andhstore types have gained subscripting operators.

  • Range types have been extended by adding multiranges, allowing representation of noncontiguous data ranges.

  • Numerous performance improvements have been made for parallel queries, heavily-concurrent workloads, partitioned tables, logical replication, and vacuuming.

  • B-tree index updates are managed more efficiently, reducing index bloat.

  • VACUUM automatically becomes more aggressive, and skips inessential cleanup, if the database starts to approach a transaction ID wraparound condition.

  • Extended statistics can now be collected on expressions, allowing better planning results for complex queries.

  • libpq now has the ability to pipeline multiple queries, which can boost throughput over high-latency connections.

The above items and other new features ofPostgreSQL 14 are explained in more detail in the sections below.

E.41.2. Migration to Version 14

A dump/restore usingpg_dumpall or use ofpg_upgrade or logical replication is required for those wishing to migrate data from any previous release. SeeSection 17.6 for general information on migrating to new major releases.

Version 14 contains a number of changes that may affect compatibility with previous releases. Observe the following incompatibilities:

  • User-defined objects that reference certain built-in array functions along with their argument types must be recreated (Tom Lane)§

    Specifically,array_append(),array_prepend(),array_cat(),array_position(),array_positions(),array_remove(),array_replace(), andwidth_bucket() used to takeanyarray arguments but now takeanycompatiblearray. Therefore, user-defined objects like aggregates and operators that reference those array function signatures must be dropped before upgrading, and recreated once the upgrade completes.

  • Remove deprecated containment operators@ and~ for built-ingeometric data types and contrib modulescube,hstore,intarray, andseg (Justin Pryzby)§§

    The more consistently named<@ and@> have been recommended for many years.

  • Fixto_tsquery() andwebsearch_to_tsquery() to properly parse query text containing discarded tokens (Alexander Korotkov)§

    Certain discarded tokens, like underscore, caused the output of these functions to produce incorrect tsquery output, e.g., bothwebsearch_to_tsquery('"pg_class pg"') andto_tsquery('pg_class <-> pg') used to output( 'pg' & 'class' ) <-> 'pg', but now both output'pg' <-> 'class' <-> 'pg'.

  • Fixwebsearch_to_tsquery() to properly parse multiple adjacent discarded tokens in quotes (Alexander Korotkov)§

    Previously, quoted text that contained multiple adjacent discarded tokens was treated as multiple tokens, causing incorrect tsquery output, e.g.,websearch_to_tsquery('"aaa: bbb"') used to output'aaa' <2> 'bbb', but now outputs'aaa' <-> 'bbb'.

  • ChangeEXTRACT() to return typenumeric instead offloat8 (Peter Eisentraut)§

    This avoids loss-of-precision issues in some usages. The old behavior can still be obtained by using the old underlying functiondate_part().

    Also,EXTRACT(date) now throws an error for units that are not part of thedate data type.

  • Changevar_samp() andstddev_samp() with numeric parameters to return NULL when the input is a single NaN value (Tom Lane)§

    PreviouslyNaN was returned.

  • Return false forhas_column_privilege() checks on non-existent or dropped columns when using attribute numbers (Joe Conway)§

    Previously such attribute numbers returned an invalid-column error.

  • Fix handling of infinitewindow function ranges (Tom Lane)§

    Previously window frame clauses like'inf' PRECEDING AND 'inf' FOLLOWING returned incorrect results.

  • Remove factorial operators! and!!, as well as functionnumeric_fac() (Mark Dilger)§

    Thefactorial() function is still supported.

  • Disallowfactorial() of negative numbers (Peter Eisentraut)§

    Previously such cases returned 1.

  • Remove support forpostfix (right-unary) operators (Mark Dilger)§

    pg_dump andpg_upgrade will warn if postfix operators are being dumped.

  • Allow\D and\W shorthands to match newlines inregular expression newline-sensitive mode (Tom Lane)§

    Previously they did not match newlines in this mode, but that disagrees with the behavior of other common regular expression engines.[^[:digit:]] or[^[:word:]] can be used to get the old behavior.

  • Disregard constraints when matching regular expressionback-references (Tom Lane)§

    For example, in(^\d+).*\1, the^ constraint should be applied at the start of the string, but not when matching\1.

  • Disallow\w as a range start or end in regular expression character classes (Tom Lane)§

    This previously was allowed but produced unexpected results.

  • Requirecustom server parameter names to use only characters that are valid in unquotedSQL identifiers (Tom Lane)§§

  • Change the default of thepassword_encryption server parameter toscram-sha-256 (Peter Eisentraut)§

    Previously it wasmd5. All new passwords will be stored as SHA256 unless this server setting is changed or the password is specified in MD5 format. Also, the legacy (and undocumented) Boolean-like values which were previously synonyms formd5 are no longer accepted.

  • Remove server parametervacuum_cleanup_index_scale_factor (Peter Geoghegan)§§

    This setting was ignored starting inPostgreSQL version 13.3.

  • Remove server parameteroperator_precedence_warning (Tom Lane)§

    This setting was used for warning applications aboutPostgreSQL 9.5 changes.

  • Overhaul the specification ofclientcert inpg_hba.conf (Kyotaro Horiguchi)§

    Values1/0/no-verify are no longer supported; only the stringsverify-ca andverify-full can be used. Also, disallowverify-ca if cert authentication is enabled since cert requiresverify-full checking.

  • Remove support forSSL compression (Daniel Gustafsson, Michael Paquier)§§

    This was already disabled by default in previousPostgreSQL releases, and most modern OpenSSL andTLS versions no longer support it.

  • Remove server andlibpq support for the version 2wire protocol (Heikki Linnakangas)§

    This was last used as the default inPostgreSQL 7.3 (released in 2002).

  • Disallow single-quoting of the language name in theCREATE/DROP LANGUAGE command (Peter Eisentraut)§

  • Remove thecomposite types that were formerly created for sequences and toast tables (Tom Lane)§

  • Process doubled quote marks inecpgSQL command strings correctly (Tom Lane)§§

    Previously'abc''def' was passed to the server as'abc'def', and"abc""def" was passed as"abc"def", causing syntax errors.

  • Prevent the containment operators (<@ and@>) forintarray from using GiST indexes (Tom Lane)§

    Previously a full GiST index scan was required, so just avoid that and scan the heap, which is faster. Indexes created for this purpose should be removed.

  • Remove contrib programpg_standby (Justin Pryzby)§

  • Preventtablefunc's functionnormal_rand() from accepting negative values (Ashutosh Bapat)§

    Negative values produced undesirable results.

E.41.3. Changes

Below you will find a detailed account of the changes betweenPostgreSQL 14 and the previous major release.

E.41.3.1. Server

  • Add predefined rolespg_read_all_data andpg_write_all_data (Stephen Frost)§

    These non-login roles can be used to give read or write permission to all tables, views, and sequences.

  • Add predefined rolepg_database_owner that contains only the current database's owner (Noah Misch)§

    This is especially useful in template databases.

  • Remove temporary files after backend crashes (Euler Taveira)§

    Previously, such files were retained for debugging purposes. If necessary, deletion can be disabled with the new server parameterremove_temp_files_after_crash.

  • Allow long-running queries to be canceled if the client disconnects (Sergey Cherkashin, Thomas Munro)§

    The server parameterclient_connection_check_interval allows control over whether loss of connection is checked for intra-query. (This is supported on Linux and a few other operating systems.)

  • Add an optional timeout parameter topg_terminate_backend() (Magnus Hagander)§

  • Allow wide tuples to be always added to almost-empty heap pages (John Naylor, Floris van Nee)§

    Previously tuples whose insertion would have exceeded the page'sfill factor were instead added to new pages.

  • Add Server Name Indication (SNI) inSSL connection packets (Peter Eisentraut)§

    This can be disabled by turning off client connection optionsslsni.

E.41.3.1.1. Vacuuming
  • Allow vacuum to skip index vacuuming when the number of removable index entries is insignificant (Masahiko Sawada, Peter Geoghegan)§§

    The vacuum parameterINDEX_CLEANUP has a new default ofauto that enables this optimization.

  • Allow vacuum to more eagerly add deleted btree pages to the free space map (Peter Geoghegan)§

    Previously vacuum could only add pages to the free space map that were marked as deleted by previous vacuums.

  • Allow vacuum to reclaim space used by unused trailing heap line pointers (Matthias van de Meent, Peter Geoghegan)§

  • Allow vacuum to be more aggressive in removing dead rows during minimal-locking index operations (Álvaro Herrera)§§§

    Specifically,CREATE INDEX CONCURRENTLY andREINDEX CONCURRENTLY no longer limit the dead row removal of other relations.

  • Speed up vacuuming of databases with many relations (Tatsuhito Kasahara)§

  • Reduce the default value ofvacuum_cost_page_miss to better reflect current hardware capabilities (Peter Geoghegan)§

  • Add ability to skip vacuuming ofTOAST tables (Nathan Bossart)§

    VACUUM now has aPROCESS_TOAST option which can be set to false to disableTOAST processing, andvacuumdb has a--no-process-toast option.

  • HaveCOPY FREEZE appropriately update page visibility bits (Anastasia Lubennikova, Pavan Deolasee, Jeff Janes)§

  • Cause vacuum operations to be more aggressive if the table is near xid or multixact wraparound (Masahiko Sawada, Peter Geoghegan)§

    This is controlled byvacuum_failsafe_age andvacuum_multixact_failsafe_age.

  • Increase warning time and hard limit before transaction id and multi-transaction wraparound (Noah Misch)§

    This should reduce the possibility of failures that occur without having issued warnings about wraparound.

  • Add per-index information toautovacuum logging output (Masahiko Sawada)§

E.41.3.1.2. Partitioning
  • Improve the performance of updates and deletes on partitioned tables with many partitions (Amit Langote, Tom Lane)§§§

    This change greatly reduces the planner's overhead for such cases, and also allows updates/deletes on partitioned tables to use execution-time partition pruning.

  • Allow partitions to bedetached in a non-blocking manner (Álvaro Herrera)§

    The syntax isALTER TABLE ... DETACH PARTITION ... CONCURRENTLY, andFINALIZE.

  • IgnoreCOLLATE clauses in partition boundary values (Tom Lane)§

    Previously any such clause had to match the collation of the partition key; but it's more consistent to consider that it's automatically coerced to the collation of the partition key.

E.41.3.1.3. Indexes
E.41.3.1.4. Optimizer
  • Allow hash lookup forIN clauses with many constants (James Coleman, David Rowley)§

    Previously the code always sequentially scanned the list of values.

  • Increase the number of placesextended statistics can be used forOR clause estimation (Tomas Vondra, Dean Rasheed)§§§

  • Allow extended statistics on expressions (Tomas Vondra)§

    This allows statistics on a group of expressions and columns, rather than only columns like previously. System viewpg_stats_ext_exprs reports such statistics.

  • Allow efficient heap scanning of a range ofTIDs (Edmund Horner, David Rowley)§

    Previously a sequential scan was required for non-equalityTID specifications.

  • FixEXPLAIN CREATE TABLE AS andEXPLAIN CREATE MATERIALIZED VIEW to honorIF NOT EXISTS (Bharath Rupireddy)§

    Previously, if the object already existed,EXPLAIN would fail.

E.41.3.1.5. General Performance
  • Improve the speed of computingMVCCvisibility snapshots on systems with many CPUs and high session counts (Andres Freund)§§§§§§

    This also improves performance when there are many idle sessions.

  • Add executor method to memoize results from the inner side of a nested-loop join (David Rowley)§

    This is useful if only a small percentage of rows is checked on the inner side. It can be disabled via server parameterenable_memoize.

  • Allowwindow functions to perform incremental sorts (David Rowley)§

  • Improve the I/O performance of parallel sequential scans (Thomas Munro, David Rowley)§

    This was done by allocating blocks in groups toparallel workers.

  • Allow a query referencing multipleforeign tables to perform foreign table scans in parallel (Robert Haas, Kyotaro Horiguchi, Thomas Munro, Etsuro Fujita)§

    postgres_fdw supports this type of scan ifasync_capable is set.

  • Allowanalyze to do page prefetching (Stephen Frost)§

    This is controlled bymaintenance_io_concurrency.

  • Improve performance ofregular expression searches (Tom Lane)§§§§§§§§§§§

  • Dramatically improve Unicode normalization performance (John Naylor)§§

    This speedsnormalize() andIS NORMALIZED.

  • Add ability to useLZ4 compression onTOAST data (Dilip Kumar)§

    This can be set at the column level, or set as a default via server parameterdefault_toast_compression. The server must be compiled with--with-lz4 to support this feature. The default setting is still pglz.

E.41.3.1.6. Monitoring
E.41.3.1.7. System Views
E.41.3.1.8. Authentication
E.41.3.1.9. Server Configuration

E.41.3.2. Streaming Replication and Recovery

  • Allow standby servers to be rewound viapg_rewind (Heikki Linnakangas)§

  • Allow therestore_command setting to be changed during a server reload (Sergei Kornilov)§

    You can also setrestore_command to an empty string and reload to force recovery to only read from thepg_wal directory.

  • Add server parameterlog_recovery_conflict_waits to report long recovery conflict wait times (Bertrand Drouvot, Masahiko Sawada)§§

  • Pause recovery on a hot standby server if the primary changes its parameters in a way that prevents replay on the standby (Peter Eisentraut)§

    Previously the standby would shut down immediately.

  • Add functionpg_get_wal_replay_pause_state() to report the recovery state (Dilip Kumar)§

    It gives more detailed information thanpg_is_wal_replay_paused(), which still exists.

  • Add new read-only server parameterin_hot_standby (Haribabu Kommi, Greg Nancarrow, Tom Lane)§

    This allows clients to easily detect whether they are connected to a hot standby server.

  • Speed truncation of small tables during recovery on clusters with a large number of shared buffers (Kirk Jamison)§

  • Allow file system sync at the start of crash recovery on Linux (Thomas Munro)§

    By default,PostgreSQL opens and fsyncs each data file in the database cluster at the start of crash recovery. A new setting,recovery_init_sync_method=syncfs, instead syncs each filesystem used by the cluster. This allows for faster recovery on systems with many database files.

  • Add functionpg_xact_commit_timestamp_origin() to return the commit timestamp and replication origin of the specified transaction (Movead Li)§

  • Add the replication origin to the record returned bypg_last_committed_xact() (Movead Li)§

  • Allow replicationorigin functions to be controlled using standard function permission controls (Martín Marqués)§

    Previously these functions could only be executed by superusers, and this is still the default.

E.41.3.2.1. Logical Replication

E.41.3.3. SELECT,INSERT

  • Reduce the number of keywords that can't be used as column labels withoutAS (Mark Dilger)§

    There are now 90% fewer restricted keywords.

  • Allow an alias to be specified forJOIN'sUSING clause (Peter Eisentraut)§

    The alias is created by writingAS after theUSING clause. It can be used as a table qualification for the mergedUSING columns.

  • AllowDISTINCT to be added toGROUP BY to remove duplicateGROUPING SET combinations (Vik Fearing)§

    For example,GROUP BY CUBE (a,b), CUBE (b,c) will generate duplicate grouping combinations withoutDISTINCT.

  • Properly handleDEFAULT entries in multi-rowVALUES lists inINSERT (Dean Rasheed)§

    Such cases used to throw an error.

  • AddSQL-standardSEARCH andCYCLE clauses forcommon table expressions (Peter Eisentraut)§§

    The same results could be accomplished using existing syntax, but much less conveniently.

  • Allow column names in theWHERE clause ofON CONFLICT to be table-qualified (Tom Lane)§

    Only the target table can be referenced, however.

E.41.3.4. Utility Commands

E.41.3.5. Data Types

  • Allow extensions and built-in data types to implementsubscripting (Dmitry Dolgov)§

    Previously subscript handling was hard-coded into the server, so that subscripting could only be applied to array types. This change allows subscript notation to be used to extract or assign portions of a value of any type for which the concept makes sense.

  • Allow subscripting ofJSONB (Dmitry Dolgov)§§§

    JSONB subscripting can be used to extract and assign to portions ofJSONB documents.

  • Add support formultirange data types (Paul Jungwirth, Alexander Korotkov)§§§§

    These are like range data types, but they allow the specification of multiple, ordered, non-overlapping ranges. An associated multirange type is automatically created for every range type.

  • Add support for thestemming of languages Armenian, Basque, Catalan, Hindi, Serbian, and Yiddish (Peter Eisentraut)§§§

  • Allowtsearch data files to have unlimited line lengths (Tom Lane)§

    The previous limit was 4K bytes. Also remove functiont_readline().

  • Add support forInfinity and-Infinity values in thenumeric data type (Tom Lane)§

    Floating-point data types already supported these.

  • Addpoint operators<<| and|>> representing strictly above/below tests (Emre Hasegeli)§

    Previously these were called>^ and<^, but that naming is inconsistent with other geometric data types. The old names remain available, but may someday be removed.

  • Add operators to add and subtractLSN and numeric (byte) values (Fujii Masao)§

  • Allowbinary data transfer to be more forgiving of array and recordOID mismatches (Tom Lane)§

  • Create composite array types for system catalogs (Wenjing Zeng)§

    User-defined relations have long had composite types associated with them, and also array types over those composite types. System catalogs now do as well. This change also fixes an inconsistency that creating a user-defined table in single-user mode would fail to create a composite array type.

E.41.3.6. Functions

  • AllowSQL-languagefunctions andprocedures to useSQL-standard function bodies (Peter Eisentraut)§

    Previously only string-literal function bodies were supported. When writing a function or procedure in SQL-standard syntax, the body is parsed immediately and stored as a parse tree. This allows better tracking of function dependencies, and can have security benefits.

  • Allowprocedures to haveOUT parameters (Peter Eisentraut)§§

  • Allow some array functions to operate on a mix of compatible data types (Tom Lane)§

    The functionsarray_append(),array_prepend(),array_cat(),array_position(),array_positions(),array_remove(),array_replace(), andwidth_bucket() now takeanycompatiblearray instead ofanyarray arguments. This makes them less fussy about exact matches of argument types.

  • AddSQL-standardtrim_array() function (Vik Fearing)§

    This could already be done with array slices, but less easily.

  • Addbytea equivalents ofltrim() andrtrim() (Joel Jacobson)§

  • Support negative indexes insplit_part() (Nikhil Benesch)§

    Negative values start from the last field and count backward.

  • Addstring_to_table() function to split a string on delimiters (Pavel Stehule)§

    This is similar to theregexp_split_to_table() function.

  • Addunistr() function to allow Unicode characters to be specified as backslash-hex escapes in strings (Pavel Stehule)§

    This is similar to how Unicode can be specified in literal strings.

  • Addbit_xor() XOR aggregate function (Alexey Bashtanov)§

  • Add functionbit_count() to return the number of bits set in a bit or byte string (David Fetter)§

  • Adddate_bin() function (John Naylor)§§

    This functionbins input timestamps, grouping them into intervals of a uniform length aligned with a specified origin.

  • Allowmake_timestamp()/make_timestamptz() to accept negative years (Peter Eisentraut)§

    Negative values are interpreted asBC years.

  • Add newer regular expressionsubstring() syntax (Peter Eisentraut)§

    The new SQL-standard syntax isSUBSTRING(text SIMILAR pattern ESCAPE escapechar). The previous standard syntax wasSUBSTRING(text FROM pattern FOR escapechar), which is still accepted byPostgreSQL.

  • Allow complemented character class escapes\D,\S, and\W within regular expression brackets (Tom Lane)§

  • Add[[:word:]] as a regular expression character class, equivalent to\w (Tom Lane)§

  • Allow more flexible data types for default values oflead() andlag() window functions (Vik Fearing)§

  • Make non-zerofloating-point values divided by infinity return zero (Kyotaro Horiguchi)§

    Previously such operations produced underflow errors.

  • Make floating-point division of NaN by zero return NaN (Tom Lane)§

    Previously this returned an error.

  • Causeexp() andpower() for negative-infinity exponents to return zero (Tom Lane)§§§

    Previously they often returned underflow errors.

  • Improve the accuracy of geometric computations involving infinity (Tom Lane)§

  • Mark built-in type coercion functions as leakproof where possible (Tom Lane)§

    This allows more use of functions that require type conversion in security-sensitive situations.

  • Changepg_describe_object(),pg_identify_object(), andpg_identify_object_as_address() to always report helpful error messages for non-existent objects (Michael Paquier)§

E.41.3.7. PL/pgSQL

  • Improve PL/pgSQL'sexpression andassignment parsing (Tom Lane)§

    This change allows assignment to array slices and nested record fields.

  • Allow plpgsql'sRETURN QUERY to execute its query using parallelism (Tom Lane)§

  • Improve performance of repeatedCALLs within plpgsql procedures (Pavel Stehule, Tom Lane)§

E.41.3.8. Client Interfaces

  • Addpipeline mode to libpq (Craig Ringer, Matthieu Garrigues, Álvaro Herrera)§

    This allows multiple queries to be sent, only waiting for completion when a specific synchronization message is sent.

  • Enhance libpq'starget_session_attrs parameter options (Haribabu Kommi, Greg Nancarrow, Vignesh C, Tom Lane)§§

    The new options areread-only,primary,standby, andprefer-standby.

  • Improve the output format of libpq'sPQtrace() (Aya Iwata, Álvaro Herrera)§

  • Allow an ECPG SQL identifier to be linked to a specific connection (Hayato Kuroda)§

    This is done viaDECLARE ... STATEMENT.

E.41.3.9. Client Applications

  • Allowvacuumdb to skip index cleanup and truncation (Nathan Bossart)§

    The options are--no-index-cleanup and--no-truncate.

  • Allowpg_dump to dump only certain extensions (Guillaume Lelarge)§

    This is controlled by option--extension.

  • Addpgbenchpermute() function to randomly shuffle values (Fabien Coelho, Hironobu Suzuki, Dean Rasheed)§

  • Include disconnection times in the reconnection overhead measured bypgbench with-C (Yugo Nagata)§

  • Allow multiple verbose option specifications (-v) to increase the logging verbosity (Tom Lane)§

    This behavior is supported bypg_dump,pg_dumpall, andpg_restore.

E.41.3.9.1. psql
  • Allowpsql's\df and\do commands to specify function and operator argument types (Greg Sabino Mullane, Tom Lane)§

    This helps reduce the number of matches printed for overloaded names.

  • Add an access method column topsql's\d[i|m|t]+ output (Georgios Kokolatos)§

  • Allowpsql's\dt and\di to showTOAST tables and their indexes (Justin Pryzby)§

  • Addpsql command\dX to list extended statistics objects (Tatsuro Yamada)§

  • Fixpsql's\dT to understand array syntax and backend grammar aliases, likeint forinteger (Greg Sabino Mullane, Tom Lane)§

  • When editing the previous query or a file withpsql's\e, or using\ef and\ev, ignore the results if the editor exits without saving (Laurenz Albe)§

    Previously, such edits would load the previous query into the query buffer, and typically execute it immediately. This was deemed to be probably not what the user wants.

  • Improve tab completion (Vignesh C, Michael Paquier, Justin Pryzby, Georgios Kokolatos, Julien Rouhaud)§§§§§§§§§§§§§§§§§§

E.41.3.10. Server Applications

  • Add command-line utilitypg_amcheck to simplify runningcontrib/amcheck tests on many relations (Mark Dilger)§

  • Add--no-instructions option toinitdb (Magnus Hagander)§

    This suppresses the server startup instructions that are normally printed.

  • Stoppg_upgrade from creatinganalyze_new_cluster script (Magnus Hagander)§

    Instead, give comparablevacuumdb instructions.

  • Remove support for thepostmaster-o option (Magnus Hagander)§

    This option was unnecessary since all passed options could already be specified directly.

E.41.3.11. Documentation

  • Rename "Default Roles" to"Predefined Roles" (Bruce Momjian, Stephen Frost)§

  • Add documentation for thefactorial() function (Peter Eisentraut)§

    With the removal of the ! operator in this release,factorial() is the only built-in way to compute a factorial.

E.41.3.12. Source Code

  • Add configure option--with-ssl={openssl} to allow future choice of the SSL library to use (Daniel Gustafsson, Michael Paquier)§

    The spelling--with-openssl is kept for compatibility.

  • Add support forabstract Unix-domain sockets (Peter Eisentraut)§

    This is currently supported onLinux andWindows.

  • Allow Windows to properly handle files larger than four gigabytes (Juan José Santamaría Flecha)§

    For example this allowsCOPY,WAL files, and relation segment files to be larger than four gigabytes.

  • Add server parameterdebug_discard_caches to control cache flushing for test purposes (Craig Ringer)§§§

    Previously this behavior could only be set at compile time. To invoke it duringinitdb, use the new option--discard-caches.

  • Various improvements invalgrind error detection ability (Álvaro Herrera, Peter Geoghegan)§§§

  • Add a test module for the regular expression package (Tom Lane)§

  • Add support forLLVM version 12 (Andres Freund)§

  • Change SHA1, SHA2, and MD5 hash computations to use theOpenSSLEVP API (Michael Paquier)§§§§

    This is more modern and supportsFIPS mode.

  • Remove separate build-time control over the choice of random number generator (Daniel Gustafsson)§

    This is now always determined by the choice of SSL library.

  • Add direct conversion routines between EUC_TW and Big5 encodings (Heikki Linnakangas)§

  • Add collation version support forFreeBSD (Thomas Munro)§

  • Addamadjustmembers to the index access methodAPI (Tom Lane)§

    This allows an index access method to provide validity checking during creation of a new operator class or family.

  • Provide feature-test macros inlibpq-fe.h for recently-addedlibpq features (Tom Lane, Álvaro Herrera)§

    Historically, applications have usually used compile-time checks ofPG_VERSION_NUM to test whether a feature is available. But that's normally the server version, which might not be a good guide tolibpq's version.libpq-fe.h now offers#define symbols denoting application-visible features added in v14; the intent is to keep adding symbols for such features in future versions.

E.41.3.13. Additional Modules

  • Allow subscripting ofhstore values (Tom Lane, Dmitry Dolgov)§

  • Allow GiST/GINpg_trgm indexes to do equality lookups (Julien Rouhaud)§

    This is similar toLIKE except no wildcards are honored.

  • Allow thecube data type to be transferred in binary mode (KaiGai Kohei)§

  • Allowpgstattuple_approx() to report onTOAST tables (Peter Eisentraut)§

  • Add contrib modulepg_surgery which allows changes to row visibility (Ashutosh Sharma)§

    This is useful for correcting database corruption.

  • Add contrib moduleold_snapshot to report theXID/time mapping used by an activeold_snapshot_threshold (Robert Haas)§

  • Allowamcheck to also check heap pages (Mark Dilger)§

    Previously it only checked B-Tree index pages.

  • Allowpageinspect to inspect GiST indexes (Andrey Borodin, Heikki Linnakangas)§§

  • Changepageinspect block numbers to bebigints (Peter Eisentraut)§

  • Markbtree_gist functions as parallel safe (Steven Winfield)§

E.41.3.13.1. pg_stat_statements
  • Move query hash computation frompg_stat_statements to the core server (Julien Rouhaud)§

    The new server parametercompute_query_id's default ofauto will automatically enable query id computation when this extension is loaded.

  • Causepg_stat_statements to track top and nested statements separately (Julien Rohaud)§

    Previously, when tracking all statements, identical top and nested statements were tracked as a single entry; but it seems more useful to separate such usages.

  • Add row counts for utility commands topg_stat_statements (Fujii Masao, Katsuragi Yuta, Seino Yuki)§§

  • Addpg_stat_statements_info system view to showpg_stat_statements activity (Katsuragi Yuta, Yuki Seino, Naoki Nakamichi)§§

E.41.3.13.2. postgres_fdw
  • Allowpostgres_fdw toINSERT rows in bulk (Takayuki Tsunakawa, Tomas Vondra, Amit Langote)§§

  • Allowpostgres_fdw to import table partitions if specified byIMPORT FOREIGN SCHEMA ... LIMIT TO (Matthias van de Meent)§

    By default, only the root of a partitioned table is imported.

  • Addpostgres_fdw functionpostgres_fdw_get_connections() to report open foreign server connections (Bharath Rupireddy)§

  • Allow control over whether foreign servers keep connections open after transaction completion (Bharath Rupireddy)§

    This is controlled bykeep_connections and defaults to on.

  • Allowpostgres_fdw to reestablish foreign server connections if necessary (Bharath Rupireddy)§§

    Previously foreign server restarts could cause foreign table access errors.

  • Addpostgres_fdw functions to discard cached connections (Bharath Rupireddy)§

E.41.4. Acknowledgments

The following individuals (in alphabetical order) have contributed to this release as patch authors, committers, reviewers, testers, or reporters of issues.

Abhijit Menon-Sen
Ádám Balogh
Adrian Ho
Ahsan Hadi
Ajin Cherian
Aleksander Alekseev
Alessandro Gherardi
Alex Kozhemyakin
Alexander Korotkov
Alexander Lakhin
Alexander Nawratil
Alexander Pyhalov
Alexandra Wang
Alexey Bashtanov
Alexey Bulgakov
Alexey Kondratov
Álvaro Herrera
Amit Kapila
Amit Khandekar
Amit Langote
Amul Sul
Anastasia Lubennikova
Andreas Grob
Andreas Kretschmer
Andreas Seltenreich
Andreas Wicht
Andres Freund
Andrew Bille
Andrew Dunstan
Andrew Gierth
Andrey Borodin
Andrey Lepikhov
Andy Fan
Anton Voloshin
Antonin Houska
Arne Roland
Arseny Sher
Arthur Nascimento
Arthur Zakirov
Ashutosh Bapat
Ashutosh Sharma
Ashwin Agrawal
Asif Rehman
Asim Praveen
Atsushi Torikoshi
Aya Iwata
Barry Pederson
Bas Poot
Bauyrzhan Sakhariyev
Beena Emerson
Benoît Lobréau
Bernd Helmle
Bernhard M. Wiedemann
Bertrand Drouvot
Bharath Rupireddy
Boris Kolpackov
Brar Piening
Brian Ye
Bruce Momjian
Bryn Llewellyn
Cameron Daniel
Chapman Flack
Charles Samborski
Charlie Hornsby
Chen Jiaoqian
Chris Wilson
Christian Quest
Christoph Berg
Christophe Courtois
Corey Huinker
Craig Ringer
Dagfinn Ilmari Mannsåker
Dana Burd
Daniel Cherniy
Daniel Gustafsson
Daniel Vérité
Daniel Westermann
Daniele Varrazzo
Dar Alathar-Yemen
Darafei Praliaskouski
Dave Cramer
David Christensen
David Fetter
David G. Johnston
David Geier
David Gilman
David Pirotte
David Rowley
David Steele
David Turon
David Zhang
Dean Rasheed
Denis Patron
Dian Fay
Dilip Kumar
Dimitri Nüscheler
Dmitriy Kuzmin
Dmitry Dolgov
Dmitry Marakasov
Domagoj Smoljanovic
Dong Wook
Douglas Doole
Duncan Sands
Edmund Horner
Edson Richter
Egor Rogov
Ekaterina Kiryanova
Elena Indrupskaya
Emil Iggland
Emre Hasegeli
Eric Thinnes
Erik Rijkers
Erwin Brandstetter
Etienne Stalmans
Etsuro Fujita
Eugen Konkov
Euler Taveira
Fabien Coelho
Fabrízio de Royes Mello
Federico Caselli
Felix Lechner
Filip Gospodinov
Floris Van Nee
Frank Gagnepain
Frits Jalvingh
Georgios Kokolatos
Greg Nancarrow
Greg Rychlewski
Greg Sabino Mullane
Gregory Smith
Grigory Smolkin
Guillaume Lelarge
Guy Burgess
Guyren Howe
Haiying Tang
Hamid Akhtar
Hans Buschmann
Hao Wu
Haribabu Kommi
Harisai Hari
Hayato Kuroda
Heath Lord
Heikki Linnakangas
Henry Hinze
Herwig Goemans
Himanshu Upadhyaya
Hironobu Suzuki
Hiroshi Inoue
Hisanori Kobayashi
Honza Horak
Hou Zhijie
Hubert Lubaczewski
Hubert Zhang
Ian Barwick
Ibrar Ahmed
Ildus Kurbangaliev
Isaac Morland
Israel Barth
Itamar Gafni
Jacob Champion
Jaime Casanova
Jaime Soler
Jakub Wartak
James Coleman
James Hilliard
James Hunter
James Inform
Jan Mussler
Japin Li
Jasen Betts
Jason Harvey
Jason Kim
Jeevan Ladhe
Jeff Davis
Jeff Janes
Jelte Fennema
Jeremy Evans
Jeremy Finzel
Jeremy Smith
Jesse Kinkead
Jesse Zhang
Jie Zhang
Jim Doty
Jim Nasby
Jimmy Angelakos
Jimmy Yih
Jiri Fejfar
Joe Conway
Joel Jacobson
John Naylor
John Thompson
Jonathan Katz
Josef Šimánek
Joseph Nahmias
Josh Berkus
Juan José Santamaría Flecha
Julien Rouhaud
Junfeng Yang
Jürgen Purtz
Justin Pryzby
Kazutaka Onishi
Keisuke Kuroda
Kelly Min
Kensuke Okamura
Kevin Sweet
Kevin Yeap
Kirk Jamison
Kohei KaiGai
Konstantin Knizhnik
Kota Miyake
Krzysztof Gradek
Kuntal Ghosh
Kyle Kingsbury
Kyotaro Horiguchi
Laurent Hasson
Laurenz Albe
Lee Dong Wook
Li Japin
Liu Huailing
Luc Vlaming
Ludovic Kuty
Luis Roberto
Lukas Eder
Ma Liangzhu
Maciek Sakrejda
Madan Kumar
Magnus Hagander
Mahendra Singh Thalor
Maksim Milyutin
Marc Boeren
Marcin Krupowicz
Marco Atzeri
Marek Szuba
Marina Polyakova
Mario Emmenlauer
Mark Dilger
Mark Wong
Mark Zhao
Markus Wanner
Martín Marqués
Martin Visser
Masahiko Sawada
Masahiro Ikeda
Masao Fujii
Mathis Rudolf
Matthias van de Meent
Matthieu Garrigues
Matthijs van der Vleuten
Maxim Orlov
Melanie Plageman
Merlin Moncure
Michael Banck
Michael Brown
Michael Meskes
Michael Paquier
Michael Paul Killian
Michael Powers
Michael Vastola
Michail Nikolaev
Michal Albrycht
Mikael Gustavsson
Movead Li
Muhammad Usama
Nagaraj Raj
Naoki Nakamichi
Nathan Bossart
Nathan Long
Nazli Ugur Koyluoglu
Neha Sharma
Neil Chen
Nick Cleaton
Nico Williams
Nikhil Benesch
Nikhil Sontakke
Nikita Glukhov
Nikita Konev
Nikolai Berkoff
Nikolay Samokhvalov
Nikolay Shaplov
Nitin Jadhav
Noah Misch
Noriyoshi Shinoda
Odin Ugedal
Oleg Bartunov
Oleg Samoilov
Önder Kalaci
Pascal Legrand
Paul Förster
Paul Guo
Paul Jungwirth
Paul Martinez
Paul Sivash
Pavan Deolasee
Pavel Boev
Pavel Borisov
Pavel Luzanov
Pavel Stehule
Pengcheng Liu
Peter Eisentraut
Peter Geoghegan
Peter Smith
Peter Vandivier
Petr Fedorov
Petr Jelínek
Phil Krylov
Philipp Gramzow
Philippe Beaudoin
Phillip Menke
Pierre Giraud
Prabhat Sahu
Quan Zongliang
Rafi Shamim
Rahila Syed
Rajkumar Raghuwanshi
Ranier Vilela
Regina Obe
Rémi Lapeyre
Robert Foggia
Robert Grange
Robert Haas
Robert Kahlert
Robert Sosinski
Robert Treat
Robin Abbi
Robins Tharakan
Roger Mason
Rohit Bhogate
Roman Zharkov
Ron L. Johnson
Ronan Dunklau
Ryan Lambert
Ryo Matsumura
Saeed Hubaishan
Sait Talha Nisanci
Sandro Mani
Santosh Udupi
Scott Ribe
Sehrope Sarkuni
Sergei Kornilov
Sergey Bernikov
Sergey Cherkashin
Sergey Koposov
Sergey Shinderuk
Sergey Zubkovsky
Shawn Wang
Shay Rojansky
Shi Yu
Shinya Kato
Shinya Okano
Sigrid Ehrenreich
Simon Norris
Simon Riggs
Sofoklis Papasofokli
Soumyadeep Chakraborty
Stas Kelvich
Stephan Springl
Stéphane Lorek
Stephen Frost
Steven Winfield
Surafel Temesgen
Suraj Kharage
Sven Klemm
Takamichi Osumi
Takashi Menjo
Takayuki Tsunakawa
Tang Haiying
Tatsuhito Kasahara
Tatsuo Ishii
Tatsuro Yamada
Theodor Arsenij Larionov-Trichkin
Thomas Kellerer
Thomas Munro
Thomas Trenz
Tijs van Dam
Tom Ellis
Tom Gottfried
Tom Lane
Tom Vijlbrief
Tomas Barton
Tomas Vondra
Tomohiro Hiramitsu
Tony Reix
Vaishnavi Prabakaran
Valentin Gatien-Baron
Victor Wagner
Victor Yegorov
Vignesh C
Vik Fearing
Vitaly Ustinov
Vladimir Sitnikov
Vyacheslav Shablistyy
Wang Shenhao
Wei Wang
Wells Oliver
Wenjing Zeng
Wolfgang Walther
Yang Lin
Yanliang Lei
Yaoguang Chen
Yaroslav Pashinsky
Yaroslav Schekin
Yasushi Yamashita
Yoran Heling
YoungHwan Joo
Yugo Nagata
Yuki Seino
Yukun Wang
Yulin Pei
Yura Sokolov
Yuta Katsuragi
Yuta Kondo
Yuzuko Hosoya
Zhihong Yu
Zhiyong Wu
Zsolt Ero

Prev Up Next
E.40. Release 14.1 Home E.42. Prior Releases
pdfepub
Go to Postgres Pro Standard 14
By continuing to browse this website, you agree to the use of cookies. Go toPrivacy Policy.

[8]ページ先頭

©2009-2025 Movatter.jp