[ 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