hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrew Purtell (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-10885) Support visibility expressions on Deletes
Date Thu, 12 Jun 2014 17:39:01 GMT

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

Andrew Purtell commented on HBASE-10885:

bq.  In 98.3 we allow the puts to have the vis exp in it. When a user issue delete, it will
delete all covered cells (irrespective of whether the put cells having tags in it or not).
This way it works till 98.3 Now in 98.4 we will change this behavior.


What we should accomplish with this patch are two objectives:
1) Support deletes with user specified visibility expressions (if they have the authorizations)
2) Do not allow users without visibility from covering cells with tombstones, effectively.

#2 is the semantic change from earlier versions.

>From 0.98.0 we have been communicating at every opportunity that these features are experimental
until 1.0.  If there are still concerns or objections for this kind of change, we can guard
the new behavior with a configuration toggle as a bridge from earlier 0.98 releases to 1.0.

If suppose there are no tags in the delete cell, but the Cell that is getting covered by the
delete has a Tag, then we should not delete the cell right? If that cell also does not have
the tag then it is ok to consider it deleted as per the case.

This isn't quite right though. If there are no tags in the delete cell, but the cell that
is covered by the delete has a _visibility expression_ tag, then we need to check if the effective
auths of the user who issued the delete grant visibility to the covered cell. Only if true
do we delete it. If the covered cell has no visibility expression tag it is ok to delete (cells
without visibility expressions evaluate is visible to everyone)

What do you think [~anoop.hbase]?

> Support visibility expressions on Deletes
> -----------------------------------------
>                 Key: HBASE-10885
>                 URL: https://issues.apache.org/jira/browse/HBASE-10885
>             Project: HBase
>          Issue Type: Improvement
>    Affects Versions: 0.98.1
>            Reporter: Andrew Purtell
>            Assignee: ramkrishna.s.vasudevan
>            Priority: Blocker
>             Fix For: 0.99.0, 0.98.4
>         Attachments: HBASE-10885_1.patch, HBASE-10885_2.patch, HBASE-10885_new_tag_type_1.patch,
HBASE-10885_new_tag_type_2.patch, HBASE-10885_v1.patch, HBASE-10885_v2.patch, HBASE-10885_v2.patch,
HBASE-10885_v2.patch, HBASE-10885_v3.patch
> Accumulo can specify visibility expressions for delete markers. During compaction the
cells covered by the tombstone are determined in part by matching the visibility expression.
This is useful for the use case of data set coalescing, where entries from multiple data sets
carrying different labels are combined into one common large table. Later, a subset of entries
can be conveniently removed using visibility expressions.
> Currently doing the same in HBase would only be possible with a custom coprocessor. Otherwise,
a Delete will affect all cells covered by the tombstone regardless of any visibility expression
scoping. This is correct behavior in that no data spill is possible, but certainly could be
surprising, and is only meant to be transitional. We decided not to support visibility expressions
on Deletes to control the complexity of the initial implementation.

This message was sent by Atlassian JIRA

View raw message