-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/16245/#review30344
-----------------------------------------------------------



/trunk/qpid/cpp/src/qpid/broker/Observers.h
<https://reviews.apache.org/r/16245/#comment58072>

    For queue 'events' this would take a copy of all observers on each such 
event, whereas before this the observers would have been iterated over under a 
lock, right?
    
    This means that we copy the set for every enqueue and dequeue for example. 
Is there any concern that would affect performance?
    
    Could we instead have two versions of each, one where the lock is passed 
in, avoiding the need to copy? If I'm not mistaken, it is held in any case 
across the each() call for enqueue/dequeue.


- Gordon Sim


On Dec. 13, 2013, 3:16 p.m., Alan Conway wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/16245/
> -----------------------------------------------------------
> 
> (Updated Dec. 13, 2013, 3:16 p.m.)
> 
> 
> Review request for qpid and Gordon Sim.
> 
> 
> Repository: qpid
> 
> 
> Description
> -------
> 
> NO-JIRA: Refactor: clean up QueeuObservers.
> 
> Refactor of queue observers to use the broker::Observers base class. 
> Simplifies Queue code
> and makes it more consistent with other observers (BrokerObservers, 
> ConnectionObservers.)
> 
> Modified Observers base class to allow identical locking behaviour to previous
> impementation.
> 
> 
> Diffs
> -----
> 
>   /trunk/qpid/cpp/src/qpid/broker/BrokerObservers.h 1550190 
>   /trunk/qpid/cpp/src/qpid/broker/ConnectionObservers.h 1550190 
>   /trunk/qpid/cpp/src/qpid/broker/Observers.h 1550190 
>   /trunk/qpid/cpp/src/qpid/broker/Queue.h 1550190 
>   /trunk/qpid/cpp/src/qpid/broker/Queue.cpp 1550190 
>   /trunk/qpid/cpp/src/qpid/broker/QueueFactory.cpp 1550190 
>   /trunk/qpid/cpp/src/qpid/broker/QueueFlowLimit.cpp 1550190 
>   /trunk/qpid/cpp/src/qpid/broker/QueueObservers.h PRE-CREATION 
>   /trunk/qpid/cpp/src/qpid/broker/ThresholdAlerts.cpp 1550190 
>   /trunk/qpid/cpp/src/qpid/ha/QueueGuard.cpp 1550190 
>   /trunk/qpid/cpp/src/qpid/ha/QueueReplicator.cpp 1550190 
>   /trunk/qpid/cpp/src/qpid/ha/QueueSnapshots.h 1550190 
>   /trunk/qpid/cpp/src/qpid/ha/ReplicatingSubscription.cpp 1550190 
> 
> Diff: https://reviews.apache.org/r/16245/diff/
> 
> 
> Testing
> -------
> 
> Full ctest
> 
> 
> Thanks,
> 
> Alan Conway
> 
>

Reply via email to