Repository navigation
Open
Labels
enhancementNew feature or requestNew feature or requestirPre-ASAP or post-ASAP intermediate representationPre-ASAP or post-ASAP intermediate representationsqlSQL front-end lowering (DataFusion → L2)SQL front-end lowering (DataFusion → L2)windowWindow functions, frames, panes, or temporal semanticsWindow functions, frames, panes, or temporal semantics
Description
Summary
PR #270 adds first-class window-frame data to SQLWindowFunc, but intentionally supports only ROWS and RANGE. DataFusion 43 also resolves GROUPS frames; lower_window_frame currently rejects WindowFrameUnits::Groups with UnsupportedFeature.
GROUPS counts peer groups defined by the window ordering rather than physical rows or value distance. It therefore needs its own canonical unit instead of being mapped to ROWS or RANGE.
Scope
- Add
WindowFrameUnits::Groupsto the canonical IR. - Preserve DataFusion
GROUPSstart/end bounds, including finite, current-row, and unbounded bounds. - Thread the new unit through serialization, resolution, CSE hashing, and DAG export.
- Replace the current rejection test with positive lowering coverage.
Acceptance criteria
GROUPS BETWEEN 2 PRECEDING AND CURRENT ROWlowers withoutUnsupportedFeature.- The resulting
SQLWindowFunc.frameis structurally distinct from equivalent-lookingROWSandRANGEframes. - Serialization and CSE preserve the unit.
- Tests cover finite and unbounded
GROUPSbounds.
Post-ASAP execution of window frames is separate follow-up work; this issue is about lossless canonical representation and lowering.
Related
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requestirPre-ASAP or post-ASAP intermediate representationPre-ASAP or post-ASAP intermediate representationsqlSQL front-end lowering (DataFusion → L2)SQL front-end lowering (DataFusion → L2)windowWindow functions, frames, panes, or temporal semanticsWindow functions, frames, panes, or temporal semantics
Activity
zzylol commentedon Aug 26, 2026
Related open work
GROUPSframes in SQL: implement downstream execution semantics for window frames #281;ROWS/RANGEexecution there is independent.