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

[jira] [Resolved] (TAJO-1606) IF NOT EXISTS is not checked for CTAS queries

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

Hyunsik Choi resolved TAJO-1606.
--------------------------------
    Resolution: Not A Problem

This problem was resolved in other issue. It works well.

> IF NOT EXISTS is not checked for CTAS queries
> ---------------------------------------------
>
>                 Key: TAJO-1606
>                 URL: https://issues.apache.org/jira/browse/TAJO-1606
>             Project: Tajo
>          Issue Type: Bug
>          Components: QueryMaster
>            Reporter: Jihoon Son
>            Assignee: Hyunsik Choi
>            Priority: Critical
>             Fix For: 0.11.0
>
>
> When there is a table named test, the following query should not be executed.
> {noformat}
> default> create table if not exists test (n_nationkey int8, n_name text, n_comment text) partition by column (n_regionkey int8) as select * from nation;
> Progress: 100%, response time: 0.544 sec
> (25 rows, 0.544 sec, 317 B inserted)
> {noformat}
> However, according to the log, you can find AlreadyExistsTableException generated after executing the query.
> {noformat}
> 2015-05-15 15:47:13,217 INFO org.apache.tajo.master.exec.QueryExecutor: Query q_1431671196171_0006,create table if not exists test (n_nationkey int8, n_name text, n_comment text) partition by column (n_regionkey int8) as select * from nation, is forwarded to :0
> 2015-05-15 15:47:13,217 INFO org.apache.tajo.master.QueryInProgress: Initializing QueryInProgress for QueryID=q_1431671196171_0006
> 2015-05-15 15:47:13,219 INFO org.apache.tajo.master.QueryInProgress: Connect to QueryMaster:sonjihoonui-mbp/192.168.33.197:28093
> 2015-05-15 15:47:13,221 INFO org.apache.tajo.master.QueryInProgress: Call executeQuery to :sonjihoonui-mbp:28093,q_1431671196171_0006
> 2015-05-15 15:47:13,411 INFO org.apache.tajo.master.rm.TajoWorkerResourceManager: Release Resource: 0.5,512
> 2015-05-15 15:47:13,686 INFO org.apache.tajo.master.QueryInProgress: Received QueryMaster heartbeat:q_1431671196171_0006,state=QUERY_RUNNING,progress=0.5, queryMaster=sonjihoonui-mbp
> 2015-05-15 15:47:13,729 INFO org.apache.tajo.master.rm.TajoWorkerResourceManager: Release Resource: 0.5,512
> 2015-05-15 15:47:13,759 ERROR org.apache.tajo.catalog.CatalogServer: relation " test " already exists in default
> org.apache.tajo.catalog.exception.AlreadyExistsTableException: relation " test " already exists in default
> 	at org.apache.tajo.catalog.CatalogServer$CatalogProtocolHandler.createTable(CatalogServer.java:599)
> 	at org.apache.tajo.catalog.CatalogProtocol$CatalogProtocolService$2.callBlockingMethod(CatalogProtocol.java:731)
> 	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:182)
> 	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:130)
> 	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:116)
> 	at java.lang.Thread.run(Thread.java:745)
> {noformat}



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