Skip to content

Commit 3185173

Browse files
mp911dechristophstrobl
authored andcommitted
DATAREDIS-656 - Reduce default LettuceConnectionFactory shutdown timeout to 100ms.
Reducing the default to 100 milliseconds is a good compromise to retain a quiet time in for parallel execution and optimize for default, single-threaded execution (such as test execution or regular application shutdown). The shutdown timeout can be adjusted to fit specific application needs. Previously, LettuceConnectionFactory used different defaults: 2 seconds if used LettuceClientConfiguration and 60 seconds without LettuceClientConfiguration. In any case, defaults delay shutdown and cause severe delays in total. The driver default of two seconds provides enough time to complete long-running tasks before the actual thread pool shutdown. Original Pull Request: #251
1 parent 475d1bb commit 3185173

File tree

3 files changed

+5
-5
lines changed

3 files changed

+5
-5
lines changed

src/main/java/org/springframework/data/redis/connection/lettuce/LettuceClientConfiguration.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -223,11 +223,11 @@ class DefaultLettuceClientConfigurationBuilder
223223
private ClientResources clientResources;
224224
private ClientOptions clientOptions;
225225
private Duration timeout = Duration.ofSeconds(RedisURI.DEFAULT_TIMEOUT);
226-
private Duration shutdownTimeout = Duration.ofSeconds(2);
226+
private Duration shutdownTimeout = Duration.ofMillis(100);
227227

228228
private DefaultLettuceClientConfigurationBuilder() {}
229229

230-
/*d
230+
/*
231231
* (non-Javadoc)
232232
* @see org.springframework.data.redis.connection.lettuce.LettuceClientConfiguration.LettuceClientConfigurationBuilder#useSsl()
233233
*/
@@ -239,7 +239,7 @@ public LettuceSslClientConfigurationBuilder useSsl() {
239239
}
240240

241241
/*
242-
*(non-Javadoc)
242+
* (non-Javadoc)
243243
* @see org.springframework.data.redis.connection.lettuce.LettuceClientConfiguration.LettuceSslClientConfigurationBuilder#disablePeerVerification()
244244
*/
245245
@Override

src/main/java/org/springframework/data/redis/connection/lettuce/LettuceConnectionFactory.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -851,7 +851,7 @@ static class MutableLettuceClientConfiguration implements LettuceClientConfigura
851851
private boolean startTls;
852852
private ClientResources clientResources;
853853
private Duration timeout = Duration.ofSeconds(RedisURI.DEFAULT_TIMEOUT);
854-
private Duration shutdownTimeout = Duration.ofSeconds(RedisURI.DEFAULT_TIMEOUT);
854+
private Duration shutdownTimeout = Duration.ofMillis(100);
855855

856856
/* (non-Javadoc)
857857
* @see org.springframework.data.redis.connection.lettuce.LettuceClientConfiguration#isUseSsl()

src/test/java/org/springframework/data/redis/connection/lettuce/LettuceClientConfigurationUnitTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ public void shouldCreateEmptyConfiguration() {
4242
assertThat(configuration.getClientOptions()).isEmpty();
4343
assertThat(configuration.getClientResources()).isEmpty();
4444
assertThat(configuration.getCommandTimeout()).isEqualTo(Duration.ofSeconds(60));
45-
assertThat(configuration.getShutdownTimeout()).isEqualTo(Duration.ofSeconds(2));
45+
assertThat(configuration.getShutdownTimeout()).isEqualTo(Duration.ofMillis(100));
4646
}
4747

4848
@Test // DATAREDIS-574

0 commit comments

Comments
 (0)