@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.
Files changed (491) hide show
  1. package/README.md +6 -1
  2. package/dist/src/common/types.d.ts +9 -0
  3. package/dist/src/common/types.d.ts.map +1 -1
  4. package/dist/src/common/types.js.map +1 -1
  5. package/dist/src/core/database-events.d.ts +49 -0
  6. package/dist/src/core/database-events.d.ts.map +1 -1
  7. package/dist/src/core/database-events.js +148 -0
  8. package/dist/src/core/database-events.js.map +1 -1
  9. package/dist/src/core/database-materialized-views-analysis.d.ts.map +1 -1
  10. package/dist/src/core/database-materialized-views-analysis.js +1 -0
  11. package/dist/src/core/database-materialized-views-analysis.js.map +1 -1
  12. package/dist/src/core/database-materialized-views-plan-builders.d.ts +2 -1
  13. package/dist/src/core/database-materialized-views-plan-builders.d.ts.map +1 -1
  14. package/dist/src/core/database-materialized-views-plan-builders.js +26 -5
  15. package/dist/src/core/database-materialized-views-plan-builders.js.map +1 -1
  16. package/dist/src/core/database-materialized-views-plans.d.ts +6 -3
  17. package/dist/src/core/database-materialized-views-plans.d.ts.map +1 -1
  18. package/dist/src/core/database-materialized-views.d.ts +3 -2
  19. package/dist/src/core/database-materialized-views.d.ts.map +1 -1
  20. package/dist/src/core/database-materialized-views.js +26 -5
  21. package/dist/src/core/database-materialized-views.js.map +1 -1
  22. package/dist/src/core/database.d.ts +5 -0
  23. package/dist/src/core/database.d.ts.map +1 -1
  24. package/dist/src/core/database.js +21 -1
  25. package/dist/src/core/database.js.map +1 -1
  26. package/dist/src/core/internal-statement-cache.d.ts +18 -0
  27. package/dist/src/core/internal-statement-cache.d.ts.map +1 -0
  28. package/dist/src/core/internal-statement-cache.js +211 -0
  29. package/dist/src/core/internal-statement-cache.js.map +1 -0
  30. package/dist/src/func/builtins/aggregate.d.ts +13 -12
  31. package/dist/src/func/builtins/aggregate.d.ts.map +1 -1
  32. package/dist/src/func/builtins/aggregate.js +45 -67
  33. package/dist/src/func/builtins/aggregate.js.map +1 -1
  34. package/dist/src/func/builtins/builtin-window-functions.d.ts.map +1 -1
  35. package/dist/src/func/builtins/builtin-window-functions.js +63 -48
  36. package/dist/src/func/builtins/builtin-window-functions.js.map +1 -1
  37. package/dist/src/func/builtins/scalar.d.ts.map +1 -1
  38. package/dist/src/func/builtins/scalar.js +92 -3
  39. package/dist/src/func/builtins/scalar.js.map +1 -1
  40. package/dist/src/func/registration.d.ts +18 -1
  41. package/dist/src/func/registration.d.ts.map +1 -1
  42. package/dist/src/func/registration.js +26 -0
  43. package/dist/src/func/registration.js.map +1 -1
  44. package/dist/src/index.d.ts +10 -10
  45. package/dist/src/index.d.ts.map +1 -1
  46. package/dist/src/index.js +13 -12
  47. package/dist/src/index.js.map +1 -1
  48. package/dist/src/parser/parser.d.ts +6 -0
  49. package/dist/src/parser/parser.d.ts.map +1 -1
  50. package/dist/src/parser/parser.js +45 -34
  51. package/dist/src/parser/parser.js.map +1 -1
  52. package/dist/src/planner/analysis/coarsened-key.d.ts +4 -3
  53. package/dist/src/planner/analysis/coarsened-key.d.ts.map +1 -1
  54. package/dist/src/planner/analysis/coarsened-key.js +37 -3
  55. package/dist/src/planner/analysis/coarsened-key.js.map +1 -1
  56. package/dist/src/planner/analysis/comparison-collation.d.ts +35 -3
  57. package/dist/src/planner/analysis/comparison-collation.d.ts.map +1 -1
  58. package/dist/src/planner/analysis/comparison-collation.js +37 -3
  59. package/dist/src/planner/analysis/comparison-collation.js.map +1 -1
  60. package/dist/src/planner/analysis/coverage-prover.d.ts +13 -2
  61. package/dist/src/planner/analysis/coverage-prover.d.ts.map +1 -1
  62. package/dist/src/planner/analysis/coverage-prover.js +10 -14
  63. package/dist/src/planner/analysis/coverage-prover.js.map +1 -1
  64. package/dist/src/planner/analysis/expression-fingerprint.d.ts.map +1 -1
  65. package/dist/src/planner/analysis/expression-fingerprint.js +29 -0
  66. package/dist/src/planner/analysis/expression-fingerprint.js.map +1 -1
  67. package/dist/src/planner/analysis/predicate-conjuncts.d.ts +10 -4
  68. package/dist/src/planner/analysis/predicate-conjuncts.d.ts.map +1 -1
  69. package/dist/src/planner/analysis/predicate-conjuncts.js +28 -7
  70. package/dist/src/planner/analysis/predicate-conjuncts.js.map +1 -1
  71. package/dist/src/planner/analysis/query-rewrite-matcher.d.ts +6 -0
  72. package/dist/src/planner/analysis/query-rewrite-matcher.d.ts.map +1 -1
  73. package/dist/src/planner/analysis/query-rewrite-matcher.js +19 -29
  74. package/dist/src/planner/analysis/query-rewrite-matcher.js.map +1 -1
  75. package/dist/src/planner/analysis/sat-checker.d.ts.map +1 -1
  76. package/dist/src/planner/analysis/sat-checker.js +43 -4
  77. package/dist/src/planner/analysis/sat-checker.js.map +1 -1
  78. package/dist/src/planner/analysis/scalar-subqueries.d.ts +22 -3
  79. package/dist/src/planner/analysis/scalar-subqueries.d.ts.map +1 -1
  80. package/dist/src/planner/analysis/scalar-subqueries.js +32 -3
  81. package/dist/src/planner/analysis/scalar-subqueries.js.map +1 -1
  82. package/dist/src/planner/analysis/set-op-type-merge.d.ts +64 -0
  83. package/dist/src/planner/analysis/set-op-type-merge.d.ts.map +1 -0
  84. package/dist/src/planner/analysis/set-op-type-merge.js +97 -0
  85. package/dist/src/planner/analysis/set-op-type-merge.js.map +1 -0
  86. package/dist/src/planner/building/coercion.d.ts +78 -0
  87. package/dist/src/planner/building/coercion.d.ts.map +1 -0
  88. package/dist/src/planner/building/coercion.js +137 -0
  89. package/dist/src/planner/building/coercion.js.map +1 -0
  90. package/dist/src/planner/building/constraint-builder.d.ts.map +1 -1
  91. package/dist/src/planner/building/constraint-builder.js +5 -18
  92. package/dist/src/planner/building/constraint-builder.js.map +1 -1
  93. package/dist/src/planner/building/delete.d.ts.map +1 -1
  94. package/dist/src/planner/building/delete.js +10 -3
  95. package/dist/src/planner/building/delete.js.map +1 -1
  96. package/dist/src/planner/building/expression.d.ts.map +1 -1
  97. package/dist/src/planner/building/expression.js +13 -35
  98. package/dist/src/planner/building/expression.js.map +1 -1
  99. package/dist/src/planner/building/foreign-key-builder.d.ts +44 -1
  100. package/dist/src/planner/building/foreign-key-builder.d.ts.map +1 -1
  101. package/dist/src/planner/building/foreign-key-builder.js +54 -0
  102. package/dist/src/planner/building/foreign-key-builder.js.map +1 -1
  103. package/dist/src/planner/building/function-call.d.ts.map +1 -1
  104. package/dist/src/planner/building/function-call.js +8 -0
  105. package/dist/src/planner/building/function-call.js.map +1 -1
  106. package/dist/src/planner/building/insert.d.ts.map +1 -1
  107. package/dist/src/planner/building/insert.js +9 -12
  108. package/dist/src/planner/building/insert.js.map +1 -1
  109. package/dist/src/planner/building/select-compound.d.ts.map +1 -1
  110. package/dist/src/planner/building/select-compound.js +10 -6
  111. package/dist/src/planner/building/select-compound.js.map +1 -1
  112. package/dist/src/planner/building/update.d.ts.map +1 -1
  113. package/dist/src/planner/building/update.js +13 -4
  114. package/dist/src/planner/building/update.js.map +1 -1
  115. package/dist/src/planner/cost/conjunct-cost.d.ts +42 -0
  116. package/dist/src/planner/cost/conjunct-cost.d.ts.map +1 -0
  117. package/dist/src/planner/cost/conjunct-cost.js +62 -0
  118. package/dist/src/planner/cost/conjunct-cost.js.map +1 -0
  119. package/dist/src/planner/framework/pass.js +3 -3
  120. package/dist/src/planner/mutation/propagate.d.ts.map +1 -1
  121. package/dist/src/planner/mutation/propagate.js +1 -0
  122. package/dist/src/planner/mutation/propagate.js.map +1 -1
  123. package/dist/src/planner/nodes/async-gather-node.d.ts.map +1 -1
  124. package/dist/src/planner/nodes/async-gather-node.js +19 -8
  125. package/dist/src/planner/nodes/async-gather-node.js.map +1 -1
  126. package/dist/src/planner/nodes/bloom-join-node.d.ts +2 -0
  127. package/dist/src/planner/nodes/bloom-join-node.d.ts.map +1 -1
  128. package/dist/src/planner/nodes/bloom-join-node.js +10 -5
  129. package/dist/src/planner/nodes/bloom-join-node.js.map +1 -1
  130. package/dist/src/planner/nodes/dml-executor-node.d.ts +0 -9
  131. package/dist/src/planner/nodes/dml-executor-node.d.ts.map +1 -1
  132. package/dist/src/planner/nodes/dml-executor-node.js.map +1 -1
  133. package/dist/src/planner/nodes/join-node.d.ts +5 -0
  134. package/dist/src/planner/nodes/join-node.d.ts.map +1 -1
  135. package/dist/src/planner/nodes/join-node.js +8 -1
  136. package/dist/src/planner/nodes/join-node.js.map +1 -1
  137. package/dist/src/planner/nodes/join-utils.d.ts +57 -0
  138. package/dist/src/planner/nodes/join-utils.d.ts.map +1 -1
  139. package/dist/src/planner/nodes/join-utils.js +47 -0
  140. package/dist/src/planner/nodes/join-utils.js.map +1 -1
  141. package/dist/src/planner/nodes/key-set-semi-join-node.d.ts +87 -0
  142. package/dist/src/planner/nodes/key-set-semi-join-node.d.ts.map +1 -0
  143. package/dist/src/planner/nodes/key-set-semi-join-node.js +137 -0
  144. package/dist/src/planner/nodes/key-set-semi-join-node.js.map +1 -0
  145. package/dist/src/planner/nodes/merge-join-node.d.ts +2 -0
  146. package/dist/src/planner/nodes/merge-join-node.d.ts.map +1 -1
  147. package/dist/src/planner/nodes/merge-join-node.js +14 -6
  148. package/dist/src/planner/nodes/merge-join-node.js.map +1 -1
  149. package/dist/src/planner/nodes/plan-node-type.d.ts +1 -0
  150. package/dist/src/planner/nodes/plan-node-type.d.ts.map +1 -1
  151. package/dist/src/planner/nodes/plan-node-type.js +1 -0
  152. package/dist/src/planner/nodes/plan-node-type.js.map +1 -1
  153. package/dist/src/planner/nodes/scalar.d.ts.map +1 -1
  154. package/dist/src/planner/nodes/scalar.js +26 -3
  155. package/dist/src/planner/nodes/scalar.js.map +1 -1
  156. package/dist/src/planner/nodes/set-operation-node.d.ts +68 -16
  157. package/dist/src/planner/nodes/set-operation-node.d.ts.map +1 -1
  158. package/dist/src/planner/nodes/set-operation-node.js +147 -26
  159. package/dist/src/planner/nodes/set-operation-node.js.map +1 -1
  160. package/dist/src/planner/nodes/table-access-nodes.d.ts +19 -1
  161. package/dist/src/planner/nodes/table-access-nodes.d.ts.map +1 -1
  162. package/dist/src/planner/nodes/table-access-nodes.js +13 -2
  163. package/dist/src/planner/nodes/table-access-nodes.js.map +1 -1
  164. package/dist/src/planner/optimizer.d.ts.map +1 -1
  165. package/dist/src/planner/optimizer.js +54 -12
  166. package/dist/src/planner/optimizer.js.map +1 -1
  167. package/dist/src/planner/rules/access/rule-key-set-seek.d.ts +68 -0
  168. package/dist/src/planner/rules/access/rule-key-set-seek.d.ts.map +1 -0
  169. package/dist/src/planner/rules/access/rule-key-set-seek.js +408 -0
  170. package/dist/src/planner/rules/access/rule-key-set-seek.js.map +1 -0
  171. package/dist/src/planner/rules/access/rule-monotonic-range-access.d.ts.map +1 -1
  172. package/dist/src/planner/rules/access/rule-monotonic-range-access.js +2 -2
  173. package/dist/src/planner/rules/access/rule-monotonic-range-access.js.map +1 -1
  174. package/dist/src/planner/rules/access/rule-select-access-path.d.ts +27 -0
  175. package/dist/src/planner/rules/access/rule-select-access-path.d.ts.map +1 -1
  176. package/dist/src/planner/rules/access/rule-select-access-path.js +74 -29
  177. package/dist/src/planner/rules/access/rule-select-access-path.js.map +1 -1
  178. package/dist/src/planner/rules/cache/rule-materialized-view-rewrite.d.ts.map +1 -1
  179. package/dist/src/planner/rules/cache/rule-materialized-view-rewrite.js +23 -4
  180. package/dist/src/planner/rules/cache/rule-materialized-view-rewrite.js.map +1 -1
  181. package/dist/src/planner/rules/cache/rule-scalar-subquery-cache.d.ts +10 -8
  182. package/dist/src/planner/rules/cache/rule-scalar-subquery-cache.d.ts.map +1 -1
  183. package/dist/src/planner/rules/cache/rule-scalar-subquery-cache.js +10 -8
  184. package/dist/src/planner/rules/cache/rule-scalar-subquery-cache.js.map +1 -1
  185. package/dist/src/planner/rules/join/equi-pair-extractor.d.ts +67 -41
  186. package/dist/src/planner/rules/join/equi-pair-extractor.d.ts.map +1 -1
  187. package/dist/src/planner/rules/join/equi-pair-extractor.js +72 -36
  188. package/dist/src/planner/rules/join/equi-pair-extractor.js.map +1 -1
  189. package/dist/src/planner/rules/join/rule-join-physical-selection.d.ts.map +1 -1
  190. package/dist/src/planner/rules/join/rule-join-physical-selection.js +14 -2
  191. package/dist/src/planner/rules/join/rule-join-physical-selection.js.map +1 -1
  192. package/dist/src/planner/rules/join/rule-monotonic-merge-join.d.ts.map +1 -1
  193. package/dist/src/planner/rules/join/rule-monotonic-merge-join.js +11 -1
  194. package/dist/src/planner/rules/join/rule-monotonic-merge-join.js.map +1 -1
  195. package/dist/src/planner/rules/predicate/rule-empty-relation-folding.d.ts +1 -1
  196. package/dist/src/planner/rules/predicate/rule-empty-relation-folding.js +1 -1
  197. package/dist/src/planner/rules/predicate/rule-filter-conjunct-ordering.d.ts +30 -0
  198. package/dist/src/planner/rules/predicate/rule-filter-conjunct-ordering.d.ts.map +1 -0
  199. package/dist/src/planner/rules/predicate/rule-filter-conjunct-ordering.js +63 -0
  200. package/dist/src/planner/rules/predicate/rule-filter-conjunct-ordering.js.map +1 -0
  201. package/dist/src/planner/rules/predicate/rule-filter-selectivity.d.ts +17 -1
  202. package/dist/src/planner/rules/predicate/rule-filter-selectivity.d.ts.map +1 -1
  203. package/dist/src/planner/rules/predicate/rule-filter-selectivity.js +206 -12
  204. package/dist/src/planner/rules/predicate/rule-filter-selectivity.js.map +1 -1
  205. package/dist/src/planner/rules/predicate/rule-predicate-inference-equivalence.js +8 -1
  206. package/dist/src/planner/rules/predicate/rule-predicate-inference-equivalence.js.map +1 -1
  207. package/dist/src/planner/rules/predicate/rule-predicate-pushdown.d.ts +3 -1
  208. package/dist/src/planner/rules/predicate/rule-predicate-pushdown.d.ts.map +1 -1
  209. package/dist/src/planner/rules/predicate/rule-predicate-pushdown.js +13 -1
  210. package/dist/src/planner/rules/predicate/rule-predicate-pushdown.js.map +1 -1
  211. package/dist/src/planner/rules/retrieve/rule-grow-retrieve.d.ts.map +1 -1
  212. package/dist/src/planner/rules/retrieve/rule-grow-retrieve.js +18 -3
  213. package/dist/src/planner/rules/retrieve/rule-grow-retrieve.js.map +1 -1
  214. package/dist/src/planner/rules/shared/index-style-context.d.ts +17 -0
  215. package/dist/src/planner/rules/shared/index-style-context.d.ts.map +1 -1
  216. package/dist/src/planner/rules/shared/index-style-context.js +7 -0
  217. package/dist/src/planner/rules/shared/index-style-context.js.map +1 -1
  218. package/dist/src/planner/rules/subquery/rule-scalar-agg-decorrelation.js +4 -0
  219. package/dist/src/planner/rules/subquery/rule-scalar-agg-decorrelation.js.map +1 -1
  220. package/dist/src/planner/rules/subquery/rule-subquery-decorrelation.d.ts +24 -6
  221. package/dist/src/planner/rules/subquery/rule-subquery-decorrelation.d.ts.map +1 -1
  222. package/dist/src/planner/rules/subquery/rule-subquery-decorrelation.js +175 -60
  223. package/dist/src/planner/rules/subquery/rule-subquery-decorrelation.js.map +1 -1
  224. package/dist/src/planner/stats/catalog-stats.d.ts +52 -0
  225. package/dist/src/planner/stats/catalog-stats.d.ts.map +1 -1
  226. package/dist/src/planner/stats/catalog-stats.js +151 -5
  227. package/dist/src/planner/stats/catalog-stats.js.map +1 -1
  228. package/dist/src/planner/stats/index.d.ts +15 -0
  229. package/dist/src/planner/stats/index.d.ts.map +1 -1
  230. package/dist/src/planner/stats/index.js.map +1 -1
  231. package/dist/src/planner/stats/selectivity-combine.d.ts +53 -0
  232. package/dist/src/planner/stats/selectivity-combine.d.ts.map +1 -0
  233. package/dist/src/planner/stats/selectivity-combine.js +75 -0
  234. package/dist/src/planner/stats/selectivity-combine.js.map +1 -0
  235. package/dist/src/planner/util/column-origins.d.ts +58 -0
  236. package/dist/src/planner/util/column-origins.d.ts.map +1 -0
  237. package/dist/src/planner/util/column-origins.js +90 -0
  238. package/dist/src/planner/util/column-origins.js.map +1 -0
  239. package/dist/src/runtime/deferred-constraint-queue.d.ts +40 -0
  240. package/dist/src/runtime/deferred-constraint-queue.d.ts.map +1 -1
  241. package/dist/src/runtime/deferred-constraint-queue.js +91 -0
  242. package/dist/src/runtime/deferred-constraint-queue.js.map +1 -1
  243. package/dist/src/runtime/emit/aggregate-setup.d.ts +49 -0
  244. package/dist/src/runtime/emit/aggregate-setup.d.ts.map +1 -0
  245. package/dist/src/runtime/emit/aggregate-setup.js +99 -0
  246. package/dist/src/runtime/emit/aggregate-setup.js.map +1 -0
  247. package/dist/src/runtime/emit/aggregate.d.ts.map +1 -1
  248. package/dist/src/runtime/emit/aggregate.js +4 -69
  249. package/dist/src/runtime/emit/aggregate.js.map +1 -1
  250. package/dist/src/runtime/emit/alter-table.d.ts.map +1 -1
  251. package/dist/src/runtime/emit/alter-table.js +354 -165
  252. package/dist/src/runtime/emit/alter-table.js.map +1 -1
  253. package/dist/src/runtime/emit/asof-scan.d.ts.map +1 -1
  254. package/dist/src/runtime/emit/asof-scan.js +11 -0
  255. package/dist/src/runtime/emit/asof-scan.js.map +1 -1
  256. package/dist/src/runtime/emit/between.d.ts.map +1 -1
  257. package/dist/src/runtime/emit/between.js +7 -12
  258. package/dist/src/runtime/emit/between.js.map +1 -1
  259. package/dist/src/runtime/emit/binary.d.ts.map +1 -1
  260. package/dist/src/runtime/emit/binary.js +24 -25
  261. package/dist/src/runtime/emit/binary.js.map +1 -1
  262. package/dist/src/runtime/emit/bloom-join.d.ts.map +1 -1
  263. package/dist/src/runtime/emit/bloom-join.js +8 -16
  264. package/dist/src/runtime/emit/bloom-join.js.map +1 -1
  265. package/dist/src/runtime/emit/case.d.ts.map +1 -1
  266. package/dist/src/runtime/emit/case.js +40 -6
  267. package/dist/src/runtime/emit/case.js.map +1 -1
  268. package/dist/src/runtime/emit/cast.d.ts.map +1 -1
  269. package/dist/src/runtime/emit/cast.js +10 -23
  270. package/dist/src/runtime/emit/cast.js.map +1 -1
  271. package/dist/src/runtime/emit/constraint-check.d.ts.map +1 -1
  272. package/dist/src/runtime/emit/constraint-check.js +72 -51
  273. package/dist/src/runtime/emit/constraint-check.js.map +1 -1
  274. package/dist/src/runtime/emit/create-view.d.ts.map +1 -1
  275. package/dist/src/runtime/emit/create-view.js +6 -0
  276. package/dist/src/runtime/emit/create-view.js.map +1 -1
  277. package/dist/src/runtime/emit/distinct.d.ts.map +1 -1
  278. package/dist/src/runtime/emit/distinct.js +6 -3
  279. package/dist/src/runtime/emit/distinct.js.map +1 -1
  280. package/dist/src/runtime/emit/dml-executor.d.ts.map +1 -1
  281. package/dist/src/runtime/emit/dml-executor.js +188 -84
  282. package/dist/src/runtime/emit/dml-executor.js.map +1 -1
  283. package/dist/src/runtime/emit/filter.d.ts +18 -0
  284. package/dist/src/runtime/emit/filter.d.ts.map +1 -1
  285. package/dist/src/runtime/emit/filter.js +52 -10
  286. package/dist/src/runtime/emit/filter.js.map +1 -1
  287. package/dist/src/runtime/emit/hash-aggregate.d.ts.map +1 -1
  288. package/dist/src/runtime/emit/hash-aggregate.js +16 -65
  289. package/dist/src/runtime/emit/hash-aggregate.js.map +1 -1
  290. package/dist/src/runtime/emit/insert.d.ts.map +1 -1
  291. package/dist/src/runtime/emit/insert.js +18 -7
  292. package/dist/src/runtime/emit/insert.js.map +1 -1
  293. package/dist/src/runtime/emit/join-key-extractor.d.ts +46 -0
  294. package/dist/src/runtime/emit/join-key-extractor.d.ts.map +1 -0
  295. package/dist/src/runtime/emit/join-key-extractor.js +60 -0
  296. package/dist/src/runtime/emit/join-key-extractor.js.map +1 -0
  297. package/dist/src/runtime/emit/join.d.ts.map +1 -1
  298. package/dist/src/runtime/emit/join.js +37 -11
  299. package/dist/src/runtime/emit/join.js.map +1 -1
  300. package/dist/src/runtime/emit/key-set-semi-join.d.ts +29 -0
  301. package/dist/src/runtime/emit/key-set-semi-join.d.ts.map +1 -0
  302. package/dist/src/runtime/emit/key-set-semi-join.js +143 -0
  303. package/dist/src/runtime/emit/key-set-semi-join.js.map +1 -0
  304. package/dist/src/runtime/emit/materialized-view-helpers.d.ts +14 -1
  305. package/dist/src/runtime/emit/materialized-view-helpers.d.ts.map +1 -1
  306. package/dist/src/runtime/emit/materialized-view-helpers.js +33 -3
  307. package/dist/src/runtime/emit/materialized-view-helpers.js.map +1 -1
  308. package/dist/src/runtime/emit/materialized-view.d.ts.map +1 -1
  309. package/dist/src/runtime/emit/materialized-view.js +47 -6
  310. package/dist/src/runtime/emit/materialized-view.js.map +1 -1
  311. package/dist/src/runtime/emit/merge-join.d.ts.map +1 -1
  312. package/dist/src/runtime/emit/merge-join.js +32 -15
  313. package/dist/src/runtime/emit/merge-join.js.map +1 -1
  314. package/dist/src/runtime/emit/operand-comparator.d.ts +40 -0
  315. package/dist/src/runtime/emit/operand-comparator.d.ts.map +1 -0
  316. package/dist/src/runtime/emit/operand-comparator.js +59 -0
  317. package/dist/src/runtime/emit/operand-comparator.js.map +1 -0
  318. package/dist/src/runtime/emit/scan.d.ts.map +1 -1
  319. package/dist/src/runtime/emit/scan.js +11 -2
  320. package/dist/src/runtime/emit/scan.js.map +1 -1
  321. package/dist/src/runtime/emit/set-object-tags.d.ts +8 -0
  322. package/dist/src/runtime/emit/set-object-tags.d.ts.map +1 -1
  323. package/dist/src/runtime/emit/set-object-tags.js +8 -0
  324. package/dist/src/runtime/emit/set-object-tags.js.map +1 -1
  325. package/dist/src/runtime/emit/set-operation.d.ts.map +1 -1
  326. package/dist/src/runtime/emit/set-operation.js +7 -4
  327. package/dist/src/runtime/emit/set-operation.js.map +1 -1
  328. package/dist/src/runtime/emit/sort.d.ts.map +1 -1
  329. package/dist/src/runtime/emit/sort.js +5 -2
  330. package/dist/src/runtime/emit/sort.js.map +1 -1
  331. package/dist/src/runtime/emit/subquery.d.ts.map +1 -1
  332. package/dist/src/runtime/emit/subquery.js +113 -13
  333. package/dist/src/runtime/emit/subquery.js.map +1 -1
  334. package/dist/src/runtime/emit/temporal-arithmetic.d.ts +7 -0
  335. package/dist/src/runtime/emit/temporal-arithmetic.d.ts.map +1 -1
  336. package/dist/src/runtime/emit/temporal-arithmetic.js +15 -7
  337. package/dist/src/runtime/emit/temporal-arithmetic.js.map +1 -1
  338. package/dist/src/runtime/emit/update.d.ts.map +1 -1
  339. package/dist/src/runtime/emit/update.js +44 -3
  340. package/dist/src/runtime/emit/update.js.map +1 -1
  341. package/dist/src/runtime/emit/window.d.ts.map +1 -1
  342. package/dist/src/runtime/emit/window.js +72 -55
  343. package/dist/src/runtime/emit/window.js.map +1 -1
  344. package/dist/src/runtime/foreign-key-actions.d.ts +36 -1
  345. package/dist/src/runtime/foreign-key-actions.d.ts.map +1 -1
  346. package/dist/src/runtime/foreign-key-actions.js +238 -116
  347. package/dist/src/runtime/foreign-key-actions.js.map +1 -1
  348. package/dist/src/runtime/parallel-driver.d.ts +10 -2
  349. package/dist/src/runtime/parallel-driver.d.ts.map +1 -1
  350. package/dist/src/runtime/parallel-driver.js +12 -2
  351. package/dist/src/runtime/parallel-driver.js.map +1 -1
  352. package/dist/src/runtime/register.d.ts.map +1 -1
  353. package/dist/src/runtime/register.js +2 -0
  354. package/dist/src/runtime/register.js.map +1 -1
  355. package/dist/src/runtime/types.d.ts +25 -0
  356. package/dist/src/runtime/types.d.ts.map +1 -1
  357. package/dist/src/runtime/types.js.map +1 -1
  358. package/dist/src/schema/catalog-persistability.d.ts +58 -0
  359. package/dist/src/schema/catalog-persistability.d.ts.map +1 -0
  360. package/dist/src/schema/catalog-persistability.js +87 -0
  361. package/dist/src/schema/catalog-persistability.js.map +1 -0
  362. package/dist/src/schema/catalog.d.ts +17 -1
  363. package/dist/src/schema/catalog.d.ts.map +1 -1
  364. package/dist/src/schema/catalog.js +25 -3
  365. package/dist/src/schema/catalog.js.map +1 -1
  366. package/dist/src/schema/constraint-builder.d.ts +20 -22
  367. package/dist/src/schema/constraint-builder.d.ts.map +1 -1
  368. package/dist/src/schema/constraint-builder.js +43 -36
  369. package/dist/src/schema/constraint-builder.js.map +1 -1
  370. package/dist/src/schema/ddl-generator.d.ts +23 -0
  371. package/dist/src/schema/ddl-generator.d.ts.map +1 -1
  372. package/dist/src/schema/ddl-generator.js +27 -0
  373. package/dist/src/schema/ddl-generator.js.map +1 -1
  374. package/dist/src/schema/function.d.ts +39 -1
  375. package/dist/src/schema/function.d.ts.map +1 -1
  376. package/dist/src/schema/function.js.map +1 -1
  377. package/dist/src/schema/manager.d.ts +28 -0
  378. package/dist/src/schema/manager.d.ts.map +1 -1
  379. package/dist/src/schema/manager.js +82 -14
  380. package/dist/src/schema/manager.js.map +1 -1
  381. package/dist/src/schema/schema-differ.d.ts.map +1 -1
  382. package/dist/src/schema/schema-differ.js +51 -12
  383. package/dist/src/schema/schema-differ.js.map +1 -1
  384. package/dist/src/schema/unique-enforcement.d.ts +31 -0
  385. package/dist/src/schema/unique-enforcement.d.ts.map +1 -1
  386. package/dist/src/schema/unique-enforcement.js +37 -1
  387. package/dist/src/schema/unique-enforcement.js.map +1 -1
  388. package/dist/src/schema/window-function.d.ts +30 -10
  389. package/dist/src/schema/window-function.d.ts.map +1 -1
  390. package/dist/src/schema/window-function.js +20 -16
  391. package/dist/src/schema/window-function.js.map +1 -1
  392. package/dist/src/types/builtin-types.d.ts.map +1 -1
  393. package/dist/src/types/builtin-types.js +30 -4
  394. package/dist/src/types/builtin-types.js.map +1 -1
  395. package/dist/src/types/cast-semantics.d.ts +43 -0
  396. package/dist/src/types/cast-semantics.d.ts.map +1 -0
  397. package/dist/src/types/cast-semantics.js +59 -0
  398. package/dist/src/types/cast-semantics.js.map +1 -0
  399. package/dist/src/types/index.d.ts +1 -1
  400. package/dist/src/types/index.d.ts.map +1 -1
  401. package/dist/src/types/index.js +1 -1
  402. package/dist/src/types/index.js.map +1 -1
  403. package/dist/src/types/json-type.d.ts.map +1 -1
  404. package/dist/src/types/json-type.js +31 -10
  405. package/dist/src/types/json-type.js.map +1 -1
  406. package/dist/src/types/logical-type.d.ts +22 -0
  407. package/dist/src/types/logical-type.d.ts.map +1 -1
  408. package/dist/src/types/logical-type.js.map +1 -1
  409. package/dist/src/types/temporal-types.d.ts.map +1 -1
  410. package/dist/src/types/temporal-types.js +33 -11
  411. package/dist/src/types/temporal-types.js.map +1 -1
  412. package/dist/src/types/validation.d.ts +39 -1
  413. package/dist/src/types/validation.d.ts.map +1 -1
  414. package/dist/src/types/validation.js +60 -0
  415. package/dist/src/types/validation.js.map +1 -1
  416. package/dist/src/util/ast-spine-clone.d.ts +23 -0
  417. package/dist/src/util/ast-spine-clone.d.ts.map +1 -0
  418. package/dist/src/util/ast-spine-clone.js +41 -0
  419. package/dist/src/util/ast-spine-clone.js.map +1 -0
  420. package/dist/src/util/coercion.d.ts +13 -0
  421. package/dist/src/util/coercion.d.ts.map +1 -1
  422. package/dist/src/util/coercion.js +10 -1
  423. package/dist/src/util/coercion.js.map +1 -1
  424. package/dist/src/util/comparison.d.ts +114 -0
  425. package/dist/src/util/comparison.d.ts.map +1 -1
  426. package/dist/src/util/comparison.js +187 -27
  427. package/dist/src/util/comparison.js.map +1 -1
  428. package/dist/src/vtab/best-access-plan.d.ts +87 -0
  429. package/dist/src/vtab/best-access-plan.d.ts.map +1 -1
  430. package/dist/src/vtab/best-access-plan.js +87 -0
  431. package/dist/src/vtab/best-access-plan.js.map +1 -1
  432. package/dist/src/vtab/manifest.d.ts +7 -0
  433. package/dist/src/vtab/manifest.d.ts.map +1 -1
  434. package/dist/src/vtab/memory/connection.d.ts +14 -1
  435. package/dist/src/vtab/memory/connection.d.ts.map +1 -1
  436. package/dist/src/vtab/memory/connection.js +20 -2
  437. package/dist/src/vtab/memory/connection.js.map +1 -1
  438. package/dist/src/vtab/memory/layer/base.d.ts +12 -5
  439. package/dist/src/vtab/memory/layer/base.d.ts.map +1 -1
  440. package/dist/src/vtab/memory/layer/base.js +20 -9
  441. package/dist/src/vtab/memory/layer/base.js.map +1 -1
  442. package/dist/src/vtab/memory/layer/connection.d.ts +17 -0
  443. package/dist/src/vtab/memory/layer/connection.d.ts.map +1 -1
  444. package/dist/src/vtab/memory/layer/connection.js +26 -0
  445. package/dist/src/vtab/memory/layer/connection.js.map +1 -1
  446. package/dist/src/vtab/memory/layer/manager.d.ts +156 -31
  447. package/dist/src/vtab/memory/layer/manager.d.ts.map +1 -1
  448. package/dist/src/vtab/memory/layer/manager.js +695 -158
  449. package/dist/src/vtab/memory/layer/manager.js.map +1 -1
  450. package/dist/src/vtab/memory/layer/plan-filter.d.ts +41 -20
  451. package/dist/src/vtab/memory/layer/plan-filter.d.ts.map +1 -1
  452. package/dist/src/vtab/memory/layer/plan-filter.js +57 -27
  453. package/dist/src/vtab/memory/layer/plan-filter.js.map +1 -1
  454. package/dist/src/vtab/memory/layer/row-convert.d.ts +21 -0
  455. package/dist/src/vtab/memory/layer/row-convert.d.ts.map +1 -0
  456. package/dist/src/vtab/memory/layer/row-convert.js +30 -0
  457. package/dist/src/vtab/memory/layer/row-convert.js.map +1 -0
  458. package/dist/src/vtab/memory/layer/scan-layer.d.ts +6 -3
  459. package/dist/src/vtab/memory/layer/scan-layer.d.ts.map +1 -1
  460. package/dist/src/vtab/memory/layer/scan-layer.js +48 -34
  461. package/dist/src/vtab/memory/layer/scan-layer.js.map +1 -1
  462. package/dist/src/vtab/memory/layer/transaction.d.ts +142 -19
  463. package/dist/src/vtab/memory/layer/transaction.d.ts.map +1 -1
  464. package/dist/src/vtab/memory/layer/transaction.js +237 -73
  465. package/dist/src/vtab/memory/layer/transaction.js.map +1 -1
  466. package/dist/src/vtab/memory/module.d.ts +14 -2
  467. package/dist/src/vtab/memory/module.d.ts.map +1 -1
  468. package/dist/src/vtab/memory/module.js +60 -41
  469. package/dist/src/vtab/memory/module.js.map +1 -1
  470. package/dist/src/vtab/memory/table.d.ts +1 -1
  471. package/dist/src/vtab/memory/table.d.ts.map +1 -1
  472. package/dist/src/vtab/memory/table.js +12 -4
  473. package/dist/src/vtab/memory/table.js.map +1 -1
  474. package/dist/src/vtab/memory/types.d.ts +27 -1
  475. package/dist/src/vtab/memory/types.d.ts.map +1 -1
  476. package/dist/src/vtab/memory/types.js +16 -1
  477. package/dist/src/vtab/memory/types.js.map +1 -1
  478. package/dist/src/vtab/memory/utils/primary-key.d.ts +9 -0
  479. package/dist/src/vtab/memory/utils/primary-key.d.ts.map +1 -1
  480. package/dist/src/vtab/memory/utils/primary-key.js +11 -0
  481. package/dist/src/vtab/memory/utils/primary-key.js.map +1 -1
  482. package/dist/src/vtab/module.d.ts +63 -0
  483. package/dist/src/vtab/module.d.ts.map +1 -1
  484. package/dist/src/vtab/table.d.ts +33 -7
  485. package/dist/src/vtab/table.d.ts.map +1 -1
  486. package/dist/src/vtab/table.js.map +1 -1
  487. package/package.json +3 -3
  488. package/dist/src/planner/rules/cache/rule-in-subquery-cache.d.ts +0 -26
  489. package/dist/src/planner/rules/cache/rule-in-subquery-cache.d.ts.map +0 -1
  490. package/dist/src/planner/rules/cache/rule-in-subquery-cache.js +0 -66
  491. package/dist/src/planner/rules/cache/rule-in-subquery-cache.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"dml-executor.js","sourceRoot":"","sources":["../../../../src/runtime/emit/dml-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dml-executor.js","sourceRoot":"","sources":["../../../../src/runtime/emit/dml-executor.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,23 @@
1
1
  import type { FilterNode } from '../../planner/nodes/filter.js';
2
2
  import type { Instruction } from '../types.js';
3
3
  import type { EmissionContext } from '../emission-context.js';
4
+ /**
5
+ * Emit a `FilterNode`.
6
+ *
7
+ * A conjunctive predicate (`a and b and c`) is split into its top-level conjuncts at
8
+ * emit time and each is compiled into its own on-demand sub-program. Per row the
9
+ * conjuncts run in source order and the row is dropped at the **first** one that does
10
+ * not yield true, so a later conjunct containing an expensive or side-effecting call
11
+ * never runs for a row an earlier conjunct already rejected.
12
+ *
13
+ * This needs no three-valued-logic reasoning at the conjunct boundary: a filter keeps
14
+ * a row only when the predicate is *true*, and under SQL `AND` a conjunct that is
15
+ * `false` **or** `NULL` makes the whole conjunction `false` or `NULL` — either way the
16
+ * row is rejected. The per-conjunct truthiness test is the same `isTruthy` the whole
17
+ * predicate used before, so blob / string / numeric truthiness is unchanged.
18
+ *
19
+ * Nested `AND`s that are not at the top level of the predicate (under a `NOT`, inside
20
+ * a `CASE`, below an `OR`) are untouched and still route through `emitLogicalOp`.
21
+ */
4
22
  export declare function emitFilter(plan: FilterNode, ctx: EmissionContext): Instruction;
5
23
  //# sourceMappingURL=filter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../../../src/runtime/emit/filter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,aAAa,CAAC;AAI/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAc9D,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,eAAe,GAAG,WAAW,CA8B9E"}
1
+ {"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../../../src/runtime/emit/filter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,aAAa,CAAC;AAI/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAyB9D;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,eAAe,GAAG,WAAW,CA2C9E"}
@@ -6,6 +6,7 @@ import { createRowSlot } from '../context-helpers.js';
6
6
  import { QuereusError } from '../../common/errors.js';
7
7
  import { isTruthy } from '../../util/comparison.js';
8
8
  import { resolveMaybe } from '../async-util.js';
9
+ import { splitConjuncts } from '../../planner/analysis/predicate-conjuncts.js';
9
10
  function asPredicateScalar(value) {
10
11
  if (value === null)
11
12
  return null;
@@ -15,21 +16,61 @@ function asPredicateScalar(value) {
15
16
  return value;
16
17
  throw new QuereusError(`Filter predicate returned non-scalar value: ${String(value)}`, StatusCode.INTERNAL);
17
18
  }
19
+ /**
20
+ * Run one predicate sub-program against the current row and reduce it to a keep/drop
21
+ * decision. Resolves without a per-row microtask hop: the sub-program almost always
22
+ * completes synchronously, so the result is only a promise when it genuinely is one.
23
+ * See resolveMaybe in runtime/async-util.ts.
24
+ */
25
+ function evaluatePredicate(rctx, predicate) {
26
+ return resolveMaybe(predicate(rctx), (result) => isTruthy(asPredicateScalar(result)));
27
+ }
28
+ /**
29
+ * Emit a `FilterNode`.
30
+ *
31
+ * A conjunctive predicate (`a and b and c`) is split into its top-level conjuncts at
32
+ * emit time and each is compiled into its own on-demand sub-program. Per row the
33
+ * conjuncts run in source order and the row is dropped at the **first** one that does
34
+ * not yield true, so a later conjunct containing an expensive or side-effecting call
35
+ * never runs for a row an earlier conjunct already rejected.
36
+ *
37
+ * This needs no three-valued-logic reasoning at the conjunct boundary: a filter keeps
38
+ * a row only when the predicate is *true*, and under SQL `AND` a conjunct that is
39
+ * `false` **or** `NULL` makes the whole conjunction `false` or `NULL` — either way the
40
+ * row is rejected. The per-conjunct truthiness test is the same `isTruthy` the whole
41
+ * predicate used before, so blob / string / numeric truthiness is unchanged.
42
+ *
43
+ * Nested `AND`s that are not at the top level of the predicate (under a `NOT`, inside
44
+ * a `CASE`, below an `OR`) are untouched and still route through `emitLogicalOp`.
45
+ */
18
46
  export function emitFilter(plan, ctx) {
19
47
  const sourceInstruction = emitPlanNode(plan.source, ctx);
20
- const predicateFunc = emitCallFromPlan(plan.predicate, ctx);
21
- // Create row descriptor for source attributes
48
+ const conjuncts = splitConjuncts(plan.predicate);
49
+ // NOTE: each conjunct becomes its own sub-program, so N cheap conjuncts that all
50
+ // pass cost N callback invocations per row where the unsplit AND tree cost one
51
+ // (measured ~5-10% on a 3-conjunct all-true scan of 20k memory rows; any conjunct
52
+ // that rejects more than pays it back). If wide all-passing filters ever show up
53
+ // as hot, fuse the cheap side-effect-free conjuncts back into one sub-program.
54
+ const conjunctFuncs = conjuncts.map(conjunct => emitCallFromPlan(conjunct, ctx));
22
55
  const sourceRowDescriptor = buildRowDescriptor(plan.source.getAttributes());
23
- async function* run(rctx, source, predicate) {
56
+ // Variable arity: the conjunct callbacks arrive as a rest tuple, since the param
57
+ // count is decided at emit time.
58
+ async function* run(rctx, source, ...predicates) {
24
59
  const sourceSlot = createRowSlot(rctx, sourceRowDescriptor);
25
60
  try {
26
61
  for await (const sourceRow of source) {
62
+ // The row slot is set before any conjunct runs, so a correlated conjunct
63
+ // sees the current row regardless of where it sits in the order.
27
64
  sourceSlot.set(sourceRow);
28
- // Resolve the predicate without a per-row microtask hop: the sub-program
29
- // almost always completes synchronously, so `await` only when it is
30
- // genuinely a promise. See resolveMaybe in runtime/async-util.ts.
31
- const decision = resolveMaybe(predicate(rctx), (result) => isTruthy(asPredicateScalar(result)));
32
- if (decision instanceof Promise ? await decision : decision) {
65
+ let keep = true;
66
+ for (const predicate of predicates) {
67
+ const decision = evaluatePredicate(rctx, predicate);
68
+ if (!(decision instanceof Promise ? await decision : decision)) {
69
+ keep = false;
70
+ break;
71
+ }
72
+ }
73
+ if (keep) {
33
74
  yield sourceRow;
34
75
  }
35
76
  }
@@ -38,10 +79,11 @@ export function emitFilter(plan, ctx) {
38
79
  sourceSlot.close();
39
80
  }
40
81
  }
82
+ const earlyExit = conjuncts.length > 1 ? ` [${conjuncts.length} conjuncts, early exit]` : '';
41
83
  return {
42
- params: [sourceInstruction, predicateFunc],
84
+ params: [sourceInstruction, ...conjunctFuncs],
43
85
  run: asRun(run),
44
- note: `filter(${plan.predicate.toString()})`
86
+ note: `filter(${plan.predicate.toString()})${earlyExit}`
45
87
  };
46
88
  }
47
89
  //# sourceMappingURL=filter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"filter.js","sourceRoot":"","sources":["../../../../src/runtime/emit/filter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAAe,UAAU,EAA2B,MAAM,uBAAuB,CAAC;AAEzF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,SAAS,iBAAiB,CAAC,KAAc;IACxC,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAChC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACpI,IAAI,KAAK,YAAY,UAAU;QAAE,OAAO,KAAK,CAAC;IAC9C,MAAM,IAAI,YAAY,CAAC,+CAA+C,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;AAC7G,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAgB,EAAE,GAAoB;IAChE,MAAM,iBAAiB,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACzD,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAE5D,8CAA8C;IAC9C,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC;IAE5E,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,IAAoB,EAAE,MAA0B,EAAE,SAA+C;QACpH,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;QAC5D,IAAI,CAAC;YACJ,IAAI,KAAK,EAAE,MAAM,SAAS,IAAI,MAAM,EAAE,CAAC;gBACtC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBAC1B,yEAAyE;gBACzE,oEAAoE;gBACpE,kEAAkE;gBAClE,MAAM,QAAQ,GAAG,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBAChG,IAAI,QAAQ,YAAY,OAAO,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;oBAC7D,MAAM,SAAS,CAAC;gBACjB,CAAC;YACF,CAAC;QACF,CAAC;gBAAS,CAAC;YACV,UAAU,CAAC,KAAK,EAAE,CAAC;QACpB,CAAC;IACF,CAAC;IAED,OAAO;QACN,MAAM,EAAE,CAAC,iBAAiB,EAAE,aAAa,CAAC;QAC1C,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;QACf,IAAI,EAAE,UAAU,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,GAAG;KAC5C,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"filter.js","sourceRoot":"","sources":["../../../../src/runtime/emit/filter.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"hash-aggregate.d.ts","sourceRoot":"","sources":["../../../../src/runtime/emit/hash-aggregate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,aAAa,CAAC;AAI/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AA2B9D,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,iBAAiB,EAAE,GAAG,EAAE,eAAe,GAAG,WAAW,CAyW5F"}
1
+ {"version":3,"file":"hash-aggregate.d.ts","sourceRoot":"","sources":["../../../../src/runtime/emit/hash-aggregate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,aAAa,CAAC;AAI/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AA0B9D,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,iBAAiB,EAAE,GAAG,EAAE,eAAe,GAAG,WAAW,CAqT5F"}
@@ -10,9 +10,10 @@ import { quereusError } from '../../common/errors.js';
10
10
  import { StatusCode } from '../../common/types.js';
11
11
  import { buildRowDescriptor } from '../../util/row-descriptor.js';
12
12
  import { serializeKeyNullGrouping } from '../../util/key-serializer.js';
13
- import { createTypedComparator } from '../../util/comparison.js';
13
+ import { semanticKeyTransform } from '../../util/comparison.js';
14
14
  import { hashKeyCollationName } from '../../planner/analysis/comparison-collation.js';
15
15
  import { cloneInitialValue, findSourceRelation, ctxLog } from './aggregate.js';
16
+ import { bindAggregateSchemas, buildDistinctComparators, computeAggregateSkipCoercion } from './aggregate-setup.js';
16
17
  export function emitHashAggregate(plan, ctx) {
17
18
  const sourceRelation = findSourceRelation(plan.source);
18
19
  const sourceAttributes = plan.source.getAttributes();
@@ -37,54 +38,16 @@ export function emitHashAggregate(plan, ctx) {
37
38
  const exprType = expr.getType();
38
39
  return ctx.resolveKeyNormalizer(hashKeyCollationName(exprType.collationName, [exprType]));
39
40
  });
40
- // Pre-resolve typed comparators for DISTINCT aggregate tracking per aggregate
41
- const distinctComparators = [];
42
- for (const agg of plan.aggregates) {
43
- const funcNode = agg.expression;
44
- if (funcNode instanceof AggregateFunctionCallNode) {
45
- const args = funcNode.args || [];
46
- if (args.length === 1) {
47
- const argType = args[0].getType();
48
- const collation = argType.collationName ? ctx.resolveCollation(argType.collationName) : undefined;
49
- const cmp = createTypedComparator(argType.logicalType, collation);
50
- distinctComparators.push((a, b) => cmp(a, b));
51
- }
52
- else if (args.length > 1) {
53
- const argComparators = args.map(arg => {
54
- const argType = arg.getType();
55
- const collation = argType.collationName ? ctx.resolveCollation(argType.collationName) : undefined;
56
- return createTypedComparator(argType.logicalType, collation);
57
- });
58
- distinctComparators.push((a, b) => {
59
- const arrA = a;
60
- const arrB = b;
61
- for (let i = 0; i < argComparators.length; i++) {
62
- const cmp = argComparators[i](arrA[i], arrB[i]);
63
- if (cmp !== 0)
64
- return cmp;
65
- }
66
- return 0;
67
- });
68
- }
69
- else {
70
- distinctComparators.push(() => 0);
71
- }
72
- }
73
- else {
74
- distinctComparators.push(() => 0);
75
- }
76
- }
77
- // Pre-compute per-aggregate whether coercion can be skipped
78
- const aggregateSkipCoercion = plan.aggregates.map(agg => {
79
- const funcNode = agg.expression;
80
- if (!(funcNode instanceof AggregateFunctionCallNode))
81
- return false;
82
- const funcName = (funcNode.functionName || '').toUpperCase();
83
- if (funcName === 'COUNT' || funcName === 'GROUP_CONCAT' || funcName.startsWith('JSON_'))
84
- return false;
85
- const args = funcNode.args || [];
86
- return args.length > 0 && args.every(arg => arg.getType().logicalType.isNumeric);
87
- });
41
+ // Group-key canonicalizers for semantic-ordering key types: values the type's
42
+ // compare treats as equal (TIMESPAN 'PT1H' ≡ 'PT60M') must land in one hash
43
+ // bucket, so they serialize via the type's groupKey representative. The RAW
44
+ // first-seen value stays in groupValues (the emitted representative — which one
45
+ // survives is unspecified, matching DISTINCT).
46
+ const keyCanonicalizers = plan.groupBy.map(expr => semanticKeyTransform(expr.getType().logicalType));
47
+ const hasKeyCanonicalizer = keyCanonicalizers.some(c => c !== undefined);
48
+ const distinctComparators = buildDistinctComparators(plan.aggregates, ctx);
49
+ const aggregateSkipCoercion = computeAggregateSkipCoercion(plan.aggregates);
50
+ const { schemas: aggregateSchemas, distinctFlags: aggregateDistinctFlags } = bindAggregateSchemas(plan.aggregates, ctx);
88
51
  async function* run(ctx, sourceRows, ...groupByAndAggregateArgs) {
89
52
  const numGroupBy = plan.groupBy.length;
90
53
  const groupByFunctions = groupByAndAggregateArgs.slice(0, numGroupBy);
@@ -100,21 +63,6 @@ export function emitHashAggregate(plan, ctx) {
100
63
  aggregateArgFunctions.push(aggregateArgs);
101
64
  aggregateArgOffset += args.length;
102
65
  }
103
- // Pre-resolve aggregate schemas and distinct flags
104
- const aggregateSchemas = [];
105
- const aggregateDistinctFlags = [];
106
- for (const agg of plan.aggregates) {
107
- const funcNode = agg.expression;
108
- if (!(funcNode instanceof AggregateFunctionCallNode)) {
109
- quereusError(`Expected AggregateFunctionCallNode but got ${funcNode.constructor.name}`, StatusCode.INTERNAL);
110
- }
111
- const funcSchema = funcNode.functionSchema;
112
- if (!isAggregateFunctionSchema(funcSchema)) {
113
- quereusError(`Function ${funcNode.functionName || 'unknown'} is not an aggregate function`, StatusCode.INTERNAL);
114
- }
115
- aggregateSchemas.push(funcSchema);
116
- aggregateDistinctFlags.push(funcNode.isDistinct);
117
- }
118
66
  function createAccumulators() {
119
67
  return aggregateSchemas.map(schema => cloneInitialValue(isAggregateFunctionSchema(schema) ? schema.initialValue : undefined));
120
68
  }
@@ -208,7 +156,10 @@ export function emitHashAggregate(plan, ctx) {
208
156
  groupValues.push(await groupByFunc(ctx));
209
157
  }
210
158
  // Serialize key using collation-aware serialization (NULLs group together per SQL standard)
211
- const key = serializeKeyNullGrouping(groupValues, keyNormalizers);
159
+ const keyValues = hasKeyCanonicalizer
160
+ ? groupValues.map((v, i) => keyCanonicalizers[i] ? keyCanonicalizers[i](v) : v)
161
+ : groupValues;
162
+ const key = serializeKeyNullGrouping(keyValues, keyNormalizers);
212
163
  // Look up or create group entry
213
164
  let group = groups.get(key);
214
165
  if (!group) {
@@ -1 +1 @@
1
- {"version":3,"file":"hash-aggregate.js","sourceRoot":"","sources":["../../../../src/runtime/emit/hash-aggregate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hash-aggregate.js","sourceRoot":"","sources":["../../../../src/runtime/emit/hash-aggregate.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"insert.d.ts","sourceRoot":"","sources":["../../../../src/runtime/emit/insert.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,aAAa,CAAC;AAI/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,eAAe,GAAG,WAAW,CAmC9E"}
1
+ {"version":3,"file":"insert.d.ts","sourceRoot":"","sources":["../../../../src/runtime/emit/insert.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,aAAa,CAAC;AAI/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAG9D,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,eAAe,GAAG,WAAW,CAiD9E"}
@@ -1,12 +1,22 @@
1
1
  import { asRun } from '../types.js';
2
2
  import { emitPlanNode } from '../emitters.js';
3
+ import { buildRowCoercion } from '../../types/validation.js';
3
4
  export function emitInsert(plan, ctx) {
4
- // INSERT node now only handles data transformations and passes flat rows through.
5
+ // INSERT node only handles data transformations and passes flat rows through.
5
6
  // The actual database insert operations are handled by DmlExecutorNode.
6
- // Type conversion is handled by the table manager's validateAndParse in performInsert.
7
+ const tableSchema = plan.table.tableSchema;
8
+ const colCount = tableSchema.columns.length;
9
+ // Convert each cell to its declared column type HERE — the top of the DML
10
+ // pipeline — driven by the source expressions' static types, so constraint
11
+ // checking and the storage layer (which is told `preCoerced`) both see the
12
+ // declared form exactly once. The source is already projected into full
13
+ // table-column order (buildExpandedSource), so source attributes align
14
+ // positionally with table columns. A cell whose source type already IS the
15
+ // column's type (e.g. `insert into b select j from a` for a JSON column) is
16
+ // left alone — see buildRowCoercion.
17
+ const sourceAttrs = plan.source.getAttributes();
18
+ const coerceNewRow = buildRowCoercion(tableSchema.columns.map((_, i) => sourceAttrs[i]?.type.logicalType), tableSchema.columns);
7
19
  async function* run(_ctx, sourceValue) {
8
- const tableSchema = plan.table.tableSchema;
9
- const colCount = tableSchema.columns.length;
10
20
  for await (const sourceRow of sourceValue) {
11
21
  // Convert source row to flat OLD/NEW format
12
22
  // For INSERT: OLD values are all NULL, NEW values are from source
@@ -15,10 +25,11 @@ export function emitInsert(plan, ctx) {
15
25
  for (let i = 0; i < colCount; i++) {
16
26
  flatRow[i] = null;
17
27
  }
18
- // Fill NEW section with source values (indices n..2n-1)
19
- // No affinity conversion here - let the type system handle it
28
+ // Fill NEW section (indices n..2n-1) with the source values, converted
29
+ // to declared column types where the static source type requires it.
30
+ const newRow = coerceNewRow ? coerceNewRow(sourceRow) : sourceRow;
20
31
  for (let colIdx = 0; colIdx < colCount; colIdx++) {
21
- flatRow[colCount + colIdx] = sourceRow[colIdx];
32
+ flatRow[colCount + colIdx] = newRow[colIdx];
22
33
  }
23
34
  yield flatRow;
24
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"insert.js","sourceRoot":"","sources":["../../../../src/runtime/emit/insert.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAI9C,MAAM,UAAU,UAAU,CAAC,IAAgB,EAAE,GAAoB;IAChE,kFAAkF;IAClF,wEAAwE;IACxE,uFAAuF;IACvF,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,IAAoB,EAAE,WAA+B;QACxE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QAC3C,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;QAE5C,IAAI,KAAK,EAAE,MAAM,SAAS,IAAI,WAAW,EAAE,CAAC;YAC3C,4CAA4C;YAC5C,kEAAkE;YAClE,MAAM,OAAO,GAAQ,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;YAE7C,+CAA+C;YAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;gBACnC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YACnB,CAAC;YAED,wDAAwD;YACxD,8DAA8D;YAC9D,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC;gBAClD,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;YAChD,CAAC;YAED,MAAM,OAAO,CAAC;QACf,CAAC;IACF,CAAC;IAED,MAAM,iBAAiB,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAEzD,OAAO;QACN,MAAM,EAAE,CAAC,iBAAiB,CAAC;QAC3B,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;QACf,IAAI,EAAE,cAAc,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,GAAG;KAClD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"insert.js","sourceRoot":"","sources":["../../../../src/runtime/emit/insert.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,MAAM,UAAU,UAAU,CAAC,IAAgB,EAAE,GAAoB;IAChE,8EAA8E;IAC9E,wEAAwE;IACxE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;IAC3C,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;IAE5C,0EAA0E;IAC1E,2EAA2E;IAC3E,2EAA2E;IAC3E,wEAAwE;IACxE,uEAAuE;IACvE,2EAA2E;IAC3E,4EAA4E;IAC5E,qCAAqC;IACrC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;IAChD,MAAM,YAAY,GAAG,gBAAgB,CACpC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,EACnE,WAAW,CAAC,OAAO,CACnB,CAAC;IAEF,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,IAAoB,EAAE,WAA+B;QACxE,IAAI,KAAK,EAAE,MAAM,SAAS,IAAI,WAAW,EAAE,CAAC;YAC3C,4CAA4C;YAC5C,kEAAkE;YAClE,MAAM,OAAO,GAAQ,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;YAE7C,+CAA+C;YAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;gBACnC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YACnB,CAAC;YAED,uEAAuE;YACvE,qEAAqE;YACrE,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAClE,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC;gBAClD,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YAC7C,CAAC;YAED,MAAM,OAAO,CAAC;QACf,CAAC;IACF,CAAC;IAED,MAAM,iBAAiB,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAEzD,OAAO;QACN,MAAM,EAAE,CAAC,iBAAiB,CAAC;QAC3B,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;QACf,IAAI,EAAE,cAAc,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,GAAG;KAClD,CAAC;AACH,CAAC"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Shared join-key extraction for hash-style join emitters (bloom join, key-set
3
+ * semi join). Builds the per-pair collation normalizers and semantic-ordering
4
+ * canonicalizers once, and returns a single `extractKey(row, indices)` closure
5
+ * both sides of a join call. The two sides MUST agree bit-for-bit on the
6
+ * serialized key — two copies of this logic would drift, and the drift would
7
+ * show up as missing rows.
8
+ */
9
+ import type { Row } from '../../common/types.js';
10
+ import type { ScalarType } from '../../common/datatype.js';
11
+ import type { EmissionContext } from '../emission-context.js';
12
+ /**
13
+ * Serialize the join key of `row` at `indices` (one index per equi-pair, in
14
+ * pair order). Returns null when any component is SQL NULL — a null key can
15
+ * never match.
16
+ */
17
+ export type JoinKeyExtractor = (row: Row, indices: readonly number[]) => string | null;
18
+ /**
19
+ * Build a {@link JoinKeyExtractor} for a list of equi-pairs, given each pair's
20
+ * two side types (left-side type first; order does not affect the result — the
21
+ * collation resolution is symmetric).
22
+ *
23
+ * Per pair, the comparison collation is resolved through the shared provenance
24
+ * lattice so both sides' key normalization agrees and matches every other join
25
+ * algorithm and the nested-loop fallback. The symmetric resolution is what
26
+ * makes MISMATCHED-collation pairs (declared NOCASE vs defaulted BINARY —
27
+ * tagged `collationsMatch: false` by `equi-pair-extractor`) hash-joinable:
28
+ * both sides' keys normalize under the one resolved collation, exactly what
29
+ * `=` would compare under. Throws on an explicit/declared conflict — a loud
30
+ * backstop; the extractor declines conflicting pairs (they stay in the
31
+ * residual), so this is unreachable for admitted pairs.
32
+ *
33
+ * Semantic-ordering key types additionally canonicalize: the serialized key IS
34
+ * the join match (no re-verify), so values `=` treats as equal (TIMESPAN
35
+ * 'PT1H' ≡ 'PT60M') must serialize identically. Mirrors GROUP BY in
36
+ * hash-aggregate.ts; per pair, active only when both sides declare the same
37
+ * semantic-ordering logical type with a groupKey hook. LOCKSTEP: a MIXED pair
38
+ * (one side semantic-ordering, the other not) can no longer reach a hash join —
39
+ * `equi-pair-extractor`'s semantic-ordering gate demotes it to the residual, so
40
+ * the `=` operator evaluates it in the generic join. Canonicalizing such a pair
41
+ * instead of declining would be unsound anyway (TIMESPAN's groupKey yields a
42
+ * NUMBER, which would hash-match a timespan-vs-integer pair that `=` calls
43
+ * unequal); see the gate's docstring.
44
+ */
45
+ export declare function buildJoinKeyExtractor(pairTypes: ReadonlyArray<readonly [ScalarType, ScalarType]>, ctx: EmissionContext): JoinKeyExtractor;
46
+ //# sourceMappingURL=join-key-extractor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"join-key-extractor.d.ts","sourceRoot":"","sources":["../../../../src/runtime/emit/join-key-extractor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAK9D;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE,KAAK,MAAM,GAAG,IAAI,CAAC;AAEvF;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,qBAAqB,CACpC,SAAS,EAAE,aAAa,CAAC,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,EAC3D,GAAG,EAAE,eAAe,GAClB,gBAAgB,CAqBlB"}