@quereus/quereus 4.4.0 → 4.5.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/README.md +6 -1
- package/dist/src/common/types.d.ts +9 -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-events.d.ts +49 -0
- package/dist/src/core/database-events.d.ts.map +1 -1
- package/dist/src/core/database-events.js +148 -0
- package/dist/src/core/database-events.js.map +1 -1
- package/dist/src/core/database-materialized-views-analysis.d.ts.map +1 -1
- package/dist/src/core/database-materialized-views-analysis.js +1 -0
- package/dist/src/core/database-materialized-views-analysis.js.map +1 -1
- package/dist/src/core/database-materialized-views-plan-builders.d.ts +2 -1
- package/dist/src/core/database-materialized-views-plan-builders.d.ts.map +1 -1
- package/dist/src/core/database-materialized-views-plan-builders.js +26 -5
- package/dist/src/core/database-materialized-views-plan-builders.js.map +1 -1
- package/dist/src/core/database-materialized-views-plans.d.ts +6 -3
- package/dist/src/core/database-materialized-views-plans.d.ts.map +1 -1
- package/dist/src/core/database-materialized-views.d.ts +3 -2
- package/dist/src/core/database-materialized-views.d.ts.map +1 -1
- package/dist/src/core/database-materialized-views.js +26 -5
- package/dist/src/core/database-materialized-views.js.map +1 -1
- package/dist/src/core/database.d.ts +5 -0
- package/dist/src/core/database.d.ts.map +1 -1
- package/dist/src/core/database.js +21 -1
- package/dist/src/core/database.js.map +1 -1
- package/dist/src/core/internal-statement-cache.d.ts +18 -0
- package/dist/src/core/internal-statement-cache.d.ts.map +1 -0
- package/dist/src/core/internal-statement-cache.js +211 -0
- package/dist/src/core/internal-statement-cache.js.map +1 -0
- package/dist/src/func/builtins/aggregate.d.ts +13 -12
- package/dist/src/func/builtins/aggregate.d.ts.map +1 -1
- package/dist/src/func/builtins/aggregate.js +45 -67
- package/dist/src/func/builtins/aggregate.js.map +1 -1
- package/dist/src/func/builtins/builtin-window-functions.d.ts.map +1 -1
- package/dist/src/func/builtins/builtin-window-functions.js +63 -48
- package/dist/src/func/builtins/builtin-window-functions.js.map +1 -1
- package/dist/src/func/builtins/scalar.d.ts.map +1 -1
- package/dist/src/func/builtins/scalar.js +92 -3
- package/dist/src/func/builtins/scalar.js.map +1 -1
- package/dist/src/func/registration.d.ts +18 -1
- package/dist/src/func/registration.d.ts.map +1 -1
- package/dist/src/func/registration.js +26 -0
- package/dist/src/func/registration.js.map +1 -1
- package/dist/src/index.d.ts +10 -10
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +13 -12
- package/dist/src/index.js.map +1 -1
- package/dist/src/parser/parser.d.ts +6 -0
- package/dist/src/parser/parser.d.ts.map +1 -1
- package/dist/src/parser/parser.js +45 -34
- package/dist/src/parser/parser.js.map +1 -1
- package/dist/src/planner/analysis/coarsened-key.d.ts +4 -3
- package/dist/src/planner/analysis/coarsened-key.d.ts.map +1 -1
- package/dist/src/planner/analysis/coarsened-key.js +37 -3
- package/dist/src/planner/analysis/coarsened-key.js.map +1 -1
- package/dist/src/planner/analysis/comparison-collation.d.ts +35 -3
- package/dist/src/planner/analysis/comparison-collation.d.ts.map +1 -1
- package/dist/src/planner/analysis/comparison-collation.js +37 -3
- package/dist/src/planner/analysis/comparison-collation.js.map +1 -1
- package/dist/src/planner/analysis/coverage-prover.d.ts +13 -2
- package/dist/src/planner/analysis/coverage-prover.d.ts.map +1 -1
- package/dist/src/planner/analysis/coverage-prover.js +10 -14
- package/dist/src/planner/analysis/coverage-prover.js.map +1 -1
- package/dist/src/planner/analysis/expression-fingerprint.d.ts.map +1 -1
- package/dist/src/planner/analysis/expression-fingerprint.js +29 -0
- package/dist/src/planner/analysis/expression-fingerprint.js.map +1 -1
- package/dist/src/planner/analysis/predicate-conjuncts.d.ts +10 -4
- package/dist/src/planner/analysis/predicate-conjuncts.d.ts.map +1 -1
- package/dist/src/planner/analysis/predicate-conjuncts.js +28 -7
- package/dist/src/planner/analysis/predicate-conjuncts.js.map +1 -1
- package/dist/src/planner/analysis/query-rewrite-matcher.d.ts +6 -0
- package/dist/src/planner/analysis/query-rewrite-matcher.d.ts.map +1 -1
- package/dist/src/planner/analysis/query-rewrite-matcher.js +19 -29
- package/dist/src/planner/analysis/query-rewrite-matcher.js.map +1 -1
- package/dist/src/planner/analysis/sat-checker.d.ts.map +1 -1
- package/dist/src/planner/analysis/sat-checker.js +43 -4
- package/dist/src/planner/analysis/sat-checker.js.map +1 -1
- package/dist/src/planner/analysis/scalar-subqueries.d.ts +22 -3
- package/dist/src/planner/analysis/scalar-subqueries.d.ts.map +1 -1
- package/dist/src/planner/analysis/scalar-subqueries.js +32 -3
- package/dist/src/planner/analysis/scalar-subqueries.js.map +1 -1
- package/dist/src/planner/analysis/set-op-type-merge.d.ts +64 -0
- package/dist/src/planner/analysis/set-op-type-merge.d.ts.map +1 -0
- package/dist/src/planner/analysis/set-op-type-merge.js +97 -0
- package/dist/src/planner/analysis/set-op-type-merge.js.map +1 -0
- package/dist/src/planner/building/coercion.d.ts +78 -0
- package/dist/src/planner/building/coercion.d.ts.map +1 -0
- package/dist/src/planner/building/coercion.js +137 -0
- package/dist/src/planner/building/coercion.js.map +1 -0
- package/dist/src/planner/building/constraint-builder.d.ts.map +1 -1
- package/dist/src/planner/building/constraint-builder.js +5 -18
- package/dist/src/planner/building/constraint-builder.js.map +1 -1
- package/dist/src/planner/building/delete.d.ts.map +1 -1
- package/dist/src/planner/building/delete.js +10 -3
- package/dist/src/planner/building/delete.js.map +1 -1
- package/dist/src/planner/building/expression.d.ts.map +1 -1
- package/dist/src/planner/building/expression.js +13 -35
- package/dist/src/planner/building/expression.js.map +1 -1
- package/dist/src/planner/building/foreign-key-builder.d.ts +44 -1
- package/dist/src/planner/building/foreign-key-builder.d.ts.map +1 -1
- package/dist/src/planner/building/foreign-key-builder.js +54 -0
- package/dist/src/planner/building/foreign-key-builder.js.map +1 -1
- package/dist/src/planner/building/function-call.d.ts.map +1 -1
- package/dist/src/planner/building/function-call.js +8 -0
- package/dist/src/planner/building/function-call.js.map +1 -1
- package/dist/src/planner/building/insert.d.ts.map +1 -1
- package/dist/src/planner/building/insert.js +9 -12
- package/dist/src/planner/building/insert.js.map +1 -1
- package/dist/src/planner/building/select-compound.d.ts.map +1 -1
- package/dist/src/planner/building/select-compound.js +10 -6
- package/dist/src/planner/building/select-compound.js.map +1 -1
- package/dist/src/planner/building/update.d.ts.map +1 -1
- package/dist/src/planner/building/update.js +13 -4
- package/dist/src/planner/building/update.js.map +1 -1
- package/dist/src/planner/cost/conjunct-cost.d.ts +42 -0
- package/dist/src/planner/cost/conjunct-cost.d.ts.map +1 -0
- package/dist/src/planner/cost/conjunct-cost.js +62 -0
- package/dist/src/planner/cost/conjunct-cost.js.map +1 -0
- package/dist/src/planner/framework/pass.js +3 -3
- package/dist/src/planner/mutation/propagate.d.ts.map +1 -1
- package/dist/src/planner/mutation/propagate.js +1 -0
- package/dist/src/planner/mutation/propagate.js.map +1 -1
- package/dist/src/planner/nodes/async-gather-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/async-gather-node.js +19 -8
- package/dist/src/planner/nodes/async-gather-node.js.map +1 -1
- package/dist/src/planner/nodes/bloom-join-node.d.ts +2 -0
- package/dist/src/planner/nodes/bloom-join-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/bloom-join-node.js +10 -5
- package/dist/src/planner/nodes/bloom-join-node.js.map +1 -1
- package/dist/src/planner/nodes/dml-executor-node.d.ts +0 -9
- package/dist/src/planner/nodes/dml-executor-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/dml-executor-node.js.map +1 -1
- package/dist/src/planner/nodes/join-node.d.ts +5 -0
- package/dist/src/planner/nodes/join-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/join-node.js +8 -1
- package/dist/src/planner/nodes/join-node.js.map +1 -1
- package/dist/src/planner/nodes/join-utils.d.ts +57 -0
- package/dist/src/planner/nodes/join-utils.d.ts.map +1 -1
- package/dist/src/planner/nodes/join-utils.js +47 -0
- package/dist/src/planner/nodes/join-utils.js.map +1 -1
- package/dist/src/planner/nodes/key-set-semi-join-node.d.ts +87 -0
- package/dist/src/planner/nodes/key-set-semi-join-node.d.ts.map +1 -0
- package/dist/src/planner/nodes/key-set-semi-join-node.js +137 -0
- package/dist/src/planner/nodes/key-set-semi-join-node.js.map +1 -0
- package/dist/src/planner/nodes/merge-join-node.d.ts +2 -0
- package/dist/src/planner/nodes/merge-join-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/merge-join-node.js +14 -6
- package/dist/src/planner/nodes/merge-join-node.js.map +1 -1
- package/dist/src/planner/nodes/plan-node-type.d.ts +1 -0
- package/dist/src/planner/nodes/plan-node-type.d.ts.map +1 -1
- package/dist/src/planner/nodes/plan-node-type.js +1 -0
- package/dist/src/planner/nodes/plan-node-type.js.map +1 -1
- package/dist/src/planner/nodes/scalar.d.ts.map +1 -1
- package/dist/src/planner/nodes/scalar.js +26 -3
- package/dist/src/planner/nodes/scalar.js.map +1 -1
- package/dist/src/planner/nodes/set-operation-node.d.ts +68 -16
- package/dist/src/planner/nodes/set-operation-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/set-operation-node.js +147 -26
- package/dist/src/planner/nodes/set-operation-node.js.map +1 -1
- package/dist/src/planner/nodes/table-access-nodes.d.ts +19 -1
- package/dist/src/planner/nodes/table-access-nodes.d.ts.map +1 -1
- package/dist/src/planner/nodes/table-access-nodes.js +13 -2
- package/dist/src/planner/nodes/table-access-nodes.js.map +1 -1
- package/dist/src/planner/optimizer.d.ts.map +1 -1
- package/dist/src/planner/optimizer.js +54 -12
- package/dist/src/planner/optimizer.js.map +1 -1
- package/dist/src/planner/rules/access/rule-key-set-seek.d.ts +68 -0
- package/dist/src/planner/rules/access/rule-key-set-seek.d.ts.map +1 -0
- package/dist/src/planner/rules/access/rule-key-set-seek.js +408 -0
- package/dist/src/planner/rules/access/rule-key-set-seek.js.map +1 -0
- package/dist/src/planner/rules/access/rule-monotonic-range-access.d.ts.map +1 -1
- package/dist/src/planner/rules/access/rule-monotonic-range-access.js +2 -2
- package/dist/src/planner/rules/access/rule-monotonic-range-access.js.map +1 -1
- package/dist/src/planner/rules/access/rule-select-access-path.d.ts +27 -0
- package/dist/src/planner/rules/access/rule-select-access-path.d.ts.map +1 -1
- package/dist/src/planner/rules/access/rule-select-access-path.js +74 -29
- package/dist/src/planner/rules/access/rule-select-access-path.js.map +1 -1
- package/dist/src/planner/rules/cache/rule-materialized-view-rewrite.d.ts.map +1 -1
- package/dist/src/planner/rules/cache/rule-materialized-view-rewrite.js +23 -4
- package/dist/src/planner/rules/cache/rule-materialized-view-rewrite.js.map +1 -1
- package/dist/src/planner/rules/cache/rule-scalar-subquery-cache.d.ts +10 -8
- package/dist/src/planner/rules/cache/rule-scalar-subquery-cache.d.ts.map +1 -1
- package/dist/src/planner/rules/cache/rule-scalar-subquery-cache.js +10 -8
- package/dist/src/planner/rules/cache/rule-scalar-subquery-cache.js.map +1 -1
- package/dist/src/planner/rules/join/equi-pair-extractor.d.ts +67 -41
- package/dist/src/planner/rules/join/equi-pair-extractor.d.ts.map +1 -1
- package/dist/src/planner/rules/join/equi-pair-extractor.js +72 -36
- package/dist/src/planner/rules/join/equi-pair-extractor.js.map +1 -1
- package/dist/src/planner/rules/join/rule-join-physical-selection.d.ts.map +1 -1
- package/dist/src/planner/rules/join/rule-join-physical-selection.js +14 -2
- package/dist/src/planner/rules/join/rule-join-physical-selection.js.map +1 -1
- package/dist/src/planner/rules/join/rule-monotonic-merge-join.d.ts.map +1 -1
- package/dist/src/planner/rules/join/rule-monotonic-merge-join.js +11 -1
- package/dist/src/planner/rules/join/rule-monotonic-merge-join.js.map +1 -1
- package/dist/src/planner/rules/predicate/rule-empty-relation-folding.d.ts +1 -1
- package/dist/src/planner/rules/predicate/rule-empty-relation-folding.js +1 -1
- package/dist/src/planner/rules/predicate/rule-filter-conjunct-ordering.d.ts +30 -0
- package/dist/src/planner/rules/predicate/rule-filter-conjunct-ordering.d.ts.map +1 -0
- package/dist/src/planner/rules/predicate/rule-filter-conjunct-ordering.js +63 -0
- package/dist/src/planner/rules/predicate/rule-filter-conjunct-ordering.js.map +1 -0
- package/dist/src/planner/rules/predicate/rule-filter-selectivity.d.ts +17 -1
- package/dist/src/planner/rules/predicate/rule-filter-selectivity.d.ts.map +1 -1
- package/dist/src/planner/rules/predicate/rule-filter-selectivity.js +206 -12
- package/dist/src/planner/rules/predicate/rule-filter-selectivity.js.map +1 -1
- package/dist/src/planner/rules/predicate/rule-predicate-inference-equivalence.js +8 -1
- package/dist/src/planner/rules/predicate/rule-predicate-inference-equivalence.js.map +1 -1
- package/dist/src/planner/rules/predicate/rule-predicate-pushdown.d.ts +3 -1
- package/dist/src/planner/rules/predicate/rule-predicate-pushdown.d.ts.map +1 -1
- package/dist/src/planner/rules/predicate/rule-predicate-pushdown.js +13 -1
- package/dist/src/planner/rules/predicate/rule-predicate-pushdown.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 +18 -3
- package/dist/src/planner/rules/retrieve/rule-grow-retrieve.js.map +1 -1
- package/dist/src/planner/rules/shared/index-style-context.d.ts +17 -0
- package/dist/src/planner/rules/shared/index-style-context.d.ts.map +1 -1
- package/dist/src/planner/rules/shared/index-style-context.js +7 -0
- package/dist/src/planner/rules/shared/index-style-context.js.map +1 -1
- package/dist/src/planner/rules/subquery/rule-scalar-agg-decorrelation.js +4 -0
- package/dist/src/planner/rules/subquery/rule-scalar-agg-decorrelation.js.map +1 -1
- package/dist/src/planner/rules/subquery/rule-subquery-decorrelation.d.ts +24 -6
- package/dist/src/planner/rules/subquery/rule-subquery-decorrelation.d.ts.map +1 -1
- package/dist/src/planner/rules/subquery/rule-subquery-decorrelation.js +175 -60
- package/dist/src/planner/rules/subquery/rule-subquery-decorrelation.js.map +1 -1
- package/dist/src/planner/stats/catalog-stats.d.ts +52 -0
- package/dist/src/planner/stats/catalog-stats.d.ts.map +1 -1
- package/dist/src/planner/stats/catalog-stats.js +151 -5
- package/dist/src/planner/stats/catalog-stats.js.map +1 -1
- package/dist/src/planner/stats/index.d.ts +15 -0
- package/dist/src/planner/stats/index.d.ts.map +1 -1
- package/dist/src/planner/stats/index.js.map +1 -1
- package/dist/src/planner/stats/selectivity-combine.d.ts +53 -0
- package/dist/src/planner/stats/selectivity-combine.d.ts.map +1 -0
- package/dist/src/planner/stats/selectivity-combine.js +75 -0
- package/dist/src/planner/stats/selectivity-combine.js.map +1 -0
- package/dist/src/planner/util/column-origins.d.ts +58 -0
- package/dist/src/planner/util/column-origins.d.ts.map +1 -0
- package/dist/src/planner/util/column-origins.js +90 -0
- package/dist/src/planner/util/column-origins.js.map +1 -0
- package/dist/src/runtime/deferred-constraint-queue.d.ts +40 -0
- package/dist/src/runtime/deferred-constraint-queue.d.ts.map +1 -1
- package/dist/src/runtime/deferred-constraint-queue.js +91 -0
- package/dist/src/runtime/deferred-constraint-queue.js.map +1 -1
- package/dist/src/runtime/emit/aggregate-setup.d.ts +49 -0
- package/dist/src/runtime/emit/aggregate-setup.d.ts.map +1 -0
- package/dist/src/runtime/emit/aggregate-setup.js +99 -0
- package/dist/src/runtime/emit/aggregate-setup.js.map +1 -0
- package/dist/src/runtime/emit/aggregate.d.ts.map +1 -1
- package/dist/src/runtime/emit/aggregate.js +4 -69
- package/dist/src/runtime/emit/aggregate.js.map +1 -1
- package/dist/src/runtime/emit/alter-table.d.ts.map +1 -1
- package/dist/src/runtime/emit/alter-table.js +354 -165
- package/dist/src/runtime/emit/alter-table.js.map +1 -1
- package/dist/src/runtime/emit/asof-scan.d.ts.map +1 -1
- package/dist/src/runtime/emit/asof-scan.js +11 -0
- package/dist/src/runtime/emit/asof-scan.js.map +1 -1
- package/dist/src/runtime/emit/between.d.ts.map +1 -1
- package/dist/src/runtime/emit/between.js +7 -12
- package/dist/src/runtime/emit/between.js.map +1 -1
- package/dist/src/runtime/emit/binary.d.ts.map +1 -1
- package/dist/src/runtime/emit/binary.js +24 -25
- package/dist/src/runtime/emit/binary.js.map +1 -1
- package/dist/src/runtime/emit/bloom-join.d.ts.map +1 -1
- package/dist/src/runtime/emit/bloom-join.js +8 -16
- package/dist/src/runtime/emit/bloom-join.js.map +1 -1
- package/dist/src/runtime/emit/case.d.ts.map +1 -1
- package/dist/src/runtime/emit/case.js +40 -6
- package/dist/src/runtime/emit/case.js.map +1 -1
- package/dist/src/runtime/emit/cast.d.ts.map +1 -1
- package/dist/src/runtime/emit/cast.js +10 -23
- package/dist/src/runtime/emit/cast.js.map +1 -1
- package/dist/src/runtime/emit/constraint-check.d.ts.map +1 -1
- package/dist/src/runtime/emit/constraint-check.js +72 -51
- package/dist/src/runtime/emit/constraint-check.js.map +1 -1
- package/dist/src/runtime/emit/create-view.d.ts.map +1 -1
- package/dist/src/runtime/emit/create-view.js +6 -0
- package/dist/src/runtime/emit/create-view.js.map +1 -1
- package/dist/src/runtime/emit/distinct.d.ts.map +1 -1
- package/dist/src/runtime/emit/distinct.js +6 -3
- package/dist/src/runtime/emit/distinct.js.map +1 -1
- package/dist/src/runtime/emit/dml-executor.d.ts.map +1 -1
- package/dist/src/runtime/emit/dml-executor.js +188 -84
- package/dist/src/runtime/emit/dml-executor.js.map +1 -1
- package/dist/src/runtime/emit/filter.d.ts +18 -0
- package/dist/src/runtime/emit/filter.d.ts.map +1 -1
- package/dist/src/runtime/emit/filter.js +52 -10
- package/dist/src/runtime/emit/filter.js.map +1 -1
- package/dist/src/runtime/emit/hash-aggregate.d.ts.map +1 -1
- package/dist/src/runtime/emit/hash-aggregate.js +16 -65
- package/dist/src/runtime/emit/hash-aggregate.js.map +1 -1
- package/dist/src/runtime/emit/insert.d.ts.map +1 -1
- package/dist/src/runtime/emit/insert.js +18 -7
- package/dist/src/runtime/emit/insert.js.map +1 -1
- package/dist/src/runtime/emit/join-key-extractor.d.ts +46 -0
- package/dist/src/runtime/emit/join-key-extractor.d.ts.map +1 -0
- package/dist/src/runtime/emit/join-key-extractor.js +60 -0
- package/dist/src/runtime/emit/join-key-extractor.js.map +1 -0
- package/dist/src/runtime/emit/join.d.ts.map +1 -1
- package/dist/src/runtime/emit/join.js +37 -11
- package/dist/src/runtime/emit/join.js.map +1 -1
- package/dist/src/runtime/emit/key-set-semi-join.d.ts +29 -0
- package/dist/src/runtime/emit/key-set-semi-join.d.ts.map +1 -0
- package/dist/src/runtime/emit/key-set-semi-join.js +143 -0
- package/dist/src/runtime/emit/key-set-semi-join.js.map +1 -0
- package/dist/src/runtime/emit/materialized-view-helpers.d.ts +14 -1
- package/dist/src/runtime/emit/materialized-view-helpers.d.ts.map +1 -1
- package/dist/src/runtime/emit/materialized-view-helpers.js +33 -3
- 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 +47 -6
- package/dist/src/runtime/emit/materialized-view.js.map +1 -1
- package/dist/src/runtime/emit/merge-join.d.ts.map +1 -1
- package/dist/src/runtime/emit/merge-join.js +32 -15
- package/dist/src/runtime/emit/merge-join.js.map +1 -1
- package/dist/src/runtime/emit/operand-comparator.d.ts +40 -0
- package/dist/src/runtime/emit/operand-comparator.d.ts.map +1 -0
- package/dist/src/runtime/emit/operand-comparator.js +59 -0
- package/dist/src/runtime/emit/operand-comparator.js.map +1 -0
- package/dist/src/runtime/emit/scan.d.ts.map +1 -1
- package/dist/src/runtime/emit/scan.js +11 -2
- package/dist/src/runtime/emit/scan.js.map +1 -1
- package/dist/src/runtime/emit/set-object-tags.d.ts +8 -0
- package/dist/src/runtime/emit/set-object-tags.d.ts.map +1 -1
- package/dist/src/runtime/emit/set-object-tags.js +8 -0
- package/dist/src/runtime/emit/set-object-tags.js.map +1 -1
- package/dist/src/runtime/emit/set-operation.d.ts.map +1 -1
- package/dist/src/runtime/emit/set-operation.js +7 -4
- package/dist/src/runtime/emit/set-operation.js.map +1 -1
- package/dist/src/runtime/emit/sort.d.ts.map +1 -1
- package/dist/src/runtime/emit/sort.js +5 -2
- package/dist/src/runtime/emit/sort.js.map +1 -1
- package/dist/src/runtime/emit/subquery.d.ts.map +1 -1
- package/dist/src/runtime/emit/subquery.js +113 -13
- package/dist/src/runtime/emit/subquery.js.map +1 -1
- package/dist/src/runtime/emit/temporal-arithmetic.d.ts +7 -0
- package/dist/src/runtime/emit/temporal-arithmetic.d.ts.map +1 -1
- package/dist/src/runtime/emit/temporal-arithmetic.js +15 -7
- package/dist/src/runtime/emit/temporal-arithmetic.js.map +1 -1
- package/dist/src/runtime/emit/update.d.ts.map +1 -1
- package/dist/src/runtime/emit/update.js +44 -3
- package/dist/src/runtime/emit/update.js.map +1 -1
- package/dist/src/runtime/emit/window.d.ts.map +1 -1
- package/dist/src/runtime/emit/window.js +72 -55
- package/dist/src/runtime/emit/window.js.map +1 -1
- package/dist/src/runtime/foreign-key-actions.d.ts +36 -1
- package/dist/src/runtime/foreign-key-actions.d.ts.map +1 -1
- package/dist/src/runtime/foreign-key-actions.js +238 -116
- package/dist/src/runtime/foreign-key-actions.js.map +1 -1
- package/dist/src/runtime/parallel-driver.d.ts +10 -2
- package/dist/src/runtime/parallel-driver.d.ts.map +1 -1
- package/dist/src/runtime/parallel-driver.js +12 -2
- package/dist/src/runtime/parallel-driver.js.map +1 -1
- package/dist/src/runtime/register.d.ts.map +1 -1
- package/dist/src/runtime/register.js +2 -0
- package/dist/src/runtime/register.js.map +1 -1
- package/dist/src/runtime/types.d.ts +25 -0
- package/dist/src/runtime/types.d.ts.map +1 -1
- package/dist/src/runtime/types.js.map +1 -1
- package/dist/src/schema/catalog-persistability.d.ts +58 -0
- package/dist/src/schema/catalog-persistability.d.ts.map +1 -0
- package/dist/src/schema/catalog-persistability.js +87 -0
- package/dist/src/schema/catalog-persistability.js.map +1 -0
- package/dist/src/schema/catalog.d.ts +17 -1
- package/dist/src/schema/catalog.d.ts.map +1 -1
- package/dist/src/schema/catalog.js +25 -3
- package/dist/src/schema/catalog.js.map +1 -1
- package/dist/src/schema/constraint-builder.d.ts +20 -22
- package/dist/src/schema/constraint-builder.d.ts.map +1 -1
- package/dist/src/schema/constraint-builder.js +43 -36
- package/dist/src/schema/constraint-builder.js.map +1 -1
- package/dist/src/schema/ddl-generator.d.ts +23 -0
- package/dist/src/schema/ddl-generator.d.ts.map +1 -1
- package/dist/src/schema/ddl-generator.js +27 -0
- package/dist/src/schema/ddl-generator.js.map +1 -1
- package/dist/src/schema/function.d.ts +39 -1
- package/dist/src/schema/function.d.ts.map +1 -1
- package/dist/src/schema/function.js.map +1 -1
- package/dist/src/schema/manager.d.ts +28 -0
- package/dist/src/schema/manager.d.ts.map +1 -1
- package/dist/src/schema/manager.js +82 -14
- package/dist/src/schema/manager.js.map +1 -1
- package/dist/src/schema/schema-differ.d.ts.map +1 -1
- package/dist/src/schema/schema-differ.js +51 -12
- package/dist/src/schema/schema-differ.js.map +1 -1
- package/dist/src/schema/unique-enforcement.d.ts +31 -0
- package/dist/src/schema/unique-enforcement.d.ts.map +1 -1
- package/dist/src/schema/unique-enforcement.js +37 -1
- package/dist/src/schema/unique-enforcement.js.map +1 -1
- package/dist/src/schema/window-function.d.ts +30 -10
- package/dist/src/schema/window-function.d.ts.map +1 -1
- package/dist/src/schema/window-function.js +20 -16
- package/dist/src/schema/window-function.js.map +1 -1
- package/dist/src/types/builtin-types.d.ts.map +1 -1
- package/dist/src/types/builtin-types.js +30 -4
- package/dist/src/types/builtin-types.js.map +1 -1
- package/dist/src/types/cast-semantics.d.ts +43 -0
- package/dist/src/types/cast-semantics.d.ts.map +1 -0
- package/dist/src/types/cast-semantics.js +59 -0
- package/dist/src/types/cast-semantics.js.map +1 -0
- 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/json-type.d.ts.map +1 -1
- package/dist/src/types/json-type.js +31 -10
- package/dist/src/types/json-type.js.map +1 -1
- package/dist/src/types/logical-type.d.ts +22 -0
- package/dist/src/types/logical-type.d.ts.map +1 -1
- package/dist/src/types/logical-type.js.map +1 -1
- package/dist/src/types/temporal-types.d.ts.map +1 -1
- package/dist/src/types/temporal-types.js +33 -11
- package/dist/src/types/temporal-types.js.map +1 -1
- package/dist/src/types/validation.d.ts +39 -1
- package/dist/src/types/validation.d.ts.map +1 -1
- package/dist/src/types/validation.js +60 -0
- package/dist/src/types/validation.js.map +1 -1
- package/dist/src/util/ast-spine-clone.d.ts +23 -0
- package/dist/src/util/ast-spine-clone.d.ts.map +1 -0
- package/dist/src/util/ast-spine-clone.js +41 -0
- package/dist/src/util/ast-spine-clone.js.map +1 -0
- package/dist/src/util/coercion.d.ts +13 -0
- package/dist/src/util/coercion.d.ts.map +1 -1
- package/dist/src/util/coercion.js +10 -1
- package/dist/src/util/coercion.js.map +1 -1
- package/dist/src/util/comparison.d.ts +114 -0
- package/dist/src/util/comparison.d.ts.map +1 -1
- package/dist/src/util/comparison.js +187 -27
- package/dist/src/util/comparison.js.map +1 -1
- package/dist/src/vtab/best-access-plan.d.ts +87 -0
- package/dist/src/vtab/best-access-plan.d.ts.map +1 -1
- package/dist/src/vtab/best-access-plan.js +87 -0
- package/dist/src/vtab/best-access-plan.js.map +1 -1
- package/dist/src/vtab/manifest.d.ts +7 -0
- package/dist/src/vtab/manifest.d.ts.map +1 -1
- package/dist/src/vtab/memory/connection.d.ts +14 -1
- package/dist/src/vtab/memory/connection.d.ts.map +1 -1
- package/dist/src/vtab/memory/connection.js +20 -2
- package/dist/src/vtab/memory/connection.js.map +1 -1
- package/dist/src/vtab/memory/layer/base.d.ts +12 -5
- package/dist/src/vtab/memory/layer/base.d.ts.map +1 -1
- package/dist/src/vtab/memory/layer/base.js +20 -9
- package/dist/src/vtab/memory/layer/base.js.map +1 -1
- package/dist/src/vtab/memory/layer/connection.d.ts +17 -0
- package/dist/src/vtab/memory/layer/connection.d.ts.map +1 -1
- package/dist/src/vtab/memory/layer/connection.js +26 -0
- package/dist/src/vtab/memory/layer/connection.js.map +1 -1
- package/dist/src/vtab/memory/layer/manager.d.ts +156 -31
- package/dist/src/vtab/memory/layer/manager.d.ts.map +1 -1
- package/dist/src/vtab/memory/layer/manager.js +695 -158
- package/dist/src/vtab/memory/layer/manager.js.map +1 -1
- package/dist/src/vtab/memory/layer/plan-filter.d.ts +41 -20
- package/dist/src/vtab/memory/layer/plan-filter.d.ts.map +1 -1
- package/dist/src/vtab/memory/layer/plan-filter.js +57 -27
- package/dist/src/vtab/memory/layer/plan-filter.js.map +1 -1
- package/dist/src/vtab/memory/layer/row-convert.d.ts +21 -0
- package/dist/src/vtab/memory/layer/row-convert.d.ts.map +1 -0
- package/dist/src/vtab/memory/layer/row-convert.js +30 -0
- package/dist/src/vtab/memory/layer/row-convert.js.map +1 -0
- package/dist/src/vtab/memory/layer/scan-layer.d.ts +6 -3
- package/dist/src/vtab/memory/layer/scan-layer.d.ts.map +1 -1
- package/dist/src/vtab/memory/layer/scan-layer.js +48 -34
- package/dist/src/vtab/memory/layer/scan-layer.js.map +1 -1
- package/dist/src/vtab/memory/layer/transaction.d.ts +142 -19
- package/dist/src/vtab/memory/layer/transaction.d.ts.map +1 -1
- package/dist/src/vtab/memory/layer/transaction.js +237 -73
- package/dist/src/vtab/memory/layer/transaction.js.map +1 -1
- package/dist/src/vtab/memory/module.d.ts +14 -2
- package/dist/src/vtab/memory/module.d.ts.map +1 -1
- package/dist/src/vtab/memory/module.js +60 -41
- package/dist/src/vtab/memory/module.js.map +1 -1
- package/dist/src/vtab/memory/table.d.ts +1 -1
- package/dist/src/vtab/memory/table.d.ts.map +1 -1
- package/dist/src/vtab/memory/table.js +12 -4
- package/dist/src/vtab/memory/table.js.map +1 -1
- package/dist/src/vtab/memory/types.d.ts +27 -1
- package/dist/src/vtab/memory/types.d.ts.map +1 -1
- package/dist/src/vtab/memory/types.js +16 -1
- package/dist/src/vtab/memory/types.js.map +1 -1
- package/dist/src/vtab/memory/utils/primary-key.d.ts +9 -0
- package/dist/src/vtab/memory/utils/primary-key.d.ts.map +1 -1
- package/dist/src/vtab/memory/utils/primary-key.js +11 -0
- package/dist/src/vtab/memory/utils/primary-key.js.map +1 -1
- package/dist/src/vtab/module.d.ts +63 -0
- package/dist/src/vtab/module.d.ts.map +1 -1
- package/dist/src/vtab/table.d.ts +33 -7
- package/dist/src/vtab/table.d.ts.map +1 -1
- package/dist/src/vtab/table.js.map +1 -1
- package/package.json +3 -3
- package/dist/src/planner/rules/cache/rule-in-subquery-cache.d.ts +0 -26
- package/dist/src/planner/rules/cache/rule-in-subquery-cache.d.ts.map +0 -1
- package/dist/src/planner/rules/cache/rule-in-subquery-cache.js +0 -66
- package/dist/src/planner/rules/cache/rule-in-subquery-cache.js.map +0 -1
|
@@ -29,13 +29,15 @@ export declare class SetOperationNode extends PlanNode implements BinaryRelation
|
|
|
29
29
|
readonly nodeType = PlanNodeType.SetOperation;
|
|
30
30
|
private attributesCache;
|
|
31
31
|
/**
|
|
32
|
-
* Per-data-column
|
|
33
|
-
*
|
|
32
|
+
* Per-data-column output metadata resolved across BOTH inputs: the symmetric
|
|
33
|
+
* logical-type merge, OR-merged nullability, and the comparison-lattice
|
|
34
|
+
* collation (`set-operation-cross-input-collation-merge`). Cached so
|
|
34
35
|
* `buildAttributes` and `getType` read ONE result and cannot drift — the dedup
|
|
35
|
-
* comparator (which keys off the output attribute collation) and an
|
|
36
|
-
* ORDER BY (which keys off the output column collation) thus
|
|
36
|
+
* comparator (which keys off the output attribute type/collation) and an
|
|
37
|
+
* enclosing ORDER BY (which keys off the output column type/collation) thus
|
|
38
|
+
* stay in lockstep.
|
|
37
39
|
*/
|
|
38
|
-
private
|
|
40
|
+
private dataColumnsCache;
|
|
39
41
|
constructor(scope: Scope, left: RelationalPlanNode, right: RelationalPlanNode, op: 'union' | 'unionAll' | 'intersect' | 'except',
|
|
40
42
|
/**
|
|
41
43
|
* Membership-flag columns appended after the data columns (read half:
|
|
@@ -43,9 +45,24 @@ export declare class SetOperationNode extends PlanNode implements BinaryRelation
|
|
|
43
45
|
*/
|
|
44
46
|
membership?: readonly SetOpMembershipSpec[] | undefined);
|
|
45
47
|
/**
|
|
46
|
-
* Resolve each DATA column's
|
|
47
|
-
*
|
|
48
|
-
*
|
|
48
|
+
* Resolve each DATA column's cross-input output metadata:
|
|
49
|
+
*
|
|
50
|
+
* **Logical type** — the symmetric merge (`mergeSetOpAdvertisedType`): identical
|
|
51
|
+
* types keep theirs, NULL yields to the other side, differing builtin numerics
|
|
52
|
+
* merge to NUMERIC (whose `number | bigint` value space covers both branches
|
|
53
|
+
* unconverted), and an irreconcilable pair advertises ANY. A rule-4
|
|
54
|
+
* pair (object-physical vs other) also collapses to ANY *here*, because this
|
|
55
|
+
* node performs no conversion itself — {@link SetOperationNode.create} aligns
|
|
56
|
+
* such operands with a lenient CAST up front, so an aligned tree lands on the
|
|
57
|
+
* identical-types rule instead. Everything downstream (the DML write pass's
|
|
58
|
+
* `buildRowCoercion`, the dedup comparator, predicate coercion) trusts the
|
|
59
|
+
* advertised type, so it must describe BOTH branches' rows.
|
|
60
|
+
*
|
|
61
|
+
* **Nullability** — OR across the two inputs (a nullable right branch must not
|
|
62
|
+
* be masked by a NOT NULL left branch; same merge `AsyncGatherNode` applies).
|
|
63
|
+
*
|
|
64
|
+
* **Collation** — the shared comparison lattice (`resolveSetOpColumnCollation`).
|
|
65
|
+
* The conflict policy is keyed on set-ness:
|
|
49
66
|
* - DISTINCT operators (`union`/`intersect`/`except`, `op !== 'unionAll'`) DO
|
|
50
67
|
* dedup, so a same-rank explicit/declared name conflict is a plan-time error
|
|
51
68
|
* — the same one a spelled-out `l.c = r.c` would throw. Forced at build time
|
|
@@ -54,18 +71,20 @@ export declare class SetOperationNode extends PlanNode implements BinaryRelation
|
|
|
54
71
|
* - `union all` does NO dedup, so a conflict must NOT throw — it propagates no
|
|
55
72
|
* collation forward (BINARY-equivalent), exactly as `mergePropagatedCollation`
|
|
56
73
|
* swallows conflicts for `||` / CASE. Rows pass through unchanged (bag).
|
|
74
|
+
*
|
|
57
75
|
* Only the first `dataColumnCount()` columns are resolved; flag columns (appended
|
|
58
76
|
* after, `EXISTENCE_FLAG_TYPE`, no collation) are never touched.
|
|
59
77
|
*/
|
|
60
|
-
private
|
|
78
|
+
private resolveDataColumns;
|
|
61
79
|
/**
|
|
62
|
-
* Data column `i`'s `ScalarType` rebased onto the cross-input-resolved
|
|
63
|
-
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
*
|
|
68
|
-
*
|
|
80
|
+
* Data column `i`'s `ScalarType` rebased onto the cross-input-resolved output
|
|
81
|
+
* metadata: `logicalType` is the symmetric cross-branch merge, `nullable` the
|
|
82
|
+
* OR of both inputs, `collationName`/`collationSource` the comparison-lattice
|
|
83
|
+
* resolution (both possibly `undefined` for the BINARY floor); the left
|
|
84
|
+
* operand's type stays the base for everything else (`isReadOnly`). Callers map
|
|
85
|
+
* this over the first `dataColumnCount()` attrs/columns, preserving attribute
|
|
86
|
+
* ids (only the type changes) so ORDER BY / an enclosing view still resolve and
|
|
87
|
+
* a `withChildren` rebuild yields the same ids.
|
|
69
88
|
*/
|
|
70
89
|
private resolvedDataType;
|
|
71
90
|
/** True when this set operation exposes its OWN membership flags. */
|
|
@@ -138,7 +157,40 @@ export declare class SetOperationNode extends PlanNode implements BinaryRelation
|
|
|
138
157
|
*/
|
|
139
158
|
private membershipLineage;
|
|
140
159
|
withChildren(newChildren: readonly PlanNode[]): PlanNode;
|
|
160
|
+
/**
|
|
161
|
+
* Build a `SetOperationNode` over operands ALIGNED to the cross-branch merged
|
|
162
|
+
* column types ({@link alignSetOpOperands}) — the construction path every
|
|
163
|
+
* builder should use. Alignment is what lets the node advertise a concrete
|
|
164
|
+
* merged type for a rule-4 pair (JSON ∪ TEXT): the non-object branch is
|
|
165
|
+
* wrapped so it actually produces the merged type, after which both branches
|
|
166
|
+
* agree and every consumer (DML write pass, dedup comparator, predicate
|
|
167
|
+
* coercion) reads an honest type. Idempotent — aligned operands re-align to
|
|
168
|
+
* themselves — so `withChildren` routes through here safely.
|
|
169
|
+
*/
|
|
170
|
+
static create(scope: Scope, left: RelationalPlanNode, right: RelationalPlanNode, op: 'union' | 'unionAll' | 'intersect' | 'except', membership?: readonly SetOpMembershipSpec[]): SetOperationNode;
|
|
141
171
|
toString(): string;
|
|
142
172
|
getLogicalAttributes(): Record<string, unknown>;
|
|
143
173
|
}
|
|
174
|
+
/**
|
|
175
|
+
* Align two set-operation operands to their cross-branch merged column types:
|
|
176
|
+
* wherever the per-column merge requires converting one operand (rule 4 —
|
|
177
|
+
* object-physical vs other, `mergeSetOpColumnType().convert`), wrap that operand
|
|
178
|
+
* in a projection that CASTs the column to the merged type (lenient — a value
|
|
179
|
+
* that does not parse falls back through `castFallback` rather than throwing, so
|
|
180
|
+
* `select j from src union all select 'not json'` stays total). All other merge
|
|
181
|
+
* outcomes (identical, NULL, numeric promotion, ANY) require no conversion and
|
|
182
|
+
* leave both operands untouched.
|
|
183
|
+
*
|
|
184
|
+
* A DIFF builder must call this ONCE on the original operands before expanding
|
|
185
|
+
* to `(A except B) union (B except A)`, so both inner nodes see the same aligned
|
|
186
|
+
* pair; the subsequent {@link SetOperationNode.create} calls then re-align to a
|
|
187
|
+
* no-op (identical types).
|
|
188
|
+
*
|
|
189
|
+
* A flag-surfacing operand (a flagged set operation, or a flag-less one over a
|
|
190
|
+
* flagged operand) is never wrapped: a `ProjectNode` would flatten its surfaced
|
|
191
|
+
* flag columns into the data arity `dataArity` recursively derives, breaking the
|
|
192
|
+
* enclosing node's data/flag split. Such a pair stays unconverted and the node
|
|
193
|
+
* honestly advertises ANY for the affected column (`mergeSetOpAdvertisedType`).
|
|
194
|
+
*/
|
|
195
|
+
export declare function alignSetOpOperands(scope: Scope, left: RelationalPlanNode, right: RelationalPlanNode): [RelationalPlanNode, RelationalPlanNode];
|
|
144
196
|
//# sourceMappingURL=set-operation-node.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set-operation-node.d.ts","sourceRoot":"","sources":["../../../../src/planner/nodes/set-operation-node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,oBAAoB,EAAE,kBAAkB,EAAuE,MAAM,gBAAgB,CAAC;AACnL,OAAO,KAAK,EAAE,YAAY,EAA0C,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"set-operation-node.d.ts","sourceRoot":"","sources":["../../../../src/planner/nodes/set-operation-node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,oBAAoB,EAAE,kBAAkB,EAAuE,MAAM,gBAAgB,CAAC;AACnL,OAAO,KAAK,EAAE,YAAY,EAA0C,MAAM,0BAA0B,CAAC;AAIrG,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAwBhD;;;;;;;;GAQG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;CACnC;AAqBD,qBAAa,gBAAiB,SAAQ,QAAS,YAAW,oBAAoB;aAgB1D,IAAI,EAAE,kBAAkB;aACxB,KAAK,EAAE,kBAAkB;aACzB,EAAE,EAAE,OAAO,GAAG,UAAU,GAAG,WAAW,GAAG,QAAQ;IACjE;;;OAGG;aACa,UAAU,CAAC,EAAE,SAAS,mBAAmB,EAAE;IAtB7D,QAAQ,CAAC,QAAQ,6BAA6B;IAC9C,OAAO,CAAC,eAAe,CAA+B;IACtD;;;;;;;;OAQG;IACH,OAAO,CAAC,gBAAgB,CAAwC;gBAG9D,KAAK,EAAE,KAAK,EACI,IAAI,EAAE,kBAAkB,EACxB,KAAK,EAAE,kBAAkB,EACzB,EAAE,EAAE,OAAO,GAAG,UAAU,GAAG,WAAW,GAAG,QAAQ;IACjE;;;OAGG;IACa,UAAU,CAAC,EAAE,SAAS,mBAAmB,EAAE,YAAA;IAqB7D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACH,OAAO,CAAC,kBAAkB;IAsB1B;;;;;;;;;OASG;IACH,OAAO,CAAC,gBAAgB;IAWxB,qEAAqE;IACrE,IAAI,oBAAoB,IAAI,OAAO,CAElC;IAED;;;;;OAKG;IACH,IAAI,gBAAgB,IAAI,OAAO,CAE9B;IAED;;;;OAIG;IACH,eAAe,IAAI,MAAM;IAIzB,6FAA6F;IAC7F,OAAO,KAAK,aAAa,GAExB;IAED,8FAA8F;IAC9F,OAAO,KAAK,cAAc,GAEzB;IAED;;;;OAIG;IACH,OAAO,KAAK,WAAW,GAEtB;IAED;;;;;;;;OAQG;IACH,OAAO,CAAC,eAAe;IAoBvB,aAAa,IAAI,SAAS,SAAS,EAAE;IAIrC,OAAO,IAAI,YAAY;IAoCvB,WAAW,IAAI,SAAS,QAAQ,EAAE;IAIlC,YAAY,IAAI,SAAS,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAIjE,eAAe,CAAC,iBAAiB,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA6CrF;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IAarB,+EAA+E;IAC/E,OAAO,CAAC,iBAAiB;IASzB;;;;;;OAMG;IACH,OAAO,CAAC,0BAA0B;IAgBlC;;;;;;;;;;OAUG;IACH,OAAO,CAAC,iBAAiB;IAczB,YAAY,CAAC,WAAW,EAAE,SAAS,QAAQ,EAAE,GAAG,QAAQ;IAwCxD;;;;;;;;;OASG;IACH,MAAM,CAAC,MAAM,CACX,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,kBAAkB,EACxB,KAAK,EAAE,kBAAkB,EACzB,EAAE,EAAE,OAAO,GAAG,UAAU,GAAG,WAAW,GAAG,QAAQ,EACjD,UAAU,CAAC,EAAE,SAAS,mBAAmB,EAAE,GAC1C,gBAAgB;IAKV,QAAQ,IAAI,MAAM;IAIlB,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAOzD;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,kBAAkB,EACxB,KAAK,EAAE,kBAAkB,GACxB,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAgB1C"}
|
|
@@ -6,6 +6,10 @@ import { StatusCode } from '../../common/types.js';
|
|
|
6
6
|
import { EXISTENCE_FLAG_TYPE } from './join-utils.js';
|
|
7
7
|
import { superkeyToFd } from '../util/fd-utils.js';
|
|
8
8
|
import { resolveSetOpColumnCollation, collationConflictError } from '../analysis/comparison-collation.js';
|
|
9
|
+
import { mergeSetOpColumnType, mergeSetOpAdvertisedType } from '../analysis/set-op-type-merge.js';
|
|
10
|
+
import { ProjectNode } from './project-node.js';
|
|
11
|
+
import { ColumnReferenceNode } from './reference.js';
|
|
12
|
+
import { CastNode } from './scalar.js';
|
|
9
13
|
/**
|
|
10
14
|
* Recursive DATA (non-flag) arity of a set-operation operand. Flags are always
|
|
11
15
|
* appended after the data columns at every depth, so a `SetOperationNode`'s data
|
|
@@ -31,13 +35,15 @@ export class SetOperationNode extends PlanNode {
|
|
|
31
35
|
nodeType = PlanNodeType.SetOperation;
|
|
32
36
|
attributesCache;
|
|
33
37
|
/**
|
|
34
|
-
* Per-data-column
|
|
35
|
-
*
|
|
38
|
+
* Per-data-column output metadata resolved across BOTH inputs: the symmetric
|
|
39
|
+
* logical-type merge, OR-merged nullability, and the comparison-lattice
|
|
40
|
+
* collation (`set-operation-cross-input-collation-merge`). Cached so
|
|
36
41
|
* `buildAttributes` and `getType` read ONE result and cannot drift — the dedup
|
|
37
|
-
* comparator (which keys off the output attribute collation) and an
|
|
38
|
-
* ORDER BY (which keys off the output column collation) thus
|
|
42
|
+
* comparator (which keys off the output attribute type/collation) and an
|
|
43
|
+
* enclosing ORDER BY (which keys off the output column type/collation) thus
|
|
44
|
+
* stay in lockstep.
|
|
39
45
|
*/
|
|
40
|
-
|
|
46
|
+
dataColumnsCache;
|
|
41
47
|
constructor(scope, left, right, op,
|
|
42
48
|
/**
|
|
43
49
|
* Membership-flag columns appended after the data columns (read half:
|
|
@@ -64,12 +70,27 @@ export class SetOperationNode extends PlanNode {
|
|
|
64
70
|
}
|
|
65
71
|
// TODO: optionally check type compatibility (affinity)
|
|
66
72
|
this.attributesCache = new Cached(() => this.buildAttributes());
|
|
67
|
-
this.
|
|
73
|
+
this.dataColumnsCache = new Cached(() => this.resolveDataColumns());
|
|
68
74
|
}
|
|
69
75
|
/**
|
|
70
|
-
* Resolve each DATA column's
|
|
71
|
-
*
|
|
72
|
-
*
|
|
76
|
+
* Resolve each DATA column's cross-input output metadata:
|
|
77
|
+
*
|
|
78
|
+
* **Logical type** — the symmetric merge (`mergeSetOpAdvertisedType`): identical
|
|
79
|
+
* types keep theirs, NULL yields to the other side, differing builtin numerics
|
|
80
|
+
* merge to NUMERIC (whose `number | bigint` value space covers both branches
|
|
81
|
+
* unconverted), and an irreconcilable pair advertises ANY. A rule-4
|
|
82
|
+
* pair (object-physical vs other) also collapses to ANY *here*, because this
|
|
83
|
+
* node performs no conversion itself — {@link SetOperationNode.create} aligns
|
|
84
|
+
* such operands with a lenient CAST up front, so an aligned tree lands on the
|
|
85
|
+
* identical-types rule instead. Everything downstream (the DML write pass's
|
|
86
|
+
* `buildRowCoercion`, the dedup comparator, predicate coercion) trusts the
|
|
87
|
+
* advertised type, so it must describe BOTH branches' rows.
|
|
88
|
+
*
|
|
89
|
+
* **Nullability** — OR across the two inputs (a nullable right branch must not
|
|
90
|
+
* be masked by a NOT NULL left branch; same merge `AsyncGatherNode` applies).
|
|
91
|
+
*
|
|
92
|
+
* **Collation** — the shared comparison lattice (`resolveSetOpColumnCollation`).
|
|
93
|
+
* The conflict policy is keyed on set-ness:
|
|
73
94
|
* - DISTINCT operators (`union`/`intersect`/`except`, `op !== 'unionAll'`) DO
|
|
74
95
|
* dedup, so a same-rank explicit/declared name conflict is a plan-time error
|
|
75
96
|
* — the same one a spelled-out `l.c = r.c` would throw. Forced at build time
|
|
@@ -78,40 +99,52 @@ export class SetOperationNode extends PlanNode {
|
|
|
78
99
|
* - `union all` does NO dedup, so a conflict must NOT throw — it propagates no
|
|
79
100
|
* collation forward (BINARY-equivalent), exactly as `mergePropagatedCollation`
|
|
80
101
|
* swallows conflicts for `||` / CASE. Rows pass through unchanged (bag).
|
|
102
|
+
*
|
|
81
103
|
* Only the first `dataColumnCount()` columns are resolved; flag columns (appended
|
|
82
104
|
* after, `EXISTENCE_FLAG_TYPE`, no collation) are never touched.
|
|
83
105
|
*/
|
|
84
|
-
|
|
106
|
+
resolveDataColumns() {
|
|
85
107
|
const isSet = this.op !== 'unionAll';
|
|
86
108
|
const leftColumns = this.left.getType().columns;
|
|
87
109
|
const rightColumns = this.right.getType().columns;
|
|
88
110
|
const dataCount = this.dataColumnCount();
|
|
89
111
|
const resolved = [];
|
|
90
112
|
for (let i = 0; i < dataCount; i++) {
|
|
91
|
-
const
|
|
113
|
+
const leftType = leftColumns[i].type;
|
|
114
|
+
const rightType = rightColumns[i].type;
|
|
115
|
+
const logicalType = mergeSetOpAdvertisedType(leftType.logicalType, rightType.logicalType);
|
|
116
|
+
const nullable = leftType.nullable || rightType.nullable;
|
|
117
|
+
const res = resolveSetOpColumnCollation(leftType, rightType);
|
|
92
118
|
if (res.kind === 'conflict') {
|
|
93
119
|
if (isSet)
|
|
94
120
|
throw collationConflictError(res);
|
|
95
|
-
resolved.push({}); // union all: no comparison, carry no collation forward
|
|
121
|
+
resolved.push({ logicalType, nullable }); // union all: no comparison, carry no collation forward
|
|
96
122
|
}
|
|
97
123
|
else {
|
|
98
|
-
resolved.push({ collationName: res.collationName, collationSource: res.collationSource });
|
|
124
|
+
resolved.push({ logicalType, nullable, collationName: res.collationName, collationSource: res.collationSource });
|
|
99
125
|
}
|
|
100
126
|
}
|
|
101
127
|
return resolved;
|
|
102
128
|
}
|
|
103
129
|
/**
|
|
104
|
-
* Data column `i`'s `ScalarType` rebased onto the cross-input-resolved
|
|
105
|
-
*
|
|
106
|
-
*
|
|
107
|
-
*
|
|
108
|
-
*
|
|
109
|
-
*
|
|
110
|
-
*
|
|
130
|
+
* Data column `i`'s `ScalarType` rebased onto the cross-input-resolved output
|
|
131
|
+
* metadata: `logicalType` is the symmetric cross-branch merge, `nullable` the
|
|
132
|
+
* OR of both inputs, `collationName`/`collationSource` the comparison-lattice
|
|
133
|
+
* resolution (both possibly `undefined` for the BINARY floor); the left
|
|
134
|
+
* operand's type stays the base for everything else (`isReadOnly`). Callers map
|
|
135
|
+
* this over the first `dataColumnCount()` attrs/columns, preserving attribute
|
|
136
|
+
* ids (only the type changes) so ORDER BY / an enclosing view still resolve and
|
|
137
|
+
* a `withChildren` rebuild yields the same ids.
|
|
111
138
|
*/
|
|
112
139
|
resolvedDataType(baseType, i) {
|
|
113
|
-
const c = this.
|
|
114
|
-
return {
|
|
140
|
+
const c = this.dataColumnsCache.value[i];
|
|
141
|
+
return {
|
|
142
|
+
...baseType,
|
|
143
|
+
logicalType: c.logicalType,
|
|
144
|
+
nullable: c.nullable,
|
|
145
|
+
collationName: c.collationName,
|
|
146
|
+
collationSource: c.collationSource,
|
|
147
|
+
};
|
|
115
148
|
}
|
|
116
149
|
/** True when this set operation exposes its OWN membership flags. */
|
|
117
150
|
get hasMembershipColumns() {
|
|
@@ -359,10 +392,32 @@ export class SetOperationNode extends PlanNode {
|
|
|
359
392
|
if (newLeft === this.left && newRight === this.right) {
|
|
360
393
|
return this;
|
|
361
394
|
}
|
|
362
|
-
//
|
|
363
|
-
//
|
|
364
|
-
//
|
|
365
|
-
|
|
395
|
+
// Rebuild through the aligning factory so an optimizer rewrite that changed a
|
|
396
|
+
// branch's column types re-aligns (alignment is idempotent: already-aligned
|
|
397
|
+
// operands hit the identical-types merge rule and are not re-wrapped, so the
|
|
398
|
+
// ordinary type-preserving rewrite keeps the same children and attribute ids).
|
|
399
|
+
// The membership specs carry pre-minted stable attribute ids, so they are
|
|
400
|
+
// threaded verbatim (the appended flag columns survive the rebuild).
|
|
401
|
+
// NOTE: every optimizer rule is type-preserving today, so re-alignment here is
|
|
402
|
+
// always a no-op. If a rule ever hands back a child whose column TYPES changed,
|
|
403
|
+
// this wraps that child and mints fresh cast-column attribute ids mid-optimization
|
|
404
|
+
// — stale references above would then fail to resolve. Align before the rewrite
|
|
405
|
+
// (or re-publish the ids) if that day comes.
|
|
406
|
+
return SetOperationNode.create(this.scope, newLeft, newRight, this.op, this.membership);
|
|
407
|
+
}
|
|
408
|
+
/**
|
|
409
|
+
* Build a `SetOperationNode` over operands ALIGNED to the cross-branch merged
|
|
410
|
+
* column types ({@link alignSetOpOperands}) — the construction path every
|
|
411
|
+
* builder should use. Alignment is what lets the node advertise a concrete
|
|
412
|
+
* merged type for a rule-4 pair (JSON ∪ TEXT): the non-object branch is
|
|
413
|
+
* wrapped so it actually produces the merged type, after which both branches
|
|
414
|
+
* agree and every consumer (DML write pass, dedup comparator, predicate
|
|
415
|
+
* coercion) reads an honest type. Idempotent — aligned operands re-align to
|
|
416
|
+
* themselves — so `withChildren` routes through here safely.
|
|
417
|
+
*/
|
|
418
|
+
static create(scope, left, right, op, membership) {
|
|
419
|
+
const [alignedLeft, alignedRight] = alignSetOpOperands(scope, left, right);
|
|
420
|
+
return new SetOperationNode(scope, alignedLeft, alignedRight, op, membership);
|
|
366
421
|
}
|
|
367
422
|
toString() {
|
|
368
423
|
return `${this.op.toUpperCase()}(${this.left.id}, ${this.right.id})`;
|
|
@@ -375,4 +430,70 @@ export class SetOperationNode extends PlanNode {
|
|
|
375
430
|
return base;
|
|
376
431
|
}
|
|
377
432
|
}
|
|
433
|
+
/**
|
|
434
|
+
* Align two set-operation operands to their cross-branch merged column types:
|
|
435
|
+
* wherever the per-column merge requires converting one operand (rule 4 —
|
|
436
|
+
* object-physical vs other, `mergeSetOpColumnType().convert`), wrap that operand
|
|
437
|
+
* in a projection that CASTs the column to the merged type (lenient — a value
|
|
438
|
+
* that does not parse falls back through `castFallback` rather than throwing, so
|
|
439
|
+
* `select j from src union all select 'not json'` stays total). All other merge
|
|
440
|
+
* outcomes (identical, NULL, numeric promotion, ANY) require no conversion and
|
|
441
|
+
* leave both operands untouched.
|
|
442
|
+
*
|
|
443
|
+
* A DIFF builder must call this ONCE on the original operands before expanding
|
|
444
|
+
* to `(A except B) union (B except A)`, so both inner nodes see the same aligned
|
|
445
|
+
* pair; the subsequent {@link SetOperationNode.create} calls then re-align to a
|
|
446
|
+
* no-op (identical types).
|
|
447
|
+
*
|
|
448
|
+
* A flag-surfacing operand (a flagged set operation, or a flag-less one over a
|
|
449
|
+
* flagged operand) is never wrapped: a `ProjectNode` would flatten its surfaced
|
|
450
|
+
* flag columns into the data arity `dataArity` recursively derives, breaking the
|
|
451
|
+
* enclosing node's data/flag split. Such a pair stays unconverted and the node
|
|
452
|
+
* honestly advertises ANY for the affected column (`mergeSetOpAdvertisedType`).
|
|
453
|
+
*/
|
|
454
|
+
export function alignSetOpOperands(scope, left, right) {
|
|
455
|
+
// Align only the shared data prefix; a data-arity mismatch is left for the
|
|
456
|
+
// SetOperationNode constructor's error.
|
|
457
|
+
const dataCount = Math.min(dataArity(left), dataArity(right));
|
|
458
|
+
const leftColumns = left.getType().columns;
|
|
459
|
+
const rightColumns = right.getType().columns;
|
|
460
|
+
const leftCasts = new Map();
|
|
461
|
+
const rightCasts = new Map();
|
|
462
|
+
for (let i = 0; i < dataCount; i++) {
|
|
463
|
+
const merged = mergeSetOpColumnType(leftColumns[i].type.logicalType, rightColumns[i].type.logicalType);
|
|
464
|
+
if (merged.convert === 'left')
|
|
465
|
+
leftCasts.set(i, merged.logicalType);
|
|
466
|
+
else if (merged.convert === 'right')
|
|
467
|
+
rightCasts.set(i, merged.logicalType);
|
|
468
|
+
}
|
|
469
|
+
const alignedLeft = leftCasts.size > 0 && flagCount(left) === 0 ? castColumns(scope, left, leftCasts) : left;
|
|
470
|
+
const alignedRight = rightCasts.size > 0 && flagCount(right) === 0 ? castColumns(scope, right, rightCasts) : right;
|
|
471
|
+
return [alignedLeft, alignedRight];
|
|
472
|
+
}
|
|
473
|
+
/**
|
|
474
|
+
* Wrap `branch` in a `ProjectNode` that CASTs the columns in `casts` to their
|
|
475
|
+
* target logical types and passes every other column through verbatim. A
|
|
476
|
+
* passed-through column keeps its attribute id (an explicit `attributeId` on a
|
|
477
|
+
* bare column-reference projection); a cast column mints a fresh id — its values
|
|
478
|
+
* change, so reusing the source id would let a predicate be pushed below the
|
|
479
|
+
* conversion. Only called for flag-less branches (see {@link alignSetOpOperands}),
|
|
480
|
+
* so every projected column is a data column.
|
|
481
|
+
*/
|
|
482
|
+
function castColumns(scope, branch, casts) {
|
|
483
|
+
const attrs = branch.getAttributes();
|
|
484
|
+
const projections = attrs.map((attr, i) => {
|
|
485
|
+
const columnExpr = { type: 'column', name: attr.name };
|
|
486
|
+
const columnRef = new ColumnReferenceNode(scope, columnExpr, attr.type, attr.id, i);
|
|
487
|
+
const target = casts.get(i);
|
|
488
|
+
if (!target) {
|
|
489
|
+
return { node: columnRef, alias: attr.name, attributeId: attr.id };
|
|
490
|
+
}
|
|
491
|
+
// `CastNode` resolves the target through the registry by name; rule-4 targets
|
|
492
|
+
// are registered types (JSON today), so the name round-trips to the same
|
|
493
|
+
// logical-type instance.
|
|
494
|
+
const castExpr = { type: 'cast', expr: columnExpr, targetType: target.name };
|
|
495
|
+
return { node: new CastNode(scope, castExpr, columnRef), alias: attr.name, attributeId: PlanNode.nextAttrId() };
|
|
496
|
+
});
|
|
497
|
+
return new ProjectNode(scope, branch, projections);
|
|
498
|
+
}
|
|
378
499
|
//# sourceMappingURL=set-operation-node.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set-operation-node.js","sourceRoot":"","sources":["../../../../src/planner/nodes/set-operation-node.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"set-operation-node.js","sourceRoot":"","sources":["../../../../src/planner/nodes/set-operation-node.ts"],"names":[],"mappings":"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"}
|
|
@@ -78,13 +78,31 @@ export declare class IndexScanNode extends TableAccessNode {
|
|
|
78
78
|
readonly rangeBoundedOn?: PhysicalProperties['rangeBoundedOn'];
|
|
79
79
|
/** When true, suppress the lifted `monotonicOn` advertisement (defensive escalation). */
|
|
80
80
|
readonly suppressMonotonic: boolean;
|
|
81
|
+
/**
|
|
82
|
+
* True when a SortNode was dropped on the strength of this scan's
|
|
83
|
+
* `providesOrdering` (sort absorption in `rule-grow-retrieve`): the
|
|
84
|
+
* scan's emission order is the only thing producing the requested
|
|
85
|
+
* ORDER BY. Rewrites that change this leaf's emission order
|
|
86
|
+
* (`rule-key-set-seek`) must decline. False for a vacuously-advertised
|
|
87
|
+
* ordering nothing consumed.
|
|
88
|
+
*/
|
|
89
|
+
readonly orderingLoadBearing: boolean;
|
|
81
90
|
readonly nodeType = PlanNodeType.IndexScan;
|
|
82
91
|
constructor(scope: Scope, source: TableReferenceNode, filterInfo: FilterInfo, indexName: string, providesOrdering?: {
|
|
83
92
|
column: number;
|
|
84
93
|
desc: boolean;
|
|
85
94
|
}[] | undefined, estimatedCostOverride?: number, advertisement?: AccessPathAdvertisement | undefined, rangeBoundedOn?: PhysicalProperties['rangeBoundedOn'],
|
|
86
95
|
/** When true, suppress the lifted `monotonicOn` advertisement (defensive escalation). */
|
|
87
|
-
suppressMonotonic?: boolean
|
|
96
|
+
suppressMonotonic?: boolean,
|
|
97
|
+
/**
|
|
98
|
+
* True when a SortNode was dropped on the strength of this scan's
|
|
99
|
+
* `providesOrdering` (sort absorption in `rule-grow-retrieve`): the
|
|
100
|
+
* scan's emission order is the only thing producing the requested
|
|
101
|
+
* ORDER BY. Rewrites that change this leaf's emission order
|
|
102
|
+
* (`rule-key-set-seek`) must decline. False for a vacuously-advertised
|
|
103
|
+
* ordering nothing consumed.
|
|
104
|
+
*/
|
|
105
|
+
orderingLoadBearing?: boolean);
|
|
88
106
|
getAccessMethod(): 'index-scan';
|
|
89
107
|
computePhysical(childrenPhysical: PhysicalProperties[]): Partial<PhysicalProperties>;
|
|
90
108
|
toString(): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-access-nodes.d.ts","sourceRoot":"","sources":["../../../../src/planner/nodes/table-access-nodes.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"table-access-nodes.d.ts","sourceRoot":"","sources":["../../../../src/planner/nodes/table-access-nodes.ts"],"names":[],"mappings":"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"}
|
|
@@ -176,16 +176,27 @@ export class IndexScanNode extends TableAccessNode {
|
|
|
176
176
|
advertisement;
|
|
177
177
|
rangeBoundedOn;
|
|
178
178
|
suppressMonotonic;
|
|
179
|
+
orderingLoadBearing;
|
|
179
180
|
nodeType = PlanNodeType.IndexScan;
|
|
180
181
|
constructor(scope, source, filterInfo, indexName, providesOrdering, estimatedCostOverride, advertisement, rangeBoundedOn,
|
|
181
182
|
/** When true, suppress the lifted `monotonicOn` advertisement (defensive escalation). */
|
|
182
|
-
suppressMonotonic = false
|
|
183
|
+
suppressMonotonic = false,
|
|
184
|
+
/**
|
|
185
|
+
* True when a SortNode was dropped on the strength of this scan's
|
|
186
|
+
* `providesOrdering` (sort absorption in `rule-grow-retrieve`): the
|
|
187
|
+
* scan's emission order is the only thing producing the requested
|
|
188
|
+
* ORDER BY. Rewrites that change this leaf's emission order
|
|
189
|
+
* (`rule-key-set-seek`) must decline. False for a vacuously-advertised
|
|
190
|
+
* ordering nothing consumed.
|
|
191
|
+
*/
|
|
192
|
+
orderingLoadBearing = false) {
|
|
183
193
|
super(scope, source, filterInfo, estimatedCostOverride);
|
|
184
194
|
this.indexName = indexName;
|
|
185
195
|
this.providesOrdering = providesOrdering;
|
|
186
196
|
this.advertisement = advertisement;
|
|
187
197
|
this.rangeBoundedOn = rangeBoundedOn;
|
|
188
198
|
this.suppressMonotonic = suppressMonotonic;
|
|
199
|
+
this.orderingLoadBearing = orderingLoadBearing;
|
|
189
200
|
}
|
|
190
201
|
getAccessMethod() {
|
|
191
202
|
return 'index-scan';
|
|
@@ -244,7 +255,7 @@ export class IndexScanNode extends TableAccessNode {
|
|
|
244
255
|
return this;
|
|
245
256
|
}
|
|
246
257
|
// Create new instance
|
|
247
|
-
return new IndexScanNode(this.scope, newSource, this.filterInfo, this.indexName, this.providesOrdering, undefined, this.advertisement, this.rangeBoundedOn, this.suppressMonotonic);
|
|
258
|
+
return new IndexScanNode(this.scope, newSource, this.filterInfo, this.indexName, this.providesOrdering, undefined, this.advertisement, this.rangeBoundedOn, this.suppressMonotonic, this.orderingLoadBearing);
|
|
248
259
|
}
|
|
249
260
|
}
|
|
250
261
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-access-nodes.js","sourceRoot":"","sources":["../../../../src/planner/nodes/table-access-nodes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"table-access-nodes.js","sourceRoot":"","sources":["../../../../src/planner/nodes/table-access-nodes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"optimizer.d.ts","sourceRoot":"","sources":["../../../src/planner/optimizer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGxE,OAAO,EAAE,cAAc,EAAE,CAAC;AAG1B,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"optimizer.d.ts","sourceRoot":"","sources":["../../../src/planner/optimizer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGxE,OAAO,EAAE,cAAc,EAAE,CAAC;AAG1B,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAgEjF,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAI/C;;;;;;;;;;GAUG;AACH,MAAM,WAAW,iBAAiB;IACjC,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,EAAE,EAAE,MAAM,CAAC;IACX,wEAAwE;IACxE,QAAQ,EAAE,YAAY,GAAG,YAAY,EAAE,CAAC;IACxC,KAAK,EAAE,SAAS,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,EAAE,cAAc,CAAC;CAC/B;AAgiCD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gBAAgB,CAC/B,QAAQ,EAAE,SAAS,iBAAiB,EAAE,EACtC,WAAW,EAAE,WAAW,GACtB,IAAI,CA0CN;AAED;;GAEG;AACH,qBAAa,SAAS;IACrB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgB;IACtC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,OAAO,CAAC,eAAe,CAAqC;IACrD,MAAM,EAAE,eAAe,CAAC;gBAG9B,MAAM,GAAE,eAAgC,EACxC,KAAK,CAAC,EAAE,aAAa;IAUtB,YAAY,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI;IAI3C;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;IAI7B;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,GAAG,QAAQ;IAgChD;;;OAGG;IACH,mBAAmB,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,GAAG,QAAQ;IAe3D;;OAEG;IACH,QAAQ,IAAI,aAAa;IAIzB,qDAAqD;IACrD,kBAAkB,IAAI,oBAAoB,GAAG,IAAI;CAGjD"}
|