Mirek Szymanski created SQOOP-2564: -------------------------------------- Summary: Problem with Teradata input table with INTEGER column Key: SQOOP-2564 URL: https://issues.apache.org/jira/browse/SQOOP-2564 Project: Sqoop Issue Type: Bug Affects Versions: 1.99.6 Reporter: Mirek Szymanski
I'm trying to transfer data between Teradata and Oracle databases. The input table in Teradata has column of type INTEGER (columntype 'I' in dbc.columnsV) to Oracle table with column INTEGER. This results in exception: java.lang.ClassCastException: java.lang.Integer cannot be cast to java.math.BigDecimal at org.apache.sqoop.connector.common.SqoopIDFUtils.toCSVDecimal(SqoopIDFUtils.java:176) at org.apache.sqoop.connector.common.SqoopIDFUtils.toCSV(SqoopIDFUtils.java:602) at org.apache.sqoop.connector.idf.CSVIntermediateDataFormat.toCSV(CSVIntermediateDataFormat.java:116) at org.apache.sqoop.connector.idf.CSVIntermediateDataFormat.setObjectData(CSVIntermediateDataFormat.java:87) at org.apache.sqoop.job.mr.SqoopMapper$SqoopMapDataWriter.writeContent(SqoopMapper.java:149) ... 11 more The fix (or maybe a workaround) is to remove the cast to BigDecimal from SqoopIDFUtils.toCSVDecimal(). When the cast is removed, my scenario works fine. -- This message was sent by Atlassian JIRA (v6.3.4#6332)