Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document bug in Reactive Extensions of the Oracle JDBC driver #35887

Merged
merged 1 commit into from
Sep 20, 2023
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 16 additions & 1 deletion docs/src/main/asciidoc/datasource.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -301,6 +301,22 @@
+
The installed extension must be consistent with the `quarkus.datasource.db-kind` you define in your datasource configuration.

[WARNING]
====
The Reactive Oracle datasource depends on the https://docs.oracle.com/en/database/oracle/oracle-database/23/jjdbc/jdbc-reactive-extensions.html[Reactive Extensions] provided by Oracle in its JDBC driver.

There is a bug in versions 23.2 and 21.11 of the Oracle JDBC driver that prevents from getting any response if:

* Reactive Extensions are used to execute an update/insert query that ends with an error (e.g. constraint violation), and

Check warning on line 310 in docs/src/main/asciidoc/datasource.adoc

View workflow job for this annotation

GitHub Actions / Linting with Vale

[vale] reported by reviewdog 🐶 [Quarkus.TermsWarnings] Consider using 'for example' rather than 'e.g.' unless updating existing content that uses the term. Raw Output: {"message": "[Quarkus.TermsWarnings] Consider using 'for example' rather than 'e.g.' unless updating existing content that uses the term.", "location": {"path": "docs/src/main/asciidoc/datasource.adoc", "range": {"start": {"line": 310, "column": 91}}}, "severity": "WARNING"}
* https://vertx.io/docs/vertx-oracle-client/java/#_retrieving_generated_key_values[generated keys retrieval] is enabled.

It is not known yet when the bug will be fixed.
In the meantime, you can either:

* change the version of the driver in your project to `com.oracle.database.jdbc:ojdbc11:21.10.0.0`, or
* avoid executing queries with generated keys retrieval (e.g. load sequence value before inserting)

Check warning on line 317 in docs/src/main/asciidoc/datasource.adoc

View workflow job for this annotation

GitHub Actions / Linting with Vale

[vale] reported by reviewdog 🐶 [Quarkus.TermsWarnings] Consider using 'for example' rather than 'e.g.' unless updating existing content that uses the term. Raw Output: {"message": "[Quarkus.TermsWarnings] Consider using 'for example' rather than 'e.g.' unless updating existing content that uses the term.", "location": {"path": "docs/src/main/asciidoc/datasource.adoc", "range": {"start": {"line": 317, "column": 58}}}, "severity": "WARNING"}
====

. After adding the driver, configure the connection URL and define a proper size for your connection pool.
+
[source,properties]
Expand All @@ -318,7 +334,6 @@

For more information about pool size adjustment properties, see the <<reactive-configuration>> section.


==== JDBC and reactive datasources simultaneously

When a JDBC extension - along with Agroal - and a reactive datasource extension handling the given database kind are included, they will both be created by default.
Expand Down