Home | About | Sematext search-lucene.com search-hadoop.com
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB
 Search Hadoop and all its subprojects:

Switch to Plain View
Sqoop >> mail # user >> Why sqoop picks up hsqldb driver jar when connect to mysql db?


+
sam liu 2013-08-06, 01:52
Copy link to this message
-
Re: Why sqoop picks up hsqldb driver jar when connect to mysql db?
I think this is a defect of Sqoop, and opened a jira for it:
https://issues.apache.org/jira/browse/SQOOP-1164. I set the priority as
Minor, because it has the workaround: only leave the target driver jar file
in the sqoop/lib folder, but remove other driver jar files from the folder.
However, it should be mentioned that when we have many dirver jar files
under sqoop/lib folder for multiple kinds of databases, or a script will
connect to different databases, this workaround can not work well.

Thanks!
2013/8/6 sam liu <[EMAIL PROTECTED]>

> Hi Experts,
>
> Under SQOOP/lib, I have both hsqldb driver jar file and mysql driver jar
> file:
> - lib/hsqldb-1.8.0.10.jar
> - lib/mysql-connector-java-5.1.20-bin.jar
>
> But, when I try to connect to mysql db using sqoop import tool, sqoop will
> pick up hsqldb driver jar and returned following exception. Even if I add
> '--connection-manager org.apache.sqoop.manager.MySQLManager' into the
> command, this issue still exists. But, after I removed the hsqldb jar file
> from lib folder, this issue does not exist any more.
>
> Why? What's the correct method to invoke import tool to avoid such issue?
> Thanks!
>
> > bin/sqoop import --connect jdbc:mysql://hostname:3306/test
> --connection-manager org.apache.sqoop.manager.MySQLManager --username user
> --password pwd --table testtbl -m 1 --target-dir /tmp/test5
> 13/08/05 18:44:03 WARN tool.BaseSqoopTool: Setting your password on the
> command-line is insecure. Consider using -P instead.
> 13/08/05 18:44:03 INFO manager.MySQLManager: Preparing to use a MySQL
> streaming resultset.
> 13/08/05 18:44:03 INFO tool.CodeGenTool: Beginning code generation
> Exception in thread "main" java.lang.NoSuchMethodError:
> org/hsqldb/DatabaseURL.parseURL(Ljava/lang/String;ZZ)Lorg/hsqldb/persist/HsqlProperties;
>         at org.hsqldb.jdbc.JDBCDriver.getConnection(Unknown Source)
>         at org.hsqldb.jdbc.JDBCDriver.connect(Unknown Source)
>         at java.sql.DriverManager.getConnection(DriverManager.java:402)
>         at java.sql.DriverManager.getConnection(DriverManager.java:450)
>         at
> org.apache.sqoop.manager.SqlManager.makeConnection(SqlManager.java:745)
>         at
> org.apache.sqoop.manager.GenericJdbcManager.getConnection(GenericJdbcManager.java:52)
>         at org.apache.sqoop.manager.SqlManager.execute(SqlManager.java:605)
>         at org.apache.sqoop.manager.SqlManager.execute(SqlManager.java:628)
>         at
> org.apache.sqoop.manager.SqlManager.getColumnTypesForRawQuery(SqlManager.java:235)
>         at
> org.apache.sqoop.manager.SqlManager.getColumnTypes(SqlManager.java:219)
>         at
> org.apache.sqoop.manager.ConnManager.getColumnTypes(ConnManager.java:283)
>         at
> org.apache.sqoop.orm.ClassWriter.getColumnTypes(ClassWriter.java:1255)
>         at org.apache.sqoop.orm.ClassWriter.generate(ClassWriter.java:1072)
>         at
> org.apache.sqoop.tool.CodeGenTool.generateORM(CodeGenTool.java:82)
>         at
> org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:390)
>         at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:476)
>         at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
>         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
>         at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
>         at org.apache.sqoop.Sqoop.runTool(Sqoop.java:220)
>         at org.apache.sqoop.Sqoop.runTool(Sqoop.java:229)
>         at org.apache.sqoop.Sqoop.main(Sqoop.java:238)
>
> --
>
> Sam Liu
>

--

Sam Liu
+
Abraham Elmahrek 2013-08-07, 04:44
+
sam liu 2013-08-07, 06:56
+
Jarek Jarcec Cecho 2013-08-11, 21:18
+
sam liu 2013-08-19, 09:27
+
Jarek Jarcec Cecho 2013-08-25, 16:36
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB