apache / apache/arrow-java

[Java] Add accessors to get type parameters from vector classes

Open
#427 9 comments 0 reactions 0 assignees View on GitHub
Type: enhancement
Dominant language
Java
Stars
94
Forks
152
Avg merge
3d 16h
Merged PRs (30d)
11

Description

Vector classes contain private copies of each param in the `ArrowType`, but does not have any public api to access them. So if given a vector you would have to get the `Field` from the and cast to the correct type. For example, with a `TimeStampMicroTZVector` and trying to get the timezone:

```

if field.getType.isInstanceOf[ArrowType.Timestamp] &&
field.getType.asInstanceOf[ArrowType.Timestamp].getTimezone
```

It would be more convenient to have direct accessors for these type params for the vector types that have parameters:

- DecimalVector
- FixedSizeBinaryVector
- ListVector
- TimeStamps with timezones
- FixedSizedListVector
- Unions

**Reporter**: [Bryan Cutler](https://issues.apache.org/jira/browse/ARROW-1361) / @BryanCutler
#### PRs and other links:
- [GitHub Pull Request apache/arrow#972](https://github.com/apache/arrow/pull/972)

**Note**: *This issue was originally created as [ARROW-1361](https://issues.apache.org/jira/browse/ARROW-1361). Please see the [migration documentation](https://github.com/apache/arrow/issues/14542) for further details.*

Contributor guide

Open the contributing guide

Research direction

Review the vector classes named in the issue and the linked pull request apache/arrow#972 first. Check how their private ArrowType parameters are represented, then confirm that direct accessors exist for DecimalVector, FixedSizeBinaryVector, ListVector, timezone-aware timestamp vectors, FixedSizeListVector, and unions.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
backend-api-design
Issue type
Feature
Difficulty
3/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.