hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jim Kellerman (JIRA)" <j...@apache.org>
Subject [jira] Created: (HBASE-1148) Always flush HLog on root or meta region updates
Date Fri, 23 Jan 2009 01:51:59 GMT
Always flush HLog on root or meta region updates

                 Key: HBASE-1148
                 URL: https://issues.apache.org/jira/browse/HBASE-1148
             Project: Hadoop HBase
          Issue Type: Bug
          Components: regionserver
    Affects Versions: 0.19.0, 0.19.1, 0.20.0
            Reporter: Jim Kellerman
            Assignee: Jim Kellerman
            Priority: Critical

Flushing an HLog does not currently guarantee that the updates will be visible (see HADOOP-4379),
however in the case of root or meta region updates, this is critical.

I was able to create a situation by killing both the root and meta region servers, from which
the cluster recovered, but because of the missed edits, clients found the old parent region
rather than the new child regions because the fact that the parent region had split was not
in the HLog of the crashed region servers (the master knew because of the MSG_REGION_SPLIT
message it received) but the clients read the meta table and because that change was lost,
clients were trying to find the parent region.

So, when a SequenceFile.Writer.sync() guarantees that what has been written will be visible
to new readers, we need to modify HLog so that if it is writing an update to the root or meta
regions, that it immediately flushes (syncs) the log file so that the changes will be visible
when the log file is recovered.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message