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

Remove hash detail stats from cbcollect

    XMLWordPrintable

    Details

    • Story Points:
      1

      Description

      During qualification testing of 6.6.0 it was noted that memcached stats hash detail has a sizeable impact on server performance (ops/s).

      The exact cause of that slowdown has not been confirmed, but the belief is that given "hash" must traverse every item in each vBucket's HashTable and (while under lock) accumulate various stats including histograms of chain depth :-

      class HashTableDepthStatVisitor : public HashTableDepthVisitor {
      public:
          void visit(int bucket, int depth, size_t mem) {
              (void)bucket;
              // -1 is a special case for min.  If there's a value other than
              // -1, we prefer that.
              min = std::min(min == -1 ? depth : min, depth);
              max = std::max(max, depth);
              depthHisto.add(depth);
              size += depth;
              memUsed += mem;
          }
      

      While this is being investigated and improved, temporarily remove this stat call from cbcollect to avoid impacting normal operation in customer environments.

        Attachments

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

          Activity

          james.harrison James Harrison created issue -
          james.harrison James Harrison made changes -
          Field Original Value New Value
          Link This issue relates to CBSE-9027 [ CBSE-9027 ]
          james.harrison James Harrison made changes -
          Component/s ns_server [ 10019 ]
          Component/s couchbase-bucket [ 10173 ]
          Assignee Daniel Owen [ owend ]
          james.harrison James Harrison made changes -
          Assignee Daniel Owen [ owend ] James Harrison [ james.harrison ]
          owend Daniel Owen made changes -
          Fix Version/s 6.6.1 [ 17002 ]
          owend Daniel Owen made changes -
          Link This issue blocks MB-41023 [ MB-41023 ]
          owend Daniel Owen made changes -
          Link This issue blocks MB-40528 [ MB-40528 ]
          owend Daniel Owen made changes -
          Labels approved-for-6.6.1
          Hide
          build-team Couchbase Build Team added a comment -

          Build couchbase-server-6.6.1-9144 contains ns_server commit a28eb8f with commit message:
          MB-42092: Remove hash details stats from cbcollect_info

          Show
          build-team Couchbase Build Team added a comment - Build couchbase-server-6.6.1-9144 contains ns_server commit a28eb8f with commit message: MB-42092 : Remove hash details stats from cbcollect_info
          Hide
          build-team Couchbase Build Team added a comment -

          Build couchbase-server-7.0.0-3536 contains ns_server commit a28eb8f with commit message:
          MB-42092: Remove hash details stats from cbcollect_info

          Show
          build-team Couchbase Build Team added a comment - Build couchbase-server-7.0.0-3536 contains ns_server commit a28eb8f with commit message: MB-42092 : Remove hash details stats from cbcollect_info
          james.harrison James Harrison made changes -
          Resolution Done [ 6 ]
          Status Open [ 1 ] Resolved [ 5 ]
          owend Daniel Owen made changes -
          Status Resolved [ 5 ] Closed [ 6 ]
          owend Daniel Owen made changes -
          Resolution Done [ 6 ]
          Status Closed [ 6 ] Reopened [ 4 ]
          Hide
          steve.watanabe Steve Watanabe added a comment -

          Wayne Siu I'm fairly sure all the changes tracked by this ticket are in but will wait for James/Daniel to resolve the ticket.

          Show
          steve.watanabe Steve Watanabe added a comment - Wayne Siu I'm fairly sure all the changes tracked by this ticket are in but will wait for James/Daniel to resolve the ticket.
          Hide
          owend Daniel Owen added a comment -

          Hi all, Apologies. All changes are in. I will mark as resolved.

          Show
          owend Daniel Owen added a comment - Hi all, Apologies. All changes are in. I will mark as resolved.
          owend Daniel Owen made changes -
          Resolution Done [ 6 ]
          Status Reopened [ 4 ] Resolved [ 5 ]
          owend Daniel Owen made changes -
          Assignee James Harrison [ james.harrison ] Daniel Owen [ owend ]
          Status Resolved [ 5 ] Closed [ 6 ]
          drigby Dave Rigby made changes -
          Description {{memcached stats hash detail}} has a sizeable impact on server performance (ops/s). While this is being investigated and improved, temporarily remove this stat call from cbcollect to avoid impacting normal operation in customer environments. During qualification testing of 6.6.0 it was noted that {{memcached stats hash detail}} has a sizeable impact on server performance (ops/s). The exact cause of that slowdown has not bee

          While this is being investigated and improved, temporarily remove this stat call from cbcollect to avoid impacting normal operation in customer environments.
          drigby Dave Rigby made changes -
          Description During qualification testing of 6.6.0 it was noted that {{memcached stats hash detail}} has a sizeable impact on server performance (ops/s). The exact cause of that slowdown has not bee

          While this is being investigated and improved, temporarily remove this stat call from cbcollect to avoid impacting normal operation in customer environments.
          During qualification testing of 6.6.0 it was noted that {{memcached stats hash detail}} has a sizeable impact on server performance (ops/s).

          The exact cause of that slowdown has not been confirmed, but the belief is that given "hash" must traverse every item in each vBucket's HashTable and (while under lock) accumulate various stats including histograms of chain depth :-

          {code:c++}
          class HashTableDepthStatVisitor : public HashTableDepthVisitor {
          public:
              void visit(int bucket, int depth, size_t mem) {
                  (void)bucket;
                  // -1 is a special case for min. If there's a value other than
                  // -1, we prefer that.
                  min = std::min(min == -1 ? depth : min, depth);
                  max = std::max(max, depth);
                  depthHisto.add(depth);
                  size += depth;
                  memUsed += mem;
              }
          {code}

          While this is being investigated and improved, temporarily remove this stat call from cbcollect to avoid impacting normal operation in customer environments.

            People

            Assignee:
            owend Daniel Owen
            Reporter:
            james.harrison James Harrison
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Gerrit Reviews

                There are no open Gerrit changes

                  PagerDuty