Robbie Gemmell created PROTON-1107:
--------------------------------------

             Summary: [proton-j] only create the attachments Record on a 
Delivery if it actually gets used
                 Key: PROTON-1107
                 URL: https://issues.apache.org/jira/browse/PROTON-1107
             Project: Qpid Proton
          Issue Type: Bug
          Components: proton-j
    Affects Versions: 0.11.1, 0.11.0, 0.10
            Reporter: Robbie Gemmell
            Assignee: Robbie Gemmell
             Fix For: 0.12.0


We should only create the attachments Record on a Delivery if it actually gets 
used.

When the Reactor bits were added in 0.10 via PROTON-881, all of the main engine 
objects were made to implement the 'Extendable' interface that gave them an 
'attachments' 'Record' that can be used to store things, by default seemingly 
just details relating to the Handler heirarchy as used by the Reactor.

In the case of the Delivery objects this currently means every message sent or 
received by the engine creates a RecordImpl object (which in turn holds a 
HashMap). This happens regardless of whether the Reactor is even being used, 
and whether there are any attachments being set/checked on the Delivery. Even 
when the Reactor is being used, by default the lowest level the Handlers seem 
to get looked up when process is called is at the Link level (then Session, 
then Connection, etc) meaning its likely the Delivery attachments will never be 
used unless by the application code.




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

Reply via email to