Re: Cannot instantiate Mysql connection

Posted by Flavio Pompermaier on
URL: http://deprecated-apache-flink-user-mailing-list-archive.369.s1.nabble.com/Cannot-instantiate-Mysql-connection-tp1506p1511.html

HI Robert,
In the main method I connect to a mysql table that acts as a data-source repository that I use to know which dataset I need to load. All mysql classes are present in the shaded jar.
Could you explain a little bit more in detail the solution to fix this problem please? Sorry but I didn't understand it :(

Thanks,
Flavio

On 5 Jun 2015 18:33, "Robert Metzger" <[hidden email]> wrote:
Hi Stefano,

I doubt that there are conflicting dependencies because Flink does not contain MySQL dependencies.
Are you using Flink's JDBCInputFormat or custom code?

For drivers to register at java.sql's DriverManager, their classes need to be loaded first. To load a class, you need to call Class.forName("<classname>");

Maybe you are loading the class in the application's main() method (thats why it is working from eclipse) but not on the cluster instances which are supposed to read the data.

On Fri, Jun 5, 2015 at 5:16 PM, Stefano Bortoli <[hidden email]> wrote:
Hi Robert,

I answer on behalf of Flavio. He told me the driver jar was included. Smells lik class-loading issue due to 'conflicting' dependencies.  Is it possible?

Saluti,
Stefano

2015-06-05 16:24 GMT+02:00 Robert Metzger <[hidden email]>:
Hi,

is the MySQL driver part of the Jar file that you've build?

On Fri, Jun 5, 2015 at 4:11 PM, Flavio Pompermaier <[hidden email]> wrote:
Hi to all,

I'm using a fresh build of flink-0.9-SNAPSHOT and in my flink job I set up a mysql connection.
When I run the job from Eclipse everything is fine,
while when running the job from the Web UI I get the following exception:

java.sql.SQLException: No suitable driver found for jdbc:mysql:/localhost:3306/mydb?autoReconnect=true
at java.sql.DriverManager.getConnection(DriverManager.java:596)
at java.sql.DriverManager.getConnection(DriverManager.java:215)

How can I fix that?

Best,
Flavio