Uploaded image for project: 'Couchbase Java Client'
  1. Couchbase Java Client
  2. JCBC-1616

[Durability]Subdoc replace/remove over the sync_write locked document returns 'SYNC_WRITE_AMBIGUOUS'

    XMLWordPrintable

Details

    Description

      Build: 6.5.0-4960

      Scenario:

      1. 2 node cluster, Couchbase bucket(replica=1)
      2. Load one document 'doc_1'
      3. New client is created to perform step#4 and Stop Memcached on replica node (kill -STOP)
      4. Perform sub_doc insert for 'doc_1' from client-1 with timeout=60, durability=MAJORITY
      5. Perform sub_doc replace/delete over the same doc 'doc_1' and same subdoc_path as step#4 using client-2

      Observation:

      Sub_doc replace/remove operation returns DurabilityAmbiguousException with reason: SYNC_WRITE_AMBIGUOUS

      {u'xattrs-0': {'error': com.couchbase.client.core.error.DurabilityAmbiguousException: The server returned with a durability ambiguous response on this request {"status":"SYNC_WRITE_AMBIGUOUS"}, 'cas': 0, 'value': None}}

      Expected behavior:

      Since doc_1 is already under sync_write locked state, we should see 'AmbiguousTimeoutException' with reason 'KV_SYNC_WRITE_IN_PROGRESS' due to continuous retries configured from SDK side.

      Note:

      Marking this as regression since this case worked with 6.5.0-4947 using SDK-beta.1
      As per 6.5.0-4947, expected sdk exception was 'TimeoutException' with reason 'KV_SYNC_WRITE_IN_PROGRESS'
      

      Testcase:

      subdoc.subdoc_xattr.SubdocXattrDurabilityTest.test_subdoc_sync_write_in_progress,nodes_init=2,replicas=1,sdk_timeout=60,xattr=False,durabiilty=MAJORITY
      

      Attachments

        1. collectinfo-2020-01-03T105049-ns_1@10.112.191.101.zip
          1.54 MB
        2. collectinfo-2020-01-03T105049-ns_1@10.112.191.102.zip
          1.53 MB
        3. JavaSDK.log
          2.20 MB
        4. pcap.png
          pcap.png
          387 kB
        5. subdoc_mutation.pcapng
          6.87 MB
        6. subdoc_syncwrite_ambiguous.pcapng
          848 kB
        7. test.log
          17 kB
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            daschl Michael Nitschinger
            ashwin.govindarajulu Ashwin Govindarajulu
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty