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)