From: Alexander S. (JIRA) <jir...@jb...> - 2005-11-12 16:30:13
|
[ http://jira.jboss.com/jira/browse/JBMESSAGING-181?page=all ] Alexander Serbul updated JBMESSAGING-181: ----------------------------------------- Component: Messaging Core > Stopping Connection error in local MDB with remote Queue configuration > ---------------------------------------------------------------------- > > Key: JBMESSAGING-181 > URL: http://jira.jboss.com/jira/browse/JBMESSAGING-181 > Project: JBoss Messaging > Type: Bug > Components: Messaging Core > Environment: Linux 2.4.27-2-686, jrockit jdk 1.5.0_03-b07, JBoss4.0.3 > Reporter: Alexander Serbul > Assignee: Ovidiu Feodorov > > > I have a such config: > Local MDB is connecting to remote Queue through JMSProvider. > Config for MDB invoker: > <invoker-proxy-binding> > <name>cmd-message-driven-bean</name> > <invoker-mbean>default</invoker-mbean> > <proxy-factory>org.jboss.ejb.plugins.jms.JMSContainerInvoker</proxy-factory> > <proxy-factory-config> > <JMSProviderAdapterJNDI>SSLCMDJMSProvider</JMSProviderAdapterJNDI> > <ServerSessionPoolFactoryJNDI>StdJMSPool</ServerSessionPoolFactoryJNDI> > <!-- WARN: Don't set this to zero until a bug in the pooled executor is fixed --> > <MinimumSize>1</MinimumSize> > <MaximumSize>15</MaximumSize> > <KeepAliveMillis>30000</KeepAliveMillis> > <MaxMessages>1</MaxMessages> > <MDBConfig> > <ReconnectIntervalSec>120</ReconnectIntervalSec> > <DLQConfig> > <DestinationQueue>queue/DLQ</DestinationQueue> > <MaxTimesRedelivered>259200</MaxTimesRedelivered> > <TimeToLive>0</TimeToLive> > <DLQUser>sync</DLQUser> > <DLQPassword>***</DLQPassword> > </DLQConfig> > </MDBConfig> > </proxy-factory-config> > </invoker-proxy-binding> > Remote UIL2 Factory config: > <mbean code="org.jboss.mq.il.uil2.UILServerILService" > name="jboss.mq:service=InvocationLayer,type=SSLUIL2"> > <depends optional-attribute-name="Invoker">jboss.mq:service=Invoker</depends> > <attribute name="ConnectionFactoryJNDIRef">SSLUIL2ConnectionFactory</attribute> > <attribute name="XAConnectionFactoryJNDIRef">SSLUIL2XAConnectionFactory</attribute> > <!-- The bind address --> > <attribute name="BindAddress">${jboss.bind.address}</attribute> > <attribute name="ServerBindPort">8193</attribute> > <attribute name="PingPeriod">60000</attribute> > <attribute name="EnableTcpNoDelay">true</attribute> > <!-- Used to disconnect the client if there is no activity --> > <!-- Ensure this is greater than the ping period --> > <attribute name="ReadTimeout">120000</attribute> > <attribute name="ClientReadTimeout">120000</attribute> > <!-- The size of the buffer (in bytes) wrapping the socket --> > <!-- The buffer is flushed after each request --> > <attribute name="BufferSize">2048</attribute> > <!-- Large messages may block the ping/pong --> > <!-- A pong is simulated after each chunk (in bytes) for both reading and writing --> > <!-- It must be larger than the buffer size --> > <attribute name="ChunkSize">100000</attribute> > <attribute name="ClientSocketFactory">org.jboss.security.ssl.ClientSocketFactory</attribute> > <attribute name="ServerSocketFactory">org.jboss.security.ssl.DomainServerSocketFactory</attribute> > <attribute name="SecurityDomain">java:/jaas/SSL</attribute> > </mbean> > Local JMS datasource config: > <mbean code="org.jboss.jms.jndi.JMSProviderLoader" > name="jboss.mq:service=JMSProviderLoader,name=SSLCMDJMSProvider,server=cmdhost"> > <attribute name="ProviderName">SSLCMDJMSProvider</attribute> > <attribute name="ProviderAdapterClass">org.jboss.jms.jndi.JNDIProviderAdapter</attribute> > <!-- The queue connection factory --> > <attribute name="QueueFactoryRef">SSLUIL2XAConnectionFactory</attribute> > <!-- The topic factory --> > <attribute name="TopicFactoryRef">SSLUIL2XAConnectionFactory</attribute> > <!-- Connect to JNDI on the host "queuehost" port 1099--> > <attribute name="Properties"> > java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory > java.naming.factory.url.pkgs=org.jnp.interfaces > java.naming.provider.url=*.*.*.*:1099 > </attribute> > </mbean> > Problem: > After some time (~1-3 hours) MDB side begins report about problems to close connection to server: > 2005-11-10 14:41:25,818 ERROR [org.jboss.ejb.plugins.jms.JMSContainerInvoker] Could not stop JMS connection > org.jboss.mq.SpyJMSException: Cannot disable the connection with the JMS server; - nested throwable: (java.io.IOException: Client is not connected) > at org.jboss.mq.SpyJMSException.getAsJMSException(SpyJMSException.java:66) > at org.jboss.mq.SpyJMSException.rethrowAsJMSException(SpyJMSException.java:51) > at org.jboss.mq.Connection.doStop(Connection.java:1235) > at org.jboss.mq.Connection.stop(Connection.java:696) > at org.jboss.ejb.plugins.jms.JMSContainerInvoker.innerStopDelivery(JMSContainerInvoker.java:987) > at org.jboss.ejb.plugins.jms.JMSContainerInvoker$ExceptionListenerImpl.run(JMSContainerInvoker.java:1447) > at java.lang.Thread.run()V(Unknown Source) > Caused by: java.io.IOException: Client is not connected > at org.jboss.mq.il.uil2.SocketManager.internalSendMessage(SocketManager.java:238) > at org.jboss.mq.il.uil2.SocketManager.sendMessage(SocketManager.java:206) > at org.jboss.mq.il.uil2.UILServerIL.setEnabled(UILServerIL.java:197) > at org.jboss.mq.Connection.doStop(Connection.java:1231) > ... 4 more > 2005-11-10 14:41:25,989 DEBUG [org.jboss.ejb.plugins.jms.DLQHandler] Stopping DLQHandler > 2005-11-10 14:41:25,989 WARN [org.jboss.ejb.plugins.jms.DLQHandler] Stopping failed DLQHandler > org.jboss.mq.SpyJMSException: Cannot disable the connection with the JMS server; - nested throwable: (java.io.IOException: Client is not connected) > at org.jboss.mq.SpyJMSException.getAsJMSException(SpyJMSException.java:66) > at org.jboss.mq.SpyJMSException.rethrowAsJMSException(SpyJMSException.java:51) > at org.jboss.mq.Connection.doStop(Connection.java:1235) > at org.jboss.mq.Connection.stop(Connection.java:696) > at org.jboss.ejb.plugins.jms.DLQHandler.stopService(DLQHandler.java:177) > at org.jboss.system.ServiceMBeanSupport.jbossInternalStop(ServiceMBeanSupport.java:300) > at org.jboss.system.ServiceMBeanSupport.stop(ServiceMBeanSupport.java:191) > at org.jboss.ejb.plugins.jms.JMSContainerInvoker.innerStopDelivery(JMSContainerInvoker.java:998) > at org.jboss.ejb.plugins.jms.JMSContainerInvoker$ExceptionListenerImpl.run(JMSContainerInvoker.java:1447) > at java.lang.Thread.run()V(Unknown Source) > Caused by: java.io.IOException: Client is not connected > at org.jboss.mq.il.uil2.SocketManager.internalSendMessage(SocketManager.java:238) > at org.jboss.mq.il.uil2.SocketManager.sendMessage(SocketManager.java:206) > at org.jboss.mq.il.uil2.UILServerIL.setEnabled(UILServerIL.java:197) > at org.jboss.mq.Connection.doStop(Connection.java:1231) > ... 7 more > And this is stopping only after either redeploying MDB or restarting JBoss. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |