Uploaded image for project: 'Apache Drill'
  1. Apache Drill
  2. DRILL-3290 Hive Storage: Add support for Hive complex types
  3. DRILL-7387

Failed to get value by int key from map nested into struct

Attach filesAttach ScreenshotVotersWatch issueWatchersLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    Description

      Such test method in TestHiveStructs.java:

        @Test
        public void structWithMapByIntKey() throws Exception {
          testBuilder()
              .sqlQuery("SELECT rid, t.str_map.m[1] bk FROM hive.struct_tbl_p t")
              .unOrdered()
              .baselineColumns("rid", "bk")
              .baselineValues(1, 0)
              .baselineValues(2, 3)
              .baselineValues(3, 4)
              .go();
        }
      

      is failing with exception:

      java.lang.IllegalArgumentException: You tried to read a [RepeatedInt] type when you are using a field reader of type [SingleDictReaderImpl].
      	at org.apache.drill.exec.vector.complex.impl.AbstractFieldReader.fail(AbstractFieldReader.java:989) ~[classes/:na]
      	at org.apache.drill.exec.vector.complex.impl.AbstractFieldReader.read(AbstractFieldReader.java:399) ~[classes/:na]
      	at org.apache.drill.exec.test.generated.ProjectorGen1.doEval(ProjectorTemplate.java:28) ~[na:na]
      	at org.apache.drill.exec.test.generated.ProjectorGen1.projectRecords(ProjectorTemplate.java:67) ~[na:na]
      	at org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.doWork(ProjectRecordBatch.java:229) ~[classes/:na]
      	at org.apache.drill.exec.record.AbstractUnaryRecordBatch.innerNext(AbstractUnaryRecordBatch.java:117) ~[classes/:na]
      	at org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.innerNext(ProjectRecordBatch.java:141) ~[classes/:na]
      	at org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:186) ~[classes/:na]
      	at org.apache.drill.exec.physical.impl.validate.IteratorValidatorBatchIterator.next(IteratorValidatorBatchIterator.java:237) ~[classes/:na]
      	at org.apache.drill.exec.physical.impl.BaseRootExec.next(BaseRootExec.java:104) ~[classes/:na]
      	at org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot.innerNext(ScreenCreator.java:83) ~[classes/:na]
      	at org.apache.drill.exec.physical.impl.BaseRootExec.next(BaseRootExec.java:94) ~[classes/:na]
      	at org.apache.drill.exec.work.fragment.FragmentExecutor$1.run(FragmentExecutor.java:296) ~[classes/:na]
      	at org.apache.drill.exec.work.fragment.FragmentExecutor$1.run(FragmentExecutor.java:283) ~[classes/:na]
      	at .......(:0) ~[na:na]
      	at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1746) ~[hadoop-common-2.7.4.jar:na]
      	at org.apache.drill.exec.work.fragment.FragmentExecutor.run(FragmentExecutor.java:283) ~[classes/:na]
      	at org.apache.drill.common.SelfCleaningRunnable.run(SelfCleaningRunnable.java:38) ~[classes/:na]
      	at .......(:0) ~[na:na]
      

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            ihuzenko Igor Guzenko
            ihuzenko Igor Guzenko
            Bohdan Kazydub Bohdan Kazydub
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment