Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/12/2011, 02:33
ElAthlit
 
Fecha de Ingreso: febrero-2011
Mensajes: 672
Antigüedad: 13 años, 2 meses
Puntos: 78
Problema POOL Hibernate MySQL

Buenas,
tengo el siguiente problema que no encuentro solución, leo en varios sitios lo que debería ser la configuración correcta, pero sigo con el mismo problema.

Aplicación: J2EE
Frameworks: Hibernate + Struts2
Base datos: MySQL


Problema con Hibernate:
Cuando clico en 10 links (o refresco la página 10 veces), la aplicación se me queda colgada no pudiéndose conectar a la base de datos. Pero no me da error.

En el fichero de configuración de Hibernate, uso las propidades del POOL C3P0 siguientes:

Código XML:
Ver original
  1. <property name="hibernate.max_fetch_depth">3</property>
  2. <property name="hibernate.connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</property>
  3. <property name="hibernate.c3p0.acquire_increment">2</property>
  4. <property name="hibernate.c3p0.idle_test_period">300</property>
  5. <property name="hibernate.c3p0.timeout">1800</property>
  6. <property name="hibernate.c3p0.max_size">10</property>
  7. <property name="hibernate.c3p0.min_size">3</property>
  8. <property name="hibernate.c3p0.max_statement">0</property>
  9. <property name="hibernate.c3p0.preferredTestQuery">select 1;</property>
  10. <property name="hibernate.c3p0.validate">true</property>

La propiedad hibernate.c3p0.max_size es la que hace que me tire el error, ya que si lo cambio a 5 por ejemplo, a la de 5 refrescos se me queda la página colgada.

Cada ve que hago una consulta (SELECT, INSERT,....) siempre cierro la sesión con close, con lo cual entiendo que esa sesión se queda cerrada a la espera de que el POOL la necesite para otra conexión. En mi caso, ésto no lo está haciendo.

¿Alguien sabe o le ha pasado algo parecido?

Muchas gracias a todos!

Un saludo.