TheGoat
TheGoat

Reputation: 2877

Importing data from Sybase IQ using Sqoop: Syntax error near 'Committed' on line 1

I am trying to import a table from Sybase IQ to a Hive table using the following sqoop command:

sqoop import \
--verbose \
--connect jdbc:sybase:Tds:server:port#?ServiceName=dbName \
--username username \
-P \
--driver com.sybase.jdbc4.jdbc.SybDriver \
--table myName.someTable \
--target-dir file:////tmp/HELLO/tej01

From this I get the following error thrown: Syntax error near 'Committed' on line 1

I've also tried escaping the "." in the table name using the section below but I get the same error:

--table myName\".\"someTable \

Can someone please give me some direction as to how I can resolve this?

19/12/05 01:45:34 INFO sqoop.Sqoop: Running Sqoop version: 1.4.6-mapr-1803
19/12/05 01:45:34 DEBUG tool.BaseSqoopTool: Enabled debug logging.
19/12/05 01:45:35 DEBUG sqoop.ConnFactory: Loaded manager factory: org.apache.sqoop.manager.oracle.OraOopManagerFactory
19/12/05 01:45:35 DEBUG sqoop.ConnFactory: Loaded manager factory: com.cloudera.sqoop.manager.DefaultManagerFactory
19/12/05 01:45:35 WARN sqoop.ConnFactory: Parameter --driver is set to an explicit driver however appropriate connection manager is not being set (via --connection-manager). Sqoop is going to fall back to org.apache.sqoop.manager.GenericJdbcManager. Please specify explicitly which connection manager should be used next time.
19/12/05 01:45:35 INFO manager.SqlManager: Using default fetchSize of 1000
19/12/05 01:45:35 INFO tool.CodeGenTool: Beginning code generation
19/12/05 01:45:35 DEBUG manager.SqlManager: Execute getColumnInfoRawQuery : SELECT t.* FROM myName.someTable AS t WHERE 1=0
19/12/05 01:45:35 DEBUG manager.SqlManager: No connection paramenters specified. Using regular API for making connection.
19/12/05 01:45:35 ERROR manager.SqlManager: Error executing statement: com.sybase.jdbc4.jdbc.SybSQLException: SQL Anywhere Error -131: Syntax error near 'Committed' on line 1
com.sybase.jdbc4.jdbc.SybSQLException: SQL Anywhere Error -131: Syntax error near 'Committed' on line 1
                at com.sybase.jdbc4.tds.Tds.processEed(Tds.java:4201)
                at com.sybase.jdbc4.tds.Tds.nextResult(Tds.java:3318)
                at com.sybase.jdbc4.jdbc.ResultGetter.nextResult(ResultGetter.java:78)
                at com.sybase.jdbc4.jdbc.SybStatement.nextResult(SybStatement.java:302)
                at com.sybase.jdbc4.jdbc.SybStatement.nextResult(SybStatement.java:284)
                at com.sybase.jdbc4.jdbc.SybStatement.updateLoop(SybStatement.java:2762)
                at com.sybase.jdbc4.jdbc.SybStatement.executeUpdate(SybStatement.java:2746)
                at com.sybase.jdbc4.jdbc.SybPreparedStatement.executeUpdate(SybPreparedStatement.java:330)
                at com.sybase.jdbc4.tds.Tds.setOption(Tds.java:2139)
                at com.sybase.jdbc4.jdbc.SybConnection.setTransactionIsolation(SybConnection.java:2806)
                at org.apache.sqoop.manager.SqlManager.makeConnection(SqlManager.java:907)
                at org.apache.sqoop.manager.GenericJdbcManager.getConnection(GenericJdbcManager.java:52)
                at org.apache.sqoop.manager.SqlManager.execute(SqlManager.java:760)
                at org.apache.sqoop.manager.SqlManager.execute(SqlManager.java:783)
                at org.apache.sqoop.manager.SqlManager.getColumnInfoForRawQuery(SqlManager.java:280)
                at org.apache.sqoop.manager.SqlManager.getColumnTypesForRawQuery(SqlManager.java:251)
                at org.apache.sqoop.manager.SqlManager.getColumnTypes(SqlManager.java:237)
                at org.apache.sqoop.manager.ConnManager.getColumnTypes(ConnManager.java:300)
                at org.apache.sqoop.orm.ClassWriter.getColumnTypes(ClassWriter.java:1846)
                at org.apache.sqoop.orm.ClassWriter.generate(ClassWriter.java:1657)
                at org.apache.sqoop.tool.CodeGenTool.generateORM(CodeGenTool.java:107)
                at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:479)
                at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:606)
                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)
19/12/05 01:45:35 ERROR tool.ImportTool: Encountered IOException running import job: java.io.IOException: No columns to generate for ClassWriter
                at org.apache.sqoop.orm.ClassWriter.generate(ClassWriter.java:1663)
                at org.apache.sqoop.tool.CodeGenTool.generateORM(CodeGenTool.java:107)
                at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:479)
                at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:606)
                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)

Upvotes: 1

Views: 327

Answers (1)

Markus
Markus

Reputation: 11

This seems to be a known bug (SAP KBA 2707539). SAP Targeted CR

I was getting this error message with jconnect16.jar. However the error does not occur with jconn4.jar. Using version 4 fixed the issue for me.

Upvotes: 1

Related Questions