[ https://issues.apache.org/jira/browse/HBASE-1758?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12743023#action_12743023 ]
Ken Weiner commented on HBASE-1758: ----------------------------------- Vaibhav, rather than just to "simplify" things, I think the value in removing the concept of regions from the HTableInterface is more about defining the concept of a Table contract without imposing the notion that the table is split into regions. Obviously everything within HBase needs to understand how table storage is implemented with regions, but client applications really don't need that knowledge. They should be able to put, get, delete, etc. without thinking about the implementation. A regionless-HTableInterface also allows for implementations that ignore the concept of regions such as for testing. > Extract interface out of HTable > ------------------------------- > > Key: HBASE-1758 > URL: https://issues.apache.org/jira/browse/HBASE-1758 > Project: Hadoop HBase > Issue Type: Improvement > Components: client > Reporter: Vaibhav Puranik > Fix For: 0.21.0 > > Attachments: HTableInterface.patch > > > As per discussions in Hackathon, we have extracted interface out of HTable > and named it as HTableInterface. This will make unit testing client code > easier and simplify client API. > It opens other possibilities such as creating a HTable that does not do any > RPC calls, MockHTable etc. > HTablePool still returns HTable instances. But we have added a setter method > for HTableInterfaceFactory on it. Thus developers can write their own > HTableInterfaceFactory impl to return their own HTableInterface > implementation. > I have assigned this issue to 0.21 but you may consider it to move it to 0.20 > if possible. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.