[
https://issues.apache.org/jira/browse/HBASE-18825?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16175917#comment-16175917
]
Duo Zhang commented on HBASE-18825:
-----------------------------------
{quote}
So, we disabuse ourselves of any notion that another might want to put in place
their own HRegion implemenation – whether a subclass or a new implementation
altogether – if only because we've never done the work to ensure it is
supported?
{quote}
I think so. Region is not something simple like RegionSplitPolicy. It is not
easy to provide an alternate implementation. I think the right way is to
introduce more policies to let users customize the implementation.
{quote}
What about StoreFile? I'm thinking about alternate HFile implementations. What
if someone wants to plug in a columnar-based file format? Or we want to do a V4
of HFile. This is harder for me to swallow.
{quote}
To be honest, I do not know... For me I prefer to start thinking about it when
we actually want to do it immediately... But as long as all the related classes
are marked as IA.Private, we are free to change it as we want? Maybe we will
have an InternalStoreFile interface? Or abstract an interface for HFile? And
for the StoreFile interface, it is used to be an implementation class, not too
long ago, see HBASE-18038. We make it an interface and introduced the
HStoreFile only because we want to hide the implementation classes and only
expose interfaces to CP users...
Thanks.
> Use HStoreFile instead of StoreFile in our own code base and remove
> unnecessary methods in StoreFile interface
> --------------------------------------------------------------------------------------------------------------
>
> Key: HBASE-18825
> URL: https://issues.apache.org/jira/browse/HBASE-18825
> Project: HBase
> Issue Type: Sub-task
> Components: Coprocessors
> Reporter: Duo Zhang
> Assignee: Duo Zhang
> Fix For: 2.0.0-alpha-4
>
> Attachments: HBASE-18825.patch, HBASE-18825-v1.patch,
> HBASE-18825-v2.patch, HBASE-18825-v3.patch, HBASE-18825-v3.patch
>
>
> Use generic types to avoid too many casts.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)