You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Convert BuiltInWindowFunction::{Lead, Lag} to a user defined window function (#12857)
* Move `lead-lag` to `functions-window` package
* Builds with warnings
* Adds `PartitionEvaluatorArgs`
* Extracts `shift_offset` from input expressions
* Computes shift offset
* Get default value from input expression
* Implements `partition_evaluator`
* Fixes compiler warnings
* Comments out failing tests
* Fixes `cargo test` errors and warnings
* Minor: taplo formatting
* Delete code
* Define `lead`, `lag` user-defined window functions
* Fixes `cargo build` errors
* Export udwf and expression public APIs
* Mark result field as nullable
* Delete `return_type` tests for `lead` and `lag`
* Disables test: window function case insensitive
* Fixes: lowercase name in logical plan
* Reverts to old methods for computing `shift_offset`, `default_value`
* Implements expression reversal
* Fixes: lowercase name in logical plans
* Fixes: doc test compilation errors
Fixes: doc test build errors
* Temporarily quite clippy errors
* Fixes proto defintion
* Minor: fixes formatting
* Fixes: doc tests
* Uses macro for defining `lag_udwf()` and `leag_udwf()`
* Fixes: window fuzz test cases
* Copies doc comments verbatim from `BuiltInWindowFunction` enum
* Deletes from window function case insensitive test
* Deletes `BuiltInWindowFunction` expression APIs
* Delete from `create_built_in_window_expr`
* Deletes proto serialization
* Delete from `BuiltInWindowFunction` enum
* Deletes test for finding built-in window function
* Fixes build errors + deletes redundant code
* Deletes more code
* Delete unnecessary structs
* Refactors shift offset computation
* Passes range unit test
* Fixes: clippy::get-first error
* Rewrite unit tests for WindowUDF
* Fixes: unit test for lag with default value
* Consistent input expressions and data types in unit tests
* Minor: fixes formatting
* Restore original helper method for unit tests
* Revert "Refactors shift offset computation"
This reverts commit 000ceb7.
* Moves helper functions into `functions-window-common` package
* Uses common helper functions in `{lead, lag}`
* Minor: formatting
* Revert "Moves helper functions into `functions-window-common` package"
This reverts commit ab8a83c.
* Moves common functions to utils
* Minor: formatting fixes
* Update lowercase names in explain output
* Adds doc for `lead()` and `lag()` expression functions
* Add doc for `WindowShiftKind::shift_offset`
* Remove `arrow` dev dependency
* Minor: formatting
* Update inner doc comment
* Serialize 1 or more window function arguments
* Adds logical plan roundtrip test cases
* Refactor: readability of unit tests
* Minor: rename variable bindings
* Minor: copy edit
* Revert "Remove `arrow` dev dependency"
This reverts commit 3eb0985.
* Move null argument handling helper to utils
* Disable failing sqllogic tests for handling NULL input
* Revert "Disable failing sqllogic tests for handling NULL input"
This reverts commit 270a203.
* Fixes: incorrect NULL handling in `lead`/`lag` window function
* Adds more tests cases
---------
Co-authored-by: Andrew Lamb <[email protected]>
0 commit comments