junegunn commented on code in PR #8360:
URL: https://github.com/apache/hbase/pull/8360#discussion_r3426012472


##########
hbase-client/src/main/java/org/apache/hadoop/hbase/filter/FuzzyRowFilter.java:
##########
@@ -231,6 +231,13 @@ public Cell getNextCellHint(Cell currentCell) {
       return null;
     }
     byte[] nextRowKey = tracker.nextRow();
+    if (isReversed() && !tracker.lessThan(currentCell, nextRowKey)) {
+      // StoreScanner only seeks on reverse hints that compare before the 
current cell.
+      // createLastOnRow(currentCell) creates the last possible cell on the 
current row, which does
+      // not satisfy that condition. StoreScanner then falls back to 
heap.next() and moves past the
+      // current cell instead of seeking back to the same row candidate.
+      return PrivateCellUtil.createLastOnRow(currentCell);

Review Comment:
   So this is like a fake hint to avoid seeking, right?
   Ideally, `filterCell` should not return `SEEK_NEXT_USING_HINT` in this case, 
but I imagine that would require restructuring of the code. So I think it's 
fine as is.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to