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

Remove hash detail stats from cbcollect

    XMLWordPrintable

Details

    • 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

        Issue Links

          Activity

            People

              owend Daniel Owen
              james.harrison James Harrison (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                PagerDuty