Simon,

If I look at the changes of the commit I've mentioned, I can only see a
change for /usr/share/cloudstack-mysql-ha/lib/*.jar (*jar -> *.jar)
The mysql-connector-java was already part of it.

This is the entry in our catalina.properties :
common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar,/usr/share/java/mysql-connector-java.jar,/usr/share/cloudstack-mysql-ha/lib/*.jar

So that's exactly the same. I've narrowed it down to this exact commit, so
that's why I mentioned it.

Any idea why the removal of the mysql-connector-java in the CLASSPATH might
break it?

Kind regards,
Nick Livens

On Wed, May 18, 2016 at 3:54 PM, Simon Weller <swel...@ena.com> wrote:

> Nick,
>
> mysql-connector-java.jar  was moved into the tomcat common.loader in
> /etc/cloudstack/management/catalina.properties:
>
>
> common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar,/usr/share/java/mysql-connector-java.jar,/usr/share/cloudstack-mysql-ha/lib/*.jar
>
> This was done to fix a bug where the mysql-ha feature was broken.
>
> Does your common.loader  look similar to the above?
>
> - Si
>
>
>
>
>
> ________________________________________
> From: Nick LIVENS <nick.liv...@nuagenetworks.net>
> Sent: Wednesday, May 18, 2016 5:49 AM
> To: dev@cloudstack.apache.org
> Subject: Re: MySQL : No suitable driver found for jdbc:mysql
>
> Hey all,
>
> So I've figured it out what's causing the issue, in
> commit c22659d76d73f00f41c13776c490e17a50aacd20, there has been a change in
> the classpath in cloud-management.sysconfig
> The change removes the mysql-connector-java.jar from the classpath.
>
> Before :
>
> CLASSPATH=/etc/cloudstack/management:/usr/share/cloudstack-common:/usr/share/cloudstack-management/setup:/usr/share/java/mysql-connector-java.jar
>
> After :
>
> CLASSPATH=/etc/cloudstack/management:/usr/share/cloudstack-common:/usr/share/cloudstack-management/setup
>
> Commit comment :  Addresses CLOUDSTACK-9300 where the MySQL HA
> StaticStrategy class fails to load successfully
>
> Does anyone have an idea why the mysql-connector-java.jar was removed from
> the classpath?
>
> Thanks in advance!
>
> On Wed, May 18, 2016 at 8:40 AM, Paul Angus <paul.an...@shapeblue.com>
> wrote:
>
> > Thanks Rohit,
> >
> > I see what you're saying.
> > The conversation was actually based on your statement 'Nick, install
> > libmysql-java or equivalent pkg' to which I asked why a user would have
> to
> > install an apparently additional component (Nick had already said that
> > mysql-connector-java.jar was loaded).
> >
> > The conversation then spiralled out of control.
> >
> > Kind regards,
> >
> > Paul Angus
> >
> > paul.an...@shapeblue.com
> > www.shapeblue.com
> > 53 Chandos Place, Covent Garden, London  WC2N 4HSUK
> > @shapeblue
> >
> >
> >
> > -----Original Message-----
> > From: Rohit Yadav [mailto:rohit.ya...@shapeblue.com]
> > Sent: 18 May 2016 03:51
> > To: dev@cloudstack.apache.org
> > Cc: dev@cloudstack.apache.org
> > Subject: Re: MySQL : No suitable driver found for jdbc:mysql
> >
> > Paul,
> >
> >
> > rohit.ya...@shapeblue.com
> > www.shapeblue.com
> > 53 Chandos Place, Covent Garden, London  WC2N 4HSUK @shapeblue
> >
> >
> > On May 17 2016, at 11:33 pm, Paul Angus <paul.an...@shapeblue.com>
> wrote:
> >
> > @Rohit,
> >
> > On CentOS 7 I get
> >
> > [root@localhost ~]# yum install libmysql-java
> >
> > This is incorrect, perhaps you did not read my email:
> > "The mysql-connector-java (on centos) or libmysql-java (on debian)
> package
> > provides the jar dependency that understands jdbc and is necessary for
> > CloudStack to communicate with MySQL, execute operations etc."
> >
> > The libmysql-java is the package name on debian/ubuntu, I said
> > libmysql-java or 'equivalent' as I don't know what environment Nick was
> > running. On CentOS, the same package that provides the mysql-java
> > client/jar dependency is called 'mysql-connector-java'.
> >
> > The hullabulla raised around packaging dependency, is a non-issue.
> >
> > Based on what Nick has shared, his environment has oracle-java and not
> > openjdk -- it is likely a case of missing classpath, JAVA_HOME and java
> jdk
> > directory path issue in the initd/systemd script.
> >
> > Regards.
> >
> >
> > Loaded plugins: fastestmirror
> > base | 3.6 kB 00:00:00
> > epel/x86_64/metalink | 25 kB 00:00:00
> > epel | 4.3 kB 00:00:00
> > extras | 3.4 kB 00:00:00
> > updates | 3.4 kB 00:00:00
> > (1/3): epel/x86_64/group_gz | 170 kB 00:00:00
> > (2/3): epel/x86_64/updateinfo | 555 kB 00:00:00
> > (3/3): epel/x86_64/primary_db | 4.1 MB 00:00:00
> > Loading mirror speeds from cached hostfile
> >  * base: mirrors.clouvider.net
> >  * epel: epel.mirrors.ovh.net
> >  * extras: centos.serverspace.co.uk
> >  * updates: mirror.as29550.net
> > No package libmysql-java available.
> > Error: Nothing to do
> > [root@localhost ~]#
> >
> > Kind regards,
> >
> > Paul Angus
> >
> > paul.an...@shapeblue.com
> > www.shapeblue.com
> > 53 Chandos Place, Covent Garden, London WC2N 4HSUK
> > @shapeblue
> >
> > -----Original Message-----
> > From: Rohit Yadav [mailto:rohit.ya...@shapeblue.com]
> > Sent: 17 May 2016 18:15
> > To: dev@cloudstack.apache.org
> > Subject: Re: MySQL : No suitable driver found for jdbc:mysql
> >
> > Nick, assuming it's a CentOS environment can you run
> > cloudstack-setup-databases (again), make sure that database IP and
> cluster
> > node IP parameters in db.properties are correct, and finally check that
> the
> > jar is in the classpath in the initd/systemd script (check JAVA_HOME, jdk
> > dirs etc.). Also watchout for errors in the logs.
> >
> > Oracle-java is not available from default repositories, in that case you
> > may need to fix JAVA_HOME and jdk paths in initd scripts.
> >
> > Regards.
> > ________________________________________
> > From: Nick LIVENS <nick.liv...@nuagenetworks.net>
> > Sent: 17 May 2016 18:34:38
> > To: dev@cloudstack.apache.org
> > Subject: MySQL : No suitable driver found for jdbc:mysql
> >
> > Hi all,
> >
> > I'm facing the following issue when installing ACS 4.9.0 (current
> master).
> > java.sql.SQLException: No suitable driver found for
> >
> jdbc:mysql://localhost:3306/cloud?autoReconnect=true&prepStmtCacheSize=517&cachePrepStmts=true
> >         at java.sql.DriverManager.getConnection(DriverManager.java:596)
> >         at java.sql.DriverManager.getConnection(DriverManager.java:215)
> >         at
> >
> >
> org.apache.commons.dbcp.DriverManagerConnectionFactory.createConnection(DriverManagerConnectionFactory.java:75)
> >         at
> >
> >
> org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:582)
> >         at
> >
> >
> org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:1188)
> >         at
> >
> >
> org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:106)
> >         at
> >
> >
> com.cloud.utils.db.TransactionLegacy.getStandaloneConnectionWithException(TransactionLegacy.java:202)
> >         at com.cloud.utils.db.Merovingian2.<init>(Merovingian2.java:68)
> >         at
> > com.cloud.utils.db.Merovingian2.createLockMaster(Merovingian2.java:88)
> >
> > First, I thought that the mysql-connector-java.jar was not loaded /
> > installed correctly. But this jar is loaded :
> > [root@csc-1 java]# lsof -p 14064 | grep jar | grep mysql
> > java 14064 cloud mem REG 253,1 883899 134860304
> > /usr/share/java/mysql-connector-java.jar
> > java 14064 cloud 38r REG 253,1 883899 134860304
> > /usr/share/java/mysql-connector-java.jar
> >
> > Tomcat specifics :
> > [root@csc-1 java]# tomcat version
> > Server version: Apache Tomcat/7.0.54
> > Server built: Mar 24 2015 07:49:05
> > Server number: 7.0.54.0
> > OS Name: Linux
> > OS Version: 3.10.0-229.7.2.el7.x86_64
> > Architecture: amd64
> > JVM Version: 1.7.0_85-mockbuild_2015_07_11_12_24-b00
> > JVM Vendor: Oracle Corporation
> >
> > Does anyone have an idea why I might be facing this issue?
> >
> > Thanks!
> >
> > Kind regards,
> > Nick Livens
> >
> > rohit.ya...@shapeblue.com
> > www.shapeblue.com
> > 53 Chandos Place, Covent Garden, London WC2N 4HSUK @shapeblue
> >
>

Reply via email to