mindoodb 0.0.63 → 0.0.64
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 +14 -1
- package/dist/browser/index.mjs +4 -0
- package/dist/core/expressions/builder.d.ts +25 -0
- package/dist/core/expressions/builder.d.ts.map +1 -1
- package/dist/core/expressions/builder.js +33 -13
- package/dist/core/expressions/builder.js.map +1 -1
- package/dist/core/expressions/evaluateExpression.d.ts +55 -2
- package/dist/core/expressions/evaluateExpression.d.ts.map +1 -1
- package/dist/core/expressions/evaluateExpression.js +95 -3
- package/dist/core/expressions/evaluateExpression.js.map +1 -1
- package/dist/core/expressions/formulaSource.d.ts.map +1 -1
- package/dist/core/expressions/formulaSource.js +21 -2
- package/dist/core/expressions/formulaSource.js.map +1 -1
- package/dist/core/expressions/index.d.ts +1 -1
- package/dist/core/expressions/index.d.ts.map +1 -1
- package/dist/core/expressions/index.js +3 -1
- package/dist/core/expressions/index.js.map +1 -1
- package/dist/core/expressions/metadata.d.ts +1 -1
- package/dist/core/expressions/metadata.d.ts.map +1 -1
- package/dist/core/expressions/metadata.js +5 -0
- package/dist/core/expressions/metadata.js.map +1 -1
- package/dist/core/expressions/types.d.ts +17 -2
- package/dist/core/expressions/types.d.ts.map +1 -1
- package/dist/core/index.d.ts +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +4 -2
- package/dist/core/index.js.map +1 -1
- package/dist/core/indexing/createViewDataProvider.d.ts.map +1 -1
- package/dist/core/indexing/createViewDataProvider.js +1 -0
- package/dist/core/indexing/createViewDataProvider.js.map +1 -1
- package/dist/core/indexing/summary/SummaryVirtualViewDataProvider.d.ts.map +1 -1
- package/dist/core/indexing/summary/SummaryVirtualViewDataProvider.js +1 -0
- package/dist/core/indexing/summary/SummaryVirtualViewDataProvider.js.map +1 -1
- package/dist/core/indexing/virtualviews/MindooDBVirtualViewDataProvider.d.ts.map +1 -1
- package/dist/core/indexing/virtualviews/MindooDBVirtualViewDataProvider.js +1 -0
- package/dist/core/indexing/virtualviews/MindooDBVirtualViewDataProvider.js.map +1 -1
- package/dist/core/query/executeQuery.d.ts +1 -1
- package/dist/core/query/executeQuery.d.ts.map +1 -1
- package/dist/core/query/executeQuery.js +106 -71
- package/dist/core/query/executeQuery.js.map +1 -1
- package/dist/core/query/executeQueryInclude.d.ts +99 -0
- package/dist/core/query/executeQueryInclude.d.ts.map +1 -0
- package/dist/core/query/executeQueryInclude.js +447 -0
- package/dist/core/query/executeQueryInclude.js.map +1 -0
- package/dist/core/query/index.d.ts +2 -1
- package/dist/core/query/index.d.ts.map +1 -1
- package/dist/core/query/index.js +5 -1
- package/dist/core/query/index.js.map +1 -1
- package/dist/core/query/queryInternals.d.ts +45 -0
- package/dist/core/query/queryInternals.d.ts.map +1 -0
- package/dist/core/query/queryInternals.js +87 -0
- package/dist/core/query/queryInternals.js.map +1 -0
- package/dist/core/query/queryLive.d.ts.map +1 -1
- package/dist/core/query/queryLive.js +67 -8
- package/dist/core/query/queryLive.js.map +1 -1
- package/dist/core/query/queryView.d.ts.map +1 -1
- package/dist/core/query/queryView.js +19 -0
- package/dist/core/query/queryView.js.map +1 -1
- package/dist/core/query/types.d.ts +122 -7
- package/dist/core/query/types.d.ts.map +1 -1
- package/dist/core/query/types.js +13 -1
- package/dist/core/query/types.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MindooDBVirtualViewDataProvider.js","sourceRoot":"","sources":["../../../../src/core/indexing/virtualviews/MindooDBVirtualViewDataProvider.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"MindooDBVirtualViewDataProvider.js","sourceRoot":"","sources":["../../../../src/core/indexing/virtualviews/MindooDBVirtualViewDataProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,5 +14,5 @@ import { type MindooQuery, type MindooQueryOptions, type MindooQueryResult } fro
|
|
|
14
14
|
* score for `{ special: "textScore" }` sorting — the default ordering
|
|
15
15
|
* when a `text` clause is present without an explicit `sortBy`.
|
|
16
16
|
*/
|
|
17
|
-
export declare function executeQuery(db: MindooDB, summary: DocumentSummaryStore,
|
|
17
|
+
export declare function executeQuery(db: MindooDB, summary: DocumentSummaryStore, input: MindooQuery, options?: MindooQueryOptions): Promise<MindooQueryResult>;
|
|
18
18
|
//# sourceMappingURL=executeQuery.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executeQuery.d.ts","sourceRoot":"","sources":["../../../src/core/query/executeQuery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAa,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"executeQuery.d.ts","sourceRoot":"","sources":["../../../src/core/query/executeQuery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAa,MAAM,UAAU,CAAC;AAcpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAGrF,OAAO,EAEL,KAAK,WAAW,EAIhB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EAGvB,MAAM,SAAS,CAAC;AAiMjB;;;;;;;;;;;;GAYG;AACH,wBAAsB,YAAY,CAChC,EAAE,EAAE,QAAQ,EACZ,OAAO,EAAE,oBAAoB,EAC7B,KAAK,EAAE,WAAW,EAClB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,iBAAiB,CAAC,CAuH5B"}
|
|
@@ -4,8 +4,9 @@ exports.executeQuery = executeQuery;
|
|
|
4
4
|
const expressions_1 = require("../expressions");
|
|
5
5
|
const encryptedFields_1 = require("../crypto/encryptedFields");
|
|
6
6
|
const extractSummaryFields_1 = require("../indexing/summary/extractSummaryFields");
|
|
7
|
-
const types_1 = require("
|
|
8
|
-
const
|
|
7
|
+
const types_1 = require("./types");
|
|
8
|
+
const queryInternals_1 = require("./queryInternals");
|
|
9
|
+
const executeQueryInclude_1 = require("./executeQueryInclude");
|
|
9
10
|
/**
|
|
10
11
|
* Resolve and prepare the full-text index for a query with a `text`
|
|
11
12
|
* clause: brings the index up to date, verifies indexing is enabled, and
|
|
@@ -20,12 +21,12 @@ async function resolveTextClauseScores(db, query, options) {
|
|
|
20
21
|
return null;
|
|
21
22
|
}
|
|
22
23
|
if (!db.getFullTextIndex) {
|
|
23
|
-
throw new
|
|
24
|
+
throw new types_1.MindooQueryError(`This MindooDB instance does not support full-text search.`, "fulltext-not-enabled");
|
|
24
25
|
}
|
|
25
26
|
const index = db.getFullTextIndex();
|
|
26
27
|
await index.update(options);
|
|
27
28
|
if (!index.isEnabled()) {
|
|
28
|
-
throw new
|
|
29
|
+
throw new types_1.MindooQueryError(`Query has a text clause, but full-text indexing is not enabled for this database ` +
|
|
29
30
|
`(enable it via setFulltextSetup({ enabled: true }), see docs/fulltext-search.md).`, "fulltext-not-enabled");
|
|
30
31
|
}
|
|
31
32
|
const { hits } = index.searchSync(text.query, {
|
|
@@ -41,17 +42,45 @@ async function resolveTextClauseScores(db, query, options) {
|
|
|
41
42
|
return { scores, index };
|
|
42
43
|
}
|
|
43
44
|
/**
|
|
44
|
-
*
|
|
45
|
-
*
|
|
45
|
+
* Turn a caller's query into one the evaluator can run: formula source text
|
|
46
|
+
* becomes an expression, and anything that is neither is rejected here.
|
|
47
|
+
*
|
|
48
|
+
* Both matter for the same reason. The evaluator returns `undefined` for a
|
|
49
|
+
* node it does not recognize, and `undefined` as a filter means "no match" —
|
|
50
|
+
* so a filter handed over as source text, or built by hand with a typo,
|
|
51
|
+
* used to come back as an empty result set with `coverage: "full"`, which
|
|
52
|
+
* reads exactly like a correct query over data that isn't there.
|
|
46
53
|
*/
|
|
47
|
-
function
|
|
48
|
-
|
|
49
|
-
|
|
54
|
+
function parseQuery(query) {
|
|
55
|
+
return {
|
|
56
|
+
...query,
|
|
57
|
+
filter: parseFilter(query.filter, "Query filter"),
|
|
58
|
+
include: query.include ? parseIncludes(query.include, "") : undefined,
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
function parseFilter(filter, label) {
|
|
62
|
+
if (typeof filter !== "string") {
|
|
63
|
+
return filter;
|
|
50
64
|
}
|
|
51
|
-
|
|
52
|
-
return
|
|
65
|
+
try {
|
|
66
|
+
return (0, expressions_1.parseMindooDBFormulaBooleanExpression)(filter);
|
|
67
|
+
}
|
|
68
|
+
catch (error) {
|
|
69
|
+
throw new types_1.MindooQueryError(`${label} is not valid formula source: ${error instanceof Error ? error.message : String(error)}`);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
/** Formula-source filters are supported at every include level, not just the root. */
|
|
73
|
+
function parseIncludes(includes, slotPath) {
|
|
74
|
+
const parsed = {};
|
|
75
|
+
for (const [slot, include] of Object.entries(includes)) {
|
|
76
|
+
const label = slotPath ? `${slotPath}.${slot}` : slot;
|
|
77
|
+
parsed[slot] = {
|
|
78
|
+
...include,
|
|
79
|
+
filter: parseFilter(include.filter, `Filter of include "${label}"`),
|
|
80
|
+
include: include.include ? parseIncludes(include.include, label) : undefined,
|
|
81
|
+
};
|
|
53
82
|
}
|
|
54
|
-
return
|
|
83
|
+
return parsed;
|
|
55
84
|
}
|
|
56
85
|
/** All expressions a query references (filter + expression sort keys). */
|
|
57
86
|
function collectQueryExpressions(query) {
|
|
@@ -72,44 +101,34 @@ function collectQueryExpressions(query) {
|
|
|
72
101
|
*/
|
|
73
102
|
function validateQueryExpressions(expressions, allowFullScan) {
|
|
74
103
|
for (const expression of expressions) {
|
|
104
|
+
const unknown = (0, expressions_1.findUnknownExpressionNode)(expression);
|
|
105
|
+
if (unknown !== null) {
|
|
106
|
+
throw new types_1.MindooQueryError(`Query expression contains ${unknown}, which the expression language does not define. ` +
|
|
107
|
+
`Build expressions with createViewLanguage() (or pass the filter as formula source text).`);
|
|
108
|
+
}
|
|
75
109
|
const requirements = (0, expressions_1.analyzeExpressionRequirements)(expression);
|
|
76
110
|
if (requirements.needsViewContext) {
|
|
77
|
-
throw new
|
|
111
|
+
throw new types_1.MindooQueryError(`Query expressions cannot use view-tree operations (${requirements.viewContextOperations.join(", ")}); ` +
|
|
78
112
|
`these only evaluate inside a materialized view (use db.queryView() with categories instead).`);
|
|
79
113
|
}
|
|
80
114
|
if (requirements.needsDecryption && !allowFullScan) {
|
|
81
|
-
throw new
|
|
115
|
+
throw new types_1.MindooQueryError(`Query expressions reference encrypted fields (decrypt), which the summary buffer does not store. ` +
|
|
82
116
|
`Re-run with allowFullScan: true to evaluate them against materialized documents (expensive).`);
|
|
83
117
|
}
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
return sortKey.direction === "descending";
|
|
88
|
-
}
|
|
89
|
-
function computeSortValues(sortKeys, context, textScore) {
|
|
90
|
-
return sortKeys.map((sortKey) => {
|
|
91
|
-
if (sortKey.special === "textScore") {
|
|
92
|
-
return textScore ?? 0;
|
|
93
|
-
}
|
|
94
|
-
if (sortKey.expression) {
|
|
95
|
-
return (0, expressions_1.evaluateExpression)(sortKey.expression, context);
|
|
118
|
+
if (requirements.needsParentContext) {
|
|
119
|
+
throw new types_1.MindooQueryError(`Query expressions cannot use v.parent(); there is no parent document at the top level of a query. ` +
|
|
120
|
+
`It only resolves inside the filter of an include lookup.`);
|
|
96
121
|
}
|
|
97
|
-
|
|
98
|
-
// carries the mirrored managed fields (`_lastModified`, `_attachments`).
|
|
99
|
-
return (0, extractSummaryFields_1.getSummaryFieldValue)(context.doc, sortKey.field ?? "");
|
|
100
|
-
});
|
|
122
|
+
}
|
|
101
123
|
}
|
|
124
|
+
/**
|
|
125
|
+
* Sorts, pages, and turns candidates into result rows. The paged
|
|
126
|
+
* candidates are returned alongside so include hydration can reach their
|
|
127
|
+
* unprojected values without scanning again.
|
|
128
|
+
*/
|
|
102
129
|
function sortAndPage(candidates, query, sortKeys) {
|
|
103
130
|
if (sortKeys.length > 0) {
|
|
104
|
-
candidates.sort((left, right) =>
|
|
105
|
-
for (let i = 0; i < sortKeys.length; i++) {
|
|
106
|
-
const result = (0, types_1.compareValues)(left.sortValues[i], right.sortValues[i], sortDirectionDescending(sortKeys[i]));
|
|
107
|
-
if (result !== 0) {
|
|
108
|
-
return result;
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
return left.docId.localeCompare(right.docId);
|
|
112
|
-
});
|
|
131
|
+
candidates.sort((left, right) => (0, queryInternals_1.compareCandidates)(left, right, sortKeys));
|
|
113
132
|
}
|
|
114
133
|
const total = candidates.length;
|
|
115
134
|
const offset = Math.max(0, query.offset ?? 0);
|
|
@@ -122,24 +141,9 @@ function sortAndPage(candidates, query, sortKeys) {
|
|
|
122
141
|
? { docId, fields, lastModified }
|
|
123
142
|
: { docId, fields, lastModified, textScore }),
|
|
124
143
|
total,
|
|
144
|
+
paged,
|
|
125
145
|
};
|
|
126
146
|
}
|
|
127
|
-
function projectFields(fields, projection) {
|
|
128
|
-
if (!projection) {
|
|
129
|
-
return fields;
|
|
130
|
-
}
|
|
131
|
-
const projected = {};
|
|
132
|
-
for (const path of projection) {
|
|
133
|
-
const value = (0, extractSummaryFields_1.getSummaryFieldValue)(fields, path);
|
|
134
|
-
if (value !== undefined) {
|
|
135
|
-
projected[path] = value;
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
return projected;
|
|
139
|
-
}
|
|
140
|
-
function queryOrigin(db) {
|
|
141
|
-
return `${db.getTenant().getId()}/${db.getStore().getId()}`;
|
|
142
|
-
}
|
|
143
147
|
/**
|
|
144
148
|
* Execute an ad-hoc query against the document summary buffer.
|
|
145
149
|
*
|
|
@@ -153,13 +157,21 @@ function queryOrigin(db) {
|
|
|
153
157
|
* score for `{ special: "textScore" }` sorting — the default ordering
|
|
154
158
|
* when a `text` clause is present without an explicit `sortBy`.
|
|
155
159
|
*/
|
|
156
|
-
async function executeQuery(db, summary,
|
|
160
|
+
async function executeQuery(db, summary, input, options) {
|
|
161
|
+
const query = parseQuery(input);
|
|
157
162
|
const expressions = collectQueryExpressions(query);
|
|
158
163
|
if (options?.allowFullScan) {
|
|
164
|
+
if (query.include) {
|
|
165
|
+
throw new types_1.MindooQueryError(`Queries cannot combine allowFullScan with include lookups: includes are answered from the ` +
|
|
166
|
+
`summary buffer of every involved database, which is exactly what allowFullScan bypasses.`);
|
|
167
|
+
}
|
|
159
168
|
validateQueryExpressions(expressions, true);
|
|
160
169
|
return executeFullScanQuery(db, query, expressions, options);
|
|
161
170
|
}
|
|
162
171
|
validateQueryExpressions(expressions, false);
|
|
172
|
+
if (query.include) {
|
|
173
|
+
(0, executeQueryInclude_1.validateQueryIncludes)(query.include);
|
|
174
|
+
}
|
|
163
175
|
// Coverage check: every field referenced by filter/sort expressions and
|
|
164
176
|
// plain-field sort keys must be answerable from the summary.
|
|
165
177
|
const referencedPaths = new Set();
|
|
@@ -175,20 +187,20 @@ async function executeQuery(db, summary, query, options) {
|
|
|
175
187
|
}
|
|
176
188
|
for (const path of referencedPaths) {
|
|
177
189
|
if (!summary.isFieldCovered(path)) {
|
|
178
|
-
throw new
|
|
190
|
+
throw new types_1.MindooQueryError(`Field "${path}" is not covered by the summary configuration ` +
|
|
179
191
|
`(check include/exclude in SummaryConfig, or re-run with allowFullScan: true).`);
|
|
180
192
|
}
|
|
181
193
|
}
|
|
182
194
|
const textMatch = await resolveTextClauseScores(db, query, options);
|
|
183
195
|
if (options?.signal?.aborted) {
|
|
184
|
-
throw new
|
|
196
|
+
throw new types_1.MindooQueryError("Query aborted while updating the full-text index.");
|
|
185
197
|
}
|
|
186
198
|
await summary.update(options);
|
|
187
199
|
if (options?.signal?.aborted) {
|
|
188
|
-
throw new
|
|
200
|
+
throw new types_1.MindooQueryError("Query aborted while updating the summary buffer.");
|
|
189
201
|
}
|
|
190
|
-
const origin = queryOrigin(db);
|
|
191
|
-
const sortKeys = effectiveSortKeys(query);
|
|
202
|
+
const origin = (0, queryInternals_1.queryOrigin)(db);
|
|
203
|
+
const sortKeys = (0, queryInternals_1.effectiveSortKeys)(query);
|
|
192
204
|
const candidates = [];
|
|
193
205
|
for (const entry of summary.getAllEntries()) {
|
|
194
206
|
let textScore;
|
|
@@ -203,6 +215,7 @@ async function executeQuery(db, summary, query, options) {
|
|
|
203
215
|
doc: evaluationDoc,
|
|
204
216
|
values: {},
|
|
205
217
|
origin,
|
|
218
|
+
docId: entry.docId,
|
|
206
219
|
lastModifiedAt: new Date(entry.lastModified).toISOString(),
|
|
207
220
|
decryptionKeyId: entry.decryptionKeyId,
|
|
208
221
|
variables: {},
|
|
@@ -212,18 +225,38 @@ async function executeQuery(db, summary, query, options) {
|
|
|
212
225
|
}
|
|
213
226
|
candidates.push({
|
|
214
227
|
docId: entry.docId,
|
|
215
|
-
fields: projectFields(evaluationDoc, query.fields),
|
|
228
|
+
fields: (0, queryInternals_1.projectFields)(evaluationDoc, query.fields),
|
|
216
229
|
lastModified: entry.lastModified,
|
|
217
230
|
textScore,
|
|
218
|
-
sortValues: computeSortValues(sortKeys, context, textScore),
|
|
231
|
+
sortValues: (0, queryInternals_1.computeSortValues)(sortKeys, context, textScore),
|
|
232
|
+
evaluationDoc,
|
|
219
233
|
});
|
|
220
234
|
}
|
|
221
|
-
const { rows, total } = sortAndPage(candidates, query, sortKeys);
|
|
235
|
+
const { rows, total, paged } = sortAndPage(candidates, query, sortKeys);
|
|
222
236
|
// Coverage is the minimum of the summary and full-text coverage: while
|
|
223
237
|
// either side is still backfilling, results may be incomplete.
|
|
224
|
-
|
|
238
|
+
let coverage = textMatch && textMatch.index.getCoverage() === "rebuilding"
|
|
225
239
|
? "rebuilding"
|
|
226
240
|
: summary.getCoverage();
|
|
241
|
+
// Includes are hydrated AFTER paging: only the rows actually returned
|
|
242
|
+
// get related documents, so a `limit: 20` page costs 20 rows' worth of
|
|
243
|
+
// joins regardless of how many documents matched.
|
|
244
|
+
if (query.include) {
|
|
245
|
+
const parents = rows.map((row, index) => ({
|
|
246
|
+
row,
|
|
247
|
+
docId: row.docId,
|
|
248
|
+
doc: paged[index].evaluationDoc,
|
|
249
|
+
}));
|
|
250
|
+
const includeCoverage = await (0, executeQueryInclude_1.hydrateQueryIncludes)({
|
|
251
|
+
parentDb: db,
|
|
252
|
+
parentSummary: summary,
|
|
253
|
+
includes: query.include,
|
|
254
|
+
parents,
|
|
255
|
+
depth: 1,
|
|
256
|
+
options,
|
|
257
|
+
});
|
|
258
|
+
coverage = (0, queryInternals_1.mergeCoverage)(coverage, includeCoverage);
|
|
259
|
+
}
|
|
227
260
|
return { rows, total, coverage };
|
|
228
261
|
}
|
|
229
262
|
/** Resolve the plaintext for every `decrypt` node before evaluating a document. */
|
|
@@ -254,8 +287,8 @@ async function executeFullScanQuery(db, query, expressions, options) {
|
|
|
254
287
|
// full-scan path — scanning document bodies cannot compute relevance
|
|
255
288
|
// scores, and the index requirement stays consistent between paths.
|
|
256
289
|
const textMatch = await resolveTextClauseScores(db, query, options);
|
|
257
|
-
const origin = queryOrigin(db);
|
|
258
|
-
const sortKeys = effectiveSortKeys(query);
|
|
290
|
+
const origin = (0, queryInternals_1.queryOrigin)(db);
|
|
291
|
+
const sortKeys = (0, queryInternals_1.effectiveSortKeys)(query);
|
|
259
292
|
const decryptRequests = [];
|
|
260
293
|
for (const expression of expressions) {
|
|
261
294
|
decryptRequests.push(...(0, expressions_1.collectDecryptRequests)(expression));
|
|
@@ -268,10 +301,10 @@ async function executeFullScanQuery(db, query, expressions, options) {
|
|
|
268
301
|
for await (const { doc } of db.iterateChangesSince(null)) {
|
|
269
302
|
processed++;
|
|
270
303
|
if (signal?.aborted) {
|
|
271
|
-
throw new
|
|
304
|
+
throw new types_1.MindooQueryError("Query aborted during full scan.");
|
|
272
305
|
}
|
|
273
306
|
if (onProgress && onProgress({ processed, total, origin }) === false) {
|
|
274
|
-
throw new
|
|
307
|
+
throw new types_1.MindooQueryError("Query cancelled by progress callback during full scan.");
|
|
275
308
|
}
|
|
276
309
|
if (doc.isDeleted()) {
|
|
277
310
|
continue;
|
|
@@ -289,6 +322,7 @@ async function executeFullScanQuery(db, query, expressions, options) {
|
|
|
289
322
|
doc: data,
|
|
290
323
|
values: {},
|
|
291
324
|
origin,
|
|
325
|
+
docId: mindooDoc.getId(),
|
|
292
326
|
createdAt: new Date(mindooDoc.getCreatedAt()).toISOString(),
|
|
293
327
|
lastModifiedAt: new Date(mindooDoc.getLastModified()).toISOString(),
|
|
294
328
|
decryptionKeyId: mindooDoc.getDecryptionKeyId(),
|
|
@@ -303,10 +337,11 @@ async function executeFullScanQuery(db, query, expressions, options) {
|
|
|
303
337
|
}
|
|
304
338
|
candidates.push({
|
|
305
339
|
docId: mindooDoc.getId(),
|
|
306
|
-
fields: projectFields(data, query.fields),
|
|
340
|
+
fields: (0, queryInternals_1.projectFields)(data, query.fields),
|
|
307
341
|
lastModified: mindooDoc.getLastModified(),
|
|
308
342
|
textScore,
|
|
309
|
-
sortValues: computeSortValues(sortKeys, context, textScore),
|
|
343
|
+
sortValues: (0, queryInternals_1.computeSortValues)(sortKeys, context, textScore),
|
|
344
|
+
evaluationDoc: data,
|
|
310
345
|
});
|
|
311
346
|
}
|
|
312
347
|
const { rows, total: matchTotal } = sortAndPage(candidates, query, sortKeys);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executeQuery.js","sourceRoot":"","sources":["../../../src/core/query/executeQuery.ts"],"names":[],"mappings":";;AAuNA,oCA2FC;AAhTD,gDAQwB;AACxB,+DAAkE;AAElE,mFAA2G;AAE3G,0DAA+D;AAC/D,mCAOiB;AAMjB;;;;;;;GAOG;AACH,KAAK,UAAU,uBAAuB,CACpC,EAAY,EACZ,KAAkB,EAClB,OAA4B;IAE5B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;IACxB,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC;QACzB,MAAM,IAAI,wBAAgB,CACxB,2DAA2D,EAC3D,sBAAsB,CACvB,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,EAAE,CAAC,gBAAgB,EAAE,CAAC;IACpC,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC5B,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC;QACvB,MAAM,IAAI,wBAAgB,CACxB,mFAAmF;YACnF,mFAAmF,EACnF,sBAAsB,CACvB,CAAC;IACJ,CAAC;IACD,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE;QAC5C,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,WAAW,EAAE,IAAI,CAAC,WAAW;KAC9B,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AAC3B,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CAAC,KAAkB;IAC3C,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAC,MAAM,CAAC;IACtB,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QACf,OAAO,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,0EAA0E;AAC1E,SAAS,uBAAuB,CAAC,KAAkB;IACjD,MAAM,WAAW,GAA4B,EAAE,CAAC;IAChD,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjB,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IACD,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;QACzC,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACvB,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;GAGG;AACH,SAAS,wBAAwB,CAAC,WAAoC,EAAE,aAAsB;IAC5F,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,MAAM,YAAY,GAAG,IAAA,2CAA6B,EAAC,UAAU,CAAC,CAAC;QAC/D,IAAI,YAAY,CAAC,gBAAgB,EAAE,CAAC;YAClC,MAAM,IAAI,wBAAgB,CACxB,sDAAsD,YAAY,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;gBACxG,8FAA8F,CAC/F,CAAC;QACJ,CAAC;QACD,IAAI,YAAY,CAAC,eAAe,IAAI,CAAC,aAAa,EAAE,CAAC;YACnD,MAAM,IAAI,wBAAgB,CACxB,mGAAmG;gBACnG,8FAA8F,CAC/F,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAAC,OAA2B;IAC1D,OAAO,OAAO,CAAC,SAAS,KAAK,YAAY,CAAC;AAC5C,CAAC;AAED,SAAS,iBAAiB,CACxB,QAA8B,EAC9B,OAAoC,EACpC,SAAkB;IAElB,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QAC9B,IAAI,OAAO,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;YACpC,OAAO,SAAS,IAAI,CAAC,CAAC;QACxB,CAAC;QACD,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACvB,OAAO,IAAA,gCAAkB,EAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACzD,CAAC;QACD,uEAAuE;QACvE,yEAAyE;QACzE,OAAO,IAAA,2CAAoB,EAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,WAAW,CAClB,UAA0B,EAC1B,KAAkB,EAClB,QAA8B;IAE9B,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACzC,MAAM,MAAM,GAAG,IAAA,qBAAa,EAC1B,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAClB,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EACnB,uBAAuB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CACrC,CAAC;gBACF,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;oBACjB,OAAO,MAAM,CAAC;gBAChB,CAAC;YACH,CAAC;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC;IAChC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IAC1B,MAAM,KAAK,GAAG,KAAK,KAAK,SAAS;QAC/B,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC;QAC1B,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;IAE1D,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,EAAE,CAC7D,SAAS,KAAK,SAAS;YACrB,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE;YACjC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,CAC/C;QACD,KAAK;KACN,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,MAA+B,EAAE,UAAqB;IAC3E,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,MAAM,SAAS,GAA4B,EAAE,CAAC;IAC9C,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG,IAAA,2CAAoB,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACjD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,SAAS,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QAC1B,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,WAAW,CAAC,EAAY;IAC/B,OAAO,GAAG,EAAE,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC;AAC9D,CAAC;AAED;;;;;;;;;;;;GAYG;AACI,KAAK,UAAU,YAAY,CAChC,EAAY,EACZ,OAA6B,EAC7B,KAAkB,EAClB,OAA4B;IAE5B,MAAM,WAAW,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;IAEnD,IAAI,OAAO,EAAE,aAAa,EAAE,CAAC;QAC3B,wBAAwB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAC5C,OAAO,oBAAoB,CAAC,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;IAED,wBAAwB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IAE7C,wEAAwE;IACxE,6DAA6D;IAC7D,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;IAC1C,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,KAAK,MAAM,IAAI,IAAI,IAAA,iCAAmB,EAAC,UAAU,CAAC,EAAE,CAAC;YACnD,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IACD,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;QACzC,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YACzC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;QACnC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,wBAAgB,CACxB,UAAU,IAAI,gDAAgD;gBAC9D,+EAA+E,CAChF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,uBAAuB,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACpE,IAAI,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;QAC7B,MAAM,IAAI,wBAAgB,CAAC,mDAAmD,CAAC,CAAC;IAClF,CAAC;IAED,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9B,IAAI,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;QAC7B,MAAM,IAAI,wBAAgB,CAAC,kDAAkD,CAAC,CAAC;IACjF,CAAC;IAED,MAAM,MAAM,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;IAC/B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,UAAU,GAAmB,EAAE,CAAC;IAEtC,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;QAC5C,IAAI,SAA6B,CAAC;QAClC,IAAI,SAAS,EAAE,CAAC;YACd,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC9C,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,SAAS;YACX,CAAC;QACH,CAAC;QAED,MAAM,aAAa,GAAG,IAAA,gDAAyB,EAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;QAClF,MAAM,OAAO,GAAgC;YAC3C,GAAG,EAAE,aAAa;YAClB,MAAM,EAAE,EAAE;YACV,MAAM;YACN,cAAc,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE;YAC1D,eAAe,EAAE,KAAK,CAAC,eAAe;YACtC,SAAS,EAAE,EAAE;SACd,CAAC;QAEF,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,IAAA,iCAAmB,EAAC,IAAA,gCAAkB,EAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;YACpF,SAAS;QACX,CAAC;QAED,UAAU,CAAC,IAAI,CAAC;YACd,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,MAAM,EAAE,aAAa,CAAC,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC;YAClD,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,SAAS;YACT,UAAU,EAAE,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC;SAC5D,CAAC,CAAC;IACL,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IACjE,uEAAuE;IACvE,+DAA+D;IAC/D,MAAM,QAAQ,GACZ,SAAS,IAAI,SAAS,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,YAAY;QACzD,CAAC,CAAC,YAAY;QACd,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IAC5B,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;AACnC,CAAC;AAED,mFAAmF;AACnF,KAAK,UAAU,sBAAsB,CACnC,EAAY,EACZ,QAA0B,EAC1B,IAA6B,EAC7B,OAAoC;IAEpC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,SAAS,GAA4B,EAAE,CAAC;IAC9C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,OAAO,CAAC,KAAK,IAAI,SAAS,EAAE,CAAC;YAC/B,SAAS;QACX,CAAC;QACD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG;YAC7B,CAAC,CAAC,MAAM,CAAC,IAAA,gCAAkB,EAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,IAAI,IAAI;YAChE,CAAC,CAAC,IAAI,CAAC;QACT,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,MAAM,IAAA,uCAAqB,EACpD,EAAE,CAAC,SAAS,EAAE,EACd,IAAI,EACJ,OAAO,CAAC,KAAK,EACb,WAAW,CACZ,CAAC;IACJ,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,oBAAoB,CACjC,EAAY,EACZ,KAAkB,EAClB,WAAoC,EACpC,OAA4B;IAE5B,iEAAiE;IACjE,qEAAqE;IACrE,oEAAoE;IACpE,MAAM,SAAS,GAAG,MAAM,uBAAuB,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAEpE,MAAM,MAAM,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;IAC/B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,eAAe,GAAqB,EAAE,CAAC;IAC7C,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,eAAe,CAAC,IAAI,CAAC,GAAG,IAAA,oCAAsB,EAAC,UAAU,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,EAAE,UAAU,CAAC;IACvC,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,CAAC;IAC/B,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnE,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,MAAM,UAAU,GAAmB,EAAE,CAAC;IAEtC,IAAI,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;QACzD,SAAS,EAAE,CAAC;QACZ,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YACpB,MAAM,IAAI,wBAAgB,CAAC,iCAAiC,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,UAAU,IAAI,UAAU,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC;YACrE,MAAM,IAAI,wBAAgB,CAAC,wDAAwD,CAAC,CAAC;QACvF,CAAC;QACD,IAAI,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC;YACpB,SAAS;QACX,CAAC;QAED,MAAM,SAAS,GAAG,GAAgB,CAAC;QAEnC,IAAI,SAA6B,CAAC;QAClC,IAAI,SAAS,EAAE,CAAC;YACd,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;YACpD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,SAAS;YACX,CAAC;QACH,CAAC;QAED,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,EAA6B,CAAC;QAC5D,MAAM,WAAW,GAAgC;YAC/C,GAAG,EAAE,IAAI;YACT,MAAM,EAAE,EAAE;YACV,MAAM;YACN,SAAS,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,CAAC,WAAW,EAAE;YAC3D,cAAc,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC,CAAC,WAAW,EAAE;YACnE,eAAe,EAAE,SAAS,CAAC,kBAAkB,EAAE;YAC/C,SAAS,EAAE,SAAS,CAAC,WAAW,EAAE;YAClC,eAAe,EAAE,SAAS,CAAC,iBAAiB,EAAE;YAC9C,SAAS,EAAE,EAAE;SACd,CAAC;QACF,MAAM,SAAS,GAAG,MAAM,sBAAsB,CAAC,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;QACvF,MAAM,OAAO,GAAgC,EAAE,GAAG,WAAW,EAAE,SAAS,EAAE,CAAC;QAE3E,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,IAAA,iCAAmB,EAAC,IAAA,gCAAkB,EAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;YACpF,SAAS;QACX,CAAC;QAED,UAAU,CAAC,IAAI,CAAC;YACd,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE;YACxB,MAAM,EAAE,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC;YACzC,YAAY,EAAE,SAAS,CAAC,eAAe,EAAE;YACzC,SAAS;YACT,UAAU,EAAE,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC;SAC5D,CAAC,CAAC;IACL,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC7E,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;AAC5D,CAAC"}
|
|
1
|
+
{"version":3,"file":"executeQuery.js","sourceRoot":"","sources":["../../../src/core/query/executeQuery.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import type { MindooDB } from "../types";
|
|
2
|
+
import type { MindooDBAppBooleanExpression } from "../expressions/types";
|
|
3
|
+
import type { DocumentSummaryStore } from "../indexing/summary/DocumentSummaryStore";
|
|
4
|
+
import { type MindooQueryCoverage, type MindooQueryOptions, type MindooQueryRow, type ParsedMindooQueryInclude } from "./types";
|
|
5
|
+
/**
|
|
6
|
+
* Nested lookups (`MindooQuery.include`): joining related documents onto
|
|
7
|
+
* the rows a query returns.
|
|
8
|
+
*
|
|
9
|
+
* The one rule that shapes this whole module: a slot costs ONE additional
|
|
10
|
+
* summary scan, never one query per parent row. Everything else — the
|
|
11
|
+
* join-key requirement on include filters, hydrating only the paged rows,
|
|
12
|
+
* grouping children by key before attaching — follows from it.
|
|
13
|
+
*/
|
|
14
|
+
/** One parent row an include slot is hydrated for. */
|
|
15
|
+
export interface IncludeParentBinding {
|
|
16
|
+
/** The row the related documents are attached to (`row.includes[slot]`). */
|
|
17
|
+
row: MindooQueryRow;
|
|
18
|
+
/** The parent's document id. */
|
|
19
|
+
docId: string;
|
|
20
|
+
/**
|
|
21
|
+
* The parent's UNPROJECTED evaluation doc. Join keys are read from here,
|
|
22
|
+
* not from `row.fields`: a query projecting `fields: ["total"]` must
|
|
23
|
+
* still be able to join on `customerId`.
|
|
24
|
+
*/
|
|
25
|
+
doc: Record<string, unknown>;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* One side of a join equality. A document's id is metadata rather than a
|
|
29
|
+
* summary field, so the two cases are read from different places and are
|
|
30
|
+
* kept apart here instead of being folded into a magic path string.
|
|
31
|
+
*/
|
|
32
|
+
export type JoinKeySide = {
|
|
33
|
+
kind: "docId";
|
|
34
|
+
} | {
|
|
35
|
+
kind: "field";
|
|
36
|
+
path: string;
|
|
37
|
+
};
|
|
38
|
+
/** The equality an include filter was reduced to, plus what was left over. */
|
|
39
|
+
export interface JoinKeyPlan {
|
|
40
|
+
/** What the join reads on the related document. */
|
|
41
|
+
child: JoinKeySide;
|
|
42
|
+
/** What the join reads on the parent row. */
|
|
43
|
+
parent: JoinKeySide;
|
|
44
|
+
/**
|
|
45
|
+
* The conjuncts that do not reference the parent. They are applied as
|
|
46
|
+
* an ordinary predicate while scanning the children, so they cost
|
|
47
|
+
* nothing extra.
|
|
48
|
+
*/
|
|
49
|
+
residualFilter: MindooDBAppBooleanExpression | null;
|
|
50
|
+
}
|
|
51
|
+
export type JoinKeyExtraction = {
|
|
52
|
+
ok: true;
|
|
53
|
+
plan: JoinKeyPlan;
|
|
54
|
+
} | {
|
|
55
|
+
ok: false;
|
|
56
|
+
reason: string;
|
|
57
|
+
};
|
|
58
|
+
/**
|
|
59
|
+
* Reduces an include filter to the one join equality the planner can
|
|
60
|
+
* execute, plus the parent-free rest.
|
|
61
|
+
*
|
|
62
|
+
* Accepted: exactly one equality between a child term (`field(X)` or
|
|
63
|
+
* `docId()`) and a parent term (`parent(Y)` or `parentDocId()`), in
|
|
64
|
+
* either operand order, optionally ANDed with conditions that do not
|
|
65
|
+
* mention the parent.
|
|
66
|
+
* Rejected: everything else that references the parent — a range
|
|
67
|
+
* comparison against a parent value, an `or` spanning parent terms, a
|
|
68
|
+
* second parent equality. Those would each require evaluating the filter
|
|
69
|
+
* once per (parent, child) pair, which turns a linear scan into a nested
|
|
70
|
+
* loop; a slot over 200 paged parents and 10k children would be ~2M
|
|
71
|
+
* evaluations. Rejecting them keeps the cost model of `query()` intact
|
|
72
|
+
* and the failure obvious instead of silently slow.
|
|
73
|
+
*/
|
|
74
|
+
export declare function extractJoinKey(filter: MindooDBAppBooleanExpression): JoinKeyExtraction;
|
|
75
|
+
/**
|
|
76
|
+
* Structural validation of the include tree, run before any scanning so a
|
|
77
|
+
* malformed query fails immediately rather than after the root scan.
|
|
78
|
+
*/
|
|
79
|
+
export declare function validateQueryIncludes(includes: Record<string, ParsedMindooQueryInclude>, depth?: number, slotPath?: string): void;
|
|
80
|
+
/**
|
|
81
|
+
* Hydrates one level of include slots onto already-paged parent rows.
|
|
82
|
+
*
|
|
83
|
+
* Per slot: bring the target summary up to date, scan it once, keep the
|
|
84
|
+
* children whose join value hits one of the parents' keys, group them,
|
|
85
|
+
* and attach. Nested slots recurse on the attached rows, which are by
|
|
86
|
+
* then themselves a set of paged parents.
|
|
87
|
+
*
|
|
88
|
+
* @returns the merged coverage of every summary this level touched.
|
|
89
|
+
*/
|
|
90
|
+
export declare function hydrateQueryIncludes(params: {
|
|
91
|
+
parentDb: MindooDB;
|
|
92
|
+
parentSummary: DocumentSummaryStore;
|
|
93
|
+
includes: Record<string, ParsedMindooQueryInclude>;
|
|
94
|
+
parents: IncludeParentBinding[];
|
|
95
|
+
depth: number;
|
|
96
|
+
options?: MindooQueryOptions;
|
|
97
|
+
slotPath?: string;
|
|
98
|
+
}): Promise<MindooQueryCoverage>;
|
|
99
|
+
//# sourceMappingURL=executeQueryInclude.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"executeQueryInclude.d.ts","sourceRoot":"","sources":["../../../src/core/query/executeQueryInclude.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAE,4BAA4B,EAAyB,MAAM,sBAAsB,CAAC;AAWhG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAErF,OAAO,EAIL,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EAEnB,KAAK,wBAAwB,EAC9B,MAAM,SAAS,CAAC;AAUjB;;;;;;;;GAQG;AAEH,sDAAsD;AACtD,MAAM,WAAW,oBAAoB;IACnC,4EAA4E;IAC5E,GAAG,EAAE,cAAc,CAAC;IACpB,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC9B;AAED;;;;GAIG;AACH,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpC,8EAA8E;AAC9E,MAAM,WAAW,WAAW;IAC1B,mDAAmD;IACnD,KAAK,EAAE,WAAW,CAAC;IACnB,6CAA6C;IAC7C,MAAM,EAAE,WAAW,CAAC;IACpB;;;;OAIG;IACH,cAAc,EAAE,4BAA4B,GAAG,IAAI,CAAC;CACrD;AAED,MAAM,MAAM,iBAAiB,GACzB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,WAAW,CAAA;CAAE,GAC/B;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAwBlC;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,4BAA4B,GAAG,iBAAiB,CAmDtF;AA2DD;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC,EAClD,KAAK,SAAI,EACT,QAAQ,SAAK,GACZ,IAAI,CAqEN;AAuID;;;;;;;;;GASG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE;IACjD,QAAQ,EAAE,QAAQ,CAAC;IACnB,aAAa,EAAE,oBAAoB,CAAC;IACpC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;IACnD,OAAO,EAAE,oBAAoB,EAAE,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAmG/B"}
|