I'm facing issues while building an index on multiple columns in a Hive(0.9.0) 
table.

describe nas_comps;

OK

leg_id  int

ds_name string

dep_date        string

crr_code        string

flight_no       string

orgn    string

dstn    string

physical_cap    int

adjusted_cap    int

closed_cap      int

comp_code       string

This works :

CREATE INDEX nas_comps_legid ON TABLE nas_comps (leg_id) AS 
'org.apache.hadoop.hive.ql.index.compact.CompactIndexHandler' WITH DEFERRED 
REBUILD;

But this doesn't :

    CREATE INDEX nas_comps_legid_compcode ON TABLE nas_comps (leg_id,comp_code) 
AS 'org.apache.hadoop.hive.ql.index.compact.CompactIndexHandler' WITH DEFERRED 
REBUILD;



FAILED: Error in metadata: java.lang.RuntimeException: Check the index columns, 
they should appear in the table being indexed.

FAILED: Execution Error, return code 1 from 
org.apache.hadoop.hive.ql.exec.DDLTask

I guess the index is somehow able to recognize only the first column because 
even this failed :

CREATE INDEX nas_comps_compcode ON TABLE nas_comps (comp_code) AS 
'org.apache.hadoop.hive.ql.index.compact.CompactIndexHandler' WITH DEFERRED 
REBUILD;



FAILED: Error in metadata: java.lang.RuntimeException: Check the index columns, 
they should appear in the table being indexed.

FAILED: Execution Error, return code 1 from 
org.apache.hadoop.hive.ql.exec.DDLTask

I checked this<https://issues.apache.org/jira/browse/HIVE-4251> issue but I 
don't think this is the cause.


Regards,
Omkar Joshi

________________________________
The contents of this e-mail and any attachment(s) may contain confidential or 
privileged information for the intended recipient(s). Unintended recipients are 
prohibited from taking action on the basis of information in this e-mail and 
using or disseminating the information, and must notify the sender and delete 
it from their system. L&T Infotech will not accept responsibility or liability 
for the accuracy or completeness of, or the presence of any virus or disabling 
code in this e-mail"

Reply via email to