@fluidframework/container-runtime 2.63.0-359734 → 2.63.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/CHANGELOG.md +4 -0
- package/api-report/container-runtime.legacy.beta.api.md +7 -1
- package/container-runtime.test-files.tar +0 -0
- package/dist/blobManager/blobManager.d.ts +62 -55
- package/dist/blobManager/blobManager.d.ts.map +1 -1
- package/dist/blobManager/blobManager.js +330 -308
- package/dist/blobManager/blobManager.js.map +1 -1
- package/dist/containerRuntime.d.ts.map +1 -1
- package/dist/containerRuntime.js +11 -9
- package/dist/containerRuntime.js.map +1 -1
- 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 +1 -0
- package/dist/packageVersion.d.ts +1 -1
- package/dist/packageVersion.d.ts.map +1 -1
- package/dist/packageVersion.js +1 -1
- package/dist/packageVersion.js.map +1 -1
- package/dist/summary/index.d.ts +2 -2
- package/dist/summary/index.d.ts.map +1 -1
- package/dist/summary/index.js +2 -1
- package/dist/summary/index.js.map +1 -1
- package/dist/summary/summarizerTypes.d.ts +8 -1
- package/dist/summary/summarizerTypes.d.ts.map +1 -1
- package/dist/summary/summarizerTypes.js.map +1 -1
- package/dist/summary/summaryDelayLoadedModule/runningSummarizer.d.ts.map +1 -1
- package/dist/summary/summaryDelayLoadedModule/runningSummarizer.js +4 -3
- package/dist/summary/summaryDelayLoadedModule/runningSummarizer.js.map +1 -1
- package/dist/summary/summaryHelpers.d.ts +3 -0
- package/dist/summary/summaryHelpers.d.ts.map +1 -1
- package/dist/summary/summaryHelpers.js +5 -1
- package/dist/summary/summaryHelpers.js.map +1 -1
- package/lib/blobManager/blobManager.d.ts +62 -55
- package/lib/blobManager/blobManager.d.ts.map +1 -1
- package/lib/blobManager/blobManager.js +334 -312
- package/lib/blobManager/blobManager.js.map +1 -1
- package/lib/containerRuntime.d.ts.map +1 -1
- package/lib/containerRuntime.js +12 -10
- package/lib/containerRuntime.js.map +1 -1
- 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 +1 -0
- package/lib/packageVersion.d.ts +1 -1
- package/lib/packageVersion.d.ts.map +1 -1
- package/lib/packageVersion.js +1 -1
- package/lib/packageVersion.js.map +1 -1
- package/lib/summary/index.d.ts +2 -2
- package/lib/summary/index.d.ts.map +1 -1
- package/lib/summary/index.js +1 -1
- package/lib/summary/index.js.map +1 -1
- package/lib/summary/summarizerTypes.d.ts +8 -1
- package/lib/summary/summarizerTypes.d.ts.map +1 -1
- package/lib/summary/summarizerTypes.js.map +1 -1
- package/lib/summary/summaryDelayLoadedModule/runningSummarizer.d.ts.map +1 -1
- package/lib/summary/summaryDelayLoadedModule/runningSummarizer.js +4 -3
- package/lib/summary/summaryDelayLoadedModule/runningSummarizer.js.map +1 -1
- package/lib/summary/summaryHelpers.d.ts +3 -0
- package/lib/summary/summaryHelpers.d.ts.map +1 -1
- package/lib/summary/summaryHelpers.js +3 -0
- package/lib/summary/summaryHelpers.js.map +1 -1
- package/package.json +37 -18
- package/src/blobManager/blobManager.ts +428 -352
- package/src/containerRuntime.ts +33 -27
- package/src/index.ts +1 -0
- package/src/packageVersion.ts +1 -1
- package/src/summary/index.ts +2 -0
- package/src/summary/summarizerTypes.ts +10 -1
- package/src/summary/summaryDelayLoadedModule/runningSummarizer.ts +4 -6
- package/src/summary/summaryHelpers.ts +4 -0
package/src/containerRuntime.ts
CHANGED
|
@@ -282,6 +282,7 @@ import {
|
|
|
282
282
|
type IRootSummarizerNodeWithGC,
|
|
283
283
|
type ISerializedElection,
|
|
284
284
|
isSummariesDisabled,
|
|
285
|
+
isSummaryOnRequest,
|
|
285
286
|
type ISubmitSummaryOptions,
|
|
286
287
|
type ISummarizeResults,
|
|
287
288
|
type ISummarizerInternalsProvider,
|
|
@@ -1935,7 +1936,7 @@ export class ContainerRuntime
|
|
|
1935
1936
|
}),
|
|
1936
1937
|
isBlobDeleted: (blobPath: string) => this.garbageCollector.isNodeDeleted(blobPath),
|
|
1937
1938
|
runtime: this,
|
|
1938
|
-
|
|
1939
|
+
pendingBlobs: pendingRuntimeState?.pendingAttachmentBlobs,
|
|
1939
1940
|
createBlobPayloadPending: this.sessionSchema.createBlobPayloadPending === true,
|
|
1940
1941
|
});
|
|
1941
1942
|
|
|
@@ -2180,31 +2181,7 @@ export class ContainerRuntime
|
|
|
2180
2181
|
this.deltaManager,
|
|
2181
2182
|
this.baseLogger,
|
|
2182
2183
|
);
|
|
2183
|
-
const
|
|
2184
|
-
logger: this.baseLogger,
|
|
2185
|
-
namespace: "OrderedClientElection",
|
|
2186
|
-
});
|
|
2187
|
-
const orderedClientCollection = new OrderedClientCollection(
|
|
2188
|
-
orderedClientLogger,
|
|
2189
|
-
this.innerDeltaManager,
|
|
2190
|
-
this._quorum,
|
|
2191
|
-
);
|
|
2192
|
-
const orderedClientElectionForSummarizer = new OrderedClientElection(
|
|
2193
|
-
orderedClientLogger,
|
|
2194
|
-
orderedClientCollection,
|
|
2195
|
-
this.electedSummarizerData ?? this.innerDeltaManager.lastSequenceNumber,
|
|
2196
|
-
SummarizerClientElection.isClientEligible,
|
|
2197
|
-
this.mc.config.getBoolean(
|
|
2198
|
-
"Fluid.ContainerRuntime.OrderedClientElection.EnablePerformanceEvents",
|
|
2199
|
-
),
|
|
2200
|
-
);
|
|
2201
|
-
|
|
2202
|
-
this.summarizerClientElection = new SummarizerClientElection(
|
|
2203
|
-
orderedClientLogger,
|
|
2204
|
-
summaryCollection,
|
|
2205
|
-
orderedClientElectionForSummarizer,
|
|
2206
|
-
maxOpsSinceLastSummary,
|
|
2207
|
-
);
|
|
2184
|
+
const onRequestMode = isSummaryOnRequest(this.summaryConfiguration);
|
|
2208
2185
|
|
|
2209
2186
|
if (this.isSummarizerClient) {
|
|
2210
2187
|
// We want to dynamically import any thing inside summaryDelayLoadedModule module only when we are the summarizer client,
|
|
@@ -2227,9 +2204,38 @@ export class ContainerRuntime
|
|
|
2227
2204
|
() => this.innerDeltaManager.active,
|
|
2228
2205
|
),
|
|
2229
2206
|
);
|
|
2230
|
-
} else if (
|
|
2207
|
+
} else if (
|
|
2208
|
+
!onRequestMode &&
|
|
2209
|
+
SummarizerClientElection.clientDetailsPermitElection(this.clientDetails)
|
|
2210
|
+
) {
|
|
2231
2211
|
// Only create a SummaryManager and SummarizerClientElection
|
|
2232
2212
|
// if summaries are enabled and we are not the summarizer client.
|
|
2213
|
+
const orderedClientLogger = createChildLogger({
|
|
2214
|
+
logger: this.baseLogger,
|
|
2215
|
+
namespace: "OrderedClientElection",
|
|
2216
|
+
});
|
|
2217
|
+
const orderedClientCollection = new OrderedClientCollection(
|
|
2218
|
+
orderedClientLogger,
|
|
2219
|
+
this.innerDeltaManager,
|
|
2220
|
+
this._quorum,
|
|
2221
|
+
);
|
|
2222
|
+
const orderedClientElectionForSummarizer = new OrderedClientElection(
|
|
2223
|
+
orderedClientLogger,
|
|
2224
|
+
orderedClientCollection,
|
|
2225
|
+
this.electedSummarizerData ?? this.innerDeltaManager.lastSequenceNumber,
|
|
2226
|
+
SummarizerClientElection.isClientEligible,
|
|
2227
|
+
this.mc.config.getBoolean(
|
|
2228
|
+
"Fluid.ContainerRuntime.OrderedClientElection.EnablePerformanceEvents",
|
|
2229
|
+
),
|
|
2230
|
+
);
|
|
2231
|
+
|
|
2232
|
+
this.summarizerClientElection = new SummarizerClientElection(
|
|
2233
|
+
orderedClientLogger,
|
|
2234
|
+
summaryCollection,
|
|
2235
|
+
orderedClientElectionForSummarizer,
|
|
2236
|
+
maxOpsSinceLastSummary,
|
|
2237
|
+
);
|
|
2238
|
+
|
|
2233
2239
|
const defaultAction = (): void => {
|
|
2234
2240
|
if (summaryCollection.opsSinceLastAck > maxOpsSinceLastSummary) {
|
|
2235
2241
|
this.mc.logger.sendTelemetryEvent({ eventName: "SummaryStatus:Behind" });
|
package/src/index.ts
CHANGED
|
@@ -113,6 +113,7 @@ export {
|
|
|
113
113
|
type ISummaryConfigurationHeuristics,
|
|
114
114
|
type ISummaryConfigurationDisableSummarizer,
|
|
115
115
|
type ISummaryConfigurationDisableHeuristics,
|
|
116
|
+
type ISummaryConfigurationWithSummaryOnRequest,
|
|
116
117
|
type ISummaryConfiguration,
|
|
117
118
|
DefaultSummaryConfiguration,
|
|
118
119
|
} from "./summary/index.js";
|
package/src/packageVersion.ts
CHANGED
package/src/summary/index.ts
CHANGED
|
@@ -40,6 +40,7 @@ export {
|
|
|
40
40
|
type ISummaryConfigurationDisableHeuristics,
|
|
41
41
|
type ISummaryConfigurationDisableSummarizer,
|
|
42
42
|
type ISummaryConfigurationHeuristics,
|
|
43
|
+
type ISummaryConfigurationWithSummaryOnRequest,
|
|
43
44
|
type ISummaryBaseConfiguration,
|
|
44
45
|
} from "./summarizerTypes.js";
|
|
45
46
|
export {
|
|
@@ -98,6 +99,7 @@ export {
|
|
|
98
99
|
summarizerRequestUrl,
|
|
99
100
|
DefaultSummaryConfiguration,
|
|
100
101
|
isSummariesDisabled,
|
|
102
|
+
isSummaryOnRequest,
|
|
101
103
|
} from "./summaryHelpers.js";
|
|
102
104
|
export {
|
|
103
105
|
type IdCompressorMode,
|
|
@@ -759,10 +759,19 @@ export interface ISummaryConfigurationDisableHeuristics extends ISummaryBaseConf
|
|
|
759
759
|
state: "disableHeuristics";
|
|
760
760
|
}
|
|
761
761
|
|
|
762
|
+
/**
|
|
763
|
+
* Configuration used internally to indicate on-demand summaries only (no election/heuristics).
|
|
764
|
+
* @legacy @beta
|
|
765
|
+
*/
|
|
766
|
+
export interface ISummaryConfigurationWithSummaryOnRequest extends ISummaryBaseConfiguration {
|
|
767
|
+
state: "summaryOnRequest";
|
|
768
|
+
}
|
|
769
|
+
|
|
762
770
|
/**
|
|
763
771
|
* @legacy @beta
|
|
764
772
|
*/
|
|
765
773
|
export type ISummaryConfiguration =
|
|
766
774
|
| ISummaryConfigurationDisableSummarizer
|
|
767
775
|
| ISummaryConfigurationDisableHeuristics
|
|
768
|
-
| ISummaryConfigurationHeuristics
|
|
776
|
+
| ISummaryConfigurationHeuristics
|
|
777
|
+
| ISummaryConfigurationWithSummaryOnRequest;
|
|
@@ -227,14 +227,12 @@ export class RunningSummarizer
|
|
|
227
227
|
},
|
|
228
228
|
});
|
|
229
229
|
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
0x2ea /* "Configuration state should be enabled" */,
|
|
234
|
-
);
|
|
230
|
+
// Only create heuristics when in 'enabled' mode.
|
|
231
|
+
// This bypasses heuristics for 'disableHeuristics' and 'summaryOnRequest' configurations.
|
|
232
|
+
if (configuration.state === "enabled") {
|
|
235
233
|
this.heuristicRunner = new SummarizeHeuristicRunner(
|
|
236
234
|
heuristicData,
|
|
237
|
-
|
|
235
|
+
configuration,
|
|
238
236
|
(reason) => this.trySummarize(reason),
|
|
239
237
|
this.mc.logger,
|
|
240
238
|
);
|