Uploaded image for project: 'Sqoop (Retired)'
  1. Sqoop (Retired)
  2. SQOOP-2627

Incremental imports fail in Sqoop when run using Teradata JDBC driver

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Patch Available
    • Minor
    • Resolution: Unresolved
    • 1.4.6
    • 1.5.0
    • None
    • None

    Description

      When sqoop incremental import is run over Teradata DB,

      sqoop import --driver com.teradata.jdbc.TeraDriver --connect jdbc:teradata://10.126.62.46/DATABASE=SampleDb,TMODE=ANSI,LOGMECH=LDAP --username abc -P --table test1 --incremental lastmodified --check-column DAT --last-value '2014-10-22 07:00:00' --target-dir /user/$USER/hive_data_dynapart/test1dir

      then the following error occurs:

      15/09/24 03:57:10 ERROR manager.SqlManager: SQL exception accessing current timestamp: com.teradata.jdbc.jdbc_4.util.JDBCException: [Teradata Database] [TeraJDBC 14.10.00.26] [Error 3706] [SQLState 42000] Syntax error: expected something between '(' and ')'.
      com.teradata.jdbc.jdbc_4.util.JDBCException: [Teradata Database] [TeraJDBC 14.10.00.26] [Error 3706] [SQLState 42000] Syntax error: expected something between '(' and ')'.
      at com.teradata.jdbc.jdbc_4.util.ErrorFactory.makeDatabaseSQLException(ErrorFactory.java:307)
      at com.teradata.jdbc.jdbc_4.statemachine.ReceiveInitSubState.action(ReceiveInitSubState.java:109)
      at com.teradata.jdbc.jdbc_4.statemachine.StatementReceiveState.subStateMachine(StatementReceiveState.java:314)
      at com.teradata.jdbc.jdbc_4.statemachine.StatementReceiveState.action(StatementReceiveState.java:202)
      at com.teradata.jdbc.jdbc_4.statemachine.StatementController.runBody(StatementController.java:123)
      at com.teradata.jdbc.jdbc_4.statemachine.StatementController.run(StatementController.java:114)
      at com.teradata.jdbc.jdbc_4.TDStatement.executeStatement(TDStatement.java:384)
      at com.teradata.jdbc.jdbc_4.TDStatement.executeStatement(TDStatement.java:326)
      at com.teradata.jdbc.jdbc_4.TDStatement.doNonPrepExecuteQuery(TDStatement.java:314)
      at com.teradata.jdbc.jdbc_4.TDStatement.executeQuery(TDStatement.java:1091)
      at org.apache.sqoop.manager.SqlManager.getCurrentDbTimestamp(SqlManager.java:987)
      at org.apache.sqoop.tool.ImportTool.initIncrementalConstraints(ImportTool.java:328)
      at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:488)
      at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:605)
      at org.apache.sqoop.Sqoop.run(Sqoop.java:143)
      at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
      at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:179)
      at org.apache.sqoop.Sqoop.runTool(Sqoop.java:218)
      at org.apache.sqoop.Sqoop.runTool(Sqoop.java:227)
      at org.apache.sqoop.Sqoop.main(Sqoop.java:236)
      15/09/24 03:57:10 ERROR tool.ImportTool: Encountered IOException running import job: java.io.IOException: Could not get current time from database
      at org.apache.sqoop.tool.ImportTool.initIncrementalConstraints(ImportTool.java:330)
      at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:488)
      at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:605)
      at org.apache.sqoop.Sqoop.run(Sqoop.java:143)
      at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
      at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:179)
      at org.apache.sqoop.Sqoop.runTool(Sqoop.java:218)
      at org.apache.sqoop.Sqoop.runTool(Sqoop.java:227)
      at org.apache.sqoop.Sqoop.main(Sqoop.java:236)

      Attachments

        1. SQOOP-2627_0.patch
          17 kB
          Shashank

        Issue Links

          Activity

            People

              standon Shashank
              kniranjan Kopal Niranjan
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated: