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

ramkrishna.s.vasudevan commented on HBASE-13579:
------------------------------------------------

The other simple idea thought of is just add a new Constructor in KV explicity 
passing hasTag (true or false).  Based on this do getTagsLength() either by 
parsing or just return 0.
But it would add to the heapSize() of KV (one boolean more).

> 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