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

Commit f13ea85

Browse files
committed
create a separate setting for updateDatabaseDdl
1 parent 0b0a2c2 commit f13ea85

1 file changed

Lines changed: 16 additions & 3 deletions

File tree

google-cloud-spanner/src/main/java/com/google/cloud/spanner/SpannerOptions.java

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1168,9 +1168,6 @@ protected Builder() {
11681168
databaseAdminStubSettingsBuilder
11691169
.createDatabaseOperationSettings()
11701170
.setPollingAlgorithm(shortInitialPollingDelayAlgorithm);
1171-
databaseAdminStubSettingsBuilder
1172-
.updateDatabaseDdlOperationSettings()
1173-
.setPollingAlgorithm(shortInitialPollingDelayAlgorithm);
11741171

11751172
// The polling setting with a long initial delay as we expect
11761173
// the operation to take a bit long time to return.
@@ -1185,6 +1182,22 @@ protected Builder() {
11851182
databaseAdminStubSettingsBuilder
11861183
.restoreDatabaseOperationSettings()
11871184
.setPollingAlgorithm(longInitialPollingDelayAlgorithm);
1185+
1186+
// updateDatabaseDdl requires a separate setting because
1187+
// it has no existing overrides on RPC timeouts for LRO polling.
1188+
databaseAdminStubSettingsBuilder
1189+
.updateDatabaseDdlOperationSettings()
1190+
.setPollingAlgorithm(
1191+
OperationTimedPollAlgorithm.create(
1192+
RetrySettings.newBuilder()
1193+
.setInitialRetryDelayDuration(Duration.ofMillis(1000L))
1194+
.setRetryDelayMultiplier(1.5)
1195+
.setMaxRetryDelayDuration(Duration.ofMillis(45000L))
1196+
.setInitialRpcTimeoutDuration(Duration.ZERO)
1197+
.setRpcTimeoutMultiplier(1.0)
1198+
.setMaxRpcTimeoutDuration(Duration.ZERO)
1199+
.setTotalTimeoutDuration(Duration.ofHours(48L))
1200+
.build()));
11881201
}
11891202

11901203
Builder(SpannerOptions options) {

0 commit comments

Comments
 (0)