Hi Markus,

This is not a general problem with ManifoldCF, because we even have tests that exercise this functionality.  Probably the issue is that some JDBC drivers are more resilient than others.  I have not researched what the MySQL driver does in this case, but I wouldn't be surprised if the pooled JDBC connections for MySQL were not resurrectable after that sequence of activity.

If there is a general JDBC method we could call to verify that the connection is alive or dead, it would be easy to discard the dead ones and recreate them.  But this indicates that no such general functionality yet exists:

http://stackoverflow.com/questions/14320231/is-there-a-safe-way-to-tell-if-a-jdbc-connection-is-still-ok

Karl


On Wed, May 20, 2015 at 9:05 AM, Markus Schuch <markus_schuch@web.de> wrote:
Hi,
 
it seems that manifoldcf can not re-establish the database connection, when the database connection was lost.
For example on MySQL manifoldcf stops working when we shutdown and start the database the database.

"Database exception: SQLException doing query (08): Could not send query: Last packet not finished"

Only a restart of manifoldcf fixes that error.

Is it possible to configure manifoldcf to be more resillient on database connection losses?
E.g. doing a connection health check in the connection pool before giving connections away?

Thanks in advance,
Markus