Closed
Description
Is your feature request related to a problem or challenge? Please describe what you are trying to do.
Currently, dictionary values are merged only if they are Utf8, Binary, LargeUtf8, and LargeBinary because the pointer equality closure construction in should_merge_dictionaries
returns false to the outer function in the default arm:
arrow-rs/arrow-select/src/dictionary.rs
Lines 112 to 123 in 1a5999a
We've observed unnecessarily high memory usage when concatenating dictionaries with primitive values.
Describe the solution you'd like
should_merge_dictionaries
should return true for other types as well.