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

Random Error : Unable to get holder type for minor type [LATE] and mode [OPTIONAL]

    XMLWordPrintableJSON

Details

    Description

      git.commit.id.abbrev=38ef562

      The below query did not fail when running sequentially. However when I ran the test suite at [1], which contains the below query, by using 50 threads submitting queries concurrently, I hit the below error

      select kvgen(bldgs[0]) from (select kvgen(geo.features[0].location.bldgs) bldgs from `json_kvgenflatten/nested.json` geo)
      Failed with exception
      java.sql.SQLException: SYSTEM ERROR: UnsupportedOperationException: Unable to get holder type for minor type [LATE] and mode [OPTIONAL]
      
      Fragment 0:0
      
      [Error Id: 67223a94-b24b-4bde-a87a-743b093b23a6 on qa-node183.qa.lab:31010]
      
        (java.lang.UnsupportedOperationException) Unable to get holder type for minor type [LATE] and mode [OPTIONAL]
          org.apache.drill.exec.expr.TypeHelper.getHolderType():602
          org.apache.drill.exec.expr.ClassGenerator.getHolderType():666
          org.apache.drill.exec.expr.ClassGenerator.declare():368
          org.apache.drill.exec.expr.ClassGenerator.declare():364
          org.apache.drill.exec.expr.EvaluationVisitor$EvalVisitor.visitUnknown():349
          org.apache.drill.exec.expr.EvaluationVisitor$ConstantFilter.visitUnknown():1320
          org.apache.drill.exec.expr.EvaluationVisitor$CSEFilter.visitUnknown():1026
          org.apache.drill.exec.expr.EvaluationVisitor$CSEFilter.visitUnknown():795
          org.apache.drill.common.expression.visitors.AbstractExprVisitor.visitNullConstant():162
          org.apache.drill.exec.expr.EvaluationVisitor$CSEFilter.visitNullConstant():1003
          org.apache.drill.exec.expr.EvaluationVisitor$CSEFilter.visitNullConstant():795
          org.apache.drill.common.expression.TypedNullConstant.accept():46
          org.apache.drill.exec.expr.EvaluationVisitor$EvalVisitor.visitFunctionHolderExpression():193
          org.apache.drill.exec.expr.EvaluationVisitor$ConstantFilter.visitFunctionHolderExpression():1077
          org.apache.drill.exec.expr.EvaluationVisitor$CSEFilter.visitFunctionHolderExpression():815
          org.apache.drill.exec.expr.EvaluationVisitor$CSEFilter.visitFunctionHolderExpression():795
          org.apache.drill.common.expression.FunctionHolderExpression.accept():47
          org.apache.drill.exec.expr.EvaluationVisitor.addExpr():104
          org.apache.drill.exec.expr.ClassGenerator.addExpr():261
          org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.setupNewSchema():458
          org.apache.drill.exec.record.AbstractSingleRecordBatch.innerNext():78
          org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.innerNext():135
          org.apache.drill.exec.record.AbstractRecordBatch.next():162
          org.apache.drill.exec.physical.impl.validate.IteratorValidatorBatchIterator.next():215
          org.apache.drill.exec.physical.impl.BaseRootExec.next():104
          org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot.innerNext():81
          org.apache.drill.exec.physical.impl.BaseRootExec.next():94
          org.apache.drill.exec.work.fragment.FragmentExecutor$1.run():232
          org.apache.drill.exec.work.fragment.FragmentExecutor$1.run():226
          java.security.AccessController.doPrivileged():-2
          javax.security.auth.Subject.doAs():422
          org.apache.hadoop.security.UserGroupInformation.doAs():1595
          org.apache.drill.exec.work.fragment.FragmentExecutor.run():226
          org.apache.drill.common.SelfCleaningRunnable.run():38
          java.util.concurrent.ThreadPoolExecutor.runWorker():1142
          java.util.concurrent.ThreadPoolExecutor$Worker.run():617
          java.lang.Thread.run():745
      
      	at org.apache.drill.jdbc.impl.DrillCursor.nextRowInternally(DrillCursor.java:489)
      	at org.apache.drill.jdbc.impl.DrillCursor.loadInitialSchema(DrillCursor.java:561)
      	at org.apache.drill.jdbc.impl.DrillResultSetImpl.execute(DrillResultSetImpl.java:1895)
      	at org.apache.drill.jdbc.impl.DrillResultSetImpl.execute(DrillResultSetImpl.java:61)
      	at oadd.org.apache.calcite.avatica.AvaticaConnection$1.execute(AvaticaConnection.java:473)
      	at org.apache.drill.jdbc.impl.DrillMetaImpl.prepareAndExecute(DrillMetaImpl.java:1100)
      	at oadd.org.apache.calcite.avatica.AvaticaConnection.prepareAndExecuteInternal(AvaticaConnection.java:477)
      	at org.apache.drill.jdbc.impl.DrillConnectionImpl.prepareAndExecuteInternal(DrillConnectionImpl.java:180)
      	at oadd.org.apache.calcite.avatica.AvaticaStatement.executeInternal(AvaticaStatement.java:109)
      	at oadd.org.apache.calcite.avatica.AvaticaStatement.executeQuery(AvaticaStatement.java:130)
      	at org.apache.drill.jdbc.impl.DrillStatementImpl.executeQuery(DrillStatementImpl.java:112)
      	at org.apache.drill.test.framework.DrillTestJdbc.executeQuery(DrillTestJdbc.java:177)
      	at org.apache.drill.test.framework.DrillTestJdbc.run(DrillTestJdbc.java:101)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      	at java.lang.Thread.run(Thread.java:745)
      Caused by: oadd.org.apache.drill.common.exceptions.UserRemoteException: SYSTEM ERROR: UnsupportedOperationException: Unable to get holder type for minor type [LATE] and mode [OPTIONAL]
      
      Fragment 0:0
      
      [Error Id: 67223a94-b24b-4bde-a87a-743b093b23a6 on qa-node183.qa.lab:31010]
      
        (java.lang.UnsupportedOperationException) Unable to get holder type for minor type [LATE] and mode [OPTIONAL]
          org.apache.drill.exec.expr.TypeHelper.getHolderType():602
          org.apache.drill.exec.expr.ClassGenerator.getHolderType():666
          org.apache.drill.exec.expr.ClassGenerator.declare():368
          org.apache.drill.exec.expr.ClassGenerator.declare():364
          org.apache.drill.exec.expr.EvaluationVisitor$EvalVisitor.visitUnknown():349
          org.apache.drill.exec.expr.EvaluationVisitor$ConstantFilter.visitUnknown():1320
          org.apache.drill.exec.expr.EvaluationVisitor$CSEFilter.visitUnknown():1026
          org.apache.drill.exec.expr.EvaluationVisitor$CSEFilter.visitUnknown():795
          org.apache.drill.common.expression.visitors.AbstractExprVisitor.visitNullConstant():162
          org.apache.drill.exec.expr.EvaluationVisitor$CSEFilter.visitNullConstant():1003
          org.apache.drill.exec.expr.EvaluationVisitor$CSEFilter.visitNullConstant():795
          org.apache.drill.common.expression.TypedNullConstant.accept():46
          org.apache.drill.exec.expr.EvaluationVisitor$EvalVisitor.visitFunctionHolderExpression():193
          org.apache.drill.exec.expr.EvaluationVisitor$ConstantFilter.visitFunctionHolderExpression():1077
          org.apache.drill.exec.expr.EvaluationVisitor$CSEFilter.visitFunctionHolderExpression():815
          org.apache.drill.exec.expr.EvaluationVisitor$CSEFilter.visitFunctionHolderExpression():795
          org.apache.drill.common.expression.FunctionHolderExpression.accept():47
          org.apache.drill.exec.expr.EvaluationVisitor.addExpr():104
          org.apache.drill.exec.expr.ClassGenerator.addExpr():261
          org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.setupNewSchema():458
          org.apache.drill.exec.record.AbstractSingleRecordBatch.innerNext():78
          org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.innerNext():135
          org.apache.drill.exec.record.AbstractRecordBatch.next():162
          org.apache.drill.exec.physical.impl.validate.IteratorValidatorBatchIterator.next():215
          org.apache.drill.exec.physical.impl.BaseRootExec.next():104
          org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot.innerNext():81
          org.apache.drill.exec.physical.impl.BaseRootExec.next():94
          org.apache.drill.exec.work.fragment.FragmentExecutor$1.run():232
          org.apache.drill.exec.work.fragment.FragmentExecutor$1.run():226
          java.security.AccessController.doPrivileged():-2
          javax.security.auth.Subject.doAs():422
          org.apache.hadoop.security.UserGroupInformation.doAs():1595
          org.apache.drill.exec.work.fragment.FragmentExecutor.run():226
          org.apache.drill.common.SelfCleaningRunnable.run():38
          java.util.concurrent.ThreadPoolExecutor.runWorker():1142
          java.util.concurrent.ThreadPoolExecutor$Worker.run():617
          java.lang.Thread.run():745
      
      	at oadd.org.apache.drill.exec.rpc.user.QueryResultHandler.resultArrived(QueryResultHandler.java:123)
      	at oadd.org.apache.drill.exec.rpc.user.UserClient.handle(UserClient.java:343)
      	at oadd.org.apache.drill.exec.rpc.user.UserClient.handle(UserClient.java:88)
      	at oadd.org.apache.drill.exec.rpc.RpcBus$InboundHandler.decode(RpcBus.java:274)
      	at oadd.org.apache.drill.exec.rpc.RpcBus$InboundHandler.decode(RpcBus.java:244)
      	at oadd.io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89)
      	at oadd.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339)
      	at oadd.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324)
      	at oadd.io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:254)
      	at oadd.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339)
      	at oadd.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324)
      	at oadd.io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
      	at oadd.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339)
      	at oadd.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324)
      	at oadd.io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:242)
      	at oadd.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339)
      	at oadd.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324)
      	at oadd.io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86)
      	at oadd.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339)
      	at oadd.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324)
      	at oadd.io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:847)
      	at oadd.io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:131)
      	at oadd.io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511)
      	at oadd.io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468)
      	at oadd.io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382)
      	at oadd.io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354)
      	at oadd.io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111)
      	... 1 more
      

      [1] https://github.com/mapr/drill-test-framework/tree/master/framework/resources/Functional/json/json_kvgenflatten

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              rkins Rahul Kumar Challapalli
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: