You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Kathiresan Selvaraj (JIRA)" <ji...@apache.org> on 2016/09/14 12:22:20 UTC

[jira] [Created] (DRILL-4890) Right outer join fails

Kathiresan Selvaraj created DRILL-4890:
------------------------------------------

             Summary: Right outer join fails 
                 Key: DRILL-4890
                 URL: https://issues.apache.org/jira/browse/DRILL-4890
             Project: Apache Drill
          Issue Type: Bug
          Components: Execution - Data Types, Execution - Flow
    Affects Versions: 1.8.0, 1.6.0
            Reporter: Kathiresan Selvaraj


Hi,  A Query with right outer join fails while the inner and left outer joins work for the same data. I've replicated the issue with some simple data here and this happens in both 1.6.0 and 1.8.0

*Json file 1: data.json*

{ "name": "Jim","city" : [1,2]}

*Json file 2: cities.json*

{id:1,name:"Sendurai"}
{id:2,name:"NYC"}

*Queries that work:*
1.  select a.name,a.city,b.id,b.name from dfs.tmp.`data.json` a left outer join dfs.tmp.`cities.json` b on a.city\[0]=b.id

2. select a.name,a.city,b.id,b.name from dfs.tmp.`data.json` a join dfs.tmp.`cities.json` b on a.city\[0]=b.id

*Query that fails:*

select a.name,a.city,b.id,b.name from dfs.tmp.`data.json` a right outer join dfs.tmp.`cities.json` b on a.city\[0]=b.id

*On the server side, i see below error trace :*

java.lang.IllegalStateException: QueryDataBatch was released twice.
        at org.apache.drill.exec.rpc.user.QueryDataBatch.release(QueryDataBatch.java:56) \[drill-java-exec-1.6.0.jar:1.6.0]
        at org.apache.drill.exec.rpc.user.QueryResultHandler.batchArrived(QueryResultHandler.java:167) \[drill-java-exec-1.6.0.jar:1.6.0]
        at org.apache.drill.exec.rpc.user.UserClient.handleReponse(UserClient.java:110) ~\[drill-java-exec-1.6.0.jar:1.6.0]
        at org.apache.drill.exec.rpc.BasicClientWithConnection.handle(BasicClientWithConnection.java:46) ~\[drill-rpc-1.6.0.jar:1.6.0]
        at org.apache.drill.exec.rpc.BasicClientWithConnection.handle(BasicClientWithConnection.java:31) ~\[drill-rpc-1.6.0.jar:1.6.0]
        at org.apache.drill.exec.rpc.RpcBus.handle(RpcBus.java:67) ~\[drill-rpc-1.6.0.jar:1.6.0]
        at org.apache.drill.exec.rpc.RpcBus$RequestEvent.run(RpcBus.java:374) ~\[drill-rpc-1.6.0.jar:1.6.0]
        at org.apache.drill.common.SerializedExecutor$RunnableProcessor.run(SerializedExecutor.java:89) \[drill-rpc-1.6.0.jar:1.6.0]
        at org.apache.drill.exec.rpc.RpcBus$SameExecutor.execute(RpcBus.java:252) \[drill-rpc-1.6.0.jar:1.6.0]
        at org.apache.drill.common.SerializedExecutor.execute(SerializedExecutor.java:123) \[drill-rpc-1.6.0.jar:1.6.0]
        at org.apache.drill.exec.rpc.RpcBus$InboundHandler.decode(RpcBus.java:285) \[drill-rpc-1.6.0.jar:1.6.0]
        at org.apache.drill.exec.rpc.RpcBus$InboundHandler.decode(RpcBus.java:257) \[drill-rpc-1.6.0.jar:1.6.0]



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