0 Replies Latest reply on Sep 22, 2005 8:48 PM by Domingos Creado

    Alias to a remote Context creating a loop

    Domingos Creado Newbie

      Hi there,

      I had two machines running jboss 4.0.2, one is running the JMS (and other stuff) and the other one has a Message Driven Bean listening to a Queue at the first machine.
      The second machine was defined to not overload the first server (each message let the MDB to make a huge amount of work). The result of the work is published at another queue at the first server again.

      To make this distribution transparent, I had setup a alias at second server like this:

       <mbean code="org.jboss.naming.NamingAlias"
       name="jboss.mq:service=NamingAlias,fromName=ConnectionFactory">
       <attribute name="ToName">jnp://second.server.com:1099/ConnectionFactory</attribute>
       <attribute name="FromName">ConnectionFactory</attribute>
       </mbean>
      


      At second server startup the alias behave very well, but when it gets under heavy load, jboss starts to log it many times:

      2005-09-22 13:36:03,607 ERROR [org.jboss.ejb.plugins.jms.DLQHandler - JMSContainerInvoker(RecordAcquirer) Reconnect] Initialization failed DLQHandler
      javax.naming.NamingException: Could not dereference object. Root exception is
      javax.naming.NamingException: Could not dereference object. Root exception is
      javax.naming.NamingException: Could not dereference object. Root exception is
      javax.naming.NamingException: Could not dereference object. Root exception is
      javax.naming.NamingException: Could not dereference object. Root exception is
      javax.naming.NamingException: Could not dereference object. Root exception is
      javax.naming.NamingException: Could not dereference object. Root exception is
      javax.naming.NamingException: Could not dereference object. Root exception is
      javax.naming.NamingException: Could not dereference object. Root exception is
      javax.naming.NameNotFoundException: XAConnectionFactory not bound
       at org.jnp.server.NamingServer.getBinding(NamingServer.java:491)
       at org.jnp.server.NamingServer.getBinding(NamingServer.java:499)
       at org.jnp.server.NamingServer.getObject(NamingServer.java:505)
       at org.jnp.server.NamingServer.lookup(NamingServer.java:278)
       at sun.reflect.GeneratedMethodAccessor11.invoke(Unknown Source)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:41)
       at java.lang.reflect.Method.invoke(Method.java:371)
       at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:278)
       at sun.rmi.transport.Transport$1.run(Transport.java:163)
       at java.security.AccessController.doPrivileged(Native Method)
       at sun.rmi.transport.Transport.serviceCall(Transport.java:159)
       at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:477)
       at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:718)
       at java.lang.Thread.run(Thread.java:568)
       at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:264)
       at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java(Compiled Code))
       at sun.rmi.server.UnicastRef.invoke(UnicastRef.java(Compiled Code))
       at org.jnp.server.NamingServer_Stub.lookup(Unknown Source)
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at javax.naming.InitialContext.lookup(InitialContext.java(Inlined Compiled Code))
       at org.jnp.interfaces.NamingContext.resolveLink(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at javax.naming.InitialContext.lookup(InitialContext.java(Inlined Compiled Code))
       at org.jnp.interfaces.NamingContext.resolveLink(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at javax.naming.InitialContext.lookup(InitialContext.java(Inlined Compiled Code))
       at org.jnp.interfaces.NamingContext.resolveLink(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at javax.naming.InitialContext.lookup(InitialContext.java(Inlined Compiled Code))
       at org.jnp.interfaces.NamingContext.resolveLink(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at javax.naming.InitialContext.lookup(InitialContext.java(Inlined Compiled Code))
       at org.jnp.interfaces.NamingContext.resolveLink(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at javax.naming.InitialContext.lookup(InitialContext.java(Inlined Compiled Code))
       at org.jnp.interfaces.NamingContext.resolveLink(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at javax.naming.InitialContext.lookup(InitialContext.java(Inlined Compiled Code))
       at org.jnp.interfaces.NamingContext.resolveLink(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at javax.naming.InitialContext.lookup(InitialContext.java(Inlined Compiled Code))
       at org.jnp.interfaces.NamingContext.resolveLink(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at javax.naming.InitialContext.lookup(InitialContext.java(Inlined Compiled Code))
       at org.jnp.interfaces.NamingContext.resolveLink(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at javax.naming.InitialContext.lookup(InitialContext.java(Compiled Code))
       at org.jboss.ejb.plugins.jms.DLQHandler.createService(DLQHandler.java:151)
       at org.jboss.system.ServiceMBeanSupport.jbossInternalCreate(ServiceMBeanSupport.java:238)
       at org.jboss.system.ServiceMBeanSupport.create(ServiceMBeanSupport.java:165)
       at org.jboss.ejb.plugins.jms.JMSContainerInvoker.innerCreate(JMSContainerInvoker.java:597)
       at org.jboss.ejb.plugins.jms.JMSContainerInvoker.startService(JMSContainerInvoker.java:922)
       at org.jboss.ejb.plugins.jms.JMSContainerInvoker$ExceptionListenerImpl.run(JMSContainerInvoker.java:1492)
       at java.lang.Thread.run(Thread.java(Compiled Code))
      2005-09-22 13:36:03,609 WARN [org.jboss.ejb.plugins.jms.JMSContainerInvoker - JMSContainerInvoker(RecordAcquirer) Reconnect] JMS provider failure detected:
      javax.naming.NamingException: Could not dereference object. Root exception is
      javax.naming.NamingException: Could not dereference object. Root exception is
      javax.naming.NamingException: Could not dereference object. Root exception is
      javax.naming.NamingException: Could not dereference object. Root exception is
      javax.naming.NamingException: Could not dereference object. Root exception is
      javax.naming.NamingException: Could not dereference object. Root exception is
      javax.naming.NamingException: Could not dereference object. Root exception is
      javax.naming.NamingException: Could not dereference object. Root exception is
      javax.naming.NamingException: Could not dereference object. Root exception is
      javax.naming.NameNotFoundException: XAConnectionFactory not bound
       at org.jnp.server.NamingServer.getBinding(NamingServer.java:491)
       at org.jnp.server.NamingServer.getBinding(NamingServer.java:499)
       at org.jnp.server.NamingServer.getObject(NamingServer.java:505)
       at org.jnp.server.NamingServer.lookup(NamingServer.java:278)
       at sun.reflect.GeneratedMethodAccessor11.invoke(Unknown Source)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:41)
       at java.lang.reflect.Method.invoke(Method.java:371)
       at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:278)
       at sun.rmi.transport.Transport$1.run(Transport.java:163)
       at java.security.AccessController.doPrivileged(Native Method)
       at sun.rmi.transport.Transport.serviceCall(Transport.java:159)
       at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:477)
       at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:718)
       at java.lang.Thread.run(Thread.java:568)
       at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:264)
       at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java(Compiled Code))
       at sun.rmi.server.UnicastRef.invoke(UnicastRef.java(Compiled Code))
       at org.jnp.server.NamingServer_Stub.lookup(Unknown Source)
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at javax.naming.InitialContext.lookup(InitialContext.java(Inlined Compiled Code))
       at org.jnp.interfaces.NamingContext.resolveLink(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at javax.naming.InitialContext.lookup(InitialContext.java(Inlined Compiled Code))
       at org.jnp.interfaces.NamingContext.resolveLink(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at javax.naming.InitialContext.lookup(InitialContext.java(Inlined Compiled Code))
       at org.jnp.interfaces.NamingContext.resolveLink(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at javax.naming.InitialContext.lookup(InitialContext.java(Inlined Compiled Code))
       at org.jnp.interfaces.NamingContext.resolveLink(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at javax.naming.InitialContext.lookup(InitialContext.java(Inlined Compiled Code))
       at org.jnp.interfaces.NamingContext.resolveLink(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at javax.naming.InitialContext.lookup(InitialContext.java(Inlined Compiled Code))
       at org.jnp.interfaces.NamingContext.resolveLink(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at javax.naming.InitialContext.lookup(InitialContext.java(Inlined Compiled Code))
       at org.jnp.interfaces.NamingContext.resolveLink(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at javax.naming.InitialContext.lookup(InitialContext.java(Inlined Compiled Code))
       at org.jnp.interfaces.NamingContext.resolveLink(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at javax.naming.InitialContext.lookup(InitialContext.java(Inlined Compiled Code))
       at org.jnp.interfaces.NamingContext.resolveLink(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java(Compiled Code))
       at javax.naming.InitialContext.lookup(InitialContext.java(Compiled Code))
       at org.jboss.ejb.plugins.jms.DLQHandler.createService(DLQHandler.java:151)
       at org.jboss.system.ServiceMBeanSupport.jbossInternalCreate(ServiceMBeanSupport.java:238)
       at org.jboss.system.ServiceMBeanSupport.create(ServiceMBeanSupport.java:165)
       at org.jboss.ejb.plugins.jms.JMSContainerInvoker.innerCreate(JMSContainerInvoker.java:597)
       at org.jboss.ejb.plugins.jms.JMSContainerInvoker.startService(JMSContainerInvoker.java:922)
       at org.jboss.ejb.plugins.jms.JMSContainerInvoker$ExceptionListenerImpl.run(JMSContainerInvoker.java:1492)
       at java.lang.Thread.run(Thread.java(Compiled Code))
      2005-09-22 13:36:03,610 INFO [org.jboss.ejb.plugins.jms.JMSContainerInvoker - JMSContainerInvoker(RecordAcquirer) Reconnect] Reconnected to JMS provider
      



      the network between servers is a hipersocket (virtual network at zVM - in memory network), i had already monitored it and no single packet lost. So it couldn´t be any network trouble.

      Could that be caused by the load of second server?
      Is JNP well behaved under heavy load?
      Is there any configuration available?

      Thanks in advance