Hi,

        1st my environment

        DB Server Host (4 CPUs - 4GB ram)
        . RedHat 7.2 smp (precompiled kernel)
        . IBM DB2 7.1
        . IP 172.17.0.1

        J2EE server host (4 CPUs - 4GB ram)
        . RedHat 7.2 smp (precompiled kernel)
        . JBoss 2.4.6 using jdbc driver 'app' (type 2)
        . Sun JRE 1.3.1_02
        . IBM DB2 Client
        . IP 172.17.0.2
        . EJB BMP application

        Under 80 client access at same time, all works fine, at some unknown
circunstance and time, the connection from jboss/jdbc driver to DB2 is
lost and an exception is throw:

[19:39:35,377,STDERR] [ECHO ERROR]
[19:39:35,383,TxCapsule] XAException: tx=XidImpl [FormatId=257,
GlobalId=machine-name.com//39693, BranchQual=] error
Code=XA_UNKNOWN(0)
javax.transaction.xa.XAException: Rollback failed: [IBM][CLI Driver]
CLI0106E  Connection is closed. SQLSTATE=08003
~        at
org.jboss.pool.jdbc.xa.wrapper.XAResourceImpl.rollback(XAResourceImpl.java:219)
~        at org.jboss.tm.TxCapsule.rollbackResources(TxCapsule.java:1540)
~        at org.jboss.tm.TxCapsule.rollback(TxCapsule.java:395)
~        at org.jboss.tm.TransactionImpl.rollback(TransactionImpl.java:88)
~        at
org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:392)
~        at
org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:100)
~        at
org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:127)
~        at
org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:170)
~        at
org.jboss.ejb.StatelessSessionContainer.invoke(StatelessSessionContainer.java:286)
~        at
org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invoke(JRMPContainerInvoker.java:412)
~        at java.lang.reflect.Method.invoke(Native Method)
~        at
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:241)
~        at sun.rmi.transport.Transport$1.run(Transport.java:152)
~        at java.security.AccessController.doPrivileged(Native Method)
~        at sun.rmi.transport.Transport.serviceCall(Transport.java:148)
~        at
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:465)
~        at
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:706)
~        at java.lang.Thread.run(Thread.java:484)
[19:39:35,435,XAConnectionFactory] Can't get an XAConnection
COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver] SQL30081N  A
communication error has been detected.  Communication protoc
ol being used: "TCP/IP".  Communication API being used: "SOCKETS".
Location where the error was detected: "12.17.0.2".  C
ommunication function detecting the error: "recv".  Protocol specific
error code(s): "*", "*", "0".  SQLSTATE=08001

~        at
COM.ibm.db2.jdbc.app.SQLExceptionGenerator.throw_SQLException(SQLExceptionGenerator.java:183)
~        at
COM.ibm.db2.jdbc.app.SQLExceptionGenerator.check_return_code(SQLExceptionGenerator.java:440)
~        at
COM.ibm.db2.jdbc.app.DB2Connection.connect(DB2Connection.java:461)
~        at
COM.ibm.db2.jdbc.app.DB2Connection.<init>(DB2Connection.java:354)
~        at COM.ibm.db2.jdbc.app.DB2Driver.connect(DB2Driver.java:354)
~        at java.sql.DriverManager.getConnection(DriverManager.java:517)
~        at java.sql.DriverManager.getConnection(DriverManager.java:177)
~        at
org.jboss.pool.jdbc.xa.wrapper.XADataSourceImpl.getXAConnection(XADataSourceImpl.java:176)
~        at
org.jboss.pool.jdbc.xa.XAConnectionFactory.createObject(XAConnectionFactory.java:282)
~        at org.jboss.pool.ObjectPool.createNewObject(ObjectPool.java:1004)
~        at org.jboss.pool.ObjectPool.getObject(ObjectPool.java:663)
~        at
org.jboss.pool.jdbc.xa.XAPoolDataSource.getConnection(XAPoolDataSource.java:215)



        The strange thing is in line "Location where the error was detected:
"12.17.0.2".", that shows the IP 12.17.0.2. In fact the jboss machine is
172.17.0.2. In our network doesn't exists 12.x.x.x range.

        After a jboss restart all works fine. The environment is submitted to
same level of use before crash. And at my look, the statements,
resultsets, connections are closed in finally clauses.

        I searched db2 site with keyword, but nothing point me to the right place.

        The connections made from JBoss to DB2 stay at normal level (minimum
declared in jboss.jcml), increased to +3 at high load.

        Well, if you have some tip, please reply  ;)


[]'s

Claudio


_______________________________________________________________

Sponsored by:
ThinkGeek at http://www.ThinkGeek.com/
_______________________________________________
JBoss-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to