jklingsporn / vertx-jooq

A jOOQ-CodeGenerator to create vertx-ified DAOs and POJOs.
MIT License
382 stars 53 forks source link

Feature request: flavor for R2DBC async drivers (instead of JDBC) #205

Open guss77 opened 2 years ago

guss77 commented 2 years ago

It would be great if there would be a version of vertx-jooq that uses an R2DBC API as the underlying implementation, that can be fully async and standardized, instead of using a blocking thread that runs JDBC operations, or using a custom third-party driver that isn't supported upstream (in the "reactive" flavor).

The R2DBC API - while only recently finalized a 1.0 specification - is promising to be a standard target for driver developers (unlike the vertx-sql-client which is Vert.x only and relies on a limited pool of developers) an already has buy-in from Google (CloudSpanner), Oracle and MariaDB (other implementations for widely used database servers, such as Postgres and MySQL are available from third-parties, which I chalk up to have about the same stability as `vertx-sql-client): https://r2dbc.io/drivers/

jOOQ also already has builtin support for R2DBC since at least 3.15.

I'm not sure what is the uplift cost here, but I think it will be a very useful and popular addition.

jklingsporn commented 2 years ago

Hi @guss77, I tend to say this is out of scope of this project. There have been discussions about a r2dbc wrapper for vertx which didn't result into an implementation (such as r2dbc-vertx). Apparently the vertx-folks don't want to implement this API and nobody else yet converted the draft into a working module.
What do you think?