@quereus/quereus 4.3.2 → 4.4.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 (142) hide show
  1. package/dist/src/core/database-external-changes.d.ts +2 -2
  2. package/dist/src/core/database-external-changes.d.ts.map +1 -1
  3. package/dist/src/core/database-external-changes.js +12 -9
  4. package/dist/src/core/database-external-changes.js.map +1 -1
  5. package/dist/src/core/database-materialized-views-apply.d.ts +156 -14
  6. package/dist/src/core/database-materialized-views-apply.d.ts.map +1 -1
  7. package/dist/src/core/database-materialized-views-apply.js +370 -65
  8. package/dist/src/core/database-materialized-views-apply.js.map +1 -1
  9. package/dist/src/core/database-materialized-views-plan-builders.d.ts +65 -1
  10. package/dist/src/core/database-materialized-views-plan-builders.d.ts.map +1 -1
  11. package/dist/src/core/database-materialized-views-plan-builders.js +347 -8
  12. package/dist/src/core/database-materialized-views-plan-builders.js.map +1 -1
  13. package/dist/src/core/database-materialized-views-plans.d.ts +254 -30
  14. package/dist/src/core/database-materialized-views-plans.d.ts.map +1 -1
  15. package/dist/src/core/database-materialized-views.d.ts +96 -40
  16. package/dist/src/core/database-materialized-views.d.ts.map +1 -1
  17. package/dist/src/core/database-materialized-views.js +172 -116
  18. package/dist/src/core/database-materialized-views.js.map +1 -1
  19. package/dist/src/core/database.d.ts.map +1 -1
  20. package/dist/src/core/database.js +20 -17
  21. package/dist/src/core/database.js.map +1 -1
  22. package/dist/src/func/builtins/aggregate.d.ts.map +1 -1
  23. package/dist/src/func/builtins/aggregate.js +127 -21
  24. package/dist/src/func/builtins/aggregate.js.map +1 -1
  25. package/dist/src/func/registration.d.ts +6 -1
  26. package/dist/src/func/registration.d.ts.map +1 -1
  27. package/dist/src/func/registration.js +16 -0
  28. package/dist/src/func/registration.js.map +1 -1
  29. package/dist/src/planner/analysis/equi-correlation.d.ts +26 -0
  30. package/dist/src/planner/analysis/equi-correlation.d.ts.map +1 -0
  31. package/dist/src/planner/analysis/equi-correlation.js +62 -0
  32. package/dist/src/planner/analysis/equi-correlation.js.map +1 -0
  33. package/dist/src/planner/analysis/query-rewrite-matcher.d.ts +54 -18
  34. package/dist/src/planner/analysis/query-rewrite-matcher.d.ts.map +1 -1
  35. package/dist/src/planner/analysis/query-rewrite-matcher.js +86 -42
  36. package/dist/src/planner/analysis/query-rewrite-matcher.js.map +1 -1
  37. package/dist/src/planner/analysis/scalar-subqueries.d.ts +28 -0
  38. package/dist/src/planner/analysis/scalar-subqueries.d.ts.map +1 -0
  39. package/dist/src/planner/analysis/scalar-subqueries.js +60 -0
  40. package/dist/src/planner/analysis/scalar-subqueries.js.map +1 -0
  41. package/dist/src/planner/building/select.d.ts.map +1 -1
  42. package/dist/src/planner/building/select.js +15 -1
  43. package/dist/src/planner/building/select.js.map +1 -1
  44. package/dist/src/planner/building/with.d.ts.map +1 -1
  45. package/dist/src/planner/building/with.js +5 -8
  46. package/dist/src/planner/building/with.js.map +1 -1
  47. package/dist/src/planner/cache/materialization-advisory.d.ts +33 -0
  48. package/dist/src/planner/cache/materialization-advisory.d.ts.map +1 -1
  49. package/dist/src/planner/cache/materialization-advisory.js +164 -28
  50. package/dist/src/planner/cache/materialization-advisory.js.map +1 -1
  51. package/dist/src/planner/cache/reference-graph.d.ts +0 -4
  52. package/dist/src/planner/cache/reference-graph.d.ts.map +1 -1
  53. package/dist/src/planner/cache/reference-graph.js +5 -13
  54. package/dist/src/planner/cache/reference-graph.js.map +1 -1
  55. package/dist/src/planner/cost/index.d.ts +28 -7
  56. package/dist/src/planner/cost/index.d.ts.map +1 -1
  57. package/dist/src/planner/cost/index.js +26 -0
  58. package/dist/src/planner/cost/index.js.map +1 -1
  59. package/dist/src/planner/nodes/cache-node.d.ts +18 -2
  60. package/dist/src/planner/nodes/cache-node.d.ts.map +1 -1
  61. package/dist/src/planner/nodes/cache-node.js +42 -3
  62. package/dist/src/planner/nodes/cache-node.js.map +1 -1
  63. package/dist/src/planner/nodes/cte-node.d.ts +15 -1
  64. package/dist/src/planner/nodes/cte-node.d.ts.map +1 -1
  65. package/dist/src/planner/nodes/cte-node.js +12 -2
  66. package/dist/src/planner/nodes/cte-node.js.map +1 -1
  67. package/dist/src/planner/nodes/recursive-cte-node.d.ts +30 -1
  68. package/dist/src/planner/nodes/recursive-cte-node.d.ts.map +1 -1
  69. package/dist/src/planner/nodes/recursive-cte-node.js +30 -3
  70. package/dist/src/planner/nodes/recursive-cte-node.js.map +1 -1
  71. package/dist/src/planner/optimizer.d.ts.map +1 -1
  72. package/dist/src/planner/optimizer.js +129 -1
  73. package/dist/src/planner/optimizer.js.map +1 -1
  74. package/dist/src/planner/rules/cache/rule-cte-optimization.d.ts.map +1 -1
  75. package/dist/src/planner/rules/cache/rule-cte-optimization.js +8 -1
  76. package/dist/src/planner/rules/cache/rule-cte-optimization.js.map +1 -1
  77. package/dist/src/planner/rules/cache/rule-in-subquery-cache.d.ts +7 -0
  78. package/dist/src/planner/rules/cache/rule-in-subquery-cache.d.ts.map +1 -1
  79. package/dist/src/planner/rules/cache/rule-in-subquery-cache.js +14 -1
  80. package/dist/src/planner/rules/cache/rule-in-subquery-cache.js.map +1 -1
  81. package/dist/src/planner/rules/cache/rule-materialized-view-rewrite.d.ts.map +1 -1
  82. package/dist/src/planner/rules/cache/rule-materialized-view-rewrite.js +53 -54
  83. package/dist/src/planner/rules/cache/rule-materialized-view-rewrite.js.map +1 -1
  84. package/dist/src/planner/rules/cache/rule-mutating-subquery-cache.d.ts.map +1 -1
  85. package/dist/src/planner/rules/cache/rule-mutating-subquery-cache.js +6 -0
  86. package/dist/src/planner/rules/cache/rule-mutating-subquery-cache.js.map +1 -1
  87. package/dist/src/planner/rules/cache/rule-nested-loop-right-cache.d.ts +25 -0
  88. package/dist/src/planner/rules/cache/rule-nested-loop-right-cache.d.ts.map +1 -0
  89. package/dist/src/planner/rules/cache/rule-nested-loop-right-cache.js +176 -0
  90. package/dist/src/planner/rules/cache/rule-nested-loop-right-cache.js.map +1 -0
  91. package/dist/src/planner/rules/cache/rule-scalar-subquery-cache.d.ts +29 -0
  92. package/dist/src/planner/rules/cache/rule-scalar-subquery-cache.d.ts.map +1 -0
  93. package/dist/src/planner/rules/cache/rule-scalar-subquery-cache.js +66 -0
  94. package/dist/src/planner/rules/cache/rule-scalar-subquery-cache.js.map +1 -0
  95. package/dist/src/planner/rules/join/rule-fanout-lookup-join.d.ts.map +1 -1
  96. package/dist/src/planner/rules/join/rule-fanout-lookup-join.js +1 -54
  97. package/dist/src/planner/rules/join/rule-fanout-lookup-join.js.map +1 -1
  98. package/dist/src/planner/rules/subquery/rule-scalar-agg-decorrelation.d.ts +191 -0
  99. package/dist/src/planner/rules/subquery/rule-scalar-agg-decorrelation.d.ts.map +1 -0
  100. package/dist/src/planner/rules/subquery/rule-scalar-agg-decorrelation.js +623 -0
  101. package/dist/src/planner/rules/subquery/rule-scalar-agg-decorrelation.js.map +1 -0
  102. package/dist/src/planner/rules/subquery/rule-subquery-decorrelation.d.ts +10 -1
  103. package/dist/src/planner/rules/subquery/rule-subquery-decorrelation.d.ts.map +1 -1
  104. package/dist/src/planner/rules/subquery/rule-subquery-decorrelation.js +242 -51
  105. package/dist/src/planner/rules/subquery/rule-subquery-decorrelation.js.map +1 -1
  106. package/dist/src/runtime/cache/shared-cache.d.ts +7 -0
  107. package/dist/src/runtime/cache/shared-cache.d.ts.map +1 -1
  108. package/dist/src/runtime/cache/shared-cache.js +34 -1
  109. package/dist/src/runtime/cache/shared-cache.js.map +1 -1
  110. package/dist/src/runtime/emit/aggregate.d.ts +2 -3
  111. package/dist/src/runtime/emit/aggregate.d.ts.map +1 -1
  112. package/dist/src/runtime/emit/aggregate.js +6 -15
  113. package/dist/src/runtime/emit/aggregate.js.map +1 -1
  114. package/dist/src/runtime/emit/cache.d.ts +7 -3
  115. package/dist/src/runtime/emit/cache.d.ts.map +1 -1
  116. package/dist/src/runtime/emit/cache.js +23 -6
  117. package/dist/src/runtime/emit/cache.js.map +1 -1
  118. package/dist/src/runtime/emit/cte.d.ts.map +1 -1
  119. package/dist/src/runtime/emit/cte.js +43 -20
  120. package/dist/src/runtime/emit/cte.js.map +1 -1
  121. package/dist/src/runtime/emit/dml-executor.d.ts.map +1 -1
  122. package/dist/src/runtime/emit/dml-executor.js +68 -43
  123. package/dist/src/runtime/emit/dml-executor.js.map +1 -1
  124. package/dist/src/runtime/emit/materialized-view-helpers.d.ts.map +1 -1
  125. package/dist/src/runtime/emit/materialized-view-helpers.js +5 -4
  126. package/dist/src/runtime/emit/materialized-view-helpers.js.map +1 -1
  127. package/dist/src/runtime/emit/recursive-cte.d.ts.map +1 -1
  128. package/dist/src/runtime/emit/recursive-cte.js +59 -1
  129. package/dist/src/runtime/emit/recursive-cte.js.map +1 -1
  130. package/dist/src/runtime/parallel-driver.d.ts +15 -1
  131. package/dist/src/runtime/parallel-driver.d.ts.map +1 -1
  132. package/dist/src/runtime/parallel-driver.js +17 -1
  133. package/dist/src/runtime/parallel-driver.js.map +1 -1
  134. package/dist/src/runtime/types.d.ts +36 -0
  135. package/dist/src/runtime/types.d.ts.map +1 -1
  136. package/dist/src/runtime/types.js.map +1 -1
  137. package/dist/src/schema/function.d.ts +79 -0
  138. package/dist/src/schema/function.d.ts.map +1 -1
  139. package/dist/src/schema/function.js.map +1 -1
  140. package/dist/src/vtab/memory/layer/scan-layer.js +21 -2
  141. package/dist/src/vtab/memory/layer/scan-layer.js.map +1 -1
  142. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"database-materialized-views-plan-builders.js","sourceRoot":"","sources":["../../../src/core/database-materialized-views-plan-builders.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"database-materialized-views-plan-builders.js","sourceRoot":"","sources":["../../../src/core/database-materialized-views-plan-builders.ts"],"names":[],"mappings":"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"}
@@ -13,9 +13,12 @@ import type { SchemaManager } from '../schema/manager.js';
13
13
  import type { SqlValue, Row } from '../common/types.js';
14
14
  import type { CollationFunction, CollationResolver } from '../types/logical-type.js';
15
15
  import type { PrimaryKeyColumnDefinition } from '../schema/table.js';
16
+ import type { BTreeKeyForPrimary } from '../vtab/memory/types.js';
16
17
  import { Scheduler } from '../runtime/scheduler.js';
17
18
  import type { BindingMode } from '../planner/analysis/binding-extractor.js';
18
19
  import type { MaintenanceSourceStats, MaintenanceStrategy } from '../planner/cost/index.js';
20
+ import type { AggregateAlgebra, AggregateFunctionSchema } from '../schema/function.js';
21
+ import type { AggValue } from '../func/registration.js';
19
22
  import type { DerivedRowConstraintValidator } from './derived-row-validator.js';
20
23
  import type { MaintainedTableSchema } from '../schema/derivation.js';
21
24
  import type { VirtualTableConnection } from '../vtab/connection.js';
@@ -56,11 +59,15 @@ export interface MaterializedViewManagerContext {
56
59
  * ({@link MaterializedViewManager.buildMaintenancePlan}) produces four bounded-delta arms:
57
60
  * `'inverse-projection'` (the covering-index shape), `'residual-recompute'` (single-source
58
61
  * aggregates), `'prefix-delete'` (single-source lateral-TVF fan-out), and `'join-residual'`
59
- * (the provably-1:1 inner join) each applied **per source row, immediately**. The
60
- * `'full-rebuild'` floor (the always-correct convergence point for bodies no bounded-delta
61
- * arm fits) is the fall-through the builder routes to whenever no bounded-delta arm matches;
62
- * it is the one **deferred** arm — marked dirty per row and rebuilt once per statement at
63
- * {@link MaterializedViewManager.flushDeferredRebuilds}.
62
+ * (the provably-1:1 inner join). Only `'inverse-projection'` is applied **per source row,
63
+ * immediately** its backing is read mid-statement by covering-UNIQUE enforcement, and its
64
+ * delta is a cheap pure projection. The three **residual** arms accumulate their affected
65
+ * binding keys into the per-statement {@link ResidualKeyBatch} (deduped across the
66
+ * statement's changes) and recompute once per distinct key at the end-of-statement flush.
67
+ * The `'full-rebuild'` floor (the always-correct convergence point for bodies no
68
+ * bounded-delta arm fits) is likewise deferred — marked dirty per row and rebuilt once per
69
+ * statement. Both deferred kinds drain at
70
+ * {@link MaterializedViewManager.flushDeferredMaintenance}.
64
71
  */
65
72
  export type MaintenancePlan = InverseProjectionPlan | FullRebuildPlan | ResidualRecomputePlan | PrefixDeletePlan | JoinResidualPlan;
66
73
  /**
@@ -76,10 +83,31 @@ export interface BackingPkColumn extends PrimaryKeyColumnDefinition {
76
83
  /** Resolved comparator for {@link collation}; BINARY when the column declares no COLLATE. */
77
84
  readonly collationFn: CollationFunction;
78
85
  }
86
+ /**
87
+ * The three **residual** (key-filtered recompute) arms — every {@link MaintenancePlan}
88
+ * kind except `'inverse-projection'` and `'full-rebuild'`. These are the arms the
89
+ * per-statement {@link ResidualKeyBatch} defers: their affected binding keys accumulate
90
+ * (deduped) during the statement's row loop and each distinct key's residual runs once
91
+ * at the end-of-statement flush ({@link MaterializedViewManager.flushDeferredMaintenance}).
92
+ */
93
+ export type ResidualMaintenancePlan = ResidualRecomputePlan | PrefixDeletePlan | JoinResidualPlan;
94
+ /**
95
+ * Fields shared by the three residual arms. `fullRebuildScheduler` is the per-statement
96
+ * **degrade-to-rebuild escape**: when the statement's distinct affected-key count makes
97
+ * k residual runs cost more than one whole-body rebuild (`shouldDegradeToRebuild` against
98
+ * {@link MaintenancePlanCommon.sourceStats}), the flush runs this scheduler to completion
99
+ * and applies a single `'replace-all'` diff instead — the stored `chosenStrategy` is
100
+ * unchanged, so a later low-cardinality statement naturally reverts to per-key residuals.
101
+ * Compiled once at registration ({@link buildMaintenancePlan}) exactly like the floor's
102
+ * own `bodyScheduler`; optional defensively (an absent scheduler just skips the demotion).
103
+ */
104
+ export interface ResidualArmCommon {
105
+ fullRebuildScheduler?: Scheduler;
106
+ }
79
107
  /**
80
108
  * Structural subset of the fields the forward (driving-source) residual-recompute
81
109
  * apply path reads — shared by the aggregate {@link ResidualRecomputePlan} and the
82
- * 1:1-join {@link JoinResidualPlan} so both drive {@link MaterializedViewManager.applyForwardResidual}
110
+ * 1:1-join {@link JoinResidualPlan} so both drive {@link applyForwardResidual}
83
111
  * unchanged. For an aggregate the forward key is the group key (`'gk'`); for a join
84
112
  * it is the driving table `T`'s PK (`'pk'`).
85
113
  */
@@ -138,9 +166,10 @@ export interface CoarseningWatchColumn {
138
166
  /**
139
167
  * Common identity + cost-gate fields shared by every {@link MaintenancePlan} arm.
140
168
  * `chosenStrategy` / `sourceStats` are set once by the create-time cost gate
141
- * ({@link MaterializedViewManager.buildMaintenancePlan}, via `selectMaintenanceStrategy`)
142
- * and are not re-evaluated per write, except for the residual → rebuild demotion
143
- * (`shouldDegradeToRebuild`; dormant until the residual arm is reachable).
169
+ * ({@link buildMaintenancePlan}, via `selectMaintenanceStrategy`) and are not
170
+ * re-evaluated per write, except for the per-statement residual → rebuild demotion
171
+ * (`shouldDegradeToRebuild` against the statement's actual distinct-key count, at
172
+ * the end-of-statement flush).
144
173
  */
145
174
  export interface MaintenancePlanCommon {
146
175
  /** The MV this plan maintains. */
@@ -178,7 +207,7 @@ export interface MaintenancePlanCommon {
178
207
  * almost every MV, so the discriminator is the body-nullability term). Precomputed once
179
208
  * at plan build ({@link MaterializedViewManager.buildMaintenancePlan}). Read by the
180
209
  * row-time guard in {@link MaterializedViewManager.maintainRowTime} /
181
- * {@link MaterializedViewManager.flushDeferredRebuilds}. The refresh path has its own
210
+ * {@link MaterializedViewManager.flushDeferredMaintenance}. The refresh path has its own
182
211
  * materialized-row equivalent (`assertNoNullInNotNullSeededPk` in
183
212
  * runtime/emit/materialized-view-helpers.ts). See
184
213
  * fix/bug-mv-rowtime-null-into-notnull-seeded-pk. */
@@ -215,7 +244,7 @@ export interface InverseProjectionPlan extends MaintenancePlanCommon {
215
244
  * Reachability: `buildMaintenancePlan` routes a body here whenever no bounded-delta arm
216
245
  * fits ({@link MaterializedViewManager.tryBuildBoundedDeltaArm} returns `null`). It is the
217
246
  * one **deferred** arm — marked dirty per source row and rebuilt exactly once at the
218
- * end-of-statement flush ({@link MaterializedViewManager.flushDeferredRebuilds}), so a bulk
247
+ * end-of-statement flush ({@link MaterializedViewManager.flushDeferredMaintenance}), so a bulk
219
248
  * write is O(body) not O(rows × body). See `docs/mv-maintenance.md` § Full-rebuild floor.
220
249
  */
221
250
  export interface FullRebuildPlan extends MaintenancePlanCommon {
@@ -253,14 +282,25 @@ export interface FullRebuildPlan extends MaintenancePlanCommon {
253
282
  * directly from the body's shape — for an aggregate, the bare GROUP BY columns; NOT
254
283
  * via `extractBindings`, whose `'group'` classification additionally requires the group
255
284
  * key to cover a source unique key and so reports `'global'` for the common
256
- * `group by <non-key>` body). `degradeToRebuild` is the cost gate's full-rebuild escape
257
- * flag — dormant in v1 (the per-row recompute is correct without batching, and the
258
- * full-rebuild arm is unwired).
285
+ * `group by <non-key>` body). The per-statement rebuild demotion rides
286
+ * {@link ResidualArmCommon.fullRebuildScheduler}.
259
287
  */
260
- export interface ResidualRecomputePlan extends MaintenancePlanCommon {
288
+ export interface ResidualRecomputePlan extends MaintenancePlanCommon, ResidualArmCommon {
261
289
  readonly kind: 'residual-recompute';
262
290
  binding: BindingMode;
263
- degradeToRebuild: boolean;
291
+ /** Delta-aggregate fast path descriptor — present iff EVERY stored aggregate column
292
+ * passed the create-time delta eligibility gate ({@link buildDeltaAggregateDescriptor}
293
+ * in database-materialized-views-plan-builders.ts). When present, the statement
294
+ * accumulation folds per-column accumulator deltas alongside the residual keys and
295
+ * the flush maintains each affected group by pure arithmetic on the stored backing
296
+ * row (`merge` on insert, `merge(negate(…))` on delete) with zero source reads —
297
+ * falling back to the residual per group only where the declared algebra cannot
298
+ * prove a retraction observational (see {@link DeltaAggregateColumn.retractionSafe}).
299
+ * Absent ⇒ the arm behaves exactly as before (key-filtered residual re-execution).
300
+ * The plan `kind` stays `'residual-recompute'` either way; `chosenStrategy` records
301
+ * `'delta-aggregate'` when the descriptor is active (cost-strategy decoupling, the
302
+ * same pattern as `'prefix-delete'`). */
303
+ delta?: DeltaAggregateDescriptor;
264
304
  /** Cached scheduler for the key-filtered residual (the body with `injectKeyFilter`
265
305
  * applied on `T`). Re-run per affected key tuple, bound through the live transaction. */
266
306
  residualScheduler: Scheduler;
@@ -300,14 +340,13 @@ export interface ResidualRecomputePlan extends MaintenancePlanCommon {
300
340
  *
301
341
  * `chosenStrategy` is `'residual-recompute'` (the shared key-filtered re-execution cost
302
342
  * shape — the fan-out factor is unknown at create); `kind` is `'prefix-delete'` (the
303
- * apply-arm dispatcher). `degradeToRebuild` is dormant (as in the aggregate arm).
343
+ * apply-arm dispatcher).
304
344
  */
305
- export interface PrefixDeletePlan extends MaintenancePlanCommon {
345
+ export interface PrefixDeletePlan extends MaintenancePlanCommon, ResidualArmCommon {
306
346
  readonly kind: 'prefix-delete';
307
347
  /** Substrate parity (the base-PK 'row' binding); unread by the apply path, which uses
308
348
  * `bindColumns` / `backingPrefixSourceCols`. */
309
349
  binding: BindingMode;
310
- degradeToRebuild: boolean;
311
350
  /** Cached scheduler for the base-PK-keyed residual (the body with `injectKeyFilter`
312
351
  * applied on `T`, `'pk'` prefix). Re-run per affected base key; fans out to N rows. */
313
352
  residualScheduler: Scheduler;
@@ -368,11 +407,10 @@ export interface PrefixDeletePlan extends MaintenancePlanCommon {
368
407
  * full-rebuild floor. See `docs/incremental-maintenance.md` § join-residual and the soundness
369
408
  * note in {@link MaterializedViewManager.applyLookupResidual}.
370
409
  */
371
- export interface JoinResidualPlan extends MaintenancePlanCommon, ForwardResidualPlan {
410
+ export interface JoinResidualPlan extends MaintenancePlanCommon, ForwardResidualPlan, ResidualArmCommon {
372
411
  readonly kind: 'join-residual';
373
412
  /** Substrate parity: the driving `T`'s `'row'`/PK binding. */
374
413
  binding: BindingMode;
375
- degradeToRebuild: boolean;
376
414
  bindParamPrefix: 'pk';
377
415
  /** Lowercased `schema.table` of the lookup source `P` (distinct from `sourceBase` = `T`). */
378
416
  lookupBase: string;
@@ -401,17 +439,203 @@ export interface JoinResidualPlan extends MaintenancePlanCommon, ForwardResidual
401
439
  * (statement, backing) instead of once per source row. This amortizes the dominant
402
440
  * per-row overhead of a bulk `insert`/`update`/`delete` over a covered table.
403
441
  *
404
- * It is purely a resolution cache: each **bounded-delta** arm's per-row ops are still
442
+ * It is purely a resolution cache: the `'inverse-projection'` arm's per-row ops are still
405
443
  * applied **immediately** to the cached connection's pending transaction layer, so a later
406
444
  * same-statement row's enforcement scan (`lookupCoveringConflicts`) still observes every
407
- * earlier row's backing write. The one exception is the **full-rebuild** arm, which the DML
408
- * boundary defers to a single end-of-statement {@link MaterializedViewManager.flushDeferredRebuilds}
409
- * (tracked in a separate per-statement dirty set, not this cache) — sound because a
410
- * full-rebuild MV is never a covering structure, so no enforcement scan depends on its
411
- * per-row visibility. See `docs/mv-maintenance.md` § Synchronous, transactional,
412
- * per-statement. Because the cache is scoped to one generator run, the connection it holds
413
- * cannot be torn down mid-statement; the cold enforcement/eviction paths that omit the cache
414
- * re-resolve the *same* connection deterministically, so reads-own-writes is unaffected.
445
+ * earlier row's backing write. The **residual** arms and the **full-rebuild** floor are
446
+ * instead deferred to a single end-of-statement
447
+ * {@link MaterializedViewManager.flushDeferredMaintenance} (tracked in the per-statement
448
+ * {@link ResidualKeyBatch} / dirty set, not this cache) sound because only an
449
+ * inverse-projection MV can serve as a covering structure, so no enforcement scan depends
450
+ * on a deferred arm's per-row visibility. See `docs/mv-maintenance.md` § Synchronous,
451
+ * transactional, per-statement. Because the cache is scoped to one generator run, the
452
+ * connection it holds cannot be torn down mid-statement; the cold enforcement/eviction
453
+ * paths that omit the cache re-resolve the *same* connection deterministically, so
454
+ * reads-own-writes is unaffected.
415
455
  */
416
456
  export type BackingConnectionCache = Map<string, VirtualTableConnection>;
457
+ /**
458
+ * One deduped **forward** (driving-source) affected binding key, as
459
+ * `applyForwardResidual` derives it from a changed source row: `keyTuple` binds the
460
+ * key-filtered residual's parameters, `keyVals` are the backing-PK values (in
461
+ * `backingPkDefinition` order) the recomputed slice is matched on, and `deleteKey` is the
462
+ * prebuilt point-delete key for an emptied slice. Deduped on `canonKeyValues(keyVals)`.
463
+ */
464
+ export interface ForwardResidualKey {
465
+ keyTuple: SqlValue[];
466
+ keyVals: SqlValue[];
467
+ deleteKey: BTreeKeyForPrimary;
468
+ }
469
+ /**
470
+ * One deduped affected **base** key of a `'prefix-delete'` fan-out plan: `keyTuple` binds
471
+ * the base-PK-keyed residual, `prefix` is the slice's leading-backing-PK equality key.
472
+ * Deduped on `canonKeyValues(keyTuple)`.
473
+ */
474
+ export interface PrefixDeleteKey {
475
+ keyTuple: SqlValue[];
476
+ prefix: SqlValue[];
477
+ }
478
+ /**
479
+ * One stored aggregate output column of a delta-maintained aggregate MV, resolved once
480
+ * at plan build from the aggregate call node's registry-resolved function schema. The
481
+ * engine consumes ONLY the declared {@link AggregateAlgebra} plus the schema's
482
+ * step/finalize/initialValue — never an aggregate-name list (docs/invariants.md).
483
+ */
484
+ export interface DeltaAggregateColumn {
485
+ /** Backing column index (= body output column index) this aggregate lands at. */
486
+ readonly backingCol: number;
487
+ /** The registry-resolved aggregate schema — carries step/finalize/initialValue. */
488
+ readonly schema: AggregateFunctionSchema;
489
+ /** `schema.algebra`, narrowed: `merge` + `decode` always; `negate` for a `'group'`
490
+ * column (absent for a `'tighten'` column). */
491
+ readonly algebra: AggregateAlgebra;
492
+ /** Delta maintenance class this column belongs to:
493
+ * - `'group'`: an abelian-group aggregate (count/sum — `merge` + `negate` + `decode`).
494
+ * Inserts and deletes both fold arithmetically (`merge` / `merge(negate(…))`).
495
+ * - `'tighten'`: a join-semilattice aggregate (min/max, `bit_or`/`bool_or` — `merge`,
496
+ * `decode`, but **no** `negate`). An insert `merge`s the new value in cheaply
497
+ * (min/max tighten toward the new extreme); a retraction cannot be undone
498
+ * arithmetically, so a retracted group falls back to the residual (its
499
+ * {@link retractionSafe} is always false, and {@link DeltaAggregateDescriptor.hasTighten}
500
+ * routes the whole group to the residual whether or not a row is stored). */
501
+ readonly deltaClass: 'group' | 'tighten';
502
+ /** Source column feeding `step()`; `undefined` for a zero-arg (count(*)-shaped) call. */
503
+ readonly argSourceCol: number | undefined;
504
+ /** True iff this is the zero-arg multiplicity witness (count(*)): its finalized value
505
+ * counts the group's rows, so 0 ⇔ the group emptied (delete the backing row). */
506
+ readonly isMultiplicity: boolean;
507
+ /** True when a RETRACTION may be applied through `decode` of the stored value:
508
+ * either the algebra declares `decodeExact` (decode is a full inverse), or the
509
+ * argument column is declared NOT NULL — then every surviving row contributes, so
510
+ * the true contribution count equals the multiplicity and stays positive while the
511
+ * backing row exists (sum's absorbing decode witness never spuriously empties).
512
+ * A group that accumulated a retraction while ANY column is not retraction-safe is
513
+ * re-derived by the residual at flush instead of trusting the arithmetic. A
514
+ * `'tighten'` column is never retraction-safe. */
515
+ readonly retractionSafe: boolean;
516
+ }
517
+ /**
518
+ * The **decomposition-maintained** class of stored aggregate column (the `avg` class):
519
+ * a column whose value is a scalar `combine` over sibling partial aggregates that are
520
+ * THEMSELVES stored, delta-maintained columns of the same MV body — `avg(x) ≡
521
+ * sum(x)/count(x)`, and any UDAF declaring {@link AggregateAlgebra.decompose}. It carries
522
+ * NO independent accumulator (it is derived): at flush its value is
523
+ * `combine([finalized(partial) …])` over its partials' freshly finalized values. Resolved
524
+ * once at plan build (`buildDeltaAggregateDescriptor` — the create-time gate that binds
525
+ * each partial to a stored sibling) and evaluated per affected group at flush
526
+ * ({@link computeDeltaAggregateOps}). `avg` is the first client, not a special case.
527
+ */
528
+ export interface DeltaDecomposeColumn {
529
+ /** Backing column index (= body output column index) this decomposed aggregate lands at. */
530
+ readonly backingCol: number;
531
+ /** Index into {@link DeltaAggregateDescriptor.aggColumns} of each partial, in
532
+ * `decompose.partials` order — the finalized partial values `combine` consumes. Two
533
+ * decompose columns sharing a partial name the same index (the partial is maintained
534
+ * once, read by both). */
535
+ readonly partialIndices: readonly number[];
536
+ /** `algebra.decompose.combine`: builds this column's finalized value from its partials'
537
+ * finalized values, in `partialIndices` order. Reproduces the aggregate's own finalize
538
+ * incl. the empty-group / divide-by-zero case (avg → count 0/NULL ⇒ NULL). */
539
+ readonly combine: (partialValues: readonly SqlValue[]) => SqlValue;
540
+ }
541
+ /**
542
+ * Create-time descriptor for the delta-aggregate fast path inside a
543
+ * `'residual-recompute'` plan — see {@link ResidualRecomputePlan.delta}. Built by
544
+ * `buildDeltaAggregateDescriptor` only when every stored column qualifies; any gate
545
+ * failure leaves the plan on the plain residual (never an error).
546
+ */
547
+ export interface DeltaAggregateDescriptor {
548
+ /** The stored, independently-accumulated aggregate output columns (one per delta-
549
+ * maintainable aggregate the body projects). A {@link DeltaDecomposeColumn}'s partials
550
+ * are entries here; the decompose column itself is not (it accumulates nothing). */
551
+ readonly aggColumns: readonly DeltaAggregateColumn[];
552
+ /** Decomposition-maintained columns (the `avg` class): each derived at flush from its
553
+ * sibling stored partials via `combine`, contributing no independent accumulation.
554
+ * Empty for a body with no decompose column. See {@link DeltaDecomposeColumn}. */
555
+ readonly decomposeColumns: readonly DeltaDecomposeColumn[];
556
+ /** Non-aggregate (group-key passthrough) backing columns: each copies the group's
557
+ * backing-PK value at position `pkPos` (in `backingPkDefinition` order) into
558
+ * backing column `backingCol` — covers a group column projected outside the PK
559
+ * (e.g. a duplicate projection of a group column). */
560
+ readonly groupColumns: ReadonlyArray<{
561
+ readonly backingCol: number;
562
+ readonly pkPos: number;
563
+ }>;
564
+ /** Index into {@link aggColumns} of the count(*) multiplicity witness. */
565
+ readonly multiplicityIndex: number;
566
+ /** Total backing column count (the upsert row width). */
567
+ readonly backingColumnCount: number;
568
+ /** True iff every {@link DeltaAggregateColumn.retractionSafe}; when false, a group
569
+ * whose statement delta contains any retraction falls back to the residual. */
570
+ readonly retractionSafe: boolean;
571
+ /** True iff any {@link DeltaAggregateColumn} is `'tighten'` (min/max — `merge`, no
572
+ * `negate`). Such a column cannot retract arithmetically, so a group that accumulated
573
+ * ANY retraction re-derives from the residual whether or not a row is stored (unlike a
574
+ * merely not-retraction-safe abelian column, whose no-stored net-fold stays exact). A
575
+ * purely group-column descriptor (`false`) never takes the tighten fallback branch. */
576
+ readonly hasTighten: boolean;
577
+ /** Compiled single-source-row body WHERE; a row whose predicate is not
578
+ * unambiguously TRUE contributes nothing (mirrors the inverse-projection arm).
579
+ * Absent ⇒ every row is in scope. */
580
+ readonly predicate?: CompiledPredicate;
581
+ }
582
+ /**
583
+ * Per-group accumulated statement delta for a delta-aggregate MV — the value side of
584
+ * {@link ResidualKeyBatchEntry.delta}, keyed (like `forward`) on
585
+ * `canonKeyValues(keyVals)` so the two maps pair up at flush.
586
+ */
587
+ export interface DeltaGroupState {
588
+ /** Backing-PK (group key) values, in `backingPkDefinition` order. */
589
+ readonly keyVals: SqlValue[];
590
+ /** Prebuilt point-delete key for an emptied group. */
591
+ readonly deleteKey: BTreeKeyForPrimary;
592
+ /** Net accumulator delta per aggregate column (descriptor `aggColumns` order),
593
+ * folded across the statement: `merge`d `step` contributions for inserts,
594
+ * `merge`d `negate(step(…))` contributions for deletes. */
595
+ readonly accs: AggValue[];
596
+ /** True once any retraction (delete / update-old-image) contributed — the flush
597
+ * falls back to the residual for this group when the descriptor is not
598
+ * retraction-safe and a stored row exists. */
599
+ retracted: boolean;
600
+ }
601
+ /**
602
+ * The per-statement key accumulation for one residual-arm MV — which distinct binding
603
+ * keys this statement's source changes affected, per residual variant. `forward` holds
604
+ * driving-source keys (`'residual-recompute'` group keys; `'join-residual'` `T`-PK keys),
605
+ * `lookup` holds a `'join-residual'` plan's lookup-side (`P`-PK) keys (which run the
606
+ * reverse residual variant at flush), and `prefix` holds a `'prefix-delete'` plan's base
607
+ * keys. Exactly one map is populated for the single-variant arms; a `'join-residual'` MV
608
+ * may accumulate `forward` and `lookup` in one statement (e.g. an FK cascade writing both
609
+ * sides). Each map is keyed on the canonical key bytes (`canonKeyValues`) — the same
610
+ * dedup the per-row appliers do within one change, extended across the whole statement.
611
+ */
612
+ export interface ResidualKeyBatchEntry {
613
+ forward: Map<string, ForwardResidualKey>;
614
+ lookup: Map<string, SqlValue[]>;
615
+ prefix: Map<string, PrefixDeleteKey>;
616
+ /** Delta-aggregate accumulation, keyed like `forward` on the canonical group-key
617
+ * bytes. Populated ONLY alongside `forward` (the residual keys are always
618
+ * accumulated too), so dropping it — {@link deltaPoisoned} — degrades the flush to
619
+ * the plain residual with zero information loss. */
620
+ delta?: Map<string, DeltaGroupState>;
621
+ /** Set when a per-row savepoint revert (OR FAIL) invalidated the accumulated
622
+ * deltas: the savepoint undid the failing row's source/backing writes, but a JS
623
+ * accumulation cannot be unwound, so the net deltas may include a reverted row's
624
+ * contribution. The residual keys stay valid (a reverted key recomputes to a
625
+ * value-identical row, suppressed), so the flush routes through them instead.
626
+ * See `poisonResidualDeltaAccumulations`. */
627
+ deltaPoisoned?: boolean;
628
+ }
629
+ /**
630
+ * Per-statement deferred-residual key batch, keyed by MV key (lowercased
631
+ * `schema.name`). Created once per DML generator run alongside the
632
+ * {@link BackingConnectionCache} and the deferred full-rebuild set; the residual arms
633
+ * accumulate their affected keys here during the row loop
634
+ * ({@link MaterializedViewManager.maintainRowTime}) and each MV's distinct keys are
635
+ * recomputed exactly once at the end-of-statement
636
+ * {@link MaterializedViewManager.flushDeferredMaintenance}. Owned by the statement:
637
+ * discarded with the statement-savepoint unwind on failure, never carried across
638
+ * statements.
639
+ */
640
+ export type ResidualKeyBatch = Map<string, ResidualKeyBatchEntry>;
417
641
  //# sourceMappingURL=database-materialized-views-plans.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"database-materialized-views-plans.d.ts","sourceRoot":"","sources":["../../../src/core/database-materialized-views-plans.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"database-materialized-views-plans.d.ts","sourceRoot":"","sources":["../../../src/core/database-materialized-views-plans.ts"],"names":[],"mappings":"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"}