@quereus/quereus 4.4.1 → 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.
Files changed (265) hide show
  1. package/README.md +1 -1
  2. package/dist/src/core/database-materialized-views-analysis.d.ts.map +1 -1
  3. package/dist/src/core/database-materialized-views-analysis.js +1 -0
  4. package/dist/src/core/database-materialized-views-analysis.js.map +1 -1
  5. package/dist/src/func/builtins/scalar.d.ts.map +1 -1
  6. package/dist/src/func/builtins/scalar.js +92 -3
  7. package/dist/src/func/builtins/scalar.js.map +1 -1
  8. package/dist/src/func/registration.d.ts +4 -0
  9. package/dist/src/func/registration.d.ts.map +1 -1
  10. package/dist/src/func/registration.js +1 -0
  11. package/dist/src/func/registration.js.map +1 -1
  12. package/dist/src/index.d.ts +3 -3
  13. package/dist/src/index.d.ts.map +1 -1
  14. package/dist/src/index.js +2 -2
  15. package/dist/src/index.js.map +1 -1
  16. package/dist/src/planner/analysis/coarsened-key.d.ts +4 -3
  17. package/dist/src/planner/analysis/coarsened-key.d.ts.map +1 -1
  18. package/dist/src/planner/analysis/coarsened-key.js +37 -3
  19. package/dist/src/planner/analysis/coarsened-key.js.map +1 -1
  20. package/dist/src/planner/analysis/comparison-collation.d.ts +33 -3
  21. package/dist/src/planner/analysis/comparison-collation.d.ts.map +1 -1
  22. package/dist/src/planner/analysis/comparison-collation.js +36 -2
  23. package/dist/src/planner/analysis/comparison-collation.js.map +1 -1
  24. package/dist/src/planner/analysis/coverage-prover.d.ts +13 -2
  25. package/dist/src/planner/analysis/coverage-prover.d.ts.map +1 -1
  26. package/dist/src/planner/analysis/coverage-prover.js +10 -14
  27. package/dist/src/planner/analysis/coverage-prover.js.map +1 -1
  28. package/dist/src/planner/analysis/predicate-conjuncts.d.ts +10 -4
  29. package/dist/src/planner/analysis/predicate-conjuncts.d.ts.map +1 -1
  30. package/dist/src/planner/analysis/predicate-conjuncts.js +28 -7
  31. package/dist/src/planner/analysis/predicate-conjuncts.js.map +1 -1
  32. package/dist/src/planner/analysis/query-rewrite-matcher.d.ts.map +1 -1
  33. package/dist/src/planner/analysis/query-rewrite-matcher.js +8 -27
  34. package/dist/src/planner/analysis/query-rewrite-matcher.js.map +1 -1
  35. package/dist/src/planner/analysis/scalar-subqueries.d.ts +22 -3
  36. package/dist/src/planner/analysis/scalar-subqueries.d.ts.map +1 -1
  37. package/dist/src/planner/analysis/scalar-subqueries.js +32 -3
  38. package/dist/src/planner/analysis/scalar-subqueries.js.map +1 -1
  39. package/dist/src/planner/analysis/set-op-type-merge.d.ts +64 -0
  40. package/dist/src/planner/analysis/set-op-type-merge.d.ts.map +1 -0
  41. package/dist/src/planner/analysis/set-op-type-merge.js +97 -0
  42. package/dist/src/planner/analysis/set-op-type-merge.js.map +1 -0
  43. package/dist/src/planner/building/coercion.d.ts +78 -0
  44. package/dist/src/planner/building/coercion.d.ts.map +1 -0
  45. package/dist/src/planner/building/coercion.js +137 -0
  46. package/dist/src/planner/building/coercion.js.map +1 -0
  47. package/dist/src/planner/building/constraint-builder.d.ts.map +1 -1
  48. package/dist/src/planner/building/constraint-builder.js +5 -18
  49. package/dist/src/planner/building/constraint-builder.js.map +1 -1
  50. package/dist/src/planner/building/expression.d.ts.map +1 -1
  51. package/dist/src/planner/building/expression.js +1 -104
  52. package/dist/src/planner/building/expression.js.map +1 -1
  53. package/dist/src/planner/building/function-call.d.ts.map +1 -1
  54. package/dist/src/planner/building/function-call.js +8 -0
  55. package/dist/src/planner/building/function-call.js.map +1 -1
  56. package/dist/src/planner/building/select-compound.d.ts.map +1 -1
  57. package/dist/src/planner/building/select-compound.js +10 -6
  58. package/dist/src/planner/building/select-compound.js.map +1 -1
  59. package/dist/src/planner/cost/conjunct-cost.d.ts +42 -0
  60. package/dist/src/planner/cost/conjunct-cost.d.ts.map +1 -0
  61. package/dist/src/planner/cost/conjunct-cost.js +62 -0
  62. package/dist/src/planner/cost/conjunct-cost.js.map +1 -0
  63. package/dist/src/planner/mutation/propagate.d.ts.map +1 -1
  64. package/dist/src/planner/mutation/propagate.js +1 -0
  65. package/dist/src/planner/mutation/propagate.js.map +1 -1
  66. package/dist/src/planner/nodes/async-gather-node.d.ts.map +1 -1
  67. package/dist/src/planner/nodes/async-gather-node.js +19 -8
  68. package/dist/src/planner/nodes/async-gather-node.js.map +1 -1
  69. package/dist/src/planner/nodes/bloom-join-node.d.ts +2 -0
  70. package/dist/src/planner/nodes/bloom-join-node.d.ts.map +1 -1
  71. package/dist/src/planner/nodes/bloom-join-node.js +10 -5
  72. package/dist/src/planner/nodes/bloom-join-node.js.map +1 -1
  73. package/dist/src/planner/nodes/join-node.d.ts +5 -0
  74. package/dist/src/planner/nodes/join-node.d.ts.map +1 -1
  75. package/dist/src/planner/nodes/join-node.js +8 -1
  76. package/dist/src/planner/nodes/join-node.js.map +1 -1
  77. package/dist/src/planner/nodes/join-utils.d.ts +57 -0
  78. package/dist/src/planner/nodes/join-utils.d.ts.map +1 -1
  79. package/dist/src/planner/nodes/join-utils.js +47 -0
  80. package/dist/src/planner/nodes/join-utils.js.map +1 -1
  81. package/dist/src/planner/nodes/key-set-semi-join-node.d.ts +87 -0
  82. package/dist/src/planner/nodes/key-set-semi-join-node.d.ts.map +1 -0
  83. package/dist/src/planner/nodes/key-set-semi-join-node.js +137 -0
  84. package/dist/src/planner/nodes/key-set-semi-join-node.js.map +1 -0
  85. package/dist/src/planner/nodes/merge-join-node.d.ts +2 -0
  86. package/dist/src/planner/nodes/merge-join-node.d.ts.map +1 -1
  87. package/dist/src/planner/nodes/merge-join-node.js +14 -6
  88. package/dist/src/planner/nodes/merge-join-node.js.map +1 -1
  89. package/dist/src/planner/nodes/plan-node-type.d.ts +1 -0
  90. package/dist/src/planner/nodes/plan-node-type.d.ts.map +1 -1
  91. package/dist/src/planner/nodes/plan-node-type.js +1 -0
  92. package/dist/src/planner/nodes/plan-node-type.js.map +1 -1
  93. package/dist/src/planner/nodes/set-operation-node.d.ts +68 -16
  94. package/dist/src/planner/nodes/set-operation-node.d.ts.map +1 -1
  95. package/dist/src/planner/nodes/set-operation-node.js +147 -26
  96. package/dist/src/planner/nodes/set-operation-node.js.map +1 -1
  97. package/dist/src/planner/nodes/table-access-nodes.d.ts +19 -1
  98. package/dist/src/planner/nodes/table-access-nodes.d.ts.map +1 -1
  99. package/dist/src/planner/nodes/table-access-nodes.js +13 -2
  100. package/dist/src/planner/nodes/table-access-nodes.js.map +1 -1
  101. package/dist/src/planner/optimizer.d.ts.map +1 -1
  102. package/dist/src/planner/optimizer.js +49 -0
  103. package/dist/src/planner/optimizer.js.map +1 -1
  104. package/dist/src/planner/rules/access/rule-key-set-seek.d.ts +68 -0
  105. package/dist/src/planner/rules/access/rule-key-set-seek.d.ts.map +1 -0
  106. package/dist/src/planner/rules/access/rule-key-set-seek.js +408 -0
  107. package/dist/src/planner/rules/access/rule-key-set-seek.js.map +1 -0
  108. package/dist/src/planner/rules/access/rule-monotonic-range-access.d.ts.map +1 -1
  109. package/dist/src/planner/rules/access/rule-monotonic-range-access.js +2 -2
  110. package/dist/src/planner/rules/access/rule-monotonic-range-access.js.map +1 -1
  111. package/dist/src/planner/rules/access/rule-select-access-path.d.ts +27 -0
  112. package/dist/src/planner/rules/access/rule-select-access-path.d.ts.map +1 -1
  113. package/dist/src/planner/rules/access/rule-select-access-path.js +31 -11
  114. package/dist/src/planner/rules/access/rule-select-access-path.js.map +1 -1
  115. package/dist/src/planner/rules/join/equi-pair-extractor.d.ts +67 -41
  116. package/dist/src/planner/rules/join/equi-pair-extractor.d.ts.map +1 -1
  117. package/dist/src/planner/rules/join/equi-pair-extractor.js +72 -36
  118. package/dist/src/planner/rules/join/equi-pair-extractor.js.map +1 -1
  119. package/dist/src/planner/rules/join/rule-join-physical-selection.d.ts.map +1 -1
  120. package/dist/src/planner/rules/join/rule-join-physical-selection.js +14 -2
  121. package/dist/src/planner/rules/join/rule-join-physical-selection.js.map +1 -1
  122. package/dist/src/planner/rules/join/rule-monotonic-merge-join.d.ts.map +1 -1
  123. package/dist/src/planner/rules/join/rule-monotonic-merge-join.js +11 -1
  124. package/dist/src/planner/rules/join/rule-monotonic-merge-join.js.map +1 -1
  125. package/dist/src/planner/rules/predicate/rule-empty-relation-folding.d.ts +1 -1
  126. package/dist/src/planner/rules/predicate/rule-empty-relation-folding.js +1 -1
  127. package/dist/src/planner/rules/predicate/rule-filter-conjunct-ordering.d.ts +30 -0
  128. package/dist/src/planner/rules/predicate/rule-filter-conjunct-ordering.d.ts.map +1 -0
  129. package/dist/src/planner/rules/predicate/rule-filter-conjunct-ordering.js +63 -0
  130. package/dist/src/planner/rules/predicate/rule-filter-conjunct-ordering.js.map +1 -0
  131. package/dist/src/planner/rules/predicate/rule-filter-selectivity.d.ts +17 -1
  132. package/dist/src/planner/rules/predicate/rule-filter-selectivity.d.ts.map +1 -1
  133. package/dist/src/planner/rules/predicate/rule-filter-selectivity.js +206 -12
  134. package/dist/src/planner/rules/predicate/rule-filter-selectivity.js.map +1 -1
  135. package/dist/src/planner/rules/predicate/rule-predicate-pushdown.d.ts +3 -1
  136. package/dist/src/planner/rules/predicate/rule-predicate-pushdown.d.ts.map +1 -1
  137. package/dist/src/planner/rules/predicate/rule-predicate-pushdown.js +13 -1
  138. package/dist/src/planner/rules/predicate/rule-predicate-pushdown.js.map +1 -1
  139. package/dist/src/planner/rules/retrieve/rule-grow-retrieve.d.ts.map +1 -1
  140. package/dist/src/planner/rules/retrieve/rule-grow-retrieve.js +18 -3
  141. package/dist/src/planner/rules/retrieve/rule-grow-retrieve.js.map +1 -1
  142. package/dist/src/planner/rules/shared/index-style-context.d.ts +17 -0
  143. package/dist/src/planner/rules/shared/index-style-context.d.ts.map +1 -1
  144. package/dist/src/planner/rules/shared/index-style-context.js +7 -0
  145. package/dist/src/planner/rules/shared/index-style-context.js.map +1 -1
  146. package/dist/src/planner/rules/subquery/rule-subquery-decorrelation.d.ts +24 -6
  147. package/dist/src/planner/rules/subquery/rule-subquery-decorrelation.d.ts.map +1 -1
  148. package/dist/src/planner/rules/subquery/rule-subquery-decorrelation.js +175 -60
  149. package/dist/src/planner/rules/subquery/rule-subquery-decorrelation.js.map +1 -1
  150. package/dist/src/planner/stats/catalog-stats.d.ts +52 -0
  151. package/dist/src/planner/stats/catalog-stats.d.ts.map +1 -1
  152. package/dist/src/planner/stats/catalog-stats.js +151 -5
  153. package/dist/src/planner/stats/catalog-stats.js.map +1 -1
  154. package/dist/src/planner/stats/index.d.ts +15 -0
  155. package/dist/src/planner/stats/index.d.ts.map +1 -1
  156. package/dist/src/planner/stats/index.js.map +1 -1
  157. package/dist/src/planner/stats/selectivity-combine.d.ts +53 -0
  158. package/dist/src/planner/stats/selectivity-combine.d.ts.map +1 -0
  159. package/dist/src/planner/stats/selectivity-combine.js +75 -0
  160. package/dist/src/planner/stats/selectivity-combine.js.map +1 -0
  161. package/dist/src/planner/util/column-origins.d.ts +58 -0
  162. package/dist/src/planner/util/column-origins.d.ts.map +1 -0
  163. package/dist/src/planner/util/column-origins.js +90 -0
  164. package/dist/src/planner/util/column-origins.js.map +1 -0
  165. package/dist/src/runtime/deferred-constraint-queue.d.ts +40 -0
  166. package/dist/src/runtime/deferred-constraint-queue.d.ts.map +1 -1
  167. package/dist/src/runtime/deferred-constraint-queue.js +90 -9
  168. package/dist/src/runtime/deferred-constraint-queue.js.map +1 -1
  169. package/dist/src/runtime/emit/alter-table.d.ts.map +1 -1
  170. package/dist/src/runtime/emit/alter-table.js +6 -0
  171. package/dist/src/runtime/emit/alter-table.js.map +1 -1
  172. package/dist/src/runtime/emit/asof-scan.d.ts.map +1 -1
  173. package/dist/src/runtime/emit/asof-scan.js +8 -3
  174. package/dist/src/runtime/emit/asof-scan.js.map +1 -1
  175. package/dist/src/runtime/emit/between.d.ts.map +1 -1
  176. package/dist/src/runtime/emit/between.js +4 -38
  177. package/dist/src/runtime/emit/between.js.map +1 -1
  178. package/dist/src/runtime/emit/binary.d.ts.map +1 -1
  179. package/dist/src/runtime/emit/binary.js +2 -23
  180. package/dist/src/runtime/emit/binary.js.map +1 -1
  181. package/dist/src/runtime/emit/bloom-join.d.ts.map +1 -1
  182. package/dist/src/runtime/emit/bloom-join.js +6 -35
  183. package/dist/src/runtime/emit/bloom-join.js.map +1 -1
  184. package/dist/src/runtime/emit/case.d.ts.map +1 -1
  185. package/dist/src/runtime/emit/case.js +40 -6
  186. package/dist/src/runtime/emit/case.js.map +1 -1
  187. package/dist/src/runtime/emit/constraint-check.d.ts.map +1 -1
  188. package/dist/src/runtime/emit/constraint-check.js +32 -8
  189. package/dist/src/runtime/emit/constraint-check.js.map +1 -1
  190. package/dist/src/runtime/emit/dml-executor.d.ts.map +1 -1
  191. package/dist/src/runtime/emit/dml-executor.js +26 -23
  192. package/dist/src/runtime/emit/dml-executor.js.map +1 -1
  193. package/dist/src/runtime/emit/filter.d.ts +18 -0
  194. package/dist/src/runtime/emit/filter.d.ts.map +1 -1
  195. package/dist/src/runtime/emit/filter.js +52 -10
  196. package/dist/src/runtime/emit/filter.js.map +1 -1
  197. package/dist/src/runtime/emit/join-key-extractor.d.ts +46 -0
  198. package/dist/src/runtime/emit/join-key-extractor.d.ts.map +1 -0
  199. package/dist/src/runtime/emit/join-key-extractor.js +60 -0
  200. package/dist/src/runtime/emit/join-key-extractor.js.map +1 -0
  201. package/dist/src/runtime/emit/join.d.ts.map +1 -1
  202. package/dist/src/runtime/emit/join.js +36 -15
  203. package/dist/src/runtime/emit/join.js.map +1 -1
  204. package/dist/src/runtime/emit/key-set-semi-join.d.ts +29 -0
  205. package/dist/src/runtime/emit/key-set-semi-join.d.ts.map +1 -0
  206. package/dist/src/runtime/emit/key-set-semi-join.js +143 -0
  207. package/dist/src/runtime/emit/key-set-semi-join.js.map +1 -0
  208. package/dist/src/runtime/emit/merge-join.d.ts.map +1 -1
  209. package/dist/src/runtime/emit/merge-join.js +15 -8
  210. package/dist/src/runtime/emit/merge-join.js.map +1 -1
  211. package/dist/src/runtime/emit/operand-comparator.d.ts +40 -0
  212. package/dist/src/runtime/emit/operand-comparator.d.ts.map +1 -0
  213. package/dist/src/runtime/emit/operand-comparator.js +59 -0
  214. package/dist/src/runtime/emit/operand-comparator.js.map +1 -0
  215. package/dist/src/runtime/emit/scan.d.ts.map +1 -1
  216. package/dist/src/runtime/emit/scan.js +11 -2
  217. package/dist/src/runtime/emit/scan.js.map +1 -1
  218. package/dist/src/runtime/parallel-driver.d.ts +5 -2
  219. package/dist/src/runtime/parallel-driver.d.ts.map +1 -1
  220. package/dist/src/runtime/parallel-driver.js +6 -2
  221. package/dist/src/runtime/parallel-driver.js.map +1 -1
  222. package/dist/src/runtime/register.d.ts.map +1 -1
  223. package/dist/src/runtime/register.js +2 -0
  224. package/dist/src/runtime/register.js.map +1 -1
  225. package/dist/src/runtime/types.d.ts +7 -0
  226. package/dist/src/runtime/types.d.ts.map +1 -1
  227. package/dist/src/runtime/types.js.map +1 -1
  228. package/dist/src/schema/function.d.ts +9 -0
  229. package/dist/src/schema/function.d.ts.map +1 -1
  230. package/dist/src/schema/function.js.map +1 -1
  231. package/dist/src/types/builtin-types.d.ts.map +1 -1
  232. package/dist/src/types/builtin-types.js +30 -4
  233. package/dist/src/types/builtin-types.js.map +1 -1
  234. package/dist/src/util/comparison.d.ts +25 -0
  235. package/dist/src/util/comparison.d.ts.map +1 -1
  236. package/dist/src/util/comparison.js +31 -0
  237. package/dist/src/util/comparison.js.map +1 -1
  238. package/dist/src/vtab/best-access-plan.d.ts +87 -0
  239. package/dist/src/vtab/best-access-plan.d.ts.map +1 -1
  240. package/dist/src/vtab/best-access-plan.js +87 -0
  241. package/dist/src/vtab/best-access-plan.js.map +1 -1
  242. package/dist/src/vtab/memory/layer/base.d.ts +6 -4
  243. package/dist/src/vtab/memory/layer/base.d.ts.map +1 -1
  244. package/dist/src/vtab/memory/layer/base.js +6 -4
  245. package/dist/src/vtab/memory/layer/base.js.map +1 -1
  246. package/dist/src/vtab/memory/layer/manager.d.ts +60 -18
  247. package/dist/src/vtab/memory/layer/manager.d.ts.map +1 -1
  248. package/dist/src/vtab/memory/layer/manager.js +100 -39
  249. package/dist/src/vtab/memory/layer/manager.js.map +1 -1
  250. package/dist/src/vtab/memory/layer/transaction.d.ts +15 -6
  251. package/dist/src/vtab/memory/layer/transaction.d.ts.map +1 -1
  252. package/dist/src/vtab/memory/layer/transaction.js +26 -11
  253. package/dist/src/vtab/memory/layer/transaction.js.map +1 -1
  254. package/dist/src/vtab/memory/module.d.ts +14 -2
  255. package/dist/src/vtab/memory/module.d.ts.map +1 -1
  256. package/dist/src/vtab/memory/module.js +51 -39
  257. package/dist/src/vtab/memory/module.js.map +1 -1
  258. package/dist/src/vtab/memory/table.d.ts +1 -1
  259. package/dist/src/vtab/memory/table.d.ts.map +1 -1
  260. package/dist/src/vtab/memory/table.js +9 -2
  261. package/dist/src/vtab/memory/table.js.map +1 -1
  262. package/dist/src/vtab/table.d.ts +9 -1
  263. package/dist/src/vtab/table.d.ts.map +1 -1
  264. package/dist/src/vtab/table.js.map +1 -1
  265. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"coarsened-key.js","sourceRoot":"","sources":["../../../../src/planner/analysis/coarsened-key.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coarsened-key.js","sourceRoot":"","sources":["../../../../src/planner/analysis/coarsened-key.ts"],"names":[],"mappings":"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"}
@@ -42,6 +42,12 @@ export interface CollationContribution {
42
42
  readonly name: string;
43
43
  readonly rank: 3 | 2 | 1;
44
44
  }
45
+ /**
46
+ * The slice of a `ScalarType` the contribution lattice reads. Structural so
47
+ * sites holding attribute-type fragments rather than full `ScalarType`s (the
48
+ * USING equi-pair extractor) can resolve through the same lattice.
49
+ */
50
+ export type CollationCarrier = Pick<ScalarType, 'collationName' | 'collationSource'>;
45
51
  /**
46
52
  * The contribution one operand's type makes to a comparison, or `undefined`
47
53
  * when it makes none (no `collationName`, or a defaulted BINARY — the engine
@@ -49,7 +55,7 @@ export interface CollationContribution {
49
55
  * `collationName` is treated as `'default'` (the safe floor for any
50
56
  * construction site the provenance sweep missed).
51
57
  */
52
- export declare function collationContribution(t: ScalarType): CollationContribution | undefined;
58
+ export declare function collationContribution(t: CollationCarrier): CollationContribution | undefined;
53
59
  /** Outcome of resolving two contributions: a single collation, or a same-rank conflict. */
54
60
  export type CollationResolution = {
55
61
  kind: 'resolved';
@@ -65,7 +71,7 @@ export type CollationResolution = {
65
71
  * lattice. Pure — never throws; conflicts are returned for the caller to
66
72
  * surface (plan-time validation) or gate on (the predicate normalizer).
67
73
  */
68
- export declare function resolveComparisonCollation(left: ScalarType, right: ScalarType): CollationResolution;
74
+ export declare function resolveComparisonCollation(left: CollationCarrier, right: CollationCarrier): CollationResolution;
69
75
  /** Build the plan-time error for a same-rank explicit/declared conflict. */
70
76
  export declare function collationConflictError(conflict: Extract<CollationResolution, {
71
77
  kind: 'conflict';
@@ -82,7 +88,7 @@ export declare function effectiveCollationOfTypes(left: ScalarType, right: Scala
82
88
  * same-rank explicit/declared conflict (normally unreachable past plan-time
83
89
  * validation in `BinaryOpNode.generateType`).
84
90
  */
85
- export declare function effectiveComparisonCollation(left: ScalarPlanNode, right: ScalarPlanNode): string;
91
+ export declare function effectiveComparisonCollation(left: ScalarPlanNode, right: ScalarPlanNode, expr?: AST.Expression): string;
86
92
  /**
87
93
  * Effective collation of one BETWEEN bound comparison. BETWEEN desugars to
88
94
  * `expr >= lower AND expr <= upper`; each bound resolves independently through
@@ -99,6 +105,18 @@ export declare function effectiveBetweenBoundCollation(expr: ScalarPlanNode, bou
99
105
  * condition-driven behavior for the dominant case.
100
106
  */
101
107
  export declare function resolveInCollation(condition: ScalarType, rhs: ReadonlyArray<ScalarType>): CollationResolution;
108
+ /**
109
+ * Pure N-ary resolution for a group of operands that are all compared against
110
+ * one another (a variadic comparison builtin like `greatest`/`least` ranks
111
+ * every argument): one symmetric merge of every contribution under the lattice —
112
+ * highest rank wins; distinct names at rank ≥ 2 are a single conflict reported
113
+ * with the winning pair; rank-1 disagreement resolves to the BINARY floor
114
+ * silently. For two operands this is exactly
115
+ * {@link resolveComparisonCollation}.
116
+ */
117
+ export declare function resolveGroupCollation(types: ReadonlyArray<ScalarType>): CollationResolution;
118
+ /** Throwing form of {@link resolveGroupCollation}, for emit-time sites. */
119
+ export declare function effectiveGroupCollation(types: ReadonlyArray<ScalarType>, expr?: AST.Expression): string;
102
120
  /** RHS contribution sources of an InNode: list element types, or the subquery's single output column. */
103
121
  export declare function inRhsTypes(node: InNode): ReadonlyArray<ScalarType>;
104
122
  /** Pure form of {@link effectiveInCollation} — conflicts returned, not thrown. */
@@ -236,6 +254,18 @@ export declare function hashKeyCollationName(collationName: string | undefined,
236
254
  * `default_collation`), which the lattice would also resolve to.
237
255
  */
238
256
  export declare function isValueDiscriminatingEquality(left: ScalarPlanNode, right: ScalarPlanNode): boolean;
257
+ /** A declared type slice: the collation lattice's inputs plus textuality. */
258
+ export type TypeSlice = CollationCarrier & {
259
+ logicalType?: LogicalType;
260
+ };
261
+ /**
262
+ * The declared-type-slice variant of {@link isValueDiscriminatingEquality}, for
263
+ * sites that compare two *attribute types* rather than two plan nodes (the
264
+ * `USING` equi-pair extractor, which has no operand expressions). Same rule,
265
+ * same order: both declared collations BINARY, else neither side can ever hold
266
+ * text. Absent slice ⇒ no collation (BINARY) and unknown textuality.
267
+ */
268
+ export declare function isValueDiscriminatingTypePair(left: TypeSlice | undefined, right: TypeSlice | undefined): boolean;
239
269
  /**
240
270
  * Per-column declared metadata consumed by the schema-level (AST) variant of
241
271
  * the value-discrimination gate. `ColumnSchema` is structurally assignable;
@@ -1 +1 @@
1
- {"version":3,"file":"comparison-collation.d.ts","sourceRoot":"","sources":["../../../../src/planner/analysis/comparison-collation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"comparison-collation.d.ts","sourceRoot":"","sources":["../../../../src/planner/analysis/comparison-collation.ts"],"names":[],"mappings":"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"}
@@ -105,8 +105,8 @@ export function effectiveCollationOfTypes(left, right, expr) {
105
105
  * same-rank explicit/declared conflict (normally unreachable past plan-time
106
106
  * validation in `BinaryOpNode.generateType`).
107
107
  */
108
- export function effectiveComparisonCollation(left, right) {
109
- return effectiveCollationOfTypes(left.getType(), right.getType());
108
+ export function effectiveComparisonCollation(left, right, expr) {
109
+ return effectiveCollationOfTypes(left.getType(), right.getType(), expr);
110
110
  }
111
111
  /**
112
112
  * Effective collation of one BETWEEN bound comparison. BETWEEN desugars to
@@ -154,6 +154,26 @@ export function resolveInCollation(condition, rhs) {
154
154
  }
155
155
  return resolveContributions(collationContribution(condition), merged.contribution);
156
156
  }
157
+ /**
158
+ * Pure N-ary resolution for a group of operands that are all compared against
159
+ * one another (a variadic comparison builtin like `greatest`/`least` ranks
160
+ * every argument): one symmetric merge of every contribution under the lattice —
161
+ * highest rank wins; distinct names at rank ≥ 2 are a single conflict reported
162
+ * with the winning pair; rank-1 disagreement resolves to the BINARY floor
163
+ * silently. For two operands this is exactly
164
+ * {@link resolveComparisonCollation}.
165
+ */
166
+ export function resolveGroupCollation(types) {
167
+ const merged = mergeContributions(types.map(collationContribution));
168
+ if (merged.kind === 'conflict') {
169
+ return { kind: 'conflict', level: merged.level, left: merged.left, right: merged.right };
170
+ }
171
+ return merged.contribution ? { kind: 'resolved', name: merged.contribution.name } : RESOLVED_BINARY;
172
+ }
173
+ /** Throwing form of {@link resolveGroupCollation}, for emit-time sites. */
174
+ export function effectiveGroupCollation(types, expr) {
175
+ return resolvedOrThrow(resolveGroupCollation(types), expr);
176
+ }
157
177
  /** RHS contribution sources of an InNode: list element types, or the subquery's single output column. */
158
178
  export function inRhsTypes(node) {
159
179
  if (node.values)
@@ -354,6 +374,20 @@ export function isValueDiscriminatingEquality(left, right) {
354
374
  // never meet at runtime.
355
375
  return isStaticallyNonTextual(left) && isStaticallyNonTextual(right);
356
376
  }
377
+ /**
378
+ * The declared-type-slice variant of {@link isValueDiscriminatingEquality}, for
379
+ * sites that compare two *attribute types* rather than two plan nodes (the
380
+ * `USING` equi-pair extractor, which has no operand expressions). Same rule,
381
+ * same order: both declared collations BINARY, else neither side can ever hold
382
+ * text. Absent slice ⇒ no collation (BINARY) and unknown textuality.
383
+ */
384
+ export function isValueDiscriminatingTypePair(left, right) {
385
+ const lColl = normalizeCollationName(left?.collationName ?? 'BINARY');
386
+ const rColl = normalizeCollationName(right?.collationName ?? 'BINARY');
387
+ if (lColl === 'BINARY' && rColl === 'BINARY')
388
+ return true;
389
+ return isNonTextualLogicalType(left?.logicalType) && isNonTextualLogicalType(right?.logicalType);
390
+ }
357
391
  function astOperandContribution(expr, columnIndexMap, columns) {
358
392
  const colIdx = columnIndexFromExpr(expr, columnIndexMap);
359
393
  if (colIdx !== undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"comparison-collation.js","sourceRoot":"","sources":["../../../../src/planner/analysis/comparison-collation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"comparison-collation.js","sourceRoot":"","sources":["../../../../src/planner/analysis/comparison-collation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAOH,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AACpG,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAiBnD,MAAM,cAAc,GAAuC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;AACpG,MAAM,cAAc,GAAuC,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC;AAE1G;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,CAAmB;IACxD,IAAI,CAAC,CAAC,aAAa,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACpD,MAAM,IAAI,GAAG,cAAc,CAAC,CAAC,CAAC,eAAe,IAAI,SAAS,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,sBAAsB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;IACrD,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IACtD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACvB,CAAC;AAOD,MAAM,eAAe,GAAwB,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAElF,SAAS,oBAAoB,CAC5B,CAAoC,EACpC,CAAoC;IAEpC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,eAAe,CAAC;IACrC,IAAI,CAAC,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAE,CAAC,IAAI,EAAE,CAAC;IACnD,IAAI,CAAC,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAClD,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI;QAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACzF,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI;QAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACjE,sEAAsE;IACtE,+CAA+C;IAC/C,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,eAAe,CAAC;IACzC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;AACzG,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,0BAA0B,CAAC,IAAsB,EAAE,KAAuB;IACzF,OAAO,oBAAoB,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC;AACxF,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,sBAAsB,CACrC,QAA4D,EAC5D,IAAqB;IAErB,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,KAAK,UAAU;QAC5C,CAAC,CAAC,8CAA8C,QAAQ,CAAC,IAAI,OAAO,QAAQ,CAAC,KAAK,EAAE;QACpF,CAAC,CAAC,yDAAyD,QAAQ,CAAC,IAAI,OAAO,QAAQ,CAAC,KAAK,oCAAoC,CAAC;IACnI,OAAO,IAAI,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;AAC/G,CAAC;AAED,SAAS,eAAe,CAAC,GAAwB,EAAE,IAAqB;IACvE,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU;QAAE,MAAM,sBAAsB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACrE,OAAO,GAAG,CAAC,IAAI,CAAC;AACjB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CAAC,IAAgB,EAAE,KAAiB,EAAE,IAAqB;IACnG,OAAO,eAAe,CAAC,0BAA0B,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;AACvE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,4BAA4B,CAC3C,IAAoB,EACpB,KAAqB,EACrB,IAAqB;IAErB,OAAO,yBAAyB,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;AACzE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,8BAA8B,CAAC,IAAoB,EAAE,KAAqB;IACzF,OAAO,yBAAyB,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;AACnE,CAAC;AAYD,SAAS,kBAAkB,CAAC,QAA0D;IACrF,IAAI,IAAuC,CAAC;IAC5C,IAAI,eAAmC,CAAC;IACxC,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QAC1B,IAAI,CAAC,CAAC;YAAE,SAAS;QACjB,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YACjC,IAAI,GAAG,CAAC,CAAC;YACT,eAAe,GAAG,SAAS,CAAC;YAC5B,SAAS;QACV,CAAC;QACD,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YACnF,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC;QAC1B,CAAC;IACF,CAAC;IACD,IAAI,IAAI,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;QAC3C,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;QAC9E,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;IACxH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;AACrD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,SAAqB,EAAE,GAA8B;IACvF,MAAM,MAAM,GAAG,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAClE,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAChC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;IAC1F,CAAC;IACD,OAAO,oBAAoB,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;AACpF,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAAgC;IACrE,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC;IACpE,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAChC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;IAC1F,CAAC;IACD,OAAO,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC;AACrG,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,uBAAuB,CAAC,KAAgC,EAAE,IAAqB;IAC9F,OAAO,eAAe,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;AAC5D,CAAC;AAED,yGAAyG;AACzG,MAAM,UAAU,UAAU,CAAC,IAAY;IACtC,IAAI,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAC1D,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9B,CAAC;IACD,OAAO,EAAE,CAAC;AACX,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,yBAAyB,CAAC,IAAY;IACrD,OAAO,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AACvE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAY;IAChD,OAAO,eAAe,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;AAC1E,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,wBAAwB,CACvC,KAAgC;IAEhC,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC;IACpE,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,eAAe,EAAE,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;AAC/G,CAAC;AAgBD;;;;;;;GAOG;AACH,MAAM,UAAU,2BAA2B,CAAC,IAAgB,EAAE,KAAiB;IAC9E,MAAM,MAAM,GAAG,kBAAkB,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC/F,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;IACzH,MAAM,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC;IAC9B,OAAO,CAAC;QACP,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC,IAAI,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;QACtF,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAE,kDAAkD;AAC7E,CAAC;AAED;;;;;GAKG;AACH,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;AAEpG,MAAM,UAAU,oBAAoB,CAAC,EAAU;IAC9C,OAAO,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;AACnD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAoB;IACpD,OAAO,sBAAsB,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,aAAa,IAAI,QAAQ,CAAC,CAAC;AACzE,CAAC;AAED;;;;;;GAMG;AACH,SAAS,uBAAuB,CAAC,EAA2B;IAC3D,OAAO,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC;AACpC,CAAC;AAED;;;GAGG;AACH,SAAS,sBAAsB,CAAC,IAAoB;IACnD,OAAO,uBAAuB,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,WAAW,CAAC,CAAC;AAC5D,CAAC;AAED;;;;GAIG;AACH,MAAM,yBAAyB,GAA8B,IAAI,GAAG,CAAC;IACpE,YAAY,CAAC,OAAO;IACpB,YAAY,CAAC,IAAI;IACjB,YAAY,CAAC,IAAI;IACjB,YAAY,CAAC,OAAO;CACpB,CAAC,CAAC;AAEH;;;;;;;;;GASG;AACH,MAAM,UAAU,sBAAsB,CAAC,WAAoC;IAC1E,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAC9B,IAAI,WAAW,CAAC,SAAS,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAChD,OAAO,CAAC,yBAAyB,CAAC,GAAG,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;AACjE,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,kBAAkB,CACjC,MAAoE;IAEpE,IAAI,CAAC,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,WAAW,CAAC;QAAE,OAAO,SAAS,CAAC;IAC7E,OAAO,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;AACnE,CAAC;AAED,qGAAqG;AACrG,SAAS,eAAe,CAAC,CAAa;IACrC,OAAO,sBAAsB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,oBAAoB,CACnC,aAAiC,EACjC,YAAmC;IAEnC,IAAI,CAAC,aAAa,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,aAAa,CAAC;IACtE,OAAO,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;AACvE,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,6BAA6B,CAAC,IAAoB,EAAE,KAAqB;IACxF,IAAI,gBAAgB,CAAC,IAAI,CAAC,KAAK,QAAQ,IAAI,gBAAgB,CAAC,KAAK,CAAC,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC7F,2EAA2E;IAC3E,yBAAyB;IACzB,OAAO,sBAAsB,CAAC,IAAI,CAAC,IAAI,sBAAsB,CAAC,KAAK,CAAC,CAAC;AACtE,CAAC;AAKD;;;;;;GAMG;AACH,MAAM,UAAU,6BAA6B,CAAC,IAA2B,EAAE,KAA4B;IACtG,MAAM,KAAK,GAAG,sBAAsB,CAAC,IAAI,EAAE,aAAa,IAAI,QAAQ,CAAC,CAAC;IACtE,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,aAAa,IAAI,QAAQ,CAAC,CAAC;IACvE,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC1D,OAAO,uBAAuB,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,uBAAuB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;AAClG,CAAC;AAwBD,SAAS,sBAAsB,CAC9B,IAAoB,EACpB,cAA2C,EAC3C,OAA0C;IAE1C,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IACzD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO;YACN,MAAM,EAAE,sBAAsB,CAAC,IAAI,EAAE,SAAS,IAAI,QAAQ,CAAC,KAAK,QAAQ;YACxE,UAAU,EAAE,uBAAuB,CAAC,IAAI,EAAE,WAAW,CAAC;SACtD,CAAC;IACH,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC7B,yEAAyE;QACzE,2BAA2B;QAC3B,MAAM,CAAC,GAAI,IAAwB,CAAC,KAAK,CAAC;QAC1C,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,YAAY,OAAO,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;IACvF,CAAC;IACD,2EAA2E;IAC3E,0EAA0E;IAC1E,2EAA2E;IAC3E,0EAA0E;IAC1E,+CAA+C;IAC/C,KAAK,MAAM,IAAI,IAAI,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9C,IAAI,sBAAsB,CAAC,IAAI,CAAC,KAAK,QAAQ,EAAE,CAAC;YAC/C,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;QAC7C,CAAC;IACF,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,kBAAkB,CAAC,IAAI,EAAE,cAAc,CAAC,EAAE,CAAC;QAC5D,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,sBAAsB,CAAC,IAAI,EAAE,SAAS,IAAI,QAAQ,CAAC,KAAK,QAAQ;eAChE,CAAC,uBAAuB,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC;YACjD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;QAC7C,CAAC;IACF,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;AAC5C,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,kCAAkC,CACjD,IAAoB,EACpB,KAAqB,EACrB,cAA2C,EAC3C,OAA0C;IAE1C,MAAM,CAAC,GAAG,sBAAsB,CAAC,IAAI,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;IAChE,MAAM,CAAC,GAAG,sBAAsB,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;IACjE,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACtC,OAAO,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,UAAU,CAAC;AACrC,CAAC"}
@@ -172,9 +172,11 @@
172
172
  */
173
173
  import type { RelationalPlanNode } from '../nodes/plan-node.js';
174
174
  import { TableReferenceNode } from '../nodes/reference.js';
175
- import type { EquiJoinPair } from '../nodes/join-utils.js';
175
+ import { type EquiJoinPair } from '../nodes/join-utils.js';
176
176
  import type { MaintainedTableSchema } from '../../schema/derivation.js';
177
177
  import type { TableSchema, UniqueConstraintSchema } from '../../schema/table.js';
178
+ /** Attribute-id pairing slice of {@link EquiJoinPair} — all the coverage proofs read. */
179
+ export type JoinAttrPair = Pick<EquiJoinPair, 'leftAttrId' | 'rightAttrId'>;
178
180
  export type CoverageFailureReason = 'shape' | 'fanout' | 'missing-uc-column' | 'missing-pk-column' | 'collation-mismatch' | 'ordering-mismatch' | 'predicate-entailment' | 'missing-null-skip';
179
181
  export type CoverageResult = {
180
182
  covers: true;
@@ -304,8 +306,17 @@ export declare function proveEffectiveKeyUnique(root: RelationalPlanNode, keyCol
304
306
  * than leaning on predicate pushdown to have hoisted it below the join. A bare
305
307
  * cross join (no condition / no equi-pairs) yields an empty list, which the
306
308
  * caller treats as "no FK to align".
309
+ *
310
+ * Returned pairs are the attribute-id slice only ({@link JoinAttrPair}) — the
311
+ * proofs here read the pairing, not the `EquiJoinPair` collation flags. A
312
+ * physical join may carry non-`valueDiscriminating` pairs (e.g. a NOCASE key);
313
+ * that is fine for the no-row-loss direction — a coarser-than-value-equality
314
+ * comparison only ever matches MORE rows, never dropping the FK-aligned parent
315
+ * row the inclusion guarantees — and the complementary ≤1/no-fan-out gates read
316
+ * key uniqueness from the join OUTPUT (which the physical nodes derive from
317
+ * value-discriminating pairs only), not from these pairs.
307
318
  */
308
- export declare function pureJoinEquiAttrPairs(join: RelationalPlanNode): readonly EquiJoinPair[] | undefined;
319
+ export declare function pureJoinEquiAttrPairs(join: RelationalPlanNode): readonly JoinAttrPair[] | undefined;
309
320
  /**
310
321
  * No-fan-out (≤1) gate for a join body: `T`'s primary key must be a unique key of
311
322
  * `topJoin`'s output relation (`isUnique`), mapped into the join output frame via
@@ -1 +1 @@
1
- {"version":3,"file":"coverage-prover.d.ts","sourceRoot":"","sources":["../../../../src/planner/analysis/coverage-prover.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2KG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAoD,MAAM,uBAAuB,CAAC;AAElH,OAAO,EAAE,kBAAkB,EAAuB,MAAM,uBAAuB,CAAC;AAUhF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAE3D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,KAAK,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAQjF,MAAM,MAAM,qBAAqB,GAC9B,OAAO,GACP,QAAQ,GACR,mBAAmB,GACnB,mBAAmB,GACnB,oBAAoB,GACpB,mBAAmB,GACnB,sBAAsB,GACtB,mBAAmB,CAAC;AAEvB,MAAM,MAAM,cAAc,GACvB;IAAE,MAAM,EAAE,IAAI,CAAA;CAAE,GAChB;IAAE,MAAM,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,qBAAqB,CAAA;CAAE,CAAC;AAEpD;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;CAClC;AAUD;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAC3B;IAAE,MAAM,EAAE,IAAI,CAAA;CAAE,GAChB;IAAE,MAAM,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,WAAW,GAAG,cAAc,CAAA;CAAE,CAAC;AA2C3D;;;;GAIG;AACH,wBAAgB,aAAa,CAC5B,IAAI,EAAE,kBAAkB,EACxB,EAAE,EAAE,qBAAqB,EACzB,EAAE,EAAE,sBAAsB,EAC1B,SAAS,EAAE,WAAW,EACtB,IAAI,GAAE,oBAAyB,GAC7B,cAAc,CAoGhB;AAED;;;;GAIG;AACH,MAAM,MAAM,UAAU,GACnB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,kBAAkB,CAAC;IAAC,OAAO,EAAE,kBAAkB,GAAG,SAAS,CAAA;CAAE,GACnF;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,qBAAqB,CAAA;CAAE,CAAC;AAEhD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,qBAAqB,CACpC,IAAI,EAAE,kBAAkB,EACxB,SAAS,EAAE,WAAW,EACtB,IAAI,GAAE,oBAAyB,GAC7B,UAAU,CA2CZ;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAChC,IAAI,EAAE,kBAAkB,EACxB,SAAS,EAAE,WAAW,EACtB,IAAI,GAAE,oBAAyB,GAC7B,UAAU,CAQZ;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,uBAAuB,CACtC,IAAI,EAAE,kBAAkB,EACxB,UAAU,EAAE,SAAS,MAAM,EAAE,GAC3B,kBAAkB,CAMpB;AA0KD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,GAAG,SAAS,YAAY,EAAE,GAAG,SAAS,CAkBnG;AAqND;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAChC,OAAO,EAAE,kBAAkB,EAC3B,QAAQ,EAAE,kBAAkB,EAC5B,SAAS,EAAE,WAAW,GACpB,cAAc,CAchB"}
1
+ {"version":3,"file":"coverage-prover.d.ts","sourceRoot":"","sources":["../../../../src/planner/analysis/coverage-prover.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2KG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAoD,MAAM,uBAAuB,CAAC;AAElH,OAAO,EAAE,kBAAkB,EAAuB,MAAM,uBAAuB,CAAC;AAUhF,OAAO,EAAqB,KAAK,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAE9E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,KAAK,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAQjF,yFAAyF;AACzF,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,EAAE,YAAY,GAAG,aAAa,CAAC,CAAC;AAE5E,MAAM,MAAM,qBAAqB,GAC9B,OAAO,GACP,QAAQ,GACR,mBAAmB,GACnB,mBAAmB,GACnB,oBAAoB,GACpB,mBAAmB,GACnB,sBAAsB,GACtB,mBAAmB,CAAC;AAEvB,MAAM,MAAM,cAAc,GACvB;IAAE,MAAM,EAAE,IAAI,CAAA;CAAE,GAChB;IAAE,MAAM,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,qBAAqB,CAAA;CAAE,CAAC;AAEpD;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;CAClC;AAUD;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAC3B;IAAE,MAAM,EAAE,IAAI,CAAA;CAAE,GAChB;IAAE,MAAM,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,WAAW,GAAG,cAAc,CAAA;CAAE,CAAC;AA4B3D;;;;GAIG;AACH,wBAAgB,aAAa,CAC5B,IAAI,EAAE,kBAAkB,EACxB,EAAE,EAAE,qBAAqB,EACzB,EAAE,EAAE,sBAAsB,EAC1B,SAAS,EAAE,WAAW,EACtB,IAAI,GAAE,oBAAyB,GAC7B,cAAc,CAoGhB;AAED;;;;GAIG;AACH,MAAM,MAAM,UAAU,GACnB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,kBAAkB,CAAC;IAAC,OAAO,EAAE,kBAAkB,GAAG,SAAS,CAAA;CAAE,GACnF;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,qBAAqB,CAAA;CAAE,CAAC;AAEhD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,qBAAqB,CACpC,IAAI,EAAE,kBAAkB,EACxB,SAAS,EAAE,WAAW,EACtB,IAAI,GAAE,oBAAyB,GAC7B,UAAU,CA2CZ;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAChC,IAAI,EAAE,kBAAkB,EACxB,SAAS,EAAE,WAAW,EACtB,IAAI,GAAE,oBAAyB,GAC7B,UAAU,CAQZ;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,uBAAuB,CACtC,IAAI,EAAE,kBAAkB,EACxB,UAAU,EAAE,SAAS,MAAM,EAAE,GAC3B,kBAAkB,CAMpB;AA0KD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,GAAG,SAAS,YAAY,EAAE,GAAG,SAAS,CAkBnG;AAqND;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAChC,OAAO,EAAE,kBAAkB,EAC3B,QAAQ,EAAE,kBAAkB,EAC5B,SAAS,EAAE,WAAW,GACpB,cAAc,CAchB"}
@@ -181,6 +181,7 @@ import { AliasNode } from '../nodes/alias-node.js';
181
181
  import { SortNode } from '../nodes/sort.js';
182
182
  import { RetrieveNode } from '../nodes/retrieve-node.js';
183
183
  import { BinaryOpNode } from '../nodes/scalar.js';
184
+ import { BINARY_JOIN_TYPES } from '../nodes/join-utils.js';
184
185
  import { CapabilityDetectors } from '../framework/characteristics.js';
185
186
  import { recognizeConjunctiveClauses, guardClausesEntail } from './partial-unique-extraction.js';
186
187
  import { normalizePredicate } from './predicate-normalizer.js';
@@ -217,20 +218,6 @@ const PASS_THROUGH = new Set([
217
218
  PlanNodeType.IndexSeek,
218
219
  PlanNodeType.TableSeek,
219
220
  ]);
220
- /**
221
- * Binary (left/right/inner/cross/semi/anti) join node types the shape walk may
222
- * descend through. These all implement `JoinCapable` (logical `JoinNode`,
223
- * `BloomJoinNode` = `HashJoin`, `MergeJoinNode`), so `CapabilityDetectors.isJoin`
224
- * exposes `getJoinType` / `getLeftSource` / `getRightSource`. `FanOutLookupJoin`
225
- * and `AsofScan` are deliberately absent — they are not `JoinCapable` and fall
226
- * through to the walk's `shape` rejection.
227
- */
228
- const BINARY_JOIN_TYPES = new Set([
229
- PlanNodeType.Join,
230
- PlanNodeType.NestedLoopJoin,
231
- PlanNodeType.HashJoin,
232
- PlanNodeType.MergeJoin,
233
- ]);
234
221
  /**
235
222
  * Decides whether `mv` covers `uc` on `baseTable`. `root` is the optimized body
236
223
  * relation (`db.getPlan(body).getRelations()[0]`); the body's declared `order by`
@@ -648,6 +635,15 @@ function pureColumnEquiConjunctCount(cond) {
648
635
  * than leaning on predicate pushdown to have hoisted it below the join. A bare
649
636
  * cross join (no condition / no equi-pairs) yields an empty list, which the
650
637
  * caller treats as "no FK to align".
638
+ *
639
+ * Returned pairs are the attribute-id slice only ({@link JoinAttrPair}) — the
640
+ * proofs here read the pairing, not the `EquiJoinPair` collation flags. A
641
+ * physical join may carry non-`valueDiscriminating` pairs (e.g. a NOCASE key);
642
+ * that is fine for the no-row-loss direction — a coarser-than-value-equality
643
+ * comparison only ever matches MORE rows, never dropping the FK-aligned parent
644
+ * row the inclusion guarantees — and the complementary ≤1/no-fan-out gates read
645
+ * key uniqueness from the join OUTPUT (which the physical nodes derive from
646
+ * value-discriminating pairs only), not from these pairs.
651
647
  */
652
648
  export function pureJoinEquiAttrPairs(join) {
653
649
  if (join instanceof BloomJoinNode || join instanceof MergeJoinNode) {
@@ -1 +1 @@
1
- {"version":3,"file":"coverage-prover.js","sourceRoot":"","sources":["../../../../src/planner/analysis/coverage-prover.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coverage-prover.js","sourceRoot":"","sources":["../../../../src/planner/analysis/coverage-prover.ts"],"names":[],"mappings":"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"}
@@ -2,13 +2,19 @@
2
2
  * Conjunct helpers for predicate rewriting.
3
3
  *
4
4
  * `splitConjuncts` flattens an AND-tree into its individual conjuncts;
5
- * `combineConjuncts` rebuilds an AND-tree from a list. Operators that need to
6
- * partition / push / inspect predicates conjunct-by-conjunct (subquery
7
- * decorrelation, aggregate predicate pushdown, etc.) share these.
5
+ * `combineConjuncts` rebuilds an AND-tree from a list. `splitDisjuncts` is the
6
+ * OR mirror of `splitConjuncts`. Operators that need to partition / push /
7
+ * inspect predicates conjunct-by-conjunct (subquery decorrelation, aggregate
8
+ * predicate pushdown, selectivity estimation, etc.) share these.
8
9
  */
9
10
  import type { ScalarPlanNode } from '../nodes/plan-node.js';
10
- /** Split an AND-tree into its conjuncts. Non-AND predicates yield a single-element list. */
11
+ /**
12
+ * Split an AND-tree into its conjuncts, in source order. Non-AND predicates yield a
13
+ * single-element list.
14
+ */
11
15
  export declare function splitConjuncts(pred: ScalarPlanNode): ScalarPlanNode[];
16
+ /** Split an OR-tree into its disjuncts, in source order. Non-OR predicates yield a single-element list. */
17
+ export declare function splitDisjuncts(pred: ScalarPlanNode): ScalarPlanNode[];
12
18
  /** Combine conjuncts back into a left-associative AND-tree; returns null when empty. */
13
19
  export declare function combineConjuncts(conjuncts: ScalarPlanNode[]): ScalarPlanNode | null;
14
20
  //# sourceMappingURL=predicate-conjuncts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"predicate-conjuncts.d.ts","sourceRoot":"","sources":["../../../../src/planner/analysis/predicate-conjuncts.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,4FAA4F;AAC5F,wBAAgB,cAAc,CAAC,IAAI,EAAE,cAAc,GAAG,cAAc,EAAE,CAYrE;AAED,wFAAwF;AACxF,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,cAAc,EAAE,GAAG,cAAc,GAAG,IAAI,CAUnF"}
1
+ {"version":3,"file":"predicate-conjuncts.d.ts","sourceRoot":"","sources":["../../../../src/planner/analysis/predicate-conjuncts.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AA2B5D;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,cAAc,GAAG,cAAc,EAAE,CAErE;AAED,2GAA2G;AAC3G,wBAAgB,cAAc,CAAC,IAAI,EAAE,cAAc,GAAG,cAAc,EAAE,CAErE;AAED,wFAAwF;AACxF,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,cAAc,EAAE,GAAG,cAAc,GAAG,IAAI,CAUnF"}
@@ -2,19 +2,29 @@
2
2
  * Conjunct helpers for predicate rewriting.
3
3
  *
4
4
  * `splitConjuncts` flattens an AND-tree into its individual conjuncts;
5
- * `combineConjuncts` rebuilds an AND-tree from a list. Operators that need to
6
- * partition / push / inspect predicates conjunct-by-conjunct (subquery
7
- * decorrelation, aggregate predicate pushdown, etc.) share these.
5
+ * `combineConjuncts` rebuilds an AND-tree from a list. `splitDisjuncts` is the
6
+ * OR mirror of `splitConjuncts`. Operators that need to partition / push /
7
+ * inspect predicates conjunct-by-conjunct (subquery decorrelation, aggregate
8
+ * predicate pushdown, selectivity estimation, etc.) share these.
8
9
  */
9
10
  import { BinaryOpNode } from '../nodes/scalar.js';
10
- /** Split an AND-tree into its conjuncts. Non-AND predicates yield a single-element list. */
11
- export function splitConjuncts(pred) {
11
+ /**
12
+ * Flatten a boolean tree on `operator` into left-to-right source order; anything
13
+ * else becomes a leaf of the result.
14
+ *
15
+ * Iterative (an explicit stack, not recursion) so a pathological chain of a few
16
+ * thousand ANDs cannot overflow. Pushing the right child first makes the left child
17
+ * pop first, which is what keeps the result in source order — order is observable
18
+ * wherever a caller decides *evaluation* order (the Filter emitter's conjunct early
19
+ * exit) or rebuilds a tree with {@link combineConjuncts}.
20
+ */
21
+ function splitOn(pred, operator) {
12
22
  const result = [];
13
23
  const stack = [pred];
14
24
  while (stack.length) {
15
25
  const n = stack.pop();
16
- if (n instanceof BinaryOpNode && n.expression.operator === 'AND') {
17
- stack.push(n.left, n.right);
26
+ if (n instanceof BinaryOpNode && n.expression.operator === operator) {
27
+ stack.push(n.right, n.left);
18
28
  }
19
29
  else {
20
30
  result.push(n);
@@ -22,6 +32,17 @@ export function splitConjuncts(pred) {
22
32
  }
23
33
  return result;
24
34
  }
35
+ /**
36
+ * Split an AND-tree into its conjuncts, in source order. Non-AND predicates yield a
37
+ * single-element list.
38
+ */
39
+ export function splitConjuncts(pred) {
40
+ return splitOn(pred, 'AND');
41
+ }
42
+ /** Split an OR-tree into its disjuncts, in source order. Non-OR predicates yield a single-element list. */
43
+ export function splitDisjuncts(pred) {
44
+ return splitOn(pred, 'OR');
45
+ }
25
46
  /** Combine conjuncts back into a left-associative AND-tree; returns null when empty. */
26
47
  export function combineConjuncts(conjuncts) {
27
48
  if (conjuncts.length === 0)
@@ -1 +1 @@
1
- {"version":3,"file":"predicate-conjuncts.js","sourceRoot":"","sources":["../../../../src/planner/analysis/predicate-conjuncts.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,4FAA4F;AAC5F,MAAM,UAAU,cAAc,CAAC,IAAoB;IAClD,MAAM,MAAM,GAAqB,EAAE,CAAC;IACpC,MAAM,KAAK,GAAqB,CAAC,IAAI,CAAC,CAAC;IACvC,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;QACrB,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,EAAG,CAAC;QACvB,IAAI,CAAC,YAAY,YAAY,IAAI,CAAC,CAAC,UAAU,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;YAClE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;aAAM,CAAC;YACP,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,CAAC;IACF,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,gBAAgB,CAAC,SAA2B;IAC3D,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACxC,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CACpC,IAAI,YAAY,CACf,GAAG,CAAC,KAAK,EACT,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,UAAU,EAAE,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE,EAChF,GAAG,EACH,GAAG,CACH,CACD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"predicate-conjuncts.js","sourceRoot":"","sources":["../../../../src/planner/analysis/predicate-conjuncts.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD;;;;;;;;;GASG;AACH,SAAS,OAAO,CAAC,IAAoB,EAAE,QAAsB;IAC5D,MAAM,MAAM,GAAqB,EAAE,CAAC;IACpC,MAAM,KAAK,GAAqB,CAAC,IAAI,CAAC,CAAC;IACvC,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;QACrB,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,EAAG,CAAC;QACvB,IAAI,CAAC,YAAY,YAAY,IAAI,CAAC,CAAC,UAAU,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACrE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;aAAM,CAAC;YACP,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,CAAC;IACF,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,IAAoB;IAClD,OAAO,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAC7B,CAAC;AAED,2GAA2G;AAC3G,MAAM,UAAU,cAAc,CAAC,IAAoB;IAClD,OAAO,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,gBAAgB,CAAC,SAA2B;IAC3D,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACxC,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CACpC,IAAI,YAAY,CACf,GAAG,CAAC,KAAK,EACT,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,UAAU,EAAE,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE,EAChF,GAAG,EACH,GAAG,CACH,CACD,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"query-rewrite-matcher.d.ts","sourceRoot":"","sources":["../../../../src/planner/analysis/query-rewrite-matcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query-rewrite-matcher.d.ts","sourceRoot":"","sources":["../../../../src/planner/analysis/query-rewrite-matcher.ts"],"names":[],"mappings":"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"}