[
https://issues.apache.org/jira/browse/HBASE-18945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16200442#comment-16200442
]
Chia-Ping Tsai commented on HBASE-18945:
----------------------------------------
If the {{compareKeyBasedOnColHint}} and {{compareKeyIgnoresMvcc}} are moved to
{{CellUtil}}, it is ok to use the interface in our code base.
> 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)