QueryAnalysisCoordinator Invariant Can Be Triggered When System Is Very Slow

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Fixed
    • Priority: Major - P3
    • 8.2.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Cluster Scalability
    • Fully Compatible
    • ALL
    • ClusterScalability Mar31-Apr14
    • 200
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      QueryAnalysisCoordinator::getNewConfigurationsForSampler will update the last ping time of one of its samplers to now and then later assert that at least one sampler has a last ping time within a threshold. However, the notion of "now" used when updating the sampler's last ping time and calculating the last ping threshold are not the same, so if the system is very slow, it's possible that the just updated sampler is no longer within the threshold, leading to the invariant being violated.

      Instead, _getMinLastPingTime() should accept now as a parameter, so we can ensure that the whole function is using a single notion of "now."

            Assignee:
            Brett Nawrocki
            Reporter:
            Brett Nawrocki
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: