'Oracle R2DBC query hangs / never completes

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?



Solution 1:[1]

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.

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Alexander Taylor