@fluidframework/container-runtime 2.0.0-dev-rc.1.0.0.228517 → 2.0.0-dev-rc.1.0.0.232845

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.
Files changed (149) hide show
  1. package/README.md +1 -1
  2. package/api-report/container-runtime.api.md +13 -3
  3. package/dist/container-runtime-alpha.d.ts +11 -3
  4. package/dist/container-runtime-beta.d.ts +7 -0
  5. package/dist/container-runtime-public.d.ts +7 -0
  6. package/dist/container-runtime-untrimmed.d.ts +28 -3
  7. package/dist/containerRuntime.d.ts +5 -2
  8. package/dist/containerRuntime.d.ts.map +1 -1
  9. package/dist/containerRuntime.js +55 -67
  10. package/dist/containerRuntime.js.map +1 -1
  11. package/dist/dataStoreContext.d.ts +4 -1
  12. package/dist/dataStoreContext.d.ts.map +1 -1
  13. package/dist/dataStoreContext.js +2 -3
  14. package/dist/dataStoreContext.js.map +1 -1
  15. package/dist/dataStores.d.ts +4 -2
  16. package/dist/dataStores.d.ts.map +1 -1
  17. package/dist/dataStores.js +8 -2
  18. package/dist/dataStores.js.map +1 -1
  19. package/dist/gc/garbageCollection.d.ts +17 -1
  20. package/dist/gc/garbageCollection.d.ts.map +1 -1
  21. package/dist/gc/garbageCollection.js +72 -29
  22. package/dist/gc/garbageCollection.js.map +1 -1
  23. package/dist/gc/gcDefinitions.d.ts +18 -2
  24. package/dist/gc/gcDefinitions.d.ts.map +1 -1
  25. package/dist/gc/gcDefinitions.js +5 -1
  26. package/dist/gc/gcDefinitions.js.map +1 -1
  27. package/dist/gc/gcTelemetry.d.ts +1 -0
  28. package/dist/gc/gcTelemetry.d.ts.map +1 -1
  29. package/dist/gc/gcTelemetry.js +0 -2
  30. package/dist/gc/gcTelemetry.js.map +1 -1
  31. package/dist/gc/gcUnreferencedStateTracker.d.ts +5 -0
  32. package/dist/gc/gcUnreferencedStateTracker.d.ts.map +1 -1
  33. package/dist/gc/gcUnreferencedStateTracker.js +12 -1
  34. package/dist/gc/gcUnreferencedStateTracker.js.map +1 -1
  35. package/dist/gc/index.d.ts +1 -1
  36. package/dist/gc/index.d.ts.map +1 -1
  37. package/dist/gc/index.js +2 -1
  38. package/dist/gc/index.js.map +1 -1
  39. package/dist/index.d.ts +2 -1
  40. package/dist/index.d.ts.map +1 -1
  41. package/dist/index.js +3 -1
  42. package/dist/index.js.map +1 -1
  43. package/dist/messageTypes.d.ts +1 -1
  44. package/dist/messageTypes.js.map +1 -1
  45. package/dist/packageVersion.d.ts +1 -1
  46. package/dist/packageVersion.js +1 -1
  47. package/dist/packageVersion.js.map +1 -1
  48. package/dist/summary/runningSummarizer.d.ts +6 -6
  49. package/dist/summary/runningSummarizer.d.ts.map +1 -1
  50. package/dist/summary/runningSummarizer.js +90 -72
  51. package/dist/summary/runningSummarizer.js.map +1 -1
  52. package/dist/summary/summarizerNode/summarizerNode.d.ts +2 -3
  53. package/dist/summary/summarizerNode/summarizerNode.d.ts.map +1 -1
  54. package/dist/summary/summarizerNode/summarizerNode.js +6 -48
  55. package/dist/summary/summarizerNode/summarizerNode.js.map +1 -1
  56. package/dist/summary/summarizerNode/summarizerNodeUtils.d.ts +1 -18
  57. package/dist/summary/summarizerNode/summarizerNodeUtils.d.ts.map +1 -1
  58. package/dist/summary/summarizerNode/summarizerNodeUtils.js +1 -21
  59. package/dist/summary/summarizerNode/summarizerNodeUtils.js.map +1 -1
  60. package/dist/summary/summarizerNode/summarizerNodeWithGc.d.ts +3 -3
  61. package/dist/summary/summarizerNode/summarizerNodeWithGc.d.ts.map +1 -1
  62. package/dist/summary/summarizerNode/summarizerNodeWithGc.js +5 -5
  63. package/dist/summary/summarizerNode/summarizerNodeWithGc.js.map +1 -1
  64. package/dist/summary/summarizerTypes.d.ts +1 -1
  65. package/dist/summary/summarizerTypes.d.ts.map +1 -1
  66. package/dist/summary/summarizerTypes.js.map +1 -1
  67. package/dist/tsdoc-metadata.json +1 -1
  68. package/lib/container-runtime-alpha.d.mts +11 -3
  69. package/lib/container-runtime-beta.d.mts +7 -0
  70. package/lib/container-runtime-public.d.mts +7 -0
  71. package/lib/container-runtime-untrimmed.d.mts +28 -3
  72. package/lib/containerRuntime.d.mts +5 -2
  73. package/lib/containerRuntime.d.mts.map +1 -1
  74. package/lib/containerRuntime.mjs +56 -68
  75. package/lib/containerRuntime.mjs.map +1 -1
  76. package/lib/dataStoreContext.d.mts +4 -1
  77. package/lib/dataStoreContext.d.mts.map +1 -1
  78. package/lib/dataStoreContext.mjs +2 -3
  79. package/lib/dataStoreContext.mjs.map +1 -1
  80. package/lib/dataStores.d.mts +4 -2
  81. package/lib/dataStores.d.mts.map +1 -1
  82. package/lib/dataStores.mjs +8 -2
  83. package/lib/dataStores.mjs.map +1 -1
  84. package/lib/gc/garbageCollection.d.mts +17 -1
  85. package/lib/gc/garbageCollection.d.mts.map +1 -1
  86. package/lib/gc/garbageCollection.mjs +74 -31
  87. package/lib/gc/garbageCollection.mjs.map +1 -1
  88. package/lib/gc/gcDefinitions.d.mts +18 -2
  89. package/lib/gc/gcDefinitions.d.mts.map +1 -1
  90. package/lib/gc/gcDefinitions.mjs +4 -0
  91. package/lib/gc/gcDefinitions.mjs.map +1 -1
  92. package/lib/gc/gcTelemetry.d.mts +1 -0
  93. package/lib/gc/gcTelemetry.d.mts.map +1 -1
  94. package/lib/gc/gcTelemetry.mjs +0 -2
  95. package/lib/gc/gcTelemetry.mjs.map +1 -1
  96. package/lib/gc/gcUnreferencedStateTracker.d.mts +5 -0
  97. package/lib/gc/gcUnreferencedStateTracker.d.mts.map +1 -1
  98. package/lib/gc/gcUnreferencedStateTracker.mjs +10 -0
  99. package/lib/gc/gcUnreferencedStateTracker.mjs.map +1 -1
  100. package/lib/gc/index.d.mts +1 -1
  101. package/lib/gc/index.d.mts.map +1 -1
  102. package/lib/gc/index.mjs +1 -1
  103. package/lib/gc/index.mjs.map +1 -1
  104. package/lib/index.d.mts +2 -1
  105. package/lib/index.d.mts.map +1 -1
  106. package/lib/index.mjs +1 -0
  107. package/lib/index.mjs.map +1 -1
  108. package/lib/messageTypes.d.mts +1 -1
  109. package/lib/messageTypes.mjs.map +1 -1
  110. package/lib/packageVersion.d.mts +1 -1
  111. package/lib/packageVersion.mjs +1 -1
  112. package/lib/packageVersion.mjs.map +1 -1
  113. package/lib/summary/runningSummarizer.d.mts +6 -6
  114. package/lib/summary/runningSummarizer.d.mts.map +1 -1
  115. package/lib/summary/runningSummarizer.mjs +90 -72
  116. package/lib/summary/runningSummarizer.mjs.map +1 -1
  117. package/lib/summary/summarizerNode/summarizerNode.d.mts +2 -3
  118. package/lib/summary/summarizerNode/summarizerNode.d.mts.map +1 -1
  119. package/lib/summary/summarizerNode/summarizerNode.mjs +8 -50
  120. package/lib/summary/summarizerNode/summarizerNode.mjs.map +1 -1
  121. package/lib/summary/summarizerNode/summarizerNodeUtils.d.mts +1 -18
  122. package/lib/summary/summarizerNode/summarizerNodeUtils.d.mts.map +1 -1
  123. package/lib/summary/summarizerNode/summarizerNodeUtils.mjs +0 -19
  124. package/lib/summary/summarizerNode/summarizerNodeUtils.mjs.map +1 -1
  125. package/lib/summary/summarizerNode/summarizerNodeWithGc.d.mts +3 -3
  126. package/lib/summary/summarizerNode/summarizerNodeWithGc.d.mts.map +1 -1
  127. package/lib/summary/summarizerNode/summarizerNodeWithGc.mjs +5 -5
  128. package/lib/summary/summarizerNode/summarizerNodeWithGc.mjs.map +1 -1
  129. package/lib/summary/summarizerTypes.d.mts +1 -1
  130. package/lib/summary/summarizerTypes.d.mts.map +1 -1
  131. package/lib/summary/summarizerTypes.mjs.map +1 -1
  132. package/package.json +27 -21
  133. package/src/containerRuntime.ts +96 -85
  134. package/src/dataStoreContext.ts +6 -4
  135. package/src/dataStores.ts +8 -1
  136. package/src/gc/garbageCollection.ts +86 -30
  137. package/src/gc/gcDefinitions.ts +19 -3
  138. package/src/gc/gcTelemetry.ts +1 -2
  139. package/src/gc/gcUnreferencedStateTracker.ts +11 -0
  140. package/src/gc/index.ts +1 -0
  141. package/src/index.ts +2 -0
  142. package/src/messageTypes.ts +1 -1
  143. package/src/packageVersion.ts +1 -1
  144. package/src/summary/runningSummarizer.ts +116 -88
  145. package/src/summary/summarizerNode/summarizerNode.ts +4 -64
  146. package/src/summary/summarizerNode/summarizerNodeUtils.ts +2 -33
  147. package/src/summary/summarizerNode/summarizerNodeWithGc.ts +0 -6
  148. package/src/summary/summarizerTypes.ts +1 -1
  149. /package/{.eslintrc.js → .eslintrc.cjs} +0 -0
package/README.md CHANGED
@@ -21,7 +21,7 @@ npm i @fluidframework/container-runtime
21
21
 
22
22
  ## API Documentation
23
23
 
24
- API documentation for **@fluidframework/container-runtime** is available at <https://fluidframework.com/docs/api/v1/container-runtime>.
24
+ API documentation for **@fluidframework/container-runtime** is available at <https://fluidframework.com/docs/apis/container-runtime>.
25
25
 
26
26
  ## Contribution Guidelines
27
27
 
@@ -22,6 +22,7 @@ import { IDeltaManager } from '@fluidframework/container-definitions';
22
22
  import { IDisposable } from '@fluidframework/core-interfaces';
23
23
  import { IDocumentMessage } from '@fluidframework/protocol-definitions';
24
24
  import { IDocumentStorageService } from '@fluidframework/driver-definitions';
25
+ import { IEnvelope } from '@fluidframework/runtime-definitions';
25
26
  import { IEvent } from '@fluidframework/core-interfaces';
26
27
  import { IEventProvider } from '@fluidframework/core-interfaces';
27
28
  import { IFluidDataStoreContextDetached } from '@fluidframework/runtime-definitions';
@@ -117,11 +118,11 @@ export class ContainerRuntime extends TypedEventEmitter<IContainerRuntimeEvents
117
118
  // (undocumented)
118
119
  get connected(): boolean;
119
120
  // (undocumented)
120
- createDataStore(pkg: string | string[]): Promise<IDataStore>;
121
+ createDataStore(pkg: string | string[], groupId?: string): Promise<IDataStore>;
121
122
  // @deprecated (undocumented)
122
123
  _createDataStoreWithProps(pkg: string | string[], props?: any, id?: string): Promise<IDataStore>;
123
124
  // (undocumented)
124
- createDetachedDataStore(pkg: Readonly<string[]>): IFluidDataStoreContextDetached;
125
+ createDetachedDataStore(pkg: Readonly<string[]>, groupId?: string): IFluidDataStoreContextDetached;
125
126
  // (undocumented)
126
127
  createDetachedRootDataStore(pkg: Readonly<string[]>, rootDataStoreId: string): IFluidDataStoreContextDetached;
127
128
  createSummary(blobRedirectTable?: Map<string, string>, telemetryContext?: ITelemetryContext): ISummaryTree;
@@ -232,6 +233,9 @@ export interface ContainerRuntimeMessage {
232
233
  // @alpha (undocumented)
233
234
  export const DefaultSummaryConfiguration: ISummaryConfiguration;
234
235
 
236
+ // @internal
237
+ export function detectOutboundReferences(envelope: IEnvelope, addedOutboundReference: (fromNodePath: string, toNodePath: string) => void): void;
238
+
235
239
  // @alpha (undocumented)
236
240
  export type EnqueueSummarizeResult = (ISummarizeResults & {
237
241
  readonly alreadyEnqueued?: undefined;
@@ -801,7 +805,7 @@ export type SummarizeResultPart<TSuccess, TFailure = undefined> = {
801
805
 
802
806
  // @alpha (undocumented)
803
807
  export type SummarizerStopReason =
804
- /** Summarizer client failed to summarize in all 3 consecutive attempts. */
808
+ /** Summarizer client failed to summarize in all attempts. */
805
809
  "failToSummarize"
806
810
  /** Parent client reported that it is no longer connected. */
807
811
  | "parentNotConnected"
@@ -856,6 +860,12 @@ export type SummaryStage = SubmitSummaryResult["stage"] | "unknown";
856
860
  // @alpha
857
861
  export const TombstoneResponseHeaderKey = "isTombstoned";
858
862
 
863
+ // @internal
864
+ export interface UnknownContainerRuntimeMessage extends Partial<RecentlyAddedContainerRuntimeMessageDetails> {
865
+ contents: unknown;
866
+ type: "__unknown_container_message_type__never_use_as_value__";
867
+ }
868
+
859
869
  // @internal
860
870
  export function unpackRuntimeMessage(message: ISequencedDocumentMessage): boolean;
861
871
 
@@ -16,6 +16,7 @@ import { IDeltaManager } from '@fluidframework/container-definitions';
16
16
  import { IDisposable } from '@fluidframework/core-interfaces';
17
17
  import { IDocumentMessage } from '@fluidframework/protocol-definitions';
18
18
  import { IDocumentStorageService } from '@fluidframework/driver-definitions';
19
+ import { IEnvelope } from '@fluidframework/runtime-definitions';
19
20
  import { IEvent } from '@fluidframework/core-interfaces';
20
21
  import { IEventProvider } from '@fluidframework/core-interfaces';
21
22
  import { IFluidDataStoreContextDetached } from '@fluidframework/runtime-definitions';
@@ -336,6 +337,9 @@ export declare class ContainerRuntime extends TypedEventEmitter<IContainerRuntim
336
337
  * This method is expected to be called at the end of a batch.
337
338
  */
338
339
  private flush;
340
+ /**
341
+ * {@inheritDoc @fluidframework/runtime-definitions#IContainerRuntimeBase.orderSequentially}
342
+ */
339
343
  orderSequentially<T>(callback: () => T): T;
340
344
  /**
341
345
  * Returns the aliased data store's entryPoint, given the alias.
@@ -345,8 +349,8 @@ export declare class ContainerRuntime extends TypedEventEmitter<IContainerRuntim
345
349
  */
346
350
  getAliasedDataStoreEntryPoint(alias: string): Promise<IFluidHandle<FluidObject> | undefined>;
347
351
  createDetachedRootDataStore(pkg: Readonly<string[]>, rootDataStoreId: string): IFluidDataStoreContextDetached;
348
- createDetachedDataStore(pkg: Readonly<string[]>): IFluidDataStoreContextDetached;
349
- createDataStore(pkg: string | string[]): Promise<IDataStore>;
352
+ createDetachedDataStore(pkg: Readonly<string[]>, groupId?: string): IFluidDataStoreContextDetached;
353
+ createDataStore(pkg: string | string[], groupId?: string): Promise<IDataStore>;
350
354
  /**
351
355
  * @deprecated 0.16 Issue #1537, #3631
352
356
  */
@@ -579,6 +583,8 @@ export declare class ContainerRuntime extends TypedEventEmitter<IContainerRuntim
579
583
  */
580
584
  export declare const DefaultSummaryConfiguration: ISummaryConfiguration;
581
585
 
586
+ /* Excluded from this release type: detectOutboundReferences */
587
+
582
588
  /**
583
589
  * @alpha
584
590
  */
@@ -1596,7 +1602,7 @@ export declare type SummarizeResultPart<TSuccess, TFailure = undefined> = {
1596
1602
  * @alpha
1597
1603
  */
1598
1604
  export declare type SummarizerStopReason =
1599
- /** Summarizer client failed to summarize in all 3 consecutive attempts. */
1605
+ /** Summarizer client failed to summarize in all attempts. */
1600
1606
  "failToSummarize"
1601
1607
  /** Parent client reported that it is no longer connected. */
1602
1608
  | "parentNotConnected"
@@ -1687,6 +1693,8 @@ export declare type SummaryStage = SubmitSummaryResult["stage"] | "unknown";
1687
1693
  */
1688
1694
  export declare const TombstoneResponseHeaderKey = "isTombstoned";
1689
1695
 
1696
+ /* Excluded from this release type: UnknownContainerRuntimeMessage */
1697
+
1690
1698
  /* Excluded from this release type: unpackRuntimeMessage */
1691
1699
 
1692
1700
  export { }
@@ -16,6 +16,7 @@ import { IDeltaManager } from '@fluidframework/container-definitions';
16
16
  import { IDisposable } from '@fluidframework/core-interfaces';
17
17
  import { IDocumentMessage } from '@fluidframework/protocol-definitions';
18
18
  import { IDocumentStorageService } from '@fluidframework/driver-definitions';
19
+ import { IEnvelope } from '@fluidframework/runtime-definitions';
19
20
  import { IEvent } from '@fluidframework/core-interfaces';
20
21
  import { IEventProvider } from '@fluidframework/core-interfaces';
21
22
  import { IFluidDataStoreContextDetached } from '@fluidframework/runtime-definitions';
@@ -69,6 +70,8 @@ import { TypedEventEmitter } from '@fluid-internal/client-utils';
69
70
 
70
71
  /* Excluded from this release type: DefaultSummaryConfiguration */
71
72
 
73
+ /* Excluded from this release type: detectOutboundReferences */
74
+
72
75
  /* Excluded from this release type: EnqueueSummarizeResult */
73
76
 
74
77
  /* Excluded from this release type: FluidDataStoreRegistry */
@@ -127,6 +130,8 @@ import { TypedEventEmitter } from '@fluid-internal/client-utils';
127
130
 
128
131
  /* Excluded from this release type: IEnqueueSummarizeOptions */
129
132
 
133
+ /* Excluded from this release type: IEnvelope */
134
+
130
135
  /* Excluded from this release type: IFluidDataStoreContextDetached */
131
136
 
132
137
  /* Excluded from this release type: IFluidDataStoreRegistry */
@@ -245,6 +250,8 @@ import { TypedEventEmitter } from '@fluid-internal/client-utils';
245
250
 
246
251
  /* Excluded from this release type: TombstoneResponseHeaderKey */
247
252
 
253
+ /* Excluded from this release type: UnknownContainerRuntimeMessage */
254
+
248
255
  /* Excluded from this release type: unpackRuntimeMessage */
249
256
 
250
257
  export { }
@@ -16,6 +16,7 @@ import { IDeltaManager } from '@fluidframework/container-definitions';
16
16
  import { IDisposable } from '@fluidframework/core-interfaces';
17
17
  import { IDocumentMessage } from '@fluidframework/protocol-definitions';
18
18
  import { IDocumentStorageService } from '@fluidframework/driver-definitions';
19
+ import { IEnvelope } from '@fluidframework/runtime-definitions';
19
20
  import { IEvent } from '@fluidframework/core-interfaces';
20
21
  import { IEventProvider } from '@fluidframework/core-interfaces';
21
22
  import { IFluidDataStoreContextDetached } from '@fluidframework/runtime-definitions';
@@ -69,6 +70,8 @@ import { TypedEventEmitter } from '@fluid-internal/client-utils';
69
70
 
70
71
  /* Excluded from this release type: DefaultSummaryConfiguration */
71
72
 
73
+ /* Excluded from this release type: detectOutboundReferences */
74
+
72
75
  /* Excluded from this release type: EnqueueSummarizeResult */
73
76
 
74
77
  /* Excluded from this release type: FluidDataStoreRegistry */
@@ -127,6 +130,8 @@ import { TypedEventEmitter } from '@fluid-internal/client-utils';
127
130
 
128
131
  /* Excluded from this release type: IEnqueueSummarizeOptions */
129
132
 
133
+ /* Excluded from this release type: IEnvelope */
134
+
130
135
  /* Excluded from this release type: IFluidDataStoreContextDetached */
131
136
 
132
137
  /* Excluded from this release type: IFluidDataStoreRegistry */
@@ -245,6 +250,8 @@ import { TypedEventEmitter } from '@fluid-internal/client-utils';
245
250
 
246
251
  /* Excluded from this release type: TombstoneResponseHeaderKey */
247
252
 
253
+ /* Excluded from this release type: UnknownContainerRuntimeMessage */
254
+
248
255
  /* Excluded from this release type: unpackRuntimeMessage */
249
256
 
250
257
  export { }
@@ -16,6 +16,7 @@ import { IDeltaManager } from '@fluidframework/container-definitions';
16
16
  import { IDisposable } from '@fluidframework/core-interfaces';
17
17
  import { IDocumentMessage } from '@fluidframework/protocol-definitions';
18
18
  import { IDocumentStorageService } from '@fluidframework/driver-definitions';
19
+ import { IEnvelope } from '@fluidframework/runtime-definitions';
19
20
  import { IEvent } from '@fluidframework/core-interfaces';
20
21
  import { IEventProvider } from '@fluidframework/core-interfaces';
21
22
  import { IFluidDataStoreContextDetached } from '@fluidframework/runtime-definitions';
@@ -355,6 +356,9 @@ export declare class ContainerRuntime extends TypedEventEmitter<IContainerRuntim
355
356
  * This method is expected to be called at the end of a batch.
356
357
  */
357
358
  private flush;
359
+ /**
360
+ * {@inheritDoc @fluidframework/runtime-definitions#IContainerRuntimeBase.orderSequentially}
361
+ */
358
362
  orderSequentially<T>(callback: () => T): T;
359
363
  /**
360
364
  * Returns the aliased data store's entryPoint, given the alias.
@@ -364,8 +368,8 @@ export declare class ContainerRuntime extends TypedEventEmitter<IContainerRuntim
364
368
  */
365
369
  getAliasedDataStoreEntryPoint(alias: string): Promise<IFluidHandle<FluidObject> | undefined>;
366
370
  createDetachedRootDataStore(pkg: Readonly<string[]>, rootDataStoreId: string): IFluidDataStoreContextDetached;
367
- createDetachedDataStore(pkg: Readonly<string[]>): IFluidDataStoreContextDetached;
368
- createDataStore(pkg: string | string[]): Promise<IDataStore>;
371
+ createDetachedDataStore(pkg: Readonly<string[]>, groupId?: string): IFluidDataStoreContextDetached;
372
+ createDataStore(pkg: string | string[], groupId?: string): Promise<IDataStore>;
369
373
  /**
370
374
  * @deprecated 0.16 Issue #1537, #3631
371
375
  */
@@ -616,6 +620,13 @@ export declare interface ContainerRuntimeMessage {
616
620
  */
617
621
  export declare const DefaultSummaryConfiguration: ISummaryConfiguration;
618
622
 
623
+ /**
624
+ * Traverse this op's contents and detect any outbound routes that were added by this op.
625
+ *
626
+ * @internal
627
+ */
628
+ export declare function detectOutboundReferences(envelope: IEnvelope, addedOutboundReference: (fromNodePath: string, toNodePath: string) => void): void;
629
+
619
630
  /**
620
631
  * @alpha
621
632
  */
@@ -1702,7 +1713,7 @@ export declare type SummarizeResultPart<TSuccess, TFailure = undefined> = {
1702
1713
  * @alpha
1703
1714
  */
1704
1715
  export declare type SummarizerStopReason =
1705
- /** Summarizer client failed to summarize in all 3 consecutive attempts. */
1716
+ /** Summarizer client failed to summarize in all attempts. */
1706
1717
  "failToSummarize"
1707
1718
  /** Parent client reported that it is no longer connected. */
1708
1719
  | "parentNotConnected"
@@ -1793,6 +1804,20 @@ export declare type SummaryStage = SubmitSummaryResult["stage"] | "unknown";
1793
1804
  */
1794
1805
  export declare const TombstoneResponseHeaderKey = "isTombstoned";
1795
1806
 
1807
+ /**
1808
+ * Represents an unrecognized TypedContainerRuntimeMessage, e.g. a message from a future version of the container runtime.
1809
+ * @internal
1810
+ */
1811
+ export declare interface UnknownContainerRuntimeMessage extends Partial<RecentlyAddedContainerRuntimeMessageDetails> {
1812
+ /** Invalid type of the op, within the ContainerRuntime's domain. This value should never exist at runtime.
1813
+ * This is useful for type narrowing but should never be used as an actual message type at runtime.
1814
+ * Actual value will not be "__unknown...", but the type `Exclude<string, ContainerMessageType>` is not supported.
1815
+ */
1816
+ type: "__unknown_container_message_type__never_use_as_value__";
1817
+ /** Domain-specific contents, but not decipherable by an unknown op. */
1818
+ contents: unknown;
1819
+ }
1820
+
1796
1821
  /**
1797
1822
  * Unpacks runtime messages.
1798
1823
  *
@@ -579,6 +579,9 @@ export declare class ContainerRuntime extends TypedEventEmitter<IContainerRuntim
579
579
  * This method is expected to be called at the end of a batch.
580
580
  */
581
581
  private flush;
582
+ /**
583
+ * {@inheritDoc @fluidframework/runtime-definitions#IContainerRuntimeBase.orderSequentially}
584
+ */
582
585
  orderSequentially<T>(callback: () => T): T;
583
586
  /**
584
587
  * Returns the aliased data store's entryPoint, given the alias.
@@ -588,8 +591,8 @@ export declare class ContainerRuntime extends TypedEventEmitter<IContainerRuntim
588
591
  */
589
592
  getAliasedDataStoreEntryPoint(alias: string): Promise<IFluidHandle<FluidObject> | undefined>;
590
593
  createDetachedRootDataStore(pkg: Readonly<string[]>, rootDataStoreId: string): IFluidDataStoreContextDetached;
591
- createDetachedDataStore(pkg: Readonly<string[]>): IFluidDataStoreContextDetached;
592
- createDataStore(pkg: string | string[]): Promise<IDataStore>;
594
+ createDetachedDataStore(pkg: Readonly<string[]>, groupId?: string): IFluidDataStoreContextDetached;
595
+ createDataStore(pkg: string | string[], groupId?: string): Promise<IDataStore>;
593
596
  /**
594
597
  * @deprecated 0.16 Issue #1537, #3631
595
598
  */
@@ -1 +1 @@
1
- {"version":3,"file":"containerRuntime.d.ts","sourceRoot":"","sources":["../src/containerRuntime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"containerRuntime.d.ts","sourceRoot":"","sources":["../src/containerRuntime.ts"],"names":[],"mappings":"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"}
@@ -306,15 +306,28 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
306
306
  let idCompressor;
307
307
  if (idCompressorEnabled) {
308
308
  const { createIdCompressor, deserializeIdCompressor, createSessionId } = await import("@fluidframework/id-compressor");
309
+ /**
310
+ * Because the IdCompressor emits so much telemetry, this function is used to sample
311
+ * approximately 5% of all clients. Only the given percentage of sessions will emit telemetry.
312
+ */
313
+ const idCompressorEventSampler = (() => {
314
+ const isIdCompressorTelemetryEnabled = Math.random() < 0.05;
315
+ return {
316
+ sample: () => {
317
+ return isIdCompressorTelemetryEnabled;
318
+ },
319
+ };
320
+ })();
321
+ const compressorLogger = (0, telemetry_utils_1.createSampledLogger)(logger, idCompressorEventSampler);
309
322
  const pendingLocalState = context.pendingLocalState;
310
323
  if (pendingLocalState?.pendingIdCompressorState !== undefined) {
311
- idCompressor = deserializeIdCompressor(pendingLocalState.pendingIdCompressorState);
324
+ idCompressor = deserializeIdCompressor(pendingLocalState.pendingIdCompressorState, compressorLogger);
312
325
  }
313
326
  else if (serializedIdCompressor !== undefined) {
314
- idCompressor = deserializeIdCompressor(serializedIdCompressor, createSessionId());
327
+ idCompressor = deserializeIdCompressor(serializedIdCompressor, createSessionId(), compressorLogger);
315
328
  }
316
329
  else {
317
- idCompressor = createIdCompressor(logger);
330
+ idCompressor = createIdCompressor(compressorLogger);
318
331
  }
319
332
  }
320
333
  const runtime = new containerRuntimeCtor(context, registry, metadata, electedSummarizerData, chunks ?? [], aliases ?? [], {
@@ -567,13 +580,15 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
567
580
  this._flushMode = runtimeOptions.flushMode;
568
581
  }
569
582
  const pendingRuntimeState = pendingLocalState;
570
- const maxSnapshotCacheDurationMs = this._storage?.policies?.maximumCacheDurationMs;
571
- if (maxSnapshotCacheDurationMs !== undefined &&
572
- maxSnapshotCacheDurationMs > 5 * 24 * 60 * 60 * 1000) {
573
- // This is a runtime enforcement of what's already explicit in the policy's type itself,
574
- // which dictates the value is either undefined or exactly 5 days in ms.
575
- // As long as the actual value is less than 5 days, the assumptions GC makes here are valid.
576
- throw new telemetry_utils_1.UsageError("Driver's maximumCacheDurationMs policy cannot exceed 5 days");
583
+ if (context.attachState === container_definitions_1.AttachState.Attached) {
584
+ const maxSnapshotCacheDurationMs = this._storage?.policies?.maximumCacheDurationMs;
585
+ if (maxSnapshotCacheDurationMs !== undefined &&
586
+ maxSnapshotCacheDurationMs > 5 * 24 * 60 * 60 * 1000) {
587
+ // This is a runtime enforcement of what's already explicit in the policy's type itself,
588
+ // which dictates the value is either undefined or exactly 5 days in ms.
589
+ // As long as the actual value is less than 5 days, the assumptions GC makes here are valid.
590
+ throw new telemetry_utils_1.UsageError("Driver's maximumCacheDurationMs policy cannot exceed 5 days");
591
+ }
577
592
  }
578
593
  this.garbageCollector = gc_1.GarbageCollector.create({
579
594
  runtime: this,
@@ -600,9 +615,6 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
600
615
  // Must set to false to prevent sending summary handle which would be pointing to
601
616
  // a summary with an older protocol state.
602
617
  canReuseHandle: false,
603
- // Must set to true to throw on any data stores failure that was too severe to be handled.
604
- // We also are not decoding the base summaries at the root.
605
- throwOnFailure: true,
606
618
  // If GC should not run, let the summarizer node know so that it does not track GC state.
607
619
  gcDisabled: !this.garbageCollector.shouldRunGC,
608
620
  },
@@ -1059,6 +1071,8 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
1059
1071
  this.closeFn(error);
1060
1072
  throw error;
1061
1073
  }
1074
+ // Note: Even if its compat behavior allows it, we don't know how to apply this stashed op.
1075
+ // All we can do is ignore it (similar to on process).
1062
1076
  }
1063
1077
  }
1064
1078
  }
@@ -1323,6 +1337,9 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
1323
1337
  this.outbox.flush();
1324
1338
  (0, core_utils_1.assert)(this.outbox.isEmpty, 0x3cf /* reentrancy */);
1325
1339
  }
1340
+ /**
1341
+ * {@inheritDoc @fluidframework/runtime-definitions#IContainerRuntimeBase.orderSequentially}
1342
+ */
1326
1343
  orderSequentially(callback) {
1327
1344
  let checkpoint;
1328
1345
  let result;
@@ -1351,8 +1368,9 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
1351
1368
  }
1352
1369
  }
1353
1370
  else {
1354
- // pre-0.58 error message: orderSequentiallyCallbackException
1355
- this.closeFn(new telemetry_utils_1.GenericError("orderSequentially callback exception", error));
1371
+ this.closeFn((0, telemetry_utils_1.wrapError)(error, (errorMessage) => new telemetry_utils_1.GenericError(`orderSequentially callback exception: ${errorMessage}`, error, {
1372
+ orderSequentiallyCalls: this._orderSequentiallyCalls,
1373
+ })));
1356
1374
  }
1357
1375
  throw error; // throw the original error for the consumer of the runtime
1358
1376
  }
@@ -1392,13 +1410,13 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
1392
1410
  }
1393
1411
  return this.dataStores.createDetachedDataStoreCore(pkg, true, rootDataStoreId);
1394
1412
  }
1395
- createDetachedDataStore(pkg) {
1396
- return this.dataStores.createDetachedDataStoreCore(pkg, false);
1413
+ createDetachedDataStore(pkg, groupId) {
1414
+ return this.dataStores.createDetachedDataStoreCore(pkg, false, undefined, groupId);
1397
1415
  }
1398
- async createDataStore(pkg) {
1416
+ async createDataStore(pkg, groupId) {
1399
1417
  const id = (0, uuid_1.v4)();
1400
1418
  return (0, dataStore_1.channelToDataStore)(await this.dataStores
1401
- ._createFluidDataStoreContext(Array.isArray(pkg) ? pkg : [pkg], id)
1419
+ ._createFluidDataStoreContext(Array.isArray(pkg) ? pkg : [pkg], id, undefined, groupId)
1402
1420
  .realize(), id, this, this.dataStores, this.mc.logger);
1403
1421
  }
1404
1422
  /**
@@ -1672,6 +1690,11 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
1672
1690
  * data store or an attachment blob.
1673
1691
  */
1674
1692
  async getGCNodePackagePath(nodePath) {
1693
+ // GC uses "/" when adding "root" references, e.g. for Aliasing or as part of Tombstone Auto-Recovery.
1694
+ // These have no package path so return a special value.
1695
+ if (nodePath === "/") {
1696
+ return ["<GCROOT>"];
1697
+ }
1675
1698
  switch (this.getNodeType(nodePath)) {
1676
1699
  case gc_1.GCNodeType.Blob:
1677
1700
  return [blobManager_1.BlobManager.basePath];
@@ -1748,7 +1771,6 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
1748
1771
  });
1749
1772
  (0, core_utils_1.assert)(this.outbox.isEmpty, 0x3d1 /* Can't trigger summary in the middle of a batch */);
1750
1773
  // We close the summarizer and download a new snapshot and reload the container
1751
- let latestSnapshotVersionId;
1752
1774
  if (refreshLatestAck === true) {
1753
1775
  return this.prefetchLatestSummaryThenClose((0, telemetry_utils_1.createChildLogger)({
1754
1776
  logger: summaryNumberLogger,
@@ -1916,34 +1938,17 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
1916
1938
  if (!continueResult.continue) {
1917
1939
  return { stage: "generate", ...generateSummaryData, error: continueResult.error };
1918
1940
  }
1919
- // It may happen that the lastAck it not correct due to missing summaryAck in case of single commit
1920
- // summary. So if the previous summarizer closes just after submitting the summary and before
1921
- // submitting the summaryOp then we can't rely on summaryAck. So in case we have
1922
- // latestSnapshotVersionId from storage and it does not match with the lastAck ackHandle, then use
1923
- // the one fetched from storage as parent as that is the latest.
1924
- let summaryContext;
1925
- if (lastAck?.summaryAck.contents.handle !== latestSnapshotVersionId &&
1926
- latestSnapshotVersionId !== undefined) {
1927
- summaryContext = {
1928
- proposalHandle: undefined,
1929
- ackHandle: latestSnapshotVersionId,
1930
- referenceSequenceNumber: summaryRefSeqNum,
1931
- };
1932
- }
1933
- else if (lastAck === undefined) {
1934
- summaryContext = {
1941
+ const summaryContext = lastAck === undefined
1942
+ ? {
1935
1943
  proposalHandle: undefined,
1936
1944
  ackHandle: this.loadedFromVersionId,
1937
1945
  referenceSequenceNumber: summaryRefSeqNum,
1938
- };
1939
- }
1940
- else {
1941
- summaryContext = {
1946
+ }
1947
+ : {
1942
1948
  proposalHandle: lastAck.summaryOp.contents.handle,
1943
1949
  ackHandle: lastAck.summaryAck.contents.handle,
1944
1950
  referenceSequenceNumber: summaryRefSeqNum,
1945
1951
  };
1946
- }
1947
1952
  let handle;
1948
1953
  try {
1949
1954
  handle = await this.storage.uploadSummaryWithContext(summarizeResult.summary, summaryContext);
@@ -2288,6 +2293,7 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
2288
2293
  * @param localOpMetadata - The local metadata associated with the original message.
2289
2294
  */
2290
2295
  reSubmitCore(message, localOpMetadata, opMetadata) {
2296
+ (0, core_utils_1.assert)(!this.isSummarizerClient, "Summarizer never reconnects so should never resubmit");
2291
2297
  switch (message.type) {
2292
2298
  case messageTypes_1.ContainerMessageType.FluidDataStoreOp:
2293
2299
  // For Operations, call resubmitDataStoreOp which will find the right store
@@ -2309,13 +2315,14 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
2309
2315
  this.submit(message);
2310
2316
  break;
2311
2317
  case messageTypes_1.ContainerMessageType.GC:
2312
- // GC op is only sent in summarizer which should never reconnect.
2313
- throw new telemetry_utils_1.LoggingError("GC op not expected to be resubmitted in summarizer");
2318
+ this.submit(message);
2319
+ break;
2314
2320
  default: {
2315
2321
  // This case should be very rare - it would imply an op was stashed from a
2316
- // future version of runtime code and now is being applied on an older version
2322
+ // future version of runtime code and now is being applied on an older version.
2317
2323
  const compatBehavior = message.compatDetails?.behavior;
2318
2324
  if (compatBehaviorAllowsMessageType(message.type, compatBehavior)) {
2325
+ // We do not ultimately resubmit it, to be consistent with this version of the code.
2319
2326
  this.logger.sendTelemetryEvent({
2320
2327
  eventName: "resubmitUnrecognizedMessageTypeAllowed",
2321
2328
  messageDetails: { type: message.type, compatBehavior },
@@ -2362,31 +2369,12 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
2362
2369
  * and then close as the current main client is likely to be re-elected as the parent summarizer again.
2363
2370
  */
2364
2371
  if (!result.isSummaryTracked && result.isSummaryNewer) {
2365
- const fetchResult = await this.fetchLatestSnapshotFromStorage(summaryLogger, {
2372
+ await this.fetchLatestSnapshotFromStorage(summaryLogger, {
2366
2373
  eventName: "RefreshLatestSummaryAckFetch",
2367
2374
  ackHandle,
2368
2375
  targetSequenceNumber: summaryRefSeq,
2369
2376
  }, readAndParseBlob);
2370
- /**
2371
- * If the fetched snapshot is older than the one for which the ack was received, close the container.
2372
- * This should never happen because an ack should be sent after the latest summary is updated in the server.
2373
- * However, there are couple of scenarios where it's possible:
2374
- * 1. A file was modified externally resulting in modifying the snapshot's sequence number. This can lead to
2375
- * the document being unusable and we should not proceed.
2376
- * 2. The server DB failed after the ack was sent which may delete the corresponding snapshot. Ideally, in
2377
- * such cases, the file will be rolled back along with the ack and we will eventually reach a consistent
2378
- * state.
2379
- */
2380
- if (fetchResult.latestSnapshotRefSeq < summaryRefSeq) {
2381
- const error = telemetry_utils_1.DataProcessingError.create("Fetched snapshot is older than the received ack", "RefreshLatestSummaryAck", undefined /* sequencedMessage */, {
2382
- ackHandle,
2383
- summaryRefSeq,
2384
- fetchedSnapshotRefSeq: fetchResult.latestSnapshotRefSeq,
2385
- });
2386
- this.disposeFn(error);
2387
- throw error;
2388
- }
2389
- await this.closeStaleSummarizer("RefreshLatestSummaryAckFetch");
2377
+ await this.closeStaleSummarizer();
2390
2378
  return;
2391
2379
  }
2392
2380
  // Notify the garbage collector so it can update its latest summary state.
@@ -2405,7 +2393,7 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
2405
2393
  await this.fetchLatestSnapshotFromStorage(summaryLogger, {
2406
2394
  eventName: "RefreshLatestSummaryFromServerFetch",
2407
2395
  }, readAndParseBlob);
2408
- await this.closeStaleSummarizer("RefreshLatestSummaryFromServerFetch");
2396
+ await this.closeStaleSummarizer();
2409
2397
  return {
2410
2398
  stage: "base",
2411
2399
  error: "summary state stale - Unsupported option 'refreshLatestAck'",
@@ -2413,7 +2401,7 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
2413
2401
  minimumSequenceNumber: this.deltaManager.minimumSequenceNumber,
2414
2402
  };
2415
2403
  }
2416
- async closeStaleSummarizer(codePath) {
2404
+ async closeStaleSummarizer() {
2417
2405
  // Delay before restarting summarizer to prevent the summarizer from restarting too frequently.
2418
2406
  await (0, core_utils_1.delay)(this.closeSummarizerDelayMs);
2419
2407
  this._summarizer?.stop("latestSummaryStateStale");