@quereus/store 4.15.2 → 4.16.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.
@@ -63,9 +63,10 @@ export interface KVCostProfile {
63
63
  * per-key iterator at all. The gap is backend-dependent and was small enough to accept
64
64
  * when IndexedDB was measured (≈3 real against 5 charged, recorded at the PK arm in
65
65
  * `store-module-access-plan.ts`). LevelDB's 2026-08-19 measurement puts the same two
66
- * shapes ~12x apart on that backend (~15-19 per windowed seek key against ~1.3 per
67
- * batched key), which is why LevelDB declares nothing rather than declaring its measured
68
- * seek cost. Splitting this into per-arm terms is
66
+ * shapes roughly an ORDER OF MAGNITUDE apart on that backend — a windowed seek key costs
67
+ * about fifteen sequential rows where a batched one costs about one-and-a-half — which is
68
+ * why LevelDB declares nothing rather than declaring its measured seek cost. Splitting
69
+ * this into per-arm terms is
69
70
  * `backlog/debt-store-seek-positioning-conflates-two-arms`; the numbers are in
70
71
  * `packages/quereus-plugin-leveldb/README.md` § Measured read cost.
71
72
  */
@@ -73,6 +74,24 @@ export interface KVCostProfile {
73
74
  }
74
75
  /** A {@link KVCostProfile} with every field filled in — what the planner actually reads. */
75
76
  export type ResolvedCostProfile = Required<KVCostProfile>;
77
+ /**
78
+ * Cost per pairwise comparison of the external sort a plan avoids by emitting rows
79
+ * already ordered. Commensurate with `AccessPlanBuilder`'s units (full scan = rows × 1.0):
80
+ * sorting 1000 rows ≈ 1000 × log2(1000) × 0.1 ≈ 1000 — on the order of scanning them once.
81
+ */
82
+ export declare const SORT_COST_PER_COMPARISON = 0.1;
83
+ /**
84
+ * Per-row cost charged for each pushed filter an ordering-only access pattern leaves
85
+ * unhandled (the residual `Filter` re-checks them above the leaf). This term is what keeps
86
+ * an ordering-only index walk from displacing a selective seek on a filtered query.
87
+ */
88
+ export declare const RESIDUAL_FILTER_COST_PER_ROW = 0.2;
89
+ /**
90
+ * The estimated cost of an external O(n·log n) sort over `rows` rows — the memory
91
+ * module's `estimateSortCost`, at {@link SORT_COST_PER_COMPARISON}. 0 at `rows <= 1`,
92
+ * where no sort is needed.
93
+ */
94
+ export declare function estimateSortCost(rows: number): number;
76
95
  /**
77
96
  * The module's pre-profile constants, and the default for any backend that declares
78
97
  * nothing. `pointRead: 1.0` says a resolved row costs about what a sequentially-iterated
@@ -1 +1 @@
1
- {"version":3,"file":"cost-profile.d.ts","sourceRoot":"","sources":["../../../src/common/cost-profile.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,WAAW,aAAa;IAC7B;;;;;;;;OAQG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAE5B;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,4FAA4F;AAC5F,MAAM,MAAM,mBAAmB,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC;AAE1D;;;;;;;;;GASG;AAIH,eAAO,MAAM,mBAAmB,EAAE,mBAA6E,CAAC;AAEhH;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,aAAa,GAAG,SAAS,GAAG,mBAAmB,CAM1F"}
1
+ {"version":3,"file":"cost-profile.d.ts","sourceRoot":"","sources":["../../../src/common/cost-profile.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,WAAW,aAAa;IAC7B;;;;;;;;OAQG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAE5B;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,4FAA4F;AAC5F,MAAM,MAAM,mBAAmB,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC;AAW1D;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAE5C;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,MAAM,CAAC;AAEhD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAGrD;AAED;;;;;;;;;GASG;AAIH,eAAO,MAAM,mBAAmB,EAAE,mBAA6E,CAAC;AAEhH;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,aAAa,GAAG,SAAS,GAAG,mBAAmB,CAM1F"}
@@ -9,6 +9,36 @@
9
9
  * boundary on IndexedDB, and pricing both at one number makes the planner wrong for one
10
10
  * of them.
11
11
  */
12
+ // --- Ordering-walk cost terms -------------------------------------------------------------
13
+ //
14
+ // Both constants below are DELIBERATELY the memory module's numbers
15
+ // (`MemoryTableModule`'s SORT_COST_PER_COMPARISON / RESIDUAL_FILTER_COST_PER_ROW), for the
16
+ // same reason `ARM_SELECTIVITY.eq` in store-module-access-plan.ts is deliberately the
17
+ // memory module's EQ_SELECTIVITY_WITHOUT_STATS: the two backends should make the same
18
+ // ordering-vs-sort tradeoff for the same query. The engine's own `planner/cost` module is
19
+ // not exported from `@quereus/quereus`, so they are restated here rather than imported.
20
+ /**
21
+ * Cost per pairwise comparison of the external sort a plan avoids by emitting rows
22
+ * already ordered. Commensurate with `AccessPlanBuilder`'s units (full scan = rows × 1.0):
23
+ * sorting 1000 rows ≈ 1000 × log2(1000) × 0.1 ≈ 1000 — on the order of scanning them once.
24
+ */
25
+ export const SORT_COST_PER_COMPARISON = 0.1;
26
+ /**
27
+ * Per-row cost charged for each pushed filter an ordering-only access pattern leaves
28
+ * unhandled (the residual `Filter` re-checks them above the leaf). This term is what keeps
29
+ * an ordering-only index walk from displacing a selective seek on a filtered query.
30
+ */
31
+ export const RESIDUAL_FILTER_COST_PER_ROW = 0.2;
32
+ /**
33
+ * The estimated cost of an external O(n·log n) sort over `rows` rows — the memory
34
+ * module's `estimateSortCost`, at {@link SORT_COST_PER_COMPARISON}. 0 at `rows <= 1`,
35
+ * where no sort is needed.
36
+ */
37
+ export function estimateSortCost(rows) {
38
+ if (rows <= 1)
39
+ return 0;
40
+ return rows * Math.log2(rows) * SORT_COST_PER_COMPARISON;
41
+ }
12
42
  /**
13
43
  * The module's pre-profile constants, and the default for any backend that declares
14
44
  * nothing. `pointRead: 1.0` says a resolved row costs about what a sequentially-iterated
@@ -1 +1 @@
1
- {"version":3,"file":"cost-profile.js","sourceRoot":"","sources":["../../../src/common/cost-profile.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAqEH;;;;;;;;;GASG;AACH,0FAA0F;AAC1F,2FAA2F;AAC3F,wFAAwF;AACxF,MAAM,CAAC,MAAM,mBAAmB,GAAwB,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,CAAC,CAAC;AAEhH;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAkC;IACpE,IAAI,CAAC,OAAO;QAAE,OAAO,mBAAmB,CAAC;IACzC,OAAO;QACN,SAAS,EAAE,gBAAgB,CAAC,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC;QAC3D,eAAe,EAAE,gBAAgB,CAAC,OAAO,CAAC,eAAe,EAAE,iBAAiB,CAAC;KAC7E,CAAC;AACH,CAAC;AAED,iFAAiF;AACjF,SAAS,gBAAgB,CAAC,QAA4B,EAAE,KAAgC;IACvF,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC1C,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IAC1C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;QACjD,OAAO,CAAC,IAAI,CACX,4DAA4D,KAAK,KAAK,QAAQ,KAAK;cACjF,sCAAsC,MAAM,EAAE,CAChD,CAAC;QACF,OAAO,MAAM,CAAC;IACf,CAAC;IACD,OAAO,QAAQ,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"cost-profile.js","sourceRoot":"","sources":["../../../src/common/cost-profile.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAsEH,6FAA6F;AAC7F,EAAE;AACF,oEAAoE;AACpE,2FAA2F;AAC3F,sFAAsF;AACtF,sFAAsF;AACtF,0FAA0F;AAC1F,wFAAwF;AAExF;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,CAAC;AAE5C;;;;GAIG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,GAAG,CAAC;AAEhD;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC5C,IAAI,IAAI,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC;IACxB,OAAO,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,wBAAwB,CAAC;AAC1D,CAAC;AAED;;;;;;;;;GASG;AACH,0FAA0F;AAC1F,2FAA2F;AAC3F,wFAAwF;AACxF,MAAM,CAAC,MAAM,mBAAmB,GAAwB,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,CAAC,CAAC;AAEhH;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAkC;IACpE,IAAI,CAAC,OAAO;QAAE,OAAO,mBAAmB,CAAC;IACzC,OAAO;QACN,SAAS,EAAE,gBAAgB,CAAC,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC;QAC3D,eAAe,EAAE,gBAAgB,CAAC,OAAO,CAAC,eAAe,EAAE,iBAAiB,CAAC;KAC7E,CAAC;AACH,CAAC;AAED,iFAAiF;AACjF,SAAS,gBAAgB,CAAC,QAA4B,EAAE,KAAgC;IACvF,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC1C,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IAC1C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;QACjD,OAAO,CAAC,IAAI,CACX,4DAA4D,KAAK,KAAK,QAAQ,KAAK;cACjF,sCAAsC,MAAM,EAAE,CAChD,CAAC;QACF,OAAO,MAAM,CAAC;IACf,CAAC;IACD,OAAO,QAAQ,CAAC;AACjB,CAAC"}
@@ -335,6 +335,40 @@ export declare function indexRangeAtPositionIsOrderSafe(db: Database, columns: R
335
335
  * range window, which needs no equality prefix ahead of it.
336
336
  */
337
337
  export declare function indexLeadingRangeIsOrderSafe(db: Database, columns: ReadonlyArray<ColumnSchema>, index: TableIndexSchema, keyCollations: ReadonlyArray<string | undefined>): boolean;
338
+ /**
339
+ * True when a byte walk over index column `position` emits rows in the order
340
+ * `ORDER BY <that column>` would produce.
341
+ *
342
+ * Strictly narrower than {@link indexRangeAtPositionIsOrderSafe}, and deliberately so:
343
+ * that predicate judges a byte WINDOW against the residual filter's collation (the index
344
+ * column's own COLLATE, else the declared one), which is what a seek needs — the residual
345
+ * re-compares fetched rows under exactly that collation. This one judges byte ORDER
346
+ * against the TABLE COLUMN'S DECLARED collation, which is what Sort uses: `ORDER BY name`
347
+ * compares under `name`'s declared collation regardless of what any index says. The two
348
+ * answers differ exactly when an index column carries an explicit `COLLATE` that its
349
+ * table column does not:
350
+ *
351
+ * ```sql
352
+ * create table t (name text primary key, v integer); -- name declared BINARY
353
+ * create index ix_name on t (name collate nocase);
354
+ * select * from t where name > 'M' order by name;
355
+ * ```
356
+ *
357
+ * The index key bytes are NOCASE-normalized, so the walk emits NOCASE order — the seek
358
+ * window is exact ({@link indexRangeAtPositionIsOrderSafe} says safe: key NOCASE ==
359
+ * residual NOCASE) but the `ORDER BY` wants BINARY order, where `'Z' < 'a'` and NOCASE
360
+ * disagrees. Claiming ordering there would elide the Sort and silently return rows in
361
+ * the wrong order, so this predicate declines it.
362
+ */
363
+ export declare function indexOrderMatchesDeclaredCollation(db: Database, columns: ReadonlyArray<ColumnSchema>, index: TableIndexSchema, keyCollations: ReadonlyArray<string | undefined>, position: number): boolean;
364
+ /**
365
+ * How many LEADING index columns satisfy {@link indexOrderMatchesDeclaredCollation} —
366
+ * the index twin of {@link pkOrderPreservingPrefixLength}. The ordering advertisement a
367
+ * secondary-index plan makes is truncated to this prefix, and voided entirely at `0`:
368
+ * a column past the prefix has key bytes whose memcmp order is not its `ORDER BY`
369
+ * order, so nothing after it may be claimed either.
370
+ */
371
+ export declare function indexOrderPreservingPrefixLength(db: Database, columns: ReadonlyArray<ColumnSchema>, index: TableIndexSchema, keyCollations: ReadonlyArray<string | undefined>): number;
338
372
  /**
339
373
  * How many LEADING primary-key members have key bytes whose memcmp order matches their
340
374
  * declared collation's comparator order, per {@link keyOrderMatchesCollation}.
@@ -1 +1 @@
1
- {"version":3,"file":"pk-key-resolution.d.ts","sourceRoot":"","sources":["../../../src/common/pk-key-resolution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pk-key-resolution.d.ts","sourceRoot":"","sources":["../../../src/common/pk-key-resolution.ts"],"names":[],"mappings":"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"}
@@ -459,6 +459,53 @@ export function indexRangeAtPositionIsOrderSafe(db, columns, index, keyCollation
459
459
  export function indexLeadingRangeIsOrderSafe(db, columns, index, keyCollations) {
460
460
  return indexRangeAtPositionIsOrderSafe(db, columns, index, keyCollations, 0);
461
461
  }
462
+ /**
463
+ * True when a byte walk over index column `position` emits rows in the order
464
+ * `ORDER BY <that column>` would produce.
465
+ *
466
+ * Strictly narrower than {@link indexRangeAtPositionIsOrderSafe}, and deliberately so:
467
+ * that predicate judges a byte WINDOW against the residual filter's collation (the index
468
+ * column's own COLLATE, else the declared one), which is what a seek needs — the residual
469
+ * re-compares fetched rows under exactly that collation. This one judges byte ORDER
470
+ * against the TABLE COLUMN'S DECLARED collation, which is what Sort uses: `ORDER BY name`
471
+ * compares under `name`'s declared collation regardless of what any index says. The two
472
+ * answers differ exactly when an index column carries an explicit `COLLATE` that its
473
+ * table column does not:
474
+ *
475
+ * ```sql
476
+ * create table t (name text primary key, v integer); -- name declared BINARY
477
+ * create index ix_name on t (name collate nocase);
478
+ * select * from t where name > 'M' order by name;
479
+ * ```
480
+ *
481
+ * The index key bytes are NOCASE-normalized, so the walk emits NOCASE order — the seek
482
+ * window is exact ({@link indexRangeAtPositionIsOrderSafe} says safe: key NOCASE ==
483
+ * residual NOCASE) but the `ORDER BY` wants BINARY order, where `'Z' < 'a'` and NOCASE
484
+ * disagrees. Claiming ordering there would elide the Sort and silently return rows in
485
+ * the wrong order, so this predicate declines it.
486
+ */
487
+ export function indexOrderMatchesDeclaredCollation(db, columns, index, keyCollations, position) {
488
+ const spec = index.columns[position];
489
+ if (!spec)
490
+ return false;
491
+ const col = columns[spec.index];
492
+ return keyOrderMatchesCollation(db, col, keyCollations[position] ?? 'BINARY', col?.collation ?? 'BINARY');
493
+ }
494
+ /**
495
+ * How many LEADING index columns satisfy {@link indexOrderMatchesDeclaredCollation} —
496
+ * the index twin of {@link pkOrderPreservingPrefixLength}. The ordering advertisement a
497
+ * secondary-index plan makes is truncated to this prefix, and voided entirely at `0`:
498
+ * a column past the prefix has key bytes whose memcmp order is not its `ORDER BY`
499
+ * order, so nothing after it may be claimed either.
500
+ */
501
+ export function indexOrderPreservingPrefixLength(db, columns, index, keyCollations) {
502
+ let n = 0;
503
+ while (n < index.columns.length
504
+ && indexOrderMatchesDeclaredCollation(db, columns, index, keyCollations, n)) {
505
+ n++;
506
+ }
507
+ return n;
508
+ }
462
509
  /**
463
510
  * How many LEADING primary-key members have key bytes whose memcmp order matches their
464
511
  * declared collation's comparator order, per {@link keyOrderMatchesCollation}.
@@ -1 +1 @@
1
- {"version":3,"file":"pk-key-resolution.js","sourceRoot":"","sources":["../../../src/common/pk-key-resolution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pk-key-resolution.js","sourceRoot":"","sources":["../../../src/common/pk-key-resolution.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACN,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,EAClB,SAAS,EACT,aAAa,GAQb,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,UAAU,sBAAsB,CACrC,KAAuC,EACvC,OAAoC,EACpC,QAAgB;IAEhB,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;QACtB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC/B,kFAAkF;QAClF,iFAAiF;QACjF,kFAAkF;QAClF,oEAAoE;QACpE,MAAM,IAAI,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;QACrC,OAAO,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IAC1E,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,yBAAyB,CACxC,KAAuB,EACvB,OAAoC;IAEpC,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;QAC9B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACpC,wEAAwE;QACxE,gFAAgF;QAChF,gFAAgF;QAChF,6EAA6E;QAC7E,iEAAiE;QACjE,MAAM,IAAI,GAAG,kBAAkB,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YACpE,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,QAAQ,CAAC,SAAS,IAAI,QAAQ;SAC1D,CAAC,CAAC;QACH,OAAO,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IAC1E,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,UAAU,yBAAyB,CAAC,IAA6B;IACtE,mFAAmF;IACnF,+EAA+E;IAC/E,oFAAoF;IACpF,mFAAmF;IACnF,+EAA+E;IAC/E,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI;QAAE,OAAO,iBAAiB,CAAC;IACxF,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAA6B;IACpE,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI;QAAE,OAAO,aAAa,CAAC;IACpF,OAAO,yBAAyB,CAAC,IAAI,CAAC,CAAC;AACxC,CAAC;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CAAC,KAAe;IACrC,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;AACrE,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CACrC,KAAuC,EACvC,OAAoC;IAEpC,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,yBAAyB,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;AACrF,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,yBAAyB,CACxC,KAAuB,EACvB,OAAoC;IAEpC,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,yBAAyB,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;AAC7F,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,0BAA0B,CACzC,UAAiC,EACjC,OAAoC;IAEpC,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,yBAAyB,CACxC,KAAuC,EACvC,OAAoC;IAEpC,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;QACtB,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC;QACpD,OAAO,mBAAmB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1F,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAA6B;IAC9D,OAAO,sBAAsB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,UAAU,0BAA0B,CAAC,IAA6B;IACvE,OAAO,mBAAmB,CAAC,IAAI,CAAC;WAC5B,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,CAAC,CAAC;AACxE,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAM,UAAU,0BAA0B,CAAC,IAA6B,EAAE,KAAe;IACxF,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5C,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,CAAC,IAAI,EAAE,CAAC;QACtC,+EAA+E;QAC/E,8DAA8D;QAC9D,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC;IAChF,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI;QAAE,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACjE,OAAO,KAAK,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAM,UAAU,wBAAwB,CACvC,EAAY,EACZ,MAAgC,EAChC,YAAoB,EACpB,gBAAwB;IAExB,iFAAiF;IACjF,gFAAgF;IAChF,kFAAkF;IAClF,mFAAmF;IACnF,+EAA+E;IAC/E,4EAA4E;IAC5E,kFAAkF;IAClF,gFAAgF;IAChF,iFAAiF;IACjF,gFAAgF;IAChF,+EAA+E;IAC/E,iFAAiF;IACjF,qEAAqE;IACrE,0DAA0D;IAC1D,IAAI,mBAAmB,CAAC,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,0BAA0B,CAAC,MAAM,EAAE,WAAW,CAAC;QAAE,OAAO,KAAK,CAAC;IAC/G,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5C,IAAI,gBAAgB,CAAC,WAAW,EAAE,KAAK,YAAY,CAAC,WAAW,EAAE;QAAE,OAAO,KAAK,CAAC;IAChF,OAAQ,EAAuB,CAAC,2BAA2B,CAAC,YAAY,CAAC,CAAC;AAC3E,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,sBAAsB,CAC9B,OAAoC,EACpC,KAAuB,EACvB,QAAgB;IAEhB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrC,OAAO,CAAC,IAAI,EAAE,SAAS,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,IAAI,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;AAC7F,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,+BAA+B,CAC9C,OAAoC,EACpC,KAAuB,EACvB,aAAgD,EAChD,YAAoB;IAEpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QACxB,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAAE,SAAS;QACtD,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,WAAW,EAAE,KAAK,sBAAsB,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;IAC9G,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,+BAA+B,CAC9C,EAAY,EACZ,OAAoC,EACpC,KAAuB,EACvB,aAAgD,EAChD,QAAgB;IAEhB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrC,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,OAAO,wBAAwB,CAC9B,EAAE,EACF,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EACnB,aAAa,CAAC,QAAQ,CAAC,IAAI,QAAQ,EACnC,sBAAsB,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,CAChD,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,4BAA4B,CAC3C,EAAY,EACZ,OAAoC,EACpC,KAAuB,EACvB,aAAgD;IAEhD,OAAO,+BAA+B,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,kCAAkC,CACjD,EAAY,EACZ,OAAoC,EACpC,KAAuB,EACvB,aAAgD,EAChD,QAAgB;IAEhB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrC,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChC,OAAO,wBAAwB,CAC9B,EAAE,EACF,GAAG,EACH,aAAa,CAAC,QAAQ,CAAC,IAAI,QAAQ,EACnC,GAAG,EAAE,SAAS,IAAI,QAAQ,CAC1B,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gCAAgC,CAC/C,EAAY,EACZ,OAAoC,EACpC,KAAuB,EACvB,aAAgD;IAEhD,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM;WAC3B,kCAAkC,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC,EAAE,CAAC;QAC9E,CAAC,EAAE,CAAC;IACL,CAAC;IACD,OAAO,CAAC,CAAC;AACV,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,6BAA6B,CAC5C,EAAY,EACZ,MAAmB,EACnB,eAAkD,EAClD,iBAAyB;IAEzB,MAAM,EAAE,GAAG,MAAM,CAAC,oBAAoB,CAAC;IACvC,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,YAAY,GAAG,eAAe,CAAC,CAAC,CAAC,IAAI,iBAAiB,CAAC;QAC7D,IAAI,CAAC,wBAAwB,CAAC,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,EAAE,SAAS,IAAI,QAAQ,CAAC;YAAE,MAAM;QACxF,CAAC,EAAE,CAAC;IACL,CAAC;IACD,OAAO,CAAC,CAAC;AACV,CAAC"}
@@ -22,6 +22,14 @@ import { type ResolvedCostProfile } from './cost-profile.js';
22
22
  * The access plan this module advertises for `request`, before the caller stamps the
23
23
  * module-wide `honorsCollatedRangeBounds` flag onto it.
24
24
  *
25
+ * Two halves: {@link computeFilterAccessPlan} picks the best plan for the pushed
26
+ * PREDICATE (PK point / multi-seek / range, secondary-index seek, or full scan), and
27
+ * {@link chooseOrderingPlan} then asks whether walking some index purely for its
28
+ * EMISSION ORDER — pushing no filters at all — prices below that plan plus the external
29
+ * sort it would otherwise need. Wrapping the whole filter decision (rather than
30
+ * threading the comparison through its several return points) is what lets the early
31
+ * PK returns compete against an ordering walk too.
32
+ *
25
33
  * `tableKeyCollation` is the table's resolved key collation K, passed in rather than
26
34
  * looked up: the caller (`StoreModule.getBestAccessPlan`) owns the module's table map.
27
35
  * It is the PRIMARY-KEY arms' concern only — `resolvePkKeyCollations` still falls back to
@@ -1 +1 @@
1
- {"version":3,"file":"store-module-access-plan.d.ts","sourceRoot":"","sources":["../../../src/common/store-module-access-plan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EACX,qBAAqB,EACrB,oBAAoB,EAEpB,QAAQ,EAIR,WAAW,EAEX,MAAM,kBAAkB,CAAC;AAS1B,OAAO,EAAuB,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAsblF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,qBAAqB,CACpC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,WAAW,EACtB,OAAO,EAAE,qBAAqB,EAC9B,iBAAiB,EAAE,MAAM,EACzB,WAAW,EAAE,mBAAmB,GAC9B,oBAAoB,CAoOtB"}
1
+ {"version":3,"file":"store-module-access-plan.d.ts","sourceRoot":"","sources":["../../../src/common/store-module-access-plan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EACX,qBAAqB,EACrB,oBAAoB,EAEpB,QAAQ,EAIR,WAAW,EAEX,MAAM,kBAAkB,CAAC;AAU1B,OAAO,EAIN,KAAK,mBAAmB,EACxB,MAAM,mBAAmB,CAAC;AAub3B;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,qBAAqB,CACpC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,WAAW,EACtB,OAAO,EAAE,qBAAqB,EAC9B,iBAAiB,EAAE,MAAM,EACzB,WAAW,EAAE,mBAAmB,GAC9B,oBAAoB,CAGtB"}
@@ -16,9 +16,9 @@
16
16
  * Free functions rather than a layer of the store-module chain — access planning reads
17
17
  * no module state beyond the table's configured key collation, which the caller passes in.
18
18
  */
19
- import { AccessPlanBuilder, combineConjunctive, equalitySeekKeyCount, hasSemanticOrdering, isMultiValueEquality, selectivityFromHistogram, } from '@quereus/quereus';
20
- import { PARITY_COST_PROFILE } from './cost-profile.js';
21
- import { indexPrefixSeekIsCollationExact, indexRangeAtPositionIsOrderSafe, pkOrderPreservingPrefixLength, resolveIndexKeyCollations, resolvePkKeyCollations, } from './pk-key-resolution.js';
19
+ import { AccessPlanBuilder, combineConjunctive, equalitySeekKeyCount, hasSemanticOrdering, isMultiValueEquality, nullSafeOrderingPrefixLength, selectivityFromHistogram, } from '@quereus/quereus';
20
+ import { estimateSortCost, PARITY_COST_PROFILE, RESIDUAL_FILTER_COST_PER_ROW, } from './cost-profile.js';
21
+ import { indexOrderPreservingPrefixLength, indexPrefixSeekIsCollationExact, indexRangeAtPositionIsOrderSafe, pkOrderPreservingPrefixLength, resolveIndexKeyCollations, resolvePkKeyCollations, } from './pk-key-resolution.js';
22
22
  /**
23
23
  * Planner-side constraint operator groups, as `BestAccessPlanRequest.filters` spells
24
24
  * them. Kept as one source of truth for the access-plan code below: {@link computeBestAccessPlan}
@@ -329,6 +329,14 @@ function resolvePrimaryKeyPins(filters, pkColumns) {
329
329
  * The access plan this module advertises for `request`, before the caller stamps the
330
330
  * module-wide `honorsCollatedRangeBounds` flag onto it.
331
331
  *
332
+ * Two halves: {@link computeFilterAccessPlan} picks the best plan for the pushed
333
+ * PREDICATE (PK point / multi-seek / range, secondary-index seek, or full scan), and
334
+ * {@link chooseOrderingPlan} then asks whether walking some index purely for its
335
+ * EMISSION ORDER — pushing no filters at all — prices below that plan plus the external
336
+ * sort it would otherwise need. Wrapping the whole filter decision (rather than
337
+ * threading the comparison through its several return points) is what lets the early
338
+ * PK returns compete against an ordering walk too.
339
+ *
332
340
  * `tableKeyCollation` is the table's resolved key collation K, passed in rather than
333
341
  * looked up: the caller (`StoreModule.getBestAccessPlan`) owns the module's table map.
334
342
  * It is the PRIMARY-KEY arms' concern only — `resolvePkKeyCollations` still falls back to
@@ -341,6 +349,18 @@ function resolvePrimaryKeyPins(filters, pkColumns) {
341
349
  * reason `tableKeyCollation` is: this function reads no module state of its own.
342
350
  */
343
351
  export function computeBestAccessPlan(db, tableInfo, request, tableKeyCollation, costProfile) {
352
+ const filterPlan = computeFilterAccessPlan(db, tableInfo, request, tableKeyCollation, costProfile);
353
+ return chooseOrderingPlan(db, tableInfo, request, filterPlan, costProfile);
354
+ }
355
+ /**
356
+ * The best access plan for the pushed PREDICATE alone — {@link computeBestAccessPlan}'s
357
+ * former body, extracted verbatim so {@link chooseOrderingPlan} can wrap every one of its
358
+ * return points. Ordering is not ignored here (the seek arms still attach their
359
+ * advertisements, which is how a plan that already satisfies the required ordering skips
360
+ * the walk comparison entirely); this function just never chooses an access path FOR
361
+ * ordering's sake.
362
+ */
363
+ function computeFilterAccessPlan(db, tableInfo, request, tableKeyCollation, costProfile) {
344
364
  const estimatedRows = request.estimatedRows ?? 1000;
345
365
  // Whether ANY pushed filter is a runtime-valued set. Detected once, on the REQUEST:
346
366
  // such a request is engine-synthesized (`rule-key-set-seek`'s probes, or the key-set
@@ -561,6 +581,153 @@ export function computeBestAccessPlan(db, tableInfo, request, tableKeyCollation,
561
581
  // tables, matching memory-mode behavior.
562
582
  return scanPlan;
563
583
  }
584
+ /**
585
+ * The empty pinned-column set an ordering-only walk aligns its index under. Deliberately
586
+ * empty even when the request carries equality filters: the walk pushes NO filters, so
587
+ * nothing pins a column to one value inside the walk itself. (The residual `Filter` above
588
+ * the leaf does make an equality column constant in the OUTPUT, which is the argument
589
+ * `MemoryTableModule.evaluateOrderingOnlyPlans` leans on to skip pinned columns — but that
590
+ * argument quietly assumes the equality's comparison collation equates only rows the walk
591
+ * emits adjacently. Declining the skip costs an optimization, never an answer.)
592
+ */
593
+ const NO_PINNED_COLUMNS = new Set();
594
+ /**
595
+ * True when a filter plan's `providesOrdering` satisfies `required` position for
596
+ * position (same `columnIndex`, same `desc`; the plan may provide extra trailing
597
+ * ordering) — the engine's own `orderingMatches` (rule-grow-retrieve.ts). Every arm of
598
+ * {@link computeFilterAccessPlan} that matches a `requiredOrdering` claims it VERBATIM,
599
+ * so in practice this is "did some arm already claim it".
600
+ */
601
+ function orderingAlreadySatisfied(provided, required) {
602
+ if (!provided || provided.length < required.length)
603
+ return false;
604
+ for (let i = 0; i < required.length; i++) {
605
+ if (provided[i].columnIndex !== required[i].columnIndex || provided[i].desc !== required[i].desc) {
606
+ return false;
607
+ }
608
+ }
609
+ return true;
610
+ }
611
+ /**
612
+ * Consider replacing `filterPlan` with an ordering-only walk of a secondary index: a
613
+ * whole-index scan (`plan=0`) chosen purely for its emission order, with EVERY pushed
614
+ * filter left to the residual `Filter`. `... order by n` with an index on `n` and no
615
+ * usable predicate otherwise full-scans the data store in PK order and sorts the whole
616
+ * table — the walk streams the rows already ordered at the price of one index-entry read
617
+ * plus one row resolution per row.
618
+ *
619
+ * The Sort-absorption rule (`trySortAbsorbViaIndexOrdering`, rule-grow-retrieve.ts)
620
+ * deletes the Sort on the strength of `providesOrdering` alone, with no cost comparison
621
+ * of its own — so this function is the only place "is the walk actually cheaper than
622
+ * sorting?" gets asked. Mirrors `MemoryTableModule.adjustPlanForOrdering` /
623
+ * `evaluateOrderingOnlyPlans`, minus the memory module's seek-plus-ordering hybrid (the
624
+ * store's seek arms already advertise their ordering, so the hybrid case IS `filterPlan`
625
+ * satisfying the request).
626
+ *
627
+ * `filterPlan` is returned unchanged unless ALL of:
628
+ * - a required ordering is present that `filterPlan` does not already satisfy;
629
+ * - the request carries no runtime-valued set — such a request is engine-synthesized
630
+ * (`rule-key-set-seek`'s probes / the key-set semi join itself) and must be answered
631
+ * with the module's genuine filter plan: substituting a walk whose cost does not
632
+ * scale with the key count would corrupt the probe's cost line, and the walk's
633
+ * all-false `handledFilters` would push the runtime-set membership into a residual
634
+ * the engine never meant to evaluate that way. Same ONE rule as the seek-vs-scan
635
+ * veto exemption above.
636
+ * - some non-partial index's order-preserving prefix satisfies the required ordering
637
+ * with NO pinned columns (see {@link NO_PINNED_COLUMNS});
638
+ * - the cheapest such walk prices STRICTLY below `filterPlan` plus the external sort
639
+ * it would otherwise need. Ties keep `filterPlan` — it is the plan the store already
640
+ * produces, and the sort estimate is the softer of the two numbers.
641
+ *
642
+ * NOTE: the walk is priced for the WHOLE table because `request.limit` is never
643
+ * populated on this path — `trySortAbsorbViaIndexOrdering` builds its request with no
644
+ * `limit`, and the `LimitOffset` grow arm that does populate one sits above the Sort,
645
+ * not above the Retrieve. So `order by n limit 1` is priced exactly like `order by n`,
646
+ * and a backend declaring an expensive `pointRead` (IndexedDB) prefers scan-then-sort
647
+ * even under a tight LIMIT, where the walk would have read one row. The enabling engine
648
+ * change is backlog `feat-sort-absorb-blind-to-limit`.
649
+ */
650
+ function chooseOrderingPlan(db, tableInfo, request, filterPlan, profile) {
651
+ const required = request.requiredOrdering;
652
+ if (!required || required.length === 0)
653
+ return filterPlan;
654
+ if (orderingAlreadySatisfied(filterPlan.providesOrdering, required))
655
+ return filterPlan;
656
+ if (request.filters.some(f => f.runtimeSet !== undefined))
657
+ return filterPlan;
658
+ const estimatedRows = request.estimatedRows ?? 1000;
659
+ let bestWalk = null;
660
+ let bestWidth = 0;
661
+ for (const index of tableInfo.indexes ?? []) {
662
+ // Partial indexes are excluded from access planning outright (see
663
+ // {@link tryIndexAccessPlan}) — doubly so here, where the walk IS the whole
664
+ // row source and a partial index omits rows no residual can resurrect.
665
+ if (index.predicate || index.columns.length === 0)
666
+ continue;
667
+ // Same collation gate as the seek arms' ordering advertisement: only the prefix
668
+ // whose key bytes provably reproduce the DECLARED collation's order may claim.
669
+ const indexKeyCollations = resolveIndexKeyCollations(index, tableInfo.columns);
670
+ const orderPreservingPrefix = indexOrderPreservingPrefixLength(db, tableInfo.columns, index, indexKeyCollations);
671
+ const claimablePrefix = nullSafeOrderingPrefixLength(tableInfo, request, index.columns, orderPreservingPrefix, NO_PINNED_COLUMNS);
672
+ if (claimablePrefix === 0)
673
+ continue;
674
+ const indexOrdering = index.columns
675
+ .slice(0, claimablePrefix)
676
+ .map(col => ({ columnIndex: col.index, desc: !!col.desc }));
677
+ if (!indexOrderingSatisfies(indexOrdering, required, NO_PINNED_COLUMNS))
678
+ continue;
679
+ const walk = buildOrderingWalkPlan(index, request, required, estimatedRows, profile);
680
+ // Cheapest first, then NARROWEST. The cost is currently identical for every
681
+ // candidate — {@link buildOrderingWalkPlan} reads only the row count, the profile
682
+ // and the filter count, never the index — so cost alone would leave declaration
683
+ // order deciding, and `ix_wide(n, s, u)` would be walked in preference to
684
+ // `ix_narrow(n)` purely for being declared first. Both walks visit the same number
685
+ // of entries, but the wide one's keys carry two extra encoded columns per entry,
686
+ // so it reads strictly more bytes for the same rows. Ties on both keep the first
687
+ // candidate, matching the best-seek loop above.
688
+ const width = index.columns.length;
689
+ if (!bestWalk || walk.cost < bestWalk.cost || (walk.cost === bestWalk.cost && width < bestWidth)) {
690
+ bestWalk = walk;
691
+ bestWidth = width;
692
+ }
693
+ }
694
+ if (!bestWalk)
695
+ return filterPlan;
696
+ // NOTE: taking the walk also replaces `filterPlan.rows` with the WHOLE table — the
697
+ // walk pushes nothing, so that figure is honest for the leaf, but it is the number
698
+ // the rest of the plan is costed against, and the residual `Filter` above re-narrows
699
+ // it only by the engine's default selectivity. Nothing observed today depends on it
700
+ // (a walk wins only where its own price already beats scan-then-sort). If a join over
701
+ // a walked leaf is ever seen ordering itself around an inflated leaf estimate, carry
702
+ // `filterPlan.rows` onto the walk instead of the table count.
703
+ const sortCost = estimateSortCost(filterPlan.rows ?? estimatedRows);
704
+ return bestWalk.cost < filterPlan.cost + sortCost ? bestWalk : filterPlan;
705
+ }
706
+ /**
707
+ * The advertisement for one ordering-only walk candidate: a whole-index range scan that
708
+ * resolves EVERY index entry to its row (`estimatedRows × profile.pointRead`, added via
709
+ * `addCost` like the seek arms rather than restating the shape's formula) and re-checks
710
+ * every pushed filter in the residual (`estimatedRows × filters × 0.2` — the term that
711
+ * stops a walk from displacing a selective seek on a filtered query).
712
+ *
713
+ * `indexName` is set with NO `seekColumnIndexes`, so `rule-select-access-path`
714
+ * physicalizes through its legacy path's ordering branch: an `IndexScanNode` whose
715
+ * idxStr is `idx=<name>(0);plan=0` (`makeOrderedScanFilterInfo`) and whose FilterInfo
716
+ * carries no constraints. `StoreTableScan.analyzeIndexAccess` reads the `plan=0`
717
+ * explicitly and walks the whole index store. `orderingIndexName` equals `indexName` —
718
+ * `validateAccessPlan` rejects an ordering claim naming any index but the one walked.
719
+ */
720
+ function buildOrderingWalkPlan(index, request, required, estimatedRows, profile) {
721
+ const plan = AccessPlanBuilder
722
+ .rangeScan(estimatedRows)
723
+ .addCost(estimatedRows * profile.pointRead)
724
+ .addCost(estimatedRows * request.filters.length * RESIDUAL_FILTER_COST_PER_ROW)
725
+ .setHandledFilters(new Array(request.filters.length).fill(false))
726
+ .setIndexName(index.name)
727
+ .setExplanation(`Store index ordering walk on ${index.name}`)
728
+ .build();
729
+ return { ...plan, providesOrdering: required, orderingIndexName: index.name };
730
+ }
564
731
  /**
565
732
  * The `_primary_` multi-seek advertisement for a WHOLE-primary-key IN (`where pk in (…)`,
566
733
  * or a runtime-valued set on the PK), or null when a gate declines it.
@@ -593,10 +760,10 @@ function primaryKeyMultiSeekPlan(tableInfo, request, pkColumns, pins, estimatedR
593
760
  // large `where pk in (…)` prefers a scan slightly sooner than it should.
594
761
  //
595
762
  // That acceptance was priced on IndexedDB's 1.7x bias. LevelDB's 2026-08-19 read-cost
596
- // measurement makes the same bias ~12x there (a windowed seek key costs ~15-19 scan
597
- // rows, while THIS arm's batched `readEffectiveRowsByKeys` path costs ~1.3), which is
598
- // why that backend declares no profile at all rather than declaring its measured seek
599
- // cost and disfiguring this arm. So the tradeoff still holds for every backend that
763
+ // measurement makes the same bias an order of magnitude there (a windowed seek key costs
764
+ // about fifteen scan rows, while THIS arm's batched `readEffectiveRowsByKeys` path costs
765
+ // about one-and-a-half), which is why that backend declares no profile at all rather than
766
+ // declaring its measured seek cost and disfiguring this arm. So the tradeoff still holds for every backend that
600
767
  // declares one today, but it is now the reason a measured backend CANNOT declare —
601
768
  // tracked as `backlog/debt-store-seek-positioning-conflates-two-arms`, with the numbers
602
769
  // in `packages/quereus-plugin-leveldb/README.md` § Measured read cost.
@@ -762,6 +929,13 @@ function tryIndexAccessPlan(db, tableInfo, request, index, estimatedRows, profil
762
929
  /** The arm's shape plus one per-fetched-row resolution term at the given price. */
763
930
  const seekingArm = (pointRead) => armShape().addCost(rows * pointRead);
764
931
  const costOnly = (why) => {
932
+ // NO ordering claim on a cost-only decline, ever: it names no index and no seek
933
+ // columns, so the engine sequentially scans the DATA store in primary-key order.
934
+ // An ordering claim here would make `rule-select-access-path` take its
935
+ // ordering-only branch and emit an IndexScanNode over a walk the store never
936
+ // performs — a silent wrong-order answer. (The PK-order advertisement the scan
937
+ // genuinely could carry is a separate matter — see the NOTE at the
938
+ // `costOnlyFallback` return in {@link computeBestAccessPlan}.)
765
939
  const plan = armShape()
766
940
  .setHandledFilters(new Array(request.filters.length).fill(false))
767
941
  .setExplanation(`Store index scan on ${index.name} (${why})`)
@@ -817,7 +991,10 @@ function tryIndexAccessPlan(db, tableInfo, request, index, estimatedRows, profil
817
991
  // per-seek positioning term keeps a 500-key IN over a 10-row table from pricing
818
992
  // below a full scan and issuing 500 seeks to read 10 rows. `isSet` false mirrors
819
993
  // MemoryTableModule.evaluateIndexAccess's setIsSet(!isMultiSeek). No ordering is
820
- // advertised — window emission order is encoded-key order, not any column order.
994
+ // advertised — N merged windows emit in seek-key order, not column order, so the
995
+ // single-window arms' `buildIndexOrderingAdvertisement` must never be attached
996
+ // here. `isMultiSeek` (not `seekKeyCount > 1`) is the gate deliberately: a
997
+ // runtime-valued set is delivered as a multi-seek even at `maxCount === 1`.
821
998
  //
822
999
  // **This arm pays the per-row `profile.pointRead` exactly when `statsBacked`.** It
823
1000
  // resolves every entry it matches, like the single-window arms do, so the physics
@@ -886,12 +1063,20 @@ function tryIndexAccessPlan(db, tableInfo, request, index, estimatedRows, profil
886
1063
  const armLabel = arm === 'prefixRange'
887
1064
  ? `prefix-range seek(prefix=${eqCols.length})`
888
1065
  : arm === 'range' ? 'range scan' : 'seek';
889
- const plan = seekingArm(profile.pointRead)
890
- .setHandledFilters(handledFilters)
891
- .setIndexName(index.name)
892
- .setSeekColumns(seekCols)
893
- .setExplanation(`Store index ${armLabel} on ${index.name}`)
894
- .build();
1066
+ // Ordering advertisement — the three single-window arms only, resolved AFTER the
1067
+ // `prefixRange → eq` degradation above so the claim describes the arm actually
1068
+ // advertised (like the row estimate, and unlike a degraded arm's dropped bound, the
1069
+ // pinned set `eqCols` is the same either way). The multi-seek and cost-only returns
1070
+ // above deliberately make no claim; the reasons are stated at each.
1071
+ const plan = {
1072
+ ...seekingArm(profile.pointRead)
1073
+ .setHandledFilters(handledFilters)
1074
+ .setIndexName(index.name)
1075
+ .setSeekColumns(seekCols)
1076
+ .setExplanation(`Store index ${armLabel} on ${index.name}`)
1077
+ .build(),
1078
+ ...buildIndexOrderingAdvertisement(db, tableInfo, request, index, indexKeyCollations, eqCols),
1079
+ };
895
1080
  return {
896
1081
  plan,
897
1082
  // Statistics-backed: `rows` discriminates per query, so the backend's DECLARED price
@@ -925,7 +1110,18 @@ function tryIndexAccessPlan(db, tableInfo, request, index, estimatedRows, profil
925
1110
  * `monotonicOn` reflects the access path itself and is independent of any
926
1111
  * `requiredOrdering`; it always advertises the leading PK column. Strict
927
1112
  * monotonicity is claimed iff the PK is single-column — composite PKs can
928
- * repeat values on the leading column.
1113
+ * repeat values on the leading column. It is NOT independent of the gating below,
1114
+ * though: a `direction: 'desc'` claim asserts the same physical order
1115
+ * `providesOrdering` would, and the engine has a standing conversion back the other way
1116
+ * (`deriveOrderingFromMonotonicOn`, planner/framework/physical-utils.ts — no callers as
1117
+ * of writing, but `rule-monotonic-limit-pushdown` already matches a Sort's direction
1118
+ * against `monotonicOn` and would push a LIMIT past it once a module advertises
1119
+ * `supportsOrdinalSeek`). So a member the claimable prefix rejects must void
1120
+ * `monotonicOn` too, not merely truncate `providesOrdering` around it.
1121
+ *
1122
+ * `supportsAsofRight` rides on `monotonicOn` by definition ("implies `monotonicOn` is
1123
+ * set" — see its declaration), so it needs no separate gate: both are dropped together
1124
+ * whenever the leading member is not claimable.
929
1125
  *
930
1126
  * Returns an empty object when there is no PK (heap-only table) — without a
931
1127
  * leading key column there is no natural emit order.
@@ -936,18 +1132,33 @@ function tryIndexAccessPlan(db, tableInfo, request, index, estimatedRows, profil
936
1132
  * PK members those two orders provably agree on: the advertisement is truncated to that
937
1133
  * prefix, and voided entirely when even the leading member disagrees — otherwise the
938
1134
  * absorb-Sort rule would elide a Sort and hand the caller byte-ordered rows.
1135
+ *
1136
+ * That prefix is then truncated a second time, by {@link nullSafeOrderingPrefixLength},
1137
+ * at the first DESC member a NULL could reach: the PK key bytes put such a NULL at the
1138
+ * END of the walk while the engine's ORDER BY puts it FIRST. A nullable DESC PK member is
1139
+ * reachable with no `create index` at all — `create table p (a integer null, b integer,
1140
+ * primary key (a desc, b))` — which is why the gate belongs here and not only on the
1141
+ * secondary-index path.
939
1142
  */
940
1143
  function buildPkOrderingAdvertisement(tableInfo, request, orderPreservingPrefix) {
941
1144
  const pk = tableInfo.primaryKeyDefinition;
942
1145
  if (pk.length === 0 || orderPreservingPrefix === 0)
943
1146
  return {};
1147
+ // The PK arms pin nothing this function can see: the pinning an equality/range arm does
1148
+ // is already visible as a NULL-excluding entry in `request.filters`, which the helper
1149
+ // consults itself.
1150
+ const claimablePrefix = nullSafeOrderingPrefixLength(tableInfo, request, pk, orderPreservingPrefix, NO_PINNED_COLUMNS);
1151
+ // Prefix 0 means the LEADING member is an unclaimable DESC, so `monotonicOn` on it —
1152
+ // and `supportsAsofRight`, which implies it — go with the ordering claim.
1153
+ if (claimablePrefix === 0)
1154
+ return {};
944
1155
  const leading = pk[0];
945
1156
  const monotonicOn = {
946
1157
  columnIndex: leading.index,
947
1158
  direction: leading.desc ? 'desc' : 'asc',
948
1159
  strict: pk.length === 1,
949
1160
  };
950
- const pkOrdering = pk.slice(0, orderPreservingPrefix).map(col => ({
1161
+ const pkOrdering = pk.slice(0, claimablePrefix).map(col => ({
951
1162
  columnIndex: col.index,
952
1163
  desc: !!col.desc,
953
1164
  }));
@@ -982,5 +1193,129 @@ function buildPkOrderingAdvertisement(tableInfo, request, orderPreservingPrefix)
982
1193
  supportsAsofRight: true,
983
1194
  };
984
1195
  }
1196
+ /**
1197
+ * Compute the ordering advertisement for a SINGLE-WINDOW secondary-index arm (`eq` with
1198
+ * `isMultiSeek === false`, `prefixRange`, or `range`) — the secondary-index twin of
1199
+ * {@link buildPkOrderingAdvertisement}, with the same rigour and one deliberate
1200
+ * difference in what it measures.
1201
+ *
1202
+ * **Why the claim is sound at all.** A single-window arm walks ONE contiguous byte
1203
+ * region of the index store forward, and every layer between that walk and the caller
1204
+ * preserves entry order: batched row resolution answers positionally and skips
1205
+ * dead entries without shifting later ones (`resolveIndexEntries` / `resolveRowBatch`,
1206
+ * store-table-scan.ts), and the read-your-own-writes merge interleaves pending puts /
1207
+ * deletes by byte comparison of the same keys (`iterateEffective`, store-table-base.ts).
1208
+ * `buildIndexKey` writes `{index columns}{PK}` with each column's DESC flag baked into
1209
+ * the bytes by inversion, so a forward byte walk IS a walk in each index column's
1210
+ * declared direction.
1211
+ *
1212
+ * **What it measures — the declared collation, not the residual's.** The consumer of an
1213
+ * ordering claim is `ORDER BY`, which compares under the TABLE COLUMN's declared
1214
+ * collation — not under the index column's own `COLLATE`, which is what the seek gates
1215
+ * (`indexRangeAtPositionIsOrderSafe`) rightly judge their windows against. So the claim
1216
+ * is truncated to {@link indexOrderPreservingPrefixLength} (which compares key bytes
1217
+ * against the DECLARED collation via `indexOrderMatchesDeclaredCollation` — see its doc
1218
+ * comment for the `collate nocase` counter-example) and voided at prefix 0, exactly as
1219
+ * the PK version truncates to `pkOrderPreservingPrefixLength`.
1220
+ *
1221
+ * **Matching mirrors `MemoryTableModule.indexSatisfiesOrdering`,** including its
1222
+ * equality-skip: a column pinned to one value by THIS arm's own seek (`eqCols`) is
1223
+ * constant across the whole window and contributes no ordering, so `where a = 1 order
1224
+ * by b` over `(a, b)` claims. The pinned set is this arm's `eqCols` — never every
1225
+ * equality in `request.filters` — and only a non-multi-seek arm may call this at all: a
1226
+ * multi-seek's N merged windows emit in seek-key order, not column order.
1227
+ *
1228
+ * When `requiredOrdering` is present, the claim is the request verbatim, and only when
1229
+ * genuinely satisfied; declines on any explicit `nullsFirst` (no promise about NULL
1230
+ * placement — mirrors the PK version). Never reversed: the claim is only ever the index's
1231
+ * own declared directions — the store has no reverse secondary-index walk
1232
+ * (`iterateEffective` accepts `reverse` but no secondary arm passes it). Absent a request,
1233
+ * the index's own (truncated) ordering is advertised so merge-join / streaming-aggregate
1234
+ * rules can fire opportunistically — claiming the pinned leading columns there is sound
1235
+ * for the same reason the skip is: they are constant.
1236
+ *
1237
+ * NOTE: the `nullsFirst` decline is a belt on top of the engine's own braces, not the
1238
+ * thing that makes `order by <nullable indexed col> nulls last` safe. Nothing populates
1239
+ * `OrderingSpec.nullsFirst` today (the same NOTE sits on `MemoryTableModule
1240
+ * .indexSatisfiesOrdering`): `trySortAbsorbViaIndexOrdering` refuses a sort key carrying
1241
+ * an explicit NULLS placement outright, and `ruleGrowRetrieve`'s Sort arm goes through
1242
+ * `extractOrderingFromSortKeys`, which drops `SortKey.nulls` — so that arm could never
1243
+ * see the placement to forward it. Harmless while it also never absorbs such a Sort
1244
+ * (`index-ordering.spec.ts` pins that the Sort survives). If `nullsFirst` ever starts
1245
+ * reaching `requiredOrdering`, this decline becomes load-bearing rather than redundant —
1246
+ * index bytes put NULLs FIRST on an ASC column and LAST on a DESC one (inversion), which
1247
+ * is the engine's default placement and nothing else.
1248
+ *
1249
+ * NOTE: advertising the index's own ordering with no `requiredOrdering` can COST a
1250
+ * pushdown. `ruleGrowRetrieve` carries an equipped `providesOrdering` into its re-probe as
1251
+ * a `requiredOrdering` and declines the grow when the re-probe does not match it. A bare
1252
+ * claim includes the pinned leading columns; the matched claim skips them — so
1253
+ * `[a, b]` advertised for `where a = 1` cannot be re-satisfied on a second grow and the
1254
+ * Filter stays above the Retrieve. Costs an optimization, never an answer (a Filter
1255
+ * preserves row order). If a store-backed plan is ever seen refusing a filter pushdown it
1256
+ * used to take, advertise only the unpinned suffix here.
1257
+ *
1258
+ * `orderingIndexName` is always this very index — `validateAccessPlan` rejects a claim
1259
+ * naming any index but the one the plan iterates.
1260
+ */
1261
+ function buildIndexOrderingAdvertisement(db, tableInfo, request, index, indexKeyCollations, eqCols) {
1262
+ const orderPreservingPrefix = indexOrderPreservingPrefixLength(db, tableInfo.columns, index, indexKeyCollations);
1263
+ // Additionally truncated at the first DESC column NULLs could reach: index bytes put
1264
+ // them at the walk's END, the engine's ORDER BY puts them FIRST for both directions.
1265
+ // See {@link nullSafeOrderingPrefixLength}.
1266
+ const claimablePrefix = nullSafeOrderingPrefixLength(tableInfo, request, index.columns, orderPreservingPrefix, new Set(eqCols));
1267
+ if (claimablePrefix === 0)
1268
+ return {};
1269
+ const indexOrdering = index.columns
1270
+ .slice(0, claimablePrefix)
1271
+ .map(col => ({ columnIndex: col.index, desc: !!col.desc }));
1272
+ const required = request.requiredOrdering;
1273
+ if (required && required.length > 0) {
1274
+ return indexOrderingSatisfies(indexOrdering, required, new Set(eqCols))
1275
+ ? { providesOrdering: required, orderingIndexName: index.name }
1276
+ : {};
1277
+ }
1278
+ return { providesOrdering: indexOrdering, orderingIndexName: index.name };
1279
+ }
1280
+ /**
1281
+ * True when `indexOrdering` (an index's declared column order, already truncated to its
1282
+ * order-preserving prefix) satisfies `required` — the position-for-position match of
1283
+ * `MemoryTableModule.indexSatisfiesOrdering`, over {@link OrderingSpec}s instead of a
1284
+ * schema. Leading pinned columns are skipped before aligning. Any explicit `nullsFirst`
1285
+ * declines — see {@link buildIndexOrderingAdvertisement}. An under-length index (fewer
1286
+ * unpinned columns than required keys) declines rather than claiming a prefix:
1287
+ * `orderingMatches` upstream would reject the short claim anyway, so emitting it would
1288
+ * only mislead.
1289
+ *
1290
+ * The mid-loop skip (a pinned column encountered AFTER the matched prefix, which a
1291
+ * constant column between two ordered ones would need) is kept for exact parity with the
1292
+ * memory module, where the pinned set can be non-contiguous. It is unreachable from THIS
1293
+ * caller: `pinnedCols` is `resolveEqualityPins`' `cols`, which stops at the first
1294
+ * unpinned index column, so the leading skip above already consumes every pinned column.
1295
+ */
1296
+ function indexOrderingSatisfies(indexOrdering, required, pinnedCols) {
1297
+ let i = 0; // pointer into indexOrdering
1298
+ let j = 0; // pointer into required
1299
+ while (i < indexOrdering.length && pinnedCols.has(indexOrdering[i].columnIndex))
1300
+ i++;
1301
+ while (j < required.length) {
1302
+ if (required[j].nullsFirst !== undefined)
1303
+ return false;
1304
+ if (i >= indexOrdering.length)
1305
+ return false;
1306
+ if (required[j].columnIndex === indexOrdering[i].columnIndex
1307
+ && required[j].desc === indexOrdering[i].desc) {
1308
+ i++;
1309
+ j++;
1310
+ continue;
1311
+ }
1312
+ if (pinnedCols.has(indexOrdering[i].columnIndex)) {
1313
+ i++;
1314
+ continue;
1315
+ }
1316
+ return false;
1317
+ }
1318
+ return true;
1319
+ }
985
1320
  // --- StoreTableModule interface implementation ---
986
1321
  //# sourceMappingURL=store-module-access-plan.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"store-module-access-plan.js","sourceRoot":"","sources":["../../../src/common/store-module-access-plan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store-module-access-plan.js","sourceRoot":"","sources":["../../../src/common/store-module-access-plan.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"store-table-scan.d.ts","sourceRoot":"","sources":["../../../src/common/store-table-scan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store-table-scan.d.ts","sourceRoot":"","sources":["../../../src/common/store-table-scan.ts"],"names":[],"mappings":"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"}
@@ -352,6 +352,22 @@ export class StoreTableScan extends StoreTableBase {
352
352
  const index = this.resolveIndexFromIdxStr(filterInfo.idxStr);
353
353
  if (!index)
354
354
  return null;
355
+ // An ordering-only walk (`plan=0`): the planner chose this index for its EMISSION
356
+ // ORDER (`chooseOrderingPlan`, store-module-access-plan.ts) and pushed no window at
357
+ // all. There is nothing to derive — walk the index store end to end. Index stores
358
+ // are per-index, so an unbounded `buildFullScanBounds()` is exactly this index's
359
+ // entries and nothing else. Gated on the DECODED PLAN KIND, not on an absence of
360
+ // constraints: an explicit `plan=0` is the planner stating its intent (the Sort is
361
+ // already deleted on the strength of this walk's order), and reading it explicitly
362
+ // keeps a plan/scan disagreement loud — falling through to the constraint arms
363
+ // below would degrade to a DATA-store scan in primary-key order, a silent
364
+ // wrong-order answer. (A `plan=0` naming `_primary_` never reaches here:
365
+ // `resolveIndexFromIdxStr` returns null for it and the caller full-scans the data
366
+ // store, which IS the advertised primary-key order.)
367
+ const spec = decodeIdxStr(filterInfo.idxStr);
368
+ if (spec && planKindFromCode(spec.plan) === 'scan') {
369
+ return { index, type: 'range', bounds: buildFullScanBounds() };
370
+ }
355
371
  const indexCols = index.columns.map(c => c.index);
356
372
  const indexDirections = index.columns.map(c => !!c.desc);
357
373
  const indexCollations = this.indexKeyCollations(index);
@@ -684,7 +700,9 @@ export class StoreTableScan extends StoreTableBase {
684
700
  // this today. If real persisted stores predating this format come into play,
685
701
  // their indexes must be dropped + recreated (or the table rebuilt); the
686
702
  // durable fix is to version-stamp the index store and rebuild on open, or to
687
- // fall back to a full scan the first time an empty value is seen.
703
+ // fall back to a full scan the first time an empty value is seen. The
704
+ // ordering-only walk (`plan=0`) shares this exposure: over such a store it
705
+ // would return NOTHING for the whole table rather than a narrowed window's rows.
688
706
  if (entry.value.length === 0)
689
707
  continue;
690
708
  // Cross-window dedup for a multi-seek: a data key an EARLIER window already
@@ -1 +1 @@
1
- {"version":3,"file":"store-table-scan.js","sourceRoot":"","sources":["../../../src/common/store-table-scan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store-table-scan.js","sourceRoot":"","sources":["../../../src/common/store-table-scan.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quereus/store",
3
- "version": "4.15.2",
3
+ "version": "4.16.0",
4
4
  "type": "module",
5
5
  "description": "Abstract key-value storage module for Quereus",
6
6
  "keywords": [
@@ -52,12 +52,12 @@
52
52
  "test:single": "cd ../.. && node --import ./packages/quereus-store/register.mjs node_modules/mocha/bin/mocha.js --bail"
53
53
  },
54
54
  "peerDependencies": {
55
- "@quereus/isolation": "^4.15.2",
56
- "@quereus/quereus": "^4.15.2"
55
+ "@quereus/isolation": "^4.16.0",
56
+ "@quereus/quereus": "^4.16.0"
57
57
  },
58
58
  "dependencies": {
59
- "@quereus/isolation": "^4.15.2",
60
- "@quereus/quereus": "^4.15.2"
59
+ "@quereus/isolation": "^4.16.0",
60
+ "@quereus/quereus": "^4.16.0"
61
61
  },
62
62
  "devDependencies": {
63
63
  "@types/mocha": "^10.0.10",