@quereus/quereus 4.7.0 → 4.9.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/common/types.d.ts +19 -0
- package/dist/src/common/types.d.ts.map +1 -1
- package/dist/src/common/types.js.map +1 -1
- package/dist/src/core/database.d.ts +45 -1
- package/dist/src/core/database.d.ts.map +1 -1
- package/dist/src/core/database.js +212 -2
- package/dist/src/core/database.js.map +1 -1
- package/dist/src/core/statement.d.ts.map +1 -1
- package/dist/src/core/statement.js +86 -0
- package/dist/src/core/statement.js.map +1 -1
- package/dist/src/func/builtins/aggregate.d.ts.map +1 -1
- package/dist/src/func/builtins/aggregate.js +3 -2
- package/dist/src/func/builtins/aggregate.js.map +1 -1
- package/dist/src/func/builtins/conversion.d.ts +5 -0
- package/dist/src/func/builtins/conversion.d.ts.map +1 -1
- package/dist/src/func/builtins/conversion.js +16 -2
- package/dist/src/func/builtins/conversion.js.map +1 -1
- package/dist/src/func/builtins/index.d.ts.map +1 -1
- package/dist/src/func/builtins/index.js +5 -2
- package/dist/src/func/builtins/index.js.map +1 -1
- package/dist/src/func/builtins/string.d.ts +2 -0
- package/dist/src/func/builtins/string.d.ts.map +1 -1
- package/dist/src/func/builtins/string.js +60 -4
- package/dist/src/func/builtins/string.js.map +1 -1
- package/dist/src/index.d.ts +11 -4
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +18 -3
- package/dist/src/index.js.map +1 -1
- package/dist/src/planner/building/constraint-builder.js +1 -1
- package/dist/src/planner/building/constraint-builder.js.map +1 -1
- package/dist/src/planner/rules/retrieve/rule-grow-retrieve.d.ts.map +1 -1
- package/dist/src/planner/rules/retrieve/rule-grow-retrieve.js +121 -51
- package/dist/src/planner/rules/retrieve/rule-grow-retrieve.js.map +1 -1
- package/dist/src/planner/rules/shared/index-style-context.d.ts +14 -4
- package/dist/src/planner/rules/shared/index-style-context.d.ts.map +1 -1
- package/dist/src/planner/rules/shared/index-style-context.js +14 -4
- package/dist/src/planner/rules/shared/index-style-context.js.map +1 -1
- package/dist/src/runtime/emit/alter-table.d.ts.map +1 -1
- package/dist/src/runtime/emit/alter-table.js +212 -155
- package/dist/src/runtime/emit/alter-table.js.map +1 -1
- package/dist/src/runtime/emit/assertion-drop-guard.d.ts +26 -12
- package/dist/src/runtime/emit/assertion-drop-guard.d.ts.map +1 -1
- package/dist/src/runtime/emit/assertion-drop-guard.js +45 -26
- package/dist/src/runtime/emit/assertion-drop-guard.js.map +1 -1
- package/dist/src/runtime/emit/assertion-rename-helpers.d.ts +6 -6
- package/dist/src/runtime/emit/assertion-rename-helpers.d.ts.map +1 -1
- package/dist/src/runtime/emit/assertion-rename-helpers.js +18 -20
- package/dist/src/runtime/emit/assertion-rename-helpers.js.map +1 -1
- package/dist/src/runtime/emit/binary.d.ts.map +1 -1
- package/dist/src/runtime/emit/binary.js +12 -10
- package/dist/src/runtime/emit/binary.js.map +1 -1
- package/dist/src/runtime/emit/column-rename-cascade.d.ts +84 -0
- package/dist/src/runtime/emit/column-rename-cascade.d.ts.map +1 -0
- package/dist/src/runtime/emit/column-rename-cascade.js +134 -0
- package/dist/src/runtime/emit/column-rename-cascade.js.map +1 -0
- package/dist/src/runtime/emit/drop-column-guards.d.ts +82 -53
- package/dist/src/runtime/emit/drop-column-guards.d.ts.map +1 -1
- package/dist/src/runtime/emit/drop-column-guards.js +155 -90
- package/dist/src/runtime/emit/drop-column-guards.js.map +1 -1
- package/dist/src/runtime/emit/drop-table.d.ts.map +1 -1
- package/dist/src/runtime/emit/drop-table.js +5 -0
- package/dist/src/runtime/emit/drop-table.js.map +1 -1
- package/dist/src/runtime/emit/drop-view.d.ts.map +1 -1
- package/dist/src/runtime/emit/drop-view.js +5 -0
- package/dist/src/runtime/emit/drop-view.js.map +1 -1
- package/dist/src/runtime/emit/expression-drop-guard.d.ts +57 -0
- package/dist/src/runtime/emit/expression-drop-guard.d.ts.map +1 -0
- package/dist/src/runtime/emit/expression-drop-guard.js +82 -0
- package/dist/src/runtime/emit/expression-drop-guard.js.map +1 -0
- package/dist/src/runtime/emit/materialized-view-helpers.d.ts +26 -9
- package/dist/src/runtime/emit/materialized-view-helpers.d.ts.map +1 -1
- package/dist/src/runtime/emit/materialized-view-helpers.js +37 -17
- package/dist/src/runtime/emit/materialized-view-helpers.js.map +1 -1
- package/dist/src/runtime/emit/materialized-view.d.ts.map +1 -1
- package/dist/src/runtime/emit/materialized-view.js +3 -0
- package/dist/src/runtime/emit/materialized-view.js.map +1 -1
- package/dist/src/runtime/emit/remote-query.d.ts.map +1 -1
- package/dist/src/runtime/emit/remote-query.js +8 -3
- package/dist/src/runtime/emit/remote-query.js.map +1 -1
- package/dist/src/runtime/emit/scan.d.ts.map +1 -1
- package/dist/src/runtime/emit/scan.js +4 -1
- package/dist/src/runtime/emit/scan.js.map +1 -1
- package/dist/src/runtime/emit/schema-declarative.js +2 -2
- package/dist/src/runtime/emit/schema-declarative.js.map +1 -1
- package/dist/src/runtime/parallel-driver.d.ts +4 -3
- package/dist/src/runtime/parallel-driver.d.ts.map +1 -1
- package/dist/src/runtime/parallel-driver.js +8 -3
- package/dist/src/runtime/parallel-driver.js.map +1 -1
- package/dist/src/runtime/types.d.ts +10 -0
- package/dist/src/runtime/types.d.ts.map +1 -1
- package/dist/src/runtime/types.js.map +1 -1
- package/dist/src/runtime/utils.d.ts.map +1 -1
- package/dist/src/runtime/utils.js +11 -0
- package/dist/src/runtime/utils.js.map +1 -1
- package/dist/src/schema/assertion.d.ts +58 -0
- package/dist/src/schema/assertion.d.ts.map +1 -1
- package/dist/src/schema/assertion.js +78 -0
- package/dist/src/schema/assertion.js.map +1 -1
- package/dist/src/schema/catalog-persistability.d.ts +11 -3
- package/dist/src/schema/catalog-persistability.d.ts.map +1 -1
- package/dist/src/schema/catalog-persistability.js +48 -29
- package/dist/src/schema/catalog-persistability.js.map +1 -1
- package/dist/src/schema/catalog.d.ts +22 -0
- package/dist/src/schema/catalog.d.ts.map +1 -1
- package/dist/src/schema/catalog.js +4 -1
- package/dist/src/schema/catalog.js.map +1 -1
- package/dist/src/schema/column-republication.d.ts +126 -0
- package/dist/src/schema/column-republication.d.ts.map +1 -0
- package/dist/src/schema/column-republication.js +121 -0
- package/dist/src/schema/column-republication.js.map +1 -0
- package/dist/src/schema/column-source-resolver.d.ts +29 -6
- package/dist/src/schema/column-source-resolver.d.ts.map +1 -1
- package/dist/src/schema/column-source-resolver.js +78 -9
- package/dist/src/schema/column-source-resolver.js.map +1 -1
- package/dist/src/schema/expression-dependents.d.ts +160 -0
- package/dist/src/schema/expression-dependents.d.ts.map +1 -0
- package/dist/src/schema/expression-dependents.js +228 -0
- package/dist/src/schema/expression-dependents.js.map +1 -0
- package/dist/src/schema/object-dependency-closure.d.ts +127 -0
- package/dist/src/schema/object-dependency-closure.d.ts.map +1 -0
- package/dist/src/schema/object-dependency-closure.js +117 -0
- package/dist/src/schema/object-dependency-closure.js.map +1 -0
- package/dist/src/schema/object-ref-resolver.d.ts +83 -0
- package/dist/src/schema/object-ref-resolver.d.ts.map +1 -0
- package/dist/src/schema/object-ref-resolver.js +135 -0
- package/dist/src/schema/object-ref-resolver.js.map +1 -0
- package/dist/src/schema/rename/column-rename.d.ts +228 -0
- package/dist/src/schema/rename/column-rename.d.ts.map +1 -0
- package/dist/src/schema/rename/column-rename.js +1225 -0
- package/dist/src/schema/rename/column-rename.js.map +1 -0
- package/dist/src/schema/rename/self-qualifier-strip.d.ts +29 -0
- package/dist/src/schema/rename/self-qualifier-strip.d.ts.map +1 -0
- package/dist/src/schema/rename/self-qualifier-strip.js +267 -0
- package/dist/src/schema/rename/self-qualifier-strip.js.map +1 -0
- package/dist/src/schema/rename/shared.d.ts +108 -0
- package/dist/src/schema/rename/shared.d.ts.map +1 -0
- package/dist/src/schema/rename/shared.js +49 -0
- package/dist/src/schema/rename/shared.js.map +1 -0
- package/dist/src/schema/rename/table-rename.d.ts +263 -0
- package/dist/src/schema/rename/table-rename.d.ts.map +1 -0
- package/dist/src/schema/rename/table-rename.js +860 -0
- package/dist/src/schema/rename/table-rename.js.map +1 -0
- package/dist/src/schema/rename-rewriter.d.ts +18 -278
- package/dist/src/schema/rename-rewriter.d.ts.map +1 -1
- package/dist/src/schema/rename-rewriter.js +17 -1506
- package/dist/src/schema/rename-rewriter.js.map +1 -1
- package/dist/src/schema/schema-differ.d.ts.map +1 -1
- package/dist/src/schema/schema-differ.js +228 -21
- package/dist/src/schema/schema-differ.js.map +1 -1
- package/dist/src/types/builtin-types.d.ts.map +1 -1
- package/dist/src/types/builtin-types.js +12 -28
- package/dist/src/types/builtin-types.js.map +1 -1
- package/dist/src/types/cast-semantics.d.ts +7 -5
- package/dist/src/types/cast-semantics.d.ts.map +1 -1
- package/dist/src/types/cast-semantics.js +20 -9
- package/dist/src/types/cast-semantics.js.map +1 -1
- package/dist/src/types/index.d.ts +1 -1
- package/dist/src/types/index.d.ts.map +1 -1
- package/dist/src/types/index.js +1 -1
- package/dist/src/types/index.js.map +1 -1
- package/dist/src/types/registry.d.ts.map +1 -1
- package/dist/src/types/registry.js +2 -1
- package/dist/src/types/registry.js.map +1 -1
- package/dist/src/types/temporal-types.d.ts +11 -0
- package/dist/src/types/temporal-types.d.ts.map +1 -1
- package/dist/src/types/temporal-types.js +82 -0
- package/dist/src/types/temporal-types.js.map +1 -1
- package/dist/src/util/abort-signal.d.ts +25 -0
- package/dist/src/util/abort-signal.d.ts.map +1 -0
- package/dist/src/util/abort-signal.js +40 -0
- package/dist/src/util/abort-signal.js.map +1 -0
- package/dist/src/util/affinity.d.ts +2 -1
- package/dist/src/util/affinity.d.ts.map +1 -1
- package/dist/src/util/affinity.js +16 -5
- package/dist/src/util/affinity.js.map +1 -1
- package/dist/src/util/ast-spine-clone.d.ts +2 -2
- package/dist/src/util/ast-spine-clone.js +2 -2
- package/dist/src/util/value-text.d.ts +48 -0
- package/dist/src/util/value-text.d.ts.map +1 -0
- package/dist/src/util/value-text.js +35 -0
- package/dist/src/util/value-text.js.map +1 -0
- package/dist/src/vtab/concurrency.d.ts +15 -0
- package/dist/src/vtab/concurrency.d.ts.map +1 -1
- package/dist/src/vtab/concurrency.js +17 -0
- package/dist/src/vtab/concurrency.js.map +1 -1
- package/dist/src/vtab/memory/layer/base.d.ts +10 -0
- package/dist/src/vtab/memory/layer/base.d.ts.map +1 -1
- package/dist/src/vtab/memory/layer/base.js +10 -0
- package/dist/src/vtab/memory/layer/base.js.map +1 -1
- package/dist/src/vtab/memory/layer/interface.d.ts +24 -0
- package/dist/src/vtab/memory/layer/interface.d.ts.map +1 -1
- package/dist/src/vtab/memory/layer/manager.d.ts +21 -3
- package/dist/src/vtab/memory/layer/manager.d.ts.map +1 -1
- package/dist/src/vtab/memory/layer/manager.js +118 -93
- package/dist/src/vtab/memory/layer/manager.js.map +1 -1
- package/dist/src/vtab/memory/layer/transaction.d.ts +11 -0
- package/dist/src/vtab/memory/layer/transaction.d.ts.map +1 -1
- package/dist/src/vtab/memory/layer/transaction.js +19 -0
- package/dist/src/vtab/memory/layer/transaction.js.map +1 -1
- package/dist/src/vtab/memory/module.d.ts +41 -0
- package/dist/src/vtab/memory/module.d.ts.map +1 -1
- package/dist/src/vtab/memory/module.js +41 -0
- package/dist/src/vtab/memory/module.js.map +1 -1
- package/dist/src/vtab/memory/table.d.ts +12 -1
- package/dist/src/vtab/memory/table.d.ts.map +1 -1
- package/dist/src/vtab/memory/table.js +12 -1
- package/dist/src/vtab/memory/table.js.map +1 -1
- package/dist/src/vtab/module.d.ts +33 -0
- package/dist/src/vtab/module.d.ts.map +1 -1
- package/dist/src/vtab/test-support/commit-stall.d.ts +53 -0
- package/dist/src/vtab/test-support/commit-stall.d.ts.map +1 -0
- package/dist/src/vtab/test-support/commit-stall.js +73 -0
- package/dist/src/vtab/test-support/commit-stall.js.map +1 -0
- package/dist/src/vtab/test-support/committed-read-conformance.d.ts +96 -0
- package/dist/src/vtab/test-support/committed-read-conformance.d.ts.map +1 -0
- package/dist/src/vtab/test-support/committed-read-conformance.js +364 -0
- package/dist/src/vtab/test-support/committed-read-conformance.js.map +1 -0
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/types/registry.ts"],"names":[],"mappings":"AACA,OAAO,EACN,SAAS,EACT,YAAY,EACZ,SAAS,EACT,SAAS,EACT,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,QAAQ,GACR,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/types/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,17 @@ export declare const TIME_TYPE: LogicalType;
|
|
|
14
14
|
* Uses Temporal.PlainDateTime for validation and parsing
|
|
15
15
|
*/
|
|
16
16
|
export declare const DATETIME_TYPE: LogicalType;
|
|
17
|
+
/**
|
|
18
|
+
* TIMESTAMP type - an integer instant (signed 64-bit epoch value).
|
|
19
|
+
*
|
|
20
|
+
* The stored value is an integer whose unit the engine does not reinterpret:
|
|
21
|
+
* an integer written to a TIMESTAMP column reads back exactly as written. Only
|
|
22
|
+
* the string→integer direction pins a unit — an ISO 8601 datetime string
|
|
23
|
+
* parses to epoch MILLISECONDS, matching the epoch-ms convention DATE and
|
|
24
|
+
* DATETIME already use for their numeric inputs
|
|
25
|
+
* (`Temporal.Instant.fromEpochMilliseconds`).
|
|
26
|
+
*/
|
|
27
|
+
export declare const TIMESTAMP_TYPE: LogicalType;
|
|
17
28
|
/**
|
|
18
29
|
* TIMESPAN type - stores ISO 8601 duration strings
|
|
19
30
|
* Uses Temporal.Duration for validation and parsing
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"temporal-types.d.ts","sourceRoot":"","sources":["../../../src/types/temporal-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,WAAW,EAAgB,MAAM,mBAAmB,CAAC;AAmBjF;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,WA+DvB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,WA2DvB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,WAoD3B,CAAC;AAwEF;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,WAmE3B,CAAC"}
|
|
1
|
+
{"version":3,"file":"temporal-types.d.ts","sourceRoot":"","sources":["../../../src/types/temporal-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,WAAW,EAAgB,MAAM,mBAAmB,CAAC;AAmBjF;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,WA+DvB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,WA2DvB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,WAoD3B,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,EAAE,WAkE5B,CAAC;AAwEF;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,WAmE3B,CAAC"}
|
|
@@ -221,6 +221,88 @@ export const DATETIME_TYPE = {
|
|
|
221
221
|
}
|
|
222
222
|
},
|
|
223
223
|
};
|
|
224
|
+
/**
|
|
225
|
+
* TIMESTAMP type - an integer instant (signed 64-bit epoch value).
|
|
226
|
+
*
|
|
227
|
+
* The stored value is an integer whose unit the engine does not reinterpret:
|
|
228
|
+
* an integer written to a TIMESTAMP column reads back exactly as written. Only
|
|
229
|
+
* the string→integer direction pins a unit — an ISO 8601 datetime string
|
|
230
|
+
* parses to epoch MILLISECONDS, matching the epoch-ms convention DATE and
|
|
231
|
+
* DATETIME already use for their numeric inputs
|
|
232
|
+
* (`Temporal.Instant.fromEpochMilliseconds`).
|
|
233
|
+
*/
|
|
234
|
+
export const TIMESTAMP_TYPE = {
|
|
235
|
+
name: 'TIMESTAMP',
|
|
236
|
+
physicalType: PhysicalType.INTEGER,
|
|
237
|
+
isTemporal: true,
|
|
238
|
+
validate: (v) => {
|
|
239
|
+
if (v === null)
|
|
240
|
+
return true;
|
|
241
|
+
if (typeof v === 'bigint')
|
|
242
|
+
return true;
|
|
243
|
+
if (typeof v === 'number')
|
|
244
|
+
return Number.isInteger(v);
|
|
245
|
+
return false;
|
|
246
|
+
},
|
|
247
|
+
parse: (v) => {
|
|
248
|
+
if (v === null)
|
|
249
|
+
return null;
|
|
250
|
+
if (typeof v === 'bigint')
|
|
251
|
+
return v;
|
|
252
|
+
if (typeof v === 'number') {
|
|
253
|
+
if (!Number.isInteger(v)) {
|
|
254
|
+
throw new TypeError(`Cannot convert non-integer number '${v}' to TIMESTAMP`);
|
|
255
|
+
}
|
|
256
|
+
return v;
|
|
257
|
+
}
|
|
258
|
+
if (typeof v === 'string') {
|
|
259
|
+
const trimmed = v.trim();
|
|
260
|
+
if (trimmed === '')
|
|
261
|
+
return null;
|
|
262
|
+
// Integer-shaped string → that integer verbatim (no unit interpretation).
|
|
263
|
+
// Past 2^53 rebuild from the digit string, not the rounded number — same
|
|
264
|
+
// safe-integer boundary as INTEGER_TYPE.parse.
|
|
265
|
+
if (/^[+-]?\d+$/.test(trimmed)) {
|
|
266
|
+
const parsed = Number(trimmed);
|
|
267
|
+
if (Number.isSafeInteger(parsed))
|
|
268
|
+
return parsed;
|
|
269
|
+
return BigInt(trimmed[0] === '+' ? trimmed.slice(1) : trimmed);
|
|
270
|
+
}
|
|
271
|
+
// ISO 8601 datetime string → epoch milliseconds. Bare datetimes are
|
|
272
|
+
// treated as UTC wall-clock; offset/zone-bearing inputs convert to UTC —
|
|
273
|
+
// same canonicalization DATE / DATETIME apply.
|
|
274
|
+
try {
|
|
275
|
+
return parseDateTimeStringToUtcPlain(trimmed).toZonedDateTime('UTC').epochMilliseconds;
|
|
276
|
+
}
|
|
277
|
+
catch (e) {
|
|
278
|
+
throw new TypeError(`Cannot convert '${v}' to TIMESTAMP: ${e instanceof Error ? e.message : String(e)}`);
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
throw new TypeError(`Cannot convert ${typeof v} to TIMESTAMP`);
|
|
282
|
+
},
|
|
283
|
+
// NOTE: deliberately NOT `isNumeric`. TIMESTAMP is an instant, not a number —
|
|
284
|
+
// `abs(ts)` / `round(ts)` should not typecheck on it. The cost is that
|
|
285
|
+
// `sharesSeekKeySpace(TIMESTAMP, INTEGER)` is false, so a key-set seek or
|
|
286
|
+
// index-nested-loop join keyed by an INTEGER-typed expression against a
|
|
287
|
+
// TIMESTAMP column declines and falls back to a scan — conservative, never a
|
|
288
|
+
// wrong answer. If that decline ever shows up as a real plan regression, add
|
|
289
|
+
// TIMESTAMP to `isSeekKeySpaceNumeric` (its compare already ranks mixed
|
|
290
|
+
// number/bigint by exact value, which is the predicate's requirement) rather
|
|
291
|
+
// than flipping `isNumeric`.
|
|
292
|
+
//
|
|
293
|
+
// Integer storage order IS the semantic order (no semanticOrdering flag).
|
|
294
|
+
// Mixed number/bigint compares by exact mathematical value under JS
|
|
295
|
+
// relational operators; validate admits only integers, so NaN never arrives.
|
|
296
|
+
compare: (a, b) => {
|
|
297
|
+
const nullCmp = compareNulls(a, b);
|
|
298
|
+
if (nullCmp !== undefined)
|
|
299
|
+
return nullCmp;
|
|
300
|
+
const av = a;
|
|
301
|
+
const bv = b;
|
|
302
|
+
return av < bv ? -1 : av > bv ? 1 : 0;
|
|
303
|
+
},
|
|
304
|
+
supportedCollations: [],
|
|
305
|
+
};
|
|
224
306
|
/**
|
|
225
307
|
* Parse human-readable duration strings into Temporal.Duration
|
|
226
308
|
* Supports formats like "1 hour", "30 minutes", "2 days 3 hours"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"temporal-types.js","sourceRoot":"","sources":["../../../src/types/temporal-types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"temporal-types.js","sourceRoot":"","sources":["../../../src/types/temporal-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AbortSignal combination for paths that must honor more than one cancellation
|
|
3
|
+
* source (e.g. a caller's signal plus the database-close signal on the
|
|
4
|
+
* mutex-free committed-read path). Implemented with a plain AbortController
|
|
5
|
+
* rather than `AbortSignal.any` for cross-platform reach (Hermes / older
|
|
6
|
+
* runtimes).
|
|
7
|
+
*/
|
|
8
|
+
export interface CombinedAbortSignal {
|
|
9
|
+
/** Fires when ANY input signal fires; undefined when no input was supplied. */
|
|
10
|
+
readonly signal: AbortSignal | undefined;
|
|
11
|
+
/**
|
|
12
|
+
* Detach the combiner's listeners from the input signals. Call on every exit
|
|
13
|
+
* path (a `finally`) so a long-lived input signal does not accumulate one
|
|
14
|
+
* listener per execution.
|
|
15
|
+
*/
|
|
16
|
+
dispose(): void;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Combine any number of possibly-undefined signals into one. Zero defined
|
|
20
|
+
* inputs yields `signal: undefined`; exactly one is passed through untouched
|
|
21
|
+
* (nothing to dispose); two or more are joined via a fresh controller that
|
|
22
|
+
* aborts as soon as any input aborts (or immediately if one already has).
|
|
23
|
+
*/
|
|
24
|
+
export declare function combineAbortSignals(...signals: Array<AbortSignal | undefined>): CombinedAbortSignal;
|
|
25
|
+
//# sourceMappingURL=abort-signal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"abort-signal.d.ts","sourceRoot":"","sources":["../../../src/util/abort-signal.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,mBAAmB;IACnC,+EAA+E;IAC/E,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAAC;IACzC;;;;OAIG;IACH,OAAO,IAAI,IAAI,CAAC;CAChB;AAID;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,OAAO,EAAE,KAAK,CAAC,WAAW,GAAG,SAAS,CAAC,GAAG,mBAAmB,CAqBnG"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AbortSignal combination for paths that must honor more than one cancellation
|
|
3
|
+
* source (e.g. a caller's signal plus the database-close signal on the
|
|
4
|
+
* mutex-free committed-read path). Implemented with a plain AbortController
|
|
5
|
+
* rather than `AbortSignal.any` for cross-platform reach (Hermes / older
|
|
6
|
+
* runtimes).
|
|
7
|
+
*/
|
|
8
|
+
const noop = () => { };
|
|
9
|
+
/**
|
|
10
|
+
* Combine any number of possibly-undefined signals into one. Zero defined
|
|
11
|
+
* inputs yields `signal: undefined`; exactly one is passed through untouched
|
|
12
|
+
* (nothing to dispose); two or more are joined via a fresh controller that
|
|
13
|
+
* aborts as soon as any input aborts (or immediately if one already has).
|
|
14
|
+
*/
|
|
15
|
+
export function combineAbortSignals(...signals) {
|
|
16
|
+
const live = signals.filter((s) => s !== undefined);
|
|
17
|
+
if (live.length === 0)
|
|
18
|
+
return { signal: undefined, dispose: noop };
|
|
19
|
+
if (live.length === 1)
|
|
20
|
+
return { signal: live[0], dispose: noop };
|
|
21
|
+
const controller = new AbortController();
|
|
22
|
+
const onAbort = () => controller.abort();
|
|
23
|
+
const attached = [];
|
|
24
|
+
for (const s of live) {
|
|
25
|
+
if (s.aborted) {
|
|
26
|
+
controller.abort();
|
|
27
|
+
break;
|
|
28
|
+
}
|
|
29
|
+
s.addEventListener('abort', onAbort, { once: true });
|
|
30
|
+
attached.push(s);
|
|
31
|
+
}
|
|
32
|
+
return {
|
|
33
|
+
signal: controller.signal,
|
|
34
|
+
dispose: () => {
|
|
35
|
+
for (const s of attached)
|
|
36
|
+
s.removeEventListener('abort', onAbort);
|
|
37
|
+
},
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=abort-signal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"abort-signal.js","sourceRoot":"","sources":["../../../src/util/abort-signal.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAaH,MAAM,IAAI,GAAG,GAAG,EAAE,GAA0B,CAAC,CAAC;AAE9C;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAG,OAAuC;IAC7E,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAoB,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;IACtE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACnE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACjE,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IACzC,MAAM,QAAQ,GAAkB,EAAE,CAAC;IACnC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACtB,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YACf,UAAU,CAAC,KAAK,EAAE,CAAC;YACnB,MAAM;QACP,CAAC;QACD,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO;QACN,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,OAAO,EAAE,GAAG,EAAE;YACb,KAAK,MAAM,CAAC,IAAI,QAAQ;gBAAE,CAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACnE,CAAC;KACD,CAAC;AACH,CAAC"}
|
|
@@ -23,7 +23,8 @@ export declare function applyRealAffinity(value: SqlValue): SqlValue;
|
|
|
23
23
|
export declare function applyNumericAffinity(value: SqlValue): SqlValue;
|
|
24
24
|
/**
|
|
25
25
|
* Applies SQLite TEXT affinity to a value.
|
|
26
|
-
* Converts
|
|
26
|
+
* Converts every other storage class through the shared value-to-text rule,
|
|
27
|
+
* leaves BLOBs unchanged.
|
|
27
28
|
*/
|
|
28
29
|
export declare function applyTextAffinity(value: SqlValue): SqlValue;
|
|
29
30
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"affinity.d.ts","sourceRoot":"","sources":["../../../src/util/affinity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"affinity.d.ts","sourceRoot":"","sources":["../../../src/util/affinity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAoDnD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOrD;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,QAAQ,GAAG,QAAQ,CA2B9D;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,QAAQ,GAAG,QAAQ,CAY3D;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,QAAQ,GAAG,QAAQ,CAe9D;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,QAAQ,GAAG,QAAQ,CAU3D;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,QAAQ,GAAG,QAAQ,CAE3D"}
|
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
import { valueToText } from './value-text.js';
|
|
2
|
+
// NOTE: nothing in src/ imports this module today, and it is not re-exported from the
|
|
3
|
+
// package index — the engine reaches type conversion through LogicalType.parse and
|
|
4
|
+
// types/cast-semantics.ts instead, and these SQLite-affinity helpers are left over from
|
|
5
|
+
// an earlier model. They are kept (and kept correct — applyTextAffinity shares the one
|
|
6
|
+
// value-to-text rule) rather than deleted, because affinity is still the documented
|
|
7
|
+
// SQLite behaviour a declared-type coercion path would need. If a release ever needs to
|
|
8
|
+
// shrink the surface, deleting this module is a safe call; if a caller appears, the
|
|
9
|
+
// blob-passthrough contract below is the part to preserve.
|
|
1
10
|
/**
|
|
2
11
|
* Attempts to parse a string as an integer according to SQLite rules.
|
|
3
12
|
* Ignores leading/trailing whitespace. Stops at the first non-digit.
|
|
@@ -130,18 +139,20 @@ export function applyNumericAffinity(value) {
|
|
|
130
139
|
}
|
|
131
140
|
/**
|
|
132
141
|
* Applies SQLite TEXT affinity to a value.
|
|
133
|
-
* Converts
|
|
142
|
+
* Converts every other storage class through the shared value-to-text rule,
|
|
143
|
+
* leaves BLOBs unchanged.
|
|
134
144
|
*/
|
|
135
145
|
export function applyTextAffinity(value) {
|
|
136
146
|
if (value === null || typeof value === 'string')
|
|
137
147
|
return value;
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
148
|
+
// SQLite's TEXT affinity does NOT convert a blob — it stays in the BLOB storage
|
|
149
|
+
// class. That is a different question from "render this value as text", so this
|
|
150
|
+
// early return must survive: folding it into valueToText would silently rewrite
|
|
151
|
+
// stored blobs in TEXT-affinity columns.
|
|
141
152
|
if (value instanceof Uint8Array) {
|
|
142
153
|
return value;
|
|
143
154
|
}
|
|
144
|
-
return
|
|
155
|
+
return valueToText(value);
|
|
145
156
|
}
|
|
146
157
|
/**
|
|
147
158
|
* Applies SQLite BLOB affinity to a value.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"affinity.js","sourceRoot":"","sources":["../../../src/util/affinity.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"affinity.js","sourceRoot":"","sources":["../../../src/util/affinity.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
* Why not `structuredClone`: `AST.LiteralExpr.value` is typed
|
|
11
11
|
* `MaybePromise<SqlValue>`, and a Promise is not structured-cloneable — a live
|
|
12
12
|
* body carrying one would throw `DataCloneError`. The rewriters only ever assign
|
|
13
|
-
* to string fields (`.name`, `.schema`, `.table`, `.column`) and replace
|
|
14
|
-
* arrays on plain AST nodes, so copying the plain-object/array spine is enough:
|
|
13
|
+
* to string fields (`.name`, `.schema`, `.table`, `.column`, `.alias`) and replace
|
|
14
|
+
* string arrays on plain AST nodes, so copying the plain-object/array spine is enough:
|
|
15
15
|
* every leaf they mutate is freshly owned, and every leaf they do not touch
|
|
16
16
|
* (primitives, `Uint8Array`, `bigint`, class instances, Promises) can safely stay
|
|
17
17
|
* shared.
|
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
* Why not `structuredClone`: `AST.LiteralExpr.value` is typed
|
|
11
11
|
* `MaybePromise<SqlValue>`, and a Promise is not structured-cloneable — a live
|
|
12
12
|
* body carrying one would throw `DataCloneError`. The rewriters only ever assign
|
|
13
|
-
* to string fields (`.name`, `.schema`, `.table`, `.column`) and replace
|
|
14
|
-
* arrays on plain AST nodes, so copying the plain-object/array spine is enough:
|
|
13
|
+
* to string fields (`.name`, `.schema`, `.table`, `.column`, `.alias`) and replace
|
|
14
|
+
* string arrays on plain AST nodes, so copying the plain-object/array spine is enough:
|
|
15
15
|
* every leaf they mutate is freshly owned, and every leaf they do not touch
|
|
16
16
|
* (primitives, `Uint8Array`, `bigint`, class instances, Promises) can safely stay
|
|
17
17
|
* shared.
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { SqlValue } from '../common/types.js';
|
|
2
|
+
/**
|
|
3
|
+
* THE SQL value-to-text conversion. Every site that has to render a value as text —
|
|
4
|
+
* CAST/parse to TEXT, `||`, LIKE operand coercion (the `LIKE` operator in
|
|
5
|
+
* `runtime/emit/binary.ts` and the `like`/`glob` functions in
|
|
6
|
+
* `func/builtins/string.ts`), `group_concat`, TEXT affinity — calls this and nothing
|
|
7
|
+
* else, so a value has exactly one text spelling no matter which construct produced it.
|
|
8
|
+
*
|
|
9
|
+
* The remaining string builtins (`substr`, `trim`, `replace`, `instr`, and the ones
|
|
10
|
+
* that return NULL for a non-text argument) are the known exception, tracked as
|
|
11
|
+
* `debt-string-builtins-coerce-three-different-ways`.
|
|
12
|
+
*
|
|
13
|
+
* | source | text | notes |
|
|
14
|
+
* |-------------------|-------------------|--------------------------------------------------------------|
|
|
15
|
+
* | `null` | `null` | SQL NULL propagates; callers keep their own null handling |
|
|
16
|
+
* | `string` | itself | including every temporal value (DATE/TIME/DATETIME/TIMESPAN are physically text) |
|
|
17
|
+
* | `number` | `String(v)` | JS shortest round-trip spelling |
|
|
18
|
+
* | `bigint` | `v.toString()` | exact decimal digits, no rounding |
|
|
19
|
+
* | `boolean` | `'true'`/`'false'`| |
|
|
20
|
+
* | `Uint8Array` | UTF-8 decode | reinterpret the bytes as text, matching SQLite |
|
|
21
|
+
* | JSON object/array | `JSON.stringify` | key order as the document has it |
|
|
22
|
+
*
|
|
23
|
+
* **Lossy for binary.** The decode is non-fatal, so any byte sequence that is not
|
|
24
|
+
* valid UTF-8 renders as U+FFFD: `x'ff'` and `x'fe'` produce the same text. Text
|
|
25
|
+
* derived from a blob is therefore not a key for that blob.
|
|
26
|
+
*
|
|
27
|
+
* **JSON uses the document's own key order**, deliberately NOT
|
|
28
|
+
* {@link import('./json-canonical.js').canonicalJsonString}. That function exists to
|
|
29
|
+
* make grouping keys and expression fingerprints deterministic across reorder-equal
|
|
30
|
+
* documents; a user-visible conversion should show the document as it is. The
|
|
31
|
+
* consequence is real: `JSON_TYPE.compare` is a structural deep-compare, so two
|
|
32
|
+
* documents differing only in key order are *equal* yet render *different* text.
|
|
33
|
+
*
|
|
34
|
+
* **Number spelling stays `String(v)`**, so `cast(1.0 as text)` is `1` where SQLite
|
|
35
|
+
* gives `1.0`, and non-finite values give `Infinity`/`NaN` where SQLite gives `Inf`.
|
|
36
|
+
* That divergence is tracked separately (`bug-real-to-text-formatting-differs-from-sqlite`)
|
|
37
|
+
* and is not this function's to fix.
|
|
38
|
+
*
|
|
39
|
+
* **Total.** This never throws for a value that satisfies `SqlValue`. That is
|
|
40
|
+
* load-bearing: `castCanYieldNull` (`types/cast-semantics.ts`) declares TEXT and BLOB
|
|
41
|
+
* total over non-null operands, and a `not null` lens column over `cast(x as text)`
|
|
42
|
+
* deploys on the strength of that claim. The only way `JSON.stringify` throws here is
|
|
43
|
+
* a cyclic object, which violates the `JsonSqlValue` contract — that propagates as the
|
|
44
|
+
* programming error it is rather than being caught.
|
|
45
|
+
*/
|
|
46
|
+
export declare function valueToText(value: Exclude<SqlValue, null>): string;
|
|
47
|
+
export declare function valueToText(value: SqlValue): string | null;
|
|
48
|
+
//# sourceMappingURL=value-text.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"value-text.d.ts","sourceRoot":"","sources":["../../../src/util/value-text.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAwBnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,MAAM,CAAC;AACpE,wBAAgB,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* One decoder for the whole engine. `ignoreBOM: true` is required, not cosmetic:
|
|
3
|
+
* the default **strips** a leading `EF BB BF`, so `cast(x'efbbbf' as text)` would
|
|
4
|
+
* silently yield the empty string instead of one U+FEFF character.
|
|
5
|
+
*
|
|
6
|
+
* Decoding is non-fatal (the default), so malformed bytes become U+FFFD rather
|
|
7
|
+
* than raising — {@link valueToText} has to be total. `decode()` without
|
|
8
|
+
* `{ stream: true }` keeps no state between calls, so one shared instance is safe.
|
|
9
|
+
*
|
|
10
|
+
* Built on first blob decode, not at module load: `TextDecoder` is not a global on
|
|
11
|
+
* every platform the engine targets (the React Native plugin checks for it before
|
|
12
|
+
* opening a store), and constructing it eagerly would turn "cannot cast a blob to
|
|
13
|
+
* text here" into "cannot import the engine here". `BLOB_TYPE.parse` reaches for
|
|
14
|
+
* `TextEncoder` the same way, per call.
|
|
15
|
+
*/
|
|
16
|
+
let utf8Decoder;
|
|
17
|
+
function decodeUtf8(bytes) {
|
|
18
|
+
utf8Decoder ??= new TextDecoder('utf-8', { ignoreBOM: true });
|
|
19
|
+
return utf8Decoder.decode(bytes);
|
|
20
|
+
}
|
|
21
|
+
export function valueToText(value) {
|
|
22
|
+
if (value === null)
|
|
23
|
+
return null;
|
|
24
|
+
switch (typeof value) {
|
|
25
|
+
case 'string': return value;
|
|
26
|
+
case 'number': return String(value);
|
|
27
|
+
case 'bigint': return value.toString();
|
|
28
|
+
case 'boolean': return value ? 'true' : 'false';
|
|
29
|
+
}
|
|
30
|
+
if (value instanceof Uint8Array)
|
|
31
|
+
return decodeUtf8(value);
|
|
32
|
+
// Narrowed to JsonSqlValue — an object or array, so stringify always yields a string.
|
|
33
|
+
return JSON.stringify(value);
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=value-text.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"value-text.js","sourceRoot":"","sources":["../../../src/util/value-text.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;GAcG;AACH,IAAI,WAAoC,CAAC;AAEzC,SAAS,UAAU,CAAC,KAAiB;IACpC,WAAW,KAAK,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9D,OAAO,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC;AAgDD,MAAM,UAAU,WAAW,CAAC,KAAe;IAC1C,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAChC,QAAQ,OAAO,KAAK,EAAE,CAAC;QACtB,KAAK,QAAQ,CAAC,CAAC,OAAO,KAAK,CAAC;QAC5B,KAAK,QAAQ,CAAC,CAAC,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;QACpC,KAAK,QAAQ,CAAC,CAAC,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;QACvC,KAAK,SAAS,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;IACjD,CAAC;IACD,IAAI,KAAK,YAAY,UAAU;QAAE,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC;IAC1D,sFAAsF;IACtF,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC"}
|
|
@@ -7,6 +7,21 @@ import type { VirtualTableConnection } from './connection.js';
|
|
|
7
7
|
* serialize via `acquireConnectionLock` or to issue calls concurrently.
|
|
8
8
|
*/
|
|
9
9
|
export declare function getModuleConcurrencyMode(module: AnyVirtualTableModule): VtabConcurrencyMode;
|
|
10
|
+
/**
|
|
11
|
+
* Whether the module declares that a `_readCommitted` connection serves a stable,
|
|
12
|
+
* self-consistent snapshot of committed state for the life of the scan — the
|
|
13
|
+
* precondition for running a read outside the execution mutex, concurrently with
|
|
14
|
+
* another statement's virtual-table commit.
|
|
15
|
+
*
|
|
16
|
+
* Fails closed: an undeclared module (every module that predates the flag) reads
|
|
17
|
+
* as `false` and keeps taking the serialized path. See
|
|
18
|
+
* `VirtualTableModule.readCommittedSnapshot` for the obligation, and
|
|
19
|
+
* `docs/module-authoring.md` § "Committed-Snapshot Reads (`_readCommitted`)".
|
|
20
|
+
*
|
|
21
|
+
* Deliberately NOT folded into {@link getModuleConcurrencyMode}: that answers a
|
|
22
|
+
* per-connection reentrancy question, this one a cross-connection tearing question.
|
|
23
|
+
*/
|
|
24
|
+
export declare function getModuleReadCommittedSnapshot(module: AnyVirtualTableModule): boolean;
|
|
10
25
|
/**
|
|
11
26
|
* Cooperative per-connection mutex used by parallel runtime consumers to
|
|
12
27
|
* serialize calls against a `'serial'` module when sibling branches share
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"concurrency.d.ts","sourceRoot":"","sources":["../../../src/vtab/concurrency.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAE9D;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,qBAAqB,GAAG,mBAAmB,CAE3F;AAUD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,qBAAqB,CAC1C,UAAU,EAAE,sBAAsB,GAChC,OAAO,CAAC,MAAM,IAAI,CAAC,CAarB"}
|
|
1
|
+
{"version":3,"file":"concurrency.d.ts","sourceRoot":"","sources":["../../../src/vtab/concurrency.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAE9D;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,qBAAqB,GAAG,mBAAmB,CAE3F;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAErF;AAUD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,qBAAqB,CAC1C,UAAU,EAAE,sBAAsB,GAChC,OAAO,CAAC,MAAM,IAAI,CAAC,CAarB"}
|
|
@@ -7,6 +7,23 @@
|
|
|
7
7
|
export function getModuleConcurrencyMode(module) {
|
|
8
8
|
return module.concurrencyMode ?? 'serial';
|
|
9
9
|
}
|
|
10
|
+
/**
|
|
11
|
+
* Whether the module declares that a `_readCommitted` connection serves a stable,
|
|
12
|
+
* self-consistent snapshot of committed state for the life of the scan — the
|
|
13
|
+
* precondition for running a read outside the execution mutex, concurrently with
|
|
14
|
+
* another statement's virtual-table commit.
|
|
15
|
+
*
|
|
16
|
+
* Fails closed: an undeclared module (every module that predates the flag) reads
|
|
17
|
+
* as `false` and keeps taking the serialized path. See
|
|
18
|
+
* `VirtualTableModule.readCommittedSnapshot` for the obligation, and
|
|
19
|
+
* `docs/module-authoring.md` § "Committed-Snapshot Reads (`_readCommitted`)".
|
|
20
|
+
*
|
|
21
|
+
* Deliberately NOT folded into {@link getModuleConcurrencyMode}: that answers a
|
|
22
|
+
* per-connection reentrancy question, this one a cross-connection tearing question.
|
|
23
|
+
*/
|
|
24
|
+
export function getModuleReadCommittedSnapshot(module) {
|
|
25
|
+
return module.readCommittedSnapshot === true;
|
|
26
|
+
}
|
|
10
27
|
/**
|
|
11
28
|
* Promise-chain tail per connection. The tail resolves when the current
|
|
12
29
|
* critical section's release fires; subsequent acquirers await it and
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"concurrency.js","sourceRoot":"","sources":["../../../src/vtab/concurrency.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAA6B;IACrE,OAAO,MAAM,CAAC,eAAe,IAAI,QAAQ,CAAC;AAC3C,CAAC;AAED;;;;;GAKG;AACH,MAAM,mBAAmB,GAAG,IAAI,OAAO,EAAyC,CAAC;AAEjF;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAC1C,UAAkC;IAElC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAErD,IAAI,OAAoB,CAAC;IACzB,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAC9C,OAAO,GAAG,OAAO,CAAC;IACnB,CAAC,CAAC,CAAC;IACH,mBAAmB,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAE9C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,QAAQ,CAAC;IAChB,CAAC;IACD,OAAO,OAAO,CAAC;AAChB,CAAC"}
|
|
1
|
+
{"version":3,"file":"concurrency.js","sourceRoot":"","sources":["../../../src/vtab/concurrency.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAA6B;IACrE,OAAO,MAAM,CAAC,eAAe,IAAI,QAAQ,CAAC;AAC3C,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,8BAA8B,CAAC,MAA6B;IAC3E,OAAO,MAAM,CAAC,qBAAqB,KAAK,IAAI,CAAC;AAC9C,CAAC;AAED;;;;;GAKG;AACH,MAAM,mBAAmB,GAAG,IAAI,OAAO,EAAyC,CAAC;AAEjF;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAC1C,UAAkC;IAElC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAErD,IAAI,OAAoB,CAAC;IACzB,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAC9C,OAAO,GAAG,OAAO,CAAC;IACnB,CAAC,CAAC,CAAC;IACH,mBAAmB,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAE9C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,QAAQ,CAAC;IAChB,CAAC;IACD,OAAO,OAAO,CAAC;AAChB,CAAC"}
|
|
@@ -45,6 +45,8 @@ export declare class BaseLayer implements Layer {
|
|
|
45
45
|
private primaryKeyFunctions;
|
|
46
46
|
primaryTree: BTree<BTreeKeyForPrimary, Row>;
|
|
47
47
|
readonly secondaryIndexes: Map<string, MemoryIndex>;
|
|
48
|
+
/** How many child layers have derived BTrees from this one — see {@link Layer.noteDerivedChild}. */
|
|
49
|
+
private derivedChildCount;
|
|
48
50
|
constructor(schema: TableSchema, collationResolver: CollationResolver);
|
|
49
51
|
updateSchema(newSchema: TableSchema): void;
|
|
50
52
|
private initializePrimaryKeyFunctions;
|
|
@@ -65,6 +67,12 @@ export declare class BaseLayer implements Layer {
|
|
|
65
67
|
* Every index gets a FRESH `MemoryIndex` and BTree, so any layer inheriting the
|
|
66
68
|
* old trees must be re-pointed at the new ones — that is
|
|
67
69
|
* `TransactionLayer.adoptSchema`'s replacement path.
|
|
70
|
+
*
|
|
71
|
+
* Nothing here mutates a published structure in place: `MemoryIndex.clear()`
|
|
72
|
+
* swaps in a new BTree rather than emptying the old one, and the map is then
|
|
73
|
+
* replaced wholesale. That is what lets a `_readCommitted` scan — which
|
|
74
|
+
* captures its index tree object at scan start — keep walking a coherent
|
|
75
|
+
* pre-DDL snapshot while this runs (see `MemoryTableModule.readCommittedSnapshot`).
|
|
68
76
|
*/
|
|
69
77
|
rebuildAllSecondaryIndexes(): void;
|
|
70
78
|
/**
|
|
@@ -117,6 +125,8 @@ export declare class BaseLayer implements Layer {
|
|
|
117
125
|
getParent: () => Layer | null;
|
|
118
126
|
getSchema: () => TableSchema;
|
|
119
127
|
isCommitted: () => boolean;
|
|
128
|
+
noteDerivedChild: () => void;
|
|
129
|
+
hasDerivedChildren: () => boolean;
|
|
120
130
|
getModificationTree: (indexName: string | "primary") => BTree<BTreeKeyForPrimary, Row> | null;
|
|
121
131
|
getSecondaryIndexTree: (indexName: string) => BTree<BTreeKeyForIndex, MemoryIndexEntry> | null;
|
|
122
132
|
getSecondaryIndex: (indexName: string) => MemoryIndex | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../../src/vtab/memory/layer/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC1F,OAAO,KAAK,EAAE,KAAK,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAc,KAAK,GAAG,EAAE,KAAK,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAI5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAKxE,8DAA8D;AAC9D,wBAAiB,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,kBAAkB,EAAE,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAIvF;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,qBAAqB,CACpC,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,EACnB,KAAK,EAAE,WAAW,EAClB,iBAAiB,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,kBAAkB,EACnD,aAAa,EAAE,OAAO,EACtB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,aAAa,CAAC,YAAY,CAAC,GAClC,IAAI,CAIN;AAED;;;;;;GAMG;AACH,wBAAsB,0BAA0B,CAC/C,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,EACxB,KAAK,EAAE,WAAW,EAClB,iBAAiB,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,kBAAkB,EACnD,aAAa,EAAE,OAAO,EACtB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,aAAa,CAAC,YAAY,CAAC,GAClC,OAAO,CAAC,IAAI,CAAC,CAIf;AAgCD,qBAAa,SAAU,YAAW,KAAK;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IAC1B,WAAW,EAAE,WAAW,CAAC;IAChC,SAAgB,iBAAiB,EAAE,iBAAiB,CAAC;IACrD,OAAO,CAAC,mBAAmB,CAAuB;IAC3C,WAAW,EAAE,KAAK,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;IACnD,SAAgB,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../../src/vtab/memory/layer/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC1F,OAAO,KAAK,EAAE,KAAK,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAc,KAAK,GAAG,EAAE,KAAK,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAI5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAKxE,8DAA8D;AAC9D,wBAAiB,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,kBAAkB,EAAE,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAIvF;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,qBAAqB,CACpC,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,EACnB,KAAK,EAAE,WAAW,EAClB,iBAAiB,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,kBAAkB,EACnD,aAAa,EAAE,OAAO,EACtB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,aAAa,CAAC,YAAY,CAAC,GAClC,IAAI,CAIN;AAED;;;;;;GAMG;AACH,wBAAsB,0BAA0B,CAC/C,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,EACxB,KAAK,EAAE,WAAW,EAClB,iBAAiB,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,kBAAkB,EACnD,aAAa,EAAE,OAAO,EACtB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,aAAa,CAAC,YAAY,CAAC,GAClC,OAAO,CAAC,IAAI,CAAC,CAIf;AAgCD,qBAAa,SAAU,YAAW,KAAK;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IAC1B,WAAW,EAAE,WAAW,CAAC;IAChC,SAAgB,iBAAiB,EAAE,iBAAiB,CAAC;IACrD,OAAO,CAAC,mBAAmB,CAAuB;IAC3C,WAAW,EAAE,KAAK,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;IACnD,SAAgB,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC3D,oGAAoG;IACpG,OAAO,CAAC,iBAAiB,CAAK;gBAElB,MAAM,EAAE,WAAW,EAAE,iBAAiB,EAAE,iBAAiB;IAkB9D,YAAY,CAAC,SAAS,EAAE,WAAW,GAAG,IAAI;IASjD,OAAO,CAAC,6BAA6B;IAIrC,uGAAuG;IACvG,OAAO,CAAC,iBAAiB;IAWzB;;;;;;;;;;;;;;;;;;;;;OAqBG;IACI,0BAA0B,IAAI,IAAI;IAkBzC;;;;;;;;;;;;;;;;;OAiBG;IACI,wBAAwB,IAAI,IAAI;IAsBvC;;;;;;;OAOG;IACI,0BAA0B,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAcpD,OAAO,CAAC,6BAA6B;IAIrC,OAAO,CAAC,mBAAmB;IAI3B;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,sBAAsB;IAU9B,OAAO,CAAC,wBAAwB;IAOhC,OAAO,CAAC,wBAAwB;IAehC,OAAO,CAAC,uBAAuB;IAK/B,UAAU,QAAO,MAAM,CAAiB;IACxC,SAAS,QAAO,KAAK,GAAG,IAAI,CAAS;IACrC,SAAS,QAAO,WAAW,CAAqB;IAChD,WAAW,QAAO,OAAO,CAAS;IAElC,gBAAgB,QAAO,IAAI,CAAkC;IAC7D,kBAAkB,QAAO,OAAO,CAA+B;IAE/D,mBAAmB,GAAI,WAAW,MAAM,GAAG,SAAS,KAAG,KAAK,CAAC,kBAAkB,EAAE,GAAG,CAAC,GAAG,IAAI,CACzC;IAEnD,qBAAqB,GAAI,WAAW,MAAM,KAAG,KAAK,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,GAAG,IAAI,CACzC;IAEpD,iBAAiB,GAAI,WAAW,MAAM,KAAG,WAAW,GAAG,SAAS,CAC1B;IAE/B,6BAA6B,CAAC,MAAM,EAAE,WAAW,GAAG,0BAA0B;IAWrF,GAAG,GAAI,KAAK,kBAAkB,KAAG,OAAO,CAGtC;IAEF;;;;OAIG;IACG,eAAe,CACpB,eAAe,EAAE,YAAY,EAC7B,YAAY,EAAE,QAAQ,EACtB,iBAAiB,EAAE,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,EAC3E,aAAa,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;YAmBF,gCAAgC;IA2CxC,kBAAkB,CAAC,sBAAsB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUvE,OAAO,CAAC,gCAAgC;IAgBlC,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAKzC;;;;;;;;;;;;OAYG;IACG,cAAc,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBvD,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAOzD"}
|
|
@@ -73,6 +73,8 @@ export class BaseLayer {
|
|
|
73
73
|
primaryKeyFunctions;
|
|
74
74
|
primaryTree;
|
|
75
75
|
secondaryIndexes;
|
|
76
|
+
/** How many child layers have derived BTrees from this one — see {@link Layer.noteDerivedChild}. */
|
|
77
|
+
derivedChildCount = 0;
|
|
76
78
|
constructor(schema, collationResolver) {
|
|
77
79
|
this.layerId = baseLayerCounter++;
|
|
78
80
|
this.tableSchema = schema;
|
|
@@ -114,6 +116,12 @@ export class BaseLayer {
|
|
|
114
116
|
* Every index gets a FRESH `MemoryIndex` and BTree, so any layer inheriting the
|
|
115
117
|
* old trees must be re-pointed at the new ones — that is
|
|
116
118
|
* `TransactionLayer.adoptSchema`'s replacement path.
|
|
119
|
+
*
|
|
120
|
+
* Nothing here mutates a published structure in place: `MemoryIndex.clear()`
|
|
121
|
+
* swaps in a new BTree rather than emptying the old one, and the map is then
|
|
122
|
+
* replaced wholesale. That is what lets a `_readCommitted` scan — which
|
|
123
|
+
* captures its index tree object at scan start — keep walking a coherent
|
|
124
|
+
* pre-DDL snapshot while this runs (see `MemoryTableModule.readCommittedSnapshot`).
|
|
117
125
|
*/
|
|
118
126
|
rebuildAllSecondaryIndexes() {
|
|
119
127
|
this.clearExistingSecondaryIndexes();
|
|
@@ -233,6 +241,8 @@ export class BaseLayer {
|
|
|
233
241
|
getParent = () => null;
|
|
234
242
|
getSchema = () => this.tableSchema;
|
|
235
243
|
isCommitted = () => true;
|
|
244
|
+
noteDerivedChild = () => { this.derivedChildCount++; };
|
|
245
|
+
hasDerivedChildren = () => this.derivedChildCount > 0;
|
|
236
246
|
getModificationTree = (indexName) => indexName === 'primary' ? this.primaryTree : null;
|
|
237
247
|
getSecondaryIndexTree = (indexName) => this.secondaryIndexes.get(indexName)?.data ?? null;
|
|
238
248
|
getSecondaryIndex = (indexName) => this.secondaryIndexes.get(indexName);
|