Use FixedSizeBinary instead of Binary for int96 conversion when convertInt96ToArrowTimestamp is false
- Dominant language
- Java
- Stars
- 3.1k
- Forks
- 1.6k
- Avg merge
- 3d 12h
- Merged PRs (30d)
- 33
Description
### Describe the enhancement requested
```java
public TypeMapping convertINT96(PrimitiveTypeName primitiveTypeName) throws RuntimeException {
if (convertInt96ToArrowTimestamp) {
return field(new ArrowType.Timestamp(TimeUnit.NANOSECOND, null));
} else {
return field(new ArrowType.Binary());
}
}
```
When converting a Parquet type to an Arrow type, if the original type is int96 and the option convertInt96ToArrowTimestamp is set to false, the resulting Arrow type defaults to Binary. However, it might be more appropriate to use FixedSizeBinary instead.
### Component(s)
_No response_
Contributor guide
No contributing guide indexed for this repository
Research direction
Start at the convertINT96 method shown in the issue and inspect the surrounding Parquet-to-Arrow type mapping. Confirm the appropriate FixedSizeBinary representation for int96 when convertInt96ToArrowTimestamp is false, then verify the resulting mapping with the relevant conversion tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- data-engineering
- Issue type
- Feature
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100