hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ramkrishna.s.vasudevan (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-4748) Restarting the cluster after alter table (online) completely loses the table information
Date Tue, 08 Nov 2011 17:19:51 GMT

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

ramkrishna.s.vasudevan commented on HBASE-4748:
-----------------------------------------------

I would like to suggest a solution to this JIRA.
As already said the problem is that on master restart it tries to assign ROOT and META.

Before doing that if the RS carrying the ROOT and META goes down, just before master assigning
ROOT and META the master will split the logs.  As part of this recovered edits will be created.
But before this recovered edits could be created if master tries to open META it will miss
out the recovered edits and all the entries in META is gone.

Can we do something like

Just before we try to assign root and meta can we check the zk SPLIT node and see if there
are any children in that for META recovery.

If so wait till the node is deleted.  
May be we may have to check the same thing in ServerShutdownHandler logic also where root
and META is assigned.

But is it correct to go by this.  As far as my analysis i could not find anything else to
sync these 2 code flows. 

Ideas and suggestions are welcome before i could prepare a patch.
                
> Restarting the cluster after alter table (online) completely loses the table information
> ----------------------------------------------------------------------------------------
>
>                 Key: HBASE-4748
>                 URL: https://issues.apache.org/jira/browse/HBASE-4748
>             Project: HBase
>          Issue Type: Bug
>            Reporter: ramkrishna.s.vasudevan
>            Assignee: ramkrishna.s.vasudevan
>
> 1. Start a cluster.
> 2. Alter a table
> 3. Restart the master using ./hbase-daemon.sh restart master
> 4. Kill the RS after master restarts.
> 5. Start RS again.
> 6. No table operations can be performed on the table that was altered but admin.listTables()
is able to list the altered table.

--
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

        

Mime
View raw message