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
Add support for R2DBC #19988
Comments
|
As far as I know, r2dbc is scheduled to be integrated to the Spring Data release train with Neumann (next major release). When that's the case, it will no longer be experimental and we can take it from there. Going forward, please ask questions on ou Gitter channel or StackOverflow. |
|
Looking at the issue tracker, we don't have an issue to track the integration of R2DBC here so we can just as well reuse this issue. I'll update the title to make that clear. |
|
We've discussed this one a bit today and we're going to do our best to implement this for 2.3. We're going to use a separate namespace, with support for Flyway and Liquibase only, creating a "local" We should also upgrade The work that has been done in https://github.com/spring-projects-experimental/spring-boot-r2dbc should help us significantly. |
|
We've been discussing how database initialization should work and the relationship with In short:
|
|
I've made quite some good progress on the experimental project. I've also started to spike on the idea to translate a |
|
Blocked on https://jira.spring.io/browse/DATAJDBC-492 |
|
spring-projects/spring-data-r2dbc#311 and https://jira.spring.io/browse/DATAJDBC-492 are fixed now. |
|
Thanks @mp911de, this helped. |
See spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
See spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io> Co-authored-by: Oliver Drotbohm <odrotbohm@pivotal.io>
See spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
See spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
See spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io> Co-authored-by: Tadaya Tsuyukubo <tadaya@ttddyy.net>
See spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
See spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io> Co-authored-by: Oliver Drotbohm <odrotbohm@pivotal.io>
See spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
See spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
See spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io> Co-authored-by: Tadaya Tsuyukubo <tadaya@ttddyy.net>
See spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
See spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io> Co-authored-by: Oliver Drotbohm <odrotbohm@pivotal.io>
See spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
See spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
See spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io> Co-authored-by: Tadaya Tsuyukubo <tadaya@ttddyy.net>
See spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
See spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io> Co-authored-by: Oliver Drotbohm <odrotbohm@pivotal.io>
See spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
See spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
See spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io> Co-authored-by: Tadaya Tsuyukubo <tadaya@ttddyy.net>
Closes spring-projectsgh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
This commit adds auto-configuration for R2DBC. If R2DBC is on the classpath, a `ConnectionFactory` is created similarly to the algorithm used to create a `DataSource`. If an url is specified, it is used to determine the R2DBC driver and database location. If not, an embedded database is started (with only support of H2 via r2dbc-h2). If none of those succeed, an exception is thrown that is handled by a dedicated FailureAnalyzer. To clearly separate reactive from imperative access, a `DataSource` is not auto-configured if a `ConnectionFactory` is present. This makes sure that any auto-configuration that relies on the presence of a `DataSource` backs off. There is no dedicated database initialization at the moment but it is possible to configure flyway or liquibase to create a local `DataSource` for the duration of the migration. Alternatively, if Spring Data R2DBC is on the classpath, a `ResourceDatabasePopulator` bean can be defined with the scripts to execute on startup. See gh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
This commit adds auto-configuration support for Spring Data R2DBC. If a `ConnectionFactory` and Spring Data are available, scanning of reactive repositories is enabled. This commit also adds a starter to bring R2DBC and the necessary Spring Data libraries. See gh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io> Co-authored-by: Oliver Drotbohm <odrotbohm@pivotal.io>
This commit adds a test slice for Spring Data R2DBC. When `DataR2dbcTest` is added on a test, only Spring Data R2DBC repositories and the infrastructure that they need is auto-configured. Contrary to the JDBC counterpart, the `ConnectionFactory` is not swapped by an embedded database. See gh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
This commit adds an health indicator for R2DBC. If a validation query is provided, it is used to validate the state of the database. If not, a check of the connection is issued. See gh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
This commit adds metrics support for `ConnectionPool` beans. See gh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io> Co-authored-by: Tadaya Tsuyukubo <tadaya@ttddyy.net>
See gh-19988 Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
|
@snicoll What is the spring boot dependency to be used for using the r2dbc ? Is this the one or any spring boot starter dependency also present? org.springframework.data spring-data-r2dbc 1.1.1.RELEASE |
|
@abhi2495 There's a list of starters in the reference documentation where you'll find |
|
Thanks @wilkinsona . Thing is , the only spring-boot-starter-data-r2dbc artifact that I could see listed in Maven repository belonged to the group |
|
@abhi2495 |
Good afternoon,
I would like to know if exist any plan to provide a R2DBC starter that is shipped by Spring Boot itself. Currently, if a project requires the dependency R2DBC, it appears as Experimental in
https://start.spring.io/
Does exist any plan to change the status?
Many thanks in advance
Juan Antonio
@mp911de
The text was updated successfully, but these errors were encountered: