@quereus/quereus 4.13.0 → 4.13.1
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.
|
@@ -67,6 +67,15 @@ export declare function makeEmptyFilterInfo(): FilterInfo;
|
|
|
67
67
|
*
|
|
68
68
|
* Used by the isolation layer's primary-key point lookups and by any caller that must
|
|
69
69
|
* drive an O(log n) seek instead of a scan.
|
|
70
|
+
*
|
|
71
|
+
* The result is a seek REQUEST, not a negotiated access plan. `aConstraintUsage[].omit`
|
|
72
|
+
* is an OUTPUT of `getBestAccessPlan` — the module's own claim that it applied a filter,
|
|
73
|
+
* which is what earns the engine the right to drop the residual. A hand-built FilterInfo
|
|
74
|
+
* never ran that negotiation, so this builder cannot assert `omit` on the module's
|
|
75
|
+
* behalf: it reports `false`, and the caller driving `query()` directly owns re-checking
|
|
76
|
+
* every returned row (there is no engine above the call to reapply anything). The
|
|
77
|
+
* negotiated path in `rule-select-access-path` builds its own `aConstraintUsage` inline
|
|
78
|
+
* and still sets `omit: true`, where it is earned.
|
|
70
79
|
*/
|
|
71
80
|
export declare function makeIndexEqSeekFilterInfo(index: IndexDescriptor, seekColumnIndexes: readonly number[], values: readonly SqlValue[]): FilterInfo;
|
|
72
81
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter-info.d.ts","sourceRoot":"","sources":["../../../src/vtab/filter-info.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAGzE;;;GAGG;AACH,MAAM,WAAW,UAAU;IAC1B,mEAAmE;IACnE,MAAM,EAAE,MAAM,CAAC;IACf,mEAAmE;IACnE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,oEAAoE;IACpE,WAAW,EAAE,aAAa,CAAC;QAAE,UAAU,EAAE,eAAe,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/E,8DAA8D;IAC9D,IAAI,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC9B;;;;OAIG;IACH,eAAe,EAAE,SAAS,CAAC;IAE3B;;;;;;;;OAQG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IAEjC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAQD;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,SAAY,EAAE,IAAI,SAAY,GAAG,UAAU,CAsBrF;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,UAAU,CAsBhD;AAED
|
|
1
|
+
{"version":3,"file":"filter-info.d.ts","sourceRoot":"","sources":["../../../src/vtab/filter-info.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAGzE;;;GAGG;AACH,MAAM,WAAW,UAAU;IAC1B,mEAAmE;IACnE,MAAM,EAAE,MAAM,CAAC;IACf,mEAAmE;IACnE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,oEAAoE;IACpE,WAAW,EAAE,aAAa,CAAC;QAAE,UAAU,EAAE,eAAe,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/E,8DAA8D;IAC9D,IAAI,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC9B;;;;OAIG;IACH,eAAe,EAAE,SAAS,CAAC;IAE3B;;;;;;;;OAQG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IAEjC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAQD;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,SAAY,EAAE,IAAI,SAAY,GAAG,UAAU,CAsBrF;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,UAAU,CAsBhD;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,yBAAyB,CACxC,KAAK,EAAE,eAAe,EACtB,iBAAiB,EAAE,SAAS,MAAM,EAAE,EACpC,MAAM,EAAE,SAAS,QAAQ,EAAE,GACzB,UAAU,CA4BZ;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,GAAG,UAAU,CAehG"}
|
|
@@ -67,6 +67,15 @@ export function makeEmptyFilterInfo() {
|
|
|
67
67
|
*
|
|
68
68
|
* Used by the isolation layer's primary-key point lookups and by any caller that must
|
|
69
69
|
* drive an O(log n) seek instead of a scan.
|
|
70
|
+
*
|
|
71
|
+
* The result is a seek REQUEST, not a negotiated access plan. `aConstraintUsage[].omit`
|
|
72
|
+
* is an OUTPUT of `getBestAccessPlan` — the module's own claim that it applied a filter,
|
|
73
|
+
* which is what earns the engine the right to drop the residual. A hand-built FilterInfo
|
|
74
|
+
* never ran that negotiation, so this builder cannot assert `omit` on the module's
|
|
75
|
+
* behalf: it reports `false`, and the caller driving `query()` directly owns re-checking
|
|
76
|
+
* every returned row (there is no engine above the call to reapply anything). The
|
|
77
|
+
* negotiated path in `rule-select-access-path` builds its own `aConstraintUsage` inline
|
|
78
|
+
* and still sets `omit: true`, where it is earned.
|
|
70
79
|
*/
|
|
71
80
|
export function makeIndexEqSeekFilterInfo(index, seekColumnIndexes, values) {
|
|
72
81
|
const constraints = seekColumnIndexes.map((columnIndex, i) => ({
|
|
@@ -86,7 +95,7 @@ export function makeIndexEqSeekFilterInfo(index, seekColumnIndexes, values) {
|
|
|
86
95
|
nOrderBy: 0,
|
|
87
96
|
aOrderBy: [],
|
|
88
97
|
colUsed: 0n,
|
|
89
|
-
aConstraintUsage: constraints.map(c => ({ argvIndex: c.argvIndex, omit:
|
|
98
|
+
aConstraintUsage: constraints.map(c => ({ argvIndex: c.argvIndex, omit: false })),
|
|
90
99
|
idxNum: 0,
|
|
91
100
|
idxStr,
|
|
92
101
|
orderByConsumed: false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter-info.js","sourceRoot":"","sources":["../../../src/vtab/filter-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAI3D,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAkD5E,wEAAwE;AACxE,MAAM,iBAAiB,GAAG,UAAU,CAAC;AAErC,qFAAqF;AACrF,MAAM,aAAa,GAAG,OAAO,CAAC;AAE9B;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAI,GAAG,SAAS,EAAE,IAAI,GAAG,SAAS;IACxE,OAAO;QACN,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,iBAAiB;QACzB,WAAW,EAAE,EAAE;QACf,IAAI,EAAE,EAAE;QACR,UAAU,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;QAChC,eAAe,EAAE;YAChB,WAAW,EAAE,CAAC;YACd,WAAW,EAAE,EAAE;YACf,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,EAAE;YACX,gBAAgB,EAAE,EAAE;YACpB,MAAM,EAAE,CAAC;YACT,MAAM,EAAE,iBAAiB;YACzB,eAAe,EAAE,KAAK;YACtB,aAAa,EAAE,IAAI;YACnB,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC;YAC3B,QAAQ,EAAE,CAAC;SACX;KACD,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB;IAClC,OAAO;QACN,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,aAAa;QACrB,WAAW,EAAE,EAAE;QACf,IAAI,EAAE,EAAE;QACR,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;QAC7B,eAAe,EAAE;YAChB,WAAW,EAAE,CAAC;YACd,WAAW,EAAE,EAAE;YACf,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,EAAE;YACX,gBAAgB,EAAE,EAAE;YACpB,MAAM,EAAE,CAAC;YACT,MAAM,EAAE,aAAa;YACrB,eAAe,EAAE,KAAK;YACtB,aAAa,EAAE,CAAC;YAChB,aAAa,EAAE,EAAE;YACjB,QAAQ,EAAE,CAAC;SACX;KACD,CAAC;AACH,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"filter-info.js","sourceRoot":"","sources":["../../../src/vtab/filter-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAI3D,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAkD5E,wEAAwE;AACxE,MAAM,iBAAiB,GAAG,UAAU,CAAC;AAErC,qFAAqF;AACrF,MAAM,aAAa,GAAG,OAAO,CAAC;AAE9B;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAI,GAAG,SAAS,EAAE,IAAI,GAAG,SAAS;IACxE,OAAO;QACN,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,iBAAiB;QACzB,WAAW,EAAE,EAAE;QACf,IAAI,EAAE,EAAE;QACR,UAAU,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;QAChC,eAAe,EAAE;YAChB,WAAW,EAAE,CAAC;YACd,WAAW,EAAE,EAAE;YACf,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,EAAE;YACX,gBAAgB,EAAE,EAAE;YACpB,MAAM,EAAE,CAAC;YACT,MAAM,EAAE,iBAAiB;YACzB,eAAe,EAAE,KAAK;YACtB,aAAa,EAAE,IAAI;YACnB,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC;YAC3B,QAAQ,EAAE,CAAC;SACX;KACD,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB;IAClC,OAAO;QACN,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,aAAa;QACrB,WAAW,EAAE,EAAE;QACf,IAAI,EAAE,EAAE;QACR,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;QAC7B,eAAe,EAAE;YAChB,WAAW,EAAE,CAAC;YACd,WAAW,EAAE,EAAE;YACf,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,EAAE;YACX,gBAAgB,EAAE,EAAE;YACpB,MAAM,EAAE,CAAC;YACT,MAAM,EAAE,aAAa;YACrB,eAAe,EAAE,KAAK;YACtB,aAAa,EAAE,CAAC;YAChB,aAAa,EAAE,EAAE;YACjB,QAAQ,EAAE,CAAC;SACX;KACD,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,yBAAyB,CACxC,KAAsB,EACtB,iBAAoC,EACpC,MAA2B;IAE3B,MAAM,WAAW,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAC9D,UAAU,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;QAC5E,SAAS,EAAE,CAAC,GAAG,CAAC;KAChB,CAAC,CAAC,CAAC;IACJ,MAAM,MAAM,GAAG,YAAY,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;IAElE,OAAO;QACN,MAAM,EAAE,CAAC;QACT,MAAM;QACN,WAAW;QACX,IAAI,EAAE,MAAM;QACZ,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE;QACpD,eAAe,EAAE;YAChB,WAAW,EAAE,WAAW,CAAC,MAAM;YAC/B,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;YAC/C,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,EAAE;YACX,gBAAgB,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YACjF,MAAM,EAAE,CAAC;YACT,MAAM;YACN,eAAe,EAAE,KAAK;YACtB,aAAa,EAAE,CAAC;YAChB,aAAa,EAAE,EAAE;YACjB,QAAQ,EAAE,CAAC;SACX;KACD,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CAAC,UAAsB,EAAE,YAAoB;IACnF,MAAM,MAAM,GAAG,cAAc,CAAC,UAAU,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,cAAc,CAAC,UAAU,CAAC,eAAe,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAClF,MAAM,UAAU,GAAG,kBAAkB,CAAC,UAAU,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IAE3E,IAAI,MAAM,KAAK,UAAU,CAAC,MAAM,IAAI,SAAS,KAAK,UAAU,CAAC,eAAe,CAAC,MAAM,IAAI,UAAU,KAAK,UAAU,CAAC,UAAU,EAAE,CAAC;QAC7H,OAAO,UAAU,CAAC;IACnB,CAAC;IAED,OAAO;QACN,GAAG,UAAU;QACb,MAAM;QACN,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrC,eAAe,EAAE,EAAE,GAAG,UAAU,CAAC,eAAe,EAAE,MAAM,EAAE,SAAS,EAAE;KACrE,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,UAAkC,EAAE,YAAoB;IACnF,IAAI,CAAC,UAAU;QAAE,OAAO,SAAS,CAAC;IAClC,QAAQ,UAAU,CAAC,IAAI,EAAE,CAAC;QACzB,KAAK,OAAO;YACX,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,YAAY;gBAAE,OAAO,UAAU,CAAC;YAC9D,OAAO,EAAE,GAAG,UAAU,EAAE,KAAK,EAAE,EAAE,GAAG,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,CAAC;QAC9E,KAAK,iBAAiB;YACrB,IAAI,UAAU,CAAC,SAAS,KAAK,YAAY;gBAAE,OAAO,UAAU,CAAC;YAC7D,OAAO,EAAE,GAAG,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC;QACnD;YACC,OAAO,UAAU,CAAC;IACpB,CAAC;AACF,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@quereus/quereus",
|
|
3
|
-
"version": "4.13.
|
|
3
|
+
"version": "4.13.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Pure TypeScript SQL engine — no WASM, no native bindings. Runs in browsers, Node.js, React Native, edge workers, and anywhere JS runs.",
|
|
6
6
|
"keywords": [
|
|
@@ -72,9 +72,9 @@
|
|
|
72
72
|
"mutation:subsystem": "node mutation-subsystem.mjs"
|
|
73
73
|
},
|
|
74
74
|
"devDependencies": {
|
|
75
|
-
"@quereus/plugin-leveldb": "^4.13.
|
|
75
|
+
"@quereus/plugin-leveldb": "^4.13.1",
|
|
76
76
|
"@quereus/plugin-loader": "*",
|
|
77
|
-
"@quereus/store": "^4.13.
|
|
77
|
+
"@quereus/store": "^4.13.1",
|
|
78
78
|
"@stryker-mutator/core": "^9.6.1",
|
|
79
79
|
"@stryker-mutator/mocha-runner": "^9.6.1",
|
|
80
80
|
"@stryker-mutator/typescript-checker": "^9.6.1",
|