Uploaded image for project: 'Couchbase Server'
  1. Couchbase Server
  2. MB-4195

append/prepend leaks item memory on CAS mismatch


    • Type: Bug
    • Status: Closed
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: 1.7.1
    • Fix Version/s: None
    • Component/s: couchbase-bucket
    • Security Level: Public
    • Labels:


      Chiyoung found one case of memory leak with append/prepend in the 1.7.x ep-engine code. The scenario is...

      If the client app is using CAS with their append/prepend operations, and they have concurrent clients trying to append to the same hot item, then several of the concurrent clients could be "rejected" in that their CAS values are out of date. The rejected CAS-mismatch clients would see a EEXISTS error code if they're binary protocol clients. These requests that have rejected CAS-mismatch will leak the item.

      This should also be reproducible with a single client, where any append operations use a bogus CAS number.

      # Subject Project Status CR V
      For Gerrit Dashboard: &For+MB-4195=message:MB-4195


        steve Steve Yen created issue -
        chiyoung Chiyoung Seo made changes -
        Field Original Value New Value
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        chiyoung Chiyoung Seo made changes -
        Status Resolved [ 5 ] Closed [ 6 ]
        farshid Farshid Ghods (Inactive) made changes -
        Component/s couchbase-bucket [ 10173 ]
        Component/s ep_engine [ 10013 ]


          • Assignee:
            chiyoung Chiyoung Seo
            steve Steve Yen
          • Votes:
            0 Vote for this issue
            0 Start watching this issue


            • Created:

              Gerrit Reviews

              There are no open Gerrit changes