You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by abhishek jain <ab...@gmail.com> on 2011/02/25 07:31:29 UTC
Exception in hibernate3 relating to timeout
hi,
I am not sure if i am ringing the correct list, but i am sure people here
must have encountered this problem. I am new to hibernate and when i ran the
code on server it was fine , strangely next day it keep on giving this error
till i restart tomcat.
The last packet successfully received from the server was 54,880,316
milliseconds ago. The last packet sent successfully to the server was
54,880,317 milliseconds ago. is longer than the server configured value of
'wait_timeout'. You should consider either expiring and/or testing
connection validity before use in your application, increasing the server
configured values for client timeouts, or using the Connector/J connection
property 'autoReconnect=true' to avoid this problem.
I have searched a lot on net and added the following properties on
hibernate.cfg.xml, as people there were suggesting this,but of no use.
<!-- Sessions and transactions -->
<!-- Use the C3P0 connection pool provider -->
<property name="hibernate.c3p0.min_size">5</property>
<property name="hibernate.c3p0.max_size">20</property>
<property name="hibernate.c3p0.timeout">300</property>
<property name="hibernate.c3p0.max_statements">50</property>
<property name="hibernate.c3p0.idle_test_period">3000</property>
<property name="current_session_context_class">thread</property>
Pl. help me.
I have used hibernate3 with myeclipse as the development environment, and am
using mysql 5.x and centos (Linux) with Tomcat 5.x
--
Thanks and kind Regards,
Abhishek jain
Re: Exception in hibernate3 relating to timeout
Posted by Mark Eggers <it...@yahoo.com>.
----- Original Message (edited) ----
From: Filip Hanik - Dev Lists <de...@hanik.com>
Use a different connection pool that can properly handle your timeouts
when idle.
http://people.apache.org/~fhanik/jdbc-pool/
http://people.apache.org/~fhanik/jdbc-pool/jdbc-pool.html
Filip
On 02/24/2011 11:31 PM, abhishek jain wrote:
> hi,
> I am not sure if i am ringing the correct list, but i am sure people here
> must have encountered this problem. I am new to hibernate and when i ran the
> code on server it was fine , strangely next day it keep on giving this error
> till i restart tomcat.
>
> The last packet successfully received from the server was 54,880,316
> milliseconds ago. The last packet sent successfully to the server was
> 54,880,317 milliseconds ago. is longer than the server configured value of
> 'wait_timeout'. You should consider either expiring and/or testing
> connection validity before use in your application, increasing the server
> configured values for client timeouts, or using the Connector/J connection
> property 'autoReconnect=true' to avoid this problem.
>
> I have searched a lot on net and added the following properties on
> hibernate.cfg.xml, as people there were suggesting this,but of no use.
> <!-- Sessions and transactions -->
> <!-- Use the C3P0 connection pool provider -->
> <property name="hibernate.c3p0.min_size">5</property>
> <property name="hibernate.c3p0.max_size">20</property>
> <property name="hibernate.c3p0.timeout">300</property>
> <property name="hibernate.c3p0.max_statements">50</property>
> <property name="hibernate.c3p0.idle_test_period">3000</property>
> <property name="current_session_context_class">thread</property>
----- Original Message (edited) ----
Agreed, a better pooling system would be preferable. A Wiki entry on how to
couple Hibernate and Tomcat's JNDI pooling can be found here:
http://wiki.apache.org/tomcat/TomcatHibernate
If you add a validation query to your Resource definition, then you can recover
from stale connections. For MySQL, the validation query is:
validationQuery="SELECT 1"
So in the Wiki example (from above), the modified context.xml file would look
like:
<?xml version="1.0" encoding="UTF-8"?>
<Context antiJARLocking="true">
<Resource auth="Container"
driverClassName="com.mysql.jdbc.Driver"
maxActive="30"
maxIdle="10"
maxWait="10000"
name="jdbc/sakila"
password="*****"
username="*****"
url="jdbc:mysql://localhost/sakila"
type="javax.sql.DataSource"
validationQuery="SELECT 1"/>
</Context>
Apparently another way you can do this is with C3P0 properties - in particular
connection testing.
Documentation can be found on the web. See:
http://community.jboss.org/wiki/HowToconfiguretheC3P0connectionpool
http://www.mchange.com/projects/c3p0/index.html#appendix_a
for pointers. You can define a preferredTestQuery, but I am unsure if you have
to use HQL syntax or the validationQuery listed above.
Also according to the references, extra C3P0 properties need to be placed in a
separate c3p0.properties file that lives somewhere on the application's class
path. To make sure your property file ends up in WEB-INF/classes, you'll have to
figure out where to place it in MyEclipse.
I've not tried connection testing with C3P0, since I use the Tomcat-managed
connection pooling mechanism.
. . . . just my two cents.
/mde/
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: Exception in hibernate3 relating to timeout
Posted by Filip Hanik - Dev Lists <de...@hanik.com>.
Use a different connection pool that can properly handle your timeouts
when idle.
http://people.apache.org/~fhanik/jdbc-pool/
http://people.apache.org/~fhanik/jdbc-pool/jdbc-pool.html
Filip
On 02/24/2011 11:31 PM, abhishek jain wrote:
> hi,
> I am not sure if i am ringing the correct list, but i am sure people here
> must have encountered this problem. I am new to hibernate and when i ran the
> code on server it was fine , strangely next day it keep on giving this error
> till i restart tomcat.
>
> The last packet successfully received from the server was 54,880,316
> milliseconds ago. The last packet sent successfully to the server was
> 54,880,317 milliseconds ago. is longer than the server configured value of
> 'wait_timeout'. You should consider either expiring and/or testing
> connection validity before use in your application, increasing the server
> configured values for client timeouts, or using the Connector/J connection
> property 'autoReconnect=true' to avoid this problem.
>
> I have searched a lot on net and added the following properties on
> hibernate.cfg.xml, as people there were suggesting this,but of no use.
> <!-- Sessions and transactions -->
> <!-- Use the C3P0 connection pool provider -->
> <property name="hibernate.c3p0.min_size">5</property>
> <property name="hibernate.c3p0.max_size">20</property>
> <property name="hibernate.c3p0.timeout">300</property>
> <property name="hibernate.c3p0.max_statements">50</property>
> <property name="hibernate.c3p0.idle_test_period">3000</property>
> <property name="current_session_context_class">thread</property>
>
>
>
> Pl. help me.
> I have used hibernate3 with myeclipse as the development environment, and am
> using mysql 5.x and centos (Linux) with Tomcat 5.x
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org