Hi Tajo Devs,
I have built TAJO  from src code checked out from github.I have created a 
database and external LINEITEM table using TAJO cli.
I tried running following query which gave me NullPointerException: 

select * from LINEITEM limit L_ORDERKEY;
As per my understanding this query is invalid, but got parsed without any 
exception .After debugging further I could able to get the actual error trace 
code as :
java.lang.NullPointerException  at 
org.apache.tajo.engine.eval.FieldEval.eval(FieldEval.java:47)        at 
org.apache.tajo.engine.planner.LogicalPlanner.visitLimit(LogicalPlanner.java:751)
    at 
org.apache.tajo.engine.planner.LogicalPlanner.visitLimit(LogicalPlanner.java:61)
     at 
org.apache.tajo.engine.planner.BaseAlgebraVisitor.visit(BaseAlgebraVisitor.java:58)
  at 
org.apache.tajo.engine.planner.LogicalPlanner.visitProjection(LogicalPlanner.java:209)
       at 
org.apache.tajo.engine.planner.LogicalPlanner.visitProjection(LogicalPlanner.java:61)
        at 
org.apache.tajo.engine.planner.BaseAlgebraVisitor.visit(BaseAlgebraVisitor.java:55)
  at 
org.apache.tajo.engine.planner.LogicalPlanner.createPlan(LogicalPlanner.java:125)
    at 
org.apache.tajo.engine.planner.LogicalPlanner.createPlan(LogicalPlanner.java:111)
    at 
org.apache.tajo.master.GlobalEngine.createLogicalPlan(GlobalEngine.java:468) at 
org.apache.tajo.master.GlobalEngine.executeQuery(GlobalEngine.java:145)      at 
org.apache.tajo.master.TajoMasterClientService$TajoMasterClientProtocolServiceHandler.submitQuery(TajoMasterClientService.java:261)
  at 
org.apache.tajo.ipc.TajoMasterClientProtocol$TajoMasterClientProtocolService$2.callBlockingMethod(TajoMasterClientProtocol.java:495)
 at 
org.apache.tajo.rpc.BlockingRpcServer$ServerHandler.messageReceived(BlockingRpcServer.java:103)
      at 
org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:70)
    at 
org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564)
 at 
org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:791)
    at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296)  
    at 
org.jboss.netty.handler.codec.oneone.OneToOneDecoder.handleUpstream(OneToOneDecoder.java:70)
 at 
org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564)
 at 
org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:791)
    at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296)  
    at 
org.jboss.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(FrameDecoder.java:462)
 at 
org.jboss.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:443)
   at 
org.jboss.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:303)
      at 
org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:70)
    at 
org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564)
 at 
org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:559)
 at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268)     
 at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:255)     
 at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:88) at 
org.jboss.netty.channel.socket.nio.AbstractNioWorker.process(AbstractNioWorker.java:109)
     at 
org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:312)
     at 
org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:90)
  at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178) at 
org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108)
     at 
org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42)
 at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
     at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
     at java.lang.Thread.run(Thread.java:745)

It looks like a minor bug. Could you please confirm my understanding.
Thank You,Shrikant Bang.                                          

Reply via email to