You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Timothy Bish (JIRA)" <ji...@apache.org> on 2015/11/17 20:24:11 UTC

[jira] [Commented] (AMQNET-513) Exception message is not propagated in case of consumption failure

    [ https://issues.apache.org/jira/browse/AMQNET-513?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15009315#comment-15009315 ] 

Timothy Bish commented on AMQNET-513:
-------------------------------------

Have you tried this with 1.7.1? There were some additional fixes in there around the ack / poison handling.  

> Exception message is not propagated in case of consumption failure
> ------------------------------------------------------------------
>
>                 Key: AMQNET-513
>                 URL: https://issues.apache.org/jira/browse/AMQNET-513
>             Project: ActiveMQ .Net
>          Issue Type: Bug
>          Components: NMS
>    Affects Versions: 1.6.2, 1.7.0
>            Reporter: Maxim Cherednik
>            Assignee: Jim Gomes
>
> After moving from version 1.6.2 to 1.7 we lost some functionality we were relying on.
> When we were failing to process message 6 times, it was moved to the Activemq.DLQ and the property dlqDeliveryFailureCause was filled with Exception message which was raised during the processing.
> After version update - the exception message is not propagated. This message instead:
> javax.jms.JMSException: Exceeded RedeliveryPolicy limit: 6
> Maybe there are other way to track which client failed to process message and why(exception message) ?
> Code sample:
> {code:title=Consumer.cs|borderStyle=solid}
> static void Consume()
>         {
>             var brokerUri = "";
>             var clientId = "test";
>             var connFactory = new ConnectionFactory(brokerUri, clientId);
>             _connection = connFactory.CreateConnection();
>             _connection.ExceptionListener += _connection_ExceptionListener;
>             _connection.ConnectionResumedListener += _connection_ConnectionResumedListener;
>             _connection.ConnectionInterruptedListener += _connection_ConnectionInterruptedListener;
>             var session = _connection.CreateSession(AcknowledgementMode.AutoAcknowledge);
>             var q = session.GetTopic("TopicName");
>             var queue = session.CreateDurableConsumer(q, clientId, null, false);
>             queue.Listener += msgsConsumer_Listener;
>             _connection.Start();
>         }
>         static void msgsConsumer_Listener(IMessage message)
>         {
>             Console.WriteLine("Consumed: " + message.NMSMessageId);
>             
>             throw new InvalidOperationException("Maxxxxxxx", new Exception("Maxxxxxxx"));
>         }
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)