Use of No Local can result in NPE after persistent message recovery
-------------------------------------------------------------------
Key: QPID-1813
URL: https://issues.apache.org/jira/browse/QPID-1813
Project: Qpid
Issue Type: Bug
Components: Java Broker
Affects Versions: M4, M3
Reporter: Martin Ritchie
Assignee: Martin Ritchie
Fix For: 0.5
Summary:
Because we do not store or recover the messages session Identifier (client id)
along with the message on recovery the AMQMessage._sessionIdentifer is never
set so subsequent no_local subscribers from that queue will result in
NullPointerException.
Returning null rather than throwing the NPE in AMQMessage getPublisher* will
result in no_local checks being skipped.
This is ok as the JMS spec for no_local is bound to a TCP connection.. The
_sessionIdentifier will only be null after the message has been recovered from
the messageStore, therefore, the publishing TCP connection will have been lost.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]