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

Commit 015d6f4

Browse files
fix: add missing read api retry setting on SplitReadStream (#1315)
* fix: add missing read api retry setting on SplitReadStream Committer: @yirutang PiperOrigin-RevId: 398057257 Source-Link: googleapis/googleapis@376e8e9 Source-Link: https://github.com/googleapis/googleapis-gen/commit/32c05ed4ed88d83ad5cafc7544058acc58bf5628 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiMzJjMDVlZDRlZDg4ZDgzYWQ1Y2FmYzc1NDQwNThhY2M1OGJmNTYyOCJ9 * 🦉 Updates from OwlBot See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
1 parent e68d0bf commit 015d6f4

File tree

57 files changed

+27454
-124
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

57 files changed

+27454
-124
lines changed

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

Lines changed: 749 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 239 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,239 @@
1+
/*
2+
* Copyright 2021 Google LLC
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License");
5+
* you may not use this file except in compliance with the License.
6+
* You may obtain a copy of the License at
7+
*
8+
* https://www.apache.org/licenses/LICENSE-2.0
9+
*
10+
* Unless required by applicable law or agreed to in writing, software
11+
* distributed under the License is distributed on an "AS IS" BASIS,
12+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
* See the License for the specific language governing permissions and
14+
* limitations under the License.
15+
*/
16+
17+
package com.google.cloud.bigquery.storage.v1;
18+
19+
import com.google.api.core.ApiFunction;
20+
import com.google.api.core.BetaApi;
21+
import com.google.api.gax.core.GoogleCredentialsProvider;
22+
import com.google.api.gax.core.InstantiatingExecutorProvider;
23+
import com.google.api.gax.grpc.InstantiatingGrpcChannelProvider;
24+
import com.google.api.gax.rpc.ApiClientHeaderProvider;
25+
import com.google.api.gax.rpc.ClientContext;
26+
import com.google.api.gax.rpc.ClientSettings;
27+
import com.google.api.gax.rpc.StreamingCallSettings;
28+
import com.google.api.gax.rpc.TransportChannelProvider;
29+
import com.google.api.gax.rpc.UnaryCallSettings;
30+
import com.google.cloud.bigquery.storage.v1.stub.BigQueryWriteStubSettings;
31+
import java.io.IOException;
32+
import java.util.List;
33+
import javax.annotation.Generated;
34+
35+
// AUTO-GENERATED DOCUMENTATION AND CLASS.
36+
/**
37+
* Settings class to configure an instance of {@link BigQueryWriteClient}.
38+
*
39+
* <p>The default instance has everything set to sensible defaults:
40+
*
41+
* <ul>
42+
* <li>The default service address (bigquerystorage.googleapis.com) and default port (443) are
43+
* used.
44+
* <li>Credentials are acquired automatically through Application Default Credentials.
45+
* <li>Retries are configured for idempotent methods but not for non-idempotent methods.
46+
* </ul>
47+
*
48+
* <p>The builder of this class is recursive, so contained classes are themselves builders. When
49+
* build() is called, the tree of builders is called to create the complete settings object.
50+
*
51+
* <p>For example, to set the total timeout of createWriteStream to 30 seconds:
52+
*
53+
* <pre>{@code
54+
* BigQueryWriteSettings.Builder bigQueryWriteSettingsBuilder = BigQueryWriteSettings.newBuilder();
55+
* bigQueryWriteSettingsBuilder
56+
* .createWriteStreamSettings()
57+
* .setRetrySettings(
58+
* bigQueryWriteSettingsBuilder
59+
* .createWriteStreamSettings()
60+
* .getRetrySettings()
61+
* .toBuilder()
62+
* .setTotalTimeout(Duration.ofSeconds(30))
63+
* .build());
64+
* BigQueryWriteSettings bigQueryWriteSettings = bigQueryWriteSettingsBuilder.build();
65+
* }</pre>
66+
*/
67+
@Generated("by gapic-generator-java")
68+
public class BigQueryWriteSettings extends ClientSettings<BigQueryWriteSettings> {
69+
70+
/** Returns the object with the settings used for calls to createWriteStream. */
71+
public UnaryCallSettings<CreateWriteStreamRequest, WriteStream> createWriteStreamSettings() {
72+
return ((BigQueryWriteStubSettings) getStubSettings()).createWriteStreamSettings();
73+
}
74+
75+
/** Returns the object with the settings used for calls to appendRows. */
76+
public StreamingCallSettings<AppendRowsRequest, AppendRowsResponse> appendRowsSettings() {
77+
return ((BigQueryWriteStubSettings) getStubSettings()).appendRowsSettings();
78+
}
79+
80+
/** Returns the object with the settings used for calls to getWriteStream. */
81+
public UnaryCallSettings<GetWriteStreamRequest, WriteStream> getWriteStreamSettings() {
82+
return ((BigQueryWriteStubSettings) getStubSettings()).getWriteStreamSettings();
83+
}
84+
85+
/** Returns the object with the settings used for calls to finalizeWriteStream. */
86+
public UnaryCallSettings<FinalizeWriteStreamRequest, FinalizeWriteStreamResponse>
87+
finalizeWriteStreamSettings() {
88+
return ((BigQueryWriteStubSettings) getStubSettings()).finalizeWriteStreamSettings();
89+
}
90+
91+
/** Returns the object with the settings used for calls to batchCommitWriteStreams. */
92+
public UnaryCallSettings<BatchCommitWriteStreamsRequest, BatchCommitWriteStreamsResponse>
93+
batchCommitWriteStreamsSettings() {
94+
return ((BigQueryWriteStubSettings) getStubSettings()).batchCommitWriteStreamsSettings();
95+
}
96+
97+
/** Returns the object with the settings used for calls to flushRows. */
98+
public UnaryCallSettings<FlushRowsRequest, FlushRowsResponse> flushRowsSettings() {
99+
return ((BigQueryWriteStubSettings) getStubSettings()).flushRowsSettings();
100+
}
101+
102+
public static final BigQueryWriteSettings create(BigQueryWriteStubSettings stub)
103+
throws IOException {
104+
return new BigQueryWriteSettings.Builder(stub.toBuilder()).build();
105+
}
106+
107+
/** Returns a builder for the default ExecutorProvider for this service. */
108+
public static InstantiatingExecutorProvider.Builder defaultExecutorProviderBuilder() {
109+
return BigQueryWriteStubSettings.defaultExecutorProviderBuilder();
110+
}
111+
112+
/** Returns the default service endpoint. */
113+
public static String getDefaultEndpoint() {
114+
return BigQueryWriteStubSettings.getDefaultEndpoint();
115+
}
116+
117+
/** Returns the default service scopes. */
118+
public static List<String> getDefaultServiceScopes() {
119+
return BigQueryWriteStubSettings.getDefaultServiceScopes();
120+
}
121+
122+
/** Returns a builder for the default credentials for this service. */
123+
public static GoogleCredentialsProvider.Builder defaultCredentialsProviderBuilder() {
124+
return BigQueryWriteStubSettings.defaultCredentialsProviderBuilder();
125+
}
126+
127+
/** Returns a builder for the default ChannelProvider for this service. */
128+
public static InstantiatingGrpcChannelProvider.Builder defaultGrpcTransportProviderBuilder() {
129+
return BigQueryWriteStubSettings.defaultGrpcTransportProviderBuilder();
130+
}
131+
132+
public static TransportChannelProvider defaultTransportChannelProvider() {
133+
return BigQueryWriteStubSettings.defaultTransportChannelProvider();
134+
}
135+
136+
@BetaApi("The surface for customizing headers is not stable yet and may change in the future.")
137+
public static ApiClientHeaderProvider.Builder defaultApiClientHeaderProviderBuilder() {
138+
return BigQueryWriteStubSettings.defaultApiClientHeaderProviderBuilder();
139+
}
140+
141+
/** Returns a new builder for this class. */
142+
public static Builder newBuilder() {
143+
return Builder.createDefault();
144+
}
145+
146+
/** Returns a new builder for this class. */
147+
public static Builder newBuilder(ClientContext clientContext) {
148+
return new Builder(clientContext);
149+
}
150+
151+
/** Returns a builder containing all the values of this settings class. */
152+
public Builder toBuilder() {
153+
return new Builder(this);
154+
}
155+
156+
protected BigQueryWriteSettings(Builder settingsBuilder) throws IOException {
157+
super(settingsBuilder);
158+
}
159+
160+
/** Builder for BigQueryWriteSettings. */
161+
public static class Builder extends ClientSettings.Builder<BigQueryWriteSettings, Builder> {
162+
163+
protected Builder() throws IOException {
164+
this(((ClientContext) null));
165+
}
166+
167+
protected Builder(ClientContext clientContext) {
168+
super(BigQueryWriteStubSettings.newBuilder(clientContext));
169+
}
170+
171+
protected Builder(BigQueryWriteSettings settings) {
172+
super(settings.getStubSettings().toBuilder());
173+
}
174+
175+
protected Builder(BigQueryWriteStubSettings.Builder stubSettings) {
176+
super(stubSettings);
177+
}
178+
179+
private static Builder createDefault() {
180+
return new Builder(BigQueryWriteStubSettings.newBuilder());
181+
}
182+
183+
public BigQueryWriteStubSettings.Builder getStubSettingsBuilder() {
184+
return ((BigQueryWriteStubSettings.Builder) getStubSettings());
185+
}
186+
187+
/**
188+
* Applies the given settings updater function to all of the unary API methods in this service.
189+
*
190+
* <p>Note: This method does not support applying settings to streaming methods.
191+
*/
192+
public Builder applyToAllUnaryMethods(
193+
ApiFunction<UnaryCallSettings.Builder<?, ?>, Void> settingsUpdater) {
194+
super.applyToAllUnaryMethods(
195+
getStubSettingsBuilder().unaryMethodSettingsBuilders(), settingsUpdater);
196+
return this;
197+
}
198+
199+
/** Returns the builder for the settings used for calls to createWriteStream. */
200+
public UnaryCallSettings.Builder<CreateWriteStreamRequest, WriteStream>
201+
createWriteStreamSettings() {
202+
return getStubSettingsBuilder().createWriteStreamSettings();
203+
}
204+
205+
/** Returns the builder for the settings used for calls to appendRows. */
206+
public StreamingCallSettings.Builder<AppendRowsRequest, AppendRowsResponse>
207+
appendRowsSettings() {
208+
return getStubSettingsBuilder().appendRowsSettings();
209+
}
210+
211+
/** Returns the builder for the settings used for calls to getWriteStream. */
212+
public UnaryCallSettings.Builder<GetWriteStreamRequest, WriteStream> getWriteStreamSettings() {
213+
return getStubSettingsBuilder().getWriteStreamSettings();
214+
}
215+
216+
/** Returns the builder for the settings used for calls to finalizeWriteStream. */
217+
public UnaryCallSettings.Builder<FinalizeWriteStreamRequest, FinalizeWriteStreamResponse>
218+
finalizeWriteStreamSettings() {
219+
return getStubSettingsBuilder().finalizeWriteStreamSettings();
220+
}
221+
222+
/** Returns the builder for the settings used for calls to batchCommitWriteStreams. */
223+
public UnaryCallSettings.Builder<
224+
BatchCommitWriteStreamsRequest, BatchCommitWriteStreamsResponse>
225+
batchCommitWriteStreamsSettings() {
226+
return getStubSettingsBuilder().batchCommitWriteStreamsSettings();
227+
}
228+
229+
/** Returns the builder for the settings used for calls to flushRows. */
230+
public UnaryCallSettings.Builder<FlushRowsRequest, FlushRowsResponse> flushRowsSettings() {
231+
return getStubSettingsBuilder().flushRowsSettings();
232+
}
233+
234+
@Override
235+
public BigQueryWriteSettings build() throws IOException {
236+
return new BigQueryWriteSettings(this);
237+
}
238+
}
239+
}

google-cloud-bigquerystorage/src/main/java/com/google/cloud/bigquery/storage/v1/gapic_metadata.json

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,33 @@
2222
}
2323
}
2424
}
25+
},
26+
"BigQueryWrite": {
27+
"clients": {
28+
"grpc": {
29+
"libraryClient": "BigQueryWriteClient",
30+
"rpcs": {
31+
"AppendRows": {
32+
"methods": ["appendRowsCallable"]
33+
},
34+
"BatchCommitWriteStreams": {
35+
"methods": ["batchCommitWriteStreams", "batchCommitWriteStreams", "batchCommitWriteStreamsCallable"]
36+
},
37+
"CreateWriteStream": {
38+
"methods": ["createWriteStream", "createWriteStream", "createWriteStream", "createWriteStreamCallable"]
39+
},
40+
"FinalizeWriteStream": {
41+
"methods": ["finalizeWriteStream", "finalizeWriteStream", "finalizeWriteStream", "finalizeWriteStreamCallable"]
42+
},
43+
"FlushRows": {
44+
"methods": ["flushRows", "flushRows", "flushRows", "flushRowsCallable"]
45+
},
46+
"GetWriteStream": {
47+
"methods": ["getWriteStream", "getWriteStream", "getWriteStream", "getWriteStreamCallable"]
48+
}
49+
}
50+
}
51+
}
2552
}
2653
}
2754
}

google-cloud-bigquerystorage/src/main/java/com/google/cloud/bigquery/storage/v1/package-info.java

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,25 @@
3434
* baseBigQueryReadClient.createReadSession(parent, readSession, maxStreamCount);
3535
* }
3636
* }</pre>
37+
*
38+
* <p>======================= BigQueryWriteClient =======================
39+
*
40+
* <p>Service Description: BigQuery Write API.
41+
*
42+
* <p>The Write API can be used to write data to BigQuery.
43+
*
44+
* <p>For supplementary information about the Write API, see:
45+
* https://cloud.google.com/bigquery/docs/write-api
46+
*
47+
* <p>Sample for BigQueryWriteClient:
48+
*
49+
* <pre>{@code
50+
* try (BigQueryWriteClient bigQueryWriteClient = BigQueryWriteClient.create()) {
51+
* TableName parent = TableName.of("[PROJECT]", "[DATASET]", "[TABLE]");
52+
* WriteStream writeStream = WriteStream.newBuilder().build();
53+
* WriteStream response = bigQueryWriteClient.createWriteStream(parent, writeStream);
54+
* }
55+
* }</pre>
3756
*/
3857
@Generated("by gapic-generator-java")
3958
package com.google.cloud.bigquery.storage.v1;

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

Lines changed: 2 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -215,11 +215,6 @@ public static class Builder extends StubSettings.Builder<BigQueryReadStubSetting
215215
definitions.put(
216216
"retry_policy_1_codes",
217217
ImmutableSet.copyOf(Lists.<StatusCode.Code>newArrayList(StatusCode.Code.UNAVAILABLE)));
218-
definitions.put(
219-
"retry_policy_2_codes",
220-
ImmutableSet.copyOf(
221-
Lists.<StatusCode.Code>newArrayList(
222-
StatusCode.Code.DEADLINE_EXCEEDED, StatusCode.Code.UNAVAILABLE)));
223218
RETRYABLE_CODE_DEFINITIONS = definitions.build();
224219
}
225220

@@ -250,17 +245,6 @@ public static class Builder extends StubSettings.Builder<BigQueryReadStubSetting
250245
.setTotalTimeout(Duration.ofMillis(86400000L))
251246
.build();
252247
definitions.put("retry_policy_1_params", settings);
253-
settings =
254-
RetrySettings.newBuilder()
255-
.setInitialRetryDelay(Duration.ofMillis(100L))
256-
.setRetryDelayMultiplier(1.3)
257-
.setMaxRetryDelay(Duration.ofMillis(60000L))
258-
.setInitialRpcTimeout(Duration.ofMillis(600000L))
259-
.setRpcTimeoutMultiplier(1.0)
260-
.setMaxRpcTimeout(Duration.ofMillis(600000L))
261-
.setTotalTimeout(Duration.ofMillis(600000L))
262-
.build();
263-
definitions.put("retry_policy_2_params", settings);
264248
RETRY_PARAM_DEFINITIONS = definitions.build();
265249
}
266250

@@ -319,8 +303,8 @@ private static Builder initDefaults(Builder builder) {
319303

320304
builder
321305
.splitReadStreamSettings()
322-
.setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_2_codes"))
323-
.setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_2_params"));
306+
.setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_0_codes"))
307+
.setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_0_params"));
324308

325309
return builder;
326310
}

0 commit comments

Comments
 (0)