Hi Marc, As far as I know indexes do not work in hive. Have you checked it with explain?
Thanks, Mich On 15/5/2015, "Marc Seeger" <m...@web-computing.de> wrote: >Hi, > >I'm using Hive14 on a HDP2.2-Cluster and have a problem with indexing on >Hive. I can create an index. >create INDEX ix_key ON TABLE DbTest.Tbl_test(TEST_KEY) > >as 'org.apache.hadoop.hive.ql.index.compact.CompactIndexHandler' WITH >DEFERRED REBUILD; > >After that I loaded data into the table and built the index. > >ALTER INDEX ix_key ON DbTest.Tbl_test REBUILD; > >Hive built the index and it works fine, performance increased. Now I want >to rebuild the index, but always get an error: > >INFO : Session is already open >INFO : Tez session was closed. Reopening... >INFO : Session re-established. >INFO : > >ERROR : Status: Failed >ERROR : Vertex failed, vertexName=Map 1, >vertexId=vertex_1426585957958_2810_1_00, diagnostics=[Vertex >vertex_1426585957958_2810_1_00 [Map 1] killed/failed due >to:ROOT_INPUT_INIT_FAILURE, Vertex Input: Tbl_test initializer failed, >vertex=vertex_1426585957958_2810_1_00 [Map 1], >java.lang.NullPointerException >at >org.apache.hadoop.hive.ql.exec.tez.DynamicPartitionPruner.initialize(DynamicPartitionPruner.java:135) >at >org.apache.hadoop.hive.ql.exec.tez.DynamicPartitionPruner.prune(DynamicPartitionPruner.java:100) >at >org.apache.hadoop.hive.ql.exec.tez.HiveSplitGenerator.initialize(HiveSplitGenerator.java:109) >at >org.apache.tez.dag.app.dag.RootInputInitializerManager$InputInitializerCallable$1.run(RootInputInitializerManager.java:245) >at >org.apache.tez.dag.app.dag.RootInputInitializerManager$InputInitializerCallable$1.run(RootInputInitializerManager.java:239) >at java.security.AccessController.doPrivileged(Native Method) >at javax.security.auth.Subject.doAs(Subject.java:415) >at >org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1628) >at >org.apache.tez.dag.app.dag.RootInputInitializerManager$InputInitializerCallable.call(RootInputInitializerManager.java:239) >at >org.apache.tez.dag.app.dag.RootInputInitializerManager$InputInitializerCallable.call(RootInputInitializerManager.java:226) >at java.util.concurrent.FutureTask.run(FutureTask.java:262) >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) >] >ERROR : Vertex killed, vertexName=Reducer 2, >vertexId=vertex_1426585957958_2810_1_01, diagnostics=[Vertex received >Kill in INITED state., Vertex vertex_1426585957958_2810_1_01 [Reducer >2] killed/failed due to:null] >ERROR : DAG failed due to vertex failure. failedVertices:1 killedVertices:1 >Error: Error while processing statement: FAILED: Execution Error, >return code 2 from org.apache.hadoop.hive.ql.exec.tez.TezTask >(state=08S01,code=2) > >The base table exists, I can run queries against it. The index table exists >too. If I create a new index on another table and run rebuild-command, I >got the same error. I tried the command with beeline and CLI without any >effect to result. >Thanks for your help, >Marc > >