>> 
>> What's happening is that inside a transaction the normal behavior is to 
>> send messages without waiting for a response from the broker (async) 
>> which is why the only way the exception gets noticed is by an exception 
>> listener.  You can however configure this to work by using the option 
>> 'setUseAsyncSend' on the ActiveMQConnectionFactory to force all send to 
>> wait for a response which will then cause the exception to be thrown 
>> from the producer send. 
>> 
>> You can set this on the connection URI via: "tcp:xxx:x?useAsyncSend=false" 
> 
> Thanks!
> 
> I still think that it is bad form that commit() is completed without error 
> when any (or all!) my messages are discarded.
> Even if the message send()-operation is async, the commit() should be sync….
> 
> Anyway, thank you for the configuration tip!

A little update, setting jms.useAsyncSend=false did not help.
According to documentation, jms.useAsyncSend=false is the default.
Also, when not using sendFailIfNoSpace(AfterTimeout), the client is blocked 
until space is available (as expected).
So this is a feature/bug only appearing when using sendFail…






--
View this message in context: 
http://activemq.2283324.n4.nabble.com/Clients-not-receiving-ResourceAllocationException-in-transacted-sessions-tp4670862p4670905.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to