[ https://issues.apache.org/jira/browse/HBASE-19112?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16271479#comment-16271479 ]
Chia-Ping Tsai commented on HBASE-19112: ---------------------------------------- bq. Why we should NOT expose the types put/delete/deleletFamily as Public? The concern is - "we want the type to be an Enum (DataType) and if we have getter in Cell, we will end up exposing other fake types like min/max"? The same for RawCell also right? The root cause is that either {{DataType}} or {{KeyValue#Type}} is particular to how LSMs work. (see [dev|https://lists.apache.org/thread.html/44779d13271079411c4979bb888fc47d90a68f6558ecac3feb2feb37@%3Cdev.hbase.apache.org%3E]). The {{RawCell}} is designed to read all information from the cell impl and prevent cp user from modifying the cells we pass. As a result, having the getter for type in {{RawCell}} should be fine. > 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 (v6.4.14#64029)