Uploaded image for project: 'Hive'
  1. Hive
  2. HIVE-18290

hbase backed table creation fails where no column comments present

    XMLWordPrintableJSON

Details

    Description

      Create Hbase Table:
      ========================
      create 'hbase_avro_table', 'test_col_fam', 'test_col'

      Create Hive Table:
      =========================
      CREATE EXTERNAL TABLE test_hbase_avro2
      ROW FORMAT SERDE 'org.apache.hadoop.hive.hbase.HBaseSerDe'
      STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
      WITH SERDEPROPERTIES (
      "hbase.columns.mapping" = ":key,test_col_fam:test_col",
      "test_col_fam.test_col.serialization.type" = "avro",
      "test_col_fam.test_col.avro.schema.url" = "hdfs://localhost:8020/user/hive/schema.avsc")
      TBLPROPERTIES (
      "hbase.table.name" = "hbase_avro_table",
      "hbase.mapred.output.outputtable" = "hbase_avro_table",
      "hbase.struct.autogenerate"="true",
      "avro.schema.literal"='{
      "type": "record",
      "name": "test_hbase_avro",
      "fields": [

      { "name":"test_col", "type":"string"}

      ]
      }');

      schema.avsc
      ===========

      {
      	"type": "record",
      	"name": "test_hbase_avro",
      	"fields": [
      		{ "name":"test_col",  "type":"string"}
      	]
      }
      

      throws exception

      java.lang.ArrayIndexOutOfBoundsException: 1
              at java.util.Arrays$ArrayList.get(Arrays.java:3841) ~[?:1.8.0_77]
              at org.apache.hadoop.hive.serde2.BaseStructObjectInspector.init(BaseStructObjectInspector.java:106) ~[hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.serde2.lazy.objectinspector.LazySimpleStructObjectInspector.init(LazySimpleStructObjectInspector.java:97) ~[hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.serde2.lazy.objectinspector.LazySimpleStructObjectInspector.<init>(LazySimpleStructObjectInspector.java:77) ~[hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.serde2.lazy.objectinspector.LazyObjectInspectorFactory.getLazySimpleStructObjectInspector(LazyObjectInspectorFactory.java:115) ~[hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.hbase.HBaseLazyObjectFactory.createLazyHBaseStructInspector(HBaseLazyObjectFactory.java:85) ~[hive-hbase-handler-2.1.0.2.6.3.0-SNAPSHOT.jar:2.1.0.2.6.3.0-SNAPSHOT]
              at org.apache.hadoop.hive.hbase.HBaseSerDe.initialize(HBaseSerDe.java:128) ~[hive-hbase-handler-2.1.0.2.6.3.0-SNAPSHOT.jar:2.1.0.2.6.3.0-SNAPSHOT]
              at org.apache.hadoop.hive.serde2.AbstractSerDe.initialize(AbstractSerDe.java:54) ~[hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.serde2.SerDeUtils.initializeSerDe(SerDeUtils.java:531) ~[hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.metastore.MetaStoreUtils.getDeserializer(MetaStoreUtils.java:436) ~[hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.metastore.MetaStoreUtils.getDeserializer(MetaStoreUtils.java:423) ~[hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.ql.metadata.Table.getDeserializerFromMetaStore(Table.java:279) ~[hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.ql.metadata.Table.getDeserializer(Table.java:261) ~[hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.ql.metadata.Table.getColsInternal(Table.java:639) [hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.ql.metadata.Table.getCols(Table.java:622) [hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.ql.metadata.Hive.createTable(Hive.java:834) [hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.ql.metadata.Hive.createTable(Hive.java:870) [hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.ql.exec.DDLTask.createTable(DDLTask.java:4271) [hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.ql.exec.DDLTask.execute(DDLTask.java:350) [hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:199) [hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:100) [hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1987) [hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1667) [hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1414) [hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1211) [hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1204) [hive-exec-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hive.service.cli.operation.SQLOperation.runQuery(SQLOperation.java:242) [hive-service-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hive.service.cli.operation.SQLOperation.access$800(SQLOperation.java:91) [hive-service-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at org.apache.hive.service.cli.operation.SQLOperation$BackgroundWork$1.run(SQLOperation.java:336) [hive-service-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_77]
              at javax.security.auth.Subject.doAs(Subject.java:422) [?:1.8.0_77]
              at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1866) [hadoop-common-2.7.3.2.6.3.0-235.jar:?]
              at org.apache.hive.service.cli.operation.SQLOperation$BackgroundWork.run(SQLOperation.java:350) [hive-service-2.1.0.2.6.3.0-235.jar:2.1.0.2.6.3.0-235]
              at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_77]
              at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_77]
              at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_77]
              at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_77]
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:1.8.0_77]
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:1.8.0_77]
      

      Attachments

        1. HIVE-18290.0.patch
          1 kB
          Anishek Agarwal

        Issue Links

          Activity

            People

              anishek Anishek Agarwal
              anishek Anishek Agarwal
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: