@fluidframework/container-runtime 0.52.0-44610 → 0.53.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.
Files changed (103) hide show
  1. package/dist/containerHandleContext.d.ts +0 -1
  2. package/dist/containerHandleContext.d.ts.map +1 -1
  3. package/dist/containerHandleContext.js +0 -1
  4. package/dist/containerHandleContext.js.map +1 -1
  5. package/dist/containerRuntime.d.ts +18 -3
  6. package/dist/containerRuntime.d.ts.map +1 -1
  7. package/dist/containerRuntime.js +84 -42
  8. package/dist/containerRuntime.js.map +1 -1
  9. package/dist/dataStoreContext.d.ts +4 -1
  10. package/dist/dataStoreContext.d.ts.map +1 -1
  11. package/dist/dataStoreContext.js +16 -13
  12. package/dist/dataStoreContext.js.map +1 -1
  13. package/dist/dataStores.d.ts +8 -8
  14. package/dist/dataStores.d.ts.map +1 -1
  15. package/dist/dataStores.js +20 -37
  16. package/dist/dataStores.js.map +1 -1
  17. package/dist/garbageCollection.d.ts +61 -14
  18. package/dist/garbageCollection.d.ts.map +1 -1
  19. package/dist/garbageCollection.js +275 -20
  20. package/dist/garbageCollection.js.map +1 -1
  21. package/dist/index.d.ts +2 -2
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +11 -2
  24. package/dist/index.js.map +1 -1
  25. package/dist/packageVersion.d.ts +1 -1
  26. package/dist/packageVersion.d.ts.map +1 -1
  27. package/dist/packageVersion.js +1 -1
  28. package/dist/packageVersion.js.map +1 -1
  29. package/dist/pendingStateManager.d.ts +0 -1
  30. package/dist/pendingStateManager.d.ts.map +1 -1
  31. package/dist/pendingStateManager.js +0 -36
  32. package/dist/pendingStateManager.js.map +1 -1
  33. package/dist/summarizer.d.ts +1 -3
  34. package/dist/summarizer.d.ts.map +1 -1
  35. package/dist/summarizer.js +0 -12
  36. package/dist/summarizer.js.map +1 -1
  37. package/dist/summarizerTypes.d.ts +2 -2
  38. package/dist/summarizerTypes.d.ts.map +1 -1
  39. package/dist/summarizerTypes.js.map +1 -1
  40. package/dist/summaryFormat.d.ts +9 -1
  41. package/dist/summaryFormat.d.ts.map +1 -1
  42. package/dist/summaryFormat.js.map +1 -1
  43. package/dist/summaryGenerator.d.ts.map +1 -1
  44. package/dist/summaryGenerator.js +1 -3
  45. package/dist/summaryGenerator.js.map +1 -1
  46. package/lib/containerHandleContext.d.ts +0 -1
  47. package/lib/containerHandleContext.d.ts.map +1 -1
  48. package/lib/containerHandleContext.js +0 -1
  49. package/lib/containerHandleContext.js.map +1 -1
  50. package/lib/containerRuntime.d.ts +18 -3
  51. package/lib/containerRuntime.d.ts.map +1 -1
  52. package/lib/containerRuntime.js +84 -43
  53. package/lib/containerRuntime.js.map +1 -1
  54. package/lib/dataStoreContext.d.ts +4 -1
  55. package/lib/dataStoreContext.d.ts.map +1 -1
  56. package/lib/dataStoreContext.js +16 -13
  57. package/lib/dataStoreContext.js.map +1 -1
  58. package/lib/dataStores.d.ts +8 -8
  59. package/lib/dataStores.d.ts.map +1 -1
  60. package/lib/dataStores.js +23 -40
  61. package/lib/dataStores.js.map +1 -1
  62. package/lib/garbageCollection.d.ts +61 -14
  63. package/lib/garbageCollection.d.ts.map +1 -1
  64. package/lib/garbageCollection.js +276 -21
  65. package/lib/garbageCollection.js.map +1 -1
  66. package/lib/index.d.ts +2 -2
  67. package/lib/index.d.ts.map +1 -1
  68. package/lib/index.js +2 -1
  69. package/lib/index.js.map +1 -1
  70. package/lib/packageVersion.d.ts +1 -1
  71. package/lib/packageVersion.d.ts.map +1 -1
  72. package/lib/packageVersion.js +1 -1
  73. package/lib/packageVersion.js.map +1 -1
  74. package/lib/pendingStateManager.d.ts +0 -1
  75. package/lib/pendingStateManager.d.ts.map +1 -1
  76. package/lib/pendingStateManager.js +0 -36
  77. package/lib/pendingStateManager.js.map +1 -1
  78. package/lib/summarizer.d.ts +1 -3
  79. package/lib/summarizer.d.ts.map +1 -1
  80. package/lib/summarizer.js +0 -12
  81. package/lib/summarizer.js.map +1 -1
  82. package/lib/summarizerTypes.d.ts +2 -2
  83. package/lib/summarizerTypes.d.ts.map +1 -1
  84. package/lib/summarizerTypes.js.map +1 -1
  85. package/lib/summaryFormat.d.ts +9 -1
  86. package/lib/summaryFormat.d.ts.map +1 -1
  87. package/lib/summaryFormat.js.map +1 -1
  88. package/lib/summaryGenerator.d.ts.map +1 -1
  89. package/lib/summaryGenerator.js +1 -3
  90. package/lib/summaryGenerator.js.map +1 -1
  91. package/package.json +16 -16
  92. package/src/containerHandleContext.ts +0 -1
  93. package/src/containerRuntime.ts +110 -53
  94. package/src/dataStoreContext.ts +15 -14
  95. package/src/dataStores.ts +32 -50
  96. package/src/garbageCollection.ts +390 -18
  97. package/src/index.ts +20 -2
  98. package/src/packageVersion.ts +1 -1
  99. package/src/pendingStateManager.ts +0 -43
  100. package/src/summarizer.ts +0 -15
  101. package/src/summarizerTypes.ts +1 -2
  102. package/src/summaryFormat.ts +10 -1
  103. package/src/summaryGenerator.ts +2 -3
package/src/summarizer.ts CHANGED
@@ -8,8 +8,6 @@ import { Deferred } from "@fluidframework/common-utils";
8
8
  import { ITelemetryLogger } from "@fluidframework/common-definitions";
9
9
  import { ChildLogger, IFluidErrorBase, LoggingError, wrapErrorAndLog } from "@fluidframework/telemetry-utils";
10
10
  import {
11
- IRequest,
12
- IResponse,
13
11
  IFluidHandleContext,
14
12
  IFluidHandle,
15
13
  } from "@fluidframework/core-interfaces";
@@ -17,7 +15,6 @@ import {
17
15
  ISequencedDocumentMessage,
18
16
  ISummaryConfiguration,
19
17
  } from "@fluidframework/protocol-definitions";
20
- import { create404Response } from "@fluidframework/runtime-utils";
21
18
  import { ICancellableSummarizerController } from "./runWhileConnectedCoordinator";
22
19
  import { SummaryCollection } from "./summaryCollection";
23
20
  import { SummarizerHandle } from "./summarizerHandle";
@@ -63,7 +60,6 @@ export const createSummarizingWarning =
63
60
  */
64
61
  export class Summarizer extends EventEmitter implements ISummarizer {
65
62
  public get IFluidLoadable() { return this; }
66
- public get IFluidRouter() { return this; }
67
63
  public get ISummarizer() { return this; }
68
64
 
69
65
  private readonly logger: ITelemetryLogger;
@@ -121,17 +117,6 @@ export class Summarizer extends EventEmitter implements ISummarizer {
121
117
  this.stopDeferred.resolve(reason);
122
118
  }
123
119
 
124
- public async request(request: IRequest): Promise<IResponse> {
125
- if (request.url === "/" || request.url === "") {
126
- return {
127
- mimeType: "fluid/object",
128
- status: 200,
129
- value: this,
130
- };
131
- }
132
- return create404Response(request);
133
- }
134
-
135
120
  private async runCore(
136
121
  onBehalfOf: string,
137
122
  options?: Readonly<Partial<ISummarizerOptions>>): Promise<SummarizerStopReason> {
@@ -9,7 +9,6 @@ import {
9
9
  ITelemetryLogger,
10
10
  } from "@fluidframework/common-definitions";
11
11
  import {
12
- IFluidRouter,
13
12
  IFluidLoadable,
14
13
  } from "@fluidframework/core-interfaces";
15
14
  import { ContainerWarning, IDeltaManager } from "@fluidframework/container-definitions";
@@ -296,7 +295,7 @@ export interface ISummarizerEvents extends IEvent {
296
295
  }
297
296
 
298
297
  export interface ISummarizer extends
299
- IEventProvider<ISummarizerEvents>, IFluidRouter, IFluidLoadable, Partial<IProvideSummarizer>{
298
+ IEventProvider<ISummarizerEvents>, IFluidLoadable, Partial<IProvideSummarizer>{
300
299
  stop(reason: SummarizerStopReason): void;
301
300
  run(onBehalfOf: string, options?: Readonly<Partial<ISummarizerOptions>>): Promise<SummarizerStopReason>;
302
301
 
@@ -75,7 +75,7 @@ export function hasIsolatedChannels(attributes: ReadFluidDataStoreAttributes): b
75
75
  }
76
76
 
77
77
  export type GCVersion = number;
78
- export interface IContainerRuntimeMetadata {
78
+ export interface IContainerRuntimeMetadata extends ICreateContainerMetadata {
79
79
  readonly summaryFormatVersion: 1;
80
80
  /** The last message processed at the time of summary. Only primitive propertiy types are added to the summary. */
81
81
  readonly message: ISummaryMetadataMessage | undefined;
@@ -83,6 +83,15 @@ export interface IContainerRuntimeMetadata {
83
83
  readonly disableIsolatedChannels?: true;
84
84
  /** 0 to disable GC, > 0 to enable GC, undefined defaults to disabled. */
85
85
  readonly gcFeature?: GCVersion;
86
+ /** Counter of the last summary happened, increments every time we summarize */
87
+ readonly summaryCount?: number;
88
+ }
89
+
90
+ export interface ICreateContainerMetadata {
91
+ /** Runtime version of the container when it was first created */
92
+ createContainerRuntimeVersion?: string;
93
+ /** Timestamp of the container when it was first created */
94
+ createContainerTimestamp?: number;
86
95
  }
87
96
 
88
97
  /** The properties of an ISequencedDocumentMessage to be stored in the metadata blob in summary. */
@@ -346,10 +346,9 @@ export class SummaryGenerator {
346
346
  }});
347
347
  } else {
348
348
  // Check for retryDelay in summaryNack response.
349
- // back-compat: cast needed until dep on protocol-definitions version bump
350
349
  assert(ackNackOp.type === MessageType.SummaryNack, 0x274 /* "type check" */);
351
- const summaryNack = ackNackOp.contents as { message?: string; retryAfter?: number; };
352
- const message = summaryNack.message ?? ackNackOp.contents.errorMessage;
350
+ const summaryNack = ackNackOp.contents;
351
+ const message = summaryNack?.message;
353
352
  const retryAfterSeconds = summaryNack?.retryAfter;
354
353
 
355
354
  const error = new LoggingError(`summaryNack: ${message}`, { retryAfterSeconds });