activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From agrabil <greg.ra...@ins.com>
Subject Re: Confusion about dynamicOnly NetworkConnector property
Date Thu, 26 Feb 2009 14:32:13 GMT

Hi Dejan,
Okay, that helps clear my confusion.  I am using AMQ 4.1.1, and
unfortunately I do not have a reproducible case yet.  However, it seems that
the problem occurs after this NPE is thrown on the broker with the producer. 
I've searched the forum for this NPE, but the references appear to be with
5.0.  Any ideas what may be causing this?

2009-02-13 21:39:39,296 [tcher: 12689343] INFO  DemandForwardingBridge        
- Network connection between vm://192.168.78.160#0 and
ssl://192.168.93.12/192.168.93.12:61617 shutdown due to a local error:
java.lang.NullPointerException
2009-02-13 21:39:39,300 [tcher: 12689343] DEBUG DemandForwardingBridge        
- The local Exception was:java.lang.NullPointerException
java.lang.NullPointerException
	at
org.apache.activemq.network.DemandForwardingBridgeSupport.configureMessage(DemandForwardingBridgeSupport.java:475)
	at
org.apache.activemq.network.DemandForwardingBridgeSupport.serviceLocalCommand(DemandForwardingBridgeSupport.java:496)
	at
org.apache.activemq.network.DemandForwardingBridgeSupport$1.onCommand(DemandForwardingBridgeSupport.java:121)
	at
org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:95)
	at
org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:65)
	at
org.apache.activemq.transport.vm.VMTransport.syncOneWay(VMTransport.java:96)
	at org.apache.activemq.transport.vm.VMTransport.oneway(VMTransport.java:83)
	at
org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:47)
	at
org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:60)
	at
org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:1138)
	at
org.apache.activemq.broker.TransportConnection.processDispatch(TransportConnection.java:805)
	at
org.apache.activemq.broker.TransportConnection.iterate(TransportConnection.java:844)
	at
org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:101)
	at
org.apache.activemq.thread.DedicatedTaskRunner.access$000(DedicatedTaskRunner.java:25)
	at
org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:39)



Dejan Bosanac wrote:
> 
> Hi Greg,
> 
> in case of a complex networks (more than two brokers), if
> dynamicOnly=false
> you could end up with messages sent to the broker without consumers and
> because they reached their TTL they won't be forwarded further, so they
> will
> be stuck on that broker. Since you have only two brokers I think your
> problem is of some other nature. What version are you using and can you
> create a reproducable test case?
> 
> 
> Cheers
> --
> Dejan Bosanac
> 
> Open Source Integration - http://fusesource.com/
> ActiveMQ in Action - http://www.manning.com/snyder/
> Blog - http://www.nighttale.net
> 
> 
> On Wed, Feb 25, 2009 at 9:56 PM, agrabil <greg.rabil@ins.com> wrote:
> 
>>
>> Hello,
>> I'm having trouble understanding the proper use for the 'dynamicOnly'
>> NetworkConnector property.  In the table of properties described here
>> http://activemq.apache.org/networks-of-brokers.html, I find this
>> description:
>>
>> dynamicOnly (default=false): if true, only forward messages if a consumer
>> is
>> active on the connected broker
>>
>> Then, on the same page, under Configuration Pitfalls, it reads:
>>
>> If dynamicOnly is set to false and the networkTTL to a low number it's
>> possible that all the messages will end up at a certain broker with no
>> networkTTL left. Therefore you will not be able to receive this messages
>> from a queue if your client isn't connected to this specific broker. To
>> avoid this behavior be sure to set the TTL to a high enough value (at
>> very
>> least the number of brokers the message will pass though in the worst
>> case)
>> and, more important, to set dynamicOnly to true.
>>
>> These statements seem to contradict one another.  According the the
>> description in the table, when dynamicOnly=true, the messages are
>> forwarded
>> to the another broker only if that broker has an active consumer.  Yet,
>> the
>> Configuration Pitfalls note says "If dynamicOnly is set to false... it's
>> possible... you will not be able to receive messages from a queue if your
>> client (i.e. consumer?) isn't connected to this specific broker."
>>
>> I read this over and over, and I keep getting myself wrapped around the
>> axle.  I have a pretty simple setup with two brokers A and B, where I
>> have
>> a
>> consumer on A, and a producer on B, and I have a static connection
>> configured from B to A.  At various times, messages stop being forwarded
>> from broker B to broker A, and thus my consumer sits idle.  I'm trying to
>> determine if I need to set this property and/or the networkTTL.
>>
>> Thanks,
>> Greg Rabil
>>
>>
>>
>> --
>> View this message in context:
>> http://www.nabble.com/Confusion-about-dynamicOnly-NetworkConnector-property-tp22211600p22211600.html
>> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>>
>>
> 
> 
> -----
> Dejan Bosanac
> 
> Open Source Integration - http://fusesource.com/
> ActiveMQ in Action - http://www.manning.com/snyder/
> Blog - http://www.nighttale.net
> 

-- 
View this message in context: http://www.nabble.com/Confusion-about-dynamicOnly-NetworkConnector-property-tp22211600p22225360.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Mime
View raw message