Skip to content

Commit a808bbe

Browse files
authored
fix: Configure defualt keep alive pings for BQ Storage Read API RPCs (#12037)
See b/424828238 for more information
1 parent 34f2997 commit a808bbe

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

java-bigquerystorage/google-cloud-bigquerystorage/src/main/java/com/google/cloud/bigquery/storage/v1/stub/EnhancedBigQueryReadStubSettings.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
import com.google.cloud.bigquery.storage.v1.SplitReadStreamResponse;
3737
import com.google.cloud.bigquery.storage.v1.stub.readrows.ReadRowsResumptionStrategy;
3838
import com.google.common.collect.ImmutableList;
39+
import java.time.Duration;
3940
import java.util.List;
4041

4142
/**
@@ -111,7 +112,12 @@ public static GoogleCredentialsProvider.Builder defaultCredentialsProviderBuilde
111112

112113
/** Returns a builder for the default ChannelProvider for this service. */
113114
public static InstantiatingGrpcChannelProvider.Builder defaultGrpcTransportProviderBuilder() {
114-
return BigQueryReadStubSettings.defaultGrpcTransportProviderBuilder();
115+
// Configure a default keep-alive value to prevent idle connections from dropping.
116+
// Some CreateReadSession calls may be long-running (10+ min).
117+
return BigQueryReadStubSettings.defaultGrpcTransportProviderBuilder()
118+
.setKeepAliveTimeDuration(Duration.ofMinutes(1))
119+
.setKeepAliveTimeoutDuration(Duration.ofMinutes(1))
120+
.setKeepAliveWithoutCalls(true);
115121
}
116122

117123
public static TransportChannelProvider defaultTransportChannelProvider() {

0 commit comments

Comments
 (0)