[ 
https://issues.apache.org/jira/browse/AMQNET-513?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Maxim Cherednik updated AMQNET-513:
-----------------------------------
    Description: 
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}

  was:
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) ?


> 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)

Reply via email to