[C++] Duplicate functions array_filter/array_take and filter/take
- Dominant language
- C++
- Stars
- 17.1k
- Forks
- 4.3k
- Avg merge
- 3d 13h
- Merged PRs (30d)
- 88
Description
This has been explained to me as a metafunction and a backend but in that case the backend should not be registered with the function registry. Note both:
```cpp
const FunctionDoc filter_doc(
"Filter with a boolean selection filter",
("The output is populated with values from the input at positions\n"
"where the selection filter is non-zero. Nulls in the selection filter\n"
"are handled based on FilterOptions."),
{"input", "selection_filter"}, "FilterOptions");
```
and
```cpp
const FunctionDoc array_filter_doc(
"Filter with a boolean selection filter",
("The output is populated with values from the input `array` at positions\n"
"where the selection filter is non-zero. Nulls in the selection filter\n"
"are handled based on FilterOptions."),
{"array", "selection_filter"}, "FilterOptions");
```
which seems wrong as well.
Also sort_indices / array_sort_indices
**Reporter**: [Weston Pace](https://issues.apache.org/jira/browse/ARROW-13873) / @westonpace
#### Related issues:
- [[Python] Hide hash_* functions from pyarrow.compute](https://github.com/apache/arrow/issues/29552) (relates to)
- [[Python][C++] index_in_meta_binary/is_in_meta_binary should not show up in functions list](https://github.com/apache/arrow/issues/29556) (relates to)
**Note**: *This issue was originally created as [ARROW-13873](https://issues.apache.org/jira/browse/ARROW-13873). Please see the [migration documentation](https://github.com/apache/arrow/issues/14542) for further details.*
Contributor guide
Research direction
Start at the function registry and compare the registrations and FunctionDoc definitions for filter/array_filter and take/array_take, then inspect the related sort_indices variants. Confirm which entries are metafunctions versus backend functions and define done as removing duplicate or unintended registry exposure while preserving the intended public functions.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100