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

Anoop Sam John commented on HBASE-13579:
----------------------------------------

Another idea I am thinking of is, what we make a new class extending KeyValue 
in which the getTagsLength is just returning 0 (no parsing nothing).  When the 
getKeyValue() call on HFileReader makes the Cell,  we know what is the tags 
length for that Cell.  When the tags length is 0, we will make the Object of 
the new class (KeyValue extension)

Then noted one more thing. We have in HFileReader
Cell getKeyValue();
Strange name. We missed rename here. As this is private interface we can 
correct it with out worry I guess.  (Just for noting down)

> Avoid isCellTTLExpired() for NO-TAG cases
> -----------------------------------------
>
>                 Key: HBASE-13579
>                 URL: https://issues.apache.org/jira/browse/HBASE-13579
>             Project: HBase
>          Issue Type: Sub-task
>          Components: Scanners
>    Affects Versions: 2.0.0
>            Reporter: ramkrishna.s.vasudevan
>            Assignee: ramkrishna.s.vasudevan
>
> As observed in this JIRA's performance test, we are always calling the 
> isCellTTLExpired() for every cell and internally it is parsing the keyLength, 
> valueLength() to get the tagsLength after which we decide whether Cell level 
> TTL is present are not.
> This JIRA aims to avoid this check if all the readers of the storescanner 
> knows that there are no tags to read.  Note that, for the memstore scanner we 
> will do that in another JIRA, which I suppose Stack had already raised to 
> avoid tag length while flushing (for the NO-TAG) case.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to