From: <bsc...@us...> - 2010-11-26 08:56:56
|
Revision: 8234 http://unicore.svn.sourceforge.net/unicore/?rev=8234&view=rev Author: bschuller Date: 2010-11-26 08:56:49 +0000 (Fri, 26 Nov 2010) Log Message: ----------- try to work around mysql reconnect issues Modified Paths: -------------- persistence/trunk/src/main/java/de/fzj/unicore/persist/cluster/Cluster.java persistence/trunk/src/main/java/de/fzj/unicore/persist/impl/MySQLPersist.java persistence/trunk/src/main/java/de/fzj/unicore/persist/impl/PersistImpl.java Modified: persistence/trunk/src/main/java/de/fzj/unicore/persist/cluster/Cluster.java =================================================================== --- persistence/trunk/src/main/java/de/fzj/unicore/persist/cluster/Cluster.java 2010-11-26 08:32:59 UTC (rev 8233) +++ persistence/trunk/src/main/java/de/fzj/unicore/persist/cluster/Cluster.java 2010-11-26 08:56:49 UTC (rev 8234) @@ -89,6 +89,7 @@ /** * shutdown this cluster instance */ + @SuppressWarnings("deprecation") public void shutdown(){ hazelcast.shutdown(); } Modified: persistence/trunk/src/main/java/de/fzj/unicore/persist/impl/MySQLPersist.java =================================================================== --- persistence/trunk/src/main/java/de/fzj/unicore/persist/impl/MySQLPersist.java 2010-11-26 08:32:59 UTC (rev 8233) +++ persistence/trunk/src/main/java/de/fzj/unicore/persist/impl/MySQLPersist.java 2010-11-26 08:56:49 UTC (rev 8234) @@ -82,11 +82,6 @@ public String getSQLStringType(){ return "LONGTEXT"; } - - @Override - public String getSQLShutdown(){ - return "SHUTDOWN"; - } @Override protected String createConnString(){ @@ -145,11 +140,18 @@ @Override protected Connection getConnection()throws PersistenceException{ - Connection c=super.getConnection(); + Connection c=null; try{ + c=super.getConnection(); ((com.mysql.jdbc.Connection)c).ping(); }catch(SQLException se){ - logger.warn("Error when ping()-ing MySQL connection: "+se.getMessage()); + logger.warn("Error when getting a MySQL connection: "+se.getMessage()); + try{ + c=super.getConnection(); + ((com.mysql.jdbc.Connection)c).ping(); + }catch(SQLException sqe){ + throw new PersistenceException(sqe); + } } return c; } Modified: persistence/trunk/src/main/java/de/fzj/unicore/persist/impl/PersistImpl.java =================================================================== --- persistence/trunk/src/main/java/de/fzj/unicore/persist/impl/PersistImpl.java 2010-11-26 08:32:59 UTC (rev 8233) +++ persistence/trunk/src/main/java/de/fzj/unicore/persist/impl/PersistImpl.java 2010-11-26 08:56:49 UTC (rev 8234) @@ -248,13 +248,15 @@ synchronized(conn){ try{ String sql=getSQLShutdown(); - s=conn.createStatement(); - s.execute(sql); + if(sql!=null){ + s=conn.createStatement(); + s.execute(sql); + } }catch(Exception e){ logger.warn("Shutting down: "+e.getMessage()); } finally{ - try{s.close();}catch(Exception e){} + try{if(s!=null)s.close();}catch(Exception e){} } } }finally{ @@ -833,8 +835,13 @@ return getSQLRowCount()+" WHERE "+column+"='"+value.toString()+"'"; } + /** + * get the SQL statement to issue when shutting down this persistence instance. If <code>null</code> is returned, + * no SQL statement will be executed when shutting down + * @return SQL for shutdown, or <code>null</code> if not applicable + */ public String getSQLShutdown(){ - return ""; + return null; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |