Packages > @fluidframework/container-runtime

@fluidframework/container-runtime Package

Interfaces

Interface Alerts Description
GCFeatureMatrix ALPHA
IAckSummaryResult ALPHA
IBaseSummarizeResult ALPHA Base results for all submitSummary attempts.
IBlobManagerLoadInfo ALPHA Information from a snapshot needed to load BlobManager
IBroadcastSummaryResult ALPHA
ICancellationToken ALPHA Similar to AbortSignal, but using promise instead of events
ICompressionRuntimeOptions ALPHA Options for op compression.
IConnectableRuntime ALPHA
IContainerRuntimeMetadata ALPHA
IContainerRuntimeOptions ALPHA Options for container runtime.
ICreateContainerMetadata ALPHA
IEnqueueSummarizeOptions ALPHA Options to use when enqueueing a summarize attempt.
IGCMetadata ALPHA
IGCRuntimeOptions ALPHA
IGCStats ALPHA The statistics of the system state after a garbage collection run.
IGeneratedSummaryStats ALPHA In addition to the normal summary tree + stats, this contains additional stats only relevant at the root of the tree.
IGenerateSummaryTreeResult ALPHA Results of submitSummary after generating the summary tree.
IMarkPhaseStats ALPHA The statistics of the system state after a garbage collection mark phase run.
INackSummaryResult ALPHA
IOnDemandSummarizeOptions ALPHA
IRefreshSummaryAckOptions ALPHA Data required to update internal tracking state after receiving a Summary Ack.
IRetriableFailureResult ALPHA Type for summarization failures that are retriable.
ISerializedElection ALPHA Serialized state of IOrderedClientElection.
ISubmitSummaryOpResult ALPHA Results of submitSummary after submitting the summarize op.
ISubmitSummaryOptions ALPHA
ISummarizeEventProps ALPHA
ISummarizeOptions ALPHA Options affecting summarize behavior.
ISummarizeResults ALPHA
ISummarizerEvents ALPHA
ISummarizerInternalsProvider ALPHA
ISummarizerRuntime ALPHA
ISummaryAckMessage ALPHA Interface for summary ack messages with typed contents.
ISummaryBaseConfiguration ALPHA
ISummaryConfigurationDisableHeuristics ALPHA
ISummaryConfigurationDisableSummarizer ALPHA
ISummaryConfigurationHeuristics ALPHA
ISummaryNackMessage ALPHA Interface for summary nack messages with typed contents.
ISummaryOpMessage ALPHA Interface for summary op messages with typed contents.
ISummaryRuntimeOptions ALPHA
ISweepPhaseStats ALPHA The statistics of the system state after a garbage collection sweep phase run.
IUploadSummaryResult ALPHA Results of submitSummary after uploading the tree to storage.
SubmitSummaryFailureData ALPHA The data in summarizer result when submit summary stage fails.

Classes

Class Alerts Description
ContainerRuntime ALPHA Represents the runtime of the container. Contains helper functions/state of the container. It will define the store level mappings.

Enumerations

Enum Alerts Description
CompressionAlgorithms ALPHA Available compression algorithms for op compression.

Types

TypeAlias Alerts Description
EnqueueSummarizeResult ALPHA
GCNodeType ALPHA
GCVersion ALPHA
ISummaryCancellationToken ALPHA Similar to AbortSignal, but using promise instead of events
ISummaryConfiguration ALPHA
ISummaryMetadataMessage ALPHA The properties of an ISequencedDocumentMessage to be stored in the metadata blob in summary.
SubmitSummaryResult ALPHA

Strict type representing result of a submitSummary attempt. The result consists of 4 possible stages, each with its own data. The data is cumulative, so each stage will contain the data from the previous stages. If the final "submitted" stage is not reached, the result may contain the error object.

Stages:

1. "base" - stopped before the summary tree was even generated, and the result only contains the base data

2. "generate" - the summary tree was generated, and the result will contain that tree + stats

3. "upload" - the summary was uploaded to storage, and the result contains the server-provided handle

4. "submit" - the summarize op was submitted, and the result contains the op client sequence number.

SummarizeResultPart ALPHA
SummarizerStopReason ALPHA
SummaryStage ALPHA The stages of Summarize, used to describe how far progress succeeded in case of a failure at a later stage.

Variables

Variable Alerts Modifiers Description
GCNodeType ALPHA readonly The types of GC nodes in the GC reference graph.

Type Details

EnqueueSummarizeResult (ALPHA)

WARNING: This API is provided as an alpha preview and may change without notice. Use at your own risk.

Signature

export type EnqueueSummarizeResult = (ISummarizeResults & {
    readonly alreadyEnqueued?: undefined;
}) | (ISummarizeResults & {
    readonly alreadyEnqueued: true;
    readonly overridden: true;
}) | {
    readonly alreadyEnqueued: true;
    readonly overridden?: undefined;
};

GCNodeType (ALPHA)

WARNING: This API is provided as an alpha preview and may change without notice. Use at your own risk.

Signature

export type GCNodeType = (typeof GCNodeType)[keyof typeof GCNodeType];

GCVersion (ALPHA)

WARNING: This API is provided as an alpha preview and may change without notice. Use at your own risk.

Signature

export type GCVersion = number;

ISummaryCancellationToken (ALPHA)

Similar to AbortSignal, but using promise instead of events

WARNING: This API is provided as an alpha preview and may change without notice. Use at your own risk.

Signature

export type ISummaryCancellationToken = ICancellationToken<SummarizerStopReason>;

ISummaryConfiguration (ALPHA)

WARNING: This API is provided as an alpha preview and may change without notice. Use at your own risk.

Signature

export type ISummaryConfiguration = ISummaryConfigurationDisableSummarizer | ISummaryConfigurationDisableHeuristics | ISummaryConfigurationHeuristics;

ISummaryMetadataMessage (ALPHA)

The properties of an ISequencedDocumentMessage to be stored in the metadata blob in summary.

WARNING: This API is provided as an alpha preview and may change without notice. Use at your own risk.

Signature

export type ISummaryMetadataMessage = Pick<ISequencedDocumentMessage, "clientId" | "clientSequenceNumber" | "minimumSequenceNumber" | "referenceSequenceNumber" | "sequenceNumber" | "timestamp" | "type">;

SubmitSummaryResult (ALPHA)

Strict type representing result of a submitSummary attempt. The result consists of 4 possible stages, each with its own data. The data is cumulative, so each stage will contain the data from the previous stages. If the final “submitted” stage is not reached, the result may contain the error object.

Stages:

  1. “base” - stopped before the summary tree was even generated, and the result only contains the base data

  2. “generate” - the summary tree was generated, and the result will contain that tree + stats

  3. “upload” - the summary was uploaded to storage, and the result contains the server-provided handle

  4. “submit” - the summarize op was submitted, and the result contains the op client sequence number.

WARNING: This API is provided as an alpha preview and may change without notice. Use at your own risk.

Signature

export type SubmitSummaryResult = IBaseSummarizeResult | IGenerateSummaryTreeResult | IUploadSummaryResult | ISubmitSummaryOpResult;

SummarizeResultPart (ALPHA)

WARNING: This API is provided as an alpha preview and may change without notice. Use at your own risk.

Signature

export type SummarizeResultPart<TSuccess, TFailure = undefined> = {
    success: true;
    data: TSuccess;
} | {
    success: false;
    data: TFailure | undefined;
    message: string;
    error: any;
};

SummarizerStopReason (ALPHA)

WARNING: This API is provided as an alpha preview and may change without notice. Use at your own risk.

Signature

export type SummarizerStopReason = 
/** Summarizer client failed to summarize in all 3 consecutive attempts. */
"failToSummarize"
/** Parent client reported that it is no longer connected. */
 | "parentNotConnected"
/**
 * Parent client reported that it is no longer elected the summarizer.
 * This is the normal flow; a disconnect will always trigger the parent
 * client to no longer be elected as responsible for summaries. Then it
 * tries to stop its spawned summarizer client.
 */
 | "notElectedParent"
/**
 * We are not already running the summarizer and we are not the current elected client id.
 */
 | "notElectedClient"
/** Summarizer client was disconnected */
 | "summarizerClientDisconnected"
/** running summarizer threw an exception */
 | "summarizerException"
/**
 * The previous summary state on the summarizer is not the most recently acked summary. this also happens when the
 * first submitSummary attempt fails for any reason and there's a 2nd summary attempt without an ack
 */
 | "latestSummaryStateStale";

SummaryStage (ALPHA)

The stages of Summarize, used to describe how far progress succeeded in case of a failure at a later stage.

WARNING: This API is provided as an alpha preview and may change without notice. Use at your own risk.

Signature

export type SummaryStage = SubmitSummaryResult["stage"] | "unknown";

Variable Details

GCNodeType (ALPHA)

The types of GC nodes in the GC reference graph.

WARNING: This API is provided as an alpha preview and may change without notice. Use at your own risk.

Signature

GCNodeType: {
    DataStore: string;
    SubDataStore: string;
    Blob: string;
    Other: string;
}