[ 
https://issues.apache.org/jira/browse/HBASE-4741?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

stack updated HBASE-4741:
-------------------------

    Attachment: 4741-v5.txt

Here is a version to do the testing server-side up in the TableEventHandler 
constructors before the Excecutor is submitted so the error can go back to the 
user.

This is a bit of a regression for sure.  This stuff use to be all nice working 
but I think refactor as executors seems to have lost these nice little errors.

I've added a test that has a good few of these conditions listed out.

There are some issues in TestAdmin that I'm looking at but will run patch build 
to see if I've broken anything else.
                
> Online schema change doesn't return errors
> ------------------------------------------
>
>                 Key: HBASE-4741
>                 URL: https://issues.apache.org/jira/browse/HBASE-4741
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 0.92.0
>            Reporter: Jean-Daniel Cryans
>            Priority: Critical
>             Fix For: 0.92.0
>
>         Attachments: 4741-v2.txt, 4741-v3.txt, 4741-v4.txt, 4741-v5.txt, 
> 4741.txt
>
>
> Still after the fun I had over in HBASE-4729, I tried to finish altering my 
> table (remove a family) since only half of it was changed so I did this:
> {quote}
> hbase(main):002:0> alter 'TestTable', NAME => 'allo', METHOD => 'delete' 
> Updating all regions with the new schema...
> 244/244 regions updated.
> Done.
> 0 row(s) in 1.2480 seconds
> {quote}
> Nice it all looks good, but over in the master log:
> {quote}
> org.apache.hadoop.hbase.InvalidFamilyOperationException: Family 'allo' does 
> not exist so cannot be deleted
>         at 
> org.apache.hadoop.hbase.master.handler.TableDeleteFamilyHandler.handleTableOperation(TableDeleteFamilyHandler.java:56)
>         at 
> org.apache.hadoop.hbase.master.handler.TableEventHandler.process(TableEventHandler.java:86)
>         at 
> org.apache.hadoop.hbase.master.HMaster.deleteColumn(HMaster.java:1011)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at 
> org.apache.hadoop.hbase.ipc.WritableRpcEngine$Server.call(WritableRpcEngine.java:348)
>         at 
> org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:1242)
> {quote}
> Maybe we should do checks before launching the async task.
> Marking critical as this is a regression.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to