Skip to main content

ISummaryConfigurationHeuristics Interface

This API is provided for existing users, but is not recommended for new users.

To use, import via @fluidframework/container-runtime/legacy.

For more information about our API support guarantees, see here.

Signature

export interface ISummaryConfigurationHeuristics extends ISummaryBaseConfiguration

Extends: ISummaryBaseConfiguration

Properties

PropertyAlertsModifiersTypeDescription
maxIdleTimeBetanumberDefines the upper boundary for the allowed time in between summarizations. Pairs with minIdleTime to form a range. For example, if we only receive 1 op, we don't want to have the same idle time as say 100 ops. Based on the boundaries we set in minIdleTime and maxIdleTime, the idle time will change linearly depending on the number of ops we receive.
maxOpsBetanumberDefines the maximum number of Ops, since the last received Ack, that can be allowed before running the summary with reason maxOps.
maxTimeBetanumberDefines the maximum allowed time, since the last received Ack, before running the summary with reason maxTime. For example, say we receive ops one by one just before the idle time is triggered. In this case, we still want to run a summary since it's been a while since the last summary.
minIdleTimeBetanumberDefines the lower boundary for the allowed time in between summarizations. Pairs with maxIdleTime to form a range. For example, if we only receive 1 op, we don't want to have the same idle time as say 100 ops. Based on the boundaries we set in minIdleTime and maxIdleTime, the idle time will change linearly depending on the number of ops we receive.
minOpsForLastSummaryAttemptBetanumberDefines the minimum number of Ops, since the last received Ack, that can be allowed before running the last summary.
nonRuntimeHeuristicThresholdBetaoptionalnumber

Number of ops since last summary needed before a non-runtime op can trigger running summary heuristics.

Note: Any runtime ops sent before the threshold is reached will trigger heuristics normally. This threshold ONLY applies to non-runtime ops triggering summaries.

For example: Say the threshold is 20. Sending 19 non-runtime ops will not trigger any heuristic checks. Sending the 20th non-runtime op will trigger the heuristic checks for summarizing.

nonRuntimeOpWeightBetanumberNon-runtime op weight to use in heuristic summarizing This number is a multiplier on the number of non-runtime ops we process when running summarize heuristics. For example: (multiplier) * (number of non-runtime ops) = weighted number of non-runtime ops
runtimeOpWeightBetanumberRuntime op weight to use in heuristic summarizing. This number is a multiplier on the number of runtime ops we process when running summarize heuristics. For example: (multiplier) * (number of runtime ops) = weighted number of runtime ops
stateBeta"enabled"

Property Details

maxIdleTime

Defines the upper boundary for the allowed time in between summarizations. Pairs with minIdleTime to form a range. For example, if we only receive 1 op, we don't want to have the same idle time as say 100 ops. Based on the boundaries we set in minIdleTime and maxIdleTime, the idle time will change linearly depending on the number of ops we receive.

This API is provided for existing users, but is not recommended for new users.

For more information about our API support guarantees, see here.

Signature

maxIdleTime: number;

Type: number

maxOps

Defines the maximum number of Ops, since the last received Ack, that can be allowed before running the summary with reason maxOps.

This API is provided for existing users, but is not recommended for new users.

For more information about our API support guarantees, see here.

Signature

maxOps: number;

Type: number

maxTime

Defines the maximum allowed time, since the last received Ack, before running the summary with reason maxTime. For example, say we receive ops one by one just before the idle time is triggered. In this case, we still want to run a summary since it's been a while since the last summary.

This API is provided for existing users, but is not recommended for new users.

For more information about our API support guarantees, see here.

Signature

maxTime: number;

Type: number

minIdleTime

Defines the lower boundary for the allowed time in between summarizations. Pairs with maxIdleTime to form a range. For example, if we only receive 1 op, we don't want to have the same idle time as say 100 ops. Based on the boundaries we set in minIdleTime and maxIdleTime, the idle time will change linearly depending on the number of ops we receive.

This API is provided for existing users, but is not recommended for new users.

For more information about our API support guarantees, see here.

Signature

minIdleTime: number;

Type: number

minOpsForLastSummaryAttempt

Defines the minimum number of Ops, since the last received Ack, that can be allowed before running the last summary.

This API is provided for existing users, but is not recommended for new users.

For more information about our API support guarantees, see here.

Signature

minOpsForLastSummaryAttempt: number;

Type: number

nonRuntimeHeuristicThreshold

Number of ops since last summary needed before a non-runtime op can trigger running summary heuristics.

Note: Any runtime ops sent before the threshold is reached will trigger heuristics normally. This threshold ONLY applies to non-runtime ops triggering summaries.

For example: Say the threshold is 20. Sending 19 non-runtime ops will not trigger any heuristic checks. Sending the 20th non-runtime op will trigger the heuristic checks for summarizing.

This API is provided for existing users, but is not recommended for new users.

For more information about our API support guarantees, see here.

Signature

nonRuntimeHeuristicThreshold?: number;

Type: number

nonRuntimeOpWeight

Non-runtime op weight to use in heuristic summarizing This number is a multiplier on the number of non-runtime ops we process when running summarize heuristics. For example: (multiplier) * (number of non-runtime ops) = weighted number of non-runtime ops

This API is provided for existing users, but is not recommended for new users.

For more information about our API support guarantees, see here.

Signature

nonRuntimeOpWeight: number;

Type: number

runtimeOpWeight

Runtime op weight to use in heuristic summarizing. This number is a multiplier on the number of runtime ops we process when running summarize heuristics. For example: (multiplier) * (number of runtime ops) = weighted number of runtime ops

This API is provided for existing users, but is not recommended for new users.

For more information about our API support guarantees, see here.

Signature

runtimeOpWeight: number;

Type: number

state

This API is provided for existing users, but is not recommended for new users.

For more information about our API support guarantees, see here.

Signature

state: "enabled";

Type: "enabled"