[ 
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)

Reply via email to