Skip to content
This repository was archived by the owner on May 8, 2026. It is now read-only.

Commit acb37fe

Browse files
authored
fix: Set max retry at 5 for executePipeline (#2307)
1 parent 7bd0ce9 commit acb37fe

2 files changed

Lines changed: 16 additions & 0 deletions

File tree

google-cloud-firestore/src/main/java/com/google/cloud/firestore/spi/v1/GrpcFirestoreRpc.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,7 @@ public GrpcFirestoreRpc(final FirestoreOptions options) throws IOException {
148148
firestoreBuilder.runQuerySettings().retrySettings().setMaxAttempts(5);
149149
firestoreBuilder.runAggregationQuerySettings().retrySettings().setMaxAttempts(5);
150150
firestoreBuilder.batchGetDocumentsSettings().retrySettings().setMaxAttempts(5);
151+
firestoreBuilder.executePipelineSettings().retrySettings().setMaxAttempts(5);
151152
} else {
152153
firestoreBuilder.applyToAllUnaryMethods(
153154
builder -> {
@@ -158,6 +159,7 @@ public GrpcFirestoreRpc(final FirestoreOptions options) throws IOException {
158159
firestoreBuilder.runQuerySettings().setRetrySettings(retrySettings);
159160
firestoreBuilder.runAggregationQuerySettings().setRetrySettings(retrySettings);
160161
firestoreBuilder.batchGetDocumentsSettings().setRetrySettings(retrySettings);
162+
firestoreBuilder.executePipelineSettings().setRetrySettings(retrySettings);
161163
}
162164

163165
ApiTracerFactory apiTracerFactory = options.getApiTracerFactory();

google-cloud-firestore/src/test/java/com/google/cloud/firestore/spi/v1/GrpcFirestoreRpcTest.java

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@
3838
import com.google.firestore.v1.BeginTransactionResponse;
3939
import com.google.firestore.v1.CommitRequest;
4040
import com.google.firestore.v1.CommitResponse;
41+
import com.google.firestore.v1.ExecutePipelineRequest;
42+
import com.google.firestore.v1.ExecutePipelineResponse;
4143
import com.google.firestore.v1.ListDocumentsRequest;
4244
import com.google.firestore.v1.ListDocumentsResponse;
4345
import com.google.firestore.v1.PartitionQueryRequest;
@@ -213,6 +215,18 @@ public void runAggregationQueryCallableFollowsServiceConfig() throws Exception {
213215
.containsExactlyElementsIn(expectedSettings.getRetryableCodes());
214216
}
215217

218+
@Test
219+
public void executePipelineCallableFollowsServiceConfig() throws Exception {
220+
GrpcFirestoreRpc grpcFirestoreRpc = new GrpcFirestoreRpc(firestoreOptionsWithoutOverride);
221+
CallableRetryData actual = getRetryData(grpcFirestoreRpc.executePipelineCallable());
222+
ServerStreamingCallSettings<ExecutePipelineRequest, ExecutePipelineResponse> expectedSettings =
223+
defaultStubSettings.executePipelineSettings();
224+
assertThat(actual.retrySettings)
225+
.isEqualTo(withMaxAttempt5(expectedSettings.getRetrySettings()));
226+
assertThat(actual.retryableCodes)
227+
.containsExactlyElementsIn(expectedSettings.getRetryableCodes());
228+
}
229+
216230
@Test
217231
public void beginTransactionCallableFollowsServiceConfig() throws Exception {
218232
GrpcFirestoreRpc grpcFirestoreRpc = new GrpcFirestoreRpc(firestoreOptionsWithoutOverride);

0 commit comments

Comments
 (0)