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

ns_server should send 302 reply when view query hits node without any active vbuckets

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: 2.0
    • Fix Version/s: 2.0
    • Component/s: ns_server
    • Security Level: Public
    • Labels:
      None

      Description

      Client's would like to cache list of bucket's nodes. Currently when node is rebalanced out there's period of time when it doesn't have any active vbuckets left. Our view merger cannot deal with that so we currently return 404.

      But SDK folks would like us to handle it similarly to not-my-vbucket at memcached level. And they want to send back 302 with some random node with vbuckets in Location.

      update: I think I wasn't clear enough. 404 is hard to interpret from client perspective. It may mean 'no such ddoc exist' or 'no such bucket exists' or currently 'you cannot query this node'. 302 instead of 404 for such condition would be much clearer signal to client.

        Issue Links

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

          Activity

          alkondratenko Aleksey Kondratenko (Inactive) created issue -
          alkondratenko Aleksey Kondratenko (Inactive) made changes -
          Field Original Value New Value
          Description Client's would like to cache list of bucket's nodes. Currently when node is rebalanced out there's period of time when it doesn't have any active vbuckets left. Our view merger cannot deal with that so we currently return 404.

          But SDK folks would like us to handle it similarly to not-my-vbucket at memcached level. And they want to send back 302 with some random node with vbuckets in Location.
          Client's would like to cache list of bucket's nodes. Currently when node is rebalanced out there's period of time when it doesn't have any active vbuckets left. Our view merger cannot deal with that so we currently return 404.

          But SDK folks would like us to handle it similarly to not-my-vbucket at memcached level. And they want to send back 302 with some random node with vbuckets in Location.

          update: I think I wasn't clear enough. 404 is hard to interpret from client perspective. It may mean 'no such ddoc exist' or 'no such bucket exists' or currently 'you cannot query this node'. 302 instead of 404 for such condition would be much clearer signal to client.
          iryna iryna made changes -
          Comment [ verified on build 1854
          change - http://review.couchbase.org/#/c/21657/

          302 is returned. But on UI error is not user-friendly: {"error":{"xhrStatus":"error","errMsg":""}}
          attaching screenshot ]
          iryna iryna made changes -
          Attachment No_active_vbuckets_UI.png [ 15436 ]
          farshid Farshid Ghods (Inactive) made changes -
          Status Open [ 1 ] Closed [ 6 ]
          Resolution Fixed [ 1 ]
          avsej Sergey Avseyev made changes -
          Link This issue blocks CCBC-169 [ CCBC-169 ]
          alkondratenko Aleksey Kondratenko (Inactive) made changes -
          Link This issue duplicates MB-7661 [ MB-7661 ]

            People

            • Assignee:
              alkondratenko Aleksey Kondratenko (Inactive)
              Reporter:
              alkondratenko Aleksey Kondratenko (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