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

Add bucket names and UUIDs to pools/default

    XMLWordPrintable

Details

    • 1

    Description

      The pools/default and poolsStreaming/default REST APIs include buckets information that looks as follows:

        "buckets": {
          "uri": "/pools/default/buckets?v=130952479&uuid=c10473a6ba27997b3666ede9086b55f6",
          "terseBucketsBase": "/pools/default/b/",
          "terseStreamingBucketsBase": "/pools/default/bs/"
        },
      

      The version hash (?v=...) is computed from the following information:

      • bucket names
      • bucket UUIDs
      • node statuses for each of the servers associated with the buckets

      Some clients watch for changes in this version hash to then call pools/default/buckets to find out if a new bucket has appeared or an older bucket has disappeared. However, the pools/default/buckets REST API is heavy and not easily optimizable. If we explicitly included bucket names and UUIDs in the pools/default & poolsStreaming/default REST APIs, clients would be able to easily determine whether there's a change in the bucket list without going to pools/default/buckets.

      In addition including this information would not cause the poolsStreaming endpoint to notify more frequently (because this information is already reflected in the version hash) and the quantity of extra information that would be added to the pools/default payload seems acceptable.

      Attachments

        Issue Links

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

          Activity

            People

              hareen.kancharla Hareen Kancharla
              dfinlay Dave Finlay
              Votes:
              0 Vote for this issue
              Watchers:
              14 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  PagerDuty