2010-10-15 5 views
6

Todavía recibo tiempos de espera de JDBC después de intentar configurar c3p0 siguiendo todos los ejemplos que pude encontrar. Estoy usando JPA, Hibernate, Tomcat, MySQL [AWS RDS]. Aquí está el fragmento de persistence.xml:La agrupación de conexiones C3p0 para jpa en persistence.xml no funciona?

<property name="javax.persistence.jdbc.url" 
value="jdbc:mysql://url..." /> 
<property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver" /> 
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect" /> 
<property name="connection.provider_class" value="org.hibernate.connection.C3P0ConnectionProvider"/> 
<property name="hibernate.c3p0.acquire_increment" value="4" /> 
<property name="hibernate.c3p0.idle_test_period" value="3000" /> 
<property name="hibernate.c3p0.max_size" value="100" /> 
<property name="hibernate.c3p0.max_statements" value="15" /> 
<property name="hibernate.c3p0.min_size" value="5" /> 
<property name="hibernate.c3p0.timeout" value="100" /> 

Y el registro de errores:

09:18:51.776 WARN org.hibernate.util.JDBCExceptionReporter - SQL Error: 0, SQLState: 08S01 
09:18:51.777 ERROR org.hibernate.util.JDBCExceptionReporter - The last packet successfully received from the server was 38,491,585 milliseconds ago. ... 
+0

Mismo error para mí. Decidí comenzar una recompensa por esa pregunta. La respuesta de @Pascal Thivent no ayudó, no obtuve ningún registro sobre c3po (también está habilitado el inicio de sesión). – Snicolas

Respuesta

2

La configuración se ve bien. Active el registro y asegúrese de que C3P0 esté comenzando con la configuración adecuada.

 
2010-10-16 11:58:31,271 INFO [main] o.h.c.ConnectionProviderFactory [ConnectionProviderFactory.java:173] Initializing connection provider: org.hibernate.connection.C3P0ConnectionProvider 
... 
+0

El registro está activado (De hecho, uso embarcadero, un servidor web y registra todo). Obtuve el mismo archivo de persistencia, c3po y c3po para hibernación, ambos son mi classpath (web-inf/classes, y todo se implementa a través de maven). Pero no obtuve información de registro sobre c3po.Help, por favor – Snicolas

16

he encontrado la respuesta desde este blog: http://blog.hpxn.net/2009/02/05/using-c3p0-and-hibernate-3/

Propiedades en persistence.xml eran simplemente incorrecto, debe deletrearlas empezando por hibernación:

<persistence xmlns="http://java.sun.com/xml/ns/persistence" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/persistence   http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" 
    version="1.0"> 
    <persistence-unit name="mypersistenceunitname"> 
     <properties> 
     <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver" /> 
     <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect" /> 
     <property name="hibernate.hbm2ddl.auto" value="create-drop" /> 

     <!-- Important --> 
     <property name="hibernate.connection.provider_class" 
      value="org.hibernate.connection.C3P0ConnectionProvider" /> 

     <property name="hibernate.c3p0.max_size" value="100" /> 
     <property name="hibernate.c3p0.min_size" value="0" /> 
     <property name="hibernate.c3p0.acquire_increment" value="1" /> 
     <property name="hibernate.c3p0.idle_test_period" value="300" /> 
     <property name="hibernate.c3p0.max_statements" value="0" /> 
     <property name="hibernate.c3p0.timeout" value="100" /> 
     </properties> 
    </persistence-unit> 
</persistence> 

Y luego, se le ver este fabuloso registro aparecerá:

2011-08-15 08:58:33 com.mchange.v2.c3p0.C3P0Registry banner 
INFO: Initializing c3p0-0.9.1 [built 16-January-2007 14:46:42; debug? true; trace: 10] 
2011-08-15 08:58:33 com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource getPoolManager 
INFO: Initializing c3p0 pool... [email protected] [  connectionPoolDataSource -> [email protected]  .... 

Atentamente, Stéphane (perdón por la recompensa)

+0

puede ayudar https://stackoverflow.com/questions/47011116/the-last-packet-sent-successfully-to-the-server-was-70-400-003 -milisegundos-ag – Tony

Cuestiones relacionadas