Skip to content

Commit 293b377

Browse files
haorenfsaclaude
andauthored
Update gRPC keepalive defaults to 10s interval, 5s timeout, enable without calls (#1758)
Change keepAliveTimeMs from 55s to 10s, keepAliveTimeoutMs from 20s to 5s, and enable keepAliveWithoutCalls by default in both ConnectParam (V1) and ConnectConfig (V2). Signed-off-by: haorenfsa <haorenfsa@gmail.com> Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
1 parent d7a6aff commit 293b377

File tree

4 files changed

+32
-11
lines changed

4 files changed

+32
-11
lines changed

sdk-core/src/main/java/io/milvus/param/ConnectParam.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -209,9 +209,9 @@ public static class Builder {
209209
private String uri;
210210
private String token;
211211
private long connectTimeoutMs = 10000;
212-
private long keepAliveTimeMs = 55000;
213-
private long keepAliveTimeoutMs = 20000;
214-
private boolean keepAliveWithoutCalls = false;
212+
private long keepAliveTimeMs = 10000;
213+
private long keepAliveTimeoutMs = 5000;
214+
private boolean keepAliveWithoutCalls = true;
215215
private long rpcDeadlineMs = 0; // Disabling deadline
216216

217217
private String clientKeyPath;
@@ -396,7 +396,7 @@ public Builder withConnectTimeout(long connectTimeout, TimeUnit timeUnit) {
396396

397397
/**
398398
* Sets the keep-alive time value of client channel. The keep-alive value must be greater than zero.
399-
* Default is 55000 ms.
399+
* Default is 10000 ms.
400400
*
401401
* @param keepAliveTime keep-alive value
402402
* @param timeUnit keep-alive unit
@@ -412,7 +412,7 @@ public Builder withKeepAliveTime(long keepAliveTime, TimeUnit timeUnit) {
412412

413413
/**
414414
* Sets the keep-alive timeout value of client channel. The timeout value must be greater than zero.
415-
* Default value is 20000 ms
415+
* Default value is 5000 ms
416416
*
417417
* @param keepAliveTimeout timeout value
418418
* @param timeUnit timeout unit

sdk-core/src/main/java/io/milvus/v2/client/ConnectConfig.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,9 @@ public class ConnectConfig {
3535
private String password;
3636
private String dbName;
3737
private long connectTimeoutMs = 10000;
38-
private long keepAliveTimeMs = 55000;
39-
private long keepAliveTimeoutMs = 20000;
40-
private boolean keepAliveWithoutCalls = false;
38+
private long keepAliveTimeMs = 10000;
39+
private long keepAliveTimeoutMs = 5000;
40+
private boolean keepAliveWithoutCalls = true;
4141
private long rpcDeadlineMs = 0; // Disabling deadline
4242

4343
private String clientKeyPath;
@@ -324,9 +324,9 @@ public static class ConnectConfigBuilder {
324324
private String password;
325325
private String dbName;
326326
private long connectTimeoutMs = 10000;
327-
private long keepAliveTimeMs = 55000;
328-
private long keepAliveTimeoutMs = 20000;
329-
private boolean keepAliveWithoutCalls = false;
327+
private long keepAliveTimeMs = 10000;
328+
private long keepAliveTimeoutMs = 5000;
329+
private boolean keepAliveWithoutCalls = true;
330330
private long rpcDeadlineMs = 0;
331331
private String clientKeyPath;
332332
private String clientPemPath;

sdk-core/src/test/java/io/milvus/client/MilvusServiceClientTest.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -283,6 +283,17 @@ void connectParam() {
283283
);
284284
}
285285

286+
@Test
287+
void connectParamDefaults() {
288+
ConnectParam connectParam = ConnectParam.newBuilder()
289+
.withHost("dummyHost")
290+
.withPort(19530)
291+
.build();
292+
assertEquals(10000, connectParam.getKeepAliveTimeMs());
293+
assertEquals(5000, connectParam.getKeepAliveTimeoutMs());
294+
assertTrue(connectParam.isKeepAliveWithoutCalls());
295+
}
296+
286297
@Test
287298
void testConnect() {
288299
ConnectParam connectParam = ConnectParam.newBuilder()

sdk-core/src/test/java/io/milvus/v2/client/MilvusClientV2Test.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -485,6 +485,16 @@ private static void VerifyClass(String clsName, CheckConfig config) {
485485
checkGetAndSet(cls, config);
486486
}
487487

488+
@Test
489+
void connectConfigDefaults() {
490+
ConnectConfig config = ConnectConfig.builder()
491+
.uri("http://dummyHost:19530")
492+
.build();
493+
Assertions.assertEquals(10000, config.getKeepAliveTimeMs());
494+
Assertions.assertEquals(5000, config.getKeepAliveTimeoutMs());
495+
Assertions.assertTrue(config.isKeepAliveWithoutCalls());
496+
}
497+
488498
@Test
489499
void testV2BuilderClasses() {
490500
CheckConfig config = new CheckConfig();

0 commit comments

Comments
 (0)