diff --git a/hbase-spark/src/main/scala/org/apache/hadoop/hbase/spark/KeyFamilyQualifier.scala b/hbase-spark/src/main/scala/org/apache/hadoop/hbase/spark/KeyFamilyQualifier.scala index 7fd5a62..eca5fb8 100644 --- a/hbase-spark/src/main/scala/org/apache/hadoop/hbase/spark/KeyFamilyQualifier.scala +++ b/hbase-spark/src/main/scala/org/apache/hadoop/hbase/spark/KeyFamilyQualifier.scala @@ -30,19 +30,28 @@ import org.apache.hadoop.hbase.util.Bytes * @param rowKey Record RowKey * @param family Record ColumnFamily * @param qualifier Cell Qualifier + * @param timestamp Cell timestamp */ @InterfaceAudience.Public -class KeyFamilyQualifier(val rowKey:Array[Byte], val family:Array[Byte], val qualifier:Array[Byte]) +class KeyFamilyQualifier(val rowKey:Array[Byte], + val family:Array[Byte], + val qualifier:Array[Byte], + val timestamp:Long = 0) extends Comparable[KeyFamilyQualifier] with Serializable { override def compareTo(o: KeyFamilyQualifier): Int = { var result = Bytes.compareTo(rowKey, o.rowKey) if (result == 0) { result = Bytes.compareTo(family, o.family) - if (result == 0) result = Bytes.compareTo(qualifier, o.qualifier) + if (result == 0) { + result = Bytes.compareTo(qualifier, o.qualifier) + if (result == 0) { + result = o.timestamp.compareTo(timestamp) + } + } } result } override def toString: String = { - Bytes.toString(rowKey) + ":" + Bytes.toString(family) + ":" + Bytes.toString(qualifier) + Bytes.toString(rowKey) + ":" + Bytes.toString(family) + ":" + Bytes.toString(qualifier) + ":" + timestamp } }