Details
-
Sub-task
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
-
Reviewed
-
Description
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.
Attachments
Attachments
Issue Links
- links to