Transaction timing out
I have a problem with transaction timing out and I know how to increase the time out interval but I would just like to learn as to what exactly is going on and how I can fix the problem without increasing the timeout.
class RequestProcessor {
public void do() {
// very long process
doSomeWhereLongProcess()
// retrieve another session bean
persistence = (IPersistence) ctx.lookup( IPersistence.JNDI_NAME );
persistence.insert()
doSomeProcess();
public class PersistenceFacade implements IPersistence {
@PersistenceContext
private EntityManager em;
// calls an entityManager to retrieve
public void retrieve()
RequestProcessor is a session bean that is being called remotely. In ejb-jar.xml transaction type is set to Bean.
It calls another session bean called PeristenceFacade that contains entity manager to insert entity beans. The transaction type in PersistenceFace
is set to Container.
While still executing a doSomeWhereLongProcess I get notification in log that transaction timed out and when it tries to called PersistenceFacade
I get an exception. Why would it start a transaction even before I looked up a PersistenceFacade?
I tried setting transaction type to Bean in PersistenceFacade but it is complaining that EntityManager must have a transaction.
What is the proper way of handling this type of scenario? Is is simply increasing the timeout or can I handle this differently?
Thanks
Yes, it's perfectly legal to define a bean with bean-managed transaction management that doesn't actually start a transaction. In that case, the question is where the transaction is getting started. Even for beans with container-managed transactions, @PostContruct for a session bean is never a transactional method, so it seems odd that a new transaction would be started there unless some piece of application code is starting it.
You might want to post to a JBoss forum to get more info. You can try running your application on the Java EE SDK or using the verifier in the Java EE SDK to see if it detects any issues.
--ken
Similar Messages
-
The transaction is no longer active - Transaction timed out after 30 second
We have an intermittent error here, and I'm a rookie. The error results in a 500 being sent to the customer every 10th-20th POST and only occurs under heavy load. The heavy loading is over the for the day, but it'll be back.
My first suspicion was the app code doing transaction work and having database performance problems. But the app is non-transactional and the database is fine. The server farm nodes (4) are all experiencing the problems at equal rates, and the other apps on the farm are fine, so it appears to be app-specific rather than rooted in server state or database state.
I looked at the stack a little more closely and it appears to be some kind of internal persistence issue, but a completely foreign one to me. We have no Persistent Stores configured, so I don't know where to even start on this puppy.
EJB Exception occurred during invocation from home: weblogic.ejb.container.internal.StatelessEJBLocalHomeImpl@d1e1f4 threw exception: <1.0.0 nonfatal general error> org.apache.openjpa.persistence.PersistenceException: The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.TimedOutException: Transaction timed out after 30 seconds
BEA1-32AE928C966AC66F424D]'. No further JDBC access is allowed within this transaction.
<1.0.0 nonfatal general error> org.apache.openjpa.persistence.PersistenceException: The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.TimedOutException: Transaction timed out after 30 seconds
BEA1-32AE928C966AC66F424D]'. No further JDBC access is allowed within this transaction.
at org.apache.openjpa.jdbc.sql.DBDictionary.newStoreException(DBDictionary.java:3784)
at org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:97)
at org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:83)
at org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:59)
at org.apache.openjpa.jdbc.kernel.SelectResultObjectProvider.handleCheckedException(SelectResultObjectProvider.java:155)
at org.apache.openjpa.lib.rop.EagerResultList.<init>(EagerResultList.java:40)
at org.apache.openjpa.kernel.QueryImpl.toResult(QueryImpl.java:1219)
at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:987)
at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:839)
at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:770)
at kodo.kernel.KodoQuery.execute(KodoQuery.java:47)
at org.apache.openjpa.kernel.DelegatingQuery.execute(DelegatingQuery.java:525)
at org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java:229)
at org.apache.openjpa.persistence.QueryImpl.getResultList(QueryImpl.java:269)
at kodo.persistence.KodoQueryImpl.getResultList(KodoQueryImpl.java:213)
at kodo.persistence.KodoQueryImpl.getResultList(KodoQueryImpl.java:213)
at com.company.buapp.buslogic.helpers.ApproveApplicationHelper.createNewTransactionsExcludingApplication(ApproveApplicationHelper.java:167)
at com.company.buapp.buslogic.helpers.ApproveApplicationHelper.createNewTransactions(ApproveApplicationHelper.java:129)
at com.company.buapp.buslogic.helpers.ApproveApplicationHelper.stageAction(ApproveApplicationHelper.java:74)
at com.company.buapp.buslogic.session.ApproveApplicationSessionBean.performAction(ApproveApplicationSessionBean.java:348)
at sun.reflect.GeneratedMethodAccessor2150.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:126)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:114)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
at weblogic.ejb.container.injection.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:68)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:126)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:114)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)
at $Proxy365.performAction(Unknown Source)
at com.company.buapp.buslogic.session.ApproveApplicationSessionBean_gc4fhc_ApproveApplicationSessionLocalImpl.performAction(ApproveApplicationSessionBean_gc4fhc_ApproveApplicationSessionLocalImpl.java:148)
at com.company.buapp.si.ApplicationWS.performAction(ApplicationWS.java:114)
at sun.reflect.GeneratedMethodAccessor2149.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at weblogic.wsee.jaxws.WLSInvoker.invoke(WLSInvoker.java:50)
at weblogic.wsee.jaxws.WLSInvoker.invoke(WLSInvoker.java:42)
at com.sun.xml.ws.server.sei.EndpointMethodHandler.invoke(EndpointMethodHandler.java:247)
at com.sun.xml.ws.server.sei.SEIInvokerPipe.process(SEIInvokerPipe.java:97)
at weblogic.wsee.jaxws.MonitoringPipe.process(MonitoringPipe.java:98)
at com.sun.xml.ws.protocol.soap.ServerMUPipe.process(ServerMUPipe.java:62)
at com.sun.xml.ws.server.WSEndpointImpl$1.process(WSEndpointImpl.java:139)
at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:153)
at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:235)
at com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle(ServletAdapter.java:97)
at weblogic.wsee.jaxws.HttpServletAdapter.post(HttpServletAdapter.java:36)
at weblogic.wsee.jaxws.JAXWSServlet.doPost(JAXWSServlet.java:218)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:226)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:124)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:283)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3395)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(Unknown Source)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2140)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2046)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1366)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:200)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:172)
java.sql.SQLException: The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.TimedOutException: Transaction timed out after 30 seconds
BEA1-32AE928C966AC66F424D]'. No further JDBC access is allowed within this transaction.
at weblogic.jdbc.wrapper.JTSConnection.checkIfRolledBack(JTSConnection.java:178)
at weblogic.jdbc.wrapper.JTSConnection.checkConnection(JTSConnection.java:188)
at weblogic.jdbc.wrapper.ResultSet.preInvocationHandler(ResultSet.java:57)
at weblogic.jdbc.wrapper.ResultSet_oracle_jdbc_driver_OracleResultSetImpl.next(Unknown Source)
at org.apache.openjpa.lib.jdbc.DelegatingResultSet.next(DelegatingResultSet.java:106)
at org.apache.openjpa.jdbc.sql.ResultSetResult.nextInternal(ResultSetResult.java:210)
at org.apache.openjpa.jdbc.sql.SelectImpl$SelectResult.nextInternal(SelectImpl.java:2209)
at org.apache.openjpa.jdbc.sql.AbstractResult.next(AbstractResult.java:168)
at org.apache.openjpa.jdbc.kernel.SelectResultObjectProvider.next(SelectResultObjectProvider.java:99)
at org.apache.openjpa.lib.rop.EagerResultList.<init>(EagerResultList.java:35)
at org.apache.openjpa.kernel.QueryImpl.toResult(QueryImpl.java:1219)
at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:987)
at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:839)
at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:770)
at kodo.kernel.KodoQuery.execute(KodoQuery.java:47)
at org.apache.openjpa.kernel.DelegatingQuery.execute(DelegatingQuery.java:525)
at org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java:229)
at org.apache.openjpa.persistence.QueryImpl.getResultList(QueryImpl.java:269)
at kodo.persistence.KodoQueryImpl.getResultList(KodoQueryImpl.java:213)
at kodo.persistence.KodoQueryImpl.getResultList(KodoQueryImpl.java:213)
at com.company.buapp.buslogic.helpers.ApproveApplicationHelper.createNewTransactionsExcludingApplication(ApproveApplicationHelper.java:167)
at com.company.buapp.buslogic.helpers.ApproveApplicationHelper.createNewTransactions(ApproveApplicationHelper.java:129)
at com.company.buapp.buslogic.helpers.ApproveApplicationHelper.stageAction(ApproveApplicationHelper.java:74)
at com.company.buapp.buslogic.session.ApproveApplicationSessionBean.performAction(ApproveApplicationSessionBean.java:348)
at sun.reflect.GeneratedMethodAccessor2150.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:126)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:114)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
at weblogic.ejb.container.injection.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:68)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:126)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:114)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)
at $Proxy365.performAction(Unknown Source)
at com.company.buapp.buslogic.session.ApproveApplicationSessionBean_gc4fhc_ApproveApplicationSessionLocalImpl.performAction(ApproveApplicationSessionBean_gc4fhc_ApproveApplicationSessionLocalImpl.java:148)
at com.company.buapp.si.ApplicationWS.performAction(ApplicationWS.java:114)
at sun.reflect.GeneratedMethodAccessor2149.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at weblogic.wsee.jaxws.WLSInvoker.invoke(WLSInvoker.java:50)
at weblogic.wsee.jaxws.WLSInvoker.invoke(WLSInvoker.java:42)
at com.sun.xml.ws.server.sei.EndpointMethodHandler.invoke(EndpointMethodHandler.java:247)
at com.sun.xml.ws.server.sei.SEIInvokerPipe.process(SEIInvokerPipe.java:97)
at weblogic.wsee.jaxws.MonitoringPipe.process(MonitoringPipe.java:98)
at com.sun.xml.ws.protocol.soap.ServerMUPipe.process(ServerMUPipe.java:62)
at com.sun.xml.ws.server.WSEndpointImpl$1.process(WSEndpointImpl.java:139)
at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:153)
at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:235)
at com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle(ServletAdapter.java:97)
at weblogic.wsee.jaxws.HttpServletAdapter.post(HttpServletAdapter.java:36)
at weblogic.wsee.jaxws.JAXWSServlet.doPost(JAXWSServlet.java:218)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:226)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:124)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:283)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3395)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(Unknown Source)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2140)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2046)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1366)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:200)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:172)This was actually my first conclusion as well. But when I went to the Data Source for this connection, I found it's a non-transactional driver. That's what made me go back and give the trace a second look. I don't see any references to the Data Source in question. It's OpenJPA stuff and Session persistence stuff.Non-XA drivers can still participate in an XA transaction via a variety of JDBC data source options - for example, labeled "1PC" and "LLR" on the console. (If you want to understand the particulars search for "JTS" or "LLR" in the JDBC edocs).
You seem to be suggesting maybe the setting can be made in a config doc, possibly of the app itself, right? Right. EJBs have a transaction-timeout attribute.
As opposed to setting it in the console. WebLogic has a domain wide default transaction-timeout setting that can be set on the console, but I tend not to recommend using it. In addition, there's something called a "deployment plan" which can be used to override some of the common EJB attributes via configuration, but I'm not personally familiar with its usage.
But isn't the setting vapor if we're using a nonXA driver?No.
I wonder if this thing couldn't be telling me it's waiting on the persistence subsystem to come available to store simple session data? Sometimes the problem is that there are periodic app requests that are more complex/larger than others. Sometimes the system is simply overloaded, and takes 30 seconds to honor a request that might normally take 10 seconds.
That other app is all about persistence. What if app2 is sucking some persistence subsystem dry and app 1 is waiting just to store session data? Could be.
If the nonXA thing really does kill the quick timeout workaround, how could I health-check the persistence subsystem?Don't know. At a wild guess I'd check for CPU's at 100% on all involved serves, and examine database stats. -
Transaction timed out with oracle 9i
Hi,
I am working with weblogic6.1.
Sometimes (very seldom) I have a problem which I don't undserstand.
The transaction stops and and after some time I get TimedOutException.
This time it happend in the findByPrimaryKey of a CMP Entity bean.
I have this problem only with Oracle 9i. with oracle8i everything works
fine.
I'm using oracle thin driver (I put oracle12.zip at the begin of weblogic
classpath)
Is this problem of oracle?
Does WLS 6.1 support Oracle9i?
Thanks for any hints
Szymon
stack trace:
javax.ejb.FinderException: Problem in findByPrimaryKey while preparing or
execut
ing statement: 'weblogic.jdbc.rmi.SerialPreparedStatement@197155':
java.sql.SQLException: The transaction is no longer active (status = Marked
roll
back. [Reason=weblogic.transaction.internal.TimedOutException: Transaction
timed
out after 561 seconds
Xid=21550:aea95ccd7f28edb9(4655671),Status=Active,numRepliesOwedMe=0,numRepl
iesO
wedOthers=0,seconds since begin=561,seconds
left=30,activeThread=Thread[ExecuteT
hread: '14' for queue: 'default',5,Thread Group for Queue:
'default'],ServerReso
urceInfo[weblogic.jdbc.jts.Connection]=(state=started,assigned=none),SCInfo[
mydo
main+myserver]=(state=active),properties=({weblogic.jdbc=t3://172.16.0.28:70
01})
,OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorUR
L=my
server+172.16.0.28:7001+mydomain+,
Resources={})],CoordinatorURL=myserver+172.16
.0.28:7001+mydomain+)]). No further JDBC access is allowed within this
transact
ion.
java.sql.SQLException: The transaction is no longer active (status = Marked
roll
back. [Reason=weblogic.transaction.internal.TimedOutException: Transaction
timed
out after 561 seconds
Xid=21550:aea95ccd7f28edb9(4655671),Status=Active,numRepliesOwedMe=0,numRepl
iesO
wedOthers=0,seconds since begin=561,seconds
left=30,activeThread=Thread[ExecuteT
hread: '14' for queue: 'default',5,Thread Group for Queue:
'default'],ServerReso
urceInfo[weblogic.jdbc.jts.Connection]=(state=started,assigned=none),SCInfo[
mydo
main+myserver]=(state=active),properties=({weblogic.jdbc=t3://172.16.0.28:70
01})
,OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorUR
L=my
server+172.16.0.28:7001+mydomain+,
Resources={})],CoordinatorURL=myserver+172.16
.0.28:7001+mydomain+)]). No further JDBC access is allowed within this
transact
ion.
at
weblogic.jdbc.jts.Connection.checkIfRolledBack(Connection.java:498)
at weblogic.jdbc.jts.Statement.setInt(Statement.java:606)
at
weblogic.jdbc.rmi.internal.PreparedStatementImpl.setInt(PreparedState
mentImpl.java:104)
at
weblogic.jdbc.rmi.SerialPreparedStatement.setInt(SerialPreparedStatem
ent.java:137)
at
com.verdisoft.datasource.ejb.contact.Person_vjvtzf__WebLogic_CMP_RDBM
S.ejbFindByPrimaryKey(Person_vjvtzf__WebLogic_CMP_RDBMS.java:1531)
at java.lang.reflect.Method.invoke(Native Method)
at
weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.findByPrimaryKey(RDB
MSPersistenceManager.java:171)
at
weblogic.ejb20.manager.BaseEntityManager.findByPrimaryKey(BaseEntityM
anager.java:435)
at
weblogic.ejb20.manager.BaseEntityManager.localFindByPrimaryKey(BaseEn
tityManager.java:389)
at
weblogic.ejb20.internal.EntityEJBLocalHome.findByPrimaryKey(EntityEJB
LocalHome.java:266)
at
com.verdisoft.datasource.ejb.contact.PersonBean_vjvtzf_LocalHomeImpl.
findByPrimaryKey(PersonBean_vjvtzf_LocalHomeImpl.java:144)
at
com.verdisoft.datasource.ejb.contact.PersonBean.ejbHomeGetByKey(Perso
nBean.java:504)
at
com.verdisoft.datasource.ejb.contact.PersonBean_vjvtzf_LocalHomeImpl.
getByKey(PersonBean_vjvtzf_LocalHomeImpl.java:297)
at
com.verdisoft.datasource.ejb.EJBAdapterBean.getBeanAdapter(EJBAdapter
Bean.java:872)
at
com.verdisoft.datasource.ejb.EJBAdapterBean.updateItemInternal(EJBAda
pterBean.java:834)
at
com.verdisoft.datasource.ejb.EJBAdapterBean.updateItem(EJBAdapterBean
.java:808)
at
com.verdisoft.datasource.ejb.EJBAdapterBean_s83q9a_EOImpl.updateItem(
EJBAdapterBean_s83q9a_EOImpl.java:146)
at
com.verdisoft.datasource.DataAdapterManagerBean.updateItem(DataAdapte
rManagerBean.java:144)
at
com.verdisoft.datasource.DataAdapterManagerBean_plajw8_EOImpl.updateI
tem(DataAdapterManagerBean_plajw8_EOImpl.java:614)
at
com.verdisoft.datasource.DataAdapterManagerBean_plajw8_EOImpl_WLSkel.
invoke(Unknown Source)
at
weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:282)
at
weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerR
ef.java:97)
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
a:231)
at
weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
.java:21)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:144)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:129)
at
com.verdisoft.datasource.ejb.contact.Person_vjvtzf__WebLogic_CMP_RDBM
S.ejbFindByPrimaryKey(Person_vjvtzf__WebLogic_CMP_RDBMS.java:1715)
at java.lang.reflect.Method.invoke(Native Method)
at
weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.findByPrimaryKey(RDB
MSPersistenceManager.java:171)
at
weblogic.ejb20.manager.BaseEntityManager.findByPrimaryKey(BaseEntityM
anager.java:435)
at
weblogic.ejb20.manager.BaseEntityManager.localFindByPrimaryKey(BaseEn
tityManager.java:389)
at
weblogic.ejb20.internal.EntityEJBLocalHome.findByPrimaryKey(EntityEJB
LocalHome.java:266)
at
com.verdisoft.datasource.ejb.contact.PersonBean_vjvtzf_LocalHomeImpl.
findByPrimaryKey(PersonBean_vjvtzf_LocalHomeImpl.java:144)
at
com.verdisoft.datasource.ejb.contact.PersonBean.ejbHomeGetByKey(Perso
nBean.java:504)
at
com.verdisoft.datasource.ejb.contact.PersonBean_vjvtzf_LocalHomeImpl.
getByKey(PersonBean_vjvtzf_LocalHomeImpl.java:297)
at
com.verdisoft.datasource.ejb.EJBAdapterBean.getBeanAdapter(EJBAdapter
Bean.java:872)
at
com.verdisoft.datasource.ejb.EJBAdapterBean.updateItemInternal(EJBAda
pterBean.java:834)
at
com.verdisoft.datasource.ejb.EJBAdapterBean.updateItem(EJBAdapterBean
.java:808)
at
com.verdisoft.datasource.ejb.EJBAdapterBean_s83q9a_EOImpl.updateItem(
EJBAdapterBean_s83q9a_EOImpl.java:146)
at
com.verdisoft.datasource.DataAdapterManagerBean.updateItem(DataAdapte
rManagerBean.java:144)
at
com.verdisoft.datasource.DataAdapterManagerBean_plajw8_EOImpl.updateI
tem(DataAdapterManagerBean_plajw8_EOImpl.java:614)
at
com.verdisoft.datasource.DataAdapterManagerBean_plajw8_EOImpl_WLSkel.
invoke(Unknown Source)
at
weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:282)
at
weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerR
ef.java:97)
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
a:231)
at
weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
.java:21)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:144)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:129)
com.verdisoft.datasource.exception.DataNotFoundException: Object not found:
data
source://private_addressbook/ejbcontact/john1025100151518/12770
at
com.verdisoft.datasource.ejb.EJBAdapterBean.getBeanAdapter(EJBAdapter
Bean.java:876)
at
com.verdisoft.datasource.ejb.EJBAdapterBean.updateItemInternal(EJBAda
pterBean.java:834)
at
com.verdisoft.datasource.ejb.EJBAdapterBean.updateItem(EJBAdapterBean
.java:808)
at
com.verdisoft.datasource.ejb.EJBAdapterBean_s83q9a_EOImpl.updateItem(
EJBAdapterBean_s83q9a_EOImpl.java:146)
at
com.verdisoft.datasource.DataAdapterManagerBean.updateItem(DataAdapte
rManagerBean.java:144)
at
com.verdisoft.datasource.DataAdapterManagerBean_plajw8_EOImpl.updateI
tem(DataAdapterManagerBean_plajw8_EOImpl.java:614)
at
com.verdisoft.datasource.DataAdapterManagerBean_plajw8_EOImpl_WLSkel.
invoke(Unknown Source)Irene Ho wrote:
Dear all,
When the java application program tries to insert the data (around 300
records). Sometimes, the error occurs as "EJB Exception:
weblogic.transaction.internal.TimedOutException: Transaction timed out after
95 seconds".
When the error occurred, only one java application was running. Furthermore,
I set the JTA-->Timeout Seconds to 30 in the thr the Weblogic console. The
configuration of the server is WebLogic 7.0 with SP2 and Oracle 8.1.7.
Anyone know what happen and how to resolve the problem? The error is due to
the entity bean, Weblogic or Oracle?
Thanks a lot.
IreneOr configuration. You can set your timeout to a different value. It is likely
to be an oracle problem. We don't do anything unnecessary to delay your application
code. You may be able to check the jdbc log or jta log to see when the tx starts and
how long it takes to progress. If you note a delay, you could take a server
thread dump to see what weblogic is doing. Typically it will be waiting for
Oracle to respond from a jdbc call.
Joe -
Update operation transaction timing out
Hello,
I have a large data structure that needs to be updated atomically (i.e. within a transaction). I am calling the logical service via a web service map, so I presume the transaction starts when the logical service is invoked. It is receiving a transaction timeout on the server, which I suspect is set to 30 seconds at the WebLogic level by our middleware team. (See stack trace below).
The update operation SDO XML is at least 2MB.
1. Is there any way to override this transaction timeout at the service or data space level?
2. Is there any more efficient way to do this update? Sending a big wad of xml is inefficient, and I am not aware of another format supported by ODSI web services. I cannot use mediator API straight from my client to ODSI.
3. If I have to break up my save operation into chunks, is there any way to effectively achieve transactional update via multiple web service calls?
Any advice would be much appreciated.
Thanks,
Jeff
weblogic.xml.query.exceptions.XQuerySystemException: {bea-err}SYS003: Unexpected exception
at weblogic.xml.query.transaction.TransactionHelper.commit(TransactionHelper.java:96)
at weblogic.xml.query.transaction.TransactionManager.teardownOnSuccess(TransactionManager.java:178)
at com.bea.ld.EJBRequestHandler.handleProcessingComplete(EJBRequestHandler.java:1020)
at com.bea.ld.EJBRequestHandler.handlePusher(EJBRequestHandler.java:979)
at com.bea.ld.EJBRequestHandler.invokeOperation(EJBRequestHandler.java:323)
at com.bea.ld.ServerWrapperBean.invoke(ServerWrapperBean.java:153)
at com.bea.ld.ServerWrapperBean.invokeOperation(ServerWrapperBean.java:80)
at com.bea.ld.ServerWrapper_s9smk0_ELOImpl.invokeOperation(ServerWrapper_s9smk0_ELOImpl.java:141)
at com.bea.dsp.ws.RoutingHandler$PriviledgedRunner.run(RoutingHandler.java:96)
at com.bea.dsp.ws.RoutingHandler.handleResponse(RoutingHandler.java:217)
at weblogic.wsee.handler.HandlerIterator.handleResponse(HandlerIterator.java:287)
at weblogic.wsee.handler.HandlerIterator.handleResponse(HandlerIterator.java:271)
at weblogic.wsee.ws.dispatch.server.ServerDispatcher.dispatch(ServerDispatcher.java:176)
at weblogic.wsee.ws.WsSkel.invoke(WsSkel.java:80)
at weblogic.wsee.server.servlet.SoapProcessor.handlePost(SoapProcessor.java:66)
at weblogic.wsee.server.servlet.SoapProcessor.process(SoapProcessor.java:44)
at weblogic.wsee.server.servlet.BaseWSServlet$AuthorizedInvoke.run(BaseWSServlet.java:285)
at weblogic.wsee.server.servlet.BaseWSServlet.service(BaseWSServlet.java:169)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3498)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(Unknown Source)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2180)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
Caused by: weblogic.transaction.RollbackException: Transaction timed out after 33 seconds
BEA1-460E808DE23C779E385F
at weblogic.transaction.internal.TransactionImpl.throwRollbackException(TransactionImpl.java:1818)
at weblogic.transaction.internal.TransactionImpl.checkIfCommitPossible(TransactionImpl.java:1708)
at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:255)
at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:230)
at weblogic.xml.query.transaction.TransactionHelper.commit(TransactionHelper.java:94)
... 30 more
Caused by: weblogic.transaction.internal.TimedOutException: Transaction timed out after 33 seconds
BEA1-460E808DE23C779E385F
at weblogic.transaction.internal.ServerTransactionImpl.wakeUp(ServerTransactionImpl.java:1734)
at weblogic.transaction.internal.ServerTransactionManagerImpl.processTimedOutTransactions(ServerTransactionManagerImpl.java:1607)
at weblogic.transaction.internal.TransactionManagerImpl.wakeUp(TransactionManagerImpl.java:1879)
at weblogic.transaction.internal.ServerTransactionManagerImpl.wakeUp(ServerTransactionManagerImpl.java:1517)
at weblogic.transaction.internal.WLSTimer.timerExpired(WLSTimer.java:35)
at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:273)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:516)
... 2 more1. Is there any way to override this transaction timeout at the service or data space level?
You can set trans-timeout-seconds in the weblogic-ejb-jar.xml for your dataspace. You'll find it in <dataspaceName>dspejb.jar in <domain>/dsp/dataSpaces/<dataspaceName>request_handlers.ear. I've include a complete weblogic-ejb-jar.xml (at the end of the post) so you can see where to add it. Just copy-paste the <transaction-descriptor>...</>
the request handlers ear is created when the dataspace is deployed the first time and during a full-deploy (i.e. you don't have to go back and edit it after incremental deploys)
2a. Is there any more efficient way to do this update?
If you described it in painful detail, we might be able to think of something. You might find mutators helpful - http://download.oracle.com/docs/cd/E13167_01/aldsp/docs32/dsp32wiki/Mutators%20for%20Updates.html
3. If I have to break up my save operation into chunks, is there any way to effectively achieve transactional update via multiple web service calls?
You could write/host your own webservice on the ODSI server which would call ODSI via the java api. Your ws would expose operations to the following calls from your client
contextId = myWsStartUserTransaction()
while( moreChunks)
myWsUpdate(contextId, chunk)
myWSEndUserTransaction(contextId)
Just a heads-up, WLS has an anti-denial-of-service attack setting that rejects input messages over a certain size. I believe the default is 10MB. You can set it in the WLS console.
- Mike
<?xml version="1.0"?>
<!DOCTYPE weblogic-ejb-jar PUBLIC
'-//BEA Systems, Inc.//DTD WebLogic 8.1.0 EJB//EN'
'http://www.bea.com/servers/wls810/dtd/weblogic-ejb-jar.dtd'>
<weblogic-ejb-jar>
<weblogic-enterprise-bean>
<ejb-name>Server</ejb-name>
<stateless-session-descriptor>
<stateless-clustering>
<stateless-bean-is-clusterable>true</stateless-bean-is-clusterable>
<stateless-bean-load-algorithm>round-robin</stateless-bean-load-algorithm>
<!-- random | round-robin | weight-based -->
<!--
<stateless-bean-call-router-class-name>beanRouter</stateless-bean-call-router-
class-name> -->
<stateless-bean-methods-are-idempotent>true</stateless-bean-methods-are-idempo
tent>
</stateless-clustering>
</stateless-session-descriptor>
<enable-call-by-reference>true</enable-call-by-reference>
<jndi-name>com.bea.ld.apps.dataservicesapp.server</jndi-name>
<local-jndi-name>com.bea.ld.apps.dataservicesapp.localserver</local-jndi-name>
<transaction-descriptor>
<trans-timeout-seconds>300</trans-timeout-seconds>
</transaction-descriptor>
</weblogic-enterprise-bean>
<weblogic-enterprise-bean>
<ejb-name>ServerTxRequired</ejb-name>
<stateless-session-descriptor>
<stateless-clustering>
<stateless-bean-is-clusterable>true</stateless-bean-is-clusterable>
<stateless-bean-load-algorithm>round-robin</stateless-bean-load-algorithm>
<!-- random | round-robin | weight-based -->
<!--
<stateless-bean-call-router-class-name>beanRouter</stateless-bean-call-router-
class-name> -->
<stateless-bean-methods-are-idempotent>true</stateless-bean-methods-are-idempo
tent>
</stateless-clustering>
</stateless-session-descriptor>
<enable-call-by-reference>true</enable-call-by-reference>
<jndi-name>com.bea.ld.apps.dataservicesapp.serverTxRequired</jndi-name>
<local-jndi-name>com.bea.ld.apps.dataservicesapp.localserverTxRequired</local-
jndi-name>
<transaction-descriptor>
<trans-timeout-seconds>300</trans-timeout-seconds>
</transaction-descriptor>
</weblogic-enterprise-bean>
<weblogic-enterprise-bean>
<ejb-name>Metadata</ejb-name>
<stateless-session-descriptor>
<stateless-clustering>
<stateless-bean-is-clusterable>true</stateless-bean-is-clusterable>
<stateless-bean-load-algorithm>round-robin</stateless-bean-load-algorithm>
<!-- random | round-robin | weight-based -->
<!--
<stateless-bean-call-router-class-name>beanRouter</stateless-bean-call-router-
class-name> -->
<stateless-bean-methods-are-idempotent>true</stateless-bean-methods-are-idempo
tent>
</stateless-clustering>
</stateless-session-descriptor>
<enable-call-by-reference>true</enable-call-by-reference>
<jndi-name>com.bea.ld.apps.dataservicesapp.metadata</jndi-name>
<transaction-descriptor>
<trans-timeout-seconds>300</trans-timeout-seconds>
</transaction-descriptor>
</weblogic-enterprise-bean>
</weblogic-ejb-jar> -
Cannot remove stateful session bean when transaction timed out
The transaction timeout is set to 5 minutes. After several operations on the transactional
stateful session bean(implements SessionSynchronization), the transaction timed out
after 5 minutes and I got the IllegalStateException when calling another business
method. After the transaction rolled back, weblogic.ejb20.locks.LockTimedOutException
was thrown when attempting to remove the bean. It seems the lock on the bean was
not released even though the transaction had been rolled back. Does anyone know how
to remove the bean in this kind of situation?
Here is the stacktrace:
####<Jun 11, 2002 2:39:35 PM PDT> <Notice> <EJB> <app1x.zaplet.cc> <server25044server>
<ExecuteThread: '11' for queue: 'default'> <> <23168:7b09681c532dc7e3> <010015> <Error
marking transaction for rollback: java.lang.IllegalStateException: Cannot mark the
transaction for rollback. xid=23168:7b09681c532dc7e3, status=Rolled back. [Reason=weblogic.transaction.internal.TimedOutException:
Transaction timed out after 299 seconds
Xid=23168:7b09681c532dc7e3(3203140),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds
since begin=299,seconds left=60,activeThread=Thread[ExecuteThread: '11' for queue:
'default',5,Thread Group for Queue: 'default'],ServerResourceInfo[weblogic.jdbc.jts.Connection]=(state=ended,assigned=none),SCInfo[server25044+server25044server]=(state=active),properties=({weblogic.jdbc=t3://10.0.100.93:7001}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=server25044server+10.0.100.93:7001+server25044+,
Resources={})],CoordinatorURL=server25044server+10.0.100.93:7001+server25044+)]>
java.lang.IllegalStateException: Cannot mark the transaction for rollback. xid=23168:7b09681c532dc7e3,
status=Rolled back. [Reason=weblogic.transaction.internal.TimedOutException: Transaction
timed out after 299 seconds
Xid=23168:7b09681c532dc7e3(3203140),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds
since begin=299,seconds left=60,activeThread=Thread[ExecuteThread: '11' for queue:
'default',5,Thread Group for Queue: 'default'],ServerResourceInfo[weblogic.jdbc.jts.Connection]=(state=ended,assigned=none),SCInfo[server25044+server25044server]=(state=active),properties=({weblogic.jdbc=t3://10.0.100.93:7001}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=server25044server+10.0.100.93:7001+server25044+,
Resources={})],CoordinatorURL=server25044server+10.0.100.93:7001+server25044+)]
at weblogic.transaction.internal.TransactionImpl.throwIllegalStateException(TransactionImpl.java:1486)
at weblogic.transaction.internal.TransactionImpl.setRollbackOnly(TransactionImpl.java:466)
at weblogic.ejb20.manager.BaseEJBManager.handleSystemException(BaseEJBManager.java:255)
at weblogic.ejb20.manager.BaseEJBManager.setupTxListener(BaseEJBManager.java:215)
at weblogic.ejb20.manager.StatefulSessionManager.preInvoke(StatefulSessionManager.java:371)
at weblogic.ejb20.internal.BaseEJBObject.preInvoke(BaseEJBObject.java:117)
at weblogic.ejb20.internal.StatefulEJBObject.preInvoke(StatefulEJBObject.java:169)
at mypackage.MyBean_wbr3eg_EOImpl.addRecipients(MyBean_wbr3eg_EOImpl.java:450)
####<Jun 11, 2002 2:39:37 PM PDT> <Info> <EJB> <app1x.zaplet.cc> <server25044server>
<ExecuteThread: '11' for queue: 'default'> <> <> <010049> <EJB Exception in method:
remove: weblogic.ejb20.locks.LockTimedOutException: The lock request from EJB:AppmailBean
with primary key:21,775,960,933,010,237 timed-out after waiting 0 ms. The transaction
or thread requesting the lock was:Thread[ExecuteThread: '11' for queue: 'default',5,Thread
Group for Queue: 'default'].>
weblogic.ejb20.locks.LockTimedOutException: The lock request from EJB:AppmailBean
with primary key:21,775,960,933,010,237 timed-out after waiting 0 ms. The transaction
or thread requesting the lock was:Thread[ExecuteThread: '11' for queue: 'default',5,Thread
Group for Queue: 'default'].
at weblogic.ejb20.locks.ExclusiveLockManager$LockBucket.lock(ExclusiveLockManager.java:448)
at weblogic.ejb20.locks.ExclusiveLockManager.lock(ExclusiveLockManager.java:258)
at weblogic.ejb20.manager.StatefulSessionManager.acquireLock(StatefulSessionManager.java:226)
at weblogic.ejb20.manager.StatefulSessionManager.acquireLock(StatefulSessionManager.java:216)
at weblogic.ejb20.manager.StatefulSessionManager.preInvoke(StatefulSessionManager.java:310)
at weblogic.ejb20.manager.StatefulSessionManager.remove(StatefulSessionManager.java:754)
at weblogic.ejb20.internal.StatefulEJBObject.remove(StatefulEJBObject.java:86)
at mypackage.MyBean_wbr3eg_EOImpl.remove(MyBean_wbr3eg_EOImpl.java:7308)If a stateful session throws a RuntimeException (your rollback) the container destroys the instance of the bean and all
associated state information is lost, as required by the EJB specification.
If you want to maintain client state it is generally best to use HttpSession objects (if you have a web application)
for short-lived, client-specific data and JPA entities or other database backed storage for long-lived data. -
When the java program tries to insert the data (around 300 records), the error occurs as "EJB Exception: weblogic.transaction.internal.TimedOutException: Transaction timed out after 95 seconds"
Anyone know what happen and how to resolve the problem?
Furthermore, any method to record such an error into the Oracle log?
Thanks a lot.Judging from the exception, it would appear that this is something that WebLogic is taking upon itself to throw. I'm assuming that somewhere in your WebLogic configuration, you have configured a timeout of 95 seconds. If that's the case, you would need to modify your WebLogic configuration to increase that timeout.
Oracle has no limit on the amount of time a transaction can be open, so this error has to be caused by the application server. As such, I don't see any way to get this sort of error into any of the Oracle logs (I assume we're talking about trace files and alert logs on the Oracle server here). If your code caught this error, you could insert the error into an error log table in the Oracle database.
Justin
Distributed Database Consulting, Inc.
http://www.ddbcinc.com/askDDBC -
Transaction timed out after 29seconds
hi,
I am using 2pc with XA, for MQ and Sybase
I am getting following exception.
[Reason = weblogic.transaction.internal.TimedOutException: Transaction timed out
after 29seconds
can somebody help me on this ?
TIA
Chidambar
default value of transaction timeout is 30 secs.
Your tx may be running more than the default tx timeout.
Either increase your tx timeout or re-consider your
design.
Kumar
chidambar wrote:
> hi,
> I am using 2pc with XA, for MQ and Sybase
> I am getting following exception.
> ................................................................
>
> [Reason = weblogic.transaction.internal.TimedOutException: Transaction timed out
> after 29seconds
>
> ................................................................
> can somebody help me on this ?
> TIA
> Chidambar
-
Weblogic.transaction.RollbackException: Transaction timed out after 32 seconds
following is the scenario.
EJB1{
method1{
createTransaction();
connectToDiffrentWebloic();
updateTransaction();following is the scenario.
EJB1{
method1{
createTransaction();
connectToDiffrentWebloic();
updateTransaction(); -
Java.sql.SQLException: Statement cancelled, probably by transaction timing
Hi all,
I have a problem with transaction handling over 2 applications. I have 2 EAR files (*A.ear* and B.ear) which are deployed on a WLS 12.1. The WLS contains a XA datasource which is connected to a Oracle XE database. Both applications are using the same datasource. The datasource is configured to use the driver oracle.jdbc.xa.client.OracleXADataSource.
EAR A contains a Remote EJB which is is calling a local EJB. The local EJB calls a Remote EJB from EAR B.
Here is an example how the code looks like:
@Remote
@Stateless(mappedName = "AnyRemote", name = "AnyRemote")
public class AnyRemoteBean implements AnyRemote {
@EJB
private AnyLocal anyLocal;
@Override
public void doIt() {
anyLocal.doSomething();
@Local
@Stateless(mappedName = "AnyLocal", name = "AnyLocal")
public class AnyLocalBean implements AnyLocal {
@PersistenceContext(unitName = "A")
private EntityManager entityManager;
@EJB(mappedName = "AnyCompositeService")
private AnyCompositeService anyCompositeService;
@Override
@TransactionAttribute(TransactionAttributeType.REQUIRES_NEW)
public boolean doSomething() {
try {
// do some stuff and save to database within another local EJB
anyCompositeService.doSomethingOnEAR_B();
return true;
} catch (final AnyException e) {
LOGGER.error("doSomething failed", e);
return false;
@Override
@TransactionAttribute(TransactionAttributeType.REQUIRES_NEW)
public boolean stayOnEar_A() {
// do some stuff and save to database within another local EJB
return true;
}AnyCompositeService located in EAR B looks like this:
@Remote
@Stateless(mappedName = "AnyCompositeService ", name = "AnyCompositeService ")
public class AnyCompositeServiceBean implements AnyCompositeService {
@Override
public boolean doSomethingOnEAR_B() throws AnyException {
// do some calls to some local EJBs and some other remote EJBs and save something to database
return true;
}In this process of EAR B I'm using the entitiy manager:
@PersistenceContext(unitName = "B")
private EntityManager entityManager;persistence.xml for EAR A looks like this
<persistence-unit name="A" transaction-type="JTA">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<jta-data-source>MyDatasource</jta-data-source>
<!-- some entities -->
<properties>
<property name="hibernate.transaction.jta.platform"
value="org.hibernate.service.jta.platform.internal.WeblogicJtaPlatform" />
<property name="hibernate.max_fetch_depth" value="3" />
<property name="hibernate.connection.characterEncoding" value="UTF-8" />
<property name="hibernate.connection.charSet" value="UTF-8" />
<property name="hibernate.connection.useUnicode" value="true" />
<property name="hibernate.default_batch_fetch_size" value="20" />
</properties>
</persistence-unit>
</persistence>persistence.xml for EAR B looks like this
<persistence-unit name="B" transaction-type="JTA">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<jta-data-source>MyDatasource</jta-data-source>
<!-- some entities -->
<properties>
<property name="hibernate.transaction.jta.platform"
value="org.hibernate.service.jta.platform.internal.WeblogicJtaPlatform" />
<property name="hibernate.max_fetch_depth" value="3" />
<property name="hibernate.connection.characterEncoding" value="UTF-8" />
<property name="hibernate.connection.charSet" value="UTF-8" />
<property name="hibernate.connection.useUnicode" value="true" />
<property name="hibernate.default_batch_fetch_size" value="20" />
</properties>
</persistence-unit>
</persistence>As you can see the method doSomething() defines the transaction attribute TransactionAttributeType.REQUIRES_NEW.
When I execute AnyRemote.doIt() I get the following exception:
Caused By: java.sql.SQLException: Statement cancelled, probably by transaction timing out
at weblogic.jdbc.wrapper.Statement.postInvocationHandler(Statement.java:69)
at weblogic.jdbc.wrapper.PreparedStatement_oracle_jdbc_driver_OraclePreparedStatementWrapper.clearBatch(Unknown Source)
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:597)
at org.hibernate.engine.jdbc.internal.proxy.AbstractStatementProxyHandler.continueInvocation(AbstractStatementProxyHandler.java:122)
at org.hibernate.engine.jdbc.internal.proxy.AbstractProxyHandler.invoke(AbstractProxyHandler.java:81)
at $Proxy452.clearBatch(Unknown Source)
at org.hibernate.engine.jdbc.batch.internal.AbstractBatchImpl.releaseStatements(AbstractBatchImpl.java:163)
at org.hibernate.engine.jdbc.batch.internal.AbstractBatchImpl.release(AbstractBatchImpl.java:197)
at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.close(JdbcCoordinatorImpl.java:139)
at org.hibernate.engine.transaction.internal.TransactionCoordinatorImpl.close(TransactionCoordinatorImpl.java:276)
at org.hibernate.internal.SessionImpl.close(SessionImpl.java:349)
at org.hibernate.ejb.EntityManagerImpl.close(EntityManagerImpl.java:137)
at weblogic.persistence.TransactionalEntityManagerProxyImpl.close(TransactionalEntityManagerProxyImpl.java:117)
at weblogic.persistence.BasePersistenceContextProxyImpl$PersistenceContextCloser.afterCompletion(BasePersistenceContextProxyImpl.java:213)
at weblogic.transaction.internal.ServerSCInfo.doAfterCompletion(ServerSCInfo.java:1068)
at weblogic.transaction.internal.ServerSCInfo.callAfterCompletions(ServerSCInfo.java:1012)
at weblogic.transaction.internal.ServerTransactionImpl.callAfterCompletions(ServerTransactionImpl.java:3074)
at weblogic.transaction.internal.ServerTransactionImpl.afterRolledBackStateHousekeeping(ServerTransactionImpl.java:2954)
at weblogic.transaction.internal.ServerTransactionImpl.setRolledBack(ServerTransactionImpl.java:2930)
at weblogic.transaction.internal.ServerTransactionImpl.globalRetryRollback(ServerTransactionImpl.java:3172)
at weblogic.transaction.internal.ServerTransactionImpl.globalRollback(ServerTransactionImpl.java:2920)
at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:374)
at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:268)
at weblogic.ejb.container.internal.BaseLocalObject.postInvoke1(BaseLocalObject.java:332)
at weblogic.ejb.container.internal.BaseLocalObject.__WL_postInvokeTxRetry(BaseLocalObject.java:202)
at weblogic.ejb.container.internal.SessionLocalMethodInvoker.invoke(SessionLocalMethodInvoker.java:44)As long as the process only calls EJBs from EAR A only there is no issue. But if the process calls the method doSomethingOnEAR_B() on EAR B the call fails with above exception. If the process throws AnyException the rollback takes place as expected for transaction in EAR B and EAR A.
Does anybody know what is the issue here? Is there any configuration I have overseen?That is a WLS internal message. The statement did get cancelled,
probably as a part of the process of rolling back the transaction it
was involved in. If you don't find your core problem, open an
Oracle support SR, and we could help debug this further. -
Transaction time out for a simple query
I have a table with 39 million records in the table. When I try to fetch data from teh table with one single where clause. it is raising Transaction timed Out.
What is the best way to fetch full data with out Time Out.
Can we use the first_rows hint to fetch data batch by batch ?
Thanks,
CDWhat is the exact error code? I.e. the ORA-nnnn error code.
It is not possible to diagnose a problem if the actual problem is not known. Responders are guessing at what the problem is and offering solutions.. and these could be very far of the mark. -
WebLogic Server 6.1 Transaction Time out Transaction
Hi all,
I got the following time out exception when executing a session bean. However, the exception does not happen every time when being executed.
Original Exception Stack Trace:
javax.transaction.TransactionRolledbackException: EJB Exception: : javax.transaction.TransactionRolledbackException: EJB Exception: : weblogic.transaction.internal.TimedOutException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+)
at weblogic.transaction.internal.ServerTransactionImpl.wakeUp(ServerTransactionImpl.java:1139)
at weblogic.transaction.internal.ServerTransactionManagerImpl.processTimedOutTransactions(ServerTransactionManagerImpl.java:500)
at weblogic.transaction.internal.TransactionManagerImpl.wakeUp(TransactionManagerImpl.java:1629)
at weblogic.transaction.internal.ServerTransactionManagerImpl.wakeUp(ServerTransactionManagerImpl.java:463)
at weblogic.transaction.internal.TransactionManagerImpl$1.run(TransactionManagerImpl.java:1595)
at java.lang.Thread.run(Thread.java:484)
--------------- nested within: ------------------
weblogic.transaction.RollbackException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+) - with nested exception:
[weblogic.transaction.internal.TimedOutException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+)]
at weblogic.transaction.internal.TransactionImpl.throwRollbackException(TransactionImpl.java:1526)
at weblogic.transaction.internal.ServerTransactionImpl.registerSynchronization(ServerTransactionImpl.java:450)
at weblogic.ejb20.internal.TxManager.registerSynchronization(TxManager.java:158)
at weblogic.ejb20.manager.BaseEJBManager.setupTxListener(BaseEJBManager.java:218)
at weblogic.ejb20.manager.StatelessManager.preInvoke(StatelessManager.java:155)
at weblogic.ejb20.internal.BaseEJBObject.preInvoke(BaseEJBObject.java:124)
at weblogic.ejb20.internal.StatelessEJBObject.preInvoke(StatelessEJBObject.java:63)
at com.finessealliance.clarity.cts.bfs.TxLogServicesBean_xlsia_EOImpl.execute(TxLogServicesBean_xlsia_EOImpl.java:25)
at com.finessealliance.clarity.cts.tpf.BOEvent.execute(Unknown Source)
at com.finessealliance.clarity.cts.tpf.TransactionRule.execute(Unknown Source)
at com.finessealliance.clarity.cts.tpf.TransactionRuleBean.execute(Unknown Source)
at com.finessealliance.clarity.cts.tpf.TransactionRuleBean_fptf06_EOImpl.execute(TransactionRuleBean_fptf06_EOImpl.java:37)
at com.finessealliance.clarity.cts.tpf.TransactionRuleBean_fptf06_EOImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:360)
at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:329)
at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:178)
at weblogic.rmi.internal.ServerRequest.sendOneWayRaw(ServerRequest.java:92)
at weblogic.rmi.internal.ServerRequest.sendReceive(ServerRequest.java:112)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:268)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:235)
at weblogic.rmi.internal.ProxyStub.invoke(ProxyStub.java:35)
at $Proxy80.execute(Unknown Source)
at com.finessealliance.clarity.cts.bos.BOServerThread.executeTransactionRule(Unknown Source)
at com.finessealliance.clarity.cts.bos.BOServerThread.processMessage(Unknown Source)
at com.finessealliance.clarity.cts.bos.BOServerThread.run(Unknown Source)
; nested exception is:
weblogic.transaction.RollbackException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+) - with nested exception:
[weblogic.transaction.internal.TimedOutException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+)]
weblogic.transaction.internal.TimedOutException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+)
at weblogic.transaction.internal.ServerTransactionImpl.wakeUp(ServerTransactionImpl.java:1139)
at weblogic.transaction.internal.ServerTransactionManagerImpl.processTimedOutTransactions(ServerTransactionManagerImpl.java:500)
at weblogic.transaction.internal.TransactionManagerImpl.wakeUp(TransactionManagerImpl.java:1629)
at weblogic.transaction.internal.ServerTransactionManagerImpl.wakeUp(ServerTransactionManagerImpl.java:463)
at weblogic.transaction.internal.TransactionManagerImpl$1.run(TransactionManagerImpl.java:1595)
at java.lang.Thread.run(Thread.java:484)
--------------- nested within: ------------------
weblogic.transaction.RollbackException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+) - with nested exception:
[weblogic.transaction.internal.TimedOutException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+)]
at weblogic.transaction.internal.TransactionImpl.throwRollbackException(TransactionImpl.java:1526)
at weblogic.transaction.internal.ServerTransactionImpl.registerSynchronization(ServerTransactionImpl.java:450)
at weblogic.ejb20.internal.TxManager.registerSynchronization(TxManager.java:158)
at weblogic.ejb20.manager.BaseEJBManager.setupTxListener(BaseEJBManager.java:218)
at weblogic.ejb20.manager.StatelessManager.preInvoke(StatelessManager.java:155)
at weblogic.ejb20.internal.BaseEJBObject.preInvoke(BaseEJBObject.java:124)
at weblogic.ejb20.internal.StatelessEJBObject.preInvoke(StatelessEJBObject.java:63)
at com.finessealliance.clarity.cts.bfs.TxLogServicesBean_xlsia_EOImpl.execute(TxLogServicesBean_xlsia_EOImpl.java:25)
at com.finessealliance.clarity.cts.tpf.BOEvent.execute(Unknown Source)
at com.finessealliance.clarity.cts.tpf.TransactionRule.execute(Unknown Source)
at com.finessealliance.clarity.cts.tpf.TransactionRuleBean.execute(Unknown Source)
at com.finessealliance.clarity.cts.tpf.TransactionRuleBean_fptf06_EOImpl.execute(TransactionRuleBean_fptf06_EOImpl.java:37)
at com.finessealliance.clarity.cts.tpf.TransactionRuleBean_fptf06_EOImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:360)
at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:329)
at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:178)
at weblogic.rmi.internal.ServerRequest.sendOneWayRaw(ServerRequest.java:92)
at weblogic.rmi.internal.ServerRequest.sendReceive(ServerRequest.java:112)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:268)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:235)
at weblogic.rmi.internal.ProxyStub.invoke(ProxyStub.java:35)
at $Proxy80.execute(Unknown Source)
at com.finessealliance.clarity.cts.bos.BOServerThread.executeTransactionRule(Unknown Source)
at com.finessealliance.clarity.cts.bos.BOServerThread.processMessage(Unknown Source)
at com.finessealliance.clarity.cts.bos.BOServerThread.run(Unknown Source)
; nested exception is:
javax.transaction.TransactionRolledbackException: EJB Exception: : weblogic.transaction.internal.TimedOutException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+)
at weblogic.transaction.internal.ServerTransactionImpl.wakeUp(ServerTransactionImpl.java:1139)
at weblogic.transaction.internal.ServerTransactionManagerImpl.processTimedOutTransactions(ServerTransactionManagerImpl.java:500)
at weblogic.transaction.internal.TransactionManagerImpl.wakeUp(TransactionManagerImpl.java:1629)
at weblogic.transaction.internal.ServerTransactionManagerImpl.wakeUp(ServerTransactionManagerImpl.java:463)
at weblogic.transaction.internal.TransactionManagerImpl$1.run(TransactionManagerImpl.java:1595)
at java.lang.Thread.run(Thread.java:484)
--------------- nested within: ------------------
weblogic.transaction.RollbackException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+) - with nested exception:
[weblogic.transaction.internal.TimedOutException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+)]
at weblogic.transaction.internal.TransactionImpl.throwRollbackException(TransactionImpl.java:1526)
at weblogic.transaction.internal.ServerTransactionImpl.registerSynchronization(ServerTransactionImpl.java:450)
at weblogic.ejb20.internal.TxManager.registerSynchronization(TxManager.java:158)
at weblogic.ejb20.manager.BaseEJBManager.setupTxListener(BaseEJBManager.java:218)
at weblogic.ejb20.manager.StatelessManager.preInvoke(StatelessManager.java:155)
at weblogic.ejb20.internal.BaseEJBObject.preInvoke(BaseEJBObject.java:124)
at weblogic.ejb20.internal.StatelessEJBObject.preInvoke(StatelessEJBObject.java:63)
at com.finessealliance.clarity.cts.bfs.TxLogServicesBean_xlsia_EOImpl.execute(TxLogServicesBean_xlsia_EOImpl.java:25)
at com.finessealliance.clarity.cts.tpf.BOEvent.execute(Unknown Source)
at com.finessealliance.clarity.cts.tpf.TransactionRule.execute(Unknown Source)
at com.finessealliance.clarity.cts.tpf.TransactionRuleBean.execute(Unknown Source)
at com.finessealliance.clarity.cts.tpf.TransactionRuleBean_fptf06_EOImpl.execute(TransactionRuleBean_fptf06_EOImpl.java:37)
at com.finessealliance.clarity.cts.tpf.TransactionRuleBean_fptf06_EOImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:360)
at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:329)
at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:178)
at weblogic.rmi.internal.ServerRequest.sendOneWayRaw(ServerRequest.java:92)
at weblogic.rmi.internal.ServerRequest.sendReceive(ServerRequest.java:112)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:268)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:235)
at weblogic.rmi.internal.ProxyStub.invoke(ProxyStub.java:35)
at $Proxy80.execute(Unknown Source)
at com.finessealliance.clarity.cts.bos.BOServerThread.executeTransactionRule(Unknown Source)
at com.finessealliance.clarity.cts.bos.BOServerThread.processMessage(Unknown Source)
at com.finessealliance.clarity.cts.bos.BOServerThread.run(Unknown Source)
; nested exception is:
weblogic.transaction.RollbackException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+) - with nested exception:
[weblogic.transaction.internal.TimedOutException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+)]
javax.transaction.TransactionRolledbackException: EJB Exception: : weblogic.transaction.internal.TimedOutException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+)
at weblogic.transaction.internal.ServerTransactionImpl.wakeUp(ServerTransactionImpl.java:1139)
at weblogic.transaction.internal.ServerTransactionManagerImpl.processTimedOutTransactions(ServerTransactionManagerImpl.java:500)
at weblogic.transaction.internal.TransactionManagerImpl.wakeUp(TransactionManagerImpl.java:1629)
at weblogic.transaction.internal.ServerTransactionManagerImpl.wakeUp(ServerTransactionManagerImpl.java:463)
at weblogic.transaction.internal.TransactionManagerImpl$1.run(TransactionManagerImpl.java:1595)
at java.lang.Thread.run(Thread.java:484)
--------------- nested within: ------------------
weblogic.transaction.RollbackException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+) - with nested exception:
[weblogic.transaction.internal.TimedOutException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+)]
at weblogic.transaction.internal.TransactionImpl.throwRollbackException(TransactionImpl.java:1526)
at weblogic.transaction.internal.ServerTransactionImpl.registerSynchronization(ServerTransactionImpl.java:450)
at weblogic.ejb20.internal.TxManager.registerSynchronization(TxManager.java:158)
at weblogic.ejb20.manager.BaseEJBManager.setupTxListener(BaseEJBManager.java:218)
at weblogic.ejb20.manager.StatelessManager.preInvoke(StatelessManager.java:155)
at weblogic.ejb20.internal.BaseEJBObject.preInvoke(BaseEJBObject.java:124)
at weblogic.ejb20.internal.StatelessEJBObject.preInvoke(StatelessEJBObject.java:63)
at com.finessealliance.clarity.cts.bfs.TxLogServicesBean_xlsia_EOImpl.execute(TxLogServicesBean_xlsia_EOImpl.java:25)
at com.finessealliance.clarity.cts.tpf.BOEvent.execute(Unknown Source)
at com.finessealliance.clarity.cts.tpf.TransactionRule.execute(Unknown Source)
at com.finessealliance.clarity.cts.tpf.TransactionRuleBean.execute(Unknown Source)
at com.finessealliance.clarity.cts.tpf.TransactionRuleBean_fptf06_EOImpl.execute(TransactionRuleBean_fptf06_EOImpl.java:37)
at com.finessealliance.clarity.cts.tpf.TransactionRuleBean_fptf06_EOImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:360)
at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:329)
at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:178)
at weblogic.rmi.internal.ServerRequest.sendOneWayRaw(ServerRequest.java:92)
at weblogic.rmi.internal.ServerRequest.sendReceive(ServerRequest.java:112)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:268)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:235)
at weblogic.rmi.internal.ProxyStub.invoke(ProxyStub.java:35)
at $Proxy80.execute(Unknown Source)
at com.finessealliance.clarity.cts.bos.BOServerThread.executeTransactionRule(Unknown Source)
at com.finessealliance.clarity.cts.bos.BOServerThread.processMessage(Unknown Source)
at com.finessealliance.clarity.cts.bos.BOServerThread.run(Unknown Source)
; nested exception is:
weblogic.transaction.RollbackException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+) - with nested exception:
[weblogic.transaction.internal.TimedOutException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+)]
weblogic.transaction.internal.TimedOutException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+)
at weblogic.transaction.internal.ServerTransactionImpl.wakeUp(ServerTransactionImpl.java:1139)
at weblogic.transaction.internal.ServerTransactionManagerImpl.processTimedOutTransactions(ServerTransactionManagerImpl.java:500)
at weblogic.transaction.internal.TransactionManagerImpl.wakeUp(TransactionManagerImpl.java:1629)
at weblogic.transaction.internal.ServerTransactionManagerImpl.wakeUp(ServerTransactionManagerImpl.java:463)
at weblogic.transaction.internal.TransactionManagerImpl$1.run(TransactionManagerImpl.java:1595)
at java.lang.Thread.run(Thread.java:484)
--------------- nested within: ------------------
weblogic.transaction.RollbackException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+) - with nested exception:
[weblogic.transaction.internal.TimedOutException: Transaction timed out after 31 seconds
Xid=15045:f8ea97550ccb4ff4(6456899),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=31,seconds left=30,activeThread=Thread[Thread-25,5,main],SCInfo[******+******]=(state=active),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=******+***.***.***.***:*****+******+, Resources={})],CoordinatorURL=*********.***.***.***:***********+)]
at weblogic.transaction.internal.TransactionImpl.throwRollbackException(TransactionImpl.java:1526)
at weblogic.transaction.internal.ServerTransactionImpl.registerSynchronization(ServerTransactionImpl.java:450)
at weblogic.ejb20.internal.TxManager.registerSynchronization(TxManager.java:158)
at weblogic.ejb20.manager.BaseEJBManager.setupTxListener(BaseEJBManager.java:218)
at weblogic.ejb20.manager.StatelessManager.preInvoke(StatelessManager.java:155)
at weblogic.ejb20.internal.BaseEJBObject.preInvoke(BaseEJBObject.java:124)
at weblogic.ejb20.internal.StatelessEJBObject.preInvoke(StatelessEJBObject.java:63)
at com.finessealliance.clarity.cts.bfs.TxLogServicesBean_xlsia_EOImpl.execute(TxLogServicesBean_xlsia_EOImpl.java:25)
at com.finessealliance.clarity.cts.tpf.BOEvent.execute(Unknown Source)
at com.finessealliance.clarity.cts.tpf.TransactionRule.execute(Unknown Source)
at com.finessealliance.clarity.cts.tpf.TransactionRuleBean.execute(Unknown Source)
at com.finessealliance.clarity.cts.tpf.TransactionRuleBean_fptf06_EOImpl.execute(TransactionRuleBean_fptf06_EOImpl.java:37)
at com.finessealliance.clarity.cts.tpf.TransactionRuleBean_fptf06_EOImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:360)
at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:329)
at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:178)
at weblogic.rmi.internal.ServerRequest.sendOneWayRaw(ServerRequest.java:92)
at weblogic.rmi.internal.ServerRequest.sendReceive(ServerRequest.java:112)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:268)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:235)
at weblogic.rmi.internal.ProxyStub.invoke(ProxyStub.java:35)
at $Proxy80.execute(Unknown Source)
at com.finessealliance.clarity.cts.bos.BOServerThread.executeTransactionRule(Unknown Source)
at com.finessealliance.clarity.cts.bos.BOServerThread.processMessage(Unknown Source)
at com.finessealliance.clarity.cts.bos.BOServerThread.run(Unknown Source)
at com.finessealliance.clarity.cts.tpf.BOEvent.execute(Unknown Source)
at com.finessealliance.clarity.cts.tpf.TransactionRule.execute(Unknown Source)
at com.finessealliance.clarity.cts.tpf.TransactionRuleBean.execute(Unknown Source)
at com.finessealliance.clarity.cts.tpf.TransactionRuleBean_fptf06_EOImpl.execute(TransactionRuleBean_fptf06_EOImpl.java:37)
at com.finessealliance.clarity.cts.tpf.TransactionRuleBean_fptf06_EOImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:360)
at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:329)
at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:178)
at weblogic.rmi.internal.ServerRequest.sendOneWayRaw(ServerRequest.java:92)
at weblogic.rmi.internal.ServerRequest.sendReceive(ServerRequest.java:112)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:268)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:235)
at weblogic.rmi.internal.ProxyStub.invoke(ProxyStub.java:35)
at $Proxy80.execute(Unknown Source)
at com.finessealliance.clarity.cts.bos.BOServerThread.executeTransactionRule(Unknown Source)
at com.finessealliance.clarity.cts.bos.BOServerThread.processMessage(Unknown Source)
at com.finessealliance.clarity.cts.bos.BOServerThread.run(Unknown Source)
Thanks,
KaoruNo, I haven't set the attribute in the weblogic-ejb-jar.xml.
The transaction type of the stateless session bean is container. So, I suppose it uses the JTA time-out value which is now set to 30 secs.
Thanks,
Kaoru -
Hi,
I have a stateless session bean invoking methods on an entity bean reference.
When 2 methods are invoked using the home reference, I get the following error
Start server side stack trace:
javax.transaction.TransactionRolledbackException: Transaction timed out after
64 seconds
Name=[EJB com.aol.quack.usabilityTools.recTuningBeans.UsabilityReportBean.createFreqReport(java.lang.Str
e=active),properties=({weblogic.transaction.name=[EJB com.aol.quack.usabilityTools.recTuningBeans.Usabil
at weblogic.transaction.internal.TransactionManagerImpl.receiveRequest(TransactionManagerImpl.ja
at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:153)
at weblogic.rmi.internal.ServerRequest.sendOneWayRaw(ServerRequest.java:92)
at weblogic.rmi.internal.ServerRequest.sendReceive(ServerRequest.java:112)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:253)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:220)
at weblogic.rmi.internal.ProxyStub.invoke(ProxyStub.java:35)
at $Proxy79.findRecognitions(Unknown Source)
at com.aol.quack.usabilityTools.util.FuncLib.processForEachMode(FuncLib.java:190)
at com.aol.quack.usabilityTools.util.FrequencyReport.generate(FrequencyReport.java:128)
at com.aol.quack.usabilityTools.recTuningBeans.UsabilityReportBean.createFreqReport(UsabilityRep
at com.aol.quack.usabilityTools.recTuningBeans.UsabilityReportBean_earfgg_EOImpl.createFreqRepor
at com.aol.quack.usabilityTools.recTuningBeans.UsabilityReportBean_earfgg_EOImpl_WLSkel.invoke(U
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:288)
at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:257)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
End server side stack trace
Does anyone have idea whats wrong? Is it the code?
The same code works for small tables though.
Thanks,
Priya
I don't think you can call a stored procedure from a CMP. What i meant was you might try calling a stored
procedure from a BMP or a Stateless bean if it is only required to get records from the table.
Shiva.
Priya wrote:
Hi,
How do I get stored procedures to work for container managed bean?
Priya
Shiva Paranandi <[email protected]> wrote:
If it is failing for large data means you need to have an alternate solution
like getting a stored procedure to
pass the results or doing some caching. Or maybe you might even try splitting
the obtained data so your
transactions might spawn for less than 60 seconds. Worst case increase
the time. Also check out what is the
time it takes to get the same data through a sql plus. Check if there
is a huge amount of time difference and
then you might want to see where this time difference is coming from.
Shiva.
Priya wrote:
Hi,
I am using CMP for the entity beans and have already set the timeoutvalue to
60 secs.
Also, this works for small tables but fails for big ones while calling2 finder/home
methods consecutively.
Priya
Shiva Paranandi <[email protected]> wrote:
Does the transaction only involve getting records from the table?
You
can change the transaction time out
value in your ejb's or in the console of WLS. Hope you are using PreparedStatements
in your SQL code. You
might also want to turn on your JDBC log to check out what might behappening.
Shiva.
Priya wrote:
Hi,
I have a stateless session bean invoking methods on an entity
bean
reference.
When 2 methods are invoked using the home reference, I get the followingerror
Start server side stack trace:
javax.transaction.TransactionRolledbackException: Transaction timedout after
64 seconds
Name=[EJB com.aol.quack.usabilityTools.recTuningBeans.UsabilityReportBean.createFreqReport(java.lang.Str
e=active),properties=({weblogic.transaction.name=[EJB com.aol.quack.usabilityTools.recTuningBeans.Usabil
at weblogic.transaction.internal.TransactionManagerImpl.receiveRequest(TransactionManagerImpl.ja
at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:153)
at weblogic.rmi.internal.ServerRequest.sendOneWayRaw(ServerRequest.java:92)
at weblogic.rmi.internal.ServerRequest.sendReceive(ServerRequest.java:112)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:253)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:220)
at weblogic.rmi.internal.ProxyStub.invoke(ProxyStub.java:35)
at $Proxy79.findRecognitions(Unknown Source)
at com.aol.quack.usabilityTools.util.FuncLib.processForEachMode(FuncLib.java:190)
at com.aol.quack.usabilityTools.util.FrequencyReport.generate(FrequencyReport.java:128)
at com.aol.quack.usabilityTools.recTuningBeans.UsabilityReportBean.createFreqReport(UsabilityRep
at com.aol.quack.usabilityTools.recTuningBeans.UsabilityReportBean_earfgg_EOImpl.createFreqRepor
at com.aol.quack.usabilityTools.recTuningBeans.UsabilityReportBean_earfgg_EOImpl_WLSkel.invoke(U
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:288)
at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:257)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
End server side stack trace
Does anyone have idea whats wrong? Is it the code?
The same code works for small tables though.
Thanks,
Priya
> > -
Hi,
I have a MDB with no transaction attribute specified in ejb-jar.xml. This MDB does not have any business logic in it. It in turn calls a session bean with transaction attribute Required+.
We are using Weblogic app server and the JTA is set to 300 sec and we are using Container Managed Transactions.
I am getting a Transaction Timed Out Exception in MDB. But in fact, I am not doing anything in my MDB. Everything is done by the session bean itself and this exception is not thrown by the session bean.
Did anybody face the similar problem? Any pointers?
Thanks & Regards,
Yong-Lohwhich JavaEE version is being used? If it is one with EJB 3.0 support, the MDB will most likely get a container managed transaction by default if you do not explicitly state that it shouldn't have one.
-
Transaction time out after 300 seconds..
Hi guys,
I have very intersting problem. I get transaction time out exception after 300 seconds. I use WLP8.1 SP3. I get this when I try to add a new portlet using admin tool
to home page (which is customized by many users)
Here is the error msg:
<weblogic> <> <BEA-415037> <PortalAdminInstanceManager.addPlaceableToPageInstance() -- java.rmi.RemoteException: EJB Exception: ; nested exception is:
javax.ejb.EJBException: SQL Error while trying to getLayoutDefinition on 2004: SQL [select LAY.MARKUP_DEFINITION_ID, LAY.INTERSECTION_ID, PL.PLACEHOLDER_DEFINITION_ID, PL.MARKUP_DEFINITION_ID, PL.LAYOUT_LOCATION, PL.INTERSECTION_ID, LAY.ICON_URI, LAY.HTML_LAYOUT_URI, LAY.WEBAPP_NAME, LAY.LAYOUT_FILE, LAY.IS_LAYOUT_FILE_DELETED from PF_LAYOUT_DEFINITION LAY, PF_PLACEHOLDER_DEFINITION PL where LAY.LAYOUT_DEFINITION_ID = ? and PL.LAYOUT_DEFINITION_ID = LAY.LAYOUT_DEFINITION_ID] database error code [0] SQL state [null] 040.; nested exception is: java.sql.SQLException: The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.TimedOutException: Transaction timed out after 299 seconds
Name=[EJBHi guys,
I have very intersting problem. I get transaction time out exception after 300 seconds. I use WLP8.1 SP3. I get this when I try to add a new portlet using admin tool
to home page (which is customized by many users)
Here is the error msg:
<weblogic> <> <BEA-415037> <PortalAdminInstanceManager.addPlaceableToPageInstance() -- java.rmi.RemoteException: EJB Exception: ; nested exception is:
javax.ejb.EJBException: SQL Error while trying to getLayoutDefinition on 2004: SQL [select LAY.MARKUP_DEFINITION_ID, LAY.INTERSECTION_ID, PL.PLACEHOLDER_DEFINITION_ID, PL.MARKUP_DEFINITION_ID, PL.LAYOUT_LOCATION, PL.INTERSECTION_ID, LAY.ICON_URI, LAY.HTML_LAYOUT_URI, LAY.WEBAPP_NAME, LAY.LAYOUT_FILE, LAY.IS_LAYOUT_FILE_DELETED from PF_LAYOUT_DEFINITION LAY, PF_PLACEHOLDER_DEFINITION PL where LAY.LAYOUT_DEFINITION_ID = ? and PL.LAYOUT_DEFINITION_ID = LAY.LAYOUT_DEFINITION_ID] database error code [0] SQL state [null] 040.; nested exception is: java.sql.SQLException: The transaction is no longer active - status: 'Marked rollback. [Reason=weblogic.transaction.internal.TimedOutException: Transaction timed out after 299 seconds
Name=[EJB -
Hello, we have an OracleWeblogic 10.3.2 running on a Solaris OS.
In this AppServer we have a FullStack J2EE Application executing distributed transactions that involve 3 manageable resources:
TxDatasource (EJB),
NonTxDatasource with enableTwoPhaseCommit and
JMS
Some of the transactions are timing out while in 'Logging' state and I just cant figure out what the root cause is. As a defensive action I lowered the JTA Timeout seconds because I noticed the 'Logging' phase was taking too long and then timing out. Idea here was not to have too many threads hanging in Logging state and therefore use the JTA Timeout to overcome this problem and minimize impact.
Below, I'm posting a few exceptions thrown in applicaiton log. Any help is very appreciated.
####<Aug 12, 2011 11:40:11 AM EDT> <Error> <EJB> <brzfxap1> <FefxServer> <[ACTIVE] ExecuteThread: '175' for queue: 'weblogic.kernel.Default (self-tuning)'> <JG47515> <> <> <1313163611120> <BEA-010026> <Exception occurred during commit of transaction Name=[EJB com.citicorp.fx.credit.CreditServiceBean.askCreditQuery(com.citicorp.fx.credit.data.CreditQueryRequestData)],Xid=BEA1-7DB913B4CB2B36D47CB7(1248714554),Status=Rolled back. [Reason=javax.transaction.SystemException: Timed out while in 'Logging' state],numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=82,seconds left=60,XAServerResourceInfo[TWOraDS_fefx]=(ServerResourceInfo[TWOraDS_fefx]=(state=rolledback,assigned=FefxServer),xar=TWOraDS,re-Registered = false),XAServerResourceInfo[WLStore_fefx_FefxFileStore]=(ServerResourceInfo[WLStore_fefx_FefxFileStore]=(state=rolledback,assigned=FefxServer),xar=WLStore_fefx_FefxFileStore1032009487,re-Registered = false),SCInfo[fefx+FefxServer]=(state=rolledback),properties=({weblogic.transaction.name=[EJB com.citicorp.fx.credit.CreditServiceBean.askCreditQuery(com.citicorp.fx.credit.data.CreditQueryRequestData)]}),local properties=({weblogic.jdbc.jta.TWOraDS=[ No XAConnection is attached to this TxInfo ]}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=FefxServer+169.193.4.91:8107+fefx+t3+, XAResources={WLStore_fefx_FefxFileStore, TWOraDS_fefx, WLStore_fefx__WLS_FefxServer, weblogic.jdbc.wrapper.JTSXAResourceImpl, WSATGatewayRM_FefxServer_fefx},NonXAResources={})],CoordinatorURL=FefxServer+169.193.4.91:8107+fefx+t3+): weblogic.transaction.RollbackException: Timed out while in 'Logging' state
at weblogic.transaction.internal.TransactionImpl.throwRollbackException(TransactionImpl.java:1848)
at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:339)
at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:233)
at weblogic.ejb.container.internal.BaseRemoteObject.postInvoke1(BaseRemoteObject.java:621)
at weblogic.ejb.container.internal.StatelessRemoteObject.postInvoke1(StatelessRemoteObject.java:60)
at weblogic.ejb.container.internal.BaseRemoteObject.postInvokeTxRetry(BaseRemoteObject.java:441)
at com.citicorp.fx.credit.CreditService_6w08fk_EOImpl.askCreditQuery(CreditService_6w08fk_EOImpl.java:75)
at com.citicorp.fx.client.creditquery.QueryProcessor.handleEvent(QueryProcessor.java:77)
at org.jac.creation.ProcessorAction.handleEvent(ProcessorAction.java:64)
at org.jac.runtime.AbstractAction.handleSecuredEvent(AbstractAction.java:73)
at org.jac.runtime.StateImpl.handleEvent(StateImpl.java:66)
at org.jac.runtime.ControllerImpl.handleEvent(ControllerImpl.java:123)
at org.jac.session.SessionImpl.handleEvent(SessionImpl.java:55)
at org.jac.session.SessionImpl.handleEvent(SessionImpl.java:78)
at org.jac.creation.JacImpl.handleEvent(JacImpl.java:53)
at org.jac.runtime.JACExecutor.handleEvent(JACExecutor.java:111)
at org.jac.runtime.JACExecutor.handleEventBySessionID(JACExecutor.java:103)
at org.jac.http.ControllerFilter.doFilter(ControllerFilter.java:63)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at com.citicorp.fx.util.compression.CompressionFilter.doFilter(CompressionFilter.java:189)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at com.citicorp.security.web.WebLogicSiteminderAuthenticationFilter.doFilter(WebLogicSiteminderAuthenticationFilter.java:65)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3592)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2202)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2108)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1432)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
Caused by: javax.transaction.SystemException: Timed out while in 'Logging' state
at weblogic.transaction.internal.ServerTransactionImpl.wakeUp(ServerTransactionImpl.java:1797)
at weblogic.transaction.internal.ServerTransactionManagerImpl.processTimedOutTransactions(ServerTransactionManagerImpl.java:1609)
at weblogic.transaction.internal.TransactionManagerImpl.wakeUp(TransactionManagerImpl.java:1885)
at weblogic.transaction.internal.ServerTransactionManagerImpl.wakeUp(ServerTransactionManagerImpl.java:1519)
at weblogic.transaction.internal.WLSTimer.timerExpired(WLSTimer.java:35)
at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:273)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:516)
... 2 more
.>
####<Aug 12, 2011 11:40:11 AM EDT> <Error> <EJB> <brzfxap1> <FefxServer> <[ACTIVE] ExecuteThread: '154' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1313163611119> <BEA-010026> <Exception occurred during commit of transaction Xid=BEA1-7DBB13B4CB2B36D47CB7(977835896),Status=Rolled back. [Reason=javax.transaction.SystemException: Timed out while in 'Logging' state],numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=60,seconds left=60,XAServerResourceInfo[WLStore_fefx_FefxFileStore]=(ServerResourceInfo[WLStore_fefx_FefxFileStore]=(state=rolledback,assigned=FefxServer),xar=WLStore_fefx_FefxFileStore1032009487,re-Registered = false),XAServerResourceInfo[TWOraDS_fefx]=(ServerResourceInfo[TWOraDS_fefx]=(state=rolledback,assigned=FefxServer),xar=TWOraDS,re-Registered = false),SCInfo[fefx+FefxServer]=(state=rolledback),local properties=({weblogic.jdbc.jta.TWOraDS=[ No XAConnection is attached to this TxInfo ]}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=FefxServer+169.193.4.91:8107+fefx+t3+, XAResources={WLStore_fefx_FefxFileStore, TWOraDS_fefx, WLStore_fefx__WLS_FefxServer, weblogic.jdbc.wrapper.JTSXAResourceImpl, WSATGatewayRM_FefxServer_fefx},NonXAResources={})],CoordinatorURL=FefxServer+169.193.4.91:8107+fefx+t3+): weblogic.transaction.RollbackException: Timed out while in 'Logging' state
at weblogic.transaction.internal.TransactionImpl.throwRollbackException(TransactionImpl.java:1848)
at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:339)
at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:233)
at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:500)
at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:371)
at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:327)
at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4585)
at weblogic.jms.client.JMSSession.execute(JMSSession.java:4271)
at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3747)
at weblogic.jms.client.JMSSession.access$000(JMSSession.java:114)
at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5096)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:516)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
Caused by: javax.transaction.SystemException: Timed out while in 'Logging' state
at weblogic.transaction.internal.ServerTransactionImpl.wakeUp(ServerTransactionImpl.java:1797)
at weblogic.transaction.internal.ServerTransactionManagerImpl.processTimedOutTransactions(ServerTransactionManagerImpl.java:1609)
at weblogic.transaction.internal.TransactionManagerImpl.wakeUp(TransactionManagerImpl.java:1885)
at weblogic.transaction.internal.ServerTransactionManagerImpl.wakeUp(ServerTransactionManagerImpl.java:1519)
at weblogic.transaction.internal.WLSTimer.timerExpired(WLSTimer.java:35)
at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:273)
... 3 more
.>
This is the stack trace of the thread that hangs while waiting for the lock to write in the transaction file:
"[ACTIVE] ExecuteThread: '64' for queue: 'weblogic.kernel.Default (self-tuning)'" daemon prio=3 tid=0x000000010dea3000 nid=0x1e2 in Object.wait() [0xfffffffda03ff000]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at weblogic.transaction.internal.ServerTransactionImpl.log(ServerTransactionImpl.java:2005)
- locked <0xfffffffe64964b30> (a weblogic.transaction.internal.ServerTransactionImpl)
at weblogic.transaction.internal.ServerTransactionImpl.globalPrepare(ServerTransactionImpl.java:2320)
at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:273)
at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:233)
at weblogic.ejb.container.internal.BaseRemoteObject.postInvoke1(BaseRemoteObject.java:621)
at weblogic.ejb.container.internal.StatelessRemoteObject.postInvoke1(StatelessRemoteObject.java:60)
at weblogic.ejb.container.internal.BaseRemoteObject.postInvokeTxRetry(BaseRemoteObject.java:441)
at com.citicorp.fx.credit.CreditService_6w08fk_EOImpl.askCreditQuery(CreditService_6w08fk_EOImpl.java:75)
at com.citicorp.fx.client.creditquery.QueryProcessor.handleEvent(QueryProcessor.java:77)
at org.jac.creation.ProcessorAction.handleEvent(ProcessorAction.java:64)
at org.jac.runtime.AbstractAction.handleSecuredEvent(AbstractAction.java:73)
at org.jac.runtime.StateImpl.handleEvent(StateImpl.java:66)
at org.jac.runtime.ControllerImpl.handleEvent(ControllerImpl.java:123)
at org.jac.session.SessionImpl.handleEvent(SessionImpl.java:55)
- locked <0xfffffffe0860e618> (a org.jac.session.SessionImpl)
at org.jac.session.SessionImpl.handleEvent(SessionImpl.java:78)
- locked <0xfffffffe0860e618> (a org.jac.session.SessionImpl)
at org.jac.creation.JacImpl.handleEvent(JacImpl.java:53)
at org.jac.runtime.JACExecutor.handleEvent(JACExecutor.java:111)
at org.jac.runtime.JACExecutor.handleEventBySessionID(JACExecutor.java:103)
at org.jac.http.ControllerFilter.doFilter(ControllerFilter.java:63)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at com.citicorp.fx.util.compression.CompressionFilter.doFilter(CompressionFilter.java:189)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at com.citicorp.security.web.WebLogicSiteminderAuthenticationFilter.doFilter(WebLogicSiteminderAuthenticationFilter.java:65)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3592)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2202)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2108)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1432)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
Edited by: user8727499 on Aug 12, 2011 11:57 AMHello, we have an OracleWeblogic 10.3.2 running on a Solaris OS.
In this AppServer we have a FullStack J2EE Application executing distributed transactions that involve 3 manageable resources:
TxDatasource (EJB),
NonTxDatasource with enableTwoPhaseCommit and
JMS
Some of the transactions are timing out while in 'Logging' state and I just cant figure out what the root cause is. As a defensive action I lowered the JTA Timeout seconds because I noticed the 'Logging' phase was taking too long and then timing out. Idea here was not to have too many threads hanging in Logging state and therefore use the JTA Timeout to overcome this problem and minimize impact.
Below, I'm posting a few exceptions thrown in applicaiton log. Any help is very appreciated.
####<Aug 12, 2011 11:40:11 AM EDT> <Error> <EJB> <brzfxap1> <FefxServer> <[ACTIVE] ExecuteThread: '175' for queue: 'weblogic.kernel.Default (self-tuning)'> <JG47515> <> <> <1313163611120> <BEA-010026> <Exception occurred during commit of transaction Name=[EJB com.citicorp.fx.credit.CreditServiceBean.askCreditQuery(com.citicorp.fx.credit.data.CreditQueryRequestData)],Xid=BEA1-7DB913B4CB2B36D47CB7(1248714554),Status=Rolled back. [Reason=javax.transaction.SystemException: Timed out while in 'Logging' state],numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=82,seconds left=60,XAServerResourceInfo[TWOraDS_fefx]=(ServerResourceInfo[TWOraDS_fefx]=(state=rolledback,assigned=FefxServer),xar=TWOraDS,re-Registered = false),XAServerResourceInfo[WLStore_fefx_FefxFileStore]=(ServerResourceInfo[WLStore_fefx_FefxFileStore]=(state=rolledback,assigned=FefxServer),xar=WLStore_fefx_FefxFileStore1032009487,re-Registered = false),SCInfo[fefx+FefxServer]=(state=rolledback),properties=({weblogic.transaction.name=[EJB com.citicorp.fx.credit.CreditServiceBean.askCreditQuery(com.citicorp.fx.credit.data.CreditQueryRequestData)]}),local properties=({weblogic.jdbc.jta.TWOraDS=[ No XAConnection is attached to this TxInfo ]}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=FefxServer+169.193.4.91:8107+fefx+t3+, XAResources={WLStore_fefx_FefxFileStore, TWOraDS_fefx, WLStore_fefx__WLS_FefxServer, weblogic.jdbc.wrapper.JTSXAResourceImpl, WSATGatewayRM_FefxServer_fefx},NonXAResources={})],CoordinatorURL=FefxServer+169.193.4.91:8107+fefx+t3+): weblogic.transaction.RollbackException: Timed out while in 'Logging' state
at weblogic.transaction.internal.TransactionImpl.throwRollbackException(TransactionImpl.java:1848)
at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:339)
at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:233)
at weblogic.ejb.container.internal.BaseRemoteObject.postInvoke1(BaseRemoteObject.java:621)
at weblogic.ejb.container.internal.StatelessRemoteObject.postInvoke1(StatelessRemoteObject.java:60)
at weblogic.ejb.container.internal.BaseRemoteObject.postInvokeTxRetry(BaseRemoteObject.java:441)
at com.citicorp.fx.credit.CreditService_6w08fk_EOImpl.askCreditQuery(CreditService_6w08fk_EOImpl.java:75)
at com.citicorp.fx.client.creditquery.QueryProcessor.handleEvent(QueryProcessor.java:77)
at org.jac.creation.ProcessorAction.handleEvent(ProcessorAction.java:64)
at org.jac.runtime.AbstractAction.handleSecuredEvent(AbstractAction.java:73)
at org.jac.runtime.StateImpl.handleEvent(StateImpl.java:66)
at org.jac.runtime.ControllerImpl.handleEvent(ControllerImpl.java:123)
at org.jac.session.SessionImpl.handleEvent(SessionImpl.java:55)
at org.jac.session.SessionImpl.handleEvent(SessionImpl.java:78)
at org.jac.creation.JacImpl.handleEvent(JacImpl.java:53)
at org.jac.runtime.JACExecutor.handleEvent(JACExecutor.java:111)
at org.jac.runtime.JACExecutor.handleEventBySessionID(JACExecutor.java:103)
at org.jac.http.ControllerFilter.doFilter(ControllerFilter.java:63)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at com.citicorp.fx.util.compression.CompressionFilter.doFilter(CompressionFilter.java:189)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at com.citicorp.security.web.WebLogicSiteminderAuthenticationFilter.doFilter(WebLogicSiteminderAuthenticationFilter.java:65)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3592)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2202)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2108)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1432)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
Caused by: javax.transaction.SystemException: Timed out while in 'Logging' state
at weblogic.transaction.internal.ServerTransactionImpl.wakeUp(ServerTransactionImpl.java:1797)
at weblogic.transaction.internal.ServerTransactionManagerImpl.processTimedOutTransactions(ServerTransactionManagerImpl.java:1609)
at weblogic.transaction.internal.TransactionManagerImpl.wakeUp(TransactionManagerImpl.java:1885)
at weblogic.transaction.internal.ServerTransactionManagerImpl.wakeUp(ServerTransactionManagerImpl.java:1519)
at weblogic.transaction.internal.WLSTimer.timerExpired(WLSTimer.java:35)
at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:273)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:516)
... 2 more
.>
####<Aug 12, 2011 11:40:11 AM EDT> <Error> <EJB> <brzfxap1> <FefxServer> <[ACTIVE] ExecuteThread: '154' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1313163611119> <BEA-010026> <Exception occurred during commit of transaction Xid=BEA1-7DBB13B4CB2B36D47CB7(977835896),Status=Rolled back. [Reason=javax.transaction.SystemException: Timed out while in 'Logging' state],numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=60,seconds left=60,XAServerResourceInfo[WLStore_fefx_FefxFileStore]=(ServerResourceInfo[WLStore_fefx_FefxFileStore]=(state=rolledback,assigned=FefxServer),xar=WLStore_fefx_FefxFileStore1032009487,re-Registered = false),XAServerResourceInfo[TWOraDS_fefx]=(ServerResourceInfo[TWOraDS_fefx]=(state=rolledback,assigned=FefxServer),xar=TWOraDS,re-Registered = false),SCInfo[fefx+FefxServer]=(state=rolledback),local properties=({weblogic.jdbc.jta.TWOraDS=[ No XAConnection is attached to this TxInfo ]}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=FefxServer+169.193.4.91:8107+fefx+t3+, XAResources={WLStore_fefx_FefxFileStore, TWOraDS_fefx, WLStore_fefx__WLS_FefxServer, weblogic.jdbc.wrapper.JTSXAResourceImpl, WSATGatewayRM_FefxServer_fefx},NonXAResources={})],CoordinatorURL=FefxServer+169.193.4.91:8107+fefx+t3+): weblogic.transaction.RollbackException: Timed out while in 'Logging' state
at weblogic.transaction.internal.TransactionImpl.throwRollbackException(TransactionImpl.java:1848)
at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:339)
at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:233)
at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:500)
at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:371)
at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:327)
at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4585)
at weblogic.jms.client.JMSSession.execute(JMSSession.java:4271)
at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3747)
at weblogic.jms.client.JMSSession.access$000(JMSSession.java:114)
at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5096)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:516)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
Caused by: javax.transaction.SystemException: Timed out while in 'Logging' state
at weblogic.transaction.internal.ServerTransactionImpl.wakeUp(ServerTransactionImpl.java:1797)
at weblogic.transaction.internal.ServerTransactionManagerImpl.processTimedOutTransactions(ServerTransactionManagerImpl.java:1609)
at weblogic.transaction.internal.TransactionManagerImpl.wakeUp(TransactionManagerImpl.java:1885)
at weblogic.transaction.internal.ServerTransactionManagerImpl.wakeUp(ServerTransactionManagerImpl.java:1519)
at weblogic.transaction.internal.WLSTimer.timerExpired(WLSTimer.java:35)
at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:273)
... 3 more
.>
This is the stack trace of the thread that hangs while waiting for the lock to write in the transaction file:
"[ACTIVE] ExecuteThread: '64' for queue: 'weblogic.kernel.Default (self-tuning)'" daemon prio=3 tid=0x000000010dea3000 nid=0x1e2 in Object.wait() [0xfffffffda03ff000]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at weblogic.transaction.internal.ServerTransactionImpl.log(ServerTransactionImpl.java:2005)
- locked <0xfffffffe64964b30> (a weblogic.transaction.internal.ServerTransactionImpl)
at weblogic.transaction.internal.ServerTransactionImpl.globalPrepare(ServerTransactionImpl.java:2320)
at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:273)
at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:233)
at weblogic.ejb.container.internal.BaseRemoteObject.postInvoke1(BaseRemoteObject.java:621)
at weblogic.ejb.container.internal.StatelessRemoteObject.postInvoke1(StatelessRemoteObject.java:60)
at weblogic.ejb.container.internal.BaseRemoteObject.postInvokeTxRetry(BaseRemoteObject.java:441)
at com.citicorp.fx.credit.CreditService_6w08fk_EOImpl.askCreditQuery(CreditService_6w08fk_EOImpl.java:75)
at com.citicorp.fx.client.creditquery.QueryProcessor.handleEvent(QueryProcessor.java:77)
at org.jac.creation.ProcessorAction.handleEvent(ProcessorAction.java:64)
at org.jac.runtime.AbstractAction.handleSecuredEvent(AbstractAction.java:73)
at org.jac.runtime.StateImpl.handleEvent(StateImpl.java:66)
at org.jac.runtime.ControllerImpl.handleEvent(ControllerImpl.java:123)
at org.jac.session.SessionImpl.handleEvent(SessionImpl.java:55)
- locked <0xfffffffe0860e618> (a org.jac.session.SessionImpl)
at org.jac.session.SessionImpl.handleEvent(SessionImpl.java:78)
- locked <0xfffffffe0860e618> (a org.jac.session.SessionImpl)
at org.jac.creation.JacImpl.handleEvent(JacImpl.java:53)
at org.jac.runtime.JACExecutor.handleEvent(JACExecutor.java:111)
at org.jac.runtime.JACExecutor.handleEventBySessionID(JACExecutor.java:103)
at org.jac.http.ControllerFilter.doFilter(ControllerFilter.java:63)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at com.citicorp.fx.util.compression.CompressionFilter.doFilter(CompressionFilter.java:189)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at com.citicorp.security.web.WebLogicSiteminderAuthenticationFilter.doFilter(WebLogicSiteminderAuthenticationFilter.java:65)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3592)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2202)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2108)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1432)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
Edited by: user8727499 on Aug 12, 2011 11:57 AM
Maybe you are looking for
-
How can i create and access resource file(with .res ext) in j2me
hi, i am developing an mobile international application using jsr-238 an optional api to implement the idea of internationalizationand localization. please tell me how can i create .res files in my application to store strings of different languages.
-
The phone itself is not working either. It shows the apple icon and a horizontal bar (black outlined in white). Thanks in advance for any help.
-
Iphone 6 plus screen crack, how much does it cost.?
Had iPhone 3,4 and 5 and never had protective case. over the years phones fell several times. they even fell down on road, except for small dings on the edges they never had cracked screens. 6 plus screen cracked after falling less than 3 feet (from
-
0BBP_TD_PO_1 STD extractor
Hi, we are trying to extract Purchase order data from SRM using the STD data source 0BBP_TD_PO_1.In RSA3 we are not getting any records using this extractor.I checked the function module BBP_PO_BW_EXTRACT and the result is same. We do have some purch
-
We have about 20% of our workstations that are not getting the ZCM update to version 10.0.3. They are still at version 10.0.1. Is there any way to get a report showing all of these workstations? The console is just too slow to have to click on Config