[
https://issues.apache.org/jira/browse/MAPREDUCE-1327?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12797344#action_12797344
]
Aaron Kimball commented on MAPREDUCE-1327:
------------------------------------------
Looking at this patch myself, a few things stand out:
* This patch seems to revert many recent changes to Sqoop. Please re-merge your
branch with trunk before resubmitting and make sure you're not submitting
extraneous changes.
* Please don't go over 80 columns / line
* Uses of System.out and System.err should be replaced with appropriate
LOG.info(), debug(), etc statements.
* Don't trap the exception on failure to set tz in OracleManager; that should
rethrow a SQLException
* The base SqlManager.toJavaType() method should still return null in the
undefined 'else' case. An extra 'dbToJavaType' method is unnecessary;
subclasses should simply override toJavaType().
* The base toHiveType() method should not be empty; it should call
o.a.h.sqoop.hive.HiveTypes.toHiveType().
* I don't understand SqlManager.getDatabaseType(). Nothing Oracle-specific
should be in this class; that belongs in OracleManager.
* getTypeClass() similarly does not belong in the base SqlManager class.
> Oracle database import via sqoop fails when a table contains the column types
> such as TIMESTAMP(6) WITH LOCAL TIME ZONE and TIMESTAMP(6) WITH TIME ZONE
> -------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: MAPREDUCE-1327
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-1327
> Project: Hadoop Map/Reduce
> Issue Type: Bug
> Components: contrib/sqoop
> Affects Versions: 0.22.0
> Reporter: Leonid Furman
> Fix For: 0.22.0
>
> Attachments: MAPREDUCE-1327.patch.gz
>
> Original Estimate: 96h
> Remaining Estimate: 96h
>
> When Oracle table contains the columns "TIMESTAMP(6) WITH LOCAL TIME ZONE"
> and "TIMESTAMP(6) WITH TIME ZONE", Sqoop fails to map values for those
> columns to valid Java data types, resulting in the following exception:
> ERROR sqoop.Sqoop: Got exception running Sqoop: java.lang.NullPointerException
> java.lang.NullPointerException
> at
> org.apache.hadoop.sqoop.orm.ClassWriter.generateFields(ClassWriter.java:253)
> at
> org.apache.hadoop.sqoop.orm.ClassWriter.generateClassForColumns(ClassWriter.java:701)
> at
> org.apache.hadoop.sqoop.orm.ClassWriter.generate(ClassWriter.java:597)
> at org.apache.hadoop.sqoop.Sqoop.generateORM(Sqoop.java:75)
> at org.apache.hadoop.sqoop.Sqoop.importTable(Sqoop.java:87)
> at org.apache.hadoop.sqoop.Sqoop.run(Sqoop.java:175)
> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:79)
> at org.apache.hadoop.sqoop.Sqoop.main(Sqoop.java:201)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> I have modified the code for Hadoop and Sqoop so this bug is fixed on my
> machine. Please let me know if you would like me to generate the patch and
> upload it to this ticket.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.