hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ted Yu (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-12542) Delete a family of table online will crash regionserver
Date Mon, 22 Dec 2014 20:42:14 GMT

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

Ted Yu commented on HBASE-12542:
--------------------------------

{code}
+        long startTime = System.currentTimeMillis();
{code}
Please use EnvironmentEdgeManager
{code}
+        long timeout = getTimeoutOnRIT();
+        pool.awaitTermination(timeout, TimeUnit.MICROSECONDS);
{code}
Why is timeunit in microseconds ?
{code}
+      if (!assignmentManager.getRegionStates().isRegionInTransition(hri)) {
+        LOG.info("xxx region is not in transition " + hri);
+        return true;
{code}
Remove 'xxx'


> Delete a family of table online will crash regionserver 
> --------------------------------------------------------
>
>                 Key: HBASE-12542
>                 URL: https://issues.apache.org/jira/browse/HBASE-12542
>             Project: HBase
>          Issue Type: Bug
>          Components: regionserver
>            Reporter: Liu Shaohui
>            Assignee: Liu Shaohui
>            Priority: Critical
>             Fix For: 2.0.0
>
>         Attachments: HBASE-12542-v1.diff
>
>
> Using alter command to delete a family of table online will make the regionsevers that
serve the regions of the table crash.
> {code}
> alter 't', NAME => 'f', METHOD => 'delete'
> {code}
> The reason is that TableDeleteFamilyHandler in HMaster delete the family dir firstly
and then reopen all the regions of table.
> When the regionserver reopen the region, it will crash for the exception in flushing
memstore to hfile of the deleted family during closing the region, because the parent dir
of the hfile has been deleted in TableDeleteFamilyHandler.
> See: TableDeleteFamilyHandler.java #57
> A simple solution is change the order of operations in TableDeleteFamilyHandler.
> - update table descriptor first, 
> - reopen all the regions,
> - delete the the family dir at last.
> Suggestions are welcomed.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message