HttpRetryOptions
Namespace: Meshmakers.Octo.MeshAdapter.Nodes.Transform
Retry behaviour for one request. Absent means a single attempt, which is what the node did before the option existed.
public record HttpRetryOptions : IEquatable<HttpRetryOptions>
Inheritance Object → HttpRetryOptions
Implements IEquatable<HttpRetryOptions>
Remarks:
Nullable members with constant defaults, for the reason given on HttpPagingOptions.
Fields
DefaultMaxAttempts
The HttpRetryOptions.MaxAttempts an unset property resolves to.
public static int DefaultMaxAttempts;
DefaultBackoffBaseSeconds
The HttpRetryOptions.BackoffBaseSeconds an unset property resolves to.
public static double DefaultBackoffBaseSeconds;
MaxBackoffSeconds
Upper bound on a single wait. Doubling is unbounded, so a long enough run would reach waits of hours and eventually a value the timer refuses outright; capping each wait keeps a retrying request inside a pipeline tick.
public static int MaxBackoffSeconds;
MaxAllowedAttempts
Upper bound on HttpRetryOptions.MaxAttempts. Ten attempts means nine waits, so with the wait cap the worst case is nine minutes of waiting plus the requests themselves; beyond that a request is not slow, it is broken, and a pipeline tick should end rather than pile up behind it.
public static int MaxAllowedAttempts;
Properties
MaxAttempts
Total attempts per request, so 1 means no retry.
public Nullable<int> MaxAttempts { get; set; }
Property Value
BackoffBaseSeconds
Delay before attempt n is base * 2^(n-1) seconds; 0 disables waiting.
public Nullable<double> BackoffBaseSeconds { get; set; }
Property Value
Constructors
HttpRetryOptions()
public HttpRetryOptions()