You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "Oleg Zhurakousky (JIRA)" <ji...@apache.org> on 2016/12/08 20:19:58 UTC

[jira] [Created] (NIFI-3172) Provide for a better diagnostics for non-existing exchange vs bad routingKey in PublishAMQP

Oleg Zhurakousky created NIFI-3172:
--------------------------------------

             Summary: Provide for a better diagnostics for non-existing exchange vs bad routingKey in PublishAMQP
                 Key: NIFI-3172
                 URL: https://issues.apache.org/jira/browse/NIFI-3172
             Project: Apache NiFi
          Issue Type: Bug
            Reporter: Oleg Zhurakousky
            Assignee: Oleg Zhurakousky


A user on the mailing list has reported the issue that demonstrated a condition where the first message sent to AMQP always appears to be sent successfully while never reaching its destination. However, the second message  and each subsequent message would fail due to a closed channel exception.
This is due to the fact that the channel was closed as soon as client had determined that the provided exchange does not exist. Now, that could be due to a misconfiguration or as reported by the user and in his case seems to be due to an older version of RabbitMQ/Erlang pair. 
In any event, that was not properly reported to the user of PublishAMQP processor even though the fix for that is relatively simple and that is to check the state of the channel after _basicPublish()_ call (i.e., channel.isOpen()).
Further more, there could also be an issue with the bad _routingKey_ for which, as a part of this ticket, we should register a ReturnListener on the channel, which given that we set _mandatory_ flag to always be true, would allow us to know immediately after basic publish if a Message is routable or not (essentially delivered or not)



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