[ 
https://issues.apache.org/jira/browse/DRILL-3334?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14619906#comment-14619906
 ] 

Mehant Baid commented on DRILL-3334:
------------------------------------

[~hgunes] I don't think HashJoinBatch currently supports any changes in schema 
(join column or non-join column). However it seems like a limitation we can 
most likely overcome.

>  "java.lang.IllegalStateException: Failure while reading vector.: raised when 
> using dynamic schema in JSON
> ----------------------------------------------------------------------------------------------------------
>
>                 Key: DRILL-3334
>                 URL: https://issues.apache.org/jira/browse/DRILL-3334
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Execution - Data Types
>    Affects Versions: 1.0.0
>         Environment: Single Node running on OSX
> and
> MapR Hadoop SandBox + Drill
>            Reporter: Tugdual Grall
>            Assignee: Hanifi Gunes
>             Fix For: 1.2.0
>
>         Attachments: test.zip
>
>
> I have a simple data set based on 3 JSON documents:
>  - 1 customer
>  - 2 orders
> (I have attached the document to the JIRA)
> when I do the following query that is a join between order and customers I 
> can raise some unexpected exception.
> A working query:
> {code}
> SELECT customers.id, orders.total
> FROM  dfs.ecommerce.`customers/*.json` customers,
>      dfs.ecommerce.`orders/*.json` orders
> WHERE customers.id = orders.cust_id
> AND customers.country = 'FRANCE'
> {code}
> It works since orders.total is present in all orders
> Now when I execute the following query (tax is not present in all document)
> {code}
> SELECT customers.id, orders.tax
> FROM  dfs.ecommerce.`customers/*.json` customers,
>      dfs.ecommerce.`orders/*.json` orders
> WHERE customers.id = orders.cust_id
> AND customers.country = 'FRANCE'
> {code}
> Thsi query raise the following exception:
> {code}
> org.apache.drill.common.exceptions.UserRemoteException: SYSTEM ERROR: 
> java.lang.IllegalStateException: Failure while reading vector. Expected 
> vector class of org.apache.drill.exec.vector.NullableIntVector but was 
> holding vector class org.apache.drill.exec.vector.NullableBigIntVector. 
> Fragment 0:0 [Error Id: a7ad300a-4446-41f3-8b1c-4bb7d1dbfb52 on 
> maprdemo:31010]
> {code}
> If you cannot reproduce with tax, you can try with the field:
>  orders.cool
> or simply move the tax field from one document to the others.
> (the field must be present in 1 document only)
> It looks like Drill is losing the list of columns present globally.
> Note: if I use a field that does not exist in any document it is working ( 
> orders.this_is_crazy )
> Note: if I use * instead of a projection this raise another exception:
> {code}
> org.apache.drill.common.exceptions.UserRemoteException: SYSTEM ERROR: 
> org.apache.drill.exec.exception.SchemaChangeException: Hash join does not 
> support schema changes Fragment 0:0 [Error Id: 
> 0b20d580-37a3-491a-9987-4d04fb6f2d43 on maprdemo:31010]
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to