[FEA] Add option to bypass sanitizing child/children of the lists and structs columns upon construction
- Dominant language
- C++
- Stars
- 9.8k
- Forks
- 1.1k
- Avg merge
- 3d 6m
- Merged PRs (30d)
- 278
Description
Currently, we have the factory functions:
```
std::unique_ptr make_lists_column(...);
std::unique_ptr make_structs_column(...);
```
These functions may check and sanitize the child(ren) column(s), purging non-empty nulls (for lists columns) or pushing down nulls from the top level column to the children columns (for structs columns). In general, such sanitization operations are necessary to enforce data validity. However, in some situations where we know exactly how the child/children columns look like, we can bypass such sanitization entirely to optimize the performance.
I want to introduce an enum parameter to these factory functions:
```
enum class sanitize_children { YES, NO };
```
By having that parameter (with can be default to `YES` value), we can choose to bypass the sanitization process.
Contributor guide
Assessment
This issue has not been assessed yet.