hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jonathan Hsieh (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HBASE-6348) Region assignments should be only allowed edit META hosted on the same cluster.
Date Sat, 07 Jul 2012 00:47:34 GMT
Jonathan Hsieh created HBASE-6348:

             Summary: Region assignments should be only allowed edit META hosted on the same
                 Key: HBASE-6348
                 URL: https://issues.apache.org/jira/browse/HBASE-6348
             Project: HBase
          Issue Type: Task
            Reporter: Jonathan Hsieh

We copied hbase file data (root/meta/tables) from one hdfs cluster to another, scrubbed it,
and then attempted to start the new cluster.  We noticed that META on the original cluster
was being modified with server entries from the new cluster.  

Its contrived but here is how it happened.

First we copied all the data.  Then we "scrubbed" META -- we removed all region serverinfo
cols that pointed to nodes on the original cluster.  When we started the new cluster, it picked
a RS to serve ROOT.  Since we had scrubbed meta, then the new cluster's master attempted to
assign regions to other region servers on the new cluster.  From the code's point of view
this all succeeeded -- zk went through transitions, according to the master they were assigned.
 However, we started seeing NotServingRegionExceptions on the original cluster.

The root cause is that ROOT was not scrubbed.  The new cluster assigned the copy of ROOT to
a new cluster RS.  Now, when the new cluster attempted to modify META, it would read the old
ROOT's serverinfo pointer go to the *old cluster's regionserver*.  The old cluster's regionserer
just so happened to be still serving META, so the old cluster's META server gladly accepted
the assignments that included the new cluster's regionserver names.

At this point we brought down the new cluster (it was getting killed).  Clients on the old
cluster would now go to zk,root,meta, and get pointers to the new cluster.  NSRE's happened.

Long story short, we should have some mechanism to make sure that region assignments should
be only allowed edit META hosted on the same cluster.

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


View raw message