[ https://issues.apache.org/jira/browse/HBASE-6588?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13435716#comment-13435716 ]
zhou wenjian commented on HBASE-6588: ------------------------------------- @Ted i was doing some tests on table balancer, disable and then enable it. howerver i mistake using drop table instead of enable, Ctrl + c is immediately sent, and enable table is also closed behind, then i found table is deleted, but i couldn't create it anymore. So i reproduce the scenario. > enable table throws npe and leaves trash in zk in competition with delete > table > ------------------------------------------------------------------------------- > > Key: HBASE-6588 > URL: https://issues.apache.org/jira/browse/HBASE-6588 > Project: HBase > Issue Type: Bug > Affects Versions: 0.94.0 > Reporter: Zhou wenjian > Fix For: 0.94.2 > > Attachments: HBASE-6588-trunk.patch > > > 2012-08-15 19:23:36,178 DEBUG org.apache.hadoop.hbase.client.ClientScanner: > Creating scanner over .META. starting at key 'test,,' > 2012-08-15 19:23:36,178 DEBUG org.apache.hadoop.hbase.client.ClientScanner: > Advancing internal scanner to startKey at 'test,,' > 2012-08-15 19:24:09,180 DEBUG org.apache.hadoop.hbase.client.ClientScanner: > Creating scanner over .META. starting at key '' > 2012-08-15 19:24:09,180 DEBUG org.apache.hadoop.hbase.client.ClientScanner: > Advancing internal scanner to startKey at '' > 2012-08-15 19:24:09,183 DEBUG org.apache.hadoop.hbase.client.ClientScanner: > Finished with scanning at {NAME => '.META.,,1', STARTKEY => '', ENDKEY => '', > ENCODED => 1028785192,} > 2012-08-15 19:24:09,183 DEBUG org.apache.hadoop.hbase.master.CatalogJanitor: > Scanned 2 catalog row(s) and gc'd 0 unreferenced parent region(s) > 2012-08-15 19:25:12,260 DEBUG > org.apache.hadoop.hbase.master.handler.DeleteTableHandler: Deleting region > test,,1345029764571.d1e24b251ca6286c840a9a5f571b7db1. from META and FS > 2012-08-15 19:25:12,263 INFO org.apache.hadoop.hbase.catalog.MetaEditor: > Deleted region test,,1345029764571.d1e24b251ca6286c840a9a5f571b7db1. from META > 2012-08-15 19:25:12,265 INFO > org.apache.hadoop.hbase.master.handler.EnableTableHandler: Attemping to > enable the table test > 2012-08-15 19:25:12,265 WARN org.apache.hadoop.hbase.zookeeper.ZKTable: > Moving table test state to enabling but was not first in disabled state: null > 2012-08-15 19:25:12,267 DEBUG org.apache.hadoop.hbase.client.ClientScanner: > Creating scanner over .META. starting at key 'test,,' > 2012-08-15 19:25:12,267 DEBUG org.apache.hadoop.hbase.client.ClientScanner: > Advancing internal scanner to startKey at 'test,,' > 2012-08-15 19:25:12,270 DEBUG org.apache.hadoop.hbase.client.ClientScanner: > Finished with scanning at {NAME => '.META.,,1', STARTKEY => '', ENDKEY => '', > ENCODED => 1028785192,} > 2012-08-15 19:25:12,270 ERROR org.apache.hadoop.hbase.executor.EventHandler: > Caught throwable while processing event C_M_ENABLE_TABLE > java.lang.NullPointerException > at > org.apache.hadoop.hbase.master.handler.EnableTableHandler.handleEnableTable(EnableTableHandler.java:116) > at > org.apache.hadoop.hbase.master.handler.EnableTableHandler.process(EnableTableHandler.java:97) > at > org.apache.hadoop.hbase.executor.EventHandler.run(EventHandler.java:169) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) > at java.lang.Thread.run(Thread.java:662) > table is disabled now, then we enable and delete the table at the same time. > Since the thread num of MASTER_TABLE_OPERATIONS is 1 by default. The two > operations are serial in master.Before deletetable deletes all the regions in > meta, CreateTableHandler ships the check of tableExists,then it will block > until deletetable finishs, then CreateTableHandler will set zk enabling, and > find no data in meta: > regionsInMeta = MetaReader.getTableRegions(this.ct, tableName, true); > int countOfRegionsInTable = regionsInMeta.size(); > npe will be throwed here. And we could not create the same table anymore. -- 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