[
https://issues.apache.org/jira/browse/CALCITE-4181?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ruben Q L resolved CALCITE-4181.
--------------------------------
Resolution: Fixed
Fixed via
https://github.com/apache/calcite-avatica/commit/ed444948659a55309860952e1bbb41ee77ff4699
Thanks [~kent.nguyen] for the patch!
> Avatica throws exception when select field is a List<Object>
> ------------------------------------------------------------
>
> Key: CALCITE-4181
> URL: https://issues.apache.org/jira/browse/CALCITE-4181
> Project: Calcite
> Issue Type: Bug
> Components: avatica
> Affects Versions: avatica-1.17.0
> Reporter: Kent Nguyen
> Assignee: Kent Nguyen
> Priority: Major
> Fix For: avatica-1.18.0
>
> Time Spent: 2.5h
> Remaining Estimate: 0h
>
> Currently Calcite supports array columns from both ArrayImpl or List input.
> It also supports both struct and plain java object data format.
> The issue is that an exception is thrown when data is a list of plain java
> objects, while it works fine when data is a list of struct or an array of
> plain java objects.
> I have created unit tests to demonstrate the bug.
> Currently these unit tests pass: arraysOfStructs(), listOfStructs(),
> arrayOfJavaObjects() but listOfJavaObject() is failed.
> Method
> org.apache.calcite.avatica.util.AbstractCursor.ArrayAccessor.convertValue()
> misses a case for Types.OTHER, which is for general java objects, hence the
> exception is thrown.
> The pull request adds that missing type and makes all four unit tests pass.
> Reference link:
> https://github.com/apache/calcite-avatica/blob/master/core/src/main/java/org/apache/calcite/avatica/util/AbstractCursor.java#L1346
--
This message was sent by Atlassian Jira
(v8.3.4#803005)