Reduce warning messages on slow splitVector commands

XMLWordPrintableJSON

    • Fully Compatible
    • Sharding EMEA 2022-11-28
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      The splitVector command internally uses PlanExecutor::YIELD_AUTO in order to enforce automatic yielding. The plan may yield on any call to getNext() if this is non-NULL. This is used to avoid competition for I/O resources. Basically, we could say that they are slow by design to not interfere with application traffic.

      When a splitVector command takes more than 100ms, the default slowMS, it is logged as a W message. Since the query itself is designed to be slower than usual, having a splitVector which needs more than 100ms could be common on some environments and therefore not an indication of any problem.

      W SHARDING [conn349989] Finding the split vector for DB.Collection over { _id: 1.0 } keyCount: 146525 numSplits: 0 lookedAt: 145991 took 121ms

      We should lower the splitVector slow query logging by either lowering the threshold for slow queries or by logging it as Information rather than as Warning.

              Assignee:
              Pol Pinol
              Reporter:
              Gregory McKeon (Inactive)
              Votes:
              1 Vote for this issue
              Watchers:
              8 Start watching this issue

                Created:
                Updated:
                Resolved: