Uploaded image for project: 'Couchbase .NET client library'
  1. Couchbase .NET client library
  2. NCBC-1193

Management API Is Broken With KeyNotFoundException

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.3.8
    • Component/s: None
    • Labels:
      None

      Description

      Broken by changeset http://review.couchbase.org/#/c/67263/. HttpServerConfig is constructed using bucketName Administrator when making a BucketManager or ClusterManager. Since there is not matching bucket configured, it fails to get the timeout.

      This may also be an issue for buckets not in the configuration file, which are using default settings.

        Attachments

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

          Activity

          Hide
          jmorris Jeff Morris added a comment -

          Thanks Brant, I will revert http://review.couchbase.org/#/c/67263/

          Show
          jmorris Jeff Morris added a comment - Thanks Brant, I will revert http://review.couchbase.org/#/c/67263/
          Hide
          btburnett3 Brant Burnett added a comment -

          I'm looking at a fix by falling back to the PoolConfiguration when the bucket isn't found. But I feel like the connect timeout is too short for management calls, it's causing me to get lots of timeouts.

          Show
          btburnett3 Brant Burnett added a comment - I'm looking at a fix by falling back to the PoolConfiguration when the bucket isn't found. But I feel like the connect timeout is too short for management calls, it's causing me to get lots of timeouts.
          Hide
          jmorris Jeff Morris added a comment -

          A couple of issues:

          • PoolConfiguration.ConnectTimeout is for K/V socket pool connection timeouts, not for an HTTP request. A new top level (ClientConfiguration or perhaps BucketConfiguration) config property should be created called something like BootstrapTimeout should be added instead (managment API should have its own timeout as well, but that is a different ticket IMO).
          • The CouchbaseHttpClient.Timeout should _always_be set outside of the class since its used in various API's: Views, Management, N1QL, FTS, etc. In this case, I believe it should be set in the CTOR of HttpClientConfig when the CouchbaseHttpClient is instantiated.
          Show
          jmorris Jeff Morris added a comment - A couple of issues: PoolConfiguration.ConnectTimeout is for K/V socket pool connection timeouts, not for an HTTP request. A new top level (ClientConfiguration or perhaps BucketConfiguration) config property should be created called something like BootstrapTimeout should be added instead (managment API should have its own timeout as well, but that is a different ticket IMO). The CouchbaseHttpClient.Timeout should _always_be set outside of the class since its used in various API's: Views, Management, N1QL, FTS, etc. In this case, I believe it should be set in the CTOR of HttpClientConfig when the CouchbaseHttpClient is instantiated.

            People

            • Assignee:
              jmorris Jeff Morris
              Reporter:
              btburnett3 Brant Burnett
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Gerrit Reviews

                There are no open Gerrit changes

                  PagerDuty

                  Error rendering 'com.pagerduty.jira-server-plugin:PagerDuty'. Please contact your Jira administrators.