|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.hadoop.hbase.regionserver.wal.HLogSplitter
@InterfaceAudience.Private public class HLogSplitter
This class is responsible for splitting up a bunch of regionserver commit log files that are no longer being written to, into new files, one per region for region to replay on startup. Delete the old log files when finished.
| Field Summary | |
|---|---|
protected org.apache.hadoop.conf.Configuration |
conf
|
protected boolean |
distributedLogReplay
|
protected org.apache.hadoop.fs.FileSystem |
fs
|
protected org.apache.hadoop.fs.Path |
oldLogDir
|
protected org.apache.hadoop.fs.Path |
rootDir
|
protected LastSequenceId |
sequenceIdChecker
|
protected org.apache.hadoop.fs.Path |
srcDir
|
protected AtomicReference<Throwable> |
thrown
|
| Constructor Summary | |
|---|---|
HLogSplitter(org.apache.hadoop.conf.Configuration conf,
org.apache.hadoop.fs.Path rootDir,
org.apache.hadoop.fs.Path srcDir,
org.apache.hadoop.fs.Path oldLogDir,
org.apache.hadoop.fs.FileSystem fs,
LastSequenceId idChecker)
|
|
HLogSplitter(org.apache.hadoop.conf.Configuration conf,
org.apache.hadoop.fs.Path rootDir,
org.apache.hadoop.fs.Path srcDir,
org.apache.hadoop.fs.Path oldLogDir,
org.apache.hadoop.fs.FileSystem fs,
LastSequenceId idChecker,
ZooKeeperWatcher zkw)
|
|
| Method Summary | |
|---|---|
static HLogSplitter |
createLogSplitter(org.apache.hadoop.conf.Configuration conf,
org.apache.hadoop.fs.Path rootDir,
org.apache.hadoop.fs.Path srcDir,
org.apache.hadoop.fs.Path oldLogDir,
org.apache.hadoop.fs.FileSystem fs)
Create a new HLogSplitter using the given Configuration and the
hbase.hlog.splitter.impl property to derived the instance class to use. |
protected HLog.Writer |
createWriter(org.apache.hadoop.fs.FileSystem fs,
org.apache.hadoop.fs.Path logfile,
org.apache.hadoop.conf.Configuration conf)
Create a new HLog.Writer for writing log splits. |
static void |
finishSplitLogFile(org.apache.hadoop.fs.Path rootdir,
org.apache.hadoop.fs.Path oldLogDir,
String logfile,
org.apache.hadoop.conf.Configuration conf)
|
static void |
finishSplitLogFile(String logfile,
org.apache.hadoop.conf.Configuration conf)
Completes the work done by splitLogFile by archiving logs |
protected HLog.Reader |
getReader(org.apache.hadoop.fs.FileSystem fs,
org.apache.hadoop.fs.FileStatus file,
org.apache.hadoop.conf.Configuration conf,
boolean skipErrors,
CancelableProgressable reporter)
Create a new HLog.Reader for reading logs to split. |
protected HLog.Reader |
getReader(org.apache.hadoop.fs.FileSystem fs,
org.apache.hadoop.fs.Path curLogFile,
org.apache.hadoop.conf.Configuration conf,
CancelableProgressable reporter)
Create a new HLog.Reader for reading logs to split. |
long |
getSize()
|
long |
getTime()
|
List<org.apache.hadoop.fs.Path> |
splitLog()
Split up a bunch of regionserver commit log files that are no longer being written to, into new files, one per region for region to replay on startup. |
List<org.apache.hadoop.fs.Path> |
splitLog(CountDownLatch latch)
Split up a bunch of regionserver commit log files that are no longer being written to, into new files, one per region for region to replay on startup. |
boolean |
splitLogFile(org.apache.hadoop.fs.FileStatus logfile,
CancelableProgressable reporter)
|
static boolean |
splitLogFile(org.apache.hadoop.fs.Path rootDir,
org.apache.hadoop.fs.FileStatus logfile,
org.apache.hadoop.fs.FileSystem fs,
org.apache.hadoop.conf.Configuration conf,
CancelableProgressable reporter)
Splits a HLog file into region's recovered-edits directory |
static boolean |
splitLogFile(org.apache.hadoop.fs.Path rootDir,
org.apache.hadoop.fs.FileStatus logfile,
org.apache.hadoop.fs.FileSystem fs,
org.apache.hadoop.conf.Configuration conf,
CancelableProgressable reporter,
LastSequenceId idChecker,
ZooKeeperWatcher zkw)
Splits a HLog file into region's recovered-edits directory |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected final org.apache.hadoop.fs.Path rootDir
protected final org.apache.hadoop.fs.Path srcDir
protected final org.apache.hadoop.fs.Path oldLogDir
protected final org.apache.hadoop.fs.FileSystem fs
protected final org.apache.hadoop.conf.Configuration conf
protected AtomicReference<Throwable> thrown
protected final LastSequenceId sequenceIdChecker
protected boolean distributedLogReplay
| Constructor Detail |
|---|
public HLogSplitter(org.apache.hadoop.conf.Configuration conf,
org.apache.hadoop.fs.Path rootDir,
org.apache.hadoop.fs.Path srcDir,
org.apache.hadoop.fs.Path oldLogDir,
org.apache.hadoop.fs.FileSystem fs,
LastSequenceId idChecker)
public HLogSplitter(org.apache.hadoop.conf.Configuration conf,
org.apache.hadoop.fs.Path rootDir,
org.apache.hadoop.fs.Path srcDir,
org.apache.hadoop.fs.Path oldLogDir,
org.apache.hadoop.fs.FileSystem fs,
LastSequenceId idChecker,
ZooKeeperWatcher zkw)
| Method Detail |
|---|
public static HLogSplitter createLogSplitter(org.apache.hadoop.conf.Configuration conf,
org.apache.hadoop.fs.Path rootDir,
org.apache.hadoop.fs.Path srcDir,
org.apache.hadoop.fs.Path oldLogDir,
org.apache.hadoop.fs.FileSystem fs)
Configuration and the
hbase.hlog.splitter.impl property to derived the instance class to use.
distributedLogReplay won't be enabled by this constructor.
conf - rootDir - hbase directorysrcDir - logs directoryoldLogDir - directory where processed logs are archived tofs - FileSystem
public List<org.apache.hadoop.fs.Path> splitLog()
throws IOException
IOException - will throw if corrupted hlogs aren't tolerated
public List<org.apache.hadoop.fs.Path> splitLog(CountDownLatch latch)
throws IOException
latch -
IOException - will throw if corrupted hlogs aren't toleratedpublic long getTime()
public long getSize()
public static boolean splitLogFile(org.apache.hadoop.fs.Path rootDir,
org.apache.hadoop.fs.FileStatus logfile,
org.apache.hadoop.fs.FileSystem fs,
org.apache.hadoop.conf.Configuration conf,
CancelableProgressable reporter,
LastSequenceId idChecker,
ZooKeeperWatcher zkw)
throws IOException
If the log file has N regions then N recovered.edits files will be produced.
rootDir - logfile - fs - conf - reporter - idChecker - zkw - ZooKeeperWatcher if it's null, we will back to the old-style log splitting where we
dump out recoved.edits files for regions to replay on.
IOException
public static boolean splitLogFile(org.apache.hadoop.fs.Path rootDir,
org.apache.hadoop.fs.FileStatus logfile,
org.apache.hadoop.fs.FileSystem fs,
org.apache.hadoop.conf.Configuration conf,
CancelableProgressable reporter)
throws IOException
If the log file has N regions then N recovered.edits files will be produced.
rootDir - logfile - fs - conf - reporter -
IOException
public boolean splitLogFile(org.apache.hadoop.fs.FileStatus logfile,
CancelableProgressable reporter)
throws IOException
IOException
public static void finishSplitLogFile(String logfile,
org.apache.hadoop.conf.Configuration conf)
throws IOException
It is invoked by SplitLogManager once it knows that one of the SplitLogWorkers have completed the splitLogFile() part. If the master crashes then this function might get called multiple times.
logfile - conf -
IOException
public static void finishSplitLogFile(org.apache.hadoop.fs.Path rootdir,
org.apache.hadoop.fs.Path oldLogDir,
String logfile,
org.apache.hadoop.conf.Configuration conf)
throws IOException
IOException
protected HLog.Reader getReader(org.apache.hadoop.fs.FileSystem fs,
org.apache.hadoop.fs.FileStatus file,
org.apache.hadoop.conf.Configuration conf,
boolean skipErrors,
CancelableProgressable reporter)
throws IOException,
org.apache.hadoop.hbase.regionserver.wal.HLogSplitter.CorruptedLogFileException
HLog.Reader for reading logs to split.
fs - file - conf -
IOException
CorruptedLogFileException
org.apache.hadoop.hbase.regionserver.wal.HLogSplitter.CorruptedLogFileException
protected HLog.Writer createWriter(org.apache.hadoop.fs.FileSystem fs,
org.apache.hadoop.fs.Path logfile,
org.apache.hadoop.conf.Configuration conf)
throws IOException
HLog.Writer for writing log splits.
IOException
protected HLog.Reader getReader(org.apache.hadoop.fs.FileSystem fs,
org.apache.hadoop.fs.Path curLogFile,
org.apache.hadoop.conf.Configuration conf,
CancelableProgressable reporter)
throws IOException
HLog.Reader for reading logs to split.
IOException
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||