ISummaryConfigurationHeuristics Interface

Packages > @fluidframework/container-runtime > ISummaryConfigurationHeuristics

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

Property Alerts Modifiers Type Description
maxIdleTime Alpha number 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.
maxOps Alpha number Defines the maximum number of Ops, since the last received Ack, that can be allowed before running the summary with reason maxOps.
maxTime Alpha number 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.
minIdleTime Alpha number 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.
minOpsForLastSummaryAttempt Alpha number Defines the minimum number of Ops, since the last received Ack, that can be allowed before running the last summary.
nonRuntimeHeuristicThreshold Alpha optional number

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.

nonRuntimeOpWeight Alpha number 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
runtimeOpWeight Alpha number 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
state Alpha "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 as an alpha preview and may change without notice.

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

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 as an alpha preview and may change without notice.

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

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 as an alpha preview and may change without notice.

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

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 as an alpha preview and may change without notice.

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

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 as an alpha preview and may change without notice.

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

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 as an alpha preview and may change without notice.

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

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 as an alpha preview and may change without notice.

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

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 as an alpha preview and may change without notice.

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

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

Signature

runtimeOpWeight: number;

Type: number

state

This API is provided as an alpha preview and may change without notice.

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

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

Signature

state: "enabled";

Type: “enabled”