[ https://issues.apache.org/jira/browse/HBASE-14995?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15062419#comment-15062419 ]
stack commented on HBASE-14995: ------------------------------- Whats the upshot then? Resolve this issue and open a new one to add doc. and needed optimization uncovered by mighty [~huaxiang]? Or do it 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 > 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)