[ 
https://issues.apache.org/jira/browse/HBASE-17582?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15849270#comment-15849270
 ] 

Gary Helmling commented on HBASE-17582:
---------------------------------------

On the reader side, it looks like this was broken in the commit for HBASE-15236.

In the changes to StoreFileScanner, we no longer pass through canUseDrop to 
StoreFile.createReader():
{noformat}
@@ -115,11 +136,13 @@ public class StoreFileScanner implements KeyValueScanner {
       ScanQueryMatcher matcher, long readPt, boolean isPrimaryReplica) throws 
IOException {
     List<StoreFileScanner> scanners = new ArrayList<StoreFileScanner>(
         files.size());
-    for (StoreFile file : files) {
-      StoreFileReader r = file.createReader(canUseDrop);
+    List<StoreFile> sorted_files = new ArrayList<>(files);
+    Collections.sort(sorted_files, StoreFile.Comparators.SEQ_ID);
+    for (int i = 0; i < sorted_files.size(); i++) {
+      StoreFileReader r = sorted_files.get(i).createReader();
       r.setReplicaStoreFile(isPrimaryReplica);
       StoreFileScanner scanner = r.getStoreFileScanner(cacheBlocks, usePread,
-          isCompaction, readPt);
+          isCompaction, readPt, i);
       scanner.setScanQueryMatcher(matcher);
       scanners.add(scanner);
     }
{noformat}

Following the code through, it looks like just passing along canUseDrop to 
createReader() should fix it.


[~saint....@gmail.com], [~apeksharma]: any idea if this change was intentional 
or an oversight?  It looks like it's also broken for StoreFileWriter.

> Drop page cache hint is broken
> ------------------------------
>
>                 Key: HBASE-17582
>                 URL: https://issues.apache.org/jira/browse/HBASE-17582
>             Project: HBase
>          Issue Type: Bug
>          Components: Compaction, io
>    Affects Versions: 2.0.0
>            Reporter: Ashu Pachauri
>
> We pass a boolean for pass page cache drop hint while creating store file 
> scanners and writers. 
> The hint is not passed on down the stack by StoreFileWriter and 
> StoreFileScanner in the master branch.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to