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

Implement optimization for improved XDCR lag latency

    XMLWordPrintable

Details

    • Improvement
    • Resolution: Fixed
    • Major
    • 2.1.0
    • 2.0, 2.0.1
    • tools, XDCR
    • Security Level: Public

    Description

      This improvement will add an option to optimistically send mutations to the destination without first doing a look-up to see if the mutation is needed on the other side. (without issuing a getwithmeta() ) . This aims to improve XDCR latency by removing the first metadata lookup. getwithmeta() can be a fairly expensive operation given that it may need a disk fetch.

      Users can turn on this optimization using a REST API. We can also have a setting on the UI. Based on performance tests and amount of additional bandwidth required, "latency-optimized XDCR" can be the default setting.

      New REST API will be added as an ns_server parameter. The UI group will work to expose this parameter as a selection "latency-optimized XDCR" or "bandwidth-optimized XDCR" to UI so users can choose appropriate mode when creating replication on UI.

      Today source need ask destination a question "do you really need this document" before indeed sending the doc, resulting in getMeta() op to remote cluster.

      Conflict resolution will still be performed on the destination node when the document arrives. There are a couple of downsides of this feature, if it is used incorrectly. For example it may waste some bandwidth/CPU cycles. You may send a big chunk of document to remote cluster even when it is not needed.

      Attachments

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

        Activity

          People

            abhinav Abhi Dangeti
            junyi Junyi Xie (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty