【问题标题】:c3p0 Connection Software caused connection abort: recv failed errorc3p0 连接软件导致连接中止:recv failed 错误
【发布时间】:2013-08-24 19:47:14
【问题描述】:

我的连接属性如下所示

  • jdbc.url=jdbc:mysql://db_host:db_port/db_name
  • jdbc.driverClassName=db_driver_class_name
  • jdbc.username=db_user
  • jdbc.password=db_password
  • jdbc.hibernate.platform=hibernate_dialect
  • jdbc.initialPoolSize=25
  • jdbc.minPoolSize=25
  • jdbc.maxPoolSize=500
  • jdbc.checkoutTimeout=1000
  • jdbc.acquireRetryDelay=1000
  • jdbc.acquireRetryAttempts=30
  • jdbc.acquireIncrement=50
  • jdbc.breakAfterAcquireFailure=true
  • jdbc.debugUnreturnedConnectionStackTraces=true

    偶尔会出现以下错误

    原因:java.sql.SQLException:Io异常:软件导致连接中止:recv失败 在 oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:74) 在 oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:131) 在 oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:197) 在 oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:261) 在 oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:566) 在 oracle.jdbc.driver.T4CPreparedStatement.executeForDescribe(T4CPreparedStatement.java:802) 在 oracle.jdbc.driver.T4CPreparedStatement.executeMaybeDescribe(T4CPreparedStatement.java:866) 在 oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1186) 在 oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3387) 在 oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3431) 在 oracle.jdbc.driver.OraclePreparedStatementWrapper.executeQuery(OraclePreparedStatementWrapper.java:1203) 在 com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeQuery(NewProxyPreparedStatement.java:76) 在 org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:186) 在 org.hibernate.loader.Loader.getResultSet(Loader.java:1787) 在 org.hibernate.loader.Loader.doQuery(Loader.java:674) 在 org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236) 在 org.hibernate.loader.Loader.loadEntity(Loader.java:1860)

    之后就可以正常使用了。

【问题讨论】:

    标签: jpa jta c3p0


    【解决方案1】:

    这不太可能与连接池有很大关系。这是网络/JDBC 驱动程序问题。特别是,您可能想要查找 Oracle 错误 9373409 -- 请参阅 https://forums.oracle.com/message/9176463#9176463 https://forums.oracle.com/message/10332437#10332437 如果这是您的问题,您可能想要升级您的 Oracle 安装,错误 9373409 应该已经修复为“补丁集” 11.2.0.3,见http://www.eygle.com/Notes/11203_buglist.htm

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-02-05
      • 2012-02-20
      • 1970-01-01
      • 2019-07-28
      • 2011-02-03
      • 2012-04-15
      • 2010-09-13
      • 1970-01-01
      相关资源
      最近更新 更多