jbewing commented on code in PR #5373: URL: https://github.com/apache/hbase/pull/5373#discussion_r1361148558
########## hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFileScanner.java: ########## @@ -486,44 +490,51 @@ public boolean shouldUseScanner(Scan scan, HStore store, long oldestUnexpiredTS) @Override public boolean seekToPreviousRow(Cell originalKey) throws IOException { try { - try { - boolean keepSeeking = false; - Cell key = originalKey; - do { - Cell seekKey = PrivateCellUtil.createFirstOnRow(key); - if (seekCount != null) seekCount.increment(); - if (!hfs.seekBefore(seekKey)) { - this.cur = null; - return false; - } - Cell curCell = hfs.getCell(); - Cell firstKeyOfPreviousRow = PrivateCellUtil.createFirstOnRow(curCell); - - if (seekCount != null) seekCount.increment(); - if (!seekAtOrAfter(hfs, firstKeyOfPreviousRow)) { - this.cur = null; - return false; - } - - setCurrentCell(hfs.getCell()); - this.stopSkippingKVsIfNextRow = true; - boolean resultOfSkipKVs; - try { - resultOfSkipKVs = skipKVsNewerThanReadpoint(); - } finally { - this.stopSkippingKVsIfNextRow = false; - } - if (!resultOfSkipKVs || getComparator().compareRows(cur, firstKeyOfPreviousRow) > 0) { - keepSeeking = true; - key = firstKeyOfPreviousRow; - continue; - } else { - keepSeeking = false; - } - } while (keepSeeking); - return true; - } finally { - realSeekDone = true; + if (previousRow == null || getComparator().compareRows(previousRow, originalKey) > 0) { + return seekToPreviousRowWithoutHint(originalKey); + } else { Review Comment: Done in https://github.com/apache/hbase/pull/5373/commits/194ea0aacef3a2c9c439397aac8e57d7fdcaa042 -- 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: issues-unsubscr...@hbase.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org