The transaction is no longer active - status: 'Marked rollback. ?

oneoneone 2008-09-02 01:38:08
2008-09-02 12:51:58,625 INFO HibernateAbstractService[doInHibernate]:242 - Batch insert 5002008-9-2 12:51:52
2008-09-02 12:52:05,250 INFO HibernateAbstractService[doInHibernate]:242 - Batch insert 10002008-9-2 12:51:58
java.sql.SQLException: The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.TimedOutException: Transaction timed out after 30 seconds
Xid=BEA1-00548BA4566B7F28EDB9(23877886),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=30,seconds left=30,activeThread=Thread[ExecuteThread: '13' for queue: 'weblogic.kernel.Default',5,Thread Group for Queue: 'weblogic.kernel.Default'],XAServerResourceInfo[weblogic.jdbc.wrapper.JTSXAResourceImpl]=(ServerResourceInfo[weblogic.jdbc.wrapper.JTSXAResourceImpl]=(state=started,assigned=none),xar=weblogic.jdbc.wrapper.JTSXAResourceImpl@469fea),SCInfo[mydomain+myserver]=(state=active),properties=({weblogic.jdbc=t3://172.18.32.41:7001}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=myserver+172.18.32.41:7001+mydomain+t3+, XAResources={},NonXAResources={})],CoordinatorURL=myserver+172.18.32.41:7001+mydomain+t3+)]'. No further JDBC access is allowed within this transaction.
at weblogic.jdbc.wrapper.JTSConnection.checkIfRolledBack(JTSConnection.java:118)
at weblogic.jdbc.wrapper.JTSConnection.checkConnection(JTSConnection.java:127)
at weblogic.jdbc.wrapper.Statement.checkStatement(Statement.java:222)
at weblogic.jdbc.wrapper.Statement.preInvocationHandler(Statement.java:71)
at weblogic.jdbc.wrapper.Statement_oracle_jdbc_driver_OracleStatement.addBatch(Unknown Source)
at com.dawnpro.core.service.HibernateAbstractService$2.doInHibernate(HibernateAbstractService.java:236)
at org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:370)
at org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:337)
at com.dawnpro.core.service.HibernateAbstractService.excuteBatch(HibernateAbstractService.java:219)
at com.dawnpro.cvbom.service.impl.SallistTempServiceImpl.queryexcuteBatchSallissttemp(SallistTempServiceImpl.java:51)
at com.dawnpro.cvbom.model.SallistTempModel.readExel(SallistTempModel.java:250)
at com.dawnpro.cvbom.model.SallistTempModel.queryoperateDesignFile(SallistTempModel.java:126)
at com.dawnpro.cvbom.model.SallistTempModel.queryUploadFile(SallistTempModel.java:87)
at com.dawnpro.cvbom.model.SallistTempModel$$FastClassByCGLIB$$5537881.invoke(<generated>)
at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:696)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:631)
at com.dawnpro.cvbom.model.SallistTempModel$$EnhancerByCGLIB$$baaea18.queryUploadFile(<generated>)
at com.dawnpro.cvbom.web.action.SallistTempAction.UploadFile(SallistTempAction.java:70)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.springframework.util.MethodInvoker.invoke(MethodInvoker.java:283)
at com.dawnpro.core.web.action.CCVCommand.callCommand(CCVCommand.java:505)
at com.dawnpro.core.web.action.CCVCommand.Exec(CCVCommand.java:426)
at com.dawnpro.core.web.servlet.IProxy.doPost(IProxy.java:65)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:971)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:402)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
at org.springframework.web.multipart.support.MultipartFilter.doFilterInternal(MultipartFilter.java:112)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6356)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3635)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2585)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
com.dawnpro.core.service.GenericServiceException: The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.TimedOutException: Transaction timed out after 30 seconds
Xid=BEA1-00548BA4566B7F28EDB9(23877886),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=30,seconds left=30,activeThread=Thread[ExecuteThread: '13' for queue: 'weblogic.kernel.Default',5,Thread Group for Queue: 'weblogic.kernel.Default'],XAServerResourceInfo[weblogic.jdbc.wrapper.JTSXAResourceImpl]=(ServerResourceInfo[weblogic.jdbc.wrapper.JTSXAResourceImpl]=(state=started,assigned=none),xar=weblogic.jdbc.wrapper.JTSXAResourceImpl@469fea),SCInfo[mydomain+myserver]=(state=active),properties=({weblogic.jdbc=t3://172.18.32.41:7001}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=myserver+172.18.32.41:7001+mydomain+t3+, XAResources={},NonXAResources={})],CoordinatorURL=myserver+172.18.32.41:7001+mydomain+t3+)]'. No further JDBC access is allowed within this transaction.

...全文
913 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
oneoneone 2008-09-02
  • 打赏
  • 举报
回复
//代码
public int[] excuteBatch(final List sqls) {
return (int[] )getHibernateTemplate().execute(new HibernateCallback() {
public Object doInHibernate(Session session)
throws HibernateException {
Connection conn = session.connection();
Statement stmt = null;
int[] rets=null;
try{
stmt = conn.createStatement();
stmt.clearBatch();
int i = 1;
int len = sqls.size();
conn.setAutoCommit(false);
Iterator it = sqls.iterator();
Date date;
while (it.hasNext())
{
String sql = (String) it.next();
stmt.addBatch(sql);

if(i%500 == 0 || i == len){
date = new Date(System.currentTimeMillis());
rets = stmt.executeBatch();
//conn.commit();
m_Log.info("Batch insert " + i
+ date.toLocaleString());
}

i++;
}


} catch (SQLException e) {
e.printStackTrace();
// try {
// conn.rollback();
// } catch (SQLException e1) {
// e.printStackTrace();
// }
throw new GenericServiceException(e.getMessage());
} finally
{
sqls.clear();
try
{
stmt.close();
}
catch (SQLException e)
{
e.printStackTrace();
}
}
return rets;
}

});
}

5,657

社区成员

发帖
与我相关
我的任务
社区描述
Web开发应用服务器相关讨论专区
社区管理员
  • 应用服务器社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧