Uploaded image for project: 'Qpid'
  1. Qpid
  2. QPID-4259

HA broker crash during queue reroute

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.18
    • 0.19
    • C++ Broker
    • None

    Description

      Broker will crash if a priority queue contains deleted messages with NULL payloads (i.e. HA message padding) when a reroute is performed. PriorityQueue::removeIf is missing a guard to only include available messages for the reroute – other classes derived from Messages have the guard.

      Backtrace:
      #0 0x00000036f42091c0 in pthread_mutex_lock () from /lib64/libpthread.so.0
      #1 0x00007f8d9d58297a in qpid::sys::Mutex::lock (this=<value optimized out>) at ../include/qpid/sys/posix/Mutex.h:116
      #2 0x00007f8d9d5fbdaa in ScopedLock (this=0x0) at ../include/qpid/sys/Mutex.h:33
      #3 qpid::broker::Message::clearTrace (this=0x0) at qpid/broker/Message.cpp:389
      #4 0x00007f8d9d61beab in qpid::broker::Queue::purge (this=0x7f8d940111a0, purge_request=<value optimized out>, dest=..., filter=<value optimized out>) at qpid/broker/Queue.

      Attachments

        1. qpid-4259.patch
          0.7 kB
          Jason Dillaman

        Activity

          People

            aconway Alan Conway
            dillaman Jason Dillaman
            Votes:
            1 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: