You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@tajo.apache.org by "Dongkyu Hwangbo (JIRA)" <ji...@apache.org> on 2015/08/11 09:55:45 UTC

[jira] [Updated] (TAJO-1747) internal error is occured while running q14 in TPC-DS

     [ https://issues.apache.org/jira/browse/TAJO-1747?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Dongkyu Hwangbo updated TAJO-1747:
----------------------------------
    Issue Type: Bug  (was: Test)

> internal error is occured while running q14 in TPC-DS
> -----------------------------------------------------
>
>                 Key: TAJO-1747
>                 URL: https://issues.apache.org/jira/browse/TAJO-1747
>             Project: Tajo
>          Issue Type: Bug
>          Components: Benchmark
>    Affects Versions: 0.11.0
>            Reporter: Dongkyu Hwangbo
>            Priority: Minor
>              Labels: sql
>
> Cannot run 'with' with tajo, so I'm modifying a part of origin query.
> Origin query
> {code:SQL}
> with  cross_items as
>  (select i_item_sk ss_item_sk
>  from item,
>  (select iss.i_brand_id brand_id
>      ,iss.i_class_id class_id
>      ,iss.i_category_id category_id
>  from store_sales
>      ,item iss
>      ,date_dim d1
>  where ss_item_sk = iss.i_item_sk
>    and ss_sold_date_sk = d1.d_date_sk
>    and d1.d_year between 1999 AND 1999 + 2
>  intersect 
>  select ics.i_brand_id
>      ,ics.i_class_id
>      ,ics.i_category_id
>  from catalog_sales
>      ,item ics
>      ,date_dim d2
>  where cs_item_sk = ics.i_item_sk
>    and cs_sold_date_sk = d2.d_date_sk
>    and d2.d_year between 1999 AND 1999 + 2
>  intersect
>  select iws.i_brand_id
>      ,iws.i_class_id
>      ,iws.i_category_id
>  from web_sales
>      ,item iws
>      ,date_dim d3
>  where ws_item_sk = iws.i_item_sk
>    and ws_sold_date_sk = d3.d_date_sk
>    and d3.d_year between 1999 AND 1999 + 2)
>  where i_brand_id = brand_id
>       and i_class_id = class_id
>       and i_category_id = category_id
> )
> {code}
> modified query
> {code:SQL}
> create table cross_items_temp(brand_id bigint, class_id bigint, category_id bigint);
> insert overwrite into cross_items_temp
> select iss.i_brand_id brand_id
>      ,iss.i_class_id class_id
>      ,iss.i_category_id category_id
>  from store_sales
>      ,item iss
>      ,date_dim d1
>  where ss_item_sk = iss.i_item_sk
>    and ss_sold_date_sk = d1.d_date_sk
>    and d1.d_year between 1999 AND 1999 + 2
>  intersect 
>  select ics.i_brand_id
>      ,ics.i_class_id
>      ,ics.i_category_id
>  from catalog_sales
>      ,item ics
>      ,date_dim d2
>  where cs_item_sk = ics.i_item_sk
>    and cs_sold_date_sk = d2.d_date_sk
>    and d2.d_year between 1999 AND 1999 + 2
>  intersect
>  select iws.i_brand_id
>      ,iws.i_class_id
>      ,iws.i_category_id
>  from web_sales
>      ,item iws
>      ,date_dim d3
>  where ws_item_sk = iws.i_item_sk
>    and ws_sold_date_sk = d3.d_date_sk
>    and d3.d_year between 1999 AND 1999 + 2;
> {code}
> but i take an internal error
> {noformat}
> ERROR: internal error: %s: org.apache.tajo.plan.logical.ProjectionNode cannot be cast to org.apache.tajo.plan.logical.BinaryNode
> {noformat}
> here is master log
> {code:java}
> 2015-08-07 17:31:42,503 INFO org.apache.tajo.master.GlobalEngine: Query: insert overwrite into cross_items_temp
> select iss.i_brand_id brand_id
>      ,iss.i_class_id class_id
>      ,iss.i_category_id category_id
>  from store_sales
>      ,item iss
>      ,date_dim d1
>  where ss_item_sk = iss.i_item_sk
>    and ss_sold_date_sk = d1.d_date_sk
>    and d1.d_year between 1999 AND 1999 + 2
>  intersect 
>  select ics.i_brand_id
>      ,ics.i_class_id
>      ,ics.i_category_id
>  from catalog_sales
>      ,item ics
>      ,date_dim d2
>  where cs_item_sk = ics.i_item_sk
>    and cs_sold_date_sk = d2.d_date_sk
>    and d2.d_year between 1999 AND 1999 + 2
>  intersect
>  select iws.i_brand_id
>      ,iws.i_class_id
>      ,iws.i_category_id
>  from web_sales
>      ,item iws
>      ,date_dim d3
>  where ws_item_sk = iws.i_item_sk
>    and ws_sold_date_sk = d3.d_date_sk
>    and d3.d_year between 1999 AND 1999 + 2
> 2015-08-07 17:31:42,550 ERROR org.apache.tajo.master.GlobalEngine: 
> Stack Trace:
> java.lang.ClassCastException: org.apache.tajo.plan.logical.ProjectionNode cannot be cast to org.apache.tajo.plan.logical.BinaryNode
> 	at org.apache.tajo.plan.LogicalPlanner.buildSetPlan(LogicalPlanner.java:1555)
> 	at org.apache.tajo.plan.LogicalPlanner.visitIntersect(LogicalPlanner.java:1517)
> 	at org.apache.tajo.plan.LogicalPlanner.visitIntersect(LogicalPlanner.java:76)
> 	at org.apache.tajo.plan.algebra.BaseAlgebraVisitor.visit(BaseAlgebraVisitor.java:87)
> 	at org.apache.tajo.plan.LogicalPlanner.buildSetPlan(LogicalPlanner.java:1533)
> 	at org.apache.tajo.plan.LogicalPlanner.visitIntersect(LogicalPlanner.java:1517)
> 	at org.apache.tajo.plan.LogicalPlanner.visitIntersect(LogicalPlanner.java:76)
> 	at org.apache.tajo.plan.algebra.BaseAlgebraVisitor.visit(BaseAlgebraVisitor.java:87)
> 	at org.apache.tajo.plan.algebra.BaseAlgebraVisitor.visitInsert(BaseAlgebraVisitor.java:510)
> 	at org.apache.tajo.plan.LogicalPlanner.visitInsert(LogicalPlanner.java:1581)
> 	at org.apache.tajo.plan.LogicalPlanner.visitInsert(LogicalPlanner.java:76)
> 	at org.apache.tajo.plan.algebra.BaseAlgebraVisitor.visit(BaseAlgebraVisitor.java:137)
> 	at org.apache.tajo.plan.LogicalPlanner.createPlan(LogicalPlanner.java:161)
> 	at org.apache.tajo.plan.LogicalPlanner.createPlan(LogicalPlanner.java:149)
> 	at org.apache.tajo.master.GlobalEngine.createLogicalPlan(GlobalEngine.java:272)
> 	at org.apache.tajo.master.GlobalEngine.executeQuery(GlobalEngine.java:194)
> 	at org.apache.tajo.master.TajoMasterClientService$TajoMasterClientProtocolServiceHandler.submitQuery(TajoMasterClientService.java:304)
> 	at org.apache.tajo.ipc.TajoMasterClientProtocol$TajoMasterClientProtocolService$2.callBlockingMethod(TajoMasterClientProtocol.java:659)
> 	at org.apache.tajo.rpc.BlockingRpcServer$ServerHandler.channelRead0(BlockingRpcServer.java:100)
> 	at org.apache.tajo.rpc.BlockingRpcServer$ServerHandler.channelRead0(BlockingRpcServer.java:61)
> 	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
> 	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
> 	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
> 	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
> 	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
> 	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
> 	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:244)
> 	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
> 	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
> 	at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86)
> 	at org.apache.tajo.rpc.MonitorServerHandler.channelRead(MonitorServerHandler.java:70)
> 	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
> 	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
> 	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:846)
> 	at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:131)
> 	at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511)
> 	at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468)
> 	at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382)
> 	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354)
> 	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111)
> 	at java.lang.Thread.run(Thread.java:745)
> {code}



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