With the recent doc additions I'm +1

On Mon, Feb 24, 2020, 08:37 Sean Busbey <[email protected]> wrote:

> I'm currently -0. I left feedback on the merge PR with specifics.
>
> On Sat, Feb 22, 2020, 07:32 Duo Zhang <[email protected]> wrote:
>
>> The issue aims to make rs group the first class citizen in HBase, where
>> the
>> feature can be enabled through a simple flag, not a complicated
>> coprocessor, and also we can manage it through the Admin interface, while
>> in the old time the only public way is to through the shell command, as
>> the
>> coprocessor client is marked as IA.Private.
>>
>> This is a simple design doc
>>
>> <goog_2028452043>
>>
>> https://docs.google.com/document/d/1SuodZ_uDQQQVJyryRxqp033cgz2aQPJmjIREbbbmB3c/edit?usp=sharing
>>
>> The PR for all the changes
>>
>> https://github.com/apache/hbase/pull/1165
>>
>> And let me copy the release note here
>>
>> Moved rs group feature into core. Use this flag to enable or disable it.
>>
>> The coprocessor org.apache.hadoop.hbase.rsgroup.RSGroupAdminEndpoint is
>> deprected, but for compatible, if you want the pre 3.0.0 hbase
>> client/shell
>> to communicate with the new hbase cluster, you still need to add this
>> coprocessor to master. And if this coprocessor is specified, the above
>> flag
>> will be set to true automatically to enable rs group feature.
>>
>> These methods are added to the Admin/AsyncAdmin interface for managing rs
>> groups. See the javadoc of these methods for more details.
>>
>>   void addRSGroup(String groupName) throws IOException;
>>   RSGroupInfo getRSGroup(String groupName) throws IOException;
>>   RSGroupInfo getRSGroup(Address hostPort) throws IOException;
>>   RSGroupInfo getRSGroup(TableName tableName) throws IOException;
>>   List<RSGroupInfo> listRSGroups() throws IOException;
>>   List<TableName> listTablesInRSGroup(String groupName) throws
>> IOException;
>>   Pair<List<String>, List<TableName>>
>> getConfiguredNamespacesAndTablesInRSGroup(String groupName) throws
>> IOException;
>>   void removeRSGroup(String groupName) throws IOException;
>>   void removeServersFromRSGroup(Set<Address> servers) throws IOException;
>>   void moveServersToRSGroup(Set<Address> servers, String targetGroup)
>> throws IOException;
>>   void setRSGroup(Set<TableName> tables, String groupName) throws
>> IOException;
>>   boolean balanceRSGroup(String groupName) throws IOException;
>>
>> The shell commands for rs group are not changed.
>>
>> The main difference on the implementation is that, now the rs group for a
>> table is stored in TableDescriptor, instead of in RSGroupInfo, so the
>> getTables method of RSGroupInfo has been deprecated. And if you use the
>> above Admin methods to get the RSGroupInfo, its getTables method will
>> always return empty. Of course the behavior for the old
>> RSGroupAdminEndpoint is not changed, we will fill the tables field of the
>> RSGroupInfo before returning, to make it compatible with old hbase
>> client/shell.
>>
>> When upgrading, the migration between the RSGroupInfo and TableDescriptor
>> will be done automatically. It will take sometime, but it is fine to
>> restart master in the middle, the migration will continue after restart.
>>
>> The vote will open for at least 72 hours.
>>
>> Please vote
>>
>> [+1] Agree
>> [-1] Disagree
>>
>> Thanks.
>>
>

Reply via email to