2

I am using Oracle r2dbc in my Spring Boot application.

I have a DatabaseClient set up and when I call:

databaseClient.sql("select ...").fetch().one().block();

The function never returns. It just hangs forever. Why is this?

Alexander Taylor
  • 16,574
  • 14
  • 62
  • 83

1 Answers1

0

This happens when using an incompatible version of com.oracle.database.r2dbc:oracle-r2dbc.

Use the 0.1.0 version of Oracle R2DBC if you are programming with Spring. The later versions of Oracle R2DBC implement the 0.9.x versions of the R2DBC SPI. Currently, Spring only supports drivers that implement the 0.8.x versions of the SPI.

https://github.com/oracle/oracle-r2dbc

Be sure to use 0.1.0 and NOT 0.2.0. (Versions 0.3.0 and later will give obscure errors instead of hanging.)

After updating the dependencies in your build system, you may have to invalidate / clear your IDE's cache as well. For Intellij/Maven users, I think the "Reload all Maven projects" button might work too.

Alexander Taylor
  • 16,574
  • 14
  • 62
  • 83