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

[Durability]: SDK throwing 'RequestTimeoutException' instead of 'DurableWriteInProgressException'

    XMLWordPrintable

Details

    • Bug
    • Resolution: Incomplete
    • Critical
    • 3.0.0-beta.1
    • 3.0.0-alpha.7
    • Core
    • core-io-2.0.0-alpha.7.jar
      java-client-3.0.0-alpha.7.jar

    Description

      Steps to reproduce:

      1. 2 node cluster, Couchbase bucket (replica=1)
      2. Stop Memcached on replica node using `kill -STOP`
      3. Load 1 doc from client-1 that targets active node with large timeout and durability=MAJORITY
      4. Perform same mutation from Client-2 on same doc

      Observation:

      In step #4, SDK raises 'RequestTimeoutException'. But expected to raise 'DurableWriteInProgressException'. As per the Wireshark logs, SDK received the response code "0x00a2" which maps to KV's SyncWriteInProgress

      Note: The same tests works fine with alpha-6 release.

      SDK responses in test case:

      com.couchbase.client.core.error.RequestTimeoutException: ReplaceRequest {"retried":17,"reason":"TIMEOUT","requestId":11372,"timeoutMs":5000,"service":{"bucket":"default","scope":{"present":true},"collection":{"present":true},"type":"kv","key":"test_docs-1"},"timings":null,"cancelled":true,"coreId":18,"completed":true,"retryReasons":["KV_SYNC_WRITE_IN_PROGRESS"]}
      2019-09-11 09:15:31,665 | test  | ERROR   | MainThread | [basetestcase:log_failure:418] Invalid exception for test_docs-1: com.couchbase.client.core.error.RequestTimeoutException: ReplaceRequest {"retried":17,"reason":"TIMEOUT","requestId":11372,"timeoutMs":5000,"service":{"bucket":"default","scope":{"present":true},"collection":{"present":true},"type":"kv","key":"test_docs-1"},"timings":null,"cancelled":true,"coreId":18,"completed":true,"retryReasons":["KV_SYNC_WRITE_IN_PROGRESS"]}
      2019-09-11 09:15:36,756 | infra | ERROR   | MainThread | [sdk_client3:replace:476] Something else happened: com.couchbase.client.core.error.RequestTimeoutException: ReplaceRequest {"retried":17,"reason":"TIMEOUT","requestId":11514,"timeoutMs":5000,"service":{"bucket":"default","scope":{"present":true},"collection":{"present":true},"type":"kv","key":"test_docs-2"},"timings":null,"cancelled":true,"coreId":18,"completed":true,"retryReasons":["KV_SYNC_WRITE_IN_PROGRESS"]}
      2019-09-11 09:15:36,757 | test  | ERROR   | MainThread | [basetestcase:log_failure:418] Invalid exception for test_docs-2: com.couchbase.client.core.error.RequestTimeoutException: ReplaceRequest {"retried":17,"reason":"TIMEOUT","requestId":11514,"timeoutMs":5000,"service":{"bucket":"default","scope":{"present":true},"collection":{"present":true},"type":"kv","key":"test_docs-2"},"timings":null,"cancelled":true,"coreId":18,"completed":true,"retryReasons":["KV_SYNC_WRITE_IN_PROGRESS"]}
      2019-09-11 09:15:41,857 | infra | ERROR   | MainThread | [sdk_client3:replace:476] Something else happened: com.couchbase.client.core.error.RequestTimeoutException: ReplaceRequest {"retried":17,"reason":"TIMEOUT","requestId":11662,"timeoutMs":5000,"service":{"bucket":"default","scope":{"present":true},"collection":{"present":true},"type":"kv","key":"test_docs-4"},"timings":null,"cancelled":true,"coreId":18,"completed":true,"retryReasons":["KV_SYNC_WRITE_IN_PROGRESS"]}
      2019-09-11 09:15:41,862 | test  | ERROR   | MainThread | [basetestcase:log_failure:418] Invalid exception for test_docs-4: com.couchbase.client.core.error.RequestTimeoutException: ReplaceRequest {"retried":17,"reason":"TIMEOUT","requestId":11662,"timeoutMs":5000,"service":{"bucket":"default","scope":{"present":true},"collection":{"present":true},"type":"kv","key":"test_docs-4"},"timings":null,"cancelled":true,"coreId":18,"completed":true,"retryReasons":["KV_SYNC_WRITE_IN_PROGRESS"]}
      2019-09-11 09:15:46,959 | infra | ERROR   | MainThread | [sdk_client3:replace:476] Something else happened: com.couchbase.client.core.error.RequestTimeoutException: ReplaceRequest {"retried":17,"reason":"TIMEOUT","requestId":11788,"timeoutMs":5000,"service":{"bucket":"default","scope":{"present":true},"collection":{"present":true},"type":"kv","key":"test_docs-7"},"timings":null,"cancelled":true,"coreId":18,"completed":true,"retryReasons":["KV_SYNC_WRITE_IN_PROGRESS"]}
      2019-09-11 09:15:46,960 | test  | ERROR   | MainThread | [basetestcase:log_failure:418] Invalid exception for test_docs-7: com.couchbase.client.core.error.RequestTimeoutException: ReplaceRequest {"retried":17,"reason":"TIMEOUT","requestId":11788,"timeoutMs":5000,"service":{"bucket":"default","scope":{"present":true},"collection":{"present":true},"type":"kv","key":"test_docs-7"},"timings":null,"cancelled":true,"coreId":18,"completed":true,"retryReasons":["KV_SYNC_WRITE_IN_PROGRESS"]}
      2019-09-11 09:15:52,059 | infra | ERROR   | MainThread | [sdk_client3:replace:476] Something else happened: com.couchbase.client.core.error.RequestTimeoutException: ReplaceRequest {"retried":17,"reason":"TIMEOUT","requestId":11936,"timeoutMs":5000,"service":{"bucket":"default","scope":{"present":true},"collection":{"present":true},"type":"kv","key":"test_docs-8"},"timings":null,"cancelled":true,"coreId":18,"completed":true,"retryReasons":["KV_SYNC_WRITE_IN_PROGRESS"]}
      2019-09-11 09:15:52,065 | test  | ERROR   | MainThread | [basetestcase:log_failure:418] Invalid exception for test_docs-8: com.couchbase.client.core.error.RequestTimeoutException: ReplaceRequest {"retried":17,"reason":"TIMEOUT","requestId":11936,"timeoutMs":5000,"service":{"bucket":"default","scope":{"present":true},"collection":{"present":true},"type":"kv","key":"test_docs-8"},"timings":null,"cancelled":true,"coreId":18,"completed":true,"retryReasons":["KV_SYNC_WRITE_IN_PROGRESS"]}
      

      Attachments

        For Gerrit Dashboard: JCBC-1443
        # Subject Branch Project Status CR V

        Activity

          People

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

            Dates

              Created:
              Updated:
              Resolved:

              PagerDuty