[ https://issues.apache.org/jira/browse/HBASE-16225?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15380488#comment-15380488 ]
Duo Zhang commented on HBASE-16225: ----------------------------------- OK, I know, this is an optimization. We create a fake cell first in {{StoreFileScanner}} to prevent seek on old files and this cell will be passed to {{KeyValueHeap}}. But I still do not understand why this cell should be passed to {{ScanQueryMatcher}}... > Refactor ScanQueryMatcher > ------------------------- > > Key: HBASE-16225 > URL: https://issues.apache.org/jira/browse/HBASE-16225 > Project: HBase > Issue Type: Improvement > Reporter: Duo Zhang > > As said in HBASE-16223, the code of {{ScanQueryMatcher}} is too complicated. > I suggest that we can abstract an interface and implement several sub classes > which separate different logic into different implementations. For example, > the requirements of compaction and user scan are different, now we also need > to consider the logic of user scan even if we only want to add a logic for > compaction. And at least, the raw scan does not need a query matcher... we > can implement a dummy query matcher for it. > Suggestions are welcomed. Thanks. -- This message was sent by Atlassian JIRA (v6.3.4#6332)