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

Anoop Sam John commented on HBASE-10322:
----------------------------------------

After lot of discussions here btw me, Andy and Ram and trying diff approaches, 
here is what we think is a possible solution. (Considering we have to have the 
RC soon and this is a blocker for that)
We will not write tags over RPC. * ie. in both client -> Server and server -> 
client.*
So KVCodec will not write tags at all
CelCodec and MessageCodec already not handling tags.
HBASE-10321 added a new CellCodecV2 which is a CellCodec with Tags support. We 
will remove it
Make sure WALCodec can write tags.

So tags are becoming a server only thing as of now.  Because of this we will 
remove the new APIs added to Put as part of Tags jira
Put#add(byte[] family, byte [] qualifier, byte [] value, Tag[] tag) 
And some more related which handles tags.  User can not pass tags directly from 
client.  As of now the only way is like what Visibility labels or ACL do. Pass 
the tags or related info via op attr and make a CP to handle it and add as Tags 
at server side only.

Later we can add support for passing tags directly via Put from client

Thanks a lot [~apurtell] ,[~ram_krish] ..
Concerns, suggestions pls.

> Strip tags from KV while sending back to client on reads
> --------------------------------------------------------
>
>                 Key: HBASE-10322
>                 URL: https://issues.apache.org/jira/browse/HBASE-10322
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 0.98.0
>            Reporter: Anoop Sam John
>            Assignee: Anoop Sam John
>            Priority: Blocker
>             Fix For: 0.98.0, 0.99.0
>
>         Attachments: HBASE-10322.patch, HBASE-10322_V2.patch
>
>
> Right now we have some inconsistency wrt sending back tags on read. We do 
> this in scan when using Java client(Codec based cell block encoding). But 
> during a Get operation or when a pure PB based Scan comes we are not sending 
> back the tags.  So any of the below fix we have to do
> 1. Send back tags in missing cases also. But sending back visibility 
> expression/ cell ACL is not correct.
> 2. Don't send back tags in any case. This will a problem when a tool like 
> ExportTool use the scan to export the table data. We will miss exporting the 
> cell visibility/ACL.
> 3. Send back tags based on some condition. It has to be per scan basis. 
> Simplest way is pass some kind of attribute in Scan which says whether to 
> send back tags or not. But believing some thing what scan specifies might not 
> be correct IMO. Then comes the way of checking the user who is doing the 
> scan. When a HBase super user doing the scan then only send back tags. So 
> when a case comes like Export Tool's the execution should happen from a super 
> user.
> So IMO we should go with #3.
> Patch coming soon.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to