kCura.Data.RowDataGateway.Async.AsyncQueryRetryPolicy<T>
A utility for wrapping an asynchronous SQL query with several retry behaviors.
Each retry behavior is executed in the order that they were applied.
public AsyncQueryRetryPolicy(Func<Task<T>> queryLogic, CancellationToken cancellationToken, SqlExecutionLogger logger)
Creates an AsyncQueryRetryPolicy using the default instance setting values for retry count and wait duration.
Default values are sourced from the NumberOfTriesOnDeadlock, DeadlockWaitDurationMilliseconds,
NumberOfTriesOnTimeout, and TimeoutBaseWaitDurationMilliseconds instance settings in the kCura.Data.RowDataGateway section.
public AsyncQueryRetryPolicy(Func<Task<T>> queryLogic, CancellationToken cancellationToken, SqlExecutionLogger logger, int deadlockRetries, int deadlockWaitMillis, int timeoutRetries, int timeoutBaseWaitMillis, int transientRetries, int transientWaitMillis)
Creates an AsyncQueryRetryPolicy using the provided values for retry count and wait duration.
public AsyncQueryRetryPolicy(Func<Task<T>> queryLogic, CancellationToken cancellationToken, SqlExecutionLogger logger, QueryRetryConfiguration retryConfiguration)
Creates an AsyncQueryRetryPolicy using the provided configuration for retry count and wait duration.