Uploaded image for project: 'Apache Drill'
  1. Apache Drill
  2. DRILL-2951

Tables are not visible when Drillbit is specified in the connection URL

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Blocker
    • Resolution: Fixed
    • 0.9.0
    • 1.0.0
    • Client - JDBC
    • None
    • RHEL 6.4

    • Important

    Description

      When running a query against a Drill cluster without specifying the drillbit, the query executes correctly and without issue:
      Connection Example:
      [TestClient] -Dconn="jdbc:drill:schema=dfs.drill" PipSQueak 01_par100.q
      [STAT] Query :
      select l_returnflag, l_linestatus, sum(l_quantity) as sum_qty, sum(l_extendedprice) as sum_base_price, sum(l_extendedprice * (1 - l_discount)) as sum_disc_price, sum(l_extendedprice * (1 - l_discount) * (1 + l_tax)) as sum_charge, avg(l_quantity) as avg_qty, avg(l_extendedprice) as avg_price, avg(l_discount) as avg_disc, count as count_order from lineitem_par100 where l_shipdate <= date '1998-12-01' - interval '120' day (3) group by l_returnflag, l_linestatus order by l_returnflag, l_linestatus
      [STAT] Rows Fetched : 4
      [STAT] TOTAL TIME : 32142 msec

      However, when the Drillbit is specified (even on the same Drillbit where the query was previously submitted), we get a parse error:
      Query failed: PARSE ERROR: From line 1, column 354 to line 1, column 368: Table 'lineitem_par100' not found

      [d8aa2d68-c0eb-4bba-af6b-40403118c264 on ucs-node11.perf.lab:31010]
      java.sql.SQLException: exception while executing query: Failure while executing query.
      at net.hydromatic.avatica.Helper.createException(Helper.java:40)
      at net.hydromatic.avatica.AvaticaConnection.executeQueryInternal(AvaticaConnection.java:406)
      at net.hydromatic.avatica.AvaticaStatement.executeQueryInternal(AvaticaStatement.java:351)
      at net.hydromatic.avatica.AvaticaStatement.executeQuery(AvaticaStatement.java:78)
      at org.apache.drill.jdbc.DrillStatement.executeQuery(DrillStatement.java:60)
      at PipSQueak.executeQuery(PipSQueak.java:251)
      at PipSQueak.runTest(PipSQueak.java:79)
      at PipSQueak.main(PipSQueak.java:430)
      Caused by: java.sql.SQLException: Failure while executing query.
      at org.apache.drill.jdbc.DrillCursor.next(DrillCursor.java:147)
      at org.apache.drill.jdbc.impl.DrillResultSetImpl.execute(DrillResultSetImpl.java:144)
      at org.apache.drill.jdbc.impl.DrillResultSetImpl.execute(DrillResultSetImpl.java:57)
      at net.hydromatic.avatica.AvaticaConnection.executeQueryInternal(AvaticaConnection.java:404)
      ... 6 more
      Caused by: org.apache.drill.common.exceptions.UserRemoteException: PARSE ERROR: From line 1, column 354 to line 1, column 368: Table 'lineitem_par100' not found

      [d8aa2d68-c0eb-4bba-af6b-40403118c264 on ucs-node11.perf.lab:31010]
      at org.apache.drill.exec.rpc.user.QueryResultHandler.resultArrived(QueryResultHandler.java:112)
      at org.apache.drill.exec.rpc.user.UserClient.handleReponse(UserClient.java:102)
      at org.apache.drill.exec.rpc.BasicClientWithConnection.handle(BasicClientWithConnection.java:52)
      at org.apache.drill.exec.rpc.BasicClientWithConnection.handle(BasicClientWithConnection.java:34)
      at org.apache.drill.exec.rpc.RpcBus.handle(RpcBus.java:57)
      at org.apache.drill.exec.rpc.RpcBus$InboundHandler.decode(RpcBus.java:194)
      at org.apache.drill.exec.rpc.RpcBus$InboundHandler.decode(RpcBus.java:173)
      at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89)
      at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333)
      at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319)
      at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
      at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333)
      at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319)
      at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:161)
      at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333)
      at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319)
      at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86)
      at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333)
      at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319)
      at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:787)
      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)
      java.lang.NullPointerException
      at PipSQueak.getQueryID(PipSQueak.java:97)
      at PipSQueak.runTest(PipSQueak.java:81)
      at PipSQueak.main(PipSQueak.java:430)

      Attachments

        1. DRILL-2951.1.patch.diff
          2 kB
          Parth Chandra

        Activity

          People

            parthc Parth Chandra
            kkhatua Kunal Khatua
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: