Проблема с c3p0 и MySql wait_timeout - PullRequest
2 голосов
/ 07 августа 2011

Я получаю ошибку com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed.Connection was implicitly closed by the driver через некоторое время в моем веб-приложении.Это «когда-то» было 8 часов, но я узнал, что по умолчанию сервер закрывает соединение через восемь часов, если ничего не произошло.Поэтому я изменил "wait_timeout" на 30 секунд и изменил свойство hibernate.c3p0.idle_test_period в hibernate.cfg.xml на 10 секунд

Вот мои свойства hibernate.cfg.xml

        <property name="connection.pool_size">20</property>
        <property name="hibernate.connection.zeroDateTimeBehavior">
           convertToNull
        </property>
        <property>
name="connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider
        </property>  
        <property name="hibernate.c3p0.min_size">5</property>
        <property name="hibernate.c3p0.max_size">50</property>
        <property name="hibernate.c3p0.timeout">15</property>
        <property name="hibernate.c3p0.max_idle_time">18</property>
        <property name="hibernate.c3p0.max_statements">50</property>
        <property name="hibernate.c3p0.idle_test_period">10</property> 

Вот мои свойства c3p0

c3p0.preferredTestQuery = SELECT 1;

Но я все еще получаю ту же ошибку

...