@Override
        public int hashCode() {
            final int prime = 31;
            int result = 1;
            result = prime * result + ((this.srcMemberId == null) ? 0 : this.srcMemberId.hashCode());
            result = prime * result + ((this.dstMemberId == null) ? 0 : this.dstMemberId.hashCode());
            return result;
        }
<code>ConsumerPair</code> represents a pair of Kafka consumer ids involved in a partition reassignment. Each
<code>ConsumerPair</code> object, which contains a source (<code>src</code>) and a destination (<code>dst</code>)
element, normally corresponds to a particular partition or topic, and indicates that the particular partition or some
partition of the particular topic was moved from the source consumer to the destination consumer during the rebalance.
This class is used, through the <code>PartitionMovements</code> class, by the sticky assignor and helps in determining
whether a partition reassignment results in cycles among the generated graph of consumer pairs.
clients/src/main/java/org/apache/kafka/clients/consumer/internals/AbstractStickyAssignor.java