You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@drill.apache.org by "Chun Chang (JIRA)" <ji...@apache.org> on 2015/02/10 02:31:35 UTC

[jira] [Created] (DRILL-2197) hit no applicable constructor error running outer join involving list of maps

Chun Chang created DRILL-2197:
---------------------------------

             Summary: hit no applicable constructor error running outer join involving list of maps
                 Key: DRILL-2197
                 URL: https://issues.apache.org/jira/browse/DRILL-2197
             Project: Apache Drill
          Issue Type: Bug
          Components: Execution - Relational Operators
    Affects Versions: 0.8.0
            Reporter: Chun Chang
            Assignee: Chris Westin


#Mon Feb 09 15:58:57 EST 2015
git.commit.id.abbrev=3d863b5

Dataset can be downloaded from 
https://s3.amazonaws.com/apache-drill/files/complex.json.gz

Following query caused the error:

{code}
0: jdbc:drill:schema=dfs.drillTestDirComplexJ> select a.id, b.oooi.oa.oab.oabc, b.ooof.oa.oab from `complex.json` a left outer join `complex.json` b on a.soa[2].fl=b.soa[2].fl order by a.id limit 20;
Query failed: RemoteRpcException: Failure while running fragment., Line 109, Column 32: No applicable constructor/method found for actual parameters "int, int, org.apache.drill.exec.vector.complex.MapVector"; candidates are: "public void org.apache.drill.exec.vector.NullableTinyIntVector.copyFromSafe(int, int, org.apache.drill.exec.vector.NullableTinyIntVector)", "public void org.apache.drill.exec.vector.NullableTinyIntVector.copyFromSafe(int, int, org.apache.drill.exec.vector.TinyIntVector)" [ 73387a1a-1c50-4b1e-862e-e03772e7a291 on qa-node119.qa.lab:31010 ]
[ 73387a1a-1c50-4b1e-862e-e03772e7a291 on qa-node119.qa.lab:31010 ]


Error: exception while executing query: Failure while executing query. (state=,code=0)
{code}

physical plan:

{code}
0: jdbc:drill:schema=dfs.drillTestDirComplexJ> explain plan for select a.id, b.oooi.oa.oab.oabc, b.ooof.oa.oab from `complex.json` a left outer join `complex.json` b on a.soa[2].fl=b.soa[2].fl order by a.id limit 20;
+------------+------------+
|    text    |    json    |
+------------+------------+
| 00-00    Screen
00-01      Project(id=[$0], EXPR$1=[$1], EXPR$2=[$2])
00-02        SelectionVectorRemover
00-03          Limit(fetch=[20])
00-04            SingleMergeExchange(sort0=[0 ASC])
01-01              SelectionVectorRemover
01-02                TopN(limit=[20])
01-03                  HashToRandomExchange(dist0=[[$0]])
02-01                    Project(id=[$0], EXPR$1=[$3], EXPR$2=[$4])
02-02                      HashJoin(condition=[=($1, $2)], joinType=[left])
02-04                        HashToRandomExchange(dist0=[[$1]])
03-01                          Project(id=[$1], $f5=[ITEM(ITEM($0, 2), 'fl')])
03-02                            Scan(groupscan=[EasyGroupScan [selectionRoot=/drill/testdata/complex_type/json/complex.json, numFiles=1, columns=[`id`, `soa`[2].`fl`], files=[maprfs:/drill/testdata/complex_type/json/complex.json]]])
02-03                        Project($f50=[$0], ITEM=[$1], ITEM2=[$2])
02-05                          HashToRandomExchange(dist0=[[$0]])
04-01                            Project($f5=[ITEM(ITEM($0, 2), 'fl')], ITEM=[ITEM(ITEM(ITEM($2, 'oa'), 'oab'), 'oabc')], ITEM2=[ITEM(ITEM($1, 'oa'), 'oab')])
04-02                              Scan(groupscan=[EasyGroupScan [selectionRoot=/drill/testdata/complex_type/json/complex.json, numFiles=1, columns=[`soa`[2].`fl`, `oooi`.`oa`.`oab`.`oabc`, `ooof`.`oa`.`oab`], files=[maprfs:/drill/testdata/complex_type/json/complex.json]]])
{code}

log:

{code}
2015-02-09 17:16:17,736 [BitServer-1] INFO  o.a.drill.exec.work.foreman.Foreman - State change requested.  RUNNING --> FAILED
org.apache.drill.exec.rpc.RemoteRpcException: Failure while running fragment., Line 109, Column 32: No applicable constructor/method found for actual parameters "int, int, org.apache.drill.exec.vector.complex.MapVector"; candidates are: "public void org.apache.drill.exec.vector.NullableTinyIntVector.copyFromSafe(int, int, org.apache.drill.exec.vector.NullableTinyIntVector)", "public void org.apache.drill.exec.vector.NullableTinyIntVector.copyFromSafe(int, int, org.apache.drill.exec.vector.TinyIntVector)" [ 73387a1a-1c50-4b1e-862e-e03772e7a291 on qa-node119.qa.lab:31010 ]
[ 73387a1a-1c50-4b1e-862e-e03772e7a291 on qa-node119.qa.lab:31010 ]

        at org.apache.drill.exec.work.foreman.QueryManager.statusUpdate(QueryManager.java:95) [drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
        at org.apache.drill.exec.rpc.control.WorkEventBus.status(WorkEventBus.java:75) [drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
        at org.apache.drill.exec.work.batch.ControlHandlerImpl.handle(ControlHandlerImpl.java:82) [drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
        at org.apache.drill.exec.rpc.control.ControlServer.handle(ControlServer.java:60) [drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
        at org.apache.drill.exec.rpc.control.ControlServer.handle(ControlServer.java:38) [drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
        at org.apache.drill.exec.rpc.RpcBus.handle(RpcBus.java:58) [drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
        at org.apache.drill.exec.rpc.RpcBus$InboundHandler.decode(RpcBus.java:194) [drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
        at org.apache.drill.exec.rpc.RpcBus$InboundHandler.decode(RpcBus.java:173) [drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
        at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89) [netty-codec-4.0.24.Final.jar:4.0.24.Final]
{code}



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