[ 
https://issues.apache.org/jira/browse/MAPREDUCE-1327?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12797457#action_12797457
 ] 

Aaron Kimball commented on MAPREDUCE-1327:
------------------------------------------

1) I don't see how those instructions suggest you do that. In any case, don't 
propagate that change back into any patches you generate.

2) here's the stack trace:

{code}
10/01/06 18:33:13 ERROR manager.OracleManager: Could not set time zone for 
oracle connection
java.lang.reflect.InvocationTargetException
»- at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
»- at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
»- at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
»- at java.lang.reflect.Method.invoke(Method.java:597)
»- at 
org.apache.hadoop.sqoop.manager.OracleManager.setSessionTimeZone(OracleManager.java:107)
»- at 
org.apache.hadoop.sqoop.manager.OracleManager.makeConnection(OracleManager.java:89)
»- at 
org.apache.hadoop.sqoop.manager.GenericJdbcManager.getConnection(GenericJdbcManager.java:50)
»- at 
org.apache.hadoop.sqoop.manager.OracleManagerTest.setUp(OracleManagerTest.java:91)
»- at junit.framework.TestCase.runBare(TestCase.java:132)
»- at junit.framework.TestResult$1.protect(TestResult.java:110)
»- at junit.framework.TestResult.runProtected(TestResult.java:128)
»- at junit.framework.TestResult.run(TestResult.java:113)
»- at junit.framework.TestCase.run(TestCase.java:124)
»- at junit.framework.TestSuite.runTest(TestSuite.java:232)
»- at junit.framework.TestSuite.run(TestSuite.java:227)
»- at 
org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
»- at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
»- at 
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:420)
»- at 
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:911)
»- at 
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:768)
Caused by: java.sql.SQLDataException: ORA-01882: timezone region  not found

»- at 
oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:159)
»- at oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:137)
»- at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:257)
»- at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:468)
»- at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:418)
»- at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:1089)
»- at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:188)
»- at oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:1222)
»- at 
oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1516)
»- at 
oracle.jdbc.driver.OracleStatement.executeUpdateInternal(OracleStatement.java:2284)
»- at 
oracle.jdbc.driver.OracleStatement.executeUpdate(OracleStatement.java:2227)
»- at 
oracle.jdbc.driver.OracleStatementWrapper.executeUpdate(OracleStatementWrapper.java:809)
»- at 
oracle.jdbc.driver.PhysicalConnection.setSessionTimeZone(PhysicalConnection.java:13459)
»- ... 20 more
{code}

Handy tip: You don't need to see all the output on the console; it appears in 
text files in build/contrib/sqoop/test/TEST-(testname).txt


> 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
>
>   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.

Reply via email to