Created on 09-29-201708:13 AM - edited on 02-14-202001:31 AM by VidyaSargur
PROBLEM:
In hive, on oracle metastore following error is observed for table creation,
java.sql.SQLException: ORA-01461: can bind a LONG value only for insert into a LONG column
ROOT CAUSE:
Issue looks to be due to large number of columns in this table.
RESOLUTION:
Currently hive will we store column stats in a table while we store the accuracy in another table (table properites). The best way is to store both the column stats and its accuracy in the same table. This involves modification of schema. As a workaround we can change the column type to CLOB.
Oracle LONG columns are a nasty biz. They work with practically no other SQL or PL/SQL data types. Depending on the actual version of the DBMS, VARCHAR2 values can get treated as LONG and cause errors like this.