Servus,
ich habe bei mir das klassische Problem. Ich benutze Hibernate, MySQL und einen beliebigen Connection Pool (C3P0, DBCP). Anfänglich funktioniert alles wunderbar, doch noch einer Weile inaktivität (> 12h) funktioniert kein Datenbankzugriff mehr.
Hier ist die Fehlermeldung:
Das Problem wird ja oft in Foren angesprochen, doch nirgends finde ich eine Lösung, welche bei mir funktioniert. Ab und zu wird zwar geschrieben, dass es mit dieser oder jener Einstellung funktionieren soll, aber alles Ausprobierte brachte mich nicht weiter. Teilweise sind auch die Ratschläge in unterschiedlichen Foren/Mailinglisten wiedersprüchlich.
Meine Frage daher: Hat jemand eine Hibernate Config, die funktioniert? Hat eventuell schonmal jemand ein ähnliches Problem gelöst?
Bin für jeden Hinweis dankbar.
Hier ist meine momentane Hibernate Config:
Benutzte Versionen:
Tomcat: 6.0.10.0
Hibernate: 3.2.2
MySQL: 5.0.32
JVM Version: 1.5.0_10-b03
Schönes Wochenende noch!
ich habe bei mir das klassische Problem. Ich benutze Hibernate, MySQL und einen beliebigen Connection Pool (C3P0, DBCP). Anfänglich funktioniert alles wunderbar, doch noch einer Weile inaktivität (> 12h) funktioniert kein Datenbankzugriff mehr.
Hier ist die Fehlermeldung:
com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
** BEGIN NESTED EXCEPTION **
java.io.EOFException
STACKTRACE:
java.io.EOFException
at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1963)
at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2375)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2874)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1623)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1715)
[...]
Das Problem wird ja oft in Foren angesprochen, doch nirgends finde ich eine Lösung, welche bei mir funktioniert. Ab und zu wird zwar geschrieben, dass es mit dieser oder jener Einstellung funktionieren soll, aber alles Ausprobierte brachte mich nicht weiter. Teilweise sind auch die Ratschläge in unterschiedlichen Foren/Mailinglisten wiedersprüchlich.
Meine Frage daher: Hat jemand eine Hibernate Config, die funktioniert? Hat eventuell schonmal jemand ein ähnliches Problem gelöst?
Bin für jeden Hinweis dankbar.
Hier ist meine momentane Hibernate Config:
Code:
<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.password">XYZ</property>
<property name="hibernate.connection.url">jdbc:mysql://127.0.0.1/k2?useUnicode=true&connectionCollation=utf8_general_ci&characterSetResults=utf8</property>
<property name="hibernate.connection.username">XYZ</property>
<property name="hibernate.connection.is-connection-validation-required">true</property>
<property name="hibernate.show_sql">true</property>
<property name="hibernate.current_session_context_class">thread</property>
<property name="hibernate.dbcp.maxActive">100</property>
<property name="hibernate.dbcp.whenExhaustedAction">1</property>
<property name="hibernate.dbcp.maxWait">20000</property>
<property name="hibernate.dbcp.maxIdle">10</property>
<property name="hibernate.dbcp.ps.maxActive">100</property>
<property name="hibernate.dbcp.ps.whenExhaustedAction">1</property>
<property name="hibernate.dbcp.ps.maxWait">120000</property>
<property name="hibernate.dbcp.ps.maxIdle">100</property>
<property name="hibernate.dbcp.validationQuery">select 1 from hibernate_unique_key</property>
<property name="hibernate.dbcp.testOnBorrow">true</property>
<property name="hibernate.dbcp.testOnReturn">true</property>
[..]
</session-factory>
</hibernate-configuration>
Benutzte Versionen:
Tomcat: 6.0.10.0
Hibernate: 3.2.2
MySQL: 5.0.32
JVM Version: 1.5.0_10-b03
Schönes Wochenende noch!