Jdbc driver support for MAP and STRING_ARRAY column types
- Dominant language
- Java
- Stars
- 6.1k
- Forks
- 1.5k
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 195
Description
Pinot jdbc driver fails when fetching data from a column of `MAP` or `*_ARRAY` (e.g. `STRING_ARRAY`) type.
There is `pinot-jdbc-client` module with `org.apache.pinot.client.PinotResultSet` class. Its method [`Object getObject(int)`](https://github.com/apache/pinot/blob/master/pinot-clients/pinot-jdbc-client/src/main/java/org/apache/pinot/client/PinotResultSet.java#L308) throws `SQLDataException` when the column type is `MAP` or any of `*_ARRAY`.
The driver should return requested column data rather then throw the exception.
Contributor guide
Research direction
Start in pinot-jdbc-client/src/main/java/org/apache/pinot/client/PinotResultSet.java at getObject(int), where MAP and *_ARRAY columns currently raise SQLDataException. Trace how the requested column data is obtained and verify that MAP and array types return that data instead of throwing.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- databases
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 75/100