Qpid
  1. Qpid
  2. QPID-3394

Broker "leaks" messages that require async completion.

    Details

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

      Description

      The fix for QPID-3252 introduced a bug where messages that require async completion (ie. durable, or flow controlled) are incorrectly stored by the broker until the sender sends an explicit flush. This can cause a excessive amount of memory to be consumed by the broker.

        Issue Links

          Activity

          Hide
          Justin Ross added a comment -

          Reviewed by Gordon Sim. Approved for inclusion in 0.12.

          Show
          Justin Ross added a comment - Reviewed by Gordon Sim. Approved for inclusion in 0.12.
          Hide
          Ken Giusti added a comment -

          Request to merge this fix onto 0.12 branch.

          Show
          Ken Giusti added a comment - Request to merge this fix onto 0.12 branch.
          Hide
          Ken Giusti added a comment -

          Kim validated the fix against his test setup.

          Show
          Ken Giusti added a comment - Kim validated the fix against his test setup.
          Hide
          jiraposter@reviews.apache.org added a comment -

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

          Ship it!

          • Gordon

          On 2011-08-04 18:28:10, Kenneth Giusti wrote:

          -----------------------------------------------------------

          This is an automatically generated e-mail. To reply, visit:

          https://reviews.apache.org/r/1292/

          -----------------------------------------------------------

          (Updated 2011-08-04 18:28:10)

          Review request for qpid and Gordon Sim.

          Summary

          -------

          Bug occurred due to state change in object without updating the clone of the object. The clone "lost" the state change, and the message was not correctly cleaned up. This change introduces a proper copy constructor and creates the copy after all state has been updated.

          This addresses bug qpid-3394.

          https://issues.apache.org/jira/browse/qpid-3394

          Diffs

          -----

          /trunk/qpid/cpp/src/qpid/broker/SessionState.h 1153918

          /trunk/qpid/cpp/src/qpid/broker/SessionState.cpp 1153918

          Diff: https://reviews.apache.org/r/1292/diff

          Testing

          -------

          in progress.

          Thanks,

          Kenneth

          Show
          jiraposter@reviews.apache.org added a comment - ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/1292/#review1293 ----------------------------------------------------------- Ship it! Gordon On 2011-08-04 18:28:10, Kenneth Giusti wrote: ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/1292/ ----------------------------------------------------------- (Updated 2011-08-04 18:28:10) Review request for qpid and Gordon Sim. Summary ------- Bug occurred due to state change in object without updating the clone of the object. The clone "lost" the state change, and the message was not correctly cleaned up. This change introduces a proper copy constructor and creates the copy after all state has been updated. This addresses bug qpid-3394. https://issues.apache.org/jira/browse/qpid-3394 Diffs ----- /trunk/qpid/cpp/src/qpid/broker/SessionState.h 1153918 /trunk/qpid/cpp/src/qpid/broker/SessionState.cpp 1153918 Diff: https://reviews.apache.org/r/1292/diff Testing ------- in progress. Thanks, Kenneth
          Hide
          jiraposter@reviews.apache.org added a comment -

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

          Review request for qpid and Gordon Sim.

          Summary
          -------

          Bug occurred due to state change in object without updating the clone of the object. The clone "lost" the state change, and the message was not correctly cleaned up. This change introduces a proper copy constructor and creates the copy after all state has been updated.

          This addresses bug qpid-3394.
          https://issues.apache.org/jira/browse/qpid-3394

          Diffs


          /trunk/qpid/cpp/src/qpid/broker/SessionState.h 1153918
          /trunk/qpid/cpp/src/qpid/broker/SessionState.cpp 1153918

          Diff: https://reviews.apache.org/r/1292/diff

          Testing
          -------

          in progress.

          Thanks,

          Kenneth

          Show
          jiraposter@reviews.apache.org added a comment - ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/1292/ ----------------------------------------------------------- Review request for qpid and Gordon Sim. Summary ------- Bug occurred due to state change in object without updating the clone of the object. The clone "lost" the state change, and the message was not correctly cleaned up. This change introduces a proper copy constructor and creates the copy after all state has been updated. This addresses bug qpid-3394. https://issues.apache.org/jira/browse/qpid-3394 Diffs /trunk/qpid/cpp/src/qpid/broker/SessionState.h 1153918 /trunk/qpid/cpp/src/qpid/broker/SessionState.cpp 1153918 Diff: https://reviews.apache.org/r/1292/diff Testing ------- in progress. Thanks, Kenneth
          Hide
          Ken Giusti added a comment -

          Proposed fix.

          Show
          Ken Giusti added a comment - Proposed fix.

            People

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

              Dates

              • Created:
                Updated:
                Resolved:

                Development