0 Replies Latest reply on Jun 14, 2006 5:26 PM by Brian Sam-Bodden

    JBossMQ Recurrent Connection Failure

    Brian Sam-Bodden Newbie

      We have an application running on:

      JBoss 2.4.4 + Catalina
      OS: WIN 2K

      and we get this exception every once in while and eventually we see degradation of the JBoss JMS stack performance. Yes, we know this is an very old version of JBoss but we are stuck with it for the time being.

      This is how we have JMS configured in the jboss.jcml file:

      <!-- ==================================================================== -->
       <!-- JBossMQ -->
       <!-- ==================================================================== -->
       <mbean code="org.jboss.mq.server.JBossMQService" name="JBossMQ:service=Server"/>
      
       <!-- The StateManager is used to keep JMS perisitent state data. -->
       <!-- For example: what durable subscriptions are active. -->
       <mbean code="org.jboss.mq.server.StateManager" name="JBossMQ:service=StateManager">
       <attribute name="StateFile">jbossmq-state.xml</attribute>
       </mbean>
      
       <!-- The PersistenceManager is used to store messages to disk. -->
       <mbean code="org.jboss.mq.pm.rollinglogged.PersistenceManager" name="JBossMQ:service=PersistenceManager">
       <attribute name="DataDirectory">../../db/jbossmq/</attribute>
       </mbean>
      
       <mbean code="org.jboss.mq.il.jvm.JVMServerILService" name="JBossMQ:service=InvocationLayer,type=JVM">
       <attribute name="ConnectionFactoryJNDIRef">JVMConnectionFactory</attribute>
       <attribute name="XAConnectionFactoryJNDIRef">JVMXAConnectionFactory</attribute>
       </mbean>
      
       <mbean code="org.jboss.mq.il.rmi.RMIServerILService" name="JBossMQ:service=InvocationLayer,type=RMI">
       <attribute name="ConnectionFactoryJNDIRef">RMIConnectionFactory</attribute>
       <attribute name="XAConnectionFactoryJNDIRef">RMIXAConnectionFactory</attribute>
       </mbean>
      
       <mbean code="org.jboss.mq.il.oil.OILServerILService" name="JBossMQ:service=InvocationLayer,type=OIL">
       <attribute name="ConnectionFactoryJNDIRef">ConnectionFactory</attribute>
       <attribute name="XAConnectionFactoryJNDIRef">XAConnectionFactory</attribute>
       </mbean>
      
       <mbean code="org.jboss.mq.il.uil.UILServerILService" name="JBossMQ:service=InvocationLayer,type=UIL">
       <attribute name="ConnectionFactoryJNDIRef">UILConnectionFactory</attribute>
       <attribute name="XAConnectionFactoryJNDIRef">UILXAConnectionFactory</attribute>
       </mbean>
      
       <mbean code="org.jboss.mq.server.QueueManager" name="JBossMQ:service=Queue,name=PedigreeCacheQueue"/>
       <mbean code="org.jboss.mq.server.QueueManager" name="JBossMQ:service=Queue,name=PedigreeAPMSListQueue"/>
       <mbean code="org.jboss.mq.server.QueueManager" name="JBossMQ:service=Queue,name=PedigreeAsyncCommandFlowQueue"/>
       <mbean code="org.jboss.mq.server.QueueManager" name="JBossMQ:service=Queue,name=PedigreeCINListQueue"/>
      
       <!-- Used for backwards compatability with JBossMQ versions before 1.0.0 -->
       <mbean code="org.jboss.naming.NamingAlias" name="DefaultDomain:service=NamingAlias,fromName=QueueConnectionFactory">
       <attribute name="ToName">ConnectionFactory</attribute>
       <attribute name="FromName">QueueConnectionFactory</attribute>
       </mbean>
       <mbean code="org.jboss.naming.NamingAlias" name="DefaultDomain:service=NamingAlias,fromName=TopicConnectionFactory">
       <attribute name="ToName">ConnectionFactory</attribute>
       <attribute name="FromName">TopicConnectionFactory</attribute>
       </mbean>
      
       <!-- For Message Driven Beans -->
       <mbean code="org.jboss.jms.jndi.JMSProviderLoader" name=":service=JMSProviderLoader,name=JBossMQProvider">
       <attribute name="ProviderName">DefaultJMSProvider</attribute>
       <attribute name="ProviderAdapterClass">org.jboss.jms.jndi.JBossMQProvider</attribute>
       <attribute name="QueueFactoryRef">java:/XAConnectionFactory</attribute>
       <attribute name="TopicFactoryRef">java:/XAConnectionFactory</attribute>
       </mbean>
       <mbean code="org.jboss.jms.asf.ServerSessionPoolLoader" name=":service=ServerSessionPoolMBean,name=StdJMSPool">
       <attribute name="PoolName">StdJMSPool</attribute>
       <attribute name="PoolFactoryClass">org.jboss.jms.asf.StdServerSessionPoolFactory</attribute>
       </mbean>



      Here's the stack trace. Thank you.

      [17:02:23,059,Connection] JBossMQ Connection failure:
      org.jboss.mq.SpyJMSException: Could not initialize the OILClientIL Service.
      at org.jboss.mq.Connection.asynchFailure(Connection.java:412)
      at org.jboss.mq.il.oil.OILClientILService.run(OILClientILService.java:148)
      at java.lang.Thread.run(Thread.java:536)
      linked exception is:
      java.net.SocketException: Socket is closed
      at java.net.ServerSocket.setSoTimeout(ServerSocket.java:540)
      at org.jboss.mq.il.oil.OILClientILService.run(OILClientILService.java:117)
      at java.lang.Thread.run(Thread.java:536)
      [17:02:23,059,Default] org.jboss.mq.SpyJMSException: Could not initialize the OILClientIL Service.
      [17:02:23,059,Default] at org.jboss.mq.Connection.asynchFailure(Connection.java:412)
      [17:02:23,059,Default] at org.jboss.mq.il.oil.OILClientILService.run(OILClientILService.java:148)
      [17:02:23,059,Default] at java.lang.Thread.run(Thread.java:536)
      [17:02:23,059,Default] linked exception is:
      [17:02:23,059,Default] java.net.SocketException: Socket is closed
      [17:02:23,059,Default] at java.net.ServerSocket.setSoTimeout(ServerSocket.java:540)
      [17:02:23,074,Default] at org.jboss.mq.il.oil.OILClientILService.run(OILClientILService.java:117)
      [17:02:23,074,Default] at java.lang.Thread.run(Thread.java:536)
      [17:02:23,074,Connection] JBossMQ Connection failure:
      org.jboss.mq.SpyJMSException: Could not initialize the OILClientIL Service.
      at org.jboss.mq.Connection.asynchFailure(Connection.java:412)
      at org.jboss.mq.il.oil.OILClientILService.run(OILClientILService.java:148)
      at java.lang.Thread.run(Thread.java:536)
      linked exception is:
      java.net.SocketException: Socket Closed
      at java.net.PlainSocketImpl.setOption(PlainSocketImpl.java:167)
      at java.net.ServerSocket.setSoTimeout(ServerSocket.java:541)
      at org.jboss.mq.il.oil.OILClientILService.run(OILClientILService.java:117)
      at java.lang.Thread.run(Thread.java:536)