@query-farm/vgi 0.17.0 → 0.18.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/catalog/descriptors.d.ts +13 -7
- package/dist/client-entry.js +2 -2
- package/dist/client-entry.js.map +4 -4
- package/dist/generated/vgi-client.d.ts +1 -1
- package/dist/index.js +16 -11
- package/dist/index.js.map +5 -5
- package/dist/serve-entry.js +2 -2
- package/dist/serve-entry.js.map +4 -4
- package/dist/worker-cf-entry.js +16 -11
- package/dist/worker-cf-entry.js.map +5 -5
- package/package.json +1 -1
- package/src/catalog/descriptors.ts +13 -7
- package/src/catalog/read-only.ts +22 -14
- package/src/generated/vgi-client.ts +2 -2
- package/src/generated/vgi-protocol-schemas.ts +2 -2
|
@@ -53,18 +53,24 @@ export interface TableDescriptor {
|
|
|
53
53
|
*/
|
|
54
54
|
statisticsCacheMaxAgeSeconds?: number | null;
|
|
55
55
|
/**
|
|
56
|
-
*
|
|
57
|
-
*
|
|
58
|
-
*
|
|
59
|
-
*
|
|
56
|
+
* Required WHERE-filter groups in conjunctive normal form — an AND (outer
|
|
57
|
+
* list) of OR-groups (inner lists) of dotted-path column references that MUST
|
|
58
|
+
* appear in a WHERE expression for any scan of this table. A group is
|
|
59
|
+
* satisfied when any one of its paths has a filter; every group must be
|
|
60
|
+
* satisfied. So `[["accession_number"], ["ticker", "cik"]]` means
|
|
61
|
+
* "accession_number AND one of (ticker, cik)"; a single-path group
|
|
62
|
+
* `[["country"]]` is a plain mandatory filter. Paths are top-level names
|
|
63
|
+
* (`"country"`) or struct subfields (`"bbox.xmin"`, `"nested.outer.inner"`).
|
|
64
|
+
* Empty/undefined (default) means no enforcement — the zero-cost fast path
|
|
65
|
+
* for every existing table.
|
|
60
66
|
*
|
|
61
67
|
* Satisfaction is prefix-based: a present filter on a shorter path satisfies
|
|
62
68
|
* any required path it is a prefix of. So a whole-struct filter on `bbox`
|
|
63
69
|
* satisfies all of `bbox.xmin` / `.xmax` / `.ymin` / `.ymax`. The VGI DuckDB
|
|
64
|
-
* extension's optimizer pass consults this
|
|
65
|
-
* `BinderException` listing any unsatisfied
|
|
70
|
+
* extension's optimizer pass consults this at bind time and throws a
|
|
71
|
+
* `BinderException` listing any unsatisfied groups.
|
|
66
72
|
*/
|
|
67
|
-
|
|
73
|
+
requiredFilters?: string[][];
|
|
68
74
|
supportsTimeTravel?: boolean;
|
|
69
75
|
/**
|
|
70
76
|
* Inline cardinality estimate/max surfaced through TableInfo. When set,
|
package/dist/client-entry.js
CHANGED
|
@@ -2301,7 +2301,7 @@ var TableInfoSchema = schema2([
|
|
|
2301
2301
|
field2("cardinality_max", int642(), false),
|
|
2302
2302
|
field2("column_statistics", binary2(), false),
|
|
2303
2303
|
field2("bind_result", binary2(), false),
|
|
2304
|
-
field2("
|
|
2304
|
+
field2("required_filters", list2(field2("item", list2(field2("item", utf82(), true)), true)), false)
|
|
2305
2305
|
]);
|
|
2306
2306
|
var ViewInfoSchema = schema2([
|
|
2307
2307
|
field2("comment", utf82(), true),
|
|
@@ -3906,4 +3906,4 @@ export {
|
|
|
3906
3906
|
ArgumentValidationError
|
|
3907
3907
|
};
|
|
3908
3908
|
|
|
3909
|
-
//# debugId=
|
|
3909
|
+
//# debugId=02E1D95AF7E1275C64756E2164756E21
|