Review Board 1.7.22


QPID-3773: generate unique queue names for bridge queues.

Review Request #3560 - Created Jan. 19, 2012 and submitted

Kenneth Giusti
qpid-3773
Reviewers
qpid
gordon, mick, tross
qpid
The fix replaces the per-broker federation uuid with a unique uuid for each queue created.

I'm not aware of anything that is sensitive to the current format of the bridge queue name, and expects to find a federation uuid in the name.

-K

 

Diff revision 1 (Latest)

  1. /trunk/qpid/cpp/src/qpid/broker/Bridge.cpp: Loading...
/trunk/qpid/cpp/src/qpid/broker/Bridge.cpp
Revision 1233125 New Change
[20] 46 lines
[+20] [+] void Bridge::PushHandler::handle(framing::AMQFrame& frame)
47
}
47
}
48

    
   
48

   
49
Bridge::Bridge(Link* _link, framing::ChannelId _id, CancellationListener l,
49
Bridge::Bridge(Link* _link, framing::ChannelId _id, CancellationListener l,
50
               const _qmf::ArgsLinkBridge& _args) : 
50
               const _qmf::ArgsLinkBridge& _args) : 
51
    link(_link), id(_id), args(_args), mgmtObject(0),
51
    link(_link), id(_id), args(_args), mgmtObject(0),
52
    listener(l), name(Uuid(true).str()), queueName("bridge_queue_"), persistenceId(0)
52
    listener(l), name(Uuid(true).str()), queueName("qpid.bridge_queue_"), persistenceId(0)
53
{
53
{
54
    std::stringstream title;
54
    std::stringstream title;
55
    title << id << "_" << link->getBroker()->getFederationTag();
55
    title << id << "_" << name;
56
    queueName += title.str();
56
    queueName += title.str();
57
    ManagementAgent* agent = link->getBroker()->getManagementAgent();
57
    ManagementAgent* agent = link->getBroker()->getManagementAgent();
58
    if (agent != 0) {
58
    if (agent != 0) {
59
        mgmtObject = new _qmf::Bridge
59
        mgmtObject = new _qmf::Bridge
60
            (agent, this, link, id, args.i_durable, args.i_src, args.i_dest,
60
            (agent, this, link, id, args.i_durable, args.i_src, args.i_dest,
[+20] [20] 268 lines
  1. /trunk/qpid/cpp/src/qpid/broker/Bridge.cpp: Loading...