难道是C3p0的问题

oracle 批量插入数据  采用c3p0数据源,有时操作成功,有时失败,失败时如下报错:

2010-07-22 15:37:14,031 INFO [com.brekeke.hiway.ticket.service.impl.TdayCollectReportServiceImpl] - <刷新车道库存时发现错误:
class org.springframework.jdbc.UncategorizedSQLException SqlMapClient operation; uncategorized SQLException for SQL []; SQL state [null]; error code [0]; An SQLException was provoked by the following failure: java.lang.ArrayIndexOutOfBoundsException: -32583; nested exception is java.sql.SQLException: An SQLException was provoked by the following failure: java.lang.ArrayIndexOutOfBoundsException: -32583
org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.translate(SQLStateSQLExceptionTranslator.java:124)
org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.translate(SQLErrorCodeSQLExceptionTranslator.java:322)
org.springframework.orm.ibatis.SqlMapClientTemplate.execute(SqlMapClientTemplate.java:212)
com.brekeke.hiway.ticket.dao.impl.CarlanestoreDAOImpl.insertCarlaneStoreBatch(CarlanestoreDAOImpl.java:67)
com.brekeke.hiway.ticket.service.impl.TdayCollectReportServiceImpl.generateCarlaneStore(TdayCollectReportServiceImpl.java:1791)
com.brekeke.hiway.ticket.action.DayCollectReportSearchAction.refreshCarlaneStore(DayCollectReportSearchAction.java:538)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:592)
com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:440)
com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:279)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:242)
com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:163)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:249)
org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)>

 

原c3p0配置:

<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
  <property name="driverClass" value="${jdbc.driverClassName}"/>
  <property name="jdbcUrl" value="${jdbc.url}"/>
  <property name="user" value="${jdbc.username}"/>
  <property name="password" value="${jdbc.password}"/>
  <property name="minPoolSize" value="10"/>
  <property name="maxPoolSize" value="50"/>
  <property name="maxStatements" value="50"/>
  <property name="maxIdleTime" value="28000"/>
  <property name="idleConnectionTestPeriod" value="100"/>
  <property name="acquireIncrement" value="10"/>
  <property name="acquireRetryAttempts" value="30"/>
  <property name="autoCommitOnClose" value="true"/>
  <property name="preferredTestQuery" value="select * from receipttype"/>
 </bean>

 

后面添加了两项,竟然没有问题了

  <property name="acquireRetryDelay" value="100"/>
  <property name="breakAfterAcquireFailure"  value="false"/>

 

不是很明白

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值