[
https://issues.apache.org/jira/browse/HBASE-19092?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16224409#comment-16224409
]
ramkrishna.s.vasudevan commented on HBASE-19092:
------------------------------------------------
Thanks for the comments [[email protected]] and [~elserj]
bq.Could we just add facility to add Tags to a Cell to ExtendCellBuilder (You
know how I feel about having distinct Tag versions of things) rather than give
it its own Builder?
Already ExtendedCellBuilder supports tags and it is Private.
I just added a new builder so that if CPs want can create their own Tags but
they should not allowed to set the sequence Id as it is internal. If we are
going to expose Tags for CPs we should give them ways to atleast create a cell
with Tags. So I thought a new builder is better rather than using the
ExtendedCellBuilder.
bq.Any reason to not make ExtendedCellBuilder LimitedPrivate instead of (the
current) Private audience?
As you said mvcc and seqId is not exposed. If we are very particular on not
having one more Builder then we have to expose ExtendedCellBuilder as
LimitedPrivate. Anyway it does not have BB version and it only deals with
byte[] for now.
bq.Could we do same for the facility that CP needs of Cells and Tags rather
than make LPCells or LPTags?
I am not very sure. What we want is just some util methods to work on the Tags
and Cells with tags. Like iterate them, read a tag and try reading long or
string from that tag etc. We don need access to anyother internals.
So as per your suggstion we will have some thing like a TagCP which will have
methods like copyTag, cloneTag, getTagIterator() etc? And every CP that needs
Tag will implement TagCp and given an impl of these methods?
> Make Tag IA.LimitedPrivate and expose for CPs
> ---------------------------------------------
>
> Key: HBASE-19092
> URL: https://issues.apache.org/jira/browse/HBASE-19092
> Project: HBase
> Issue Type: Sub-task
> Components: Coprocessors
> Reporter: ramkrishna.s.vasudevan
> Assignee: ramkrishna.s.vasudevan
> Priority: Critical
> Fix For: 2.0.0-alpha-4
>
> Attachments: HBASE-19092-branch-2.patch,
> HBASE-19092_001-branch-2.patch
>
>
> We need to make tags as LimitedPrivate as some use cases are trying to use
> tags like timeline server. The same topic was discussed in dev@ and also in
> HBASE-18995.
> Shall we target this for beta1 - cc [[email protected]].
> So once we do this all related Util methods and APIs should also move to
> LimitedPrivate Util classes.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)