Details
-
Improvement
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
Description
See discussion here:
https://github.com/apache/arrow/pull/8621#issuecomment-724796243
A kernel might need to pre-compute something based on the function options passed. Since the Kernel-FunctionOptions mapping is not 1-to-1, it does not make sense to store this in the function option object.
Currently, match_substring calculates a `prefix_table` on each Exec call. In trim (https://github.com/apache/arrow/pull/8621) we compute a vector<bool> on each Exec call. This should be done only once and cached in the kernel state instead.
Attachments
Issue Links
- depends upon
-
ARROW-10655 [C++] Add LRU cache facility
- Resolved
- is related to
-
ARROW-9128 [C++] Implement string space trimming kernels: trim, ltrim, and rtrim
- Resolved
- relates to
-
ARROW-10097 [C++] Persist SetLookupState in between usages of IsIn when filtering dataset batches
- Resolved