0

我有一个使用 Hibernate 3.4 和 c3p0 0.9.1 的应用程序。我面临数据库连接超时错误。

我的 Persistence.xml 文件是

        <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
        <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/>
        <property name="hibernate.connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</property>
        <property name="hibernate.connection.url" value="jdbc:mysql://XXX.XXX.XXX.XXX:XXXX/app?autoReconnect=true"/>
        <property name="hibernate.connection.username" value="XXXXX"/>
        <property name="hibernate.connection.password" value="XXXXX"/>
        <property name="hibernate.generate_statistics" value="true"/>
        <property name="hibernate.cache.provider_class" value="org.hibernate.cache.OSCacheProvider"/>
        <property name="hibernate.cache.use_second_level_cache" value="true"/>
        <property name="hibernate.show_sql" value="true"/>
        <property name="hibernate.format_sql" value="true"/>
        <property name="hibernate.c3p0.min_size" value="5"/>
        <property name="hibernate.c3p0.max_size" value="20"/>
        <property name="hibernate.c3p0.timeout" value="1800"/>
        <property name="hibernate.c3p0.max_statements" value="50"/>
        <property name="hibernate.c3p0.idle_test_period" value="300"/>
        <property name="c3p0.preferredTestQuery" value="select * from status"/>
        <property name="c3p0.testConnectionOnCheckout" value="true"/>
        <property name="c3p0.debugUnreturnedConnectionStackTraces" value="true"/>

当应用程序运行并保持空闲 40 - 48 小时时,我收到数据库连接超时错误。早些时候我遇到过这个问题并通过添加hibernate.c3p0.timeout, hibernate.c3p0.idle_test_period, c3p0.preferredTestQuery, c3p0.testConnectionOnCheckout, &来解决它c3p0.debugUnreturnedConnectionStackTraces。该应用程序运行良好。但现在错误又出现了。

当我查看出现错误的系统上的日志时。我注意到以下事情 1)我的初始连接池是 5。它正在增加。2)同样随着托管连接的增加,GlobalMaxOnlyStatementCache 也显示连接数随着未使用连接数的减少而增加。

我的问题是 - 如果一条语句被缓存,c3p0 是否会将连接释放回池,然后可以测试空闲条件并终止?

@Update

日志中打印以下异常:

07 Aug 2013 01:44:18 550134943 [http-8080-7] DEBUG com.mchange.v2.c3p0.impl.NewPooledConnection  - com.mchange.v2.c3p0.impl.NewPooledConnection@1516432 invalidated by Exception.
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: The last packet successfully received from the server was 149,249,259 milliseconds ago.  The last packet sent successfully to the server was 149,249,261 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.
at sun.reflect.GeneratedConstructorAccessor39.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1116)
at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3352)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1971)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2151)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2625)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2119)
at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:2281)
at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeQuery(NewProxyPreparedStatement.java:76)
at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:208)
at org.hibernate.loader.Loader.getResultSet(Loader.java:1812)
at org.hibernate.loader.Loader.doQuery(Loader.java:697)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:259)
at org.hibernate.loader.Loader.doList(Loader.java:2232)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2129)
at org.hibernate.loader.Loader.list(Loader.java:2124)
at org.hibernate.loader.custom.CustomLoader.list(CustomLoader.java:312)
at org.hibernate.impl.SessionImpl.listCustomQuery(SessionImpl.java:1723)
at org.hibernate.impl.AbstractSessionImpl.list(AbstractSessionImpl.java:165)
at org.hibernate.impl.SQLQueryImpl.list(SQLQueryImpl.java:175)
at org.hibernate.ejb.QueryImpl.getSingleResult(QueryImpl.java:88)
at zumigo.dal.LoginDataManager.authenticateUser(LoginDataManager.java:104)
at zumigo.dal.LoginDataManager.authenticateUser(LoginDataManager.java:117)
at zumigo.dal.LoginDataManager.authenticateUser(LoginDataManager.java:117)
at zumigo.dal.LoginDataManager.authenticateUser(LoginDataManager.java:117)
at zumigo.dal.LoginDataManager.authenticateUser(LoginDataManager.java:117)
at zumigo.dal.LoginDataManager.authenticateUser(LoginDataManager.java:117)
at zumigo.dal.LoginDataManager.authenticateUser(LoginDataManager.java:117)
at zumigo.dal.LoginDataManager.authenticateUser(LoginDataManager.java:117)
at zumigo.dal.LoginDataManager.authenticateUser(LoginDataManager.java:117)
at zumigo.dal.LoginDataManager.authenticateUser(LoginDataManager.java:117)
at zumigo.dal.LoginDataManager.authenticateUser(LoginDataManager.java:117)
at zumigo.dal.LoginDataManager.authenticateUser(LoginDataManager.java:117)
at zumigo.dal.LoginDataManager.authenticateUser(LoginDataManager.java:117)
at zumigo.dal.LoginDataManager.authenticateUser(LoginDataManager.java:117)
at zumigo.dal.LoginDataManager.authenticateUser(LoginDataManager.java:117)
at zumigo.businesslogic.LoginManager.login(LoginManager.java:46)
at zumigo.servlets.Authentication.processRequest(Authentication.java:124)
at zumigo.servlets.Authentication.doGet(Authentication.java:354)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:636)
Caused by: java.net.SocketException: Broken pipe
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:109)
at java.net.SocketOutputStream.write(SocketOutputStream.java:153)
at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3333)
... 50 more
07 Aug 2013 01:44:18 550134943 [http-8080-7] WARN  com.mchange.v2.c3p0.impl.NewPooledConnection  - [c3p0] A PooledConnection that has already signalled a Connection error is still in use!

Update 2

在启动tomcat时,我在日志中看到以下条目-从persistence.xml读取的值;

properties[
    hibernate.connection.password: neilsoft
    c3p0.testConnectionOnCheckout: true
    hibernate.c3p0.idle_test_period: 300
    hibernate.cache.use_second_level_cache: true
    hibernate.show_sql: true
    hibernate.c3p0.max_statements: 50
    hibernate.c3p0.timeout: 1800
    hibernate.generate_statistics: true
    hibernate.c3p0.min_size: 5
    hibernate.format_sql: true
    hibernate.connection.username: root
    c3p0.debugUnreturnedConnectionStackTraces: true
    hibernate.connection.driver_class: com.mysql.jdbc.Driver
    hibernate.cache.provider_class: org.hibernate.cache.OSCacheProvider
    c3p0.preferredTestQuery: select * from status
    hibernate.c3p0.max_size: 20
    hibernate.connection.provider_class: org.hibernate.connection.C3P0ConnectionProvider
    hibernate.dialect: org.hibernate.dialect.MySQLDialect
    hibernate.connection.url: jdbc:mysql://10.2.2.236:3306/lbs?autoReconnect=true
]]

而 c3p0 的初始值是:

07 Aug 2013 01:46:32 20206 [http-8080-1] INFO  org.hibernate.connection.ConnectionProviderFactory  - Initializing connection provider: org.hibernate.connection.C3P0ConnectionProvider
07 Aug 2013 01:46:32 20207 [http-8080-1] INFO  org.hibernate.connection.C3P0ConnectionProvider  - C3P0 using driver: com.mysql.jdbc.Driver at URL: jdbc:mysql://ec2-67-202-10-105.compute-1.amazonaws.com:3306/lbs?autoReconnect=true
07 Aug 2013 01:46:32 20207 [http-8080-1] INFO  org.hibernate.connection.C3P0ConnectionProvider  - Connection properties: {user=XXXX, password=****, autocommit=true, release_mode=auto}
07 Aug 2013 01:46:32 20207 [http-8080-1] INFO  org.hibernate.connection.C3P0ConnectionProvider  - autocommit mode: true
07 Aug 2013 01:46:32 20217 [http-8080-1] INFO  com.mchange.v2.log.MLog  - MLog clients using log4j logging.
07 Aug 2013 01:46:32 20434 [http-8080-1] INFO  com.mchange.v2.c3p0.C3P0Registry  - Initializing c3p0-0.9.1 [built 16-January-2007 14:46:42; debug? true; trace: 10]
07 Aug 2013 01:46:32 20470 [http-8080-1] DEBUG com.mchange.v2.c3p0.management.DynamicPooledDataSourceManagerMBean  - MBean: com.mchange.v2.c3p0:type=PooledDataSource[2zreza8wnzkcdpvnjkja|14c7a98] registered.
07 Aug 2013 01:46:32 20535 [http-8080-1] DEBUG com.mchange.v2.c3p0.management.DynamicPooledDataSourceManagerMBean  - MBean: com.mchange.v2.c3p0:type=PooledDataSource[2zreza8wnzkcdpvnjkja|14c7a98] unregistered, in order to be reregistered after update.
07 Aug 2013 01:46:32 20535 [http-8080-1] DEBUG com.mchange.v2.c3p0.management.DynamicPooledDataSourceManagerMBean  - MBean: com.mchange.v2.c3p0:type=PooledDataSource[2zreza8wnzkcdpvnjkja|14c7a98] registered.
07 Aug 2013 01:46:32 20665 [http-8080-1] INFO  com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource  - Initializing c3p0 pool... com.mchange.v2.c3p0.PoolBackedDataSource@b5006db1 [ connectionPoolDataSource -> com.mchange.v2.c3p0.WrapperConnectionPoolDataSource@6724e358 [ acquireIncrement -> 3, acquireRetryAttempts -> 30, acquireRetryDelay -> 1000, autoCommitOnClose -> false, automaticTestTable -> null, breakAfterAcquireFailure -> false, checkoutTimeout -> 0, connectionCustomizerClassName -> null, connectionTesterClassName -> com.mchange.v2.c3p0.impl.DefaultConnectionTester, **debugUnreturnedConnectionStackTraces -> true**, factoryClassLocation -> null, forceIgnoreUnresolvedTransactions -> false, identityToken -> 2zreza8wnzkcdpvnjkja|1c7d56b, **idleConnectionTestPeriod -> 300**, initialPoolSize -> 5, maxAdministrativeTaskTime -> 0, maxConnectionAge -> 0, m**axIdleTime -> 1800**, maxIdleTimeExcessConnections -> 0, **maxPoolSize -> 20, maxStatements -> 50**, maxStatementsPerConnection -> 0, **minPoolSize -> 5**, nestedDataSource -> com.mchange.v2.c3p0.DriverManagerDataSource@35a58726 [ description -> null, driverClass -> null, factoryClassLocation -> null, identityToken -> 2zreza8wnzkcdpvnjkja|71949b, jdbcUrl -> jdbc:mysql://XXX.XXX.XXX.XXX:XXXX/app?autoReconnect=true, properties -> {user=******, password=******, autocommit=true, release_mode=auto} ], **preferredTestQuery -> select * from status**, propertyCycle -> 0, testConnectionOnCheckin -> false, **testConnectionOnCheckout -> true**, unreturnedConnectionTimeout -> 0, usesTraditionalReflectiveProxies -> false; userOverrides: {} ], dataSourceName -> null, factoryClassLocation -> null, identityToken -> 2zreza8wnzkcdpvnjkja|14c7a98, numHelperThreads -> 3 ]
07 Aug 2013 01:46:32 20713 [http-8080-1] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - incremented pending_acquires: 1
07 Aug 2013 01:46:32 20713 [http-8080-1] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - incremented pending_acquires: 2
07 Aug 2013 01:46:32 20713 [http-8080-1] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - incremented pending_acquires: 3
07 Aug 2013 01:46:32 20713 [http-8080-1] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - incremented pending_acquires: 4
07 Aug 2013 01:46:32 20713 [http-8080-1] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - incremented pending_acquires: 5
07 Aug 2013 01:46:32 20738 [http-8080-1] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - **com.mchange.v2.resourcepool.BasicResourcePool@5e9f1 config: [start -> 5; min -> 5; max -> 20; inc -> 3; num_acq_attempts -> 30; acq_attempt_delay -> 1000; check_idle_resources_delay -> 300000; mox_resource_age -> 0; max_idle_time -> 1800000; excess_max_idle_time -> 0; destroy_unreturned_resc_time -> 0; expiration_enforcement_delay -> 450000; break_on_acquisition_failure -> false; debug_store_checkout_exceptions -> false]**
07 Aug 2013 01:46:32 20738 [http-8080-1] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - acquire test -- pool size: 0; target_pool_size: 5; desired target? 1
07 Aug 2013 01:46:32 20738 [http-8080-1] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - awaitAvailable(): [unknown]
07 Aug 2013 01:46:32 20738 [http-8080-1] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - trace com.mchange.v2.resourcepool.BasicResourcePool@5e9f1 [managed: 0, unused: 0, excluded: 0]
07 Aug 2013 01:46:32 20782 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2] DEBUG com.mchange.v2.c3p0.stmt.GooGooStatementCache  - checkinAll(): com.mchange.v2.c3p0.stmt.GlobalMaxOnlyStatementCache stats -- total size: 0; checked out: 0; num connections: 0; num keys: 0
07 Aug 2013 01:46:32 20782 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1] DEBUG com.mchange.v2.c3p0.stmt.GooGooStatementCache  - checkinAll(): com.mchange.v2.c3p0.stmt.GlobalMaxOnlyStatementCache stats -- total size: 0; checked out: 0; num connections: 0; num keys: 0
07 Aug 2013 01:46:32 20782 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1] DEBUG com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool  - com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager@320399.acquireResource() returning. 
07 Aug 2013 01:46:32 20783 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - trace com.mchange.v2.resourcepool.BasicResourcePool@5e9f1 [managed: 1, unused: 1, excluded: 0]
07 Aug 2013 01:46:32 20783 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - decremented pending_acquires: 4
07 Aug 2013 01:46:32 20784 [http-8080-1] DEBUG com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool  - Testing PooledConnection [com.mchange.v2.c3p0.impl.NewPooledConnection@1ed688f] on CHECKOUT.
07 Aug 2013 01:46:32 20783 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2] DEBUG com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool  - com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager@320399.acquireResource() returning. 
07 Aug 2013 01:46:32 20787 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - trace com.mchange.v2.resourcepool.BasicResourcePool@5e9f1 [managed: 2, unused: 1, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@1ed688f)
07 Aug 2013 01:46:32 20787 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - decremented pending_acquires: 3
07 Aug 2013 01:46:32 20789 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0] DEBUG com.mchange.v2.c3p0.stmt.GooGooStatementCache  - checkinAll(): com.mchange.v2.c3p0.stmt.GlobalMaxOnlyStatementCache stats -- total size: 0; checked out: 0; num connections: 0; num keys: 0
07 Aug 2013 01:46:32 20790 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0] DEBUG com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool  - com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager@320399.acquireResource() returning. 
07 Aug 2013 01:46:32 20790 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - trace com.mchange.v2.resourcepool.BasicResourcePool@5e9f1 [managed: 3, unused: 2, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@1ed688f)
07 Aug 2013 01:46:32 20790 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - decremented pending_acquires: 2
07 Aug 2013 01:46:33 20843 [http-8080-1] DEBUG com.mchange.v2.c3p0.stmt.GooGooStatementCache  - checkinAll(): com.mchange.v2.c3p0.stmt.GlobalMaxOnlyStatementCache stats -- total size: 0; checked out: 0; num connections: 0; num keys: 0
07 Aug 2013 01:46:33 20843 [http-8080-1] DEBUG com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool  - Test of PooledConnection [com.mchange.v2.c3p0.impl.NewPooledConnection@1ed688f] on CHECKOUT has SUCCEEDED.
07 Aug 2013 01:46:33 20843 [http-8080-1] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - trace com.mchange.v2.resourcepool.BasicResourcePool@5e9f1 [managed: 3, unused: 2, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@1ed688f)
07 Aug 2013 01:46:33 20848 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1] DEBUG com.mchange.v2.c3p0.stmt.GooGooStatementCache  - checkinAll(): com.mchange.v2.c3p0.stmt.GlobalMaxOnlyStatementCache stats -- total size: 0; checked out: 0; num connections: 0; num keys: 0
07 Aug 2013 01:46:33 20848 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1] DEBUG com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool  - com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager@320399.acquireResource() returning. 
07 Aug 2013 01:46:33 20848 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - trace com.mchange.v2.resourcepool.BasicResourcePool@5e9f1 [managed: 4, unused: 3, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@1ed688f)
07 Aug 2013 01:46:33 20848 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - decremented pending_acquires: 1
07 Aug 2013 01:46:33 20850 [http-8080-1] INFO  org.hibernate.cfg.SettingsFactory  - RDBMS: MySQL, version: 5.1.49-1ubuntu8
07 Aug 2013 01:46:33 20850 [http-8080-1] INFO  org.hibernate.cfg.SettingsFactory  - JDBC driver: MySQL-AB JDBC Driver, version: mysql-connector-java-5.1.16 ( Revision: ${bzr.revision-id} )
07 Aug 2013 01:46:33 20852 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2] DEBUG com.mchange.v2.c3p0.stmt.GooGooStatementCache  - checkinAll(): com.mchange.v2.c3p0.stmt.GlobalMaxOnlyStatementCache stats -- total size: 0; checked out: 0; num connections: 0; num keys: 0
07 Aug 2013 01:46:33 20852 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2] DEBUG com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool  - com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager@320399.acquireResource() returning. 
07 Aug 2013 01:46:33 20852 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - trace com.mchange.v2.resourcepool.BasicResourcePool@5e9f1 [managed: 5, unused: 4, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@1ed688f)
07 Aug 2013 01:46:33 20852 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - decremented pending_acquires: 0
07 Aug 2013 01:46:33 20915 [http-8080-1] INFO  org.hibernate.dialect.Dialect  - Using dialect: org.hibernate.dialect.MySQLDialect
07 Aug 2013 01:46:33 20917 [http-8080-1] DEBUG com.mchange.v2.c3p0.stmt.GooGooStatementCache  - checkinAll(): com.mchange.v2.c3p0.stmt.GlobalMaxOnlyStatementCache stats -- total size: 0; checked out: 0; num connections: 0; num keys: 0
07 Aug 2013 01:46:33 20918 [http-8080-1] DEBUG com.mchange.v2.resourcepool.BasicResourcePool  - trace com.mchange.v2.resourcepool.BasicResourcePool@5e9f1 [managed: 5, unused: 4, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@1ed688f)
07 Aug 2013 01:46:33 20918 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2] DEBUG com.mchange.v2.c3p0.stmt.GooGooStatementCache  - checkinAll(): com.mchange.v2.c3p0.stmt.GlobalMaxOnlyStatementCache stats -- total size: 0; checked out: 0; num connections: 0; num keys: 0
4

0 回答 0