@genesislcap/grid-pro 15.25.0-FUI-2611.1 → 15.25.0-FUI-2611.2

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.
@@ -14744,16 +14744,6 @@
14744
14744
  "description": "Which rows each delivered block carried, for withdrawal and eviction reporting. @internal",
14745
14745
  "default": "new DeliveredBlockLedger(options.rowId, options.maxBlocksInCache)"
14746
14746
  },
14747
- {
14748
- "kind": "field",
14749
- "name": "destroyed",
14750
- "type": {
14751
- "text": "boolean"
14752
- },
14753
- "privacy": "private",
14754
- "default": "false",
14755
- "description": "Set by destroy(); a reply that resolves afterwards belongs to a dropped cache. @internal"
14756
- },
14757
14747
  {
14758
14748
  "kind": "field",
14759
14749
  "name": "HTTP_NOT_FOUND",
@@ -15035,7 +15025,8 @@
15035
15025
  "type": {
15036
15026
  "text": "void"
15037
15027
  }
15038
- }
15028
+ },
15029
+ "description": "Drops the subscription and the cached rows."
15039
15030
  },
15040
15031
  {
15041
15032
  "kind": "field",
@@ -77,8 +77,17 @@ export declare class GenesisInfiniteDatasource implements IDatasource {
77
77
  private errorHandlerFunc;
78
78
  /** Which rows each delivered block carried, for withdrawal and eviction reporting. @internal */
79
79
  private ledger;
80
- /** Set by destroy(); a reply that resolves afterwards belongs to a dropped cache. @internal */
81
- private destroyed;
80
+ /**
81
+ * Bumped whenever the rows this datasource was reading for are dropped (a teardown, or a
82
+ * filter/sort change). A REQUEST_SERVER reply that resolves for an earlier generation was read
83
+ * for a cache the grid no longer has.
84
+ * @remarks Deliberately a generation rather than a "destroyed" flag: AG Grid calls `destroy()`
85
+ * on the datasource bean it then keeps using (`InfiniteRowModel.start()` re-applies the
86
+ * `datasource` grid option, and `setDatasource` destroys the previous one first), so a sticky
87
+ * flag would disable the instance the grid is still driving.
88
+ * @internal
89
+ */
90
+ private loadGeneration;
82
91
  /**
83
92
  * Max time a DATASERVER block may stay pending before the safety valve resolves it with the
84
93
  * rows accumulated so far.
@@ -279,6 +288,13 @@ export declare class GenesisInfiniteDatasource implements IDatasource {
279
288
  * @internal
280
289
  */
281
290
  private teardownDataserverSubscription;
291
+ /**
292
+ * Drops the subscription and the cached rows.
293
+ * @remarks AG Grid calls this on the bean it then keeps using (`InfiniteRowModel.start()`
294
+ * re-applies the `datasource` grid option, and `setDatasource` destroys the previous one
295
+ * first), and it can land while a block request is in flight. So it must leave the datasource
296
+ * able to serve that reply and the next `getRows`: it drops the subscription, not the instance.
297
+ */
282
298
  destroy?(): void;
283
299
  }
284
300
  //# sourceMappingURL=infinite.resource.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"infinite.resource.d.ts","sourceRoot":"","sources":["../../../src/datasource/infinite.resource.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"infinite.resource.d.ts","sourceRoot":"","sources":["../../../src/datasource/infinite.resource.ts"],"names":[],"mappings":"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"}
@@ -46,8 +46,17 @@ export function convertSortModelToOrderBy(sortModel, resourceIndexes, isRequestS
46
46
  */
47
47
  export class GenesisInfiniteDatasource {
48
48
  constructor(options) {
49
- /** Set by destroy(); a reply that resolves afterwards belongs to a dropped cache. @internal */
50
- this.destroyed = false;
49
+ /**
50
+ * Bumped whenever the rows this datasource was reading for are dropped (a teardown, or a
51
+ * filter/sort change). A REQUEST_SERVER reply that resolves for an earlier generation was read
52
+ * for a cache the grid no longer has.
53
+ * @remarks Deliberately a generation rather than a "destroyed" flag: AG Grid calls `destroy()`
54
+ * on the datasource bean it then keeps using (`InfiniteRowModel.start()` re-applies the
55
+ * `datasource` grid option, and `setDatasource` destroys the previous one first), so a sticky
56
+ * flag would disable the instance the grid is still driving.
57
+ * @internal
58
+ */
59
+ this.loadGeneration = 0;
51
60
  /**
52
61
  * Session-cumulative row cache, keyed by row id. A Map preserves insertion order, so the
53
62
  * cache can be sliced by block range; Genesis splits batches across messages and later
@@ -181,12 +190,17 @@ export class GenesisInfiniteDatasource {
181
190
  }
182
191
  const requestParams = this.buildRequestServerParams(params.startRow, combinedCriteria, sortConfig);
183
192
  logger.debug('Infinite datasource request params', requestParams);
193
+ // Taken after noteRequestKey, so this is the generation the request belongs to: only a
194
+ // reset that lands while it is in flight invalidates the reply.
195
+ const generation = this.loadGeneration;
184
196
  const result = yield this.createSnapshotFunc(requestParams);
185
- // A reply that lands after destroy() belongs to a cache the grid has already dropped
186
- // (reloadResourceData purges it); AG Grid ignores the callback, and the host must not
187
- // learn of rows the grid will never hold.
188
- if (this.destroyed) {
189
- logger.debug('Infinite REQUEST_SERVER reply discarded: the datasource was destroyed');
197
+ // The rows this block was read for have since been dropped (a filter or sort change): AG
198
+ // Grid has purged the block, and the host must not learn of rows the grid will never hold.
199
+ // The block is still failed rather than left hanging - AG Grid caps concurrent requests
200
+ // and frees a slot only on success or fail, so a silent return stops it ever asking again.
201
+ if (generation !== this.loadGeneration) {
202
+ logger.debug('Infinite REQUEST_SERVER reply discarded: the block cache was reset');
203
+ params.failCallback();
190
204
  return;
191
205
  }
192
206
  if (!result) {
@@ -230,6 +244,8 @@ export class GenesisInfiniteDatasource {
230
244
  var _a;
231
245
  const key = JSON.stringify(Object.assign({ criteria }, sortConfig));
232
246
  if (this.subscriptionKey !== undefined && this.subscriptionKey !== key) {
247
+ // Whatever is in flight was read for the old filter or sort.
248
+ this.loadGeneration += 1;
233
249
  if (!this.isRequestServer) {
234
250
  this.teardownDataserverSubscription();
235
251
  }
@@ -613,8 +629,14 @@ export class GenesisInfiniteDatasource {
613
629
  this.moreRows = undefined;
614
630
  this.moreRowsInFlight = false;
615
631
  }
632
+ /**
633
+ * Drops the subscription and the cached rows.
634
+ * @remarks AG Grid calls this on the bean it then keeps using (`InfiniteRowModel.start()`
635
+ * re-applies the `datasource` grid option, and `setDatasource` destroys the previous one
636
+ * first), and it can land while a block request is in flight. So it must leave the datasource
637
+ * able to serve that reply and the next `getRows`: it drops the subscription, not the instance.
638
+ */
616
639
  destroy() {
617
- this.destroyed = true;
618
640
  this.teardownDataserverSubscription();
619
641
  this.ledger.clear();
620
642
  logger.debug('GenesisInfiniteDatasource destroyed');
@@ -2399,8 +2399,17 @@ declare class GenesisInfiniteDatasource implements IDatasource {
2399
2399
  private errorHandlerFunc;
2400
2400
  /** Which rows each delivered block carried, for withdrawal and eviction reporting. @internal */
2401
2401
  private ledger;
2402
- /** Set by destroy(); a reply that resolves afterwards belongs to a dropped cache. @internal */
2403
- private destroyed;
2402
+ /**
2403
+ * Bumped whenever the rows this datasource was reading for are dropped (a teardown, or a
2404
+ * filter/sort change). A REQUEST_SERVER reply that resolves for an earlier generation was read
2405
+ * for a cache the grid no longer has.
2406
+ * @remarks Deliberately a generation rather than a "destroyed" flag: AG Grid calls `destroy()`
2407
+ * on the datasource bean it then keeps using (`InfiniteRowModel.start()` re-applies the
2408
+ * `datasource` grid option, and `setDatasource` destroys the previous one first), so a sticky
2409
+ * flag would disable the instance the grid is still driving.
2410
+ * @internal
2411
+ */
2412
+ private loadGeneration;
2404
2413
  /**
2405
2414
  * Max time a DATASERVER block may stay pending before the safety valve resolves it with the
2406
2415
  * rows accumulated so far.
@@ -2601,6 +2610,13 @@ declare class GenesisInfiniteDatasource implements IDatasource {
2601
2610
  * @internal
2602
2611
  */
2603
2612
  private teardownDataserverSubscription;
2613
+ /**
2614
+ * Drops the subscription and the cached rows.
2615
+ * @remarks AG Grid calls this on the bean it then keeps using (`InfiniteRowModel.start()`
2616
+ * re-applies the `datasource` grid option, and `setDatasource` destroys the previous one
2617
+ * first), and it can land while a block request is in flight. So it must leave the datasource
2618
+ * able to serve that reply and the next `getRows`: it drops the subscription, not the instance.
2619
+ */
2604
2620
  destroy?(): void;
2605
2621
  }
2606
2622
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@genesislcap/grid-pro",
3
3
  "description": "Genesis Foundation AG Grid",
4
- "version": "15.25.0-FUI-2611.1",
4
+ "version": "15.25.0-FUI-2611.2",
5
5
  "sideEffects": false,
6
6
  "license": "SEE LICENSE IN license.txt",
7
7
  "main": "dist/esm/index.js",
@@ -40,20 +40,20 @@
40
40
  }
41
41
  },
42
42
  "devDependencies": {
43
- "@genesislcap/foundation-testing": "15.25.0-FUI-2611.1",
44
- "@genesislcap/genx": "15.25.0-FUI-2611.1",
45
- "@genesislcap/rollup-builder": "15.25.0-FUI-2611.1",
46
- "@genesislcap/ts-builder": "15.25.0-FUI-2611.1",
47
- "@genesislcap/uvu-playwright-builder": "15.25.0-FUI-2611.1",
48
- "@genesislcap/vite-builder": "15.25.0-FUI-2611.1",
49
- "@genesislcap/webpack-builder": "15.25.0-FUI-2611.1"
43
+ "@genesislcap/foundation-testing": "15.25.0-FUI-2611.2",
44
+ "@genesislcap/genx": "15.25.0-FUI-2611.2",
45
+ "@genesislcap/rollup-builder": "15.25.0-FUI-2611.2",
46
+ "@genesislcap/ts-builder": "15.25.0-FUI-2611.2",
47
+ "@genesislcap/uvu-playwright-builder": "15.25.0-FUI-2611.2",
48
+ "@genesislcap/vite-builder": "15.25.0-FUI-2611.2",
49
+ "@genesislcap/webpack-builder": "15.25.0-FUI-2611.2"
50
50
  },
51
51
  "dependencies": {
52
- "@genesislcap/foundation-comms": "15.25.0-FUI-2611.1",
53
- "@genesislcap/foundation-criteria": "15.25.0-FUI-2611.1",
54
- "@genesislcap/foundation-logger": "15.25.0-FUI-2611.1",
55
- "@genesislcap/foundation-ui": "15.25.0-FUI-2611.1",
56
- "@genesislcap/foundation-utils": "15.25.0-FUI-2611.1",
52
+ "@genesislcap/foundation-comms": "15.25.0-FUI-2611.2",
53
+ "@genesislcap/foundation-criteria": "15.25.0-FUI-2611.2",
54
+ "@genesislcap/foundation-logger": "15.25.0-FUI-2611.2",
55
+ "@genesislcap/foundation-ui": "15.25.0-FUI-2611.2",
56
+ "@genesislcap/foundation-utils": "15.25.0-FUI-2611.2",
57
57
  "@microsoft/fast-colors": "5.3.1",
58
58
  "@microsoft/fast-components": "2.30.6",
59
59
  "@microsoft/fast-element": "1.14.0",