@fluidframework/container-runtime 2.0.0-dev.2.2.0.111723 → 2.0.0-dev.2.3.0.115467
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/dist/blobManager.d.ts +20 -5
- package/dist/blobManager.d.ts.map +1 -1
- package/dist/blobManager.js +57 -15
- package/dist/blobManager.js.map +1 -1
- package/dist/containerRuntime.d.ts +16 -33
- package/dist/containerRuntime.d.ts.map +1 -1
- package/dist/containerRuntime.js +71 -219
- package/dist/containerRuntime.js.map +1 -1
- package/dist/dataStoreContext.js +2 -2
- package/dist/dataStoreContext.js.map +1 -1
- package/dist/dataStores.d.ts.map +1 -1
- package/dist/dataStores.js +2 -1
- package/dist/dataStores.js.map +1 -1
- package/dist/garbageCollection.d.ts +7 -16
- package/dist/garbageCollection.d.ts.map +1 -1
- package/dist/garbageCollection.js +41 -61
- package/dist/garbageCollection.js.map +1 -1
- package/dist/garbageCollectionConstants.d.ts +19 -0
- package/dist/garbageCollectionConstants.d.ts.map +1 -0
- package/dist/garbageCollectionConstants.js +34 -0
- package/dist/garbageCollectionConstants.js.map +1 -0
- package/dist/gcSweepReadyUsageDetection.js +2 -2
- package/dist/gcSweepReadyUsageDetection.js.map +1 -1
- package/dist/index.d.ts +4 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -6
- package/dist/index.js.map +1 -1
- package/dist/opLifecycle/batchManager.d.ts +30 -0
- package/dist/opLifecycle/batchManager.d.ts.map +1 -0
- package/dist/{batchManager.js → opLifecycle/batchManager.js} +17 -17
- package/dist/opLifecycle/batchManager.js.map +1 -0
- package/dist/opLifecycle/definitions.d.ts +40 -0
- package/dist/opLifecycle/definitions.d.ts.map +1 -0
- package/dist/opLifecycle/definitions.js +7 -0
- package/dist/opLifecycle/definitions.js.map +1 -0
- package/dist/opLifecycle/index.d.ts +12 -0
- package/dist/opLifecycle/index.d.ts.map +1 -0
- package/dist/opLifecycle/index.js +21 -0
- package/dist/opLifecycle/index.js.map +1 -0
- package/dist/{opCompressor.d.ts → opLifecycle/opCompressor.d.ts} +2 -2
- package/dist/opLifecycle/opCompressor.d.ts.map +1 -0
- package/dist/{opCompressor.js → opLifecycle/opCompressor.js} +16 -13
- package/dist/opLifecycle/opCompressor.js.map +1 -0
- package/dist/{opDecompressor.d.ts → opLifecycle/opDecompressor.d.ts} +0 -0
- package/dist/opLifecycle/opDecompressor.d.ts.map +1 -0
- package/dist/{opDecompressor.js → opLifecycle/opDecompressor.js} +5 -5
- package/dist/opLifecycle/opDecompressor.js.map +1 -0
- package/dist/opLifecycle/opSplitter.d.ts +17 -0
- package/dist/opLifecycle/opSplitter.d.ts.map +1 -0
- package/dist/opLifecycle/opSplitter.js +61 -0
- package/dist/opLifecycle/opSplitter.js.map +1 -0
- package/dist/opLifecycle/outbox.d.ts +47 -0
- package/dist/opLifecycle/outbox.d.ts.map +1 -0
- package/dist/opLifecycle/outbox.js +153 -0
- package/dist/opLifecycle/outbox.js.map +1 -0
- package/dist/opLifecycle/remoteMessageProcessor.d.ts +26 -0
- package/dist/opLifecycle/remoteMessageProcessor.d.ts.map +1 -0
- package/dist/opLifecycle/remoteMessageProcessor.js +81 -0
- package/dist/opLifecycle/remoteMessageProcessor.js.map +1 -0
- package/dist/packageVersion.d.ts +1 -1
- package/dist/packageVersion.js +1 -1
- package/dist/packageVersion.js.map +1 -1
- package/dist/summaryFormat.js +2 -2
- package/dist/summaryFormat.js.map +1 -1
- package/lib/blobManager.d.ts +20 -5
- package/lib/blobManager.d.ts.map +1 -1
- package/lib/blobManager.js +59 -17
- package/lib/blobManager.js.map +1 -1
- package/lib/containerRuntime.d.ts +16 -33
- package/lib/containerRuntime.d.ts.map +1 -1
- package/lib/containerRuntime.js +68 -215
- package/lib/containerRuntime.js.map +1 -1
- package/lib/dataStoreContext.js +1 -1
- package/lib/dataStoreContext.js.map +1 -1
- package/lib/dataStores.d.ts.map +1 -1
- package/lib/dataStores.js +2 -1
- package/lib/dataStores.js.map +1 -1
- package/lib/garbageCollection.d.ts +7 -16
- package/lib/garbageCollection.d.ts.map +1 -1
- package/lib/garbageCollection.js +19 -39
- package/lib/garbageCollection.js.map +1 -1
- package/lib/garbageCollectionConstants.d.ts +19 -0
- package/lib/garbageCollectionConstants.d.ts.map +1 -0
- package/lib/garbageCollectionConstants.js +31 -0
- package/lib/garbageCollectionConstants.js.map +1 -0
- package/lib/gcSweepReadyUsageDetection.js +1 -1
- package/lib/gcSweepReadyUsageDetection.js.map +1 -1
- package/lib/index.d.ts +4 -2
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +3 -2
- package/lib/index.js.map +1 -1
- package/lib/opLifecycle/batchManager.d.ts +30 -0
- package/lib/opLifecycle/batchManager.d.ts.map +1 -0
- package/lib/{batchManager.js → opLifecycle/batchManager.js} +17 -17
- package/lib/opLifecycle/batchManager.js.map +1 -0
- package/lib/opLifecycle/definitions.d.ts +40 -0
- package/lib/opLifecycle/definitions.d.ts.map +1 -0
- package/lib/opLifecycle/definitions.js +6 -0
- package/lib/opLifecycle/definitions.js.map +1 -0
- package/lib/opLifecycle/index.d.ts +12 -0
- package/lib/opLifecycle/index.d.ts.map +1 -0
- package/lib/opLifecycle/index.js +11 -0
- package/lib/opLifecycle/index.js.map +1 -0
- package/lib/{opCompressor.d.ts → opLifecycle/opCompressor.d.ts} +2 -2
- package/lib/opLifecycle/opCompressor.d.ts.map +1 -0
- package/lib/{opCompressor.js → opLifecycle/opCompressor.js} +16 -13
- package/lib/opLifecycle/opCompressor.js.map +1 -0
- package/lib/{opDecompressor.d.ts → opLifecycle/opDecompressor.d.ts} +0 -0
- package/lib/opLifecycle/opDecompressor.d.ts.map +1 -0
- package/lib/{opDecompressor.js → opLifecycle/opDecompressor.js} +4 -4
- package/lib/opLifecycle/opDecompressor.js.map +1 -0
- package/lib/opLifecycle/opSplitter.d.ts +17 -0
- package/lib/opLifecycle/opSplitter.d.ts.map +1 -0
- package/lib/opLifecycle/opSplitter.js +57 -0
- package/lib/opLifecycle/opSplitter.js.map +1 -0
- package/lib/opLifecycle/outbox.d.ts +47 -0
- package/lib/opLifecycle/outbox.d.ts.map +1 -0
- package/lib/opLifecycle/outbox.js +149 -0
- package/lib/opLifecycle/outbox.js.map +1 -0
- package/lib/opLifecycle/remoteMessageProcessor.d.ts +26 -0
- package/lib/opLifecycle/remoteMessageProcessor.d.ts.map +1 -0
- package/lib/opLifecycle/remoteMessageProcessor.js +76 -0
- package/lib/opLifecycle/remoteMessageProcessor.js.map +1 -0
- package/lib/packageVersion.d.ts +1 -1
- package/lib/packageVersion.js +1 -1
- package/lib/packageVersion.js.map +1 -1
- package/lib/summaryFormat.js +1 -1
- package/lib/summaryFormat.js.map +1 -1
- package/package.json +21 -34
- package/src/blobManager.ts +74 -19
- package/src/containerRuntime.ts +91 -278
- package/src/dataStoreContext.ts +1 -1
- package/src/dataStores.ts +2 -1
- package/src/garbageCollection.ts +33 -43
- package/src/garbageCollectionConstants.ts +35 -0
- package/src/gcSweepReadyUsageDetection.ts +1 -1
- package/src/index.ts +5 -4
- package/src/{batchManager.ts → opLifecycle/batchManager.ts} +30 -33
- package/src/opLifecycle/definitions.ts +44 -0
- package/src/opLifecycle/index.ts +17 -0
- package/src/{opCompressor.ts → opLifecycle/opCompressor.ts} +21 -16
- package/src/{opDecompressor.ts → opLifecycle/opDecompressor.ts} +8 -6
- package/src/opLifecycle/opSplitter.ts +78 -0
- package/src/opLifecycle/outbox.ts +204 -0
- package/src/opLifecycle/remoteMessageProcessor.ts +90 -0
- package/src/packageVersion.ts +1 -1
- package/src/summaryFormat.ts +1 -1
- package/dist/batchManager.d.ts +0 -42
- package/dist/batchManager.d.ts.map +0 -1
- package/dist/batchManager.js.map +0 -1
- package/dist/opCompressor.d.ts.map +0 -1
- package/dist/opCompressor.js.map +0 -1
- package/dist/opDecompressor.d.ts.map +0 -1
- package/dist/opDecompressor.js.map +0 -1
- package/lib/batchManager.d.ts +0 -42
- package/lib/batchManager.d.ts.map +0 -1
- package/lib/batchManager.js.map +0 -1
- package/lib/opCompressor.d.ts.map +0 -1
- package/lib/opCompressor.js.map +0 -1
- package/lib/opDecompressor.d.ts.map +0 -1
- package/lib/opDecompressor.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"containerRuntime.d.ts","sourceRoot":"","sources":["../src/containerRuntime.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAgD,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACpH,OAAO,EACH,WAAW,EACX,YAAY,EACZ,mBAAmB,EACnB,YAAY,EACZ,QAAQ,EACR,SAAS,EACZ,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACH,SAAS,EACT,mBAAmB,EACnB,iBAAiB,EACjB,aAAa,EAEb,QAAQ,EACR,uBAAuB,EACvB,WAAW,EACX,cAAc,EAEd,6BAA6B,EAEhC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACH,iBAAiB,EACjB,uBAAuB,EAC1B,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAGH,iBAAiB,EAEpB,MAAM,8BAA8B,CAAC;AAUtC,OAAO,EAGH,uBAAuB,EAE1B,MAAM,oCAAoC,CAAC;AAQ5C,OAAO,EACH,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,yBAAyB,EACzB,cAAc,EAGd,YAAY,EACZ,WAAW,EAEd,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACH,SAAS,EAET,8BAA8B,EAC9B,uBAAuB,EAEvB,sBAAsB,EAKtB,kCAAkC,EAClC,qBAAqB,EAMrB,UAAU,EACV,iBAAiB,EACpB,MAAM,qCAAqC,CAAC;AA8B7C,OAAO,EAAgB,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAmB5D,OAAO,EACH,mBAAmB,EAGnB,qBAAqB,EACrB,WAAW,EACX,4BAA4B,EAC5B,kBAAkB,EAClB,kBAAkB,EAClB,yBAAyB,EAC5B,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAEH,UAAU,EAEV,yBAAyB,EAEzB,QAAQ,EACX,MAAM,qBAAqB,CAAC;AAW7B,oBAAY,oBAAoB;IAE5B,gBAAgB,cAAc;IAG9B,MAAM,WAAW;IAGjB,SAAS,cAAc;IAGvB,UAAU,eAAe;IAGzB,MAAM,WAAW;IAGjB,KAAK,UAAU;CAClB;AAED,MAAM,WAAW,UAAU;IACvB,OAAO,EAAE,MAAM,CAAC;IAEhB,WAAW,EAAE,MAAM,CAAC;IAEpB,QAAQ,EAAE,MAAM,CAAC;IAEjB,YAAY,EAAE,WAAW,GAAG,oBAAoB,CAAC;CACpD;AAED,MAAM,WAAW,uBAAuB;IACpC,QAAQ,EAAE,GAAG,CAAC;IACd,IAAI,EAAE,oBAAoB,CAAC;CAC9B;AAED,MAAM,WAAW,yBAAyB;IACtC;;OAEG;IACH,wBAAwB,EAAE,MAAM,CAAC;IAEjC;;;;OAIG;IACH,wBAAwB,EAAE,OAAO,CAAC;IAElC;;;;OAIG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,sBAAsB,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,+BAAgC,SAAQ,yBAAyB;IAC9E,KAAK,EAAE,SAAS,CAAC;IACjB;;;;;OAKG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,2BAA2B,EAAE,MAAM,CAAC;IACpC;;;;;;OAMG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;;OAMG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,eAAe,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAE3B;;;;;;;;OAQG;IACH,4BAA4B,CAAC,EAAE,MAAM,CAAC;CACzC;AAED,MAAM,WAAW,sCAAsC;IACnD,KAAK,EAAE,UAAU,CAAC;CACrB;AAED,MAAM,WAAW,sCAAuC,SAAQ,yBAAyB;IACrF,KAAK,EAAE,mBAAmB,CAAC;CAC9B;AAED,oBAAY,qBAAqB,GAC3B,sCAAsC,GACtC,sCAAsC,GACtC,+BAA+B,CAAC;AAEtC,eAAO,MAAM,2BAA2B,EAAE,qBA0BzC,CAAC;AAEF,MAAM,WAAW,iBAAiB;IAC9B;;;;;;;;;OASG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC;;OAEG;IACH,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED,MAAM,WAAW,sBAAsB;IAEnC,yDAAyD;IACzD,sBAAsB,CAAC,EAAE,qBAAqB,CAAC;IAE/C;;;;;OAKG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAElC;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;;;OAKG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC;;;;;;;OAOG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAEnC;;;;;SAKK;IACL,iBAAiB,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC;CAC7D;AAED;;;GAGG;AACH,MAAM,WAAW,0BAA0B;IACvC;;OAEG;IACH,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;IAEzC;;OAEG;IACH,QAAQ,CAAC,oBAAoB,EAAE,qBAAqB,CAAC;CACxD;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACrC,QAAQ,CAAC,cAAc,CAAC,EAAE,sBAAsB,CAAC;IACjD,QAAQ,CAAC,SAAS,CAAC,EAAE,iBAAiB,CAAC;IACvC;;;;;;;OAOG;IACH,QAAQ,CAAC,8BAA8B,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAC;IACrE;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;IAC/B;;OAEG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IACrC;;;OAGG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,0BAA0B,CAAC;IACzD;;;;;;;;;OASG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,yBAA0B,SAAQ,qBAAqB;IACpE,mEAAmE;IACnE,OAAO,CAAC,EAAE,QAAQ,CAAC;CACtB;AAED;;GAEG;AACH,oBAAY,cAAc;IACtB,kFAAkF;IAClF,IAAI,SAAS;IACb;;;OAGG;IACH,eAAe,oBAAoB;IACnC,0DAA0D;IAC1D,SAAS,cAAc;CAC1B;AAED;;GAEG;AACH,oBAAY,qBAAqB;IAC7B,GAAG,QAAQ;CACd;AAsDD;;GAEG;AACH,oBAAY,cAAc;IACtB,gBAAgB,cAAc;IAC9B,MAAM,WAAW;IACjB,SAAS,cAAc;IACvB,UAAU,eAAe;IACzB,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,SAAS,OAAO;CACnB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAE5E;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,yBAAyB,WAmBtE;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,eAAe,CAAC;AAG7C,wBAAgB,aAAa;;;;;;EAW5B;AAED;;;GAGG;AACH,qBAAa,gBAAiB,SAAQ,iBAAiB,CAAC,uBAAuB,CAC3E,YACA,iBAAiB,EACjB,yBAAyB,EACzB,QAAQ,EACR,kBAAkB,EAClB,4BAA4B;IA8VxB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAKzB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,cAAc;aACf,MAAM,EAAE,gBAAgB;IAGxC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC;IAChC,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IA1WzC,IAAW,iBAAiB,SAAmB;IAC/C,IAAW,YAAY,SAAmB;IAE1C;;;;;;;OAOG;WACiB,IAAI,CACpB,OAAO,EAAE,iBAAiB,EAC1B,eAAe,EAAE,kCAAkC,EACnD,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,KAAK,OAAO,CAAC,SAAS,CAAC,EACtF,cAAc,GAAE,wBAA6B,EAC7C,cAAc,GAAE,WAA2B,EAC3C,QAAQ,CAAC,EAAE,OAAO,GACnB,OAAO,CAAC,gBAAgB,CAAC;IAuH5B,IAAW,OAAO,IAAI,cAAc,CAEnC;IAED,IAAW,QAAQ,IAAI,MAAM,GAAG,SAAS,CAExC;IAED,IAAW,aAAa,IAAI,cAAc,CAEzC;IAED,IAAW,YAAY,IAAI,aAAa,CAAC,yBAAyB,EAAE,gBAAgB,CAAC,CAEpF;IAED,IAAW,OAAO,IAAI,uBAAuB,CAE5C;IAED,IAAW,UAAU,IAAI,CACrB,IAAI,EAAE,oBAAoB,EAC1B,OAAO,EAAE,GAAG,EACZ,eAAe,EAAE,OAAO,EACxB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,KAC9C,IAAI,CAGR;IAED,IAAW,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,uBAAuB,KAAK,IAAI,CAE9D;IAED,IAAW,SAAS,IAAI,SAAS,CAEhC;IAED,IAAW,KAAK,IAAI,WAAW,CAE9B;IAED,IAAW,uBAAuB,IAAI,uBAAuB,CAE5D;IAED,IAAW,WAAW,IAAI,WAAW,CAEpC;IAED,IAAW,mBAAmB,IAAI,mBAAmB,CAEpD;IACD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA8B;IAG5D,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAoB;IAEvC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwC;IAEvE,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAA2B;IACrE;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAiB;IACjD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IAEtD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA4B;IAE3D,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAS;IAClD,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAAK;IAErD,OAAO,CAAC,uBAAuB,CAAa;IAC5C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAY;IACvC,OAAO,CAAC,oBAAoB,CAAS;IAErC,OAAO,CAAC,UAAU,CAAU;IAE5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmC;IAC5D,OAAO,CAAC,iBAAiB,CAAC,CAA+B;IAEzD,OAAO,CAAC,qBAAqB,CAAK;IAElC;;;OAGG;IACH,OAAO,CAAC,oBAAoB,CAAC,CAAS;IAEtC,IAAW,SAAS,IAAI,OAAO,CAE9B;IAED,oFAAoF;IACpF,IAAW,kBAAkB,IAAI,MAAM,GAAG,SAAS,CAElD;IAED,OAAO,CAAC,SAAS,CAAS;IAC1B,IAAW,QAAQ,YAA6B;IAEhD,OAAO,CAAC,cAAc,CAAU;IAChC,OAAO,CAAC,sBAAsB,CAAQ;IAEtC,OAAO,CAAC,QAAQ,CAAC,iCAAiC,CAAO;IACzD,OAAO,CAAC,eAAe,CAKrB;IAEF;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAa;IAC1C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAe;IAC3C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAClD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAsB;IAC1D,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAe;IAClD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAE5C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAoB;IAGrD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwB;IAEjD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IAExC,kEAAkE;IAClE,OAAO,CAAC,oBAAoB,CAAsC;IAElE,OAAO,KAAK,UAAU,GAErB;IAED,OAAO,KAAK,UAAU,GAGrB;IAED,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAU;IAC5C,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAU;IAC7C,OAAO,CAAC,oBAAoB;IAS5B,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAAU;IAC1D,OAAO,CAAC,iCAAiC;IAazC,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAS;IAChD,OAAO,CAAC,yBAAyB;IAWjC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAS;IAClD,OAAO,CAAC,2BAA2B;IAWnC,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAA2B;IACnE;;;OAGG;IACH,OAAO,CAAC,iBAAiB,CAAS;IAElC,OAAO;IA2UP;;OAEG;YACW,mBAAmB;IAK1B,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI;IAwBnC,IAAW,mBAAmB,oCAQ7B;IAED;;;OAGG;IACU,OAAO,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC;IAyB3D;;;OAGG;IACU,aAAa,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC;IAiCjE,OAAO,CAAC,UAAU;YAIJ,uBAAuB;IA4CrC,+DAA+D;IAC/D,OAAO,CAAC,oBAAoB;IAc5B,OAAO,CAAC,0BAA0B;IAyClC,OAAO,CAAC,0BAA0B;IA2BlC,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,mBAAmB;YA8Bb,cAAc;IAkBrB,kBAAkB,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM;IAgC/D,OAAO,CAAC,sBAAsB;IAiDvB,OAAO,CAAC,UAAU,EAAE,yBAAyB,EAAE,KAAK,EAAE,OAAO;IAuFpE,OAAO,CAAC,mBAAmB;IAQ3B;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAYzB,aAAa,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO;IAqC/C,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,UAAO,GAAG,OAAO,CAAC,YAAY,CAAC;YAI/D,uBAAuB;IAQrC;;;OAGG;IACH,OAAO,CAAC,KAAK;IAUb,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,IAAI;IAyE1C,iBAAiB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IA6CvC,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;IAUlE,2BAA2B,CAC9B,GAAG,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,EACvB,eAAe,EAAE,MAAM,GAAG,8BAA8B;IAOrD,uBAAuB,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,8BAA8B;IAI1E,yBAAyB,CAClC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EACtB,KAAK,CAAC,EAAE,GAAG,EACX,EAAE,SAAS,GACZ,OAAO,CAAC,UAAU,CAAC;YAMR,gBAAgB;IAU9B,OAAO,CAAC,UAAU;IAIlB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAIlB,SAAS,IAAI,cAAc;IAI3B,WAAW,IAAI,SAAS;IAK/B;;;OAGG;IACH,IAAW,OAAO,IAAI,OAAO,CAE5B;IAED,OAAO,CAAC,2BAA2B;IAiBnC,OAAO,CAAC,uBAAuB;IAkB/B;;;;OAIG;IACI,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG;IAMvC,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG;IAKjE,cAAc,CAAC,WAAW,EAAE,WAAW,CAAC,SAAS,GAAG,WAAW,CAAC,QAAQ,GAAG,IAAI;IAgBtF;;;;;;;OAOG;IACI,aAAa,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,gBAAgB,CAAC,EAAE,iBAAiB,GAAG,YAAY;IAkBpG,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;YAU/D,iBAAiB;IAmB/B;;OAEG;IACU,SAAS,CAAC,OAAO,EAAE;QAC5B,2FAA2F;QAC3F,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,wFAAwF;QACxF,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,kDAAkD;QAClD,aAAa,CAAC,EAAE,gBAAgB,CAAC;QACjC,0EAA0E;QAC1E,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,oCAAoC;QACpC,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,sDAAsD;QACtD,QAAQ,CAAC,EAAE,OAAO,CAAC;KACtB,GAAG,OAAO,CAAC,yBAAyB,CAAC;IA4BtC;;;;;OAKG;IACU,mBAAmB;IAIhC;;;;OAIG;IACU,SAAS,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAUzE;;;;OAIG;IACI,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE;IAgB5C;;;;;;OAMG;IACI,kBAAkB,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,OAAO;IAkBpE;;OAEG;IACI,8BAA8B,IAAI,MAAM,GAAG,SAAS;IAM3D;;;OAGG;IACI,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU;IAOhD;;;OAGG;IACU,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;IAY3F;;OAEG;IACH,OAAO,CAAC,UAAU;IAQlB;;;OAGG;IACU,cAAc,CACvB,OAAO,EAAE;QACL,0CAA0C;QAC1C,MAAM,CAAC,EAAE,gBAAgB,CAAC;QAC1B,sDAAsD;QACtD,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,oCAAoC;QACpC,MAAM,CAAC,EAAE,OAAO,CAAC;KACpB,GACF,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;IAIhC;;;;;OAKG;IACI,wBAAwB,CAAC,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY;IAIrF;;;;;;;OAOG;IACU,aAAa,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IA+NxF,OAAO,CAAC,2BAA2B;IAoBnC,OAAO,CAAC,QAAQ;IAWhB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,wBAAwB;IAoBzB,iBAAiB,CACpB,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,GAAG,EACb,eAAe,GAAE,OAAmB,GAAG,IAAI;IAQxC,sBAAsB,CAAC,QAAQ,EAAE,GAAG,EAAE,eAAe,EAAE,OAAO,GAAG,IAAI;IAS/D,UAAU,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;IAKtF,OAAO,CAAC,MAAM;IAkGd,OAAO,CAAC,oBAAoB;IAgB5B;;;OAGG;IACH,OAAO,CAAC,eAAe;IAMvB;;;;;OAKG;IACH,OAAO,CAAC,QAAQ;IA6BhB,OAAO,CAAC,QAAQ;YAgBF,4BAA4B;IAoB1C,6EAA6E;IAChE,uBAAuB,CAAC,OAAO,EAAE,yBAAyB;IA8CvE;;;;;OAKG;YACW,iCAAiC;YA2BjC,wBAAwB;IA8B/B,eAAe,CAAC,QAAQ,EAAE,6BAA6B;YAMhD,2BAA2B;IASlC,oBAAoB,IAAI,OAAO;IAmCtC,SAAgB,iBAAiB,EAAE,WAAW,CAAC,mBAAmB,CAAC,CAajE;IAEF,SAAgB,gBAAgB,EAAE,WAAW,CAAC,kBAAkB,CAAC,CAa/D;IAEF;;;SAGK;IACL,OAAO,CAAC,uBAAuB;YA0BjB,eAAe;IAiB7B,OAAO,CAAC,qCAAqC;CAWhD"}
|
|
1
|
+
{"version":3,"file":"containerRuntime.d.ts","sourceRoot":"","sources":["../src/containerRuntime.ts"],"names":[],"mappings":"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"}
|
package/dist/containerRuntime.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ContainerRuntime = exports.getDeviceSpec = exports.agentSchedulerId = exports.
|
|
3
|
+
exports.ContainerRuntime = exports.getDeviceSpec = exports.agentSchedulerId = exports.isRuntimeMessage = exports.RuntimeMessage = exports.CompressionAlgorithms = exports.RuntimeHeaders = exports.DefaultSummaryConfiguration = exports.ContainerMessageType = void 0;
|
|
4
4
|
const container_definitions_1 = require("@fluidframework/container-definitions");
|
|
5
5
|
const common_utils_1 = require("@fluidframework/common-utils");
|
|
6
6
|
const telemetry_utils_1 = require("@fluidframework/telemetry-utils");
|
|
@@ -18,7 +18,6 @@ const summarizer_1 = require("./summarizer");
|
|
|
18
18
|
const summaryManager_1 = require("./summaryManager");
|
|
19
19
|
const connectionTelemetry_1 = require("./connectionTelemetry");
|
|
20
20
|
const pendingStateManager_1 = require("./pendingStateManager");
|
|
21
|
-
const batchManager_1 = require("./batchManager");
|
|
22
21
|
const packageVersion_1 = require("./packageVersion");
|
|
23
22
|
const blobManager_1 = require("./blobManager");
|
|
24
23
|
const dataStores_1 = require("./dataStores");
|
|
@@ -29,11 +28,12 @@ const summarizerClientElection_1 = require("./summarizerClientElection");
|
|
|
29
28
|
const throttler_1 = require("./throttler");
|
|
30
29
|
const runWhileConnectedCoordinator_1 = require("./runWhileConnectedCoordinator");
|
|
31
30
|
const garbageCollection_1 = require("./garbageCollection");
|
|
31
|
+
const garbageCollectionConstants_1 = require("./garbageCollectionConstants");
|
|
32
32
|
const dataStore_1 = require("./dataStore");
|
|
33
33
|
const batchTracker_1 = require("./batchTracker");
|
|
34
34
|
const serializedSnapshotStorage_1 = require("./serializedSnapshotStorage");
|
|
35
35
|
const scheduleManager_1 = require("./scheduleManager");
|
|
36
|
-
const
|
|
36
|
+
const opLifecycle_1 = require("./opLifecycle");
|
|
37
37
|
var ContainerMessageType;
|
|
38
38
|
(function (ContainerMessageType) {
|
|
39
39
|
// An op to be delivered to store
|
|
@@ -113,38 +113,6 @@ function isRuntimeMessage(message) {
|
|
|
113
113
|
return Object.values(RuntimeMessage).includes(message.type);
|
|
114
114
|
}
|
|
115
115
|
exports.isRuntimeMessage = isRuntimeMessage;
|
|
116
|
-
/**
|
|
117
|
-
* Unpacks runtime messages
|
|
118
|
-
*
|
|
119
|
-
* @remarks This API makes no promises regarding backward-compatibility. This is internal API.
|
|
120
|
-
* @param message - message (as it observed in storage / service)
|
|
121
|
-
* @returns unpacked runtime message
|
|
122
|
-
*
|
|
123
|
-
* @internal
|
|
124
|
-
*/
|
|
125
|
-
function unpackRuntimeMessage(message) {
|
|
126
|
-
if (message.type === protocol_definitions_1.MessageType.Operation) {
|
|
127
|
-
// legacy op format?
|
|
128
|
-
if (message.contents.address !== undefined && message.contents.type === undefined) {
|
|
129
|
-
message.type = ContainerMessageType.FluidDataStoreOp;
|
|
130
|
-
}
|
|
131
|
-
else {
|
|
132
|
-
// new format
|
|
133
|
-
const innerContents = message.contents;
|
|
134
|
-
message.type = innerContents.type;
|
|
135
|
-
message.contents = innerContents.contents;
|
|
136
|
-
}
|
|
137
|
-
return true;
|
|
138
|
-
}
|
|
139
|
-
else {
|
|
140
|
-
// Legacy format, but it's already "unpacked",
|
|
141
|
-
// i.e. message.type is actually ContainerMessageType.
|
|
142
|
-
// Or it's non-runtime message.
|
|
143
|
-
// Nothing to do in such case.
|
|
144
|
-
return false;
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
exports.unpackRuntimeMessage = unpackRuntimeMessage;
|
|
148
116
|
/**
|
|
149
117
|
* Legacy ID for the built-in AgentScheduler. To minimize disruption while removing it, retaining this as a
|
|
150
118
|
* special-case for document dirty state. Ultimately we should have no special-cases from the
|
|
@@ -171,6 +139,9 @@ exports.getDeviceSpec = getDeviceSpec;
|
|
|
171
139
|
* It will define the store level mappings.
|
|
172
140
|
*/
|
|
173
141
|
class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
142
|
+
/**
|
|
143
|
+
* @internal
|
|
144
|
+
*/
|
|
174
145
|
constructor(context, registry, metadata, electedSummarizerData, chunks, dataStoreAliasMap, runtimeOptions, containerScope, logger, existing, blobManagerSnapshot, _storage, requestHandler, summaryConfiguration) {
|
|
175
146
|
var _a, _b, _c, _d, _e, _f;
|
|
176
147
|
if (summaryConfiguration === void 0) { summaryConfiguration = Object.assign(Object.assign({}, exports.DefaultSummaryConfiguration), (_a = runtimeOptions.summaryOptions) === null || _a === void 0 ? void 0 : _a.summaryConfigOverrides); }
|
|
@@ -183,7 +154,6 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
183
154
|
this._storage = _storage;
|
|
184
155
|
this.requestHandler = requestHandler;
|
|
185
156
|
this.summaryConfiguration = summaryConfiguration;
|
|
186
|
-
this.opDecompressor = new opDecompressor_1.OpDecompressor();
|
|
187
157
|
this.defaultMaxConsecutiveReconnects = 7;
|
|
188
158
|
this._orderSequentiallyCalls = 0;
|
|
189
159
|
this.flushMicroTaskExists = false;
|
|
@@ -248,7 +218,7 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
248
218
|
this.nextSummaryNumber = loadSummaryNumber + 1;
|
|
249
219
|
this.messageAtLastSummary = metadata === null || metadata === void 0 ? void 0 : metadata.message;
|
|
250
220
|
this._connected = this.context.connected;
|
|
251
|
-
this.
|
|
221
|
+
this.remoteMessageProcessor = new opLifecycle_1.RemoteMessageProcessor(new opLifecycle_1.OpSplitter(chunks), new opLifecycle_1.OpDecompressor());
|
|
252
222
|
this.handleContext = new containerHandleContext_1.ContainerFluidHandleContext("", this);
|
|
253
223
|
this.mc = (0, telemetry_utils_1.loggerToMonitoringContext)(telemetry_utils_1.ChildLogger.create(this.logger, "ContainerRuntime"));
|
|
254
224
|
if (this.summaryConfiguration.state === "enabled") {
|
|
@@ -262,20 +232,6 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
262
232
|
this.maxConsecutiveReconnects =
|
|
263
233
|
(_c = this.mc.config.getNumber(maxConsecutiveReconnectsKey)) !== null && _c !== void 0 ? _c : this.defaultMaxConsecutiveReconnects;
|
|
264
234
|
this._flushMode = runtimeOptions.flushMode;
|
|
265
|
-
// Provide lower soft limit - we want to have some number of ops to get efficiency in compression
|
|
266
|
-
// & bandwidth usage, but at the same time we want to send these ops sooner, to reduce overall
|
|
267
|
-
// latency of processing a batch.
|
|
268
|
-
// So there is some ballance here, that depends on compression algorithm and its efficiency working with smaller
|
|
269
|
-
// payloads. That number represents final (compressed) bits (once compression is implemented).
|
|
270
|
-
this.pendingAttachBatch = new batchManager_1.BatchManager(this.mc.logger, {
|
|
271
|
-
hardLimit: runtimeOptions.maxBatchSizeInBytes,
|
|
272
|
-
softLimit: 64 * 1024,
|
|
273
|
-
compressionOptions: runtimeOptions.compressionOptions
|
|
274
|
-
});
|
|
275
|
-
this.pendingBatch = new batchManager_1.BatchManager(this.mc.logger, {
|
|
276
|
-
hardLimit: runtimeOptions.maxBatchSizeInBytes,
|
|
277
|
-
compressionOptions: runtimeOptions.compressionOptions
|
|
278
|
-
});
|
|
279
235
|
const pendingRuntimeState = context.pendingLocalState;
|
|
280
236
|
const baseSnapshot = (_d = pendingRuntimeState === null || pendingRuntimeState === void 0 ? void 0 : pendingRuntimeState.baseSnapshot) !== null && _d !== void 0 ? _d : context.baseSnapshot;
|
|
281
237
|
const maxSnapshotCacheDurationMs = (_f = (_e = this._storage) === null || _e === void 0 ? void 0 : _e.policies) === null || _f === void 0 ? void 0 : _f.maximumCacheDurationMs;
|
|
@@ -327,7 +283,6 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
327
283
|
}
|
|
328
284
|
}, (blobPath) => this.garbageCollector.nodeUpdated(blobPath, "Loaded"), this, pendingRuntimeState === null || pendingRuntimeState === void 0 ? void 0 : pendingRuntimeState.pendingAttachmentBlobs);
|
|
329
285
|
this.scheduleManager = new scheduleManager_1.ScheduleManager(context.deltaManager, this, () => this.clientId, telemetry_utils_1.ChildLogger.create(this.logger, "ScheduleManager"));
|
|
330
|
-
this.deltaSender = this.deltaManager;
|
|
331
286
|
this.pendingStateManager = new pendingStateManager_1.PendingStateManager({
|
|
332
287
|
applyStashedOp: this.applyStashedOp.bind(this),
|
|
333
288
|
clientId: () => this.clientId,
|
|
@@ -338,8 +293,18 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
338
293
|
rollback: this.rollback.bind(this),
|
|
339
294
|
orderSequentially: this.orderSequentially.bind(this),
|
|
340
295
|
}, pendingRuntimeState === null || pendingRuntimeState === void 0 ? void 0 : pendingRuntimeState.pending);
|
|
296
|
+
this.outbox = new opLifecycle_1.Outbox({
|
|
297
|
+
shouldSend: () => this.canSendOps(),
|
|
298
|
+
pendingStateManager: this.pendingStateManager,
|
|
299
|
+
containerContext: this.context,
|
|
300
|
+
compressor: new opLifecycle_1.OpCompressor(this.mc.logger),
|
|
301
|
+
config: {
|
|
302
|
+
compressionOptions: runtimeOptions.compressionOptions,
|
|
303
|
+
maxBatchSizeInBytes: runtimeOptions.maxBatchSizeInBytes,
|
|
304
|
+
},
|
|
305
|
+
});
|
|
341
306
|
this.context.quorum.on("removeMember", (clientId) => {
|
|
342
|
-
this.
|
|
307
|
+
this.remoteMessageProcessor.clearPartialMessagesFor(clientId);
|
|
343
308
|
});
|
|
344
309
|
this.summaryCollection = new summaryCollection_1.SummaryCollection(this.deltaManager, this.logger);
|
|
345
310
|
this.dirtyContainer = this.context.attachState !== container_definitions_1.AttachState.Attached
|
|
@@ -420,8 +385,10 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
420
385
|
* @param requestHandler - Request handlers for the container runtime
|
|
421
386
|
* @param runtimeOptions - Additional options to be passed to the runtime
|
|
422
387
|
* @param existing - (optional) When loading from an existing snapshot. Precedes context.existing if provided
|
|
388
|
+
* @param containerRuntimeCtor - (optional) Constructor to use to create the ContainerRuntime instance. This
|
|
389
|
+
* allows mixin classes to leverage this method to define their own async initializer.
|
|
423
390
|
*/
|
|
424
|
-
static async load(context, registryEntries, requestHandler, runtimeOptions = {}, containerScope = context.scope, existing) {
|
|
391
|
+
static async load(context, registryEntries, requestHandler, runtimeOptions = {}, containerScope = context.scope, existing, containerRuntimeCtor = ContainerRuntime) {
|
|
425
392
|
var _a, _b, _c;
|
|
426
393
|
// If taggedLogger exists, use it. Otherwise, wrap the vanilla logger:
|
|
427
394
|
// back-compat: Remove the TaggedLoggerAdapter fallback once all the host are using loader > 0.45
|
|
@@ -432,8 +399,10 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
432
399
|
runtimeVersion: packageVersion_1.pkgVersion,
|
|
433
400
|
},
|
|
434
401
|
});
|
|
435
|
-
const { summaryOptions = {}, gcOptions = {}, loadSequenceNumberVerification = "close", flushMode = defaultFlushMode, enableOfflineLoad = false, compressionOptions = {
|
|
436
|
-
|
|
402
|
+
const { summaryOptions = {}, gcOptions = {}, loadSequenceNumberVerification = "close", flushMode = defaultFlushMode, enableOfflineLoad = false, compressionOptions = {
|
|
403
|
+
minimumBatchSizeInBytes: Number.POSITIVE_INFINITY,
|
|
404
|
+
compressionAlgorithm: CompressionAlgorithms.lz4
|
|
405
|
+
}, maxBatchSizeInBytes = defaultMaxBatchSizeInBytes, } = runtimeOptions;
|
|
437
406
|
const pendingRuntimeState = context.pendingLocalState;
|
|
438
407
|
const baseSnapshot = (_b = pendingRuntimeState === null || pendingRuntimeState === void 0 ? void 0 : pendingRuntimeState.baseSnapshot) !== null && _b !== void 0 ? _b : context.baseSnapshot;
|
|
439
408
|
const storage = !pendingRuntimeState ?
|
|
@@ -482,7 +451,7 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
482
451
|
}
|
|
483
452
|
}
|
|
484
453
|
}
|
|
485
|
-
const runtime = new
|
|
454
|
+
const runtime = new containerRuntimeCtor(context, registry, metadata, electedSummarizerData, chunks !== null && chunks !== void 0 ? chunks : [], aliases !== null && aliases !== void 0 ? aliases : [], {
|
|
486
455
|
summaryOptions,
|
|
487
456
|
gcOptions,
|
|
488
457
|
loadSequenceNumberVerification,
|
|
@@ -546,9 +515,6 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
546
515
|
return (_a = this.summarizerClientElection) === null || _a === void 0 ? void 0 : _a.electedClientId;
|
|
547
516
|
}
|
|
548
517
|
get disposed() { return this._disposed; }
|
|
549
|
-
get emptyBatch() {
|
|
550
|
-
return this.pendingBatch.empty && this.pendingAttachBatch.empty;
|
|
551
|
-
}
|
|
552
518
|
get summarizer() {
|
|
553
519
|
(0, common_utils_1.assert)(this._summarizer !== undefined, 0x257 /* "This is not summarizing container" */);
|
|
554
520
|
return this._summarizer;
|
|
@@ -756,8 +722,8 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
756
722
|
addContainerStateToSummary(summaryTree, fullTree, trackState, telemetryContext) {
|
|
757
723
|
var _a;
|
|
758
724
|
this.addMetadataToSummary(summaryTree);
|
|
759
|
-
if (this.
|
|
760
|
-
const content = JSON.stringify([...this.
|
|
725
|
+
if (this.remoteMessageProcessor.partialMessages.size > 0) {
|
|
726
|
+
const content = JSON.stringify([...this.remoteMessageProcessor.partialMessages]);
|
|
761
727
|
(0, runtime_utils_1.addBlobToSummary)(summaryTree, summaryFormat_1.chunksBlobName, content);
|
|
762
728
|
}
|
|
763
729
|
const dataStoreAliases = this.dataStores.aliases;
|
|
@@ -776,7 +742,7 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
776
742
|
}
|
|
777
743
|
const gcSummary = this.garbageCollector.summarize(fullTree, trackState, telemetryContext);
|
|
778
744
|
if (gcSummary !== undefined) {
|
|
779
|
-
(0, runtime_utils_1.addSummarizeResultToSummary)(summaryTree,
|
|
745
|
+
(0, runtime_utils_1.addSummarizeResultToSummary)(summaryTree, garbageCollectionConstants_1.gcTreeKey, gcSummary);
|
|
780
746
|
}
|
|
781
747
|
}
|
|
782
748
|
// Track how many times the container tries to reconnect with pending messages.
|
|
@@ -921,32 +887,21 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
921
887
|
process(messageArg, local) {
|
|
922
888
|
var _a;
|
|
923
889
|
this.verifyNotClosed();
|
|
924
|
-
// Do shallow copy of message, as methods below will modify it.
|
|
925
|
-
// There might be multiple container instances receiving same message
|
|
926
|
-
// We do not need to make deep copy, as each layer will just replace message.content itself,
|
|
927
|
-
// but would not modify contents details
|
|
928
|
-
let message = Object.assign({}, messageArg);
|
|
929
|
-
// back-compat: ADO #1385: eventually should become unconditional, but only for runtime messages!
|
|
930
|
-
// System message may have no contents, or in some cases (mostly for back-compat) they may have actual objects.
|
|
931
|
-
// Old ops may contain empty string (I assume noops).
|
|
932
|
-
if (typeof message.contents === "string" && message.contents !== "") {
|
|
933
|
-
message.contents = JSON.parse(message.contents);
|
|
934
|
-
}
|
|
935
|
-
message = this.opDecompressor.processMessage(message);
|
|
936
|
-
// Caveat: This will return false for runtime message in very old format, that are used in snapshot tests
|
|
937
|
-
// This format was not shipped to production workflows.
|
|
938
|
-
const runtimeMessage = unpackRuntimeMessage(message);
|
|
939
890
|
if ((_a = this.mc.config.getBoolean("enableOfflineLoad")) !== null && _a !== void 0 ? _a : this.runtimeOptions.enableOfflineLoad) {
|
|
940
891
|
this.savedOps.push(messageArg);
|
|
941
892
|
}
|
|
893
|
+
// Whether or not the message is actually a runtime message.
|
|
894
|
+
// It may be a legacy runtime message (ie already unpacked and ContainerMessageType)
|
|
895
|
+
// or something different, like a system message.
|
|
896
|
+
const runtimeMessage = messageArg.type === protocol_definitions_1.MessageType.Operation;
|
|
897
|
+
// Do shallow copy of message, as the processing flow will modify it.
|
|
898
|
+
const messageCopy = Object.assign({}, messageArg);
|
|
899
|
+
const message = this.remoteMessageProcessor.process(messageCopy);
|
|
942
900
|
// Surround the actual processing of the operation with messages to the schedule manager indicating
|
|
943
901
|
// the beginning and end. This allows it to emit appropriate events and/or pause the processing of new
|
|
944
902
|
// messages once a batch has been fully processed.
|
|
945
903
|
this.scheduleManager.beforeOpProcessing(message);
|
|
946
904
|
try {
|
|
947
|
-
// Chunk processing must come first given that we will transform the message to the unchunked version
|
|
948
|
-
// once all pieces are available
|
|
949
|
-
message = this.processRemoteChunkedMessage(message);
|
|
950
905
|
let localOpMetadata;
|
|
951
906
|
if (local && runtimeMessage) {
|
|
952
907
|
localOpMetadata = this.pendingStateManager.processPendingLocalMessage(message);
|
|
@@ -1060,74 +1015,21 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
1060
1015
|
*/
|
|
1061
1016
|
flush() {
|
|
1062
1017
|
(0, common_utils_1.assert)(this._orderSequentiallyCalls === 0, 0x24c /* "Cannot call `flush()` from `orderSequentially`'s callback" */);
|
|
1063
|
-
this.
|
|
1064
|
-
|
|
1065
|
-
(0, common_utils_1.assert)(this.emptyBatch, 0x3cf /* reentrancy */);
|
|
1066
|
-
}
|
|
1067
|
-
flushBatch(batch) {
|
|
1068
|
-
var _a;
|
|
1069
|
-
const length = batch.length;
|
|
1070
|
-
if (length > 1) {
|
|
1071
|
-
batch[0].metadata = Object.assign(Object.assign({}, batch[0].metadata), { batch: true });
|
|
1072
|
-
batch[length - 1].metadata = Object.assign(Object.assign({}, batch[length - 1].metadata), { batch: false });
|
|
1073
|
-
// This assert fires for the following reason (there might be more cases like that):
|
|
1074
|
-
// AgentScheduler will send ops in response to ConsensusRegisterCollection's "atomicChanged" event handler,
|
|
1075
|
-
// i.e. in the middle of op processing!
|
|
1076
|
-
// Sending ops while processing ops is not good idea - it's not defined when
|
|
1077
|
-
// referenceSequenceNumber changes in op processing sequence (at the beginning or end of op processing),
|
|
1078
|
-
// If we send ops in response to processing multiple ops, then we for sure hit this assert!
|
|
1079
|
-
// Tracked via ADO #1834
|
|
1080
|
-
// assert(batch[0].referenceSequenceNumber === batch[length - 1].referenceSequenceNumber,
|
|
1081
|
-
// "Batch should be generated synchronously, without processing ops in the middle!");
|
|
1082
|
-
}
|
|
1083
|
-
let clientSequenceNumber = -1;
|
|
1084
|
-
// Did we disconnect in the middle of turn-based batch?
|
|
1085
|
-
// If so, do nothing, as pending state manager will resubmit it correctly on reconnect.
|
|
1086
|
-
if (this.canSendOps()) {
|
|
1087
|
-
if (this.context.submitBatchFn !== undefined) {
|
|
1088
|
-
const batchToSend = [];
|
|
1089
|
-
for (const message of batch) {
|
|
1090
|
-
batchToSend.push({ contents: message.contents, metadata: message.metadata });
|
|
1091
|
-
}
|
|
1092
|
-
// returns clientSequenceNumber of last message in a batch
|
|
1093
|
-
clientSequenceNumber = this.context.submitBatchFn(batchToSend);
|
|
1094
|
-
}
|
|
1095
|
-
else {
|
|
1096
|
-
// Legacy path - supporting old loader versions. Can be removed only when LTS moves above
|
|
1097
|
-
// version that has support for batches (submitBatchFn)
|
|
1098
|
-
for (const message of batch) {
|
|
1099
|
-
// Legacy path doesn't support compressed payloads and will submit uncompressed payload anyways
|
|
1100
|
-
if ((_a = message.metadata) === null || _a === void 0 ? void 0 : _a.compressed) {
|
|
1101
|
-
delete message.metadata.compressed;
|
|
1102
|
-
}
|
|
1103
|
-
clientSequenceNumber = this.context.submitFn(protocol_definitions_1.MessageType.Operation, message.deserializedContent, true, // batch
|
|
1104
|
-
message.metadata);
|
|
1105
|
-
}
|
|
1106
|
-
this.deltaSender.flush();
|
|
1107
|
-
}
|
|
1108
|
-
// Convert from clientSequenceNumber of last message in the batch to clientSequenceNumber of first message.
|
|
1109
|
-
clientSequenceNumber -= batch.length - 1;
|
|
1110
|
-
(0, common_utils_1.assert)(clientSequenceNumber >= 0, 0x3d0 /* clientSequenceNumber can't be negative */);
|
|
1111
|
-
}
|
|
1112
|
-
// Let the PendingStateManager know that a message was submitted.
|
|
1113
|
-
// In future, need to shift toward keeping batch as a whole!
|
|
1114
|
-
for (const message of batch) {
|
|
1115
|
-
this.pendingStateManager.onSubmitMessage(message.deserializedContent.type, clientSequenceNumber, message.referenceSequenceNumber, message.deserializedContent.contents, message.localOpMetadata, message.metadata);
|
|
1116
|
-
clientSequenceNumber++;
|
|
1117
|
-
}
|
|
1118
|
-
this.pendingStateManager.onFlush();
|
|
1018
|
+
this.outbox.flush();
|
|
1019
|
+
(0, common_utils_1.assert)(this.outbox.isEmpty, 0x3cf /* reentrancy */);
|
|
1119
1020
|
}
|
|
1120
1021
|
orderSequentially(callback) {
|
|
1121
1022
|
let checkpoint;
|
|
1023
|
+
let result;
|
|
1122
1024
|
if (this.mc.config.getBoolean("Fluid.ContainerRuntime.EnableRollback")) {
|
|
1123
1025
|
// Note: we are not touching this.pendingAttachBatch here, for two reasons:
|
|
1124
1026
|
// 1. It would not help, as we flush attach ops as they become available.
|
|
1125
1027
|
// 2. There is no way to undo process of data store creation.
|
|
1126
|
-
checkpoint = this.
|
|
1028
|
+
checkpoint = this.outbox.checkpoint().mainBatch;
|
|
1127
1029
|
}
|
|
1128
1030
|
try {
|
|
1129
1031
|
this._orderSequentiallyCalls++;
|
|
1130
|
-
callback();
|
|
1032
|
+
result = callback();
|
|
1131
1033
|
}
|
|
1132
1034
|
catch (error) {
|
|
1133
1035
|
if (checkpoint) {
|
|
@@ -1155,6 +1057,7 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
1155
1057
|
if (this.flushMode === runtime_definitions_1.FlushMode.Immediate && this._orderSequentiallyCalls === 0) {
|
|
1156
1058
|
this.flush();
|
|
1157
1059
|
}
|
|
1060
|
+
return result;
|
|
1158
1061
|
}
|
|
1159
1062
|
async createDataStore(pkg) {
|
|
1160
1063
|
const internalId = (0, uuid_1.v4)();
|
|
@@ -1343,18 +1246,23 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
1343
1246
|
// summarizing is required and asserted by the the summarizer node. We are the root and are
|
|
1344
1247
|
// always referenced, so the used routes is only self-route (empty string).
|
|
1345
1248
|
this.summarizerNode.updateUsedRoutes([""]);
|
|
1249
|
+
const blobManagerUsedRoutes = [];
|
|
1346
1250
|
const dataStoreUsedRoutes = [];
|
|
1347
1251
|
for (const route of usedRoutes) {
|
|
1348
|
-
if (
|
|
1252
|
+
if (this.isBlobPath(route)) {
|
|
1253
|
+
blobManagerUsedRoutes.push(route);
|
|
1254
|
+
}
|
|
1255
|
+
else {
|
|
1349
1256
|
dataStoreUsedRoutes.push(route);
|
|
1350
1257
|
}
|
|
1351
1258
|
}
|
|
1352
|
-
|
|
1259
|
+
this.blobManager.updateUsedRoutes(blobManagerUsedRoutes);
|
|
1260
|
+
this.dataStores.updateUsedRoutes(dataStoreUsedRoutes);
|
|
1353
1261
|
}
|
|
1354
1262
|
/**
|
|
1355
1263
|
* This is called to update objects whose routes are unused. The unused objects are either deleted or marked as
|
|
1356
1264
|
* tombstones.
|
|
1357
|
-
* @param unusedRoutes - The routes that are unused in all data stores in this Container.
|
|
1265
|
+
* @param unusedRoutes - The routes that are unused in all data stores and attachment blobs in this Container.
|
|
1358
1266
|
* @param tombstone - if true, the objects corresponding to unused routes are marked tombstones. Otherwise, they
|
|
1359
1267
|
* are deleted.
|
|
1360
1268
|
*/
|
|
@@ -1369,10 +1277,7 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
1369
1277
|
dataStoreUnusedRoutes.push(route);
|
|
1370
1278
|
}
|
|
1371
1279
|
}
|
|
1372
|
-
|
|
1373
|
-
if (!tombstone) {
|
|
1374
|
-
this.blobManager.deleteUnusedRoutes(blobManagerUnusedRoutes);
|
|
1375
|
-
}
|
|
1280
|
+
this.blobManager.updateUnusedRoutes(blobManagerUnusedRoutes, tombstone);
|
|
1376
1281
|
this.dataStores.updateUnusedRoutes(dataStoreUnusedRoutes, tombstone);
|
|
1377
1282
|
}
|
|
1378
1283
|
/**
|
|
@@ -1453,7 +1358,7 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
1453
1358
|
const summaryNumberLogger = telemetry_utils_1.ChildLogger.create(summaryLogger, undefined, {
|
|
1454
1359
|
all: { summaryNumber },
|
|
1455
1360
|
});
|
|
1456
|
-
(0, common_utils_1.assert)(this.
|
|
1361
|
+
(0, common_utils_1.assert)(this.outbox.isEmpty, 0x3d1 /* Can't trigger summary in the middle of a batch */);
|
|
1457
1362
|
let latestSnapshotVersionId;
|
|
1458
1363
|
if (refreshLatestAck) {
|
|
1459
1364
|
const latestSnapshotInfo = await this.refreshLatestSummaryAckFromServer(telemetry_utils_1.ChildLogger.create(summaryNumberLogger, undefined, { all: { safeSummary: true } }));
|
|
@@ -1544,8 +1449,8 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
1544
1449
|
const dataStoreTree = summaryTree.tree[runtime_definitions_1.channelsTreeName];
|
|
1545
1450
|
(0, common_utils_1.assert)(dataStoreTree.type === protocol_definitions_1.SummaryType.Tree, 0x1fc /* "summary is not a tree" */);
|
|
1546
1451
|
const handleCount = Object.values(dataStoreTree.tree).filter((value) => value.type === protocol_definitions_1.SummaryType.Handle).length;
|
|
1547
|
-
const gcSummaryTreeStats = summaryTree.tree[
|
|
1548
|
-
? (0, runtime_utils_1.calculateStats)(summaryTree.tree[
|
|
1452
|
+
const gcSummaryTreeStats = summaryTree.tree[garbageCollectionConstants_1.gcTreeKey]
|
|
1453
|
+
? (0, runtime_utils_1.calculateStats)(summaryTree.tree[garbageCollectionConstants_1.gcTreeKey])
|
|
1549
1454
|
: undefined;
|
|
1550
1455
|
const summaryStats = Object.assign({ dataStoreCount: this.dataStores.size, summarizedDataStoreCount: this.dataStores.size - handleCount, gcStateUpdatedDataStoreCount: (_a = summarizeResult.gcStats) === null || _a === void 0 ? void 0 : _a.updatedDataStoreCount, gcBlobNodeCount: gcSummaryTreeStats === null || gcSummaryTreeStats === void 0 ? void 0 : gcSummaryTreeStats.blobNodeCount, gcTotalBlobsSize: gcSummaryTreeStats === null || gcSummaryTreeStats === void 0 ? void 0 : gcSummaryTreeStats.totalBlobSize, summaryNumber }, partialStats);
|
|
1551
1456
|
const generateSummaryData = {
|
|
@@ -1626,40 +1531,8 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
1626
1531
|
this.deltaManager.inbound.resume();
|
|
1627
1532
|
}
|
|
1628
1533
|
}
|
|
1629
|
-
processRemoteChunkedMessage(message) {
|
|
1630
|
-
if (message.type !== ContainerMessageType.ChunkedOp) {
|
|
1631
|
-
return message;
|
|
1632
|
-
}
|
|
1633
|
-
const clientId = message.clientId;
|
|
1634
|
-
const chunkedContent = message.contents;
|
|
1635
|
-
this.addChunk(clientId, chunkedContent);
|
|
1636
|
-
if (chunkedContent.chunkId === chunkedContent.totalChunks) {
|
|
1637
|
-
const newMessage = Object.assign({}, message);
|
|
1638
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
1639
|
-
const serializedContent = this.chunkMap.get(clientId).join("");
|
|
1640
|
-
newMessage.contents = JSON.parse(serializedContent);
|
|
1641
|
-
newMessage.type = chunkedContent.originalType;
|
|
1642
|
-
this.clearPartialChunks(clientId);
|
|
1643
|
-
return newMessage;
|
|
1644
|
-
}
|
|
1645
|
-
return message;
|
|
1646
|
-
}
|
|
1647
|
-
addChunk(clientId, chunkedContent) {
|
|
1648
|
-
let map = this.chunkMap.get(clientId);
|
|
1649
|
-
if (map === undefined) {
|
|
1650
|
-
map = [];
|
|
1651
|
-
this.chunkMap.set(clientId, map);
|
|
1652
|
-
}
|
|
1653
|
-
(0, common_utils_1.assert)(chunkedContent.chunkId === map.length + 1, 0x131 /* "Mismatch between new chunkId and expected chunkMap" */); // 1-based indexing
|
|
1654
|
-
map.push(chunkedContent.contents);
|
|
1655
|
-
}
|
|
1656
|
-
clearPartialChunks(clientId) {
|
|
1657
|
-
if (this.chunkMap.has(clientId)) {
|
|
1658
|
-
this.chunkMap.delete(clientId);
|
|
1659
|
-
}
|
|
1660
|
-
}
|
|
1661
1534
|
hasPendingMessages() {
|
|
1662
|
-
return this.pendingStateManager.hasPendingMessages() || !this.
|
|
1535
|
+
return this.pendingStateManager.hasPendingMessages() || !this.outbox.isEmpty;
|
|
1663
1536
|
}
|
|
1664
1537
|
updateDocumentDirtyState(dirty) {
|
|
1665
1538
|
if (this.attachState !== container_definitions_1.AttachState.Attached) {
|
|
@@ -1697,14 +1570,13 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
1697
1570
|
return this.blobManager.createBlob(blob);
|
|
1698
1571
|
}
|
|
1699
1572
|
submit(type, contents, localOpMetadata = undefined, metadata = undefined) {
|
|
1700
|
-
var _a, _b, _c, _d;
|
|
1701
1573
|
this.verifyNotClosed();
|
|
1702
1574
|
// There should be no ops in detached container state!
|
|
1703
1575
|
(0, common_utils_1.assert)(this.attachState !== container_definitions_1.AttachState.Detached, 0x132 /* "sending ops in detached container" */);
|
|
1704
1576
|
const deserializedContent = { type, contents };
|
|
1705
1577
|
const serializedContent = JSON.stringify(deserializedContent);
|
|
1706
1578
|
if (this.deltaManager.readOnlyInfo.readonly) {
|
|
1707
|
-
this.logger.
|
|
1579
|
+
this.logger.sendTelemetryEvent({ eventName: "SubmitOpInReadonly", connected: this.connected });
|
|
1708
1580
|
}
|
|
1709
1581
|
const message = {
|
|
1710
1582
|
contents: serializedContent,
|
|
@@ -1735,43 +1607,23 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
1735
1607
|
// Please note that this does not change file format, so it can be disabled in the future if this
|
|
1736
1608
|
// optimization no longer makes sense (for example, batch compression may make it less appealing).
|
|
1737
1609
|
if (this.currentlyBatching() && type === ContainerMessageType.Attach &&
|
|
1738
|
-
this.mc.config.getBoolean("Fluid.ContainerRuntime.
|
|
1739
|
-
|
|
1740
|
-
// BatchManager has two limits - soft limit & hard limit. Soft limit is only engaged
|
|
1741
|
-
// when queue is not empty.
|
|
1742
|
-
// Flush queue & retry. Failure on retry would mean - single message is bigger than hard limit
|
|
1743
|
-
this.flushBatch(this.pendingAttachBatch.popBatch());
|
|
1744
|
-
if (!this.pendingAttachBatch.push(message)) {
|
|
1745
|
-
throw new container_utils_1.GenericError("BatchTooLarge",
|
|
1746
|
-
/* error */ undefined, {
|
|
1747
|
-
opSize: (_b = ((_a = message.contents) === null || _a === void 0 ? void 0 : _a.length)) !== null && _b !== void 0 ? _b : 0,
|
|
1748
|
-
count: this.pendingAttachBatch.length,
|
|
1749
|
-
limit: this.pendingAttachBatch.options.hardLimit,
|
|
1750
|
-
});
|
|
1751
|
-
}
|
|
1752
|
-
}
|
|
1610
|
+
this.mc.config.getBoolean("Fluid.ContainerRuntime.disableAttachOpReorder") !== true) {
|
|
1611
|
+
this.outbox.submitAttach(message);
|
|
1753
1612
|
}
|
|
1754
1613
|
else {
|
|
1755
|
-
|
|
1756
|
-
|
|
1757
|
-
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1761
|
-
|
|
1762
|
-
|
|
1763
|
-
|
|
1614
|
+
this.outbox.submit(message);
|
|
1615
|
+
}
|
|
1616
|
+
if (!this.currentlyBatching()) {
|
|
1617
|
+
this.flush();
|
|
1618
|
+
}
|
|
1619
|
+
else if (!this.flushMicroTaskExists) {
|
|
1620
|
+
this.flushMicroTaskExists = true;
|
|
1621
|
+
// Queue a microtask to detect the end of the turn and force a flush.
|
|
1622
|
+
// eslint-disable-next-line @typescript-eslint/no-floating-promises
|
|
1623
|
+
Promise.resolve().then(() => {
|
|
1624
|
+
this.flushMicroTaskExists = false;
|
|
1764
1625
|
this.flush();
|
|
1765
|
-
}
|
|
1766
|
-
else if (!this.flushMicroTaskExists) {
|
|
1767
|
-
this.flushMicroTaskExists = true;
|
|
1768
|
-
// Queue a microtask to detect the end of the turn and force a flush.
|
|
1769
|
-
// eslint-disable-next-line @typescript-eslint/no-floating-promises
|
|
1770
|
-
Promise.resolve().then(() => {
|
|
1771
|
-
this.flushMicroTaskExists = false;
|
|
1772
|
-
this.flush();
|
|
1773
|
-
});
|
|
1774
|
-
}
|
|
1626
|
+
}).catch((error) => { this.closeFn(error); });
|
|
1775
1627
|
}
|
|
1776
1628
|
}
|
|
1777
1629
|
catch (error) {
|
|
@@ -1786,7 +1638,7 @@ class ContainerRuntime extends common_utils_1.TypedEventEmitter {
|
|
|
1786
1638
|
this.verifyNotClosed();
|
|
1787
1639
|
(0, common_utils_1.assert)(this.connected, 0x133 /* "Container disconnected when trying to submit system message" */);
|
|
1788
1640
|
// System message should not be sent in the middle of the batch.
|
|
1789
|
-
(0, common_utils_1.assert)(this.
|
|
1641
|
+
(0, common_utils_1.assert)(this.outbox.isEmpty, 0x3d4 /* System op in the middle of a batch */);
|
|
1790
1642
|
// back-compat: ADO #1385: Make this call unconditional in the future
|
|
1791
1643
|
return this.context.submitSummaryFn !== undefined
|
|
1792
1644
|
? this.context.submitSummaryFn(contents)
|