You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Syeda Arshiya Tabreen (JIRA)" <ji...@apache.org> on 2018/11/12 14:12:00 UTC

[jira] [Commented] (HBASE-18893) Remove Add/Modify/DeleteColumnFamilyProcedure in favor of using ModifyTableProcedure

    [ https://issues.apache.org/jira/browse/HBASE-18893?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16683833#comment-16683833 ] 

Syeda Arshiya Tabreen commented on HBASE-18893:
-----------------------------------------------

After HBASE-18893, The behavior of add/delete/modify column family during concurrent operation is changed compare to branch-1

Let say table has cf1 , one client is adding cf2 and another one cf3 .. In branch-1 final result will be cf1,cf2,cf3 but now either cf1,cf2 OR cf1,cf3 will be the outcome.

Its because new table descriptor is constructed before submitting the modifyTableProcedure in HMaster class and its not guarded by any lock. 

Is this the intended behavior? 

> Remove Add/Modify/DeleteColumnFamilyProcedure in favor of using ModifyTableProcedure
> ------------------------------------------------------------------------------------
>
>                 Key: HBASE-18893
>                 URL: https://issues.apache.org/jira/browse/HBASE-18893
>             Project: HBase
>          Issue Type: Bug
>          Components: Coprocessors, master
>            Reporter: Mike Drob
>            Assignee: Mike Drob
>            Priority: Major
>             Fix For: 2.0.0-alpha-4, 2.0.0
>
>         Attachments: HBASE-18893.patch, HBASE-18893.v2.patch, HBASE-18893.v3.patch, HBASE-18893.v4.patch
>
>
> The shell changed from using separate add/modify/delete column calls to funneling everything through modify table for performance reasons. We know that using modify table works for everything. Let's drop the old code for Add/Modify/Delete Column so that we have a lower maintenance burden and fewer code paths to reason about.
> -------- Was: shell 'alter' command no longer distinguishes column add/modify/delete
> After HBASE-15641 all 'alter' commands go through a single modifyTable call at the end, so we no longer can easily distinguish add, modify, and delete column events. This potentially affects coprocessors that needed the update notifications for new or removed columns.
> Let's let the shell still make separate behaviour calls like it did before without undoing the batching that seems pretty useful.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)