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

Duo Zhang commented on HBASE-18945:
-----------------------------------

I think CellComparator as the interface name is better than 
CoprocessorCellComparator, but the name of the implementation class is a bit 
difficult to choose...

Or that it is OK for us to also use the interface in our code other than the 
implementation class? I do not think we will provide more methods other than 
the exposed one in interface? The static methods could be moved to CellUtil I 
think. If we can avoid referencing the implementation class everywhere then I 
think it is OK to just call it CellComparatorImpl.

Thanks.

> Make a Public interface for CellComparator
> ------------------------------------------
>
>                 Key: HBASE-18945
>                 URL: https://issues.apache.org/jira/browse/HBASE-18945
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: ramkrishna.s.vasudevan
>            Assignee: ramkrishna.s.vasudevan
>             Fix For: 2.0.0-beta-1
>
>         Attachments: HBASE-18495.patch, HBASE-18945_2.patch
>
>
> Based on discussions over in HBASE-18826 and HBASE-18183 it is better we 
> expose CellComparator as a public interface so that it could be used in 
> Region/Store interfaces to be exposed to CPs.
> Currently the Comparator is exposed in Region, STore and StoreFile. There is 
> another discussion whether to expose it at all layers or only at Region. 
> However since we are exposing this to CPs CellComparator being @Private is 
> not the ideal way to do it. We have to change it to LimitedPrivate. But 
> CellComparator has lot of additional methods which are internal (like where a 
> Cell is compared with an incoming byte[] used in index comparsions etc).
> One way to expose is that as being done now in HBASE-18826 - by exposing the 
> return type as Comparator<Cell>. But this is not powerful. It only allows to 
> compare cells. So we try to expose an IA.LimitedPrivate interface that is 
> more powerful and allows comparing individual cell components also. 



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to