alamb opened a new pull request, #6621: URL: https://github.com/apache/arrow-datafusion/pull/6621
# Which issue does this PR close? Related to #5781 # Rationale for this change `PartitionEvaluator` currently has some methods that expose an enum `BuiltinWindowState` specific to the built in functions. If we choose to expose `PartitionEvaluator` externally it needs to not include details specifically about the built i window functions It turns out there is exactly one use for this state, which is memoization (for nth value calculation). We can move that functionality into the trait and avoid the need for `BuiltinWindowState` entirely # What changes are included in this PR? 1. Move the memoization code to the window function to the window function that uses it (nth_value) 2. Remove `PartitionEvaluator::get_state`, `PartitionEvaluator::set_state()` and `BuiltinWindowState` # Are these changes tested? existing tests <!-- We typically require tests for all PRs in order to: 1. Prevent the code from being accidentally broken by subsequent changes 3. Serve as another way to document the expected behavior of the code If tests are not included in your PR, please explain why (for example, are they covered by existing tests)? --> # Are there any user-facing changes? No these are all (currently) internal APIs -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: github-unsubscr...@arrow.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org