[ https://issues.apache.org/jira/browse/PHOENIX-7015?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17814614#comment-17814614 ]
ASF GitHub Bot commented on PHOENIX-7015: ----------------------------------------- haridsv commented on code in PR #1813: URL: https://github.com/apache/phoenix/pull/1813#discussion_r1479250015 ########## phoenix-core/src/main/java/org/apache/phoenix/util/CDCUtil.java: ########## @@ -110,4 +109,25 @@ public static Scan initForRawScan(Scan scan) { } return scan; } + + public static int compareCellFamilyAndQualifier(byte[] columnFamily1, + byte[] columnQual1, + byte[] columnFamily2, + byte[] columnQual2) { + int familyNameComparison = CDCUtil.compare(columnFamily1, columnFamily2); + if (familyNameComparison != 0) { + return familyNameComparison; + } + return CDCUtil.compare(columnQual1, columnQual2); Review Comment: Oh, I didn't know it was added in Java 9. There is also a `org.apache.hadoop.io.FastByteComparisons#compareTo`? I found a copy of this class in Phoenix that is named as `DescVarLengthFastByteComparisons` that is already being used in several places. I think it is using some native comparator so should be more efficient, besides reducing the code duplication. There is also [org.apache.avro.io.BinaryData#compareBytes](https://github.com/apache/avro/blob/d143d6262f7d6c688e695d1656f8609605835604/lang/java/avro/src/main/java/org/apache/avro/io/BinaryData.java#L183) (requires anew dependency for Phoenix, but it is an existing dependency for HBase) > Extend UncoveredGlobalIndexRegionScanner for CDC region scanner usecase > ----------------------------------------------------------------------- > > Key: PHOENIX-7015 > URL: https://issues.apache.org/jira/browse/PHOENIX-7015 > Project: Phoenix > Issue Type: Sub-task > Reporter: Viraj Jasani > Priority: Major > > For CDC region scanner usecase, extend UncoveredGlobalIndexRegionScanner to > CDCUncoveredGlobalIndexRegionScanner. The new region scanner for CDC performs > raw scan to index table and retrieve data table rows from index rows. > Using the time range, it can form a JSON blob to represent changes to the row > including pre and/or post row images. -- This message was sent by Atlassian Jira (v8.20.10#820010)