@fluidframework/container-runtime 2.12.0 → 2.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.cjs +36 -0
- package/CHANGELOG.md +50 -0
- package/api-report/container-runtime.legacy.alpha.api.md +9 -203
- package/container-runtime.test-files.tar +0 -0
- package/dist/batchTracker.d.ts.map +1 -1
- package/dist/batchTracker.js.map +1 -1
- package/dist/blobManager/blobManager.d.ts +5 -1
- package/dist/blobManager/blobManager.d.ts.map +1 -1
- package/dist/blobManager/blobManager.js +16 -2
- package/dist/blobManager/blobManager.js.map +1 -1
- package/dist/blobManager/blobManagerSnapSum.d.ts.map +1 -1
- package/dist/blobManager/blobManagerSnapSum.js.map +1 -1
- package/dist/channelCollection.d.ts +23 -12
- package/dist/channelCollection.d.ts.map +1 -1
- package/dist/channelCollection.js +22 -12
- package/dist/channelCollection.js.map +1 -1
- package/dist/connectionTelemetry.d.ts.map +1 -1
- package/dist/connectionTelemetry.js +6 -2
- package/dist/connectionTelemetry.js.map +1 -1
- package/dist/containerHandleContext.d.ts +1 -1
- package/dist/containerHandleContext.d.ts.map +1 -1
- package/dist/containerHandleContext.js.map +1 -1
- package/dist/containerRuntime.d.ts +74 -65
- package/dist/containerRuntime.d.ts.map +1 -1
- package/dist/containerRuntime.js +53 -37
- package/dist/containerRuntime.js.map +1 -1
- package/dist/dataStore.d.ts +7 -3
- package/dist/dataStore.d.ts.map +1 -1
- package/dist/dataStore.js +2 -1
- package/dist/dataStore.js.map +1 -1
- package/dist/dataStoreContext.d.ts +41 -25
- package/dist/dataStoreContext.d.ts.map +1 -1
- package/dist/dataStoreContext.js +31 -18
- package/dist/dataStoreContext.js.map +1 -1
- package/dist/dataStoreContexts.d.ts +6 -2
- package/dist/dataStoreContexts.d.ts.map +1 -1
- package/dist/dataStoreContexts.js +6 -2
- package/dist/dataStoreContexts.js.map +1 -1
- package/dist/dataStoreRegistry.d.ts +1 -1
- package/dist/dataStoreRegistry.d.ts.map +1 -1
- package/dist/dataStoreRegistry.js.map +1 -1
- package/dist/deltaManagerProxies.d.ts +1 -17
- package/dist/deltaManagerProxies.d.ts.map +1 -1
- package/dist/deltaManagerProxies.js.map +1 -1
- package/dist/deltaScheduler.d.ts +9 -6
- package/dist/deltaScheduler.d.ts.map +1 -1
- package/dist/deltaScheduler.js +95 -89
- package/dist/deltaScheduler.js.map +1 -1
- package/dist/gc/garbageCollection.d.ts +21 -7
- package/dist/gc/garbageCollection.d.ts.map +1 -1
- package/dist/gc/garbageCollection.js +12 -5
- package/dist/gc/garbageCollection.js.map +1 -1
- package/dist/gc/gcConfigs.d.ts +11 -0
- package/dist/gc/gcConfigs.d.ts.map +1 -1
- package/dist/gc/gcConfigs.js +2 -1
- package/dist/gc/gcConfigs.js.map +1 -1
- package/dist/gc/gcDefinitions.d.ts +210 -70
- package/dist/gc/gcDefinitions.d.ts.map +1 -1
- package/dist/gc/gcDefinitions.js +39 -13
- package/dist/gc/gcDefinitions.js.map +1 -1
- package/dist/gc/gcHelpers.d.ts +6 -2
- package/dist/gc/gcHelpers.d.ts.map +1 -1
- package/dist/gc/gcHelpers.js +6 -2
- package/dist/gc/gcHelpers.js.map +1 -1
- package/dist/gc/gcSummaryDefinitions.d.ts +18 -6
- package/dist/gc/gcSummaryDefinitions.d.ts.map +1 -1
- package/dist/gc/gcSummaryDefinitions.js.map +1 -1
- package/dist/gc/gcSummaryStateTracker.d.ts.map +1 -1
- package/dist/gc/gcSummaryStateTracker.js.map +1 -1
- package/dist/gc/gcTelemetry.d.ts +33 -11
- package/dist/gc/gcTelemetry.d.ts.map +1 -1
- package/dist/gc/gcTelemetry.js +6 -2
- package/dist/gc/gcTelemetry.js.map +1 -1
- package/dist/gc/gcUnreferencedStateTracker.d.ts +42 -13
- package/dist/gc/gcUnreferencedStateTracker.d.ts.map +1 -1
- package/dist/gc/gcUnreferencedStateTracker.js +27 -9
- package/dist/gc/gcUnreferencedStateTracker.js.map +1 -1
- package/dist/gc/index.d.ts +1 -0
- package/dist/gc/index.d.ts.map +1 -1
- package/dist/gc/index.js +3 -1
- package/dist/gc/index.js.map +1 -1
- package/dist/inboundBatchAggregator.d.ts +34 -0
- package/dist/inboundBatchAggregator.d.ts.map +1 -0
- package/dist/inboundBatchAggregator.js +185 -0
- package/dist/inboundBatchAggregator.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/legacy.d.ts +0 -4
- package/dist/messageTypes.d.ts +14 -5
- package/dist/messageTypes.d.ts.map +1 -1
- package/dist/messageTypes.js.map +1 -1
- package/dist/metadata.d.ts +12 -4
- package/dist/metadata.d.ts.map +1 -1
- package/dist/metadata.js +6 -2
- package/dist/metadata.js.map +1 -1
- package/dist/opLifecycle/batchManager.d.ts +9 -3
- package/dist/opLifecycle/batchManager.d.ts.map +1 -1
- package/dist/opLifecycle/batchManager.js +3 -1
- package/dist/opLifecycle/batchManager.js.map +1 -1
- package/dist/opLifecycle/duplicateBatchDetector.d.ts +9 -3
- package/dist/opLifecycle/duplicateBatchDetector.d.ts.map +1 -1
- package/dist/opLifecycle/duplicateBatchDetector.js +9 -3
- package/dist/opLifecycle/duplicateBatchDetector.js.map +1 -1
- package/dist/opLifecycle/opCompressor.d.ts.map +1 -1
- package/dist/opLifecycle/opCompressor.js.map +1 -1
- package/dist/opLifecycle/opDecompressor.d.ts +3 -1
- package/dist/opLifecycle/opDecompressor.d.ts.map +1 -1
- package/dist/opLifecycle/opDecompressor.js +12 -8
- package/dist/opLifecycle/opDecompressor.js.map +1 -1
- package/dist/opLifecycle/opGroupingManager.d.ts +0 -1
- package/dist/opLifecycle/opGroupingManager.d.ts.map +1 -1
- package/dist/opLifecycle/opGroupingManager.js +5 -4
- package/dist/opLifecycle/opGroupingManager.js.map +1 -1
- package/dist/opLifecycle/opSplitter.d.ts.map +1 -1
- package/dist/opLifecycle/opSplitter.js +2 -1
- package/dist/opLifecycle/opSplitter.js.map +1 -1
- package/dist/opLifecycle/outbox.d.ts +1 -1
- package/dist/opLifecycle/outbox.d.ts.map +1 -1
- package/dist/opLifecycle/outbox.js +6 -1
- package/dist/opLifecycle/outbox.js.map +1 -1
- package/dist/opLifecycle/remoteMessageProcessor.d.ts +9 -3
- package/dist/opLifecycle/remoteMessageProcessor.d.ts.map +1 -1
- package/dist/opLifecycle/remoteMessageProcessor.js.map +1 -1
- package/dist/package.json +2 -1
- package/dist/packageVersion.d.ts +1 -1
- package/dist/packageVersion.js +1 -1
- package/dist/packageVersion.js.map +1 -1
- package/dist/pendingStateManager.d.ts +22 -6
- package/dist/pendingStateManager.d.ts.map +1 -1
- package/dist/pendingStateManager.js +43 -5
- package/dist/pendingStateManager.js.map +1 -1
- package/dist/summary/documentSchema.d.ts.map +1 -1
- package/dist/summary/documentSchema.js +2 -0
- package/dist/summary/documentSchema.js.map +1 -1
- package/dist/summary/index.d.ts +1 -1
- package/dist/summary/index.d.ts.map +1 -1
- package/dist/summary/index.js.map +1 -1
- package/dist/summary/orderedClientElection.d.ts +93 -31
- package/dist/summary/orderedClientElection.d.ts.map +1 -1
- package/dist/summary/orderedClientElection.js +15 -5
- package/dist/summary/orderedClientElection.js.map +1 -1
- package/dist/summary/runWhileConnectedCoordinator.d.ts.map +1 -1
- package/dist/summary/runWhileConnectedCoordinator.js.map +1 -1
- package/dist/summary/runningSummarizer.d.ts +17 -6
- package/dist/summary/runningSummarizer.d.ts.map +1 -1
- package/dist/summary/runningSummarizer.js +12 -4
- package/dist/summary/runningSummarizer.js.map +1 -1
- package/dist/summary/summarizer.d.ts +9 -5
- package/dist/summary/summarizer.d.ts.map +1 -1
- package/dist/summary/summarizer.js +9 -3
- package/dist/summary/summarizer.js.map +1 -1
- package/dist/summary/summarizerClientElection.d.ts.map +1 -1
- package/dist/summary/summarizerClientElection.js.map +1 -1
- package/dist/summary/summarizerHeuristics.d.ts +6 -2
- package/dist/summary/summarizerHeuristics.d.ts.map +1 -1
- package/dist/summary/summarizerHeuristics.js +12 -4
- package/dist/summary/summarizerHeuristics.js.map +1 -1
- package/dist/summary/summarizerNode/summarizerNode.d.ts +24 -8
- package/dist/summary/summarizerNode/summarizerNode.d.ts.map +1 -1
- package/dist/summary/summarizerNode/summarizerNode.js +15 -5
- package/dist/summary/summarizerNode/summarizerNode.js.map +1 -1
- package/dist/summary/summarizerNode/summarizerNodeUtils.d.ts +48 -16
- package/dist/summary/summarizerNode/summarizerNodeUtils.d.ts.map +1 -1
- package/dist/summary/summarizerNode/summarizerNodeUtils.js +3 -1
- package/dist/summary/summarizerNode/summarizerNodeUtils.js.map +1 -1
- package/dist/summary/summarizerNode/summarizerNodeWithGc.d.ts +12 -4
- package/dist/summary/summarizerNode/summarizerNodeWithGc.d.ts.map +1 -1
- package/dist/summary/summarizerNode/summarizerNodeWithGc.js +12 -4
- package/dist/summary/summarizerNode/summarizerNodeWithGc.js.map +1 -1
- package/dist/summary/summarizerTypes.d.ts +246 -135
- package/dist/summary/summarizerTypes.d.ts.map +1 -1
- package/dist/summary/summarizerTypes.js.map +1 -1
- package/dist/summary/summaryCollection.d.ts.map +1 -1
- package/dist/summary/summaryCollection.js +1 -4
- package/dist/summary/summaryCollection.js.map +1 -1
- package/dist/summary/summaryFormat.d.ts +24 -8
- package/dist/summary/summaryFormat.d.ts.map +1 -1
- package/dist/summary/summaryFormat.js.map +1 -1
- package/dist/summary/summaryGenerator.d.ts +9 -3
- package/dist/summary/summaryGenerator.d.ts.map +1 -1
- package/dist/summary/summaryGenerator.js +3 -1
- package/dist/summary/summaryGenerator.js.map +1 -1
- package/dist/summary/summaryManager.d.ts +8 -4
- package/dist/summary/summaryManager.d.ts.map +1 -1
- package/dist/summary/summaryManager.js +12 -4
- package/dist/summary/summaryManager.js.map +1 -1
- package/dist/throttler.d.ts +26 -10
- package/dist/throttler.d.ts.map +1 -1
- package/dist/throttler.js +12 -4
- package/dist/throttler.js.map +1 -1
- package/lib/batchTracker.d.ts.map +1 -1
- package/lib/batchTracker.js.map +1 -1
- package/lib/blobManager/blobManager.d.ts +5 -1
- package/lib/blobManager/blobManager.d.ts.map +1 -1
- package/lib/blobManager/blobManager.js +16 -2
- package/lib/blobManager/blobManager.js.map +1 -1
- package/lib/blobManager/blobManagerSnapSum.d.ts.map +1 -1
- package/lib/blobManager/blobManagerSnapSum.js.map +1 -1
- package/lib/channelCollection.d.ts +23 -12
- package/lib/channelCollection.d.ts.map +1 -1
- package/lib/channelCollection.js +22 -12
- package/lib/channelCollection.js.map +1 -1
- package/lib/connectionTelemetry.d.ts.map +1 -1
- package/lib/connectionTelemetry.js +6 -2
- package/lib/connectionTelemetry.js.map +1 -1
- package/lib/containerHandleContext.d.ts +1 -1
- package/lib/containerHandleContext.d.ts.map +1 -1
- package/lib/containerHandleContext.js.map +1 -1
- package/lib/containerRuntime.d.ts +74 -65
- package/lib/containerRuntime.d.ts.map +1 -1
- package/lib/containerRuntime.js +53 -37
- package/lib/containerRuntime.js.map +1 -1
- package/lib/dataStore.d.ts +7 -3
- package/lib/dataStore.d.ts.map +1 -1
- package/lib/dataStore.js +2 -1
- package/lib/dataStore.js.map +1 -1
- package/lib/dataStoreContext.d.ts +41 -25
- package/lib/dataStoreContext.d.ts.map +1 -1
- package/lib/dataStoreContext.js +31 -18
- package/lib/dataStoreContext.js.map +1 -1
- package/lib/dataStoreContexts.d.ts +6 -2
- package/lib/dataStoreContexts.d.ts.map +1 -1
- package/lib/dataStoreContexts.js +6 -2
- package/lib/dataStoreContexts.js.map +1 -1
- package/lib/dataStoreRegistry.d.ts +1 -1
- package/lib/dataStoreRegistry.d.ts.map +1 -1
- package/lib/dataStoreRegistry.js.map +1 -1
- package/lib/deltaManagerProxies.d.ts +1 -17
- package/lib/deltaManagerProxies.d.ts.map +1 -1
- package/lib/deltaManagerProxies.js.map +1 -1
- package/lib/deltaScheduler.d.ts +9 -6
- package/lib/deltaScheduler.d.ts.map +1 -1
- package/lib/deltaScheduler.js +95 -89
- package/lib/deltaScheduler.js.map +1 -1
- package/lib/gc/garbageCollection.d.ts +21 -7
- package/lib/gc/garbageCollection.d.ts.map +1 -1
- package/lib/gc/garbageCollection.js +12 -5
- package/lib/gc/garbageCollection.js.map +1 -1
- package/lib/gc/gcConfigs.d.ts +11 -0
- package/lib/gc/gcConfigs.d.ts.map +1 -1
- package/lib/gc/gcConfigs.js +1 -1
- package/lib/gc/gcConfigs.js.map +1 -1
- package/lib/gc/gcDefinitions.d.ts +210 -70
- package/lib/gc/gcDefinitions.d.ts.map +1 -1
- package/lib/gc/gcDefinitions.js +39 -13
- package/lib/gc/gcDefinitions.js.map +1 -1
- package/lib/gc/gcHelpers.d.ts +6 -2
- package/lib/gc/gcHelpers.d.ts.map +1 -1
- package/lib/gc/gcHelpers.js +6 -2
- package/lib/gc/gcHelpers.js.map +1 -1
- package/lib/gc/gcSummaryDefinitions.d.ts +18 -6
- package/lib/gc/gcSummaryDefinitions.d.ts.map +1 -1
- package/lib/gc/gcSummaryDefinitions.js.map +1 -1
- package/lib/gc/gcSummaryStateTracker.d.ts.map +1 -1
- package/lib/gc/gcSummaryStateTracker.js.map +1 -1
- package/lib/gc/gcTelemetry.d.ts +33 -11
- package/lib/gc/gcTelemetry.d.ts.map +1 -1
- package/lib/gc/gcTelemetry.js +6 -2
- package/lib/gc/gcTelemetry.js.map +1 -1
- package/lib/gc/gcUnreferencedStateTracker.d.ts +42 -13
- package/lib/gc/gcUnreferencedStateTracker.d.ts.map +1 -1
- package/lib/gc/gcUnreferencedStateTracker.js +27 -9
- package/lib/gc/gcUnreferencedStateTracker.js.map +1 -1
- package/lib/gc/index.d.ts +1 -0
- package/lib/gc/index.d.ts.map +1 -1
- package/lib/gc/index.js +1 -0
- package/lib/gc/index.js.map +1 -1
- package/lib/inboundBatchAggregator.d.ts +34 -0
- package/lib/inboundBatchAggregator.d.ts.map +1 -0
- package/lib/inboundBatchAggregator.js +181 -0
- package/lib/inboundBatchAggregator.js.map +1 -0
- package/lib/index.d.ts +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js.map +1 -1
- package/lib/legacy.d.ts +0 -4
- package/lib/messageTypes.d.ts +14 -5
- package/lib/messageTypes.d.ts.map +1 -1
- package/lib/messageTypes.js.map +1 -1
- package/lib/metadata.d.ts +12 -4
- package/lib/metadata.d.ts.map +1 -1
- package/lib/metadata.js +6 -2
- package/lib/metadata.js.map +1 -1
- package/lib/opLifecycle/batchManager.d.ts +9 -3
- package/lib/opLifecycle/batchManager.d.ts.map +1 -1
- package/lib/opLifecycle/batchManager.js +3 -1
- package/lib/opLifecycle/batchManager.js.map +1 -1
- package/lib/opLifecycle/duplicateBatchDetector.d.ts +9 -3
- package/lib/opLifecycle/duplicateBatchDetector.d.ts.map +1 -1
- package/lib/opLifecycle/duplicateBatchDetector.js +9 -3
- package/lib/opLifecycle/duplicateBatchDetector.js.map +1 -1
- package/lib/opLifecycle/opCompressor.d.ts.map +1 -1
- package/lib/opLifecycle/opCompressor.js +1 -1
- package/lib/opLifecycle/opCompressor.js.map +1 -1
- package/lib/opLifecycle/opDecompressor.d.ts +3 -1
- package/lib/opLifecycle/opDecompressor.d.ts.map +1 -1
- package/lib/opLifecycle/opDecompressor.js +13 -9
- package/lib/opLifecycle/opDecompressor.js.map +1 -1
- package/lib/opLifecycle/opGroupingManager.d.ts +0 -1
- package/lib/opLifecycle/opGroupingManager.d.ts.map +1 -1
- package/lib/opLifecycle/opGroupingManager.js +6 -5
- package/lib/opLifecycle/opGroupingManager.js.map +1 -1
- package/lib/opLifecycle/opSplitter.d.ts.map +1 -1
- package/lib/opLifecycle/opSplitter.js +2 -1
- package/lib/opLifecycle/opSplitter.js.map +1 -1
- package/lib/opLifecycle/outbox.d.ts +1 -1
- package/lib/opLifecycle/outbox.d.ts.map +1 -1
- package/lib/opLifecycle/outbox.js +6 -1
- package/lib/opLifecycle/outbox.js.map +1 -1
- package/lib/opLifecycle/remoteMessageProcessor.d.ts +9 -3
- package/lib/opLifecycle/remoteMessageProcessor.d.ts.map +1 -1
- package/lib/opLifecycle/remoteMessageProcessor.js.map +1 -1
- package/lib/packageVersion.d.ts +1 -1
- package/lib/packageVersion.js +1 -1
- package/lib/packageVersion.js.map +1 -1
- package/lib/pendingStateManager.d.ts +22 -6
- package/lib/pendingStateManager.d.ts.map +1 -1
- package/lib/pendingStateManager.js +41 -4
- package/lib/pendingStateManager.js.map +1 -1
- package/lib/summary/documentSchema.d.ts.map +1 -1
- package/lib/summary/documentSchema.js +2 -0
- package/lib/summary/documentSchema.js.map +1 -1
- package/lib/summary/index.d.ts +1 -1
- package/lib/summary/index.d.ts.map +1 -1
- package/lib/summary/index.js.map +1 -1
- package/lib/summary/orderedClientElection.d.ts +93 -31
- package/lib/summary/orderedClientElection.d.ts.map +1 -1
- package/lib/summary/orderedClientElection.js +15 -5
- package/lib/summary/orderedClientElection.js.map +1 -1
- package/lib/summary/runWhileConnectedCoordinator.d.ts.map +1 -1
- package/lib/summary/runWhileConnectedCoordinator.js.map +1 -1
- package/lib/summary/runningSummarizer.d.ts +17 -6
- package/lib/summary/runningSummarizer.d.ts.map +1 -1
- package/lib/summary/runningSummarizer.js +12 -4
- package/lib/summary/runningSummarizer.js.map +1 -1
- package/lib/summary/summarizer.d.ts +9 -5
- package/lib/summary/summarizer.d.ts.map +1 -1
- package/lib/summary/summarizer.js +9 -3
- package/lib/summary/summarizer.js.map +1 -1
- package/lib/summary/summarizerClientElection.d.ts.map +1 -1
- package/lib/summary/summarizerClientElection.js.map +1 -1
- package/lib/summary/summarizerHeuristics.d.ts +6 -2
- package/lib/summary/summarizerHeuristics.d.ts.map +1 -1
- package/lib/summary/summarizerHeuristics.js +12 -4
- package/lib/summary/summarizerHeuristics.js.map +1 -1
- package/lib/summary/summarizerNode/summarizerNode.d.ts +24 -8
- package/lib/summary/summarizerNode/summarizerNode.d.ts.map +1 -1
- package/lib/summary/summarizerNode/summarizerNode.js +15 -5
- package/lib/summary/summarizerNode/summarizerNode.js.map +1 -1
- package/lib/summary/summarizerNode/summarizerNodeUtils.d.ts +48 -16
- package/lib/summary/summarizerNode/summarizerNodeUtils.d.ts.map +1 -1
- package/lib/summary/summarizerNode/summarizerNodeUtils.js +3 -1
- package/lib/summary/summarizerNode/summarizerNodeUtils.js.map +1 -1
- package/lib/summary/summarizerNode/summarizerNodeWithGc.d.ts +12 -4
- package/lib/summary/summarizerNode/summarizerNodeWithGc.d.ts.map +1 -1
- package/lib/summary/summarizerNode/summarizerNodeWithGc.js +12 -4
- package/lib/summary/summarizerNode/summarizerNodeWithGc.js.map +1 -1
- package/lib/summary/summarizerTypes.d.ts +246 -135
- package/lib/summary/summarizerTypes.d.ts.map +1 -1
- package/lib/summary/summarizerTypes.js.map +1 -1
- package/lib/summary/summaryCollection.d.ts.map +1 -1
- package/lib/summary/summaryCollection.js +1 -4
- package/lib/summary/summaryCollection.js.map +1 -1
- package/lib/summary/summaryFormat.d.ts +24 -8
- package/lib/summary/summaryFormat.d.ts.map +1 -1
- package/lib/summary/summaryFormat.js.map +1 -1
- package/lib/summary/summaryGenerator.d.ts +9 -3
- package/lib/summary/summaryGenerator.d.ts.map +1 -1
- package/lib/summary/summaryGenerator.js +3 -1
- package/lib/summary/summaryGenerator.js.map +1 -1
- package/lib/summary/summaryManager.d.ts +8 -4
- package/lib/summary/summaryManager.d.ts.map +1 -1
- package/lib/summary/summaryManager.js +12 -4
- package/lib/summary/summaryManager.js.map +1 -1
- package/lib/throttler.d.ts +26 -10
- package/lib/throttler.d.ts.map +1 -1
- package/lib/throttler.js +12 -4
- package/lib/throttler.js.map +1 -1
- package/package.json +44 -31
- package/src/batchTracker.ts +31 -33
- package/src/blobManager/blobManager.ts +38 -19
- package/src/blobManager/blobManagerSnapSum.ts +1 -1
- package/src/channelCollection.ts +44 -37
- package/src/connectionTelemetry.ts +31 -13
- package/src/containerHandleContext.ts +2 -2
- package/src/containerRuntime.ts +198 -140
- package/src/dataStore.ts +11 -6
- package/src/dataStoreContext.ts +80 -59
- package/src/dataStoreContexts.ts +16 -12
- package/src/dataStoreRegistry.ts +1 -1
- package/src/deltaManagerProxies.ts +5 -5
- package/src/deltaScheduler.ts +19 -13
- package/src/gc/garbageCollection.ts +41 -18
- package/src/gc/gcConfigs.ts +4 -4
- package/src/gc/gcDefinitions.ts +212 -70
- package/src/gc/gcHelpers.ts +11 -5
- package/src/gc/gcSummaryDefinitions.ts +18 -6
- package/src/gc/gcSummaryStateTracker.ts +4 -2
- package/src/gc/gcTelemetry.ts +47 -19
- package/src/gc/gcUnreferencedStateTracker.ts +40 -16
- package/src/gc/index.ts +1 -0
- package/src/{scheduleManager.ts → inboundBatchAggregator.ts} +54 -121
- package/src/index.ts +0 -3
- package/src/messageTypes.ts +14 -5
- package/src/metadata.ts +12 -4
- package/src/opLifecycle/batchManager.ts +12 -6
- package/src/opLifecycle/duplicateBatchDetector.ts +10 -4
- package/src/opLifecycle/opCompressor.ts +8 -4
- package/src/opLifecycle/opDecompressor.ts +20 -11
- package/src/opLifecycle/opGroupingManager.ts +12 -8
- package/src/opLifecycle/opSplitter.ts +11 -8
- package/src/opLifecycle/outbox.ts +22 -13
- package/src/opLifecycle/remoteMessageProcessor.ts +10 -4
- package/src/packageVersion.ts +1 -1
- package/src/pendingStateManager.ts +71 -15
- package/src/summary/documentSchema.ts +30 -18
- package/src/summary/index.ts +0 -3
- package/src/summary/orderedClientElection.ts +100 -38
- package/src/summary/runWhileConnectedCoordinator.ts +6 -3
- package/src/summary/runningSummarizer.ts +38 -19
- package/src/summary/summarizer.ts +29 -16
- package/src/summary/summarizerClientElection.ts +2 -2
- package/src/summary/summarizerHeuristics.ts +22 -11
- package/src/summary/summarizerNode/summarizerNode.ts +22 -12
- package/src/summary/summarizerNode/summarizerNodeUtils.ts +48 -16
- package/src/summary/summarizerNode/summarizerNodeWithGc.ts +21 -11
- package/src/summary/summarizerTypes.ts +246 -139
- package/src/summary/summaryCollection.ts +24 -25
- package/src/summary/summaryFormat.ts +24 -8
- package/src/summary/summaryGenerator.ts +14 -8
- package/src/summary/summaryManager.ts +28 -18
- package/src/throttler.ts +23 -11
- package/dist/scheduleManager.d.ts +0 -28
- package/dist/scheduleManager.d.ts.map +0 -1
- package/dist/scheduleManager.js +0 -235
- package/dist/scheduleManager.js.map +0 -1
- package/lib/scheduleManager.d.ts +0 -28
- package/lib/scheduleManager.d.ts.map +0 -1
- package/lib/scheduleManager.js +0 -231
- package/lib/scheduleManager.js.map +0 -1
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
import { IDeltaManager, ContainerWarning } from "@fluidframework/container-definitions/internal";
|
|
6
|
-
import type { ISummarizerEvents
|
|
7
|
-
import {
|
|
6
|
+
import type { ISummarizerEvents, SummarizerStopReason } from "@fluidframework/container-runtime-definitions/internal";
|
|
7
|
+
import { IEventProvider, ITelemetryBaseProperties, ITelemetryBaseLogger } from "@fluidframework/core-interfaces";
|
|
8
8
|
import { ISummaryTree } from "@fluidframework/driver-definitions";
|
|
9
9
|
import { IDocumentMessage, ISequencedDocumentMessage } from "@fluidframework/driver-definitions/internal";
|
|
10
10
|
import { ISummaryStats } from "@fluidframework/runtime-definitions/internal";
|
|
@@ -19,7 +19,9 @@ import { SummarizeReason } from "./summaryGenerator.js";
|
|
|
19
19
|
* @alpha
|
|
20
20
|
*/
|
|
21
21
|
export interface ICancellationToken<T> {
|
|
22
|
-
/**
|
|
22
|
+
/**
|
|
23
|
+
* Tells if this cancellable token is cancelled
|
|
24
|
+
*/
|
|
23
25
|
readonly cancelled: boolean;
|
|
24
26
|
/**
|
|
25
27
|
* Promise that gets fulfilled when this cancellable token is cancelled
|
|
@@ -32,20 +34,28 @@ export interface ICancellationToken<T> {
|
|
|
32
34
|
* @legacy
|
|
33
35
|
* @alpha
|
|
34
36
|
*/
|
|
35
|
-
export type ISummaryCancellationToken = ICancellationToken<
|
|
37
|
+
export type ISummaryCancellationToken = ICancellationToken<SummarizerStopReason>;
|
|
36
38
|
/**
|
|
37
39
|
* Data required to update internal tracking state after receiving a Summary Ack.
|
|
38
40
|
* @legacy
|
|
39
41
|
* @alpha
|
|
40
42
|
*/
|
|
41
43
|
export interface IRefreshSummaryAckOptions {
|
|
42
|
-
/**
|
|
44
|
+
/**
|
|
45
|
+
* Handle from the ack's summary op.
|
|
46
|
+
*/
|
|
43
47
|
readonly proposalHandle: string | undefined;
|
|
44
|
-
/**
|
|
48
|
+
/**
|
|
49
|
+
* Handle from the summary ack just received
|
|
50
|
+
*/
|
|
45
51
|
readonly ackHandle: string;
|
|
46
|
-
/**
|
|
52
|
+
/**
|
|
53
|
+
* Reference sequence number from the ack's summary op
|
|
54
|
+
*/
|
|
47
55
|
readonly summaryRefSeq: number;
|
|
48
|
-
/**
|
|
56
|
+
/**
|
|
57
|
+
* Telemetry logger to which telemetry events will be forwarded.
|
|
58
|
+
*/
|
|
49
59
|
readonly summaryLogger: ITelemetryLoggerExt;
|
|
50
60
|
}
|
|
51
61
|
/**
|
|
@@ -53,9 +63,13 @@ export interface IRefreshSummaryAckOptions {
|
|
|
53
63
|
* @alpha
|
|
54
64
|
*/
|
|
55
65
|
export interface ISummarizerInternalsProvider {
|
|
56
|
-
/**
|
|
66
|
+
/**
|
|
67
|
+
* Encapsulates the work to walk the internals of the running container to generate a summary
|
|
68
|
+
*/
|
|
57
69
|
submitSummary(options: ISubmitSummaryOptions): Promise<SubmitSummaryResult>;
|
|
58
|
-
/**
|
|
70
|
+
/**
|
|
71
|
+
* Callback whenever a new SummaryAck is received, to update internal tracking state
|
|
72
|
+
*/
|
|
59
73
|
refreshLatestSummaryAck(options: IRefreshSummaryAckOptions): Promise<void>;
|
|
60
74
|
}
|
|
61
75
|
/**
|
|
@@ -81,7 +95,9 @@ export interface IConnectableRuntime {
|
|
|
81
95
|
*/
|
|
82
96
|
export interface ISummarizerRuntime extends IConnectableRuntime {
|
|
83
97
|
readonly baseLogger: ITelemetryBaseLogger;
|
|
84
|
-
/**
|
|
98
|
+
/**
|
|
99
|
+
* clientId of parent (non-summarizing) container that owns summarizer container
|
|
100
|
+
*/
|
|
85
101
|
readonly summarizerClientId: string | undefined;
|
|
86
102
|
readonly deltaManager: IDeltaManager<ISequencedDocumentMessage, IDocumentMessage>;
|
|
87
103
|
disposeFn(): void;
|
|
@@ -95,7 +111,9 @@ export interface ISummarizerRuntime extends IConnectableRuntime {
|
|
|
95
111
|
* @alpha
|
|
96
112
|
*/
|
|
97
113
|
export interface ISummarizeOptions {
|
|
98
|
-
/**
|
|
114
|
+
/**
|
|
115
|
+
* True to generate the full tree with no handle reuse optimizations; defaults to false
|
|
116
|
+
*/
|
|
99
117
|
readonly fullTree?: boolean;
|
|
100
118
|
}
|
|
101
119
|
/**
|
|
@@ -103,13 +121,21 @@ export interface ISummarizeOptions {
|
|
|
103
121
|
* @alpha
|
|
104
122
|
*/
|
|
105
123
|
export interface ISubmitSummaryOptions extends ISummarizeOptions {
|
|
106
|
-
/**
|
|
124
|
+
/**
|
|
125
|
+
* Logger to use for correlated summary events
|
|
126
|
+
*/
|
|
107
127
|
readonly summaryLogger: ITelemetryLoggerExt;
|
|
108
|
-
/**
|
|
128
|
+
/**
|
|
129
|
+
* Tells when summary process should be cancelled
|
|
130
|
+
*/
|
|
109
131
|
readonly cancellationToken: ISummaryCancellationToken;
|
|
110
|
-
/**
|
|
132
|
+
/**
|
|
133
|
+
* Summarization may be attempted multiple times. This tells whether this is the final summarization attempt.
|
|
134
|
+
*/
|
|
111
135
|
readonly finalAttempt?: boolean;
|
|
112
|
-
/**
|
|
136
|
+
/**
|
|
137
|
+
* The sequence number of the latest summary used to validate if summary state is correct before summarizing
|
|
138
|
+
*/
|
|
113
139
|
readonly latestSummaryRefSeqNum: number;
|
|
114
140
|
}
|
|
115
141
|
/**
|
|
@@ -117,9 +143,13 @@ export interface ISubmitSummaryOptions extends ISummarizeOptions {
|
|
|
117
143
|
* @alpha
|
|
118
144
|
*/
|
|
119
145
|
export interface IOnDemandSummarizeOptions extends ISummarizeOptions {
|
|
120
|
-
/**
|
|
146
|
+
/**
|
|
147
|
+
* Reason for generating summary.
|
|
148
|
+
*/
|
|
121
149
|
readonly reason: string;
|
|
122
|
-
/**
|
|
150
|
+
/**
|
|
151
|
+
* In case of a failure, will attempt to retry based on if the failure is retriable.
|
|
152
|
+
*/
|
|
123
153
|
readonly retryOnFailure?: boolean;
|
|
124
154
|
}
|
|
125
155
|
/**
|
|
@@ -128,7 +158,9 @@ export interface IOnDemandSummarizeOptions extends ISummarizeOptions {
|
|
|
128
158
|
* @alpha
|
|
129
159
|
*/
|
|
130
160
|
export interface IEnqueueSummarizeOptions extends IOnDemandSummarizeOptions {
|
|
131
|
-
/**
|
|
161
|
+
/**
|
|
162
|
+
* If specified, The summarize attempt will not occur until after this sequence number.
|
|
163
|
+
*/
|
|
132
164
|
readonly afterSequenceNumber?: number;
|
|
133
165
|
/**
|
|
134
166
|
* True to override the existing enqueued summarize attempt if there is one.
|
|
@@ -145,17 +177,29 @@ export interface IEnqueueSummarizeOptions extends IOnDemandSummarizeOptions {
|
|
|
145
177
|
* @alpha
|
|
146
178
|
*/
|
|
147
179
|
export interface IGeneratedSummaryStats extends ISummaryStats {
|
|
148
|
-
/**
|
|
180
|
+
/**
|
|
181
|
+
* The total number of data stores in the container.
|
|
182
|
+
*/
|
|
149
183
|
readonly dataStoreCount: number;
|
|
150
|
-
/**
|
|
184
|
+
/**
|
|
185
|
+
* The number of data stores that were summarized in this summary.
|
|
186
|
+
*/
|
|
151
187
|
readonly summarizedDataStoreCount: number;
|
|
152
|
-
/**
|
|
188
|
+
/**
|
|
189
|
+
* The number of data stores whose GC reference state was updated in this summary.
|
|
190
|
+
*/
|
|
153
191
|
readonly gcStateUpdatedDataStoreCount?: number;
|
|
154
|
-
/**
|
|
192
|
+
/**
|
|
193
|
+
* The size of the gc blobs in this summary.
|
|
194
|
+
*/
|
|
155
195
|
readonly gcTotalBlobsSize?: number;
|
|
156
|
-
/**
|
|
196
|
+
/**
|
|
197
|
+
* The number of gc blobs in this summary.
|
|
198
|
+
*/
|
|
157
199
|
readonly gcBlobNodeCount?: number;
|
|
158
|
-
/**
|
|
200
|
+
/**
|
|
201
|
+
* The summary number for a container's summary. Incremented on summaries throughout its lifetime.
|
|
202
|
+
*/
|
|
159
203
|
readonly summaryNumber: number;
|
|
160
204
|
}
|
|
161
205
|
/**
|
|
@@ -173,9 +217,13 @@ export interface IRetriableFailureError extends Error {
|
|
|
173
217
|
*/
|
|
174
218
|
export interface IBaseSummarizeResult {
|
|
175
219
|
readonly stage: "base";
|
|
176
|
-
/**
|
|
220
|
+
/**
|
|
221
|
+
* Retriable error object related to failed summarize attempt.
|
|
222
|
+
*/
|
|
177
223
|
readonly error: IRetriableFailureError | undefined;
|
|
178
|
-
/**
|
|
224
|
+
/**
|
|
225
|
+
* Reference sequence number as of the generate summary attempt.
|
|
226
|
+
*/
|
|
179
227
|
readonly referenceSequenceNumber: number;
|
|
180
228
|
readonly minimumSequenceNumber: number;
|
|
181
229
|
}
|
|
@@ -186,11 +234,17 @@ export interface IBaseSummarizeResult {
|
|
|
186
234
|
*/
|
|
187
235
|
export interface IGenerateSummaryTreeResult extends Omit<IBaseSummarizeResult, "stage"> {
|
|
188
236
|
readonly stage: "generate";
|
|
189
|
-
/**
|
|
237
|
+
/**
|
|
238
|
+
* Generated summary tree.
|
|
239
|
+
*/
|
|
190
240
|
readonly summaryTree: ISummaryTree;
|
|
191
|
-
/**
|
|
241
|
+
/**
|
|
242
|
+
* Stats for generated summary tree.
|
|
243
|
+
*/
|
|
192
244
|
readonly summaryStats: IGeneratedSummaryStats;
|
|
193
|
-
/**
|
|
245
|
+
/**
|
|
246
|
+
* Time it took to generate the summary tree and stats.
|
|
247
|
+
*/
|
|
194
248
|
readonly generateDuration: number;
|
|
195
249
|
}
|
|
196
250
|
/**
|
|
@@ -200,9 +254,13 @@ export interface IGenerateSummaryTreeResult extends Omit<IBaseSummarizeResult, "
|
|
|
200
254
|
*/
|
|
201
255
|
export interface IUploadSummaryResult extends Omit<IGenerateSummaryTreeResult, "stage"> {
|
|
202
256
|
readonly stage: "upload";
|
|
203
|
-
/**
|
|
257
|
+
/**
|
|
258
|
+
* The handle returned by storage pointing to the uploaded summary tree.
|
|
259
|
+
*/
|
|
204
260
|
readonly handle: string;
|
|
205
|
-
/**
|
|
261
|
+
/**
|
|
262
|
+
* Time it took to upload the summary tree to storage.
|
|
263
|
+
*/
|
|
206
264
|
readonly uploadDuration: number;
|
|
207
265
|
}
|
|
208
266
|
/**
|
|
@@ -212,9 +270,13 @@ export interface IUploadSummaryResult extends Omit<IGenerateSummaryTreeResult, "
|
|
|
212
270
|
*/
|
|
213
271
|
export interface ISubmitSummaryOpResult extends Omit<IUploadSummaryResult, "stage" | "error"> {
|
|
214
272
|
readonly stage: "submit";
|
|
215
|
-
/**
|
|
273
|
+
/**
|
|
274
|
+
* The client sequence number of the summarize op submitted for the summary.
|
|
275
|
+
*/
|
|
216
276
|
readonly clientSequenceNumber: number;
|
|
217
|
-
/**
|
|
277
|
+
/**
|
|
278
|
+
* Time it took to submit the summarize op to the broadcasting service.
|
|
279
|
+
*/
|
|
218
280
|
readonly submitOpDuration: number;
|
|
219
281
|
}
|
|
220
282
|
/**
|
|
@@ -292,11 +354,17 @@ export type SummarizeResultPart<TSuccess, TFailure = undefined> = {
|
|
|
292
354
|
* @alpha
|
|
293
355
|
*/
|
|
294
356
|
export interface ISummarizeResults {
|
|
295
|
-
/**
|
|
357
|
+
/**
|
|
358
|
+
* Resolves when we generate, upload, and submit the summary.
|
|
359
|
+
*/
|
|
296
360
|
readonly summarySubmitted: Promise<SummarizeResultPart<SubmitSummaryResult, SubmitSummaryFailureData>>;
|
|
297
|
-
/**
|
|
361
|
+
/**
|
|
362
|
+
* Resolves when we observe our summarize op broadcast.
|
|
363
|
+
*/
|
|
298
364
|
readonly summaryOpBroadcasted: Promise<SummarizeResultPart<IBroadcastSummaryResult>>;
|
|
299
|
-
/**
|
|
365
|
+
/**
|
|
366
|
+
* Resolves when we receive a summaryAck or summaryNack.
|
|
367
|
+
*/
|
|
300
368
|
readonly receivedSummaryAckOrNack: Promise<SummarizeResultPart<IAckSummaryResult, INackSummaryResult>>;
|
|
301
369
|
}
|
|
302
370
|
/**
|
|
@@ -310,7 +378,9 @@ export type EnqueueSummarizeResult = (ISummarizeResults & {
|
|
|
310
378
|
*/
|
|
311
379
|
readonly alreadyEnqueued?: undefined;
|
|
312
380
|
}) | (ISummarizeResults & {
|
|
313
|
-
/**
|
|
381
|
+
/**
|
|
382
|
+
* Indicates that another summarize attempt was already enqueued.
|
|
383
|
+
*/
|
|
314
384
|
readonly alreadyEnqueued: true;
|
|
315
385
|
/**
|
|
316
386
|
* Indicates that the other enqueued summarize attempt was abandoned,
|
|
@@ -318,7 +388,9 @@ export type EnqueueSummarizeResult = (ISummarizeResults & {
|
|
|
318
388
|
*/
|
|
319
389
|
readonly overridden: true;
|
|
320
390
|
}) | {
|
|
321
|
-
/**
|
|
391
|
+
/**
|
|
392
|
+
* Indicates that another summarize attempt was already enqueued.
|
|
393
|
+
*/
|
|
322
394
|
readonly alreadyEnqueued: true;
|
|
323
395
|
/**
|
|
324
396
|
* Indicates that the other enqueued summarize attempt remains enqueued,
|
|
@@ -326,67 +398,18 @@ export type EnqueueSummarizeResult = (ISummarizeResults & {
|
|
|
326
398
|
*/
|
|
327
399
|
readonly overridden?: undefined;
|
|
328
400
|
};
|
|
329
|
-
/**
|
|
330
|
-
* @legacy
|
|
331
|
-
* @alpha
|
|
332
|
-
* @deprecated Use SummarizerStopReason from the "\@fluidframework/container-runtime-definitions" package
|
|
333
|
-
*/
|
|
334
|
-
export type SummarizerStopReason =
|
|
335
|
-
/** Summarizer client failed to summarize in all attempts. */
|
|
336
|
-
"failToSummarize"
|
|
337
|
-
/** Parent client reported that it is no longer connected. */
|
|
338
|
-
| "parentNotConnected"
|
|
339
|
-
/**
|
|
340
|
-
* Parent client reported that it is no longer elected the summarizer.
|
|
341
|
-
* This is the normal flow; a disconnect will always trigger the parent
|
|
342
|
-
* client to no longer be elected as responsible for summaries. Then it
|
|
343
|
-
* tries to stop its spawned summarizer client.
|
|
344
|
-
*/
|
|
345
|
-
| "notElectedParent"
|
|
346
|
-
/**
|
|
347
|
-
* We are not already running the summarizer and we are not the current elected client id.
|
|
348
|
-
*/
|
|
349
|
-
| "notElectedClient"
|
|
350
|
-
/** Summarizer client was disconnected */
|
|
351
|
-
| "summarizerClientDisconnected"
|
|
352
|
-
/** running summarizer threw an exception */
|
|
353
|
-
| "summarizerException"
|
|
354
|
-
/**
|
|
355
|
-
* The previous summary state on the summarizer is not the most recently acked summary. this also happens when the
|
|
356
|
-
* first submitSummary attempt fails for any reason and there's a 2nd summary attempt without an ack
|
|
357
|
-
*/
|
|
358
|
-
| "latestSummaryStateStale";
|
|
359
|
-
/**
|
|
360
|
-
* @legacy
|
|
361
|
-
* @alpha
|
|
362
|
-
* @deprecated Use ISummarizeEventProps from the "\@fluidframework/container-runtime-definitions" package
|
|
363
|
-
*/
|
|
364
|
-
export interface ISummarizeEventProps {
|
|
365
|
-
result: "success" | "failure" | "canceled";
|
|
366
|
-
currentAttempt: number;
|
|
367
|
-
maxAttempts: number;
|
|
368
|
-
error?: any;
|
|
369
|
-
}
|
|
370
|
-
/**
|
|
371
|
-
* @legacy
|
|
372
|
-
* @alpha
|
|
373
|
-
* @deprecated Use ISummarizerEvents from the "\@fluidframework/container-runtime-definitions" package
|
|
374
|
-
*/
|
|
375
|
-
export interface ISummarizerEvents extends IEvent {
|
|
376
|
-
(event: "summarize", listener: (props: ISummarizeEventProps) => void): any;
|
|
377
|
-
}
|
|
378
401
|
/**
|
|
379
402
|
* @legacy
|
|
380
403
|
* @alpha
|
|
381
404
|
*/
|
|
382
|
-
export interface ISummarizer extends IEventProvider<
|
|
405
|
+
export interface ISummarizer extends IEventProvider<ISummarizerEvents> {
|
|
383
406
|
/**
|
|
384
407
|
* Allows {@link ISummarizer} to be used with our {@link @fluidframework/core-interfaces#FluidObject} pattern.
|
|
385
408
|
*/
|
|
386
409
|
readonly ISummarizer?: ISummarizer;
|
|
387
|
-
stop(reason:
|
|
410
|
+
stop(reason: SummarizerStopReason): void;
|
|
388
411
|
close(): void;
|
|
389
|
-
run(onBehalfOf: string): Promise<
|
|
412
|
+
run(onBehalfOf: string): Promise<SummarizerStopReason>;
|
|
390
413
|
/**
|
|
391
414
|
* Attempts to generate a summary on demand. If already running, takes no action.
|
|
392
415
|
* @param options - options controlling the summarize attempt
|
|
@@ -411,30 +434,54 @@ export interface ISummarizer extends IEventProvider<NewISummarizerEvents> {
|
|
|
411
434
|
*/
|
|
412
435
|
enqueueSummarize(options: IEnqueueSummarizeOptions): EnqueueSummarizeResult;
|
|
413
436
|
}
|
|
414
|
-
/**
|
|
437
|
+
/**
|
|
438
|
+
* Data about an attempt to summarize used for heuristics.
|
|
439
|
+
*/
|
|
415
440
|
export interface ISummarizeAttempt {
|
|
416
|
-
/**
|
|
441
|
+
/**
|
|
442
|
+
* Reference sequence number when summary was generated or attempted
|
|
443
|
+
*/
|
|
417
444
|
readonly refSequenceNumber: number;
|
|
418
|
-
/**
|
|
445
|
+
/**
|
|
446
|
+
* Time of summary attempt after it was sent or attempted
|
|
447
|
+
*/
|
|
419
448
|
readonly summaryTime: number;
|
|
420
|
-
/**
|
|
449
|
+
/**
|
|
450
|
+
* Sequence number of summary op
|
|
451
|
+
*/
|
|
421
452
|
summarySequenceNumber?: number;
|
|
422
453
|
}
|
|
423
|
-
/**
|
|
454
|
+
/**
|
|
455
|
+
* Data relevant for summary heuristics.
|
|
456
|
+
*/
|
|
424
457
|
export interface ISummarizeHeuristicData {
|
|
425
|
-
/**
|
|
458
|
+
/**
|
|
459
|
+
* Latest received op sequence number
|
|
460
|
+
*/
|
|
426
461
|
lastOpSequenceNumber: number;
|
|
427
|
-
/**
|
|
462
|
+
/**
|
|
463
|
+
* Most recent summary attempt from this client
|
|
464
|
+
*/
|
|
428
465
|
readonly lastAttempt: ISummarizeAttempt;
|
|
429
|
-
/**
|
|
466
|
+
/**
|
|
467
|
+
* Most recent summary that received an ack
|
|
468
|
+
*/
|
|
430
469
|
readonly lastSuccessfulSummary: Readonly<ISummarizeAttempt>;
|
|
431
|
-
/**
|
|
470
|
+
/**
|
|
471
|
+
* Number of runtime ops since last summary
|
|
472
|
+
*/
|
|
432
473
|
numRuntimeOps: number;
|
|
433
|
-
/**
|
|
474
|
+
/**
|
|
475
|
+
* Number of non-runtime ops since last summary
|
|
476
|
+
*/
|
|
434
477
|
numNonRuntimeOps: number;
|
|
435
|
-
/**
|
|
478
|
+
/**
|
|
479
|
+
* Cumulative size in bytes of all the ops since the last summary
|
|
480
|
+
*/
|
|
436
481
|
totalOpsSize: number;
|
|
437
|
-
/**
|
|
482
|
+
/**
|
|
483
|
+
* Wether or not this instance contains adjusted metrics due to missing op data
|
|
484
|
+
*/
|
|
438
485
|
hasMissingOpData: boolean;
|
|
439
486
|
/**
|
|
440
487
|
* Updates lastAttempt and lastSuccessfulAttempt based on the last summary.
|
|
@@ -448,33 +495,55 @@ export interface ISummarizeHeuristicData {
|
|
|
448
495
|
* @param referenceSequenceNumber - reference sequence number of sent summary
|
|
449
496
|
*/
|
|
450
497
|
recordAttempt(referenceSequenceNumber?: number): void;
|
|
451
|
-
/**
|
|
498
|
+
/**
|
|
499
|
+
* Mark that the last sent summary attempt has received an ack
|
|
500
|
+
*/
|
|
452
501
|
markLastAttemptAsSuccessful(): void;
|
|
453
502
|
opsSinceLastSummary: number;
|
|
454
503
|
}
|
|
455
|
-
/**
|
|
504
|
+
/**
|
|
505
|
+
* Responsible for running heuristics determining when to summarize.
|
|
506
|
+
*/
|
|
456
507
|
export interface ISummarizeHeuristicRunner {
|
|
457
|
-
/**
|
|
508
|
+
/**
|
|
509
|
+
* Start specific heuristic trackers (ex: idle timer)
|
|
510
|
+
*/
|
|
458
511
|
start(): void;
|
|
459
|
-
/**
|
|
512
|
+
/**
|
|
513
|
+
* Runs the heuristics to determine if it should try to summarize
|
|
514
|
+
*/
|
|
460
515
|
run(): void;
|
|
461
|
-
/**
|
|
516
|
+
/**
|
|
517
|
+
* Runs a different heuristic to check if it should summarize before closing
|
|
518
|
+
*/
|
|
462
519
|
shouldRunLastSummary(): boolean;
|
|
463
|
-
/**
|
|
520
|
+
/**
|
|
521
|
+
* Disposes of resources
|
|
522
|
+
*/
|
|
464
523
|
dispose(): void;
|
|
465
524
|
}
|
|
466
525
|
type ISummarizeTelemetryRequiredProperties =
|
|
467
|
-
/**
|
|
526
|
+
/**
|
|
527
|
+
* Reason code for attempting to summarize
|
|
528
|
+
*/
|
|
468
529
|
"summarizeReason";
|
|
469
530
|
type ISummarizeTelemetryOptionalProperties =
|
|
470
|
-
/**
|
|
531
|
+
/**
|
|
532
|
+
* Number of attempts within the last time window, used for calculating the throttle delay.
|
|
533
|
+
*/
|
|
471
534
|
"summaryAttempts"
|
|
472
|
-
/**
|
|
535
|
+
/**
|
|
536
|
+
* Summarization may be attempted multiple times. This tells whether this is the final summarization attempt
|
|
537
|
+
*/
|
|
473
538
|
| "finalAttempt" | keyof ISummarizeOptions;
|
|
474
539
|
export type ISummarizeTelemetryProperties = Pick<ITelemetryBaseProperties, ISummarizeTelemetryRequiredProperties> & Partial<Pick<ITelemetryBaseProperties, ISummarizeTelemetryOptionalProperties>>;
|
|
475
|
-
/**
|
|
540
|
+
/**
|
|
541
|
+
* Strategy used to heuristically determine when we should run a summary
|
|
542
|
+
*/
|
|
476
543
|
export interface ISummaryHeuristicStrategy {
|
|
477
|
-
/**
|
|
544
|
+
/**
|
|
545
|
+
* Summarize reason for this summarize heuristic strategy (ex: "maxTime")
|
|
546
|
+
*/
|
|
478
547
|
summarizeReason: Readonly<SummarizeReason>;
|
|
479
548
|
/**
|
|
480
549
|
* Determines if this strategy's summarize criteria been met
|
|
@@ -484,55 +553,97 @@ export interface ISummaryHeuristicStrategy {
|
|
|
484
553
|
shouldRunSummary(configuration: ISummaryConfigurationHeuristics, heuristicData: ISummarizeHeuristicData): boolean;
|
|
485
554
|
}
|
|
486
555
|
type SummaryGeneratorRequiredTelemetryProperties =
|
|
487
|
-
/**
|
|
556
|
+
/**
|
|
557
|
+
* True to generate the full tree with no handle reuse optimizations
|
|
558
|
+
*/
|
|
488
559
|
"fullTree"
|
|
489
|
-
/**
|
|
560
|
+
/**
|
|
561
|
+
* Time since we last attempted to generate a summary
|
|
562
|
+
*/
|
|
490
563
|
| "timeSinceLastAttempt"
|
|
491
|
-
/**
|
|
564
|
+
/**
|
|
565
|
+
* Time since we last successfully generated a summary
|
|
566
|
+
*/
|
|
492
567
|
| "timeSinceLastSummary";
|
|
493
568
|
type SummaryGeneratorOptionalTelemetryProperties =
|
|
494
|
-
/**
|
|
569
|
+
/**
|
|
570
|
+
* Reference sequence number as of the generate summary attempt.
|
|
571
|
+
*/
|
|
495
572
|
"referenceSequenceNumber"
|
|
496
|
-
/**
|
|
573
|
+
/**
|
|
574
|
+
* minimum sequence number (at the reference sequence number)
|
|
575
|
+
*/
|
|
497
576
|
| "minimumSequenceNumber"
|
|
498
|
-
/**
|
|
577
|
+
/**
|
|
578
|
+
* Delta between the current reference sequence number and the reference sequence number of the last attempt
|
|
579
|
+
*/
|
|
499
580
|
| "opsSinceLastAttempt"
|
|
500
|
-
/**
|
|
581
|
+
/**
|
|
582
|
+
* Delta between the current reference sequence number and the reference sequence number of the last summary
|
|
583
|
+
*/
|
|
501
584
|
| "opsSinceLastSummary"
|
|
502
585
|
/**
|
|
503
586
|
* Delta in sum of op sizes between the current reference sequence number and the reference
|
|
504
587
|
* sequence number of the last summary
|
|
505
588
|
*/
|
|
506
589
|
| "opsSizesSinceLastSummary"
|
|
507
|
-
/**
|
|
590
|
+
/**
|
|
591
|
+
* Delta between the number of non-runtime ops since the last summary
|
|
592
|
+
*/
|
|
508
593
|
| "nonRuntimeOpsSinceLastSummary"
|
|
509
|
-
/**
|
|
594
|
+
/**
|
|
595
|
+
* Delta between the number of runtime ops since the last summary
|
|
596
|
+
*/
|
|
510
597
|
| "runtimeOpsSinceLastSummary"
|
|
511
|
-
/**
|
|
598
|
+
/**
|
|
599
|
+
* Wether or not this instance contains adjusted metrics due to missing op data
|
|
600
|
+
*/
|
|
512
601
|
| "hasMissingOpData"
|
|
513
|
-
/**
|
|
602
|
+
/**
|
|
603
|
+
* Time it took to generate the summary tree and stats.
|
|
604
|
+
*/
|
|
514
605
|
| "generateDuration"
|
|
515
|
-
/**
|
|
606
|
+
/**
|
|
607
|
+
* The handle returned by storage pointing to the uploaded summary tree.
|
|
608
|
+
*/
|
|
516
609
|
| "handle"
|
|
517
|
-
/**
|
|
610
|
+
/**
|
|
611
|
+
* Time it took to upload the summary tree to storage.
|
|
612
|
+
*/
|
|
518
613
|
| "uploadDuration"
|
|
519
|
-
/**
|
|
614
|
+
/**
|
|
615
|
+
* The client sequence number of the summarize op submitted for the summary.
|
|
616
|
+
*/
|
|
520
617
|
| "clientSequenceNumber"
|
|
521
|
-
/**
|
|
618
|
+
/**
|
|
619
|
+
* Time it took for this summary to be acked after it was generated
|
|
620
|
+
*/
|
|
522
621
|
| "ackWaitDuration"
|
|
523
|
-
/**
|
|
622
|
+
/**
|
|
623
|
+
* Reference sequence number of the ack/nack message
|
|
624
|
+
*/
|
|
524
625
|
| "ackNackSequenceNumber"
|
|
525
|
-
/**
|
|
626
|
+
/**
|
|
627
|
+
* Actual sequence number of the summary op proposal.
|
|
628
|
+
*/
|
|
526
629
|
| "summarySequenceNumber"
|
|
527
|
-
/**
|
|
630
|
+
/**
|
|
631
|
+
* Optional Retry-After time in seconds. If specified, the client should wait this many seconds before retrying.
|
|
632
|
+
*/
|
|
528
633
|
| "nackRetryAfter"
|
|
529
|
-
/**
|
|
634
|
+
/**
|
|
635
|
+
* The stage at which the submit summary method failed at. This can help determine what type of failure we have
|
|
636
|
+
*/
|
|
530
637
|
| "stage";
|
|
531
638
|
export type SummaryGeneratorTelemetry = Pick<ITelemetryBaseProperties, SummaryGeneratorRequiredTelemetryProperties> & Partial<Pick<ITelemetryBaseProperties, SummaryGeneratorOptionalTelemetryProperties>>;
|
|
532
639
|
export interface ISummarizeRunnerTelemetry extends ITelemetryLoggerPropertyBag {
|
|
533
|
-
/**
|
|
640
|
+
/**
|
|
641
|
+
* Number of times the summarizer run.
|
|
642
|
+
*/
|
|
534
643
|
summarizeCount: () => number;
|
|
535
|
-
/**
|
|
644
|
+
/**
|
|
645
|
+
* Number of successful attempts to summarize.
|
|
646
|
+
*/
|
|
536
647
|
summarizerSuccessfulAttempts: () => number;
|
|
537
648
|
}
|
|
538
649
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"summarizerTypes.d.ts","sourceRoot":"","sources":["../../src/summary/summarizerTypes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACN,aAAa,EACb,gBAAgB,EAChB,MAAM,gDAAgD,CAAC;AACxD,OAAO,KAAK,EACX,iBAAiB,
|
|
1
|
+
{"version":3,"file":"summarizerTypes.d.ts","sourceRoot":"","sources":["../../src/summary/summarizerTypes.ts"],"names":[],"mappings":"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"}
|