in spark/hbase-spark/src/main/scala/org/apache/hadoop/hbase/spark/DefaultSource.scala [664:683]
def mergeUnion(other: ScanRange): Unit = {
val upperBoundCompare = compareRange(upperBound, other.upperBound)
val lowerBoundCompare = compareRange(lowerBound, other.lowerBound)
upperBound = if (upperBoundCompare > 0) upperBound else other.upperBound
lowerBound = if (lowerBoundCompare < 0) lowerBound else other.lowerBound
isLowerBoundEqualTo =
if (lowerBoundCompare == 0)
isLowerBoundEqualTo || other.isLowerBoundEqualTo
else if (lowerBoundCompare < 0) isLowerBoundEqualTo
else other.isLowerBoundEqualTo
isUpperBoundEqualTo =
if (upperBoundCompare == 0)
isUpperBoundEqualTo || other.isUpperBoundEqualTo
else if (upperBoundCompare < 0) other.isUpperBoundEqualTo
else isUpperBoundEqualTo
}