Add read APIs for `BOOLEAN` and `TIMESTAMP`
Open
enhancement
help wanted
- Dominant language
- Java
- Stars
- 6.1k
- Forks
- 1.5k
- Avg merge
- 1d 21h
- Merged PRs (30d)
- 189
Description
Currently `BOOLEAN` is supported using the `INT` data type, and `TIMESTAMP` is supported using the `LONG` data type. Even though the storage format are the same, the behavior should be different. E.g. reading `BOOLEAN` as `STRING` should give `"true"` or `"false"` instead of `1` or `0`; reading `DOUBLE` as `BOOLEAN` should give `doubleVal != 0` instead of `(int) doubleVal`.
In order to achieve the expected behavior, we need to add read APIs for these 2 data types. It should be similar to how the `BIG_DECIMAL` is handled (storage format is `BYTES`). We want to add type support in:
- Dictionary
- ForwardIndexReader
- BlockValSet
- TransformFunction
Contributor guide
Assessment
This issue has not been assessed yet.