[ https://issues.apache.org/jira/browse/HBASE-18995?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16226264#comment-16226264 ]
ramkrishna.s.vasudevan commented on HBASE-18995: ------------------------------------------------ bq. I see three methods in CellUtil with Private annotation. Any reason they were not moved? I see they are @Deprecated. Is that because they have been moved already? I left it because they are still exposed in 2.0. You mean they are left over in 3.0 also? If so it is my mistake. I have to remove them. bq.Are there methods from PrivateCellUtil you want to expose to Coprocessors? As said in the other JIRA. We need to know what others can we expose. We can definitely move some more to the LPCellUtil which needs to be exposed but for now I can see Tag related APIs. But coming to createfirstOnRow(), createLastOnRow() - that is something internal. Why should that be in CellUtil? In one of the review comments it was discussed we need not expose them. I am fine if there is an usage but again there are lot of variants which are not worth exposing we need to see which are really useful and which are internally used. In the list of APIs used by Crunch I think createFirstOnRow is the only one that is missed? All other APIs are still available in Public CellUtil. So this project Crunch is it a CP based project or is it a client side code? bq.(static methods on interfaces is one of the benefits of us being on jdk8 now: ref) I like this idea. How ever I think what needs to go as static methods in Cell interface is still questionable because there are cases like this createFirstOnRow() which goes to IA.Private but Cell does not have it and still it is not helping them. > Move methods that are for internal usage from CellUtil to Private util class > ---------------------------------------------------------------------------- > > Key: HBASE-18995 > URL: https://issues.apache.org/jira/browse/HBASE-18995 > Project: HBase > Issue Type: Sub-task > Affects Versions: 2.0.0-alpha-3 > Reporter: ramkrishna.s.vasudevan > Assignee: ramkrishna.s.vasudevan > Priority: Critical > Fix For: 2.0.0-alpha-4 > > Attachments: HBASE-18995-branch-2.002.patch, > HBASE-18995-branch-2.patch, HBASE-18995-branch-2_1.patch, > HBASE-18995-branch-2_1.patch, HBASE-18995-branch-2_1.patch, > HBASE-18995-branch-2_1.patch, HBASE-18995-branch-2_2.patch, > HBASE-18995_002-branch-2.patch, HBASE-18995_002-branch-2.patch, > HBASE-18995_003-branch-2.patch, HBASE-18995_1.patch, HBASE-18995_2.patch, > HBASE-18995_2.patch > > > This was brought up long time back. We need to move some of the public APIs > from CellUtil to internal private Util class because they are used in some > internal flow and does not make sense to have it in a @public exposed Util > class. > The topic again came in HBASE-18945 RB comments also. -- This message was sent by Atlassian JIRA (v6.4.14#64029)