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

XDCR - Remove Request/ResponseCommon mutex members

    XMLWordPrintable

Details

    • Task
    • Resolution: Fixed
    • Minor
    • Morpheus
    • Morpheus
    • XDCR
    • None
    • 0

    Description

      Currently both the RequestCommon and ResponseCommon hold a member lock of type sync.RWMutex, which gets copied between usage.

      E.g. - There's a call to RecordEnqueuedTime(), after which the object is sent over a channel, and then there's a call to GetEnqueuedTime()

      Updates:

      • Changing the data type to pointer (*sync.RWMutex) will not help as it is an unexported member and thus cannot be initialised by structures using it outside of the declaration package.
      • Hence the fix will be to remove the locks altogether, as the "enqueuedTime" write & read is separated by a channel send/receive operation. 

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            aditya.sood Aditya Sood
            aditya.sood Aditya Sood
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty