migrate to reactive postgres client (vertx-pg-client)

Description

The new client vertx-pg-client) is shipped by default with vert.x 3.8, RMB however pins the client version to the custom vertx-mysql-postgresql-client 3.5.1-FOLIO.1 (which fixes some connection sharing issues we have discovered with the client). The old client is still supported and available with vertx 3.8.

Vert.x 4 will remove support for the old client. Vertx 4 milestone 1 announcement page: https://vertx.io/blog/eclipse-vert-x-4-milestone-1-released/

Vert.x will stop its LTS support for the old Postgres/MySQL client 12/2020.

Both the old and the new client are dedicated, non-blocking Postgres clients that support batch inserts and streaming selects. Only the new supports streaming inserts/updates.

Migration includes changing the code to use the new prepared statement syntax using $1 instead of ? (see also rejected feature request).

*See"

Migration guide should be prepared.

Environment

None

Potential Workaround

None

Checklist

hide

TestRail: Results

Activity

Show:

Adam Dickmeiss December 30, 2019 at 3:51 PM

In the process of moving Okapi to use vertx-pg-client.. It was fairly straightforward

Julian Ladisch December 14, 2018 at 10:28 AM

"Vert.x 3.6.x will be the last minor version of the 3.x release, it will remain LTS (until 12/2020) for bug fix releases and library version updates." https://github.com/vert-x3/wiki/wiki/Vert.x-Roadmap#vertx-36
We have two years to replace vertx-mysql-postgresql-client by reactive-pg-client in RMB PostgresClient.

Julian Ladisch December 10, 2018 at 8:36 AM

vertx-mysql-postgresql-client has been removed in Vert.x 4: https://github.com/vert-x3/vertx-mysql-postgresql-client/tree/master
vertx-mysql-postgresql-client is based on https://github.com/mauricio/postgresql-async which is not being maintained since January 2017.

Adam Dickmeiss October 2, 2018 at 12:56 PM
Edited

Vert.x people are under their way to do this.. See https://github.com/vert-x3/vertx-mysql-postgresql-client/issues/125

Julian Ladisch September 10, 2018 at 3:44 PM

There is also https://vertx.io/blog/simplified-database-transaction-management-with-the-vert-x-rxjava-api/ .
I don't know what the difference is, what the pro & cons are.

Done

Details

Assignee

Reporter

Priority

Story Points

Sprint

Development Team

Core: Platform

Fix versions

TestRail: Cases

Open TestRail: Cases

TestRail: Runs

Open TestRail: Runs

Created September 10, 2018 at 12:00 PM
Updated July 5, 2021 at 9:30 AM
Resolved May 14, 2020 at 7:15 PM
TestRail: Cases
TestRail: Runs