Chia-Ping Tsai commented on HBASE-18528:

bq. Why can not make ImmutableHTableDescriptor directly from desc?
Sorry for misunderstanding. You are right. We can make 
ImmutableHTableDescriptor directly from desc. Will fix that in next patch.

bq. Which method in MasterCoprocessorHost need/takes ModifyableTableDescriptor?
Some deprecated methods in MasterCoprocessorHost need/takes 
ModifyableTableDescriptor. We don't allow user to modify desc, and we don't 
want to break the compatibility. The solution, which is given by v0 patch, is 
to pass the ImmutableHTD to user.

Thanks for the reviews. [~anoop.hbase]

> DON'T allow user to modify the passed table/column descriptor
> -------------------------------------------------------------
>                 Key: HBASE-18528
>                 URL: https://issues.apache.org/jira/browse/HBASE-18528
>             Project: HBase
>          Issue Type: Sub-task
>          Components: Coprocessors, master
>            Reporter: Chia-Ping Tsai
>            Assignee: Chia-Ping Tsai
>            Priority: Critical
>             Fix For: 3.0.0, 2.0.0-alpha-2
>         Attachments: HBASE-18528.v0.patch
> We are replacing the HTableDescriptor by TableDescriptor from code base. The 
> TableDescriptor is designed to be a read-only object so user can't modifiy it 
> through MasterObserver. HBASE-18502 change many methods of MasterObserver to 
> use TableDescriptor but some deprecated methods still accept the 
> HTableDescriptor. User may be confused by why some methods can't modify the 
> table descriptor.
> In short, Should we allow user to modify the passed table descriptor?
> # if yes, we should introduce a mechanism that user can return a modified 
> table descripror
> # if no, we should pass ImmutableHTableDescriptor to user. Or we just remove 
> all methods accepting the HTableDescriptor
> Ditto for HColumnDescriptor.

This message was sent by Atlassian JIRA

Reply via email to