[ https://issues.apache.org/jira/browse/HBASE-19746?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16447159#comment-16447159 ]
Lars Francke commented on HBASE-19746: -------------------------------------- Thanks. Understood. That brings me back to the original question though. In 3.0 we need to remove the default implementation, right? Because we can't get to getTypeByte anymore which we need for the implementation. So we'll break BC in 3.0 for two different reasons. I still don't like it but that is also not documented anywhere. Either we undeprecate getTypeByte or we need to mark getType as deprecated somehow because it will effectively change in 3.0. You're saying that you suggested the user to implement getType but that's not the case as far as I can tell. There's no such suggestion. And unlike a "@deprecation" tag we cannot really enforce such a thing at compile time. What are we gaining by including the default implementation? The alternative is to implement it in all our implementing classes in 2.0 (which we'll otherwise have to do in 3.0), right? The BC issue doesn't really matter as we'll have to do it anyway, whether we do it in 2.0 or 3.0 doesn't really make a difference, no? > Add default impl to Cell#getType > -------------------------------- > > Key: HBASE-19746 > URL: https://issues.apache.org/jira/browse/HBASE-19746 > Project: HBase > Issue Type: Sub-task > Reporter: Chia-Ping Tsai > Assignee: Chia-Ping Tsai > Priority: Critical > Fix For: 2.0.0 > > Attachments: HBASE-19746.v0.patch, HBASE-19746.v1.patch, > HBASE-19746.v1.qa.patch > > > Noticed this issue when migrating the app to branch-2. > {{Cell}} is IA.Public so it should obey our compatibility rules. Not sure > whether any related discussion had be in HBASE-19112. It worthwhile, however, > to raise this issue again. > FYI [~anoopsamjohn] [~ram_krish] [~stack] -- This message was sent by Atlassian JIRA (v7.6.3#76005)