Uploaded image for project: 'Couchbase Documentation'
  1. Couchbase Documentation
  2. DOC-63

document a set of rules for how to handle various view requests

    XMLWordPrintable

Details

    • Bug
    • Resolution: Won't Fix
    • Critical
    • None
    • None
    • views

    Description

      With the initial 2.0 release, the initial understood contract between the client library and the cluster is that the client library would send requests and the cluster would handle execution of those requests and sending responses. Over the development of the 2.0 series, to handle certain cases relating to new nodes, leaving nodes, and failures that contract has changed.

      At this point in time, there are a few situations we may encounter (and presumed rules):

      • 200 response (good, just pass results back)
      • 301/302 response (follow the "redirect", possibly trigger a configuration update)
      • 404 response (possibly retry on another node... see derived rules)
      • 5xx response (possibly retry on another node with a backoff... see derived rules)

      See the discussion in MB-9915 where a 500 has been encountered and rules which have been derived in Java:
      https://github.com/couchbase/couchbase-java-client/blob/master/src/main/java/com/couchbase/client/http/HttpResponseCallback.java#L144

      This bug is to document the set of rules for clients, which should become part of this doc:
      http://docs.couchbase.com/couchbase-manual-2.5/cb-admin/#querying-using-the-rest-api

      Attachments

        Issue Links

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

          Activity

            People

              simon.dew Simon Dew
              ingenthr Matt Ingenthron
              Votes:
              0 Vote for this issue
              Watchers:
              13 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes

                  PagerDuty