@fluidframework/container-runtime 2.0.0-dev.7.2.0.203917 → 2.0.0-dev.7.2.0.205722

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 (90) hide show
  1. package/api-report/container-runtime.api.md +5 -4
  2. package/dist/blobManager.d.ts +3 -4
  3. package/dist/blobManager.d.ts.map +1 -1
  4. package/dist/blobManager.js +20 -14
  5. package/dist/blobManager.js.map +1 -1
  6. package/dist/containerRuntime.d.ts +8 -8
  7. package/dist/containerRuntime.d.ts.map +1 -1
  8. package/dist/containerRuntime.js +14 -2
  9. package/dist/containerRuntime.js.map +1 -1
  10. package/dist/dataStoreContext.d.ts.map +1 -1
  11. package/dist/dataStoreContext.js +1 -5
  12. package/dist/dataStoreContext.js.map +1 -1
  13. package/dist/dataStores.d.ts +0 -2
  14. package/dist/dataStores.d.ts.map +1 -1
  15. package/dist/dataStores.js +2 -7
  16. package/dist/dataStores.js.map +1 -1
  17. package/dist/gc/garbageCollection.d.ts +6 -0
  18. package/dist/gc/garbageCollection.d.ts.map +1 -1
  19. package/dist/gc/garbageCollection.js +13 -1
  20. package/dist/gc/garbageCollection.js.map +1 -1
  21. package/dist/gc/gcConfigs.d.ts +1 -0
  22. package/dist/gc/gcConfigs.d.ts.map +1 -1
  23. package/dist/gc/gcConfigs.js +12 -2
  24. package/dist/gc/gcConfigs.js.map +1 -1
  25. package/dist/gc/gcDefinitions.d.ts +14 -4
  26. package/dist/gc/gcDefinitions.d.ts.map +1 -1
  27. package/dist/gc/gcDefinitions.js.map +1 -1
  28. package/dist/gc/gcTelemetry.d.ts +1 -2
  29. package/dist/gc/gcTelemetry.d.ts.map +1 -1
  30. package/dist/gc/gcTelemetry.js +2 -3
  31. package/dist/gc/gcTelemetry.js.map +1 -1
  32. package/dist/gc/index.d.ts +2 -2
  33. package/dist/gc/index.d.ts.map +1 -1
  34. package/dist/gc/index.js +1 -5
  35. package/dist/gc/index.js.map +1 -1
  36. package/dist/packageVersion.d.ts +1 -1
  37. package/dist/packageVersion.js +1 -1
  38. package/dist/packageVersion.js.map +1 -1
  39. package/lib/blobManager.d.ts +3 -4
  40. package/lib/blobManager.d.ts.map +1 -1
  41. package/lib/blobManager.js +21 -15
  42. package/lib/blobManager.js.map +1 -1
  43. package/lib/containerRuntime.d.ts +8 -8
  44. package/lib/containerRuntime.d.ts.map +1 -1
  45. package/lib/containerRuntime.js +15 -3
  46. package/lib/containerRuntime.js.map +1 -1
  47. package/lib/dataStoreContext.d.ts.map +1 -1
  48. package/lib/dataStoreContext.js +2 -6
  49. package/lib/dataStoreContext.js.map +1 -1
  50. package/lib/dataStores.d.ts +0 -2
  51. package/lib/dataStores.d.ts.map +1 -1
  52. package/lib/dataStores.js +3 -8
  53. package/lib/dataStores.js.map +1 -1
  54. package/lib/gc/garbageCollection.d.ts +6 -0
  55. package/lib/gc/garbageCollection.d.ts.map +1 -1
  56. package/lib/gc/garbageCollection.js +13 -1
  57. package/lib/gc/garbageCollection.js.map +1 -1
  58. package/lib/gc/gcConfigs.d.ts +1 -0
  59. package/lib/gc/gcConfigs.d.ts.map +1 -1
  60. package/lib/gc/gcConfigs.js +14 -4
  61. package/lib/gc/gcConfigs.js.map +1 -1
  62. package/lib/gc/gcDefinitions.d.ts +14 -4
  63. package/lib/gc/gcDefinitions.d.ts.map +1 -1
  64. package/lib/gc/gcDefinitions.js.map +1 -1
  65. package/lib/gc/gcTelemetry.d.ts +1 -2
  66. package/lib/gc/gcTelemetry.d.ts.map +1 -1
  67. package/lib/gc/gcTelemetry.js +2 -3
  68. package/lib/gc/gcTelemetry.js.map +1 -1
  69. package/lib/gc/index.d.ts +2 -2
  70. package/lib/gc/index.d.ts.map +1 -1
  71. package/lib/gc/index.js +2 -2
  72. package/lib/gc/index.js.map +1 -1
  73. package/lib/packageVersion.d.ts +1 -1
  74. package/lib/packageVersion.js +1 -1
  75. package/lib/packageVersion.js.map +1 -1
  76. package/package.json +24 -20
  77. package/src/blobManager.ts +28 -22
  78. package/src/containerRuntime.ts +18 -14
  79. package/src/dataStoreContext.ts +2 -6
  80. package/src/dataStores.ts +4 -16
  81. package/src/gc/garbageCollection.ts +13 -1
  82. package/src/gc/gcConfigs.ts +22 -4
  83. package/src/gc/gcDefinitions.ts +14 -4
  84. package/src/gc/gcTelemetry.ts +2 -3
  85. package/src/gc/index.ts +0 -4
  86. package/src/packageVersion.ts +1 -1
  87. package/dist/container-runtime-alpha.d.ts +0 -1742
  88. package/dist/container-runtime-beta.d.ts +0 -1742
  89. package/dist/container-runtime-public.d.ts +0 -1742
  90. package/dist/container-runtime-untrimmed.d.ts +0 -1803
@@ -472,6 +472,18 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
472
472
  ? this.summaryConfiguration.initialSummarizerDelayMs
473
473
  : 0;
474
474
  }
475
+ /** If false, loading or using a Tombstoned object should merely log, not fail */
476
+ get gcTombstoneEnforcementAllowed() {
477
+ return this.garbageCollector.tombstoneEnforcementAllowed;
478
+ }
479
+ /** If true, throw an error when a tombstone data store is retrieved */
480
+ get gcThrowOnTombstoneLoad() {
481
+ return this.garbageCollector.throwOnTombstoneLoad;
482
+ }
483
+ /** If true, throw an error when a tombstone data store is used. */
484
+ get gcThrowOnTombstoneUsage() {
485
+ return this.garbageCollector.throwOnTombstoneUsage;
486
+ }
475
487
  /**
476
488
  * @internal
477
489
  */
@@ -576,7 +588,6 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
576
588
  // Note that we only need to pull the *initial* connected state from the context.
577
589
  // Later updates come through calls to setConnectionState.
578
590
  this._connected = connected;
579
- this.gcTombstoneEnforcementAllowed = (0, gc_1.shouldAllowGcTombstoneEnforcement)(metadata?.gcFeatureMatrix?.tombstoneGeneration /* persisted */, this.runtimeOptions.gcOptions[gc_1.gcTombstoneGenerationOptionName] /* current */);
580
591
  this.mc.logger.sendTelemetryEvent({
581
592
  eventName: "GCFeatureMatrix",
582
593
  metadataValue: JSON.stringify(metadata?.gcFeatureMatrix),
@@ -2495,6 +2506,7 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
2495
2506
  }, async (event) => {
2496
2507
  this.verifyNotClosed();
2497
2508
  const waitBlobsToAttach = props?.notifyImminentClosure;
2509
+ const stopBlobAttachingSignal = props?.stopBlobAttachingSignal;
2498
2510
  if (this._orderSequentiallyCalls !== 0) {
2499
2511
  throw new telemetry_utils_1.UsageError("can't get state during orderSequentially");
2500
2512
  }
@@ -2503,7 +2515,7 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
2503
2515
  // to close current batch.
2504
2516
  this.flush();
2505
2517
  const pendingAttachmentBlobs = waitBlobsToAttach
2506
- ? await this.blobManager.attachAndGetPendingBlobs()
2518
+ ? await this.blobManager.attachAndGetPendingBlobs(stopBlobAttachingSignal)
2507
2519
  : undefined;
2508
2520
  const pending = this.pendingStateManager.getLocalState();
2509
2521
  if (!pendingAttachmentBlobs && !this.hasPendingMessages()) {