From d4a88041dc5a8295503135d94120388ddf86e038 Mon Sep 17 00:00:00 2001 From: Stephane Nicoll Date: Wed, 14 Sep 2022 10:32:49 +0200 Subject: [PATCH] Upgrade to R2DBC Bom Borca-SR2 Closes gh-32328 --- .../autoconfigure/r2dbc/R2dbcAutoConfigurationTests.java | 2 +- spring-boot-project/spring-boot-dependencies/build.gradle | 2 +- .../springframework/boot/r2dbc/ConnectionFactoryBuilder.java | 4 ++++ .../boot/r2dbc/ConnectionFactoryBuilderTests.java | 5 +++++ 4 files changed, 11 insertions(+), 2 deletions(-) diff --git a/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/r2dbc/R2dbcAutoConfigurationTests.java b/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/r2dbc/R2dbcAutoConfigurationTests.java index 2f4f7d3093d8..7a092d4b9b6f 100644 --- a/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/r2dbc/R2dbcAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/r2dbc/R2dbcAutoConfigurationTests.java @@ -93,7 +93,7 @@ void configureWithUrlAndDefaultDoNotOverrideDefaultTimeouts() { assertThat(context).hasSingleBean(ConnectionFactory.class).hasSingleBean(ConnectionPool.class) .hasSingleBean(R2dbcProperties.class); ConnectionPool connectionPool = context.getBean(ConnectionPool.class); - assertThat(connectionPool).hasFieldOrPropertyWithValue("maxAcquireTime", Duration.ofNanos(-1)); + assertThat(connectionPool).hasFieldOrPropertyWithValue("maxAcquireTime", Duration.ofMillis(-1)); }); } diff --git a/spring-boot-project/spring-boot-dependencies/build.gradle b/spring-boot-project/spring-boot-dependencies/build.gradle index 9984af97068a..a87d64ddf8fd 100644 --- a/spring-boot-project/spring-boot-dependencies/build.gradle +++ b/spring-boot-project/spring-boot-dependencies/build.gradle @@ -1407,7 +1407,7 @@ bom { ] } } - library("R2DBC Bom", "Borca-SR1") { + library("R2DBC Bom", "Borca-SR2") { group("io.r2dbc") { imports = [ "r2dbc-bom" diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/r2dbc/ConnectionFactoryBuilder.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/r2dbc/ConnectionFactoryBuilder.java index 04d583391a8f..716839a4447a 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/r2dbc/ConnectionFactoryBuilder.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/r2dbc/ConnectionFactoryBuilder.java @@ -244,6 +244,10 @@ ConnectionPoolConfiguration connectionPoolConfiguration(ConnectionFactoryOptions .to(builder::maxIdleTime); map.from(options.getValue(PoolingConnectionFactoryProvider.MAX_CREATE_CONNECTION_TIME)).as(this::toDuration) .to(builder::maxCreateConnectionTime); + map.from(options.getValue(PoolingConnectionFactoryProvider.MAX_VALIDATION_TIME)).as(this::toDuration) + .to(builder::maxValidationTime); + map.from(options.getValue(PoolingConnectionFactoryProvider.MIN_IDLE)).as(this::toInteger) + .to(builder::minIdle); map.from(options.getValue(PoolingConnectionFactoryProvider.POOL_NAME)).as(this::toString).to(builder::name); map.from(options.getValue(PoolingConnectionFactoryProvider.PRE_RELEASE)).to((function) -> builder .preRelease((Function>) function)); diff --git a/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/r2dbc/ConnectionFactoryBuilderTests.java b/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/r2dbc/ConnectionFactoryBuilderTests.java index a6201529a451..ad78dc731e07 100644 --- a/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/r2dbc/ConnectionFactoryBuilderTests.java +++ b/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/r2dbc/ConnectionFactoryBuilderTests.java @@ -265,6 +265,11 @@ private enum ExpectedOption { MAX_CREATE_CONNECTION_TIME(PoolingConnectionFactoryProvider.MAX_CREATE_CONNECTION_TIME, Duration.ofSeconds(10), "maxCreateConnectionTime"), + MAX_VALIDATION_TIME(PoolingConnectionFactoryProvider.MAX_VALIDATION_TIME, Duration.ofMinutes(4), + "maxValidationTime"), + + MIN_IDLE(PoolingConnectionFactoryProvider.MIN_IDLE, 5, "minIdle"), + POOL_NAME(PoolingConnectionFactoryProvider.POOL_NAME, "testPool", "name"), POST_ALLOCATE(PoolingConnectionFactoryProvider.POST_ALLOCATE, mock(Function.class), "postAllocate"),