[ https://issues.apache.org/jira/browse/HBASE-18572?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16130333#comment-16130333 ]
Anoop Sam John commented on HBASE-18572: ---------------------------------------- Seems all cases are handled now. +1. Thanks for the patch > Delete#addColumn can't remove the cell which has no visibility label > -------------------------------------------------------------------- > > Key: HBASE-18572 > URL: https://issues.apache.org/jira/browse/HBASE-18572 > Project: HBase > Issue Type: Bug > Affects Versions: 1.3.1, 1.2.6, 2.0.0-alpha-1 > Reporter: Chia-Ping Tsai > Assignee: Chia-Ping Tsai > Priority: Critical > Fix For: 2.0.0, 1.4.0, 1.3.2, 1.5.0, 1.2.7 > > Attachments: HBASE-18572.ut.patch, HBASE-18572.v0.patch, > HBASE-18572.v0.patch, HBASE-18572.v1.patch > > > {code:title=DefaultVisibilityLabelServiceImpl.java} > @Override > public boolean matchVisibility(List<Tag> putVisTags, Byte putTagsFormat, > List<Tag> deleteVisTags, > Byte deleteTagsFormat) throws IOException { > if ((deleteTagsFormat != null && deleteTagsFormat == > SORTED_ORDINAL_SERIALIZATION_FORMAT) > && (putTagsFormat == null || putTagsFormat == > SORTED_ORDINAL_SERIALIZATION_FORMAT)) { > if (putVisTags.isEmpty()) { > // Early out if there are no tags in the cell > return false; > } > if (putTagsFormat == null) { > return matchUnSortedVisibilityTags(putVisTags, deleteVisTags); > } else { > return matchOrdinalSortedVisibilityTags(putVisTags, deleteVisTags); > } > } > throw new IOException("Unexpected tag format passed for comparison, > deleteTagsFormat : " > + deleteTagsFormat + ", putTagsFormat : " + putTagsFormat); > } > {code} > If the putVisTags is empty, it will return the false directly. Hence, the > Delete#addColumn can't "see" the cell as well as deleting it. The > Delete#addColumns, by contrast, doesn't invoke the > cp#prePrepareTimeStampForDeleteVersion so it can remove the cell. -- This message was sent by Atlassian JIRA (v6.4.14#64029)