Search code examples
hivevirtualboxhiveqlcloudera

"Error: List index out of range" in HIVE while displaying a recently created empty table


enter image description here

I am using virtual box to run the cloudera v5.4.2-0. I followed the instructions of an online course to create an empty table using the following HIVEQL:

create table sales_all_years (RowID smallint, OrderID int, OrderDate date, OrderMonthYear date, Quantity int, Quote float, DiscountPct float, Rate float, SaleAmount float, CustomerName string, CompanyName string, Sector string, Industry string, City string, ZipCode string, State string, Region string, ProjectCompleteDate date, DaystoComplete int, ProductKey string, ProductCategory string, ProductSubCategory string, Consultant string, Manager string, HourlyWage float, RowCount int, WageMargin float)
partitioned by (yr int) -- partitioning
row format serde 'com.bizo.hive.serde.csv.CSVSerde'
stored as textfile;

I experimented a little and realized that partitioning the table is causing the error but I could not figure out the reason.

P.S. I am a little new to this. Sorry if the format is of my question is a little off


Solution

  • The problem might be with com.bizo.hive.serde.csv.CSVSerde. Try to create table with different SerDe, for instance

    ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde'
    WITH SERDEPROPERTIES (
       "separatorChar" = ",",
       "quoteChar"     = "'",
       "escapeChar"    = "\\"
    )  
    STORED AS TEXTFILE
    

    or just textfile with the corresponding separator

    ROW FORMAT DELIMITED
    FIELDS TERMINATED BY ','
    STORED AS TEXTFILE