hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anoop Sam John (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-19112) Suspect methods on Cell to be deprecated
Date Mon, 04 Dec 2017 11:13:00 GMT

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

Anoop Sam John commented on HBASE-19112:

We can not expose RawCell as Public. So can not change the  Put/Delete # addCell() to take
a RawCell.    Can we have the getType in Cell only?  Now we have an enum type.  We can make
it such that the Put and diff Delete types are exposed but not the other internal types like
If the Type was exposed as constant in an interface we could have like
CPType <- PublicType and
Cell # getType returns the PublicType where as the RawCell getType returns a sub interface
type with extra types info.  With enum any way we can not have extends.
bq. If the getTypeByte is removed from Cell, how can we get the type byte from cells passed
by user when converting the cells to proto?
If the Delete#add would have been only one type, we could have done this by using a wrapper
type. One wrapper RawCell type for Put and another for delete and when user adds Cell to Put/Delete
wrap that cell with our own so that the PB parts can get the type.  But I guess user might
be adding any delete type using the add(Cell) way

> Suspect methods on Cell to be deprecated
> ----------------------------------------
>                 Key: HBASE-19112
>                 URL: https://issues.apache.org/jira/browse/HBASE-19112
>             Project: HBase
>          Issue Type: Bug
>          Components: Client
>            Reporter: Josh Elser
>            Assignee: ramkrishna.s.vasudevan
>            Priority: Blocker
>             Fix For: 2.0.0-beta-1
>         Attachments: HBASE-19112_branch-2.patch
> [~chia7712] suggested on the [mailing list|https://lists.apache.org/thread.html/e6de9af26d9b888a358ba48bf74655ccd893573087c032c0fcf01585@%3Cdev.hbase.apache.org%3E]
that we have some methods on Cell which should be deprecated for removal:
> * {{#getType()}}
> * {{#getTimestamp()}}
> * {{#getTag()}}
> * {{#getSequenceId()}}
> Let's make a pass over these (and maybe the rest) to make sure that there aren't others
which are either implementation details or methods returning now-private-marked classes.

This message was sent by Atlassian JIRA

View raw message