@quereus/quereus 0.4.11 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +40 -16
- package/dist/src/core/database.d.ts +18 -0
- package/dist/src/core/database.d.ts.map +1 -1
- package/dist/src/core/database.js +22 -0
- package/dist/src/core/database.js.map +1 -1
- package/dist/src/func/builtins/conversion.d.ts +51 -0
- package/dist/src/func/builtins/conversion.d.ts.map +1 -0
- package/dist/src/func/builtins/conversion.js +152 -0
- package/dist/src/func/builtins/conversion.js.map +1 -0
- package/dist/src/func/builtins/index.d.ts.map +1 -1
- package/dist/src/func/builtins/index.js +20 -1
- package/dist/src/func/builtins/index.js.map +1 -1
- package/dist/src/func/builtins/json.d.ts +1 -0
- package/dist/src/func/builtins/json.d.ts.map +1 -1
- package/dist/src/func/builtins/json.js +100 -0
- package/dist/src/func/builtins/json.js.map +1 -1
- package/dist/src/func/builtins/schema.js +1 -1
- package/dist/src/func/builtins/schema.js.map +1 -1
- package/dist/src/index.d.ts +8 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +6 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/runtime/emit/binary.d.ts.map +1 -1
- package/dist/src/runtime/emit/binary.js +6 -2
- package/dist/src/runtime/emit/binary.js.map +1 -1
- package/dist/src/runtime/emit/constraint-check.d.ts.map +1 -1
- package/dist/src/runtime/emit/constraint-check.js +8 -1
- package/dist/src/runtime/emit/constraint-check.js.map +1 -1
- package/dist/src/runtime/emit/insert.d.ts.map +1 -1
- package/dist/src/runtime/emit/insert.js +4 -24
- package/dist/src/runtime/emit/insert.js.map +1 -1
- package/dist/src/runtime/emit/scalar-function.d.ts +9 -0
- package/dist/src/runtime/emit/scalar-function.d.ts.map +1 -1
- package/dist/src/runtime/emit/scalar-function.js +23 -1
- package/dist/src/runtime/emit/scalar-function.js.map +1 -1
- package/dist/src/runtime/emit/unary.d.ts.map +1 -1
- package/dist/src/runtime/emit/unary.js +3 -1
- package/dist/src/runtime/emit/unary.js.map +1 -1
- package/dist/src/schema/column.d.ts +4 -1
- package/dist/src/schema/column.d.ts.map +1 -1
- package/dist/src/schema/column.js +3 -0
- package/dist/src/schema/column.js.map +1 -1
- package/dist/src/schema/function.d.ts +15 -0
- package/dist/src/schema/function.d.ts.map +1 -1
- package/dist/src/schema/function.js.map +1 -1
- package/dist/src/schema/table.d.ts.map +1 -1
- package/dist/src/schema/table.js +10 -1
- package/dist/src/schema/table.js.map +1 -1
- package/dist/src/types/builtin-types.d.ts +37 -0
- package/dist/src/types/builtin-types.d.ts.map +1 -0
- package/dist/src/types/builtin-types.js +359 -0
- package/dist/src/types/builtin-types.js.map +1 -0
- package/dist/src/types/index.d.ts +7 -0
- package/dist/src/types/index.d.ts.map +1 -0
- package/dist/src/types/index.js +13 -0
- package/dist/src/types/index.js.map +1 -0
- package/dist/src/types/json-type.d.ts +8 -0
- package/dist/src/types/json-type.d.ts.map +1 -0
- package/dist/src/types/json-type.js +143 -0
- package/dist/src/types/json-type.js.map +1 -0
- package/dist/src/types/logical-type.d.ts +52 -0
- package/dist/src/types/logical-type.d.ts.map +1 -0
- package/dist/src/types/logical-type.js +34 -0
- package/dist/src/types/logical-type.js.map +1 -0
- package/dist/src/types/plugin-interface.d.ts +9 -0
- package/dist/src/types/plugin-interface.d.ts.map +1 -0
- package/dist/src/types/plugin-interface.js +2 -0
- package/dist/src/types/plugin-interface.js.map +1 -0
- package/dist/src/types/registry.d.ts +72 -0
- package/dist/src/types/registry.d.ts.map +1 -0
- package/dist/src/types/registry.js +168 -0
- package/dist/src/types/registry.js.map +1 -0
- package/dist/src/types/temporal-types.d.ts +17 -0
- package/dist/src/types/temporal-types.d.ts.map +1 -0
- package/dist/src/types/temporal-types.js +178 -0
- package/dist/src/types/temporal-types.js.map +1 -0
- package/dist/src/types/validation.d.ts +52 -0
- package/dist/src/types/validation.d.ts.map +1 -0
- package/dist/src/types/validation.js +96 -0
- package/dist/src/types/validation.js.map +1 -0
- package/dist/src/util/comparison.d.ts +24 -5
- package/dist/src/util/comparison.d.ts.map +1 -1
- package/dist/src/util/comparison.js +71 -9
- package/dist/src/util/comparison.js.map +1 -1
- package/dist/src/util/plugin-loader.d.ts.map +1 -1
- package/dist/src/util/plugin-loader.js +17 -0
- package/dist/src/util/plugin-loader.js.map +1 -1
- package/dist/src/vtab/manifest.d.ts +4 -0
- package/dist/src/vtab/manifest.d.ts.map +1 -1
- package/dist/src/vtab/memory/index.d.ts +1 -0
- package/dist/src/vtab/memory/index.d.ts.map +1 -1
- package/dist/src/vtab/memory/index.js +15 -4
- package/dist/src/vtab/memory/index.js.map +1 -1
- package/dist/src/vtab/memory/layer/manager.d.ts.map +1 -1
- package/dist/src/vtab/memory/layer/manager.js +20 -2
- package/dist/src/vtab/memory/layer/manager.js.map +1 -1
- package/dist/src/vtab/memory/utils/primary-key.d.ts.map +1 -1
- package/dist/src/vtab/memory/utils/primary-key.js +17 -12
- package/dist/src/vtab/memory/utils/primary-key.js.map +1 -1
- package/package.json +5 -4
- package/src/core/database.ts +24 -0
- package/src/func/builtins/conversion.ts +201 -0
- package/src/func/builtins/index.ts +20 -1
- package/src/func/builtins/json.ts +121 -0
- package/src/func/builtins/schema.ts +1 -1
- package/src/index.ts +35 -0
- package/src/runtime/emit/binary.ts +8 -2
- package/src/runtime/emit/constraint-check.ts +9 -1
- package/src/runtime/emit/insert.ts +4 -16
- package/src/runtime/emit/scalar-function.ts +27 -1
- package/src/runtime/emit/unary.ts +4 -1
- package/src/schema/column.ts +8 -1
- package/src/schema/function.ts +18 -0
- package/src/schema/table.ts +411 -398
- package/src/types/builtin-types.ts +350 -0
- package/src/types/index.ts +17 -0
- package/src/types/json-type.ts +152 -0
- package/src/types/logical-type.ts +75 -0
- package/src/types/plugin-interface.ts +10 -0
- package/src/types/registry.ts +200 -0
- package/src/types/temporal-types.ts +167 -0
- package/src/types/validation.ts +120 -0
- package/src/util/comparison.ts +87 -14
- package/src/util/plugin-loader.ts +19 -0
- package/src/vtab/manifest.ts +7 -1
- package/src/vtab/memory/index.ts +191 -178
- package/src/vtab/memory/layer/manager.ts +28 -2
- package/src/vtab/memory/utils/primary-key.ts +19 -14
|
@@ -3,14 +3,23 @@ import { lowerFunc, upperFunc } from './string.js';
|
|
|
3
3
|
import { lengthFunc, substrFunc, substringFunc, likeFunc, globFunc, trimFunc, ltrimFunc, rtrimFunc, replaceFunc, instrFunc, lpadFunc, rpadFunc, reverseFunc, stringConcatFunc, splitStringFunc } from './string.js';
|
|
4
4
|
import { countStarFunc, sumFunc, avgFunc, minFunc, maxFunc, countXFunc, groupConcatFuncRev, totalFunc, varPopFunc, varSampFunc, stdDevPopFunc, stdDevSampFunc } from './aggregate.js';
|
|
5
5
|
import { dateFunc, timeFunc, datetimeFunc, juliandayFunc, strftimeFunc, isISODateFunc, isISODateTimeFunc } from './datetime.js';
|
|
6
|
-
import { jsonValidFunc, jsonTypeFunc, jsonExtractFunc, jsonQuoteFunc, jsonArrayFunc, jsonObjectFunc, jsonInsertFunc, jsonReplaceFunc, jsonSetFunc, jsonRemoveFunc, jsonArrayLengthFunc, jsonPatchFunc, jsonGroupArrayFunc, jsonGroupObjectFunc } from './json.js';
|
|
6
|
+
import { jsonValidFunc, jsonSchemaFunc, jsonTypeFunc, jsonExtractFunc, jsonQuoteFunc, jsonArrayFunc, jsonObjectFunc, jsonInsertFunc, jsonReplaceFunc, jsonSetFunc, jsonRemoveFunc, jsonArrayLengthFunc, jsonPatchFunc, jsonGroupArrayFunc, jsonGroupObjectFunc } from './json.js';
|
|
7
7
|
import { generateSeriesFunc } from './generation.js';
|
|
8
8
|
import { queryPlanFunc, schedulerProgramFunc, stackTraceFunc, executionTraceFunc, rowTraceFunc, explainAssertionFunc } from './explain.js';
|
|
9
9
|
import { schemaFunc, tableInfoFunc, functionInfoFunc } from './schema.js';
|
|
10
10
|
import { jsonEachFunc, jsonTreeFunc } from './json-tvf.js';
|
|
11
|
+
import { INTEGER_FUNC, REAL_FUNC, TEXT_FUNC, BOOLEAN_FUNC, DATE_FUNC, TIME_FUNC, DATETIME_FUNC, JSON_FUNC } from './conversion.js';
|
|
11
12
|
// Additional useful functions integrated from examples
|
|
12
13
|
// Combine all built-in function definitions into a single array
|
|
13
14
|
export const BUILTIN_FUNCTIONS = [
|
|
15
|
+
// Type Conversion Functions
|
|
16
|
+
INTEGER_FUNC,
|
|
17
|
+
REAL_FUNC,
|
|
18
|
+
TEXT_FUNC,
|
|
19
|
+
BOOLEAN_FUNC,
|
|
20
|
+
DATE_FUNC,
|
|
21
|
+
TIME_FUNC,
|
|
22
|
+
DATETIME_FUNC,
|
|
14
23
|
// Scalar Functions
|
|
15
24
|
absFunc,
|
|
16
25
|
roundFunc,
|
|
@@ -71,6 +80,7 @@ export const BUILTIN_FUNCTIONS = [
|
|
|
71
80
|
isISODateTimeFunc,
|
|
72
81
|
// JSON Functions
|
|
73
82
|
jsonValidFunc,
|
|
83
|
+
jsonSchemaFunc,
|
|
74
84
|
jsonTypeFunc,
|
|
75
85
|
jsonExtractFunc,
|
|
76
86
|
jsonQuoteFunc,
|
|
@@ -103,6 +113,15 @@ export const BUILTIN_FUNCTIONS = [
|
|
|
103
113
|
// JSON table-valued functions
|
|
104
114
|
jsonEachFunc,
|
|
105
115
|
jsonTreeFunc,
|
|
116
|
+
// Conversion functions
|
|
117
|
+
INTEGER_FUNC,
|
|
118
|
+
REAL_FUNC,
|
|
119
|
+
TEXT_FUNC,
|
|
120
|
+
BOOLEAN_FUNC,
|
|
121
|
+
DATE_FUNC,
|
|
122
|
+
TIME_FUNC,
|
|
123
|
+
DATETIME_FUNC,
|
|
124
|
+
JSON_FUNC,
|
|
106
125
|
];
|
|
107
126
|
// Export registration utilities for easy access
|
|
108
127
|
export { createScalarFunction, createTableValuedFunction, createIntegratedTableValuedFunction as createDatabaseAwareTableValuedFunction, createAggregateFunction, } from '../registration.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/func/builtins/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EACxC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,OAAO,EAAE,QAAQ,EACrE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EACpD,SAAS,EACT,YAAY,EACZ,SAAS,EACT,UAAU,EAAC,MAAM,aAAa,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAC9G,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAC1C,gBAAgB,EAChB,eAAe,EAAC,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,SAAS,EACpG,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhF,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAChI,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/func/builtins/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export declare const jsonValidFunc: import("../../schema/function.js").ScalarFunctionSchema;
|
|
2
|
+
export declare const jsonSchemaFunc: import("../../schema/function.js").ScalarFunctionSchema;
|
|
2
3
|
export declare const jsonTypeFunc: import("../../schema/function.js").ScalarFunctionSchema;
|
|
3
4
|
export declare const jsonExtractFunc: import("../../schema/function.js").ScalarFunctionSchema;
|
|
4
5
|
export declare const jsonQuoteFunc: import("../../schema/function.js").ScalarFunctionSchema;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../../../src/func/builtins/json.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../../../src/func/builtins/json.ts"],"names":[],"mappings":"AAyBA,eAAO,MAAM,aAAa,yDAKzB,CAAC;AA4EF,eAAO,MAAM,cAAc,yDAgC1B,CAAC;AAMF,eAAO,MAAM,YAAY,yDAgBxB,CAAC;AAGF,eAAO,MAAM,eAAe,yDA+C3B,CAAC;AAGF,eAAO,MAAM,aAAa,yDAgCzB,CAAC;AAGF,eAAO,MAAM,aAAa,yDAWzB,CAAC;AAGF,eAAO,MAAM,cAAc,yDAwB1B,CAAC;AAKF,eAAO,MAAM,mBAAmB,yDAsB/B,CAAC;AAGF,eAAO,MAAM,aAAa,yDA4BzB,CAAC;AAKF,eAAO,MAAM,cAAc,yDA+C1B,CAAC;AAGF,eAAO,MAAM,eAAe,yDA4C3B,CAAC;AAGF,eAAO,MAAM,WAAW,yDAsDvB,CAAC;AAGF,eAAO,MAAM,cAAc,yDAuC1B,CAAC;AAKF,eAAO,MAAM,kBAAkB,4DAgB9B,CAAC;AAGF,eAAO,MAAM,mBAAmB,4DAqB/B,CAAC"}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import fastJsonPatch from 'fast-json-patch';
|
|
2
2
|
const { applyPatch } = fastJsonPatch;
|
|
3
|
+
// moat-maker: Runtime validation library with TypeScript-like syntax
|
|
4
|
+
// Used for json_schema() function to validate JSON against structural schemas
|
|
5
|
+
import { validator } from 'moat-maker';
|
|
3
6
|
import { createLogger } from '../../common/logger.js';
|
|
4
7
|
import { createScalarFunction, createAggregateFunction } from '../registration.js';
|
|
5
8
|
import { safeJsonParse, resolveJsonPathForModify, prepareJsonValue, deepCopyJson, getJsonType } from './json-helpers.js';
|
|
9
|
+
import { PlanNodeType } from '../../planner/nodes/plan-node-type.js';
|
|
10
|
+
import { emitPlanNode } from '../../runtime/emitters.js';
|
|
6
11
|
const log = createLogger('func:builtins:json');
|
|
7
12
|
const errorLog = log.extend('error');
|
|
8
13
|
// --- JSON Functions --- //
|
|
@@ -10,6 +15,101 @@ const errorLog = log.extend('error');
|
|
|
10
15
|
export const jsonValidFunc = createScalarFunction({ name: 'json_valid', numArgs: 1, deterministic: true }, (json) => {
|
|
11
16
|
return safeJsonParse(json) !== null ? 1 : 0;
|
|
12
17
|
});
|
|
18
|
+
/**
|
|
19
|
+
* Custom emitter for json_schema that caches compiled validators in the EmissionContext.
|
|
20
|
+
* This provides significant performance improvements for CHECK constraints and repeated validations.
|
|
21
|
+
*/
|
|
22
|
+
function emitJsonSchema(plan, ctx, defaultEmit) {
|
|
23
|
+
// Check if the second argument (schema definition) is a constant
|
|
24
|
+
const schemaDefArg = plan.operands[1];
|
|
25
|
+
if (schemaDefArg?.nodeType === PlanNodeType.Literal) {
|
|
26
|
+
const literalNode = schemaDefArg;
|
|
27
|
+
const schemaDef = literalNode.getValue();
|
|
28
|
+
if (typeof schemaDef === 'string') {
|
|
29
|
+
try {
|
|
30
|
+
// Compile the validator once at emission time using moat-maker
|
|
31
|
+
// moat-maker uses template literals, so we need to create a validator dynamically
|
|
32
|
+
// Template literals have a special structure: an array with a 'raw' property
|
|
33
|
+
// We create this structure manually to simulate a template literal
|
|
34
|
+
const parts = [schemaDef];
|
|
35
|
+
parts.raw = [schemaDef];
|
|
36
|
+
const compiledValidator = validator(parts, ...[]);
|
|
37
|
+
// Emit only the JSON argument (first operand)
|
|
38
|
+
const jsonArgInstruction = emitPlanNode(plan.operands[0], ctx);
|
|
39
|
+
// Create optimized runtime function that uses the cached validator
|
|
40
|
+
// The validator is captured in the closure, so it lives with the plan
|
|
41
|
+
function run(_rctx, ...args) {
|
|
42
|
+
const json = args[0];
|
|
43
|
+
if (typeof json !== 'string')
|
|
44
|
+
return 0;
|
|
45
|
+
let data;
|
|
46
|
+
try {
|
|
47
|
+
data = JSON.parse(json);
|
|
48
|
+
}
|
|
49
|
+
catch {
|
|
50
|
+
return 0; // Invalid JSON
|
|
51
|
+
}
|
|
52
|
+
// Use the cached compiled validator
|
|
53
|
+
try {
|
|
54
|
+
// moat-maker's .matches() returns true if valid, false otherwise
|
|
55
|
+
const isValid = compiledValidator.matches(data);
|
|
56
|
+
return isValid ? 1 : 0;
|
|
57
|
+
}
|
|
58
|
+
catch (e) {
|
|
59
|
+
errorLog('json_schema validation failed: %O', e);
|
|
60
|
+
return 0;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return {
|
|
64
|
+
params: [jsonArgInstruction],
|
|
65
|
+
run,
|
|
66
|
+
note: `json_schema(cached:${schemaDef.substring(0, 20)}...)`
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
catch (e) {
|
|
70
|
+
errorLog('Failed to compile schema at emission time: %O', e);
|
|
71
|
+
// Fall through to default emission
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
// If schema is not a constant or compilation failed, use default emission
|
|
76
|
+
return defaultEmit(plan, ctx);
|
|
77
|
+
}
|
|
78
|
+
// json_schema(X, schema_def)
|
|
79
|
+
// Note: This function uses a custom emitter that caches compiled validators
|
|
80
|
+
// during plan emission for better performance.
|
|
81
|
+
export const jsonSchemaFunc = createScalarFunction({ name: 'json_schema', numArgs: 2, deterministic: true }, (json, schemaDef) => {
|
|
82
|
+
// This is the fallback implementation for when no cache is available
|
|
83
|
+
// (e.g., during direct function calls outside of query execution)
|
|
84
|
+
// Schema definition must be a string
|
|
85
|
+
if (typeof schemaDef !== 'string')
|
|
86
|
+
return 0;
|
|
87
|
+
// Parse the JSON value - need to check if it's valid JSON first
|
|
88
|
+
if (typeof json !== 'string')
|
|
89
|
+
return 0;
|
|
90
|
+
let data;
|
|
91
|
+
try {
|
|
92
|
+
data = JSON.parse(json);
|
|
93
|
+
}
|
|
94
|
+
catch {
|
|
95
|
+
return 0; // Invalid JSON
|
|
96
|
+
}
|
|
97
|
+
// Compile and validate using moat-maker (no caching in fallback path)
|
|
98
|
+
try {
|
|
99
|
+
const parts = [schemaDef];
|
|
100
|
+
parts.raw = [schemaDef];
|
|
101
|
+
const compiledValidator = validator(parts, ...[]);
|
|
102
|
+
// moat-maker's .matches() returns true if valid, false otherwise
|
|
103
|
+
const isValid = compiledValidator.matches(data);
|
|
104
|
+
return isValid ? 1 : 0;
|
|
105
|
+
}
|
|
106
|
+
catch (e) {
|
|
107
|
+
errorLog('json_schema validation failed: %O', e);
|
|
108
|
+
return 0;
|
|
109
|
+
}
|
|
110
|
+
});
|
|
111
|
+
// Attach the custom emitter to the function schema
|
|
112
|
+
jsonSchemaFunc.customEmitter = emitJsonSchema;
|
|
13
113
|
// json_type(X, P?)
|
|
14
114
|
export const jsonTypeFunc = createScalarFunction({ name: 'json_type', numArgs: -1, deterministic: true }, (json, path) => {
|
|
15
115
|
const data = safeJsonParse(json);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json.js","sourceRoot":"","sources":["../../../../src/func/builtins/json.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"json.js","sourceRoot":"","sources":["../../../../src/func/builtins/json.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,7 +38,7 @@ export const schemaFunc = createIntegratedTableValuedFunction({
|
|
|
38
38
|
for (const tableSchema of schemaInstance.getAllTables()) {
|
|
39
39
|
let createSql = null;
|
|
40
40
|
try {
|
|
41
|
-
const columnsStr = tableSchema.columns.map((c) => `"${c.name}" ${c.
|
|
41
|
+
const columnsStr = tableSchema.columns.map((c) => `"${c.name}" ${c.logicalType.name}`).join(', ');
|
|
42
42
|
const argsStr = Object.entries(tableSchema.vtabArgs ?? {}).map(([key, value]) => `${key}=${value}`).join(', ');
|
|
43
43
|
createSql = `create table "${tableSchema.name}" (${columnsStr}) using ${tableSchema.vtabModuleName}(${argsStr})`;
|
|
44
44
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/func/builtins/schema.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,mCAAmC,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGnD,OAAO,EAAE,sBAAsB,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAIlJ;;GAEG;AACH,SAAS,uBAAuB,CAAC,IAAoB;IACpD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,KAAK,CAAC,CAAC;QACrC,CAAC,CAAC,KAAK,CAAC,8BAA8B;QACtC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5C,OAAO,YAAY,IAAI,CAAC,IAAI,IAAI,UAAU,GAAG,CAAC;AAC/C,CAAC;AAED,wDAAwD;AACxD,MAAM,CAAC,MAAM,UAAU,GAAG,mCAAmC,CAC5D;IACC,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE,CAAC;IACV,aAAa,EAAE,KAAK,EAAE,oBAAoB;IAC1C,UAAU,EAAE;QACX,SAAS,EAAE,UAAU;QACrB,UAAU,EAAE,IAAI;QAChB,KAAK,EAAE,KAAK;QACZ,OAAO,EAAE;YACR,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;YAC/H,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;YAC/H,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;YACnI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;SAC7H;QACD,IAAI,EAAE,EAAE;QACR,cAAc,EAAE,EAAE;KAClB;CACD,EACD,KAAK,SAAS,CAAC,EAAE,EAAY;IAC5B,IAAI,CAAC;QACJ,MAAM,aAAa,GAAG,EAAE,CAAC,aAAa,CAAC;QAEvC,MAAM,qBAAqB,GAAG,QAAQ,CAAC,EAAE,cAAsB;YAC9D,iBAAiB;YACjB,KAAK,MAAM,WAAW,IAAI,cAAc,CAAC,YAAY,EAAE,EAAE,CAAC;gBACzD,IAAI,SAAS,GAAkB,IAAI,CAAC;gBACpC,IAAI,CAAC;oBACJ,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAe,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/func/builtins/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -22,6 +22,13 @@ export type { BestAccessPlanRequest, BestAccessPlanResult, ConstraintOp, ColumnM
|
|
|
22
22
|
export { AccessPlanBuilder, validateAccessPlan } from './vtab/best-access-plan.js';
|
|
23
23
|
export type { CollationFunction } from './util/comparison.js';
|
|
24
24
|
export { BINARY_COLLATION, NOCASE_COLLATION, RTRIM_COLLATION, registerCollation, getCollation, resolveCollation } from './util/comparison.js';
|
|
25
|
+
export type { LogicalType, CollationFunction as TypeCollationFunction } from './types/logical-type.js';
|
|
26
|
+
export { PhysicalType } from './types/logical-type.js';
|
|
27
|
+
export { NULL_TYPE, INTEGER_TYPE, REAL_TYPE, TEXT_TYPE, BLOB_TYPE, BOOLEAN_TYPE, NUMERIC_TYPE, ANY_TYPE } from './types/builtin-types.js';
|
|
28
|
+
export { DATE_TYPE, TIME_TYPE, DATETIME_TYPE } from './types/temporal-types.js';
|
|
29
|
+
export { JSON_TYPE } from './types/json-type.js';
|
|
30
|
+
export { typeRegistry, registerType, getType, getTypeOrDefault, inferType } from './types/registry.js';
|
|
31
|
+
export { validateValue, parseValue, validateAndParse, isValidForType, tryParse } from './types/validation.js';
|
|
25
32
|
export { Parser } from './parser/parser.js';
|
|
26
33
|
export { Lexer, TokenType, KEYWORDS } from './parser/lexer.js';
|
|
27
34
|
export { ParseError } from './parser/parser.js';
|
|
@@ -35,7 +42,7 @@ export type { ScalarFunc, TableValuedFunc, AggregateReducer, AggregateFinalizer
|
|
|
35
42
|
export { Latches } from './util/latches.js';
|
|
36
43
|
import './runtime/register.js';
|
|
37
44
|
export { dynamicLoadModule, validatePluginUrl, loadPlugin } from './util/plugin-loader.js';
|
|
38
|
-
export type { PluginManifest, PluginRecord, PluginSetting, VTablePluginInfo, FunctionPluginInfo, CollationPluginInfo, PluginRegistrations } from './vtab/manifest.js';
|
|
45
|
+
export type { PluginManifest, PluginRecord, PluginSetting, VTablePluginInfo, FunctionPluginInfo, CollationPluginInfo, TypePluginInfo, PluginRegistrations } from './vtab/manifest.js';
|
|
39
46
|
export { interpolateEnvVars, interpolateConfigEnvVars, loadPluginsFromConfig, validateConfig } from './config/loader.js';
|
|
40
47
|
export type { QuoombConfig, PluginConfig } from './config/loader.js';
|
|
41
48
|
export type { VirtualTableModule } from './vtab/module.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
|
@@ -17,6 +17,12 @@ export { MemoryTableModule } from './vtab/memory/module.js';
|
|
|
17
17
|
export { IndexScanFlags } from './vtab/index-info.js';
|
|
18
18
|
export { AccessPlanBuilder, validateAccessPlan } from './vtab/best-access-plan.js';
|
|
19
19
|
export { BINARY_COLLATION, NOCASE_COLLATION, RTRIM_COLLATION, registerCollation, getCollation, resolveCollation } from './util/comparison.js';
|
|
20
|
+
export { PhysicalType } from './types/logical-type.js';
|
|
21
|
+
export { NULL_TYPE, INTEGER_TYPE, REAL_TYPE, TEXT_TYPE, BLOB_TYPE, BOOLEAN_TYPE, NUMERIC_TYPE, ANY_TYPE } from './types/builtin-types.js';
|
|
22
|
+
export { DATE_TYPE, TIME_TYPE, DATETIME_TYPE } from './types/temporal-types.js';
|
|
23
|
+
export { JSON_TYPE } from './types/json-type.js';
|
|
24
|
+
export { typeRegistry, registerType, getType, getTypeOrDefault, inferType } from './types/registry.js';
|
|
25
|
+
export { validateValue, parseValue, validateAndParse, isValidForType, tryParse } from './types/validation.js';
|
|
20
26
|
// SQL Parser and Compiler
|
|
21
27
|
export { Parser } from './parser/parser.js';
|
|
22
28
|
export { Lexer, TokenType, KEYWORDS } from './parser/lexer.js';
|
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;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,kCAAkC;AAClC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACzG,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGhI,oBAAoB;AACpB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAatD,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAInF,OAAO,EACN,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,gBAAgB,EAChB,MAAM,sBAAsB,CAAC;
|
|
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;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,kCAAkC;AAClC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACzG,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGhI,oBAAoB;AACpB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAatD,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAInF,OAAO,EACN,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,gBAAgB,EAChB,MAAM,sBAAsB,CAAC;AAI9B,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EACN,SAAS,EACT,YAAY,EACZ,SAAS,EACT,SAAS,EACT,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACN,SAAS,EACT,SAAS,EACT,aAAa,EACb,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EACN,YAAY,EACZ,YAAY,EACZ,OAAO,EACP,gBAAgB,EAChB,SAAS,EACT,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACN,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,QAAQ,EACR,MAAM,uBAAuB,CAAC;AAE/B,0BAA0B;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,oBAAoB;AACpB,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAKpD,oBAAoB;AACpB,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE3E,kCAAkC;AAClC,OAAO,EACN,oBAAoB,EACpB,yBAAyB,EACzB,uBAAuB,EACvB,MAAM,wBAAwB,CAAC;AAShC,oBAAoB;AACpB,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,iEAAiE;AACjE,OAAO,uBAAuB,CAAC;AAE/B,0BAA0B;AAC1B,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAY3F,0BAA0B;AAC1B,OAAO,EACN,kBAAkB,EAClB,wBAAwB,EACxB,qBAAqB,EACrB,cAAc,EACd,MAAM,oBAAoB,CAAC;AAM5B,kCAAkC;AAClC,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,iBAAiB,EAAE,4BAA4B,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"binary.d.ts","sourceRoot":"","sources":["../../../../src/runtime/emit/binary.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAkC,MAAM,aAAa,CAAC;AAC/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAKlE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,wBAAgB,YAAY,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,eAAe,GAAG,WAAW,
|
|
1
|
+
{"version":3,"file":"binary.d.ts","sourceRoot":"","sources":["../../../../src/runtime/emit/binary.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAkC,MAAM,aAAa,CAAC;AAC/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAKlE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,wBAAgB,YAAY,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,eAAe,GAAG,WAAW,CAgClF;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,eAAe,GAAG,WAAW,CAgEnF;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,eAAe,GAAG,WAAW,CAiGtF;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,eAAe,GAAG,WAAW,CAmBlF;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,eAAe,GAAG,WAAW,CAuDnF;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,eAAe,GAAG,WAAW,CAuBhF"}
|
|
@@ -5,7 +5,9 @@ import { compareSqlValuesFast, resolveCollation } from "../../util/comparison.js
|
|
|
5
5
|
import { coerceForComparison, coerceToNumberForArithmetic } from "../../util/coercion.js";
|
|
6
6
|
import { simpleLike } from "../../util/patterns.js";
|
|
7
7
|
export function emitBinaryOp(plan, ctx) {
|
|
8
|
-
|
|
8
|
+
// Normalize operator to uppercase for case-insensitive matching of keywords
|
|
9
|
+
const operator = plan.expression.operator.toUpperCase();
|
|
10
|
+
switch (operator) {
|
|
9
11
|
case '+':
|
|
10
12
|
case '-':
|
|
11
13
|
case '*':
|
|
@@ -208,9 +210,11 @@ export function emitConcatOp(plan, ctx) {
|
|
|
208
210
|
};
|
|
209
211
|
}
|
|
210
212
|
export function emitLogicalOp(plan, ctx) {
|
|
213
|
+
// Normalize operator to uppercase for case-insensitive matching
|
|
214
|
+
const operator = plan.expression.operator.toUpperCase();
|
|
211
215
|
function run(ctx, v1, v2) {
|
|
212
216
|
// SQL three-valued logic
|
|
213
|
-
switch (
|
|
217
|
+
switch (operator) {
|
|
214
218
|
case 'AND': {
|
|
215
219
|
// NULL AND x -> NULL if x is true or NULL, otherwise 0
|
|
216
220
|
// 0 AND x -> 0
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"binary.js","sourceRoot":"","sources":["../../../../src/runtime/emit/binary.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAItD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAClF,OAAO,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGpD,MAAM,UAAU,YAAY,CAAC,IAAkB,EAAE,GAAoB;IACpE,QAAQ,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"binary.js","sourceRoot":"","sources":["../../../../src/runtime/emit/binary.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constraint-check.d.ts","sourceRoot":"","sources":["../../../../src/runtime/emit/constraint-check.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACxF,OAAO,KAAK,EAAE,WAAW,EAAkC,MAAM,aAAa,CAAC;AAE/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"constraint-check.d.ts","sourceRoot":"","sources":["../../../../src/runtime/emit/constraint-check.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACxF,OAAO,KAAK,EAAE,WAAW,EAAkC,MAAM,aAAa,CAAC;AAE/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAsB9D,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,mBAAmB,EAAE,GAAG,EAAE,eAAe,GAAG,WAAW,CAoHhG"}
|
|
@@ -3,6 +3,7 @@ import { QuereusError } from '../../common/errors.js';
|
|
|
3
3
|
import { StatusCode } from '../../common/types.js';
|
|
4
4
|
import { RowOpFlag } from '../../schema/table.js';
|
|
5
5
|
import { withAsyncRowContext, createRowSlot } from '../context-helpers.js';
|
|
6
|
+
import { expressionToString } from '../../util/ast-stringify.js';
|
|
6
7
|
export function emitConstraintCheck(plan, ctx) {
|
|
7
8
|
// Get the table schema to access constraints
|
|
8
9
|
const tableSchema = plan.table.tableSchema;
|
|
@@ -27,11 +28,13 @@ export function emitConstraintCheck(plan, ctx) {
|
|
|
27
28
|
const constraintMetadata = plan.constraintChecks.map((check, idx) => {
|
|
28
29
|
const evaluatorInstruction = checkEvaluators[idx];
|
|
29
30
|
const constraintName = check.constraint.name ?? generateDefaultConstraintName(tableSchema, check.constraint);
|
|
31
|
+
const constraintExpr = expressionToString(check.constraint.expr);
|
|
30
32
|
return {
|
|
31
33
|
schema: check.constraint,
|
|
32
34
|
flatRowDescriptor: plan.flatRowDescriptor,
|
|
33
35
|
evaluator: evaluatorInstruction.run,
|
|
34
36
|
constraintName,
|
|
37
|
+
constraintExpr,
|
|
35
38
|
shouldDefer: Boolean(check.deferrable || check.initiallyDeferred || check.containsSubquery),
|
|
36
39
|
baseTable: `${tableSchema.schemaName}.${tableSchema.name}`,
|
|
37
40
|
contextRow: undefined,
|
|
@@ -172,7 +175,11 @@ async function checkCheckConstraints(rctx, plan, tableSchema, row, constraintMet
|
|
|
172
175
|
// CHECK constraint passes if result is truthy or NULL
|
|
173
176
|
// It fails only if result is false or 0 (SQLite-style numeric boolean)
|
|
174
177
|
if (result === false || result === 0) {
|
|
175
|
-
|
|
178
|
+
// Include constraint expression in error message for better debugging
|
|
179
|
+
const exprHint = metadata.constraintExpr.length <= 60
|
|
180
|
+
? ` (${metadata.constraintExpr})`
|
|
181
|
+
: '';
|
|
182
|
+
throw new QuereusError(`CHECK constraint failed: ${metadata.constraintName}${exprHint}`, StatusCode.CONSTRAINT);
|
|
176
183
|
}
|
|
177
184
|
}
|
|
178
185
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constraint-check.js","sourceRoot":"","sources":["../../../../src/runtime/emit/constraint-check.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAmC,MAAM,uBAAuB,CAAC;AAGpF,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"constraint-check.js","sourceRoot":"","sources":["../../../../src/runtime/emit/constraint-check.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"insert.d.ts","sourceRoot":"","sources":["../../../../src/runtime/emit/insert.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,KAAK,EAAE,WAAW,EAAkC,MAAM,aAAa,CAAC;AAG/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"insert.d.ts","sourceRoot":"","sources":["../../../../src/runtime/emit/insert.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,KAAK,EAAE,WAAW,EAAkC,MAAM,aAAa,CAAC;AAG/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,eAAe,GAAG,WAAW,CAmC9E"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { emitPlanNode } from '../emitters.js';
|
|
2
|
-
import { SqlDataType } from '../../common/types.js';
|
|
3
|
-
import { applyIntegerAffinity, applyRealAffinity, applyNumericAffinity, applyTextAffinity, applyBlobAffinity } from '../../util/affinity.js';
|
|
4
2
|
export function emitInsert(plan, ctx) {
|
|
5
3
|
// INSERT node now only handles data transformations and passes flat rows through.
|
|
6
4
|
// The actual database insert operations are handled by DmlExecutorNode.
|
|
5
|
+
// Type conversion is handled by the table manager's validateAndParse in performInsert.
|
|
7
6
|
async function* run(_ctx, sourceValue) {
|
|
8
7
|
const tableSchema = plan.table.tableSchema;
|
|
9
8
|
const colCount = tableSchema.columns.length;
|
|
@@ -15,29 +14,10 @@ export function emitInsert(plan, ctx) {
|
|
|
15
14
|
for (let i = 0; i < colCount; i++) {
|
|
16
15
|
flatRow[i] = null;
|
|
17
16
|
}
|
|
18
|
-
// Fill NEW section with source values
|
|
17
|
+
// Fill NEW section with source values (indices n..2n-1)
|
|
18
|
+
// No affinity conversion here - let the type system handle it
|
|
19
19
|
for (let colIdx = 0; colIdx < colCount; colIdx++) {
|
|
20
|
-
|
|
21
|
-
let converted;
|
|
22
|
-
switch (tableSchema.columns[colIdx].affinity) {
|
|
23
|
-
case SqlDataType.INTEGER:
|
|
24
|
-
converted = applyIntegerAffinity(sourceValue);
|
|
25
|
-
break;
|
|
26
|
-
case SqlDataType.REAL:
|
|
27
|
-
converted = applyRealAffinity(sourceValue);
|
|
28
|
-
break;
|
|
29
|
-
case SqlDataType.NUMERIC:
|
|
30
|
-
converted = applyNumericAffinity(sourceValue);
|
|
31
|
-
break;
|
|
32
|
-
case SqlDataType.TEXT:
|
|
33
|
-
converted = applyTextAffinity(sourceValue);
|
|
34
|
-
break;
|
|
35
|
-
case SqlDataType.BLOB:
|
|
36
|
-
converted = applyBlobAffinity(sourceValue);
|
|
37
|
-
break;
|
|
38
|
-
default: converted = sourceValue;
|
|
39
|
-
}
|
|
40
|
-
flatRow[colCount + colIdx] = converted;
|
|
20
|
+
flatRow[colCount + colIdx] = sourceRow[colIdx];
|
|
41
21
|
}
|
|
42
22
|
yield flatRow;
|
|
43
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"insert.js","sourceRoot":"","sources":["../../../../src/runtime/emit/insert.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"insert.js","sourceRoot":"","sources":["../../../../src/runtime/emit/insert.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAI9C,MAAM,UAAU,UAAU,CAAC,IAAgB,EAAE,GAAoB;IAChE,kFAAkF;IAClF,wEAAwE;IACxE,uFAAuF;IACvF,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,IAAoB,EAAE,WAA+B;QACxE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QAC3C,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;QAE5C,IAAI,KAAK,EAAE,MAAM,SAAS,IAAI,WAAW,EAAE,CAAC;YAC3C,4CAA4C;YAC5C,kEAAkE;YAClE,MAAM,OAAO,GAAQ,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;YAE7C,+CAA+C;YAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;gBACnC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YACnB,CAAC;YAED,wDAAwD;YACxD,8DAA8D;YAC9D,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC;gBAClD,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;YAChD,CAAC;YAED,MAAM,OAAO,CAAC;QACf,CAAC;IACF,CAAC;IAED,MAAM,iBAAiB,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAEzD,OAAO;QACN,MAAM,EAAE,CAAC,iBAAiB,CAAC;QAC3B,GAAG,EAAE,GAAqB;QAC1B,IAAI,EAAE,cAAc,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,GAAG;KAClD,CAAC;AACH,CAAC"}
|