@quereus/quereus 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.
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/planner/nodes/table-access-nodes.d.ts.map +1 -1
- package/dist/src/planner/nodes/table-access-nodes.js +31 -7
- package/dist/src/planner/nodes/table-access-nodes.js.map +1 -1
- package/dist/src/planner/stats/analyze.d.ts.map +1 -1
- package/dist/src/planner/stats/analyze.js +9 -3
- package/dist/src/planner/stats/analyze.js.map +1 -1
- package/dist/src/runtime/emit/analyze.d.ts.map +1 -1
- package/dist/src/runtime/emit/analyze.js +1 -2
- package/dist/src/runtime/emit/analyze.js.map +1 -1
- package/dist/src/vtab/best-access-plan.d.ts +34 -0
- package/dist/src/vtab/best-access-plan.d.ts.map +1 -1
- package/dist/src/vtab/best-access-plan.js +64 -0
- package/dist/src/vtab/best-access-plan.js.map +1 -1
- package/dist/src/vtab/index-descriptor.d.ts +9 -0
- package/dist/src/vtab/index-descriptor.d.ts.map +1 -1
- package/dist/src/vtab/index-descriptor.js +15 -0
- package/dist/src/vtab/index-descriptor.js.map +1 -1
- package/dist/src/vtab/memory/layer/manager.d.ts +11 -9
- package/dist/src/vtab/memory/layer/manager.d.ts.map +1 -1
- package/dist/src/vtab/memory/layer/manager.js +12 -43
- package/dist/src/vtab/memory/layer/manager.js.map +1 -1
- package/dist/src/vtab/memory/module.d.ts +18 -0
- package/dist/src/vtab/memory/module.d.ts.map +1 -1
- package/dist/src/vtab/memory/module.js +166 -24
- package/dist/src/vtab/memory/module.js.map +1 -1
- package/dist/src/vtab/memory/table.d.ts +27 -3
- package/dist/src/vtab/memory/table.d.ts.map +1 -1
- package/dist/src/vtab/memory/table.js +28 -59
- package/dist/src/vtab/memory/table.js.map +1 -1
- package/package.json +3 -3
package/dist/src/index.d.ts
CHANGED
|
@@ -42,7 +42,7 @@ export { alterEventShape } from './vtab/alter-event-shape.js';
|
|
|
42
42
|
export type { DatabaseDataChangeEvent, DatabaseSchemaChangeEvent, MaintenanceCollisionEvent, TransactionCommitBatch, TransactionCommitListener, DataChangeSubscriptionOptions, SchemaChangeSubscriptionOptions, } from './core/database-events.js';
|
|
43
43
|
export { DatabaseEventEmitter } from './core/database-events.js';
|
|
44
44
|
export type { BestAccessPlanRequest, BestAccessPlanResult, ConstraintOp, ColumnMeta, PredicateConstraint, RuntimeSetSpec, OrderingSpec } from './vtab/best-access-plan.js';
|
|
45
|
-
export { AccessPlanBuilder, validateAccessPlan, validateAccessPlanRequest, equalitySeekKeyCount, isMultiValueEquality, } from './vtab/best-access-plan.js';
|
|
45
|
+
export { AccessPlanBuilder, validateAccessPlan, validateAccessPlanRequest, equalitySeekKeyCount, isMultiValueEquality, nullSafeOrderingPrefixLength, } from './vtab/best-access-plan.js';
|
|
46
46
|
export type { CollationFunction } from './util/comparison.js';
|
|
47
47
|
export { BINARY_COLLATION, NOCASE_COLLATION, RTRIM_COLLATION, compareCodePoints, builtinCollationResolver, normalizeCollationName, resolveCollationFunctions, compareSqlValues, compareSqlValuesFast, rowsValueIdentical, sqlValueIdentical, compareRows, compareTypedValues, createTypedComparator, createTypedRowComparator, createCollationRowComparator, createSemanticRowComparator, hasSemanticOrdering, semanticKeyTransform, comparisonSemanticsDiffer, compareWithOrderByFast, createOrderByComparatorFast, createTypedOrderByComparator, SortDirection, NullsOrdering, isTruthy, getSqlDataTypeName } from './util/comparison.js';
|
|
48
48
|
export type { LogicalType, CollationResolver, KeyNormalizer, KeyNormalizerResolver, CollationFunction as TypeCollationFunction } from './types/logical-type.js';
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.js
CHANGED
|
@@ -26,7 +26,7 @@ export { installCommitStall, settleMacrotasks } from './vtab/test-support/commit
|
|
|
26
26
|
export { DefaultVTableEventEmitter } from './vtab/events.js';
|
|
27
27
|
export { alterEventShape } from './vtab/alter-event-shape.js';
|
|
28
28
|
export { DatabaseEventEmitter } from './core/database-events.js';
|
|
29
|
-
export { AccessPlanBuilder, validateAccessPlan, validateAccessPlanRequest, equalitySeekKeyCount, isMultiValueEquality, } from './vtab/best-access-plan.js';
|
|
29
|
+
export { AccessPlanBuilder, validateAccessPlan, validateAccessPlanRequest, equalitySeekKeyCount, isMultiValueEquality, nullSafeOrderingPrefixLength, } from './vtab/best-access-plan.js';
|
|
30
30
|
export {
|
|
31
31
|
// Built-in collation functions. Custom collations are registered per-database
|
|
32
32
|
// with `db.registerCollation(...)` and resolved via `db.getCollationResolver()`.
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,8BAA8B;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAK9C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAE/C,kCAAkC;AAClC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAClF,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACzG,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,qBAAqB,EAAE,cAAc,EAAE,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGjM,oBAAoB;AACpB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EACN,sBAAsB,EACtB,mBAAmB,EACnB,yBAAyB,EACzB,uBAAuB,GACvB,MAAM,uBAAuB,CAAC;AAI/B,OAAO,EACN,kBAAkB,EAClB,2BAA2B,EAC3B,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EACtB,uBAAuB,GACvB,MAAM,4BAA4B,CAAC;AAIpC,OAAO,EACN,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,gBAAgB,GAChB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,wBAAwB,EAAE,8BAA8B,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAQxH,OAAO,EAAE,2BAA2B,EAAE,MAAM,mDAAmD,CAAC;AAEhG,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAU3F,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAE7D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAY9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAYjE,OAAO,EACN,iBAAiB,EACjB,kBAAkB,EAClB,yBAAyB,EACzB,oBAAoB,EACpB,oBAAoB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-access-nodes.d.ts","sourceRoot":"","sources":["../../../../src/planner/nodes/table-access-nodes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,KAAK,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,KAAK,SAAS,EAAwB,MAAM,gBAAgB,CAAC;AACnI,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"table-access-nodes.d.ts","sourceRoot":"","sources":["../../../../src/planner/nodes/table-access-nodes.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ import { PlanNode } from './plan-node.js';
|
|
|
7
7
|
import { TableReferenceNode } from './reference.js';
|
|
8
8
|
import { Cached } from '../../util/cached.js';
|
|
9
9
|
import { addSingletonFd } from '../util/fd-utils.js';
|
|
10
|
+
import { accessPathPlan } from '../../vtab/index-descriptor.js';
|
|
10
11
|
/**
|
|
11
12
|
* Lift an `AccessPathAdvertisement` onto `PhysicalProperties` overrides.
|
|
12
13
|
* Translates `monotonicOn.columnIndex` to an attrId via the table reference's
|
|
@@ -385,12 +386,21 @@ export class IndexSeekNode extends TableAccessNode {
|
|
|
385
386
|
}
|
|
386
387
|
const base = {
|
|
387
388
|
ordering: this.providesOrdering,
|
|
388
|
-
//
|
|
389
|
-
//
|
|
390
|
-
//
|
|
391
|
-
//
|
|
392
|
-
//
|
|
393
|
-
|
|
389
|
+
// The module's own row estimate for the access plan it chose, threaded here
|
|
390
|
+
// by `rule-select-access-path.selectPhysicalNode`. It is the only number that
|
|
391
|
+
// tracks what this particular seek matches; the constant that used to sit
|
|
392
|
+
// here made every non-PK seek advertise the same cardinality whatever it
|
|
393
|
+
// returned, and every cost decision above the seek reads this.
|
|
394
|
+
//
|
|
395
|
+
// NOTE: "the module supplied no estimate" is not distinguishable at this
|
|
396
|
+
// point, by design. The rule builds this field as `accessPlan.rows || 1000`,
|
|
397
|
+
// so a missing — or zero — `rows` has already collapsed to 1000 before the
|
|
398
|
+
// node sees it. That `|| 1000` IS the no-answer fallback. Both shipped
|
|
399
|
+
// modules always set `rows`, so only a third-party module can reach it.
|
|
400
|
+
// Spelling "unknown" apart from "zero" is owned by backlog
|
|
401
|
+
// `bug-row-estimate-conflates-unknown-and-zero`; do not invent a second
|
|
402
|
+
// convention here.
|
|
403
|
+
estimatedRows: Number(this.filterInfo.indexInfoOutput.estimatedRows),
|
|
394
404
|
fds: sourcePhysical?.fds,
|
|
395
405
|
equivClasses: sourcePhysical?.equivClasses,
|
|
396
406
|
constantBindings: sourcePhysical?.constantBindings,
|
|
@@ -406,7 +416,21 @@ export class IndexSeekNode extends TableAccessNode {
|
|
|
406
416
|
base.rangeBoundedOn = this.rangeBoundedOn;
|
|
407
417
|
if (!this.isRange && this.indexName === 'primary') {
|
|
408
418
|
const pk = this.source.tableSchema.primaryKeyDefinition ?? [];
|
|
409
|
-
|
|
419
|
+
// The singleton claim needs the seek keys to pin every primary-key column
|
|
420
|
+
// exactly ONCE. A multi-seek (`where id in (1, 2, 3)`) supplies one tuple per
|
|
421
|
+
// IN member — three seek keys against a one-column key — so a `>=` test passed
|
|
422
|
+
// for it and the node both reported one row and stamped `∅ → all columns`,
|
|
423
|
+
// which asserts the relation holds at most one row. Nothing leans on that FD
|
|
424
|
+
// today, but its consumers (uniqueness proofs, DISTINCT elision, sort elision)
|
|
425
|
+
// are exactly the rewrites that would silently drop rows if one ever did.
|
|
426
|
+
//
|
|
427
|
+
// A composite-key multi-seek that happens to reduce to a single tuple is
|
|
428
|
+
// declined here too (its `plan` is still `multiSeek`); that costs an
|
|
429
|
+
// optimization in a rare shape rather than risking a false claim.
|
|
430
|
+
// `estimatedRows` needs no override either way — the module's own estimate,
|
|
431
|
+
// read above, already says 1 for a whole-PK point seek and 3 for the IN.
|
|
432
|
+
const isMultiSeek = accessPathPlan(this.filterInfo.accessPath) === 'multiSeek';
|
|
433
|
+
if (pk.length > 0 && this.seekKeys.length === pk.length && !isMultiSeek) {
|
|
410
434
|
// Full PK equality seek — at most one row. Encode via the singleton
|
|
411
435
|
// FD `∅ → all_cols`.
|
|
412
436
|
const colCount = this.source.getType().columns.length;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-access-nodes.js","sourceRoot":"","sources":["../../../../src/planner/nodes/table-access-nodes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"table-access-nodes.js","sourceRoot":"","sources":["../../../../src/planner/nodes/table-access-nodes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../../../src/planner/stats/analyze.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAoB,MAAM,oBAAoB,CAAC;AAS5E;;;;;;;GAOG;AACH,wBAAsB,yBAAyB,CAC9C,IAAI,EAAE,YAAY,EAClB,WAAW,EAAE,WAAW,GACtB,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../../../src/planner/stats/analyze.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAoB,MAAM,oBAAoB,CAAC;AAS5E;;;;;;;GAOG;AACH,wBAAsB,yBAAyB,CAC9C,IAAI,EAAE,YAAY,EAClB,WAAW,EAAE,WAAW,GACtB,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CA6FtC"}
|
|
@@ -26,6 +26,8 @@ export async function collectStatisticsFromScan(vtab, tableSchema) {
|
|
|
26
26
|
const minValues = new Array(colCount).fill(undefined);
|
|
27
27
|
const maxValues = new Array(colCount).fill(undefined);
|
|
28
28
|
const sampleValues = Array.from({ length: colCount }, () => []);
|
|
29
|
+
/** Non-null values seen per column — the reservoir's denominator, which is NOT `rowCount`. */
|
|
30
|
+
const nonNullCounts = new Array(colCount).fill(0);
|
|
29
31
|
let rowCount = 0;
|
|
30
32
|
const maxSample = 1000;
|
|
31
33
|
// Full scan with a minimal filter that returns all rows
|
|
@@ -39,6 +41,7 @@ export async function collectStatisticsFromScan(vtab, tableSchema) {
|
|
|
39
41
|
nullCounts[i]++;
|
|
40
42
|
}
|
|
41
43
|
else {
|
|
44
|
+
nonNullCounts[i]++;
|
|
42
45
|
distinctSets[i].add(String(val));
|
|
43
46
|
// Track min/max
|
|
44
47
|
if (minValues[i] === undefined || compareSqlValues(val, minValues[i]) < 0) {
|
|
@@ -47,13 +50,16 @@ export async function collectStatisticsFromScan(vtab, tableSchema) {
|
|
|
47
50
|
if (maxValues[i] === undefined || compareSqlValues(val, maxValues[i]) > 0) {
|
|
48
51
|
maxValues[i] = val;
|
|
49
52
|
}
|
|
50
|
-
// Collect sample values for histograms
|
|
53
|
+
// Collect sample values for histograms — Algorithm R, per column.
|
|
51
54
|
if (sampleValues[i].length < maxSample) {
|
|
52
55
|
sampleValues[i].push(val);
|
|
53
56
|
}
|
|
54
57
|
else {
|
|
55
|
-
//
|
|
56
|
-
|
|
58
|
+
// The denominator is this column's own non-null count, not `rowCount`.
|
|
59
|
+
// Drawing over `rowCount` under-weights later values in proportion to how
|
|
60
|
+
// many NULLs the column holds, biasing the histogram toward the rows the
|
|
61
|
+
// scan happened to reach first.
|
|
62
|
+
const j = Math.floor(Math.random() * nonNullCounts[i]);
|
|
57
63
|
if (j < maxSample) {
|
|
58
64
|
sampleValues[i][j] = val;
|
|
59
65
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../../../src/planner/stats/analyze.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,EAAE,sBAAsB,EAAmB,MAAM,2BAA2B,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,MAAM,GAAG,GAAG,YAAY,CAAC,eAAe,CAAC,CAAC;AAE1C;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC9C,IAAkB,EAClB,WAAwB;IAExB,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;QACtC,GAAG,CAAC,iEAAiE,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QACzF,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;IAC5C,MAAM,YAAY,GAAkB,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;IACtF,MAAM,UAAU,GAAa,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACzD,MAAM,SAAS,GAA6B,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAChF,MAAM,SAAS,GAA6B,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAChF,MAAM,YAAY,GAAiB,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../../../src/planner/stats/analyze.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../../../src/runtime/emit/analyze.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../../../src/runtime/emit/analyze.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,aAAa,CAAC;AAgF/D,wBAAgB,WAAW,CAAC,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,eAAe,GAAG,WAAW,CA0FrF"}
|
|
@@ -12,8 +12,7 @@ const log = createLogger('runtime:emit:analyze');
|
|
|
12
12
|
* The statistics `ANALYZE` records for one table.
|
|
13
13
|
*
|
|
14
14
|
* A module's own `getStatistics()` is preferred — it knows its storage and can be
|
|
15
|
-
* both cheaper and more exact than a scan
|
|
16
|
-
* per-index distinct counts straight off its BTree metadata).
|
|
15
|
+
* both cheaper and more exact than a scan.
|
|
17
16
|
*
|
|
18
17
|
* A module may also DECLINE outright, returning `undefined` for the state it is
|
|
19
18
|
* currently in — the isolation layer does that while a transaction's overlay is dirty,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../../../src/runtime/emit/analyze.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAI1D,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,MAAM,GAAG,GAAG,YAAY,CAAC,sBAAsB,CAAC,CAAC;AAEjD
|
|
1
|
+
{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../../../src/runtime/emit/analyze.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAI1D,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,MAAM,GAAG,GAAG,YAAY,CAAC,sBAAsB,CAAC,CAAC;AAEjD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,KAAK,UAAU,sBAAsB,CACpC,IAAkB,EAClB,WAAwB;IAExB,MAAM,QAAQ,GAAG,OAAO,IAAI,CAAC,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACnG,IAAI,QAAQ,IAAI,QAAQ,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC;QAAE,OAAO,QAAQ,CAAC;IAE/D,MAAM,OAAO,GAAG,MAAM,yBAAyB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACnE,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAE5B,6EAA6E;IAC7E,6BAA6B;IAC7B,OAAO,QAAQ,CAAC;AACjB,CAAC;AAED;;;;;;;;;;GAUG;AACH,KAAK,UAAU,yBAAyB,CACvC,IAAkB,EAClB,WAAwB,EACxB,KAAsB;IAEtB,IAAI,OAAO,IAAI,CAAC,cAAc,KAAK,UAAU;QAAE,OAAO;IACtD,IAAI,CAAC;QACJ,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACZ,GAAG,CAAC,yCAAyC,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACrE,CAAC;AACF,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,IAAqB,EAAE,IAAqB;IACvE,kFAAkF;IAClF,mFAAmF;IACnF,kFAAkF;IAClF,MAAM,GAAG,GAAG,KAAK,EAAE,IAAoB,EAA+B,EAAE;QACvE,MAAM,MAAM,GAAU,EAAE,CAAC;QACzB,MAAM,aAAa,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC;QAC5C,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,IAAI,MAAM,CAAC;QACzD,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAEzD,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,GAAG,CAAC,yCAAyC,EAAE,gBAAgB,CAAC,CAAC;YACjE,OAAO,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACrC,CAAC;QAED,MAAM,MAAM,GAAkB,EAAE,CAAC;QACjC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC;YAC/E,IAAI,KAAK;gBAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC;YACP,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,YAAY,EAAE,EAAE,CAAC;gBAC3C,IAAI,CAAC,KAAK,CAAC,MAAM;oBAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvC,CAAC;QACF,CAAC;QAED,KAAK,MAAM,WAAW,IAAI,MAAM,EAAE,CAAC;YAClC,GAAG,CAAC,uBAAuB,EAAE,WAAW,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;YAEvE,IAAI,CAAC;gBACJ,gDAAgD;gBAChD,MAAM,MAAM,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;gBAC9C,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,UAAU;oBAAE,SAAS;gBAEnD,MAAM,OAAO,GAAqB,WAAW,CAAC,QAAQ,IAAI,EAAE,CAAC;gBAC7D,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAChC,IAAI,CAAC,EAAE,EACP,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,cAAc,EAC1B,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,IAAI,EAChB,OAAO,CACP,CAAC;gBAEF,IAAI,CAAC;oBACJ,MAAM,KAAK,GAAG,MAAM,sBAAsB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;oBAE9D,IAAI,KAAK,EAAE,CAAC;wBACX,GAAG,CAAC,sCAAsC,EAAE,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;wBAC9E,6EAA6E;wBAC7E,MAAM,kBAAkB,GAAgB,EAAE,GAAG,WAAW,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;wBAC9E,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;wBACpC,yEAAyE;wBACzE,yEAAyE;wBACzE,uEAAuE;wBACvE,wEAAwE;wBACxE,sEAAsE;wBACtE,uEAAuE;wBACvE,qDAAqD;wBACrD,aAAa,CAAC,iBAAiB,EAAE,CAAC,YAAY,CAAC;4BAC9C,IAAI,EAAE,gBAAgB;4BACtB,UAAU,EAAE,WAAW,CAAC,UAAU;4BAClC,UAAU,EAAE,WAAW,CAAC,IAAI;4BAC5B,SAAS,EAAE,WAAW;4BACtB,SAAS,EAAE,kBAAkB;yBAC7B,CAAC,CAAC;wBACH,MAAM,yBAAyB,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;wBAC1D,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;oBACjD,CAAC;gBACF,CAAC;wBAAS,CAAC;oBACV,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;gBACzB,CAAC;YACF,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACZ,GAAG,CAAC,0BAA0B,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;gBACrD,8EAA8E;gBAC9E,qDAAqD;gBACrD,iFAAiF;gBACjF,8EAA8E;gBAC9E,8EAA8E;gBAC9E,uBAAuB;YACxB,CAAC;QACF,CAAC;QAED,OAAO,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC,CAAC;IAEF,OAAO;QACN,MAAM,EAAE,EAAE;QACV,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;QACf,IAAI,EAAE,WAAW,IAAI,CAAC,eAAe,IAAI,YAAY,EAAE;KACvD,CAAC;AACH,CAAC"}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
import { type SqlValue, type Row } from '../common/types.js';
|
|
6
6
|
import type { LogicalType } from '../types/logical-type.js';
|
|
7
7
|
import { type IndexDescriptor } from './index-descriptor.js';
|
|
8
|
+
import type { IndexColumnSchema, TableSchema } from '../schema/table.js';
|
|
8
9
|
/**
|
|
9
10
|
* Constraint operators that can be pushed down to virtual tables
|
|
10
11
|
*/
|
|
@@ -128,6 +129,39 @@ export declare function equalitySeekKeyCount(f: PredicateConstraint): number | n
|
|
|
128
129
|
* one fills no equality role at all, so it is not multi-valued either.
|
|
129
130
|
*/
|
|
130
131
|
export declare function isMultiValueEquality(f: PredicateConstraint): boolean;
|
|
132
|
+
/**
|
|
133
|
+
* Truncate an ordered key's order-preserving prefix at the first DESC column whose walk
|
|
134
|
+
* could misplace NULLs. Shared by every module that turns an index (or primary-key) walk
|
|
135
|
+
* into an ordering claim.
|
|
136
|
+
*
|
|
137
|
+
* The engine's ORDER BY places NULLs FIRST for BOTH directions — placement is absolute,
|
|
138
|
+
* never direction-conditioned (`orderByNullResult`, util/comparison.ts). Both shipped
|
|
139
|
+
* backends agree on an ASC column and DISAGREE on a DESC one: the store bit-inverts the
|
|
140
|
+
* column's key bytes (NULL's low `0x00` tag ends up last) and the memory module negates
|
|
141
|
+
* the ascending comparator (NULL is the lowest value, so negation sends it last). So a
|
|
142
|
+
* DESC ordering claim is only sound when no NULL can appear in that column's emitted
|
|
143
|
+
* rows:
|
|
144
|
+
*
|
|
145
|
+
* - the column is declared NOT NULL — columns are NOT NULL by default in this engine, so
|
|
146
|
+
* this is the case that keeps the gate from firing on ordinary tables;
|
|
147
|
+
* - the column is pinned by this plan's own equality (`pinnedCols`) — an equality never
|
|
148
|
+
* matches NULL, and a pinned column contributes no ordering anyway;
|
|
149
|
+
* - some pushed filter on the column is NULL-excluding ({@link NULL_EXCLUDING_OPS}) —
|
|
150
|
+
* this is what keeps `where n > 5 order by n desc` fast, and it holds whether or not
|
|
151
|
+
* the module marks the filter handled: an unhandled filter is retained by the engine
|
|
152
|
+
* as a residual `Filter`, which removes the NULL rows and preserves order either way.
|
|
153
|
+
*
|
|
154
|
+
* `keyColumns` is `ReadonlyArray<IndexColumnSchema>` rather than a whole `IndexSchema` so
|
|
155
|
+
* that a table's `primaryKeyDefinition` can be passed directly — `PrimaryKeyColumnDefinition`
|
|
156
|
+
* is structurally identical (`{ index; desc?; collation? }`) and a nullable DESC primary-key
|
|
157
|
+
* member is exposed by exactly the same reasoning as a secondary-index one.
|
|
158
|
+
*
|
|
159
|
+
* The prefix-length form is the primitive. A caller that claims a required ordering
|
|
160
|
+
* VERBATIM (all or nothing, which is what both backends' request-matching paths do) wants
|
|
161
|
+
* the boolean `nullSafeOrderingPrefixLength(...) === matchedLength`; truncation only
|
|
162
|
+
* matters where an index's OWN ordering is advertised with no request to match.
|
|
163
|
+
*/
|
|
164
|
+
export declare function nullSafeOrderingPrefixLength(tableInfo: TableSchema, request: BestAccessPlanRequest, keyColumns: ReadonlyArray<IndexColumnSchema>, orderPreservingPrefix: number, pinnedCols: ReadonlySet<number>): number;
|
|
131
165
|
/**
|
|
132
166
|
* Ordering specification for ORDER BY clauses
|
|
133
167
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"best-access-plan.d.ts","sourceRoot":"","sources":["../../../src/vtab/best-access-plan.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAc,KAAK,QAAQ,EAAE,KAAK,GAAG,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAA2B,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"best-access-plan.d.ts","sourceRoot":"","sources":["../../../src/vtab/best-access-plan.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAc,KAAK,QAAQ,EAAE,KAAK,GAAG,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAA2B,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEzE;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,aAAa,GAAG,IAAI,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEhJ;;GAEG;AACH,MAAM,WAAW,UAAU;IAC1B,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,+BAA+B;IAC/B,IAAI,EAAE,WAAW,CAAC;IAClB,qDAAqD;IACrD,YAAY,EAAE,OAAO,CAAC;IACtB,kDAAkD;IAClD,QAAQ,EAAE,OAAO,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,SAAS;IACzB,KAAK,CAAC,EAAE;QAAE,EAAE,EAAE,IAAI,GAAG,GAAG,CAAC;QAAC,KAAK,EAAE,QAAQ,CAAA;KAAE,CAAC;IAC5C,KAAK,CAAC,EAAE;QAAE,EAAE,EAAE,IAAI,GAAG,GAAG,CAAC;QAAC,KAAK,EAAE,QAAQ,CAAA;KAAE,CAAC;CAC5C;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,cAAc;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B;;;;;;;;;OASG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,8CAA8C;IAC9C,WAAW,EAAE,MAAM,CAAC;IACpB,0BAA0B;IAC1B,EAAE,EAAE,YAAY,CAAC;IACjB,6DAA6D;IAC7D,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,+DAA+D;IAC/D,MAAM,EAAE,OAAO,CAAC;IAChB,oDAAoD;IACpD,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;IACrB;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,cAAc,CAAC;CACrC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,mBAAmB,GAAG,MAAM,GAAG,IAAI,CAY1E;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAIpE;AAoBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,4BAA4B,CAC3C,SAAS,EAAE,WAAW,EACtB,OAAO,EAAE,qBAAqB,EAC9B,UAAU,EAAE,aAAa,CAAC,iBAAiB,CAAC,EAC5C,qBAAqB,EAAE,MAAM,EAC7B,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,GAC7B,MAAM,CAUR;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC5B,+BAA+B;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,qDAAqD;IACrD,IAAI,EAAE,OAAO,CAAC;IACd,oDAAoD;IACpD,UAAU,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACrC,oCAAoC;IACpC,OAAO,EAAE,SAAS,UAAU,EAAE,CAAC;IAC/B,wDAAwD;IACxD,OAAO,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACxC,4DAA4D;IAC5D,gBAAgB,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAC3C,qCAAqC;IACrC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB;;;;;;;;;;OAUG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,wDAAwD;IACxD,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,kFAAkF;IAClF,cAAc,EAAE,SAAS,OAAO,EAAE,CAAC;IACnC,kEAAkE;IAClE,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,OAAO,CAAC;IACvC,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,qDAAqD;IACrD,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,8CAA8C;IAC9C,gBAAgB,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAC3C,4DAA4D;IAC5D,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,2FAA2F;IAC3F,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;;;;;OAUG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,4DAA4D;IAC5D,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,6EAA6E;IAC7E,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;;;;;;;;OAaG;IACH,WAAW,CAAC,EAAE;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,KAAK,GAAG,MAAM,CAAC;QAC1B,MAAM,EAAE,OAAO,CAAC;KAChB,CAAC;IAEF;;;;;;;;;;;;;;;;;;;OAmBG;IACH,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAEpC;;;;;;;OAOG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,qBAAa,iBAAiB;IAC7B,OAAO,CAAC,MAAM,CAAqC;IAEnD;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,iBAAiB;IAOzD;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,GAAE,MAAY,GAAG,iBAAiB;IAQ/E;;OAEG;IACH,MAAM,CAAC,SAAS,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,GAAE,MAAY,GAAG,iBAAiB;IAOnF;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK3B;;;;;;;;OAQG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQ5B;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAKvC;;OAEG;IACH,iBAAiB,CAAC,cAAc,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI;IAK3D;;OAEG;IACH,WAAW,CAAC,QAAQ,EAAE,SAAS,YAAY,EAAE,GAAG,IAAI;IAKpD;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAK9B;;OAEG;IACH,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAKzC;;OAEG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAKrC;;;OAGG;IACH,kBAAkB,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI;IAK1D;;OAEG;IACH,cAAc,CAAC,iBAAiB,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI;IAK1D;;OAEG;IACH,iBAAiB,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,OAAO,GAAG,IAAI;IAKtD;;OAEG;IACH,KAAK,IAAI,oBAAoB;CAW7B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI,CA8B9E;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CACjC,OAAO,EAAE,qBAAqB,EAC9B,MAAM,EAAE,oBAAoB,GAC1B,IAAI,CAwGN"}
|
|
@@ -61,6 +61,70 @@ export function isMultiValueEquality(f) {
|
|
|
61
61
|
return equalitySeekKeyCount(f) !== null;
|
|
62
62
|
return Array.isArray(f.value) && f.value.length > 1;
|
|
63
63
|
}
|
|
64
|
+
/**
|
|
65
|
+
* Pushed-filter operators that reject a NULL in the filtered column: every comparison and
|
|
66
|
+
* IN-membership evaluates to NULL (not TRUE) against a NULL operand, and `IS NOT NULL`
|
|
67
|
+
* says so outright. A row with NULL in that column therefore cannot survive the filter —
|
|
68
|
+
* wherever the filter ends up being enforced.
|
|
69
|
+
*
|
|
70
|
+
* The set is deliberately INCOMPLETE, which costs an optimization and never correctness —
|
|
71
|
+
* a missing op declines a claim that would in fact have been sound. `OR_RANGE` is a union
|
|
72
|
+
* of NULL-rejecting ranges, but it already disqualifies an ordering claim on other grounds
|
|
73
|
+
* in both shipped backends (concatenated windows emit in range order, not column order),
|
|
74
|
+
* so listing it would widen what has to be argued and buy nothing. `NOT IN`, `MATCH`,
|
|
75
|
+
* `LIKE` and `GLOB` are NULL-rejecting too and could be added on demand; none of them
|
|
76
|
+
* reaches an ordering claim today.
|
|
77
|
+
*/
|
|
78
|
+
const NULL_EXCLUDING_OPS = new Set([
|
|
79
|
+
'=', 'IN', '>', '>=', '<', '<=', 'IS NOT NULL',
|
|
80
|
+
]);
|
|
81
|
+
/**
|
|
82
|
+
* Truncate an ordered key's order-preserving prefix at the first DESC column whose walk
|
|
83
|
+
* could misplace NULLs. Shared by every module that turns an index (or primary-key) walk
|
|
84
|
+
* into an ordering claim.
|
|
85
|
+
*
|
|
86
|
+
* The engine's ORDER BY places NULLs FIRST for BOTH directions — placement is absolute,
|
|
87
|
+
* never direction-conditioned (`orderByNullResult`, util/comparison.ts). Both shipped
|
|
88
|
+
* backends agree on an ASC column and DISAGREE on a DESC one: the store bit-inverts the
|
|
89
|
+
* column's key bytes (NULL's low `0x00` tag ends up last) and the memory module negates
|
|
90
|
+
* the ascending comparator (NULL is the lowest value, so negation sends it last). So a
|
|
91
|
+
* DESC ordering claim is only sound when no NULL can appear in that column's emitted
|
|
92
|
+
* rows:
|
|
93
|
+
*
|
|
94
|
+
* - the column is declared NOT NULL — columns are NOT NULL by default in this engine, so
|
|
95
|
+
* this is the case that keeps the gate from firing on ordinary tables;
|
|
96
|
+
* - the column is pinned by this plan's own equality (`pinnedCols`) — an equality never
|
|
97
|
+
* matches NULL, and a pinned column contributes no ordering anyway;
|
|
98
|
+
* - some pushed filter on the column is NULL-excluding ({@link NULL_EXCLUDING_OPS}) —
|
|
99
|
+
* this is what keeps `where n > 5 order by n desc` fast, and it holds whether or not
|
|
100
|
+
* the module marks the filter handled: an unhandled filter is retained by the engine
|
|
101
|
+
* as a residual `Filter`, which removes the NULL rows and preserves order either way.
|
|
102
|
+
*
|
|
103
|
+
* `keyColumns` is `ReadonlyArray<IndexColumnSchema>` rather than a whole `IndexSchema` so
|
|
104
|
+
* that a table's `primaryKeyDefinition` can be passed directly — `PrimaryKeyColumnDefinition`
|
|
105
|
+
* is structurally identical (`{ index; desc?; collation? }`) and a nullable DESC primary-key
|
|
106
|
+
* member is exposed by exactly the same reasoning as a secondary-index one.
|
|
107
|
+
*
|
|
108
|
+
* The prefix-length form is the primitive. A caller that claims a required ordering
|
|
109
|
+
* VERBATIM (all or nothing, which is what both backends' request-matching paths do) wants
|
|
110
|
+
* the boolean `nullSafeOrderingPrefixLength(...) === matchedLength`; truncation only
|
|
111
|
+
* matters where an index's OWN ordering is advertised with no request to match.
|
|
112
|
+
*/
|
|
113
|
+
export function nullSafeOrderingPrefixLength(tableInfo, request, keyColumns, orderPreservingPrefix, pinnedCols) {
|
|
114
|
+
for (let i = 0; i < orderPreservingPrefix; i++) {
|
|
115
|
+
const col = keyColumns[i];
|
|
116
|
+
if (!col.desc)
|
|
117
|
+
continue;
|
|
118
|
+
if (tableInfo.columns[col.index]?.notNull)
|
|
119
|
+
continue;
|
|
120
|
+
if (pinnedCols.has(col.index))
|
|
121
|
+
continue;
|
|
122
|
+
if (request.filters.some(f => f.columnIndex === col.index && NULL_EXCLUDING_OPS.has(f.op)))
|
|
123
|
+
continue;
|
|
124
|
+
return i;
|
|
125
|
+
}
|
|
126
|
+
return orderPreservingPrefix;
|
|
127
|
+
}
|
|
64
128
|
/**
|
|
65
129
|
* Builder class for constructing access plan results
|
|
66
130
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"best-access-plan.js","sourceRoot":"","sources":["../../../src/vtab/best-access-plan.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,UAAU,EAA2B,MAAM,oBAAoB,CAAC;AAEzE,OAAO,EAAE,uBAAuB,EAAwB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"best-access-plan.js","sourceRoot":"","sources":["../../../src/vtab/best-access-plan.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,UAAU,EAA2B,MAAM,oBAAoB,CAAC;AAEzE,OAAO,EAAE,uBAAuB,EAAwB,MAAM,uBAAuB,CAAC;AAwFtF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,oBAAoB,CAAC,CAAsB;IAC1D,IAAI,CAAC,CAAC,EAAE,KAAK,GAAG;QAAE,OAAO,CAAC,CAAC;IAC3B,IAAI,CAAC,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;QACnB,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;YAClB,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,UAAU,CAAC;YAClC,OAAO,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;QACrE,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAK,CAAC,CAAC,KAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjE,OAAQ,CAAC,CAAC,KAAmB,CAAC,MAAM,CAAC;QACtC,CAAC;IACF,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CAAC,CAAsB;IAC1D,IAAI,CAAC,CAAC,EAAE,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAChC,IAAI,CAAC,CAAC,UAAU;QAAE,OAAO,oBAAoB,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IAC1D,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAK,CAAC,CAAC,KAAmB,CAAC,MAAM,GAAG,CAAC,CAAC;AACpE,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,kBAAkB,GAA8B,IAAI,GAAG,CAAe;IAC3E,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,aAAa;CAC9C,CAAC,CAAC;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,UAAU,4BAA4B,CAC3C,SAAsB,EACtB,OAA8B,EAC9B,UAA4C,EAC5C,qBAA6B,EAC7B,UAA+B;IAE/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,qBAAqB,EAAE,CAAC,EAAE,EAAE,CAAC;QAChD,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,CAAC,GAAG,CAAC,IAAI;YAAE,SAAS;QACxB,IAAI,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,OAAO;YAAE,SAAS;QACpD,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,SAAS;QACxC,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,GAAG,CAAC,KAAK,IAAI,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAAE,SAAS;QACrG,OAAO,CAAC,CAAC;IACV,CAAC;IACD,OAAO,qBAAqB,CAAC;AAC9B,CAAC;AA6ID;;GAEG;AACH,MAAM,OAAO,iBAAiB;IACrB,MAAM,GAAkC,EAAE,CAAC;IAEnD;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,aAAqB;QACpC,OAAO,IAAI,iBAAiB,EAAE;aAC5B,OAAO,CAAC,aAAa,GAAG,GAAG,CAAC,CAAC,uBAAuB;aACpD,OAAO,CAAC,aAAa,CAAC;aACtB,cAAc,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,WAAmB,EAAE,YAAoB,GAAG;QAC1D,OAAO,IAAI,iBAAiB,EAAE;aAC5B,OAAO,CAAC,SAAS,GAAG,WAAW,GAAG,GAAG,CAAC;aACtC,OAAO,CAAC,WAAW,CAAC;aACpB,QAAQ,CAAC,WAAW,IAAI,CAAC,CAAC;aAC1B,cAAc,CAAC,qBAAqB,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,SAAS,CAAC,aAAqB,EAAE,YAAoB,GAAG;QAC9D,OAAO,IAAI,iBAAiB,EAAE;aAC5B,OAAO,CAAC,SAAS,GAAG,aAAa,GAAG,GAAG,CAAC;aACxC,OAAO,CAAC,aAAa,CAAC;aACtB,cAAc,CAAC,kBAAkB,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,IAAY;QACnB,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;QACxB,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;;;;;OAQG;IACH,OAAO,CAAC,KAAa;QACpB,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACpC,YAAY,CAAC,gDAAgD,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;QACrF,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,KAAK,CAAC;QAC1B,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,IAAwB;QAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;QACxB,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;OAEG;IACH,iBAAiB,CAAC,cAAkC;QACnD,IAAI,CAAC,MAAM,CAAC,cAAc,GAAG,cAAc,CAAC;QAC5C,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,QAAiC;QAC5C,IAAI,CAAC,MAAM,CAAC,gBAAgB,GAAG,QAAQ,CAAC;QACxC,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,KAAc;QACtB,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QAC1B,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,WAAmB;QACjC,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,WAAW,CAAC;QACnC,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,SAAiB;QAC7B,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;QAClC,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;OAGG;IACH,kBAAkB,CAAC,eAAgC;QAClD,IAAI,CAAC,MAAM,CAAC,eAAe,GAAG,eAAe,CAAC;QAC9C,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,iBAAoC;QAClD,IAAI,CAAC,MAAM,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAClD,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;OAEG;IACH,iBAAiB,CAAC,MAA6B;QAC9C,IAAI,CAAC,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC;QACpC,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;OAEG;IACH,KAAK;QACJ,iCAAiC;QACjC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACpC,YAAY,CAAC,8BAA8B,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YAC9C,IAAI,CAAC,MAAM,CAAC,cAAc,GAAG,EAAE,CAAC;QACjC,CAAC;QAED,OAAO,IAAI,CAAC,MAA8B,CAAC;IAC5C,CAAC;CACD;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAA8B;IACvE,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACtC,IAAI,CAAC,MAAM,CAAC,UAAU;YAAE,SAAS;QAEjC,IAAI,MAAM,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;YACxB,YAAY,CACX,wDAAwD,MAAM,CAAC,EAAE,eAAe,MAAM,CAAC,WAAW,EAAE,EACpG,UAAU,CAAC,MAAM,CACjB,CAAC;QACH,CAAC;QACD,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAChC,YAAY,CACX,uDAAuD,MAAM,CAAC,WAAW,2CAA2C,EACpH,UAAU,CAAC,MAAM,CACjB,CAAC;QACH,CAAC;QACD,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC;QACvD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;YACjD,YAAY,CACX,oDAAoD,QAAQ,cAAc,MAAM,CAAC,WAAW,EAAE,EAC9F,UAAU,CAAC,MAAM,CACjB,CAAC;QACH,CAAC;QACD,IAAI,cAAc,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,cAAc,GAAG,CAAC,IAAI,cAAc,GAAG,QAAQ,CAAC,EAAE,CAAC;YAC5H,YAAY,CACX,sDAAsD,QAAQ,SAAS,cAAc,cAAc,MAAM,CAAC,WAAW,EAAE,EACvH,UAAU,CAAC,MAAM,CACjB,CAAC;QACH,CAAC;IACF,CAAC;AACF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CACjC,OAA8B,EAC9B,MAA4B;IAE5B,yBAAyB,CAAC,OAAO,CAAC,CAAC;IAEnC,uCAAuC;IACvC,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAC7D,YAAY,CACX,0BAA0B,MAAM,CAAC,cAAc,CAAC,MAAM,gCAAgC,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,EAC/G,UAAU,CAAC,MAAM,CACjB,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACrB,YAAY,CAAC,wCAAwC,MAAM,CAAC,IAAI,EAAE,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC1F,CAAC;IAED,6CAA6C;IAC7C,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QAClD,YAAY,CAAC,wCAAwC,MAAM,CAAC,IAAI,EAAE,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC1F,CAAC;IAED,mCAAmC;IACnC,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAC7B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;YAC7C,IAAI,KAAK,CAAC,WAAW,GAAG,CAAC,IAAI,KAAK,CAAC,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBAC1E,YAAY,CACX,iCAAiC,KAAK,CAAC,WAAW,eAAe,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,EAC7F,UAAU,CAAC,MAAM,CACjB,CAAC;YACH,CAAC;QACF,CAAC;IACF,CAAC;IAED,6EAA6E;IAC7E,8EAA8E;IAC9E,6EAA6E;IAC7E,wEAAwE;IACxE,yEAAyE;IACzE,qEAAqE;IACrE,IAAI,MAAM,CAAC,gBAAgB,IAAI,MAAM,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnE,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;YAC/B,YAAY,CACX,0EAA0E,EAC1E,UAAU,CAAC,MAAM,CACjB,CAAC;QACH,CAAC;QACD,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,KAAK,MAAM,CAAC,iBAAiB,EAAE,CAAC;YACvE,YAAY,CACX,0CAA0C,MAAM,CAAC,iBAAiB,4BAA4B,MAAM,CAAC,SAAS,2EAA2E,EACzL,UAAU,CAAC,MAAM,CACjB,CAAC;QACH,CAAC;IACF,CAAC;IAED,+BAA+B;IAC/B,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC9B,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;YAC/C,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBACpD,YAAY,CACX,6BAA6B,MAAM,eAAe,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,EAC9E,UAAU,CAAC,MAAM,CACjB,CAAC;YACH,CAAC;QACF,CAAC;IACF,CAAC;IAED,gFAAgF;IAChF,8EAA8E;IAC9E,mFAAmF;IACnF,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QAC5B,uBAAuB,CACtB,MAAM,CAAC,eAAe,EACtB,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,iBAAiB,EACxB,OAAO,CAAC,OAAO,CAAC,MAAM,CACtB,CAAC;IACH,CAAC;IAED,gDAAgD;IAChD,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC;QAC9C,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACpD,YAAY,CACX,oCAAoC,MAAM,eAAe,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,EACrF,UAAU,CAAC,MAAM,CACjB,CAAC;QACH,CAAC;IACF,CAAC;IAED,0DAA0D;IAC1D,IAAI,MAAM,CAAC,mBAAmB,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QACvD,YAAY,CACX,oDAAoD,EACpD,UAAU,CAAC,MAAM,CACjB,CAAC;IACH,CAAC;IAED,wDAAwD;IACxD,IAAI,MAAM,CAAC,iBAAiB,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QACrD,YAAY,CACX,kDAAkD,EAClD,UAAU,CAAC,MAAM,CACjB,CAAC;IACH,CAAC;AACF,CAAC"}
|
|
@@ -80,6 +80,15 @@ export type AccessPath = {
|
|
|
80
80
|
readonly indexName: string;
|
|
81
81
|
readonly plan: IndexPlanKind;
|
|
82
82
|
};
|
|
83
|
+
/**
|
|
84
|
+
* The index plan an access path walks, or undefined when the path names no index
|
|
85
|
+
* (`fullScan` / `empty`) or no path was recorded at all.
|
|
86
|
+
*
|
|
87
|
+
* Answers both index kinds: a consumer asking "is this a multi-seek?" cares about the
|
|
88
|
+
* access SHAPE, which an `unresolvedIndex` describes just as faithfully as a resolved
|
|
89
|
+
* one — only the index identity is missing there.
|
|
90
|
+
*/
|
|
91
|
+
export declare function accessPathPlan(accessPath: AccessPath | undefined): IndexPlanKind | undefined;
|
|
83
92
|
/** The canonical name the engine uses for a table's primary-key index in `idxStr`. */
|
|
84
93
|
export declare const PRIMARY_INDEX_NAME = "_primary_";
|
|
85
94
|
/** The name physical plan nodes use for the primary-key index (`IndexScanNode.indexName`). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-descriptor.d.ts","sourceRoot":"","sources":["../../../src/vtab/index-descriptor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAElE,4DAA4D;AAC5D,MAAM,WAAW,cAAc;IAC9B,gDAAgD;IAChD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,qEAAqE;IACrE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,uEAAuE;IACvE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,WAAW,CAAC;IACvC,+EAA+E;IAC/E,QAAQ,CAAC,UAAU,EAAE,SAAS,cAAc,EAAE,CAAC;IAC/C,2EAA2E;IAC3E,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;;;;;GAUG;AACH,MAAM,MAAM,aAAa,GACtB,MAAM,GACN,QAAQ,GACR,WAAW,GACX,WAAW,GACX,gBAAgB,GAChB,iBAAiB,CAAC;AAErB,gFAAgF;AAChF,MAAM,MAAM,UAAU,GACnB;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;CAAE,GAC7B;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAC1B;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAA;CAAE;AAC3F;;;;;GAKG;GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAA;CAAE,CAAC;AAElG,sFAAsF;AACtF,eAAO,MAAM,kBAAkB,cAAc,CAAC;AAE9C,8FAA8F;AAC9F,eAAO,MAAM,2BAA2B,YAAY,CAAC;AAErD,wFAAwF;AACxF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAExD;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,WAAW,GAAG,eAAe,GAAG,SAAS,CAa1F;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,sBAAsB,CACrC,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,oBAAoB,EAChC,SAAS,EAAE,MAAM,GACf,eAAe,GAAG,SAAS,CAoB7B;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACtC,UAAU,EAAE,eAAe,EAC3B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,iBAAiB,EAAE,MAAM,GAAG,SAAS,EACrC,WAAW,EAAE,MAAM,GACjB,IAAI,CA4BN"}
|
|
1
|
+
{"version":3,"file":"index-descriptor.d.ts","sourceRoot":"","sources":["../../../src/vtab/index-descriptor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAElE,4DAA4D;AAC5D,MAAM,WAAW,cAAc;IAC9B,gDAAgD;IAChD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,qEAAqE;IACrE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,uEAAuE;IACvE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,WAAW,CAAC;IACvC,+EAA+E;IAC/E,QAAQ,CAAC,UAAU,EAAE,SAAS,cAAc,EAAE,CAAC;IAC/C,2EAA2E;IAC3E,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;;;;;GAUG;AACH,MAAM,MAAM,aAAa,GACtB,MAAM,GACN,QAAQ,GACR,WAAW,GACX,WAAW,GACX,gBAAgB,GAChB,iBAAiB,CAAC;AAErB,gFAAgF;AAChF,MAAM,MAAM,UAAU,GACnB;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;CAAE,GAC7B;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAC1B;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAA;CAAE;AAC3F;;;;;GAKG;GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAA;CAAE,CAAC;AAElG;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,UAAU,GAAG,SAAS,GAAG,aAAa,GAAG,SAAS,CAK5F;AAED,sFAAsF;AACtF,eAAO,MAAM,kBAAkB,cAAc,CAAC;AAE9C,8FAA8F;AAC9F,eAAO,MAAM,2BAA2B,YAAY,CAAC;AAErD,wFAAwF;AACxF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAExD;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,WAAW,GAAG,eAAe,GAAG,SAAS,CAa1F;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,sBAAsB,CACrC,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,oBAAoB,EAChC,SAAS,EAAE,MAAM,GACf,eAAe,GAAG,SAAS,CAoB7B;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACtC,UAAU,EAAE,eAAe,EAC3B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,iBAAiB,EAAE,MAAM,GAAG,SAAS,EACrC,WAAW,EAAE,MAAM,GACjB,IAAI,CA4BN"}
|
|
@@ -10,6 +10,21 @@
|
|
|
10
10
|
*/
|
|
11
11
|
import { quereusError } from '../common/errors.js';
|
|
12
12
|
import { StatusCode } from '../common/types.js';
|
|
13
|
+
/**
|
|
14
|
+
* The index plan an access path walks, or undefined when the path names no index
|
|
15
|
+
* (`fullScan` / `empty`) or no path was recorded at all.
|
|
16
|
+
*
|
|
17
|
+
* Answers both index kinds: a consumer asking "is this a multi-seek?" cares about the
|
|
18
|
+
* access SHAPE, which an `unresolvedIndex` describes just as faithfully as a resolved
|
|
19
|
+
* one — only the index identity is missing there.
|
|
20
|
+
*/
|
|
21
|
+
export function accessPathPlan(accessPath) {
|
|
22
|
+
if (!accessPath)
|
|
23
|
+
return undefined;
|
|
24
|
+
return accessPath.kind === 'index' || accessPath.kind === 'unresolvedIndex'
|
|
25
|
+
? accessPath.plan
|
|
26
|
+
: undefined;
|
|
27
|
+
}
|
|
13
28
|
/** The canonical name the engine uses for a table's primary-key index in `idxStr`. */
|
|
14
29
|
export const PRIMARY_INDEX_NAME = '_primary_';
|
|
15
30
|
/** The name physical plan nodes use for the primary-key index (`IndexScanNode.indexName`). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-descriptor.js","sourceRoot":"","sources":["../../../src/vtab/index-descriptor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index-descriptor.js","sourceRoot":"","sources":["../../../src/vtab/index-descriptor.ts"],"names":[],"mappings":"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"}
|