NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Maven Central · #1415 by repository stars
PostgreSQL JDBC Driver Postgresql
Last release 3 months ago
06 Jul 2026
Ships fairly regularly
a new release about every 3 months
Most releases are documented
notes for 43 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
13 years old
202 releases · first in 2013
fix: fix testGetSQLTypeQueryCache by searching for xid type. We used to search for box type but it is now cached. xid is not cached, this nuance is re
Notable changes
testGetSQLTypeQueryCache by searching for xid type. We used to search for box type but it is now cached. xid is not cached, this nuance is required for the test.\OidValueCorrectnessTest BOX_ARRAY OID, by adding BOX_ARRAY to the oidTypeName map [PR #2810]((https://github.com/pgjdbc/pgjdbc/pull/2810)<!--more-->
Commits by author
Dave Cramer (5):
One column per quarter.
fix: Add box to TypeInfoCache, fixes Issue #2746 PR #2747
<!--more-->
Commits by author
Dave Cramer (2):
regression: This release has 2 known regressions which make it unusable see the notes above. We advise people to use 42.5.3 instead.
title: PostgreSQL JDBC Driver 42.5.2 Released date: 2023-01-31 14:30:44 -0500 categories:
<!--more-->
Commits by author
Dave Cramer (2):
Sebastian Baumhekel(1): sebastian.baumhekel@gmail.com
sz-liva(1):
This has been fixed in this version fixes CVE-2022-41946 see the security advisory for more details. Reported by Jonathan Leitschuh This has been fixe…
<!--more-->
Commits by author
Dave Cramer (13):
Evgeniy Devyatykh (1):
Josh Soref (1):
Kevin222004 (1):
Knut Olav Løite (1):
Marek Läll (1):
Vladimir Sitnikov (4):
μtkarsh (1):
fix: revert change in PR #1986 where float was aliased to float4 from float8. float now aliases to float8 PR #2598 fixes Issue #2597
<!--more-->
Dave Cramer (5):
title: PostgreSQL JDBC Driver 42.4.5 Released date: 2024-03-13 15:43:00 -0400 categories:
Notable changes
NoSuchMethodError on ByteBuffer#position When Running on Java 8SimpleParameterList did not support type casting for all well known types.Setting the parameter to a -ve value creates a line comment. This has been fixed in this version fixes CVE-2024-1597. Reported by Paul Gerste. See the…
Notable changes
SimpleQuery mode to generate a line comment by having a placeholder for a numeric with a -
such as -?. There must be second placeholder for a string immediately after. Setting the parameter to a -ve value creates a line comment.
This has been fixed in this version fixes CVE-2024-1597. Reported by Paul Gerste. See the security advisory for more details. This has been fixed in versions 42.7.2, 42.6.1 42.5.5, 42.4.4, 42.3.9, 42.2.28.jre7. See the security advisory for work arounds.Nothing published for this version
fix: add alias to the generated getUDT() query for clarity (PR #2553)[https://github.com/pgjdbc/pgjdbc/pull/2553]
<!--more-->
Dave Cramer (7):
Revert revert commits made in PR 2580 [PR 2583](https://github.com/pgjdbc/pgjdbc/pull/2583)
fix mismatched types for invokeExact. Have to tell invokeExact what type we are expecting [PR 2589](https://github.com/pgjdbc/pgjdbc/pull/2589)
update last copyright year [PR 2593](https://github.com/pgjdbc/pgjdbc/pull/2593)
fix erroneous method signature and null subjectCallAs [PR 2595](https://github.com/pgjdbc/pgjdbc/pull/2595)
Sasa Vilic (1):
fix: make setObject accept UUID array [PR 2587](https://github.com/pgjdbc/pgjdbc/pull/2587)
Andrei Lurie (1):
fix: add alias to the generated getUDT() query for clarity (PR #2553)[https://github.com/pgjdbc/pgjdbc/pull/2553]
fix: CVE-2022-31197 Fixes SQL generated in PgResultSet.refresh() to escape column identifiers so as to prevent SQL injection.
<!--more-->
Dave Cramer (9):
bump gradle to version 3 to fix compile errors with jdk17 [PR 2550](https://github.com/pgjdbc/pgjdbc/pull/2550)
update the website content [PR 2578](https://github.com/pgjdbc/pgjdbc/pull/2578)
Sehrope Sarkuni (1):
Fix SQL generated in PgResultSet.refresh() to escape column identifiers so as to prevent SQL injection.
Vladimir Sitnikov (34):
bump system-stubs-jupiter to 2.0.1 to support Java 16+
update JUnit to 5.8.2
migrate DriverTest to JUnit5
bump Gradle to 7.5
fix: added GROUP_STARTUP_PARAMETERS boolean property to determine whether or not to group startup parameters in a transaction (default=false like 42.2
<!--more-->
Andrei Lurie (1):
fix: return correct base type for domain from getUDTs [PR 2520](https://github.com/pgjdbc/pgjdbc/pull/2520) (#2522)
Dave Cramer (3):
fix: added GROUP_STARTUP_PARAMETERS boolean property to determine whether or not to group startup parameters in a transaction or not fixes Issue 2423 pgbouncer cannot deal with transactions in statement pooling mode [PR 2425](https://github.com/pgjdbc/pgjdbc/pull/2425)
Jorge Solórzano (1):
chore: Make the readme version agnostic [PR 2540](https://github.com/pgjdbc/pgjdbc/pull/2540)
Sven Diedrichsen (1):
Made utcTz static and renamed to UTC_TIMEZONE [PR 2519](https://github.com/pgjdbc/pgjdbc/pull/2519)
Vladimir Sitnikov (24):
doc: fix release version for [PR 2377](https://github.com/pgjdbc/pgjdbc/pull/2377) (it should be 42.3.6, not 42.3.5)
title: PostgreSQL JDBC Driver 42.3.10 Released date: 2024-03-13 15:42:00 -0400 categories:
Notable changes
NoSuchMethodError on ByteBuffer#position When Running on Java 8SimpleParameterList did not support type casting for all well known types.Setting the parameter to a -ve value creates a line comment. This has been fixed in this version fixes CVE-2024-1597. Reported by Paul Gerste. See the…
Notable changes
SimpleQuery mode to generate a line comment by having a placeholder for a numeric with a -
such as -?. There must be second placeholder for a string immediately after. Setting the parameter to a -ve value creates a line comment.
This has been fixed in this version fixes CVE-2024-1597. Reported by Paul Gerste. See the security advisory for more details. This has been fixed in versions 42.7.2, 42.6.1 42.5.5, 42.4.4, 42.3.9, 42.2.28.jre7. See the security advisory for work arounds.Nothing published for this version
Nothing published for this version
fix: close refcursors when underlying cursor==null instead of relying on defaultRowFetchSize PR #2377
<!--more-->
Dave Cramer (2):
Fix heading format for version numbers [PR 2504](https://github.com/pgjdbc/pgjdbc/pull/2504)
Vladimir Sitnikov (1):
fix: close refcursors when underlying cursor==null instead of relying on defaultRowFetchSize [PR #2377](https://github.com/pgjdbc/pgjdbc/pull/2377)
test: polish TimestampUtilsTest
<!--more-->
Dave Cramer (4):
move version to 42.3.5 [PR 2493](https://github.com/pgjdbc/pgjdbc/pull/2493)
Added KEYS file to allow for verifying artifacts [PR 2499](https://github.com/pgjdbc/pgjdbc/pull/2499)
fix: revert removal of toOffsetDateTime(String timestamp) fixes #Issue 2497 [PR 2501](https://github.com/pgjdbc/pgjdbc/pull/2501)
Dmitriy Mukhin (1):
feat: targetServerType=preferPrimary connection parameter [PR 2483](https://github.com/pgjdbc/pgjdbc/pull/2483)
Olivier Bourgain (2):
perf: enable tcpNoDelay by default [PR 2495](https://github.com/pgjdbc/pgjdbc/pull/2495)
docs: fix readme.md after [PR 2495](https://github.com/pgjdbc/pgjdbc/pull/2495) (#2496)
Vladimir Sitnikov (1):
test: polish TimestampUtilsTest
chore: use GitHub Action concurrency feature to terminate CI jobs on fast PR pushes
fix: Remove isDeprecated from PGProperty. It was originally intended to help produce automated docs. Fixes Issue #2479 PR 2480
<!--more-->
Dave Cramer (8):
Fabio Cechinel Veronez (1):
Uwe Schindler (2):
Wei Su (1):
paulo-kluh (1):
吴伟杰 (1):
We thank the following people for their contributions to this release.
fix: Removed loggerFile and loggerLevel configuration. While the properties still exist. They can no longer be used to configure the driver logging. I
logging.properties.logging.properties .<!--more-->
Dave Cramer (5):
We thank the following people for their contributions to this release.
CVE-2022-21724 pgjdbc instantiates plugin instances based on class names provided via authenticationPluginClassName, sslhostnameverifier, socketFactor…
OutOfMemoryException => OutOfMemoryErrorOutOfMemoryException => OutOfMemoryError<!--more-->
Andrei Paikin (1):
Brett Okken (1):
Dave Cramer (21):
JoelRabinovitch (1):
Marek Läll (2):
Mark Grobaker (1):
Michał Wyrzykowski (1):
Nick Burgan (1):
Philippe Marschall (6):
Sehrope Sarkuni (9):
Sergey Nuyanzin (4):
Sergey Prytkov (1):
Zuzana Miklankova (1):
marcmuel (1):
We thank the following people for their contributions to this release.
improv: Arrays in Object[] PR 2330 when an Object[] contains other arrays, treat as though it were a multi-dimensional array the one exception is byte
Greagorian to Gregorian.Greagorian to Gregorian.<!--more-->
Brett Okken (6):
Dave Cramer (5):
Sergey Nuyanzin (1):
吴伟杰 (1):
We thank the following people for their contributions to this release.
No longer build for Java 6 or Java 7
QUOTE_RETURNING_IDENTIFIERS which determines if we put double quotes
around identifiers that are provided in the returning array.QUOTE_RETURNING_IDENTIFIERS which determines if we put double quotes
around identifiers that are provided in the returning array.We thank the following people for their contributions to this release.
title: PostgreSQL JDBC Driver 42.2.29 Released date: 2024-03-13 15:32:00 -0400 categories:
Notable changes
NoSuchMethodError on ByteBuffer#position When Running on Java 8SimpleParameterList did not support type casting for all well known types.Nothing published for this version
Setting the parameter to a -ve value creates a line comment. This has been fixed in this version fixes CVE-2024-1597. Reported by Paul Gerste. See the…
Notable changes
SimpleQuery mode to generate a line comment by having a placeholder for a numeric with a -
such as -?. There must be second placeholder for a string immediately after. Setting the parameter to a -ve value creates a line comment.
This has been fixed in this version fixes CVE-2024-1597. Reported by Paul Gerste. See the security advisory for more details. This has been fixed in versions 42.7.2, 42.6.1 42.5.5, 42.4.4, 42.3.9, 42.2.28.jre7. See the security advisory for work arounds.Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
CVE-2022-21724 pgjdbc instantiates plugin instances based on class names provided via authenticationPluginClassName, sslhostnameverifier, socketFactor…
<!--more-->
Nothing published for this version
Nothing published for this version
Fix startup regressions caused by PR #1949. Instead of checking all types by OID, we can return types for well known types PR #2257
<!--more-->
Dave Cramer (7):
Jens Peters (1):
Juha Syrjälä (1):
Sehrope Sarkuni (3):
chalmagr (1):
We thank the following people for their contributions to this release.
Nothing published for this version
Nothing published for this version
Renewed the SSL keys for testing
<!--more-->
Dave Cramer (2):
Nothing published for this version
Nothing published for this version
Regression caused by https://github.com/pgjdbc/pgjdbc/commit/4fa2d5bc1ed8c0086a3a197fc1c28f7173d53cac. Unfortunately due to the blocking nature of the
<!--more-->
Dave Cramer (1):
Nothing published for this version
Nothing published for this version
Update docs to reflect deprecated DataSource API setServerName backpatch PR#2057 PR #2105
<!--more-->
Dave Cramer (5):
fix: make sure the table have defined primary keys when using updateable resultset PR 2101 (#2106) update docs to reflect deprecated DataSource API setServerName PR 2057 (#2105)
fix: backpatch PRPR 507 which reworks OSGI bundle activator fixes ISSUE #2133 (#2166)
fix: backpatch2142 read notifies or errors that come in asynchronously after the ready for query PR 2168
fix: backpatch PRPR 2174 to Fix metadata functions getProcedures() and getFunctions() to ignore search_path (#2175)
Nothing published for this version
Nothing published for this version
Partitioned indexes were not found fixes #2078 PR #2087
setQueryTimeout(); with the same value as the setNetworkTimeout(); is blocking the current transaction timeout.
The timeouts are blocking each other with this approach.fix: Partitioned indexes were not found fixes #2078 PR #2087
isValid() timeout should not be blocked #1943 Cherry-picked #2076
The usage of setQueryTimeout(); with the same value as the setNetworkTimeout(); is blocking the current transaction timeout.
The timeouts are blocking each other with this approach.
DatabaseMetaData.getTables returns columns in UPPER case as per the spec PR #2092 fixes Issue #830
<!--more-->
Dave Cramer (10):
move comments to correct location [PR 2070](https://github.com/pgjdbc/pgjdbc/pull/2070
Update Changelog to reflect changes in 42.2.19 [PR 2063](https://github.com/pgjdbc/pgjdbc/pull/2063
fix: Partitioned indexes were not found fixes [PR 2078](https://github.com/pgjdbc/pgjdbc/pull/2078 (#2087)
cherry-pick PR [PR 2092](https://github.com/pgjdbc/pgjdbc/pull/2092 PgDatabaseMetaData.getTables() should return UPPERCASE column names as per spec (#2104)
Hugo Abreu (1):
isValid() timeout should not be blocked [PR 1943](https://github.com/pgjdbc/pgjdbc/pull/1943 (#2076)
Nothing published for this version
Nothing published for this version
Now the driver uses SASLprep normalization for SCRAM authentication fixing some issues with spaces in passwords.
Notable Changes
<!--more-->
Dave Cramer (5):
Jeremy Mailen (3):
Jorge Solórzano (1):
Pavel Bludov (2):
Power (1):
Roman Kozlov (1):
Sehrope Sarkuni (5):
Vladimir Sitnikov (14):
odubaj (1):
rtrier (1):
We thank the following people for their contributions to this release.
Nothing published for this version
Nothing published for this version
Unfortunately changing the default of gssEncMode to ALLOW was not enough. The GSSEncMode Enum was not changed as well fixed in #1920
<!--more-->
We thank the following people for their contributions to this release.
Nothing published for this version
Nothing published for this version
Change default of gssEncMode to ALLOW. PostgreSQL can deal with PREFER but there are cloud providers that did not implement the protocol properly. Lib
<!--more-->
Dave Cramer (5):
Jorge Solorzano (1):
Vladimir Sitnikov (8):
We thank the following people for their contributions to this release.
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →