Zheng Hu created HBASE-21734:
--------------------------------
Summary: Some optimization in FilterListWithOR
Key: HBASE-21734
URL: https://issues.apache.org/jira/browse/HBASE-21734
Project: HBase
Issue Type: Sub-task
Reporter: Zheng Hu
In HBASE-21620, [~KarthickRam] and [~mohamed.meeran] complaind that their
performance of filter list has been degraded after that patch in here [1].
I wrote a UT for this, and test under my host. It's true. I gussed there may
be two reasons:
1. the comparator.compare(nextKV, cell) > 0 StoreScanner;
2. the filter list concated by OR will choose the minimal forward step among
all sub-filters. in this patch, we have stricter restrictions on all sub
filters, include those sub-filter whose has non-null RC returned in
calculateReturnCodeByPrevCellAndRC (previously, we will skip to merge this
sub-filter's rc, but it's wrong in some case), and merge all of the
sub-filter's RC, this is also some time cost.
The former one seems not the main problem, because the UT still cost ~ 3s even
if I comment the compare. the second one has some impact indeed, because after
i skip to merge the sub-filters's RC if calculateReturnCodeByPrevCellAndRC
return a non-null rc, the UT cost ~ 1s, it's improvement but the logic is not
wrong.
1.
https://issues.apache.org/jira/browse/HBASE-21620?focusedCommentId=16737100&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-16737100
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)