Here are the examples of the java api class com.google.cloud.bigtable.config.RetryOptions taken from open source projects.
1. BigtableIO#addRetryOptions()
Project: incubator-beam
File: BigtableIO.java
File: BigtableIO.java
/** * A helper function to add appropriate retry options. See * <a href="https://github.com/GoogleCloudPlatform/cloud-bigtable-client/issues/899">RetryOptions * toBuilder</a> for issue. */ static BigtableOptions.Builder addRetryOptions(BigtableOptions.Builder builder) { RetryOptions retryOptions = builder.build().getRetryOptions(); RetryOptions.Builder retryOptionsBuilder = new RetryOptions.Builder().setEnableRetries(retryOptions.enableRetries()).setInitialBackoffMillis(retryOptions.getInitialBackoffMillis()).setBackoffMultiplier(retryOptions.getBackoffMultiplier()).setMaxElapsedBackoffMillis(retryOptions.getMaxElaspedBackoffMillis()).setStreamingBufferSize(retryOptions.getStreamingBufferSize()).setStreamingBatchSize(Math.min(retryOptions.getStreamingBatchSize(), retryOptions.getStreamingBufferSize() / 2)).setReadPartialRowTimeoutMillis(retryOptions.getReadPartialRowTimeoutMillis()).setMaxScanTimeoutRetries(retryOptions.getMaxScanTimeoutRetries()).setAllowRetriesWithoutTimestamp(retryOptions.allowRetriesWithoutTimestamp()); for (Status.Code code : Status.Code.values()) { if (retryOptions.isRetryable(code)) { retryOptionsBuilder.addStatusToRetryOn(code); } } builder.setRetryOptions(retryOptionsBuilder.build()); return builder; }
2. BigtableIOTest#testAddRetryOptions()
Project: incubator-beam
File: BigtableIOTest.java
File: BigtableIOTest.java
@Test public void testAddRetryOptions() { final double delta = 0.0000001; BigtableOptions.Builder optionsBuilder = BIGTABLE_OPTIONS.toBuilder(); optionsBuilder = BigtableIO.addRetryOptions(optionsBuilder); RetryOptions retryOptions = optionsBuilder.build().getRetryOptions(); assertEquals(RetryOptions.DEFAULT_ENABLE_GRPC_RETRIES, retryOptions.enableRetries()); assertEquals(RetryOptions.DEFAULT_INITIAL_BACKOFF_MILLIS, retryOptions.getInitialBackoffMillis()); assertEquals(RetryOptions.DEFAULT_BACKOFF_MULTIPLIER, retryOptions.getBackoffMultiplier(), delta); assertEquals(RetryOptions.DEFAULT_MAX_ELAPSED_BACKOFF_MILLIS, retryOptions.getMaxElaspedBackoffMillis()); assertEquals(RetryOptions.DEFAULT_STREAMING_BUFFER_SIZE, retryOptions.getStreamingBufferSize()); assertEquals(RetryOptions.DEFAULT_STREAMING_BATCH_SIZE, retryOptions.getStreamingBatchSize()); assertEquals(RetryOptions.DEFAULT_READ_PARTIAL_ROW_TIMEOUT_MS, retryOptions.getReadPartialRowTimeoutMillis()); assertEquals(RetryOptions.DEFAULT_MAX_SCAN_TIMEOUT_RETRIES, retryOptions.getMaxScanTimeoutRetries()); assertFalse(retryOptions.allowRetriesWithoutTimestamp()); Set<Status.Code> statusToRetryOn = new HashSet<>(); for (Status.Code code : Status.Code.values()) { if (retryOptions.isRetryable(code)) { statusToRetryOn.add(code); } } Set<Status.Code> defaultStatusToRetryOn = new HashSet<>(RetryOptions.DEFAULT_ENABLE_GRPC_RETRIES_SET); assertThat(statusToRetryOn, Matchers.containsInAnyOrder(defaultStatusToRetryOn.toArray())); }