Class NodePreferenceRulesComparator

  • All Implemented Interfaces:

    public class NodePreferenceRulesComparator
    extends Object
    implements Comparator<Object>
    This comparator makes sure that the given replicas are sorted according to the given list of preferences. E.g. If all nodes prefer local cores then a bad/heavily-loaded node will receive less requests from healthy nodes. This will help prevent a distributed deadlock or timeouts in all the healthy nodes due to one bad node.

    Optional final preferenceRule is *not* used for pairwise sorting, but instead defines how "equivalent" replicas will be ordered (the base ordering). Defaults to "random"; may specify "stable".