Solved

Listner ports - number of session problem

Posted on 2004-09-14
4
2,512 Views
Last Modified: 2013-12-10
Hi,
We are developing EJB app with WAS 5.0 We have  MDB listening to MQ. We have strange problem like when we set the maximum sessions on listener port as 1, the transactions are working as expected (transaction includes few read, insert and updates of about 10,000 records in DB2 database). But when sessions increased to 2 or 3, it throws the following exception randomly. But few transactions are going through fine. Please let me know if you find anything fishy.

[9/11/04 1:00:17:553 GMT]   6d3b92 ConnectionFac I J2CA0107I: Component-managed authentication alias not specified for connection factory or datasource delqncyDS.
[9/11/04 1:00:22:250 GMT]   6d3b92 WSRdbDataSour u Database version is
                                 08.01.0006
[9/11/04 1:00:22:251 GMT]   6d3b92 WSRdbDataSour u JDBC Driver version is
                                 08.01.0006
[9/11/04 1:00:22:572 GMT]   6d3b92 XATransaction E J2CA0026E: Method addSync caught javax.transaction.RollbackException
        at com.ibm.ejs.jts.jta.TransactionImpl.registerSynchronization(TransactionImpl.java:993)
        at com.ibm.ejs.jts.jta.JTSXA.registerSynchronization(JTSXA.java:1096)
        at com.ibm.ejs.j2c.XATransactionWrapper.addSync(XATransactionWrapper.java:256)
        at com.ibm.ejs.j2c.ConnectionManager.initializeForUOW(ConnectionManager.java:906)
        at com.ibm.ejs.j2c.ConnectionManager.involveMCInTran(ConnectionManager.java:723)
        at com.ibm.ejs.j2c.ConnectionManager.allocateConnection(ConnectionManager.java:468)
        at com.ibm.ws.rsadapter.jdbc.WSJdbcDataSource.getConnection(WSJdbcDataSource.java:215)
        at com.ibm.ws.rsadapter.jdbc.WSJdbcDataSource.getConnection(WSJdbcDataSource.java:190)
        at com.pmigroup.framework.persistence.ApplConnectionManager.getDBConnection(ApplConnectionManager.java:341)
        at com.pmigroup.framework.persistence.ApplConnectionManager.getDBConnection(ApplConnectionManager.java:298)
        at com.pmigroup.framework.persistence.ApplDBPersistence.getUserCtxBasedConnection(ApplDBPersistence.java:76)
        at com.pmigroup.framework.persistence.ApplDBPersistence.retrieve(ApplDBPersistence.java:156)
        at com.pmigroup.framework.persistence.ApplQuery.executeQueryWithoutMap(ApplQuery.java:207)
        at com.pmigroup.framework.persistence.ApplQuery.executeQuery(ApplQuery.java:170)
        at com.pmigroup.pmifwrk.common.helper.PmiFwrkCodeValueLoader.refresh(PmiFwrkCodeValueLoader.java:384)
        at com.pmigroup.pmifwrk.common.helper.PmiFwrkCodeValueLoader.initialize(PmiFwrkCodeValueLoader.java:83)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.pmigroup.framework.bootstrap.FwrkEJBApplInitializer.initializeClass(FwrkEJBApplInitializer.java:220)
        at com.pmigroup.framework.bootstrap.FwrkEJBApplInitializer.initialize(FwrkEJBApplInitializer.java:183)
        at com.pmigroup.framework.startup.StartupBean.start(StartupBean.java:67)
        at com.ibm.websphere.startupservice.EJSRemoteStatelessStartup_62d21f31.start(Unknown Source)
        at com.ibm.websphere.startupservice._AppStartUp_Stub.start(Unknown Source)
        at com.ibm.ws.startupservice.StartBeanInfo.start(StartBeanInfo.java:255)
        at com.ibm.ws.startupservice.StartUpModule.start(StartUpModule.java:100)
        at com.ibm.ws.startupservice.StartUpApplication.start(StartUpApplication.java:101)
        at com.ibm.ws.startupservice.StartUpService.stateChanged(StartUpService.java:393)
        at com.ibm.ws.runtime.component.ApplicationMgrImpl.stateChanged(ApplicationMgrImpl.java:385)
        at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectEvent(DeployedApplicationImpl.java:791)
        at com.ibm.ws.runtime.component.DeployedApplicationImpl.setState(DeployedApplicationImpl.java:157)
        at com.ibm.ws.runtime.component.DeployedApplicationImpl.setState(DeployedApplicationImpl.java:153)
        at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:589)
        at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:268)
        at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:246)
        at com.ibm.ws.runtime.component.ContainerImpl.startComponents(ContainerImpl.java:543)
        at com.ibm.ws.runtime.component.ContainerImpl.start(ContainerImpl.java:418)
        at com.ibm.ws.runtime.component.ApplicationServerImpl.start(ApplicationServerImpl.java:126)
        at com.ibm.ws.runtime.component.ContainerImpl.startComponents(ContainerImpl.java:543)
        at com.ibm.ws.runtime.component.ContainerImpl.start(ContainerImpl.java:418)
        at com.ibm.ws.runtime.component.ServerImpl.start(ServerImpl.java:183)
        at com.ibm.ws.runtime.WsServer.start(WsServer.java:128)
        at com.ibm.ws.runtime.WsServer.main(WsServer.java:225)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.ibm.ws.bootstrap.WSLauncher.main(WSLauncher.java:94)
 while trying to register the Resource Adapter with the Synchronization Manager for the current transaction, and threw a ResourceException.
[9/11/04 1:00:22:975 GMT]   6d3b92 StartBeanInfo E STUP0006E: Exception calling startup bean named ejb/com/ibm/websphere/startupservice/AppStartUpHome, exception was javax.transaction.TransactionRolledbackException: CORBA TRANSACTION_ROLLEDBACK 0x0 No; nested exception is:
        org.omg.CORBA.TRANSACTION_ROLLEDBACK: javax.transaction.TransactionRolledbackException:    minor code: 0  completed: No
org.omg.CORBA.TRANSACTION_ROLLEDBACK: javax.transaction.TransactionRolledbackException:    minor code: 0  completed: No
        at java.lang.reflect.Constructor.newInstance(Native Method)
        at com.ibm.CORBA.iiop.UtilDelegateImpl.copyObjectByProxy(UtilDelegateImpl.java:1163)
        at com.ibm.CORBA.iiop.UtilDelegateImpl.copyObject(UtilDelegateImpl.java:781)
        at javax.rmi.CORBA.Util.copyObject(Util.java:277)
        at com.ibm.websphere.startupservice._AppStartUp_Stub.start(Unknown Source)
        at com.ibm.ws.startupservice.StartBeanInfo.start(StartBeanInfo.java:255)
        at com.ibm.ws.startupservice.StartUpModule.start(StartUpModule.java:100)
        at com.ibm.ws.startupservice.StartUpApplication.start(StartUpApplication.java:101)
        at com.ibm.ws.startupservice.StartUpService.stateChanged(StartUpService.java:393)
        at com.ibm.ws.runtime.component.ApplicationMgrImpl.stateChanged(ApplicationMgrImpl.java:385)
        at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectEvent(DeployedApplicationImpl.java:791)
        at com.ibm.ws.runtime.component.DeployedApplicationImpl.setState(DeployedApplicationImpl.java:157)
        at com.ibm.ws.runtime.component.DeployedApplicationImpl.setState(DeployedApplicationImpl.java:153)
        at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:589)
        at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:268)
        at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:246)
        at com.ibm.ws.runtime.component.ContainerImpl.startComponents(ContainerImpl.java:543)
        at com.ibm.ws.runtime.component.ContainerImpl.start(ContainerImpl.java:418)
        at com.ibm.ws.runtime.component.ApplicationServerImpl.start(ApplicationServerImpl.java:126)
        at com.ibm.ws.runtime.component.ContainerImpl.startComponents(ContainerImpl.java:543)
        at com.ibm.ws.runtime.component.ContainerImpl.start(ContainerImpl.java:418)
        at com.ibm.ws.runtime.component.ServerImpl.start(ServerImpl.java:183)
        at com.ibm.ws.runtime.WsServer.start(WsServer.java:128)
        at com.ibm.ws.runtime.WsServer.main(WsServer.java:225)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.ibm.ws.bootstrap.WSLauncher.main(WSLauncher.java:94)
0
Comment
Question by:prabudoss
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
4 Comments
 
LVL 7

Expert Comment

by:damonf
ID: 12053304
I think this might be a threading issue.  Once you increase the number of sessions past 1, you may have multiple threads trying to access the same transactions.  I'd need to have a better idea of your design to be sure.  DB2 is sensitive about inserts, although I don't see a deadlock exception.
0
 

Author Comment

by:prabudoss
ID: 12061110
Thanks for your comments. We somehow addressed the issue in changing the transaction logic. Like intially we had a batch of 50 read/insert/update as one transaction with RequiresNew transaction attribute. Now we made each one read/insert/update as transaction with RequiresNew transaction attribute. This design works fine with 4 sessions on listener ports.
0
 
LVL 1

Accepted Solution

by:
Computer101 earned 0 total points
ID: 12318737
PAQed, with points refunded (125)

Computer101
E-E Admin
0

Featured Post

Simple, centralized multimedia control

Watch and learn to see how ATEN provided an easy and effective way for three jointly-owned pubs to control the 60 televisions located across their three venues utilizing the ATEN Control System, Modular Matrix Switch and HDBaseT extenders.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Define alias for servlet 5 63
Java Application is Unable to connect to correct schema(Error : 404) 11 93
VS 2015 Apache Cordova mobile app 2 105
Https with tomcat. A myth. 5 125
This article is about some of the basic and important steps to be used to improve the performance in web-sphere commerce application development. 1) Always leverage the Dyna-caching facility provided by the product 2) Remove the unwanted code …
Upgrading Tomcat – There are a couple of methods to upgrade Tomcat is to use The Apache Installer is to download and unzip and run the services.bat remove|install Tomcat6 Because of the App that we are working with, we can only use Tomcat 6.…
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…
How to Install VMware Tools in Red Hat Enterprise Linux 6.4 (RHEL 6.4) Step-by-Step Tutorial

751 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question