You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Lars Hofhansl (JIRA)" <ji...@apache.org> on 2013/10/13 01:13:42 UTC

[jira] [Comment Edited] (HBASE-9751) Excessive readpoints checks in StoreFileScanner

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

Lars Hofhansl edited comment on HBASE-9751 at 10/12/13 11:12 PM:
-----------------------------------------------------------------

I see. You're talking about new code. How do you find stopRowReal efficiently?
Also what if a filter seek hint jumps you past stopRowReal?

In any case, I think we have good consensus already. This patch is a good improvement I think; and I like your idea of passing the readpoint to the MemstoreScanner constructor.



was (Author: lhofhansl):
I see. You're talking about new code. How do you find stopRowReal efficiently?
Also what if a filter seek hint jumps you past stopRowReal?

In any case, I think we can good consensus already. This patch is a good improvement I think; and I like your idea of passing the readpoint to the MemstoreScanner constructor.


> Excessive  readpoints checks in StoreFileScanner
> ------------------------------------------------
>
>                 Key: HBASE-9751
>                 URL: https://issues.apache.org/jira/browse/HBASE-9751
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 0.98.0, 0.94.12, 0.96.0
>            Reporter: Vladimir Rodionov
>            Assignee: Lars Hofhansl
>             Fix For: 0.98.0, 0.94.13, 0.96.1
>
>         Attachments: 9751-0.94.txt, 9751-trunk.txt
>
>
> It seems that usage of skipKVsNewerThanReadpoint in StoreFileScanner can be greatly reduced or even eliminated all together (HFiles are immutable and no new KVs can be inserted after scanner instance is created). The same is true for MemStoreScanner which checks readpoint on every next() and seek(). Each readpoint check is ThreadLocal.get() and it is quite expensive.  



--
This message was sent by Atlassian JIRA
(v6.1#6144)