↑↓ select ↵ open ⌫ change scope Open full search

PG.CENTER connects PostgreSQL documentation, reference, and ecosystem knowledge. Maintained by Pigsty.

DocumentationVersion comparison

POSTGRESQL · VERSION COMPARE

PostgreSQL 10.2 release changes

All features, fixes, and compatibility notes in this release, with related records from other versions.

All changes in this release
All changes in this release

Includes changes after the source version through the target. A major version name means its initial release.

From PostgreSQL 9.0 onward: 17 major branches and 352 release notes. Updated 2026-09-26.

Complete release changes

10.2

2018-02-08

Export JSON
65changesFeatures, fixes, improvements
1releaseGrouped by release
2CVEsVulnerability IDs mentioned in these notes

10.2 HistoricalSupport ends 2022-11-10

Security records mentioned in this release 2 CVEs
CVEs mentioned in these notes, including possible follow-up fixes for earlier vulnerabilities
CVE / issueSeverityFixed version
CVE-2018-1053

Ensure that all temporary files made by pg_upgrade are non-world-readable

6.710.2
CVE-2018-1052

Fix processing of partition keys containing multiple expressions

6.510.2

PostgreSQL 10.2

Migration and compatibility

A dump/restore is not required for those running 10.X.

However, if you use contrib/cube's ~> operator, see the entry below about that.

Also, if you are upgrading from a version earlier than 10.1, see Section E.23.

SecurityFix processing of partition keys containing multiple expressions

Changes

Fix processing of partition keys containing multiple expressions (Álvaro Herrera, David Rowley)

This error led to crashes or, with carefully crafted input, disclosure of arbitrary backend memory. (CVE-2018-1052)

SecurityEnsure that all temporary files made by pg_upgrade are non-world-readable

Changes

Ensure that all temporary files made by pg_upgrade are non-world-readable (Tom Lane, Noah Misch)

pg_upgrade normally restricts its temporary files to be readable and writable only by the calling user. But the temporary file containing pg_dumpall -g output would be group- or world-readable, or even writable, if the user's umask setting allows. In typical usage on multi-user machines, the umask and/or the working directory's permissions would be tight enough to prevent problems; but there may be people using pg_upgrade in scenarios where this oversight would permit disclosure of database passwords to unfriendly eyes. (CVE-2018-1053)

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

Bug fixesFix vacuuming of tuples that were updated while key-share locked

Changes

Fix vacuuming of tuples that were updated while key-share locked (Andres Freund, Álvaro Herrera)

In some cases VACUUM would fail to remove such tuples even though they are now dead, leading to assorted data corruption scenarios.

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

Bug fixesFix failure to mark a hash index's metapage dirty after adding a new overflow page, potentially leading to index corruption

Changes

Fix failure to mark a hash index's metapage dirty after adding a new overflow page, potentially leading to index corruption (Lixian Zou, Amit Kapila)

ImprovementsEnsure that vacuum will always clean up the pending-insertions list of a GIN index

Changes

Ensure that vacuum will always clean up the pending-insertions list of a GIN index (Masahiko Sawada)

This is necessary to ensure that dead index entries get removed. The old code got it backwards, allowing vacuum to skip the cleanup if some other process were running cleanup concurrently, thus risking invalid entries being left behind in the index.

Related records (1)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

Bug fixesFix inadequate buffer locking in some LSN fetches

Changes

Fix inadequate buffer locking in some LSN fetches (Jacob Champion, Asim Praveen, Ashwin Agrawal)

These errors could result in misbehavior under concurrent load. The potential consequences have not been characterized fully.

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

Bug fixesFix incorrect query results from cases involving flattening of subqueries whose outputs are used in GROUPING SETS

Changes

Fix incorrect query results from cases involving flattening of subqueries whose outputs are used in GROUPING SETS (Heikki Linnakangas)

Related records (2)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

Bug fixesFix handling of list partitioning constraints for partition keys of boolean or array types

Changes

Fix handling of list partitioning constraints for partition keys of boolean or array types (Amit Langote)

ImprovementsAvoid unnecessary failure in a query on an inheritance tree that occurs concurrently with some child table being removed from the tree by ALTER TABLE NO INHERIT

Changes

Avoid unnecessary failure in a query on an inheritance tree that occurs concurrently with some child table being removed from the tree by ALTER TABLE NO INHERIT (Tom Lane)

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

Bug fixesFix spurious deadlock failures when multiple sessions are running CREATE INDEX CONCURRENTLY

Changes

Fix spurious deadlock failures when multiple sessions are running CREATE INDEX CONCURRENTLY (Jeff Janes)

Related records (3)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

ImprovementsDuring VACUUM FULL, update the table's size fields in pg_class sooner

Changes

During VACUUM FULL, update the table's size fields in pg_class sooner (Amit Kapila)

This prevents poor behavior when rebuilding hash indexes on the table, since those use the pg_class statistics to govern the initial hash size.

Bug fixesFix UNION/INTERSECT/EXCEPT over zero columns

Changes

Fix UNION/INTERSECT/EXCEPT over zero columns (Tom Lane)

ImprovementsDisallow identity columns on typed tables and partitions

Changes

Disallow identity columns on typed tables and partitions (Michael Paquier)

These cases will be treated as unsupported features for now.

Bug fixesFix assorted failures to apply the correct default value when inserting into an identity column

Changes

Fix assorted failures to apply the correct default value when inserting into an identity column (Michael Paquier, Peter Eisentraut)

In several contexts, notably COPY and ALTER TABLE ADD COLUMN, the expected default value was not applied and instead a null value was inserted.

Bug fixesFix failures when an inheritance tree contains foreign child tables

Changes

Fix failures when an inheritance tree contains foreign child tables (Etsuro Fujita)

A mix of regular and foreign tables in an inheritance tree resulted in creation of incorrect plans for UPDATE and DELETE queries. This led to visible failures in some cases, notably when there are row-level triggers on a foreign child table.

Related records (2)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

Bug fixesRepair failure with correlated sub-SELECT inside VALUES inside a LATERAL subquery

Changes

Repair failure with correlated sub-SELECT inside VALUES inside a LATERAL subquery (Tom Lane)

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

Bug fixesFix “could not devise a query plan for the given query” planner failure for some cases involving nested UNION ALL inside a lateral subquery

Changes

Fix “could not devise a query plan for the given query” planner failure for some cases involving nested UNION ALL inside a lateral subquery (Tom Lane)

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

ImprovementsAllow functional dependency statistics to be used for boolean columns

Changes

Allow functional dependency statistics to be used for boolean columns (Tom Lane)

Previously, although extended statistics could be declared and collected on boolean columns, the planner failed to apply them.

ImprovementsAvoid underestimating the number of groups emitted by subqueries containing set-returning functions in their grouping columns

Changes

Avoid underestimating the number of groups emitted by subqueries containing set-returning functions in their grouping columns (Tom Lane)

Cases similar to SELECT DISTINCT unnest(foo) got a lower output rowcount estimate in 10.0 than they did in earlier releases, possibly resulting in unfavorable plan choices. Restore the prior estimation behavior.

Bug fixesFix use of triggers in logical replication workers

Changes

Fix use of triggers in logical replication workers (Petr Jelinek)

Bug fixesFix logical decoding to correctly clean up disk files for crashed transactions

Changes

Fix logical decoding to correctly clean up disk files for crashed transactions (Atsushi Torikoshi)

Logical decoding may spill WAL records to disk for transactions generating many WAL records. Normally these files are cleaned up after the transaction's commit or abort record arrives; but if no such record is ever seen, the removal code misbehaved.

Related records (3)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

Bug fixesFix walsender timeout failure and failure to respond to interrupts when processing a large transaction

Changes

Fix walsender timeout failure and failure to respond to interrupts when processing a large transaction (Petr Jelinek)

Related records (3)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

Bug fixesFix race condition during replication origin drop that could allow the dropping process to wait indefinitely

Changes

Fix race condition during replication origin drop that could allow the dropping process to wait indefinitely (Tom Lane)

ImprovementsAllow members of the pg_read_all_stats role to see walsender statistics in the pg_stat_replication view

Changes

Allow members of the pg_read_all_stats role to see walsender statistics in the pg_stat_replication view (Feike Steenbergen)

ImprovementsShow walsenders that are sending base backups as active in the pg_stat_activity view

Changes

Show walsenders that are sending base backups as active in the pg_stat_activity view (Magnus Hagander)

Bug fixesFix reporting of scram-sha-256 authentication method in the pg_hba_file_rules view

Changes

Fix reporting of scram-sha-256 authentication method in the pg_hba_file_rules view (Michael Paquier)

Previously this was printed as scram-sha256, possibly confusing users as to the correct spelling.

Bug fixesFix has_sequence_privilege() to support WITH GRANT OPTION tests, as other privilege-testing functions do

Changes

Fix has_sequence_privilege() to support WITH GRANT OPTION tests, as other privilege-testing functions do (Joe Conway)

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

ImprovementsIn databases using UTF8 encoding, ignore any XML declaration that asserts a different encoding

Changes

In databases using UTF8 encoding, ignore any XML declaration that asserts a different encoding (Pavel Stehule, Noah Misch)

We always store XML strings in the database encoding, so allowing libxml to act on a declaration of another encoding gave wrong results. In encodings other than UTF8, we don't promise to support non-ASCII XML data anyway, so retain the previous behavior for bug compatibility. This change affects only xpath() and related functions; other XML code paths already acted this way.

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

ImprovementsProvide for forward compatibility with future minor protocol versions

Changes

Provide for forward compatibility with future minor protocol versions (Robert Haas, Badrul Chowdhury)

Up to now, PostgreSQL servers simply rejected requests to use protocol versions newer than 3.0, so that there was no functional difference between the major and minor parts of the protocol version number. Allow clients to request versions 3.x without failing, sending back a message showing that the server only understands 3.0. This makes no difference at the moment, but back-patching this change should allow speedier introduction of future minor protocol upgrades.

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

ImprovementsAllow a client that supports SCRAM channel binding (such as v11 or later libpq) to connect to a v10 server

Changes

Allow a client that supports SCRAM channel binding (such as v11 or later libpq) to connect to a v10 server (Michael Paquier)

v10 does not have this feature, and the connection-time negotiation about whether to use it was done incorrectly.

ImprovementsAvoid live-lock in ConditionVariableBroadcast()

Changes

Avoid live-lock in ConditionVariableBroadcast() (Tom Lane, Thomas Munro)

Given repeatedly-unlucky timing, a process attempting to awaken all waiters for a condition variable could loop indefinitely. Due to the limited usage of condition variables in v10, this affects only parallel index scans and some operations on replication slots.

ImprovementsClean up waits for condition variables correctly during subtransaction abort

Changes

Clean up waits for condition variables correctly during subtransaction abort (Robert Haas)

ImprovementsEnsure that child processes that are waiting for a condition variable will exit promptly if the postmaster process dies

Changes

Ensure that child processes that are waiting for a condition variable will exit promptly if the postmaster process dies (Tom Lane)

Bug fixesFix crashes in parallel queries using more than one Gather node

Changes

Fix crashes in parallel queries using more than one Gather node (Thomas Munro)

Bug fixesFix hang in parallel index scan when processing a deleted or half-dead index page

Changes

Fix hang in parallel index scan when processing a deleted or half-dead index page (Amit Kapila)

Bug fixesAvoid crash if parallel bitmap heap scan is unable to allocate a shared memory segment

Changes

Avoid crash if parallel bitmap heap scan is unable to allocate a shared memory segment (Robert Haas)

ImprovementsCope with failure to start a parallel worker process

Changes

Cope with failure to start a parallel worker process (Amit Kapila, Robert Haas)

Parallel query previously tended to hang indefinitely if a worker could not be started, as the result of fork() failure or other low-probability problems.

Related records (3)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

ImprovementsAvoid unnecessary failure when no parallel workers can be obtained during parallel query startup

Changes

Avoid unnecessary failure when no parallel workers can be obtained during parallel query startup (Robert Haas)

Bug fixesFix collection of EXPLAIN statistics from parallel workers

Changes

Fix collection of EXPLAIN statistics from parallel workers (Amit Kapila, Thomas Munro)

Related records (1)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

ImprovementsEnsure that query strings passed to parallel workers are correctly null-terminated

Changes

Ensure that query strings passed to parallel workers are correctly null-terminated (Thomas Munro)

This prevents emitting garbage in postmaster log output from such workers.

ImprovementsAvoid unsafe alignment assumptions when working with __int128

Changes

Avoid unsafe alignment assumptions when working with __int128 (Tom Lane)

Typically, compilers assume that __int128 variables are aligned on 16-byte boundaries, but our memory allocation infrastructure isn't prepared to guarantee that, and increasing the setting of MAXALIGN seems infeasible for multiple reasons. Adjust the code to allow use of __int128 only when we can tell the compiler to assume lesser alignment. The only known symptom of this problem so far is crashes in some parallel aggregation queries.

Related records (2)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

Bug fixesPrevent stack-overflow crashes when planning extremely deeply nested set operations (UNION/INTERSECT/EXCEPT)

Changes

Prevent stack-overflow crashes when planning extremely deeply nested set operations (UNION/INTERSECT/EXCEPT) (Tom Lane)

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

Bug fixesAvoid crash during an EvalPlanQual recheck of an indexscan that is the inner child of a merge join

Changes

Avoid crash during an EvalPlanQual recheck of an indexscan that is the inner child of a merge join (Tom Lane)

This could only happen during an update or SELECT FOR UPDATE of a join, when there is a concurrent update of some selected row.

Bug fixesFix crash in autovacuum when extended statistics are defined for a table but can't be computed

Changes

Fix crash in autovacuum when extended statistics are defined for a table but can't be computed (Álvaro Herrera)

Bug fixesFix null-pointer crashes for some types of LDAP URLs appearing in pg_hba.conf

Changes

Fix null-pointer crashes for some types of LDAP URLs appearing in pg_hba.conf (Thomas Munro)

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

ImprovementsPrevent out-of-memory failures due to excessive growth of simple hash tables

Changes

Prevent out-of-memory failures due to excessive growth of simple hash tables (Tomas Vondra, Andres Freund)

Bug fixesFix sample INSTR() functions in the PL/pgSQL documentation

Changes

Fix sample INSTR() functions in the PL/pgSQL documentation (Yugo Nagata, Tom Lane)

These functions are stated to be Oracle® compatible, but they weren't exactly. In particular, there was a discrepancy in the interpretation of a negative third parameter: Oracle thinks that a negative value indicates the last place where the target substring can begin, whereas our functions took it as the last place where the target can end. Also, Oracle throws an error for a zero or negative fourth parameter, whereas our functions returned zero.

The sample code has been adjusted to match Oracle's behavior more precisely. Users who have copied this code into their applications may wish to update their copies.

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

Bug fixesFix pg_dump to make ACL (permissions), comment, and security label entries reliably identifiable in archive output formats

Changes

Fix pg_dump to make ACL (permissions), comment, and security label entries reliably identifiable in archive output formats (Tom Lane)

The “tag” portion of an ACL archive entry was usually just the name of the associated object. Make it start with the object type instead, bringing ACLs into line with the convention already used for comment and security label archive entries. Also, fix the comment and security label entries for the whole database, if present, to make their tags start with DATABASE so that they also follow this convention. This prevents false matches in code that tries to identify large-object-related entries by seeing if the tag starts with LARGE OBJECT. That could have resulted in misclassifying entries as data rather than schema, with undesirable results in a schema-only or data-only dump.

Note that this change has user-visible results in the output of pg_restore --list.

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

ImprovementsRename pg_rewind's copy_file_range function to avoid conflict with new Linux system call of that name

Changes

Rename pg_rewind's copy_file_range function to avoid conflict with new Linux system call of that name (Andres Freund)

This change prevents build failures with newer glibc versions.

Related records (2)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

Bug fixesIn ecpg, detect indicator arrays that do not have the correct length and report an error

Changes

In ecpg, detect indicator arrays that do not have the correct length and report an error (David Rader)

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

ImprovementsChange the behavior of contrib/cube's cube ~> int operator to make it compatible with KNN search

Changes

Change the behavior of contrib/cube's cube ~> int operator to make it compatible with KNN search (Alexander Korotkov)

The meaning of the second argument (the dimension selector) has been changed to make it predictable which value is selected even when dealing with cubes of varying dimensionalities.

This is an incompatible change, but since the point of the operator was to be used in KNN searches, it seems rather useless as-is. After installing this update, any expression indexes or materialized views using this operator will need to be reindexed/refreshed.

Related records (1)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

ImprovementsAvoid triggering a libc assertion in contrib/hstore, due to use of memcpy() with equal source and destination pointers

Changes

Avoid triggering a libc assertion in contrib/hstore, due to use of memcpy() with equal source and destination pointers (Tomas Vondra)

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

Bug fixesFix incorrect display of tuples' null bitmaps in contrib/pageinspect

Changes

Fix incorrect display of tuples' null bitmaps in contrib/pageinspect (Maksim Milyutin)

Related records (1)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

Bug fixesFix incorrect output from contrib/pageinspect's hash_page_items() function

Changes

Fix incorrect output from contrib/pageinspect's hash_page_items() function (Masahiko Sawada)

ImprovementsIn contrib/postgres_fdw, avoid “outer pathkeys do not match mergeclauses” planner error when constructing a plan involving a remote join

Changes

In contrib/postgres_fdw, avoid “outer pathkeys do not match mergeclauses” planner error when constructing a plan involving a remote join (Robert Haas)

Related records (1)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

ImprovementsIn contrib/postgres_fdw, avoid planner failure when there are duplicate GROUP BY entries

Changes

In contrib/postgres_fdw, avoid planner failure when there are duplicate GROUP BY entries (Jeevan Chalke)

ImprovementsProvide modern examples of how to auto-start Postgres on macOS

Changes

Provide modern examples of how to auto-start Postgres on macOS (Tom Lane)

The scripts in contrib/start-scripts/osx use infrastructure that's been deprecated for over a decade, and which no longer works at all in macOS releases of the last couple of years. Add a new subdirectory contrib/start-scripts/macos containing scripts that use the newer launchd infrastructure.

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

Bug fixesFix incorrect selection of configuration-specific libraries for OpenSSL on Windows

Changes

Fix incorrect selection of configuration-specific libraries for OpenSSL on Windows (Andrew Dunstan)

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

ImprovementsSupport linking to MinGW-built versions of libperl

Changes

Support linking to MinGW-built versions of libperl (Noah Misch)

This allows building PL/Perl with some common Perl distributions for Windows.

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

Bug fixesFix MSVC build to test whether 32-bit libperl needs -D_USE_32BIT_TIME_T

Changes

Fix MSVC build to test whether 32-bit libperl needs -D_USE_32BIT_TIME_T (Noah Misch)

Available Perl distributions are inconsistent about what they expect, and lack any reliable means of reporting it, so resort to a build-time test on what the library being used actually does.

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

ImprovementsOn Windows, install the crash dump handler earlier in postmaster startup

Changes

On Windows, install the crash dump handler earlier in postmaster startup (Takayuki Tsunakawa)

This may allow collection of a core dump for some early-startup failures that did not produce a dump before.

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

Bug fixesOn Windows, avoid encoding-conversion-related crashes when emitting messages very early in postmaster startup

Changes

On Windows, avoid encoding-conversion-related crashes when emitting messages very early in postmaster startup (Takayuki Tsunakawa)

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

ImprovementsUse our existing Motorola 68K spinlock code on OpenBSD as well as NetBSD

Changes

Use our existing Motorola 68K spinlock code on OpenBSD as well as NetBSD (David Carlier)

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

ImprovementsAdd support for spinlocks on Motorola 88K

Changes

Add support for spinlocks on Motorola 88K (David Carlier)

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

ImprovementsUpdate time zone data files to tzdata release 2018c for DST law changes in Brazil, Sao Tome and Principe, plus historical corrections for Bolivia, Japan, and South Sudan. The US/Pacific-New zone has been removed (it was only an alias for America/Los_Angeles anyway).

Changes

Update time zone data files to tzdata release 2018c for DST law changes in Brazil, Sao Tome and Principe, plus historical corrections for Bolivia, Japan, and South Sudan. The US/Pacific-New zone has been removed (it was only an alias for America/Los_Angeles anyway).

Related records (4)

“Same change” requires complete matching evidence. “Related commits” can cover independent changes, a partial backport, or a follow-up correction; each release keeps its own explanation.

How is this comparison generated?

The comparison follows PostgreSQL release notes from just after the source through the target version. For a major upgrade, maintenance releases from each older branch are included only up to the next major release date, and never after the target date. A major version such as 18 means its initial release, 18.0. Previews and development snapshots are labeled separately.

Entries come from the original English manuals. Release coverage and commit evidence are verified against upstream sources. Every entry retains its complete explanation and source link. Categories aid browsing; read the full notes for impact, conditions, and migration steps.

Fixes can be backported to several branches. Confirmed duplicates are merged conservatively, with every branch explanation retained. A note describing several independent fixes is excluded only when all are already present in the source. Major-release features remain distinct from related maintenance patches unless their complete original descriptions match. Uncertain matches are retained. This is a release-note history, not an exhaustive comparison of compiled binaries.

CVE results are calculated independently from the PostgreSQL security registry and vulnerability records. A CVE counts as gained protection only when the source is affected and the target is fixed or unaffected. Remaining vulnerabilities are listed separately. Security entries and distinct CVEs are counted separately.

Interaction inspired by pgversions.com and pgversionreport. Content comes from PostgreSQL release notes. See the release notes archive.