Class BigtableBatchingCallSettings


  • @BetaApi("This surface is likely to change as the batching surface evolves.")
    public final class BigtableBatchingCallSettings
    extends com.google.api.gax.rpc.UnaryCallSettings<BulkMutation,​Void>
    This settings holds the batching thresholds as well as retry configuration.

    Sample configuration:

    
     BigtableBatchingCallSettings defaultBatchingCallSettings =
         bigtableDataCallSettings.getStubSettings().bulkMutateRowsSettings();
    
     BigtableBatchingCallSettings customBatchingCallSettings = defaultBatchingCallSettings.toBuilder()
         .setBatchingSettings(
             defaultBatchingCallSettings.getBatchingSettings().toBuilder()
                 .setDelayThreshold(Duration.ofSeconds(10))
                 .build())
         .setRetryableCodes(Code.DEADLINE_EXCEEDED)
         .setLatencyBasedThrottling(true, 1000L)
         .build();
     
    See Also:
    for batching thresholds explantion., for retry configuration.
    • Method Detail

      • getBatchingSettings

        public com.google.api.gax.batching.BatchingSettings getBatchingSettings()
        Returns batching settings which contains multiple batch threshold levels.
      • isLatencyBasedThrottlingEnabled

        public boolean isLatencyBasedThrottlingEnabled()
        Gets if latency based throttling is enabled.
      • getTargetRpcLatencyMs

        @Nullable
        public Long getTargetRpcLatencyMs()
        Gets target rpc latency if latency based throttling is enabled. Otherwise returns null.
      • isServerInitiatedFlowControlEnabled

        @InternalApi("Intended for use by the Bigtable dataflow connectors only")
        public boolean isServerInitiatedFlowControlEnabled()
        Gets if flow control is enabled.
      • toString

        public String toString()
        Overrides:
        toString in class com.google.api.gax.rpc.UnaryCallSettings<BulkMutation,​Void>