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

Fix engine locked error handling

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Major
    • 6.5.0
    • 5.0.0, 6.5.0
    • XDCR

    Description

      When XDCR sends a SetWithMeta request to target, and target local mutation is locked, as of now a KEY_EEXISTS response is sent from target cluster, which gets ignored by XDCR. As a result, the source mutation is never sent to target. This could lead to data loss.

      The planned fix is:
      1. Set Xerror feature when sending HELO message to target server.
      2. Afterward, target server will send back a LOCKED response instead of the previous KEY_EEXISTS response.
      3. When XDCR receives the LOCKED response, it will resend the mutation with exponential backoff. Eventually, after the local mutation gets unlocked, the source mutation will be replicated to target and the normal conflict resolution will be applied.

      Attachments

        Issue Links

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

          Activity

            People

              yu Yu Sui (Inactive)
              yu Yu Sui (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes

                  PagerDuty