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

C++ Broker crashes on persistence-based stress tests.

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: 0.10
    • Fix Version/s: 0.10
    • Component/s: C++ Broker
    • Labels:
      None

      Description

      While running under our persistence stress test suite, the C++ broker will occasionally crash with:

      Thread 1 (process 29629):
      #0 qpid::broker::SessionHandler::getConnection (this=0x0) at
      qpid/broker/SessionHandler.cpp:62
      #1 0x0000002a958037e4 in
      qpid::broker::SessionState::AsyncCommandCompleter::scheduleMsgCompletion
      (this=Variable "this" is not available.
      ) at ./qpid/RefCounted.h:42
      #2 0x0000002a95803b79 in
      qpid::broker::SessionState::IncompleteIngressMsgXfer::completed
      (this=0x2a9d8fc490, sync=Variable "sync" is not available.
      )
      <persistence code completes message enqueue>

      It appears that there is a window where the session is detached when the completion occurs, which results in a null pointer reference.

        Attachments

          Activity

            People

            • Assignee:
              kgiusti Ken Giusti
              Reporter:
              kgiusti Ken Giusti
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: