private void testPreadReversedScanInternal(String[] inputRowKeys) throws IOException {
    int rowCount = inputRowKeys.length;

    for (int i = 0; i < rowCount; i++) {
      Put put = new Put(Bytes.toBytes(inputRowKeys[i]));
      put.addColumn(COLUMN_FAMILY, null, Bytes.toBytes(i));
      htable.put(put);
    }

    Scan scan = new Scan();
    scan.setReversed(true);
    scan.setReadType(ReadType.PREAD);

    ResultScanner scanner = htable.getScanner(scan);
    Result r;
    int value = rowCount;
    while ((r = scanner.next()) != null) {
      Assert.assertArrayEquals(r.getValue(COLUMN_FAMILY, null), Bytes.toBytes(--value));
      Assert.assertArrayEquals(r.getRow(), Bytes.toBytes(inputRowKeys[value]));
    }

    Assert.assertEquals(0, value);
  }
all rowKeys are fit in the last region.
hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestPreadReversedScanner.java