[jira] [Resolved] (CALCITE-4181) Avatica throws exception when select field is a List

Mon, 11 Jan 2021 00:04:07 -0800


     [ 
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)

Reply via email to