hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ted Yu (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HBASE-14995) Optimize setting tagsPresent in DefaultMemStore.java
Date Thu, 17 Dec 2015 05:58:46 GMT

     [ https://issues.apache.org/jira/browse/HBASE-14995?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Ted Yu updated HBASE-14995:
---------------------------
    Fix Version/s:     (was: 1.3.0)
                       (was: 1.2.0)
                       (was: 2.0.0)

Looks like some javadoc for this part of code would help people who read it better understand.

If the cell doesn't have tag, we skip assigning the volatile variable.
If the cell has tag(s), previous formation is not slower than the one proposed here.

> Optimize setting tagsPresent in DefaultMemStore.java
> ----------------------------------------------------
>
>                 Key: HBASE-14995
>                 URL: https://issues.apache.org/jira/browse/HBASE-14995
>             Project: HBase
>          Issue Type: Improvement
>          Components: regionserver
>    Affects Versions: 2.0.0, 1.2.0
>            Reporter: huaxiang sun
>            Assignee: huaxiang sun
>            Priority: Minor
>         Attachments: HBASE-14995-v001.patch, HBASE-14995-v002.patch
>
>
> The current implementation calls e.getTagsLength() for each cell. Once tagsPresent is
set, e.getTagsLength() can be avoided.
> {code}
>   private boolean addToCellSet(Cell e) {
>     boolean b = this.cellSet.add(e);
>     // In no tags case this NoTagsKeyValue.getTagsLength() is a cheap call.
>     // When we use ACL CP or Visibility CP which deals with Tags during
>     // mutation, the TagRewriteCell.getTagsLength() is a cheaper call. We do not
>     // parse the byte[] to identify the tags length.
>     if(e.getTagsLength() > 0) {
>       tagsPresent = true;
>     }
>     setOldestEditTimeToNow();
>     return b;
>   }
> {code}



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

Mime
View raw message