public class CommitLog extends java.lang.Object implements CommitLogMBean
| Modifier and Type | Field and Description |
|---|---|
CommitLogSegment |
activeSegment |
CommitLogAllocator |
allocator |
CommitLogArchiver |
archiver |
static int |
END_OF_SEGMENT_MARKER |
static int |
END_OF_SEGMENT_MARKER_SIZE |
static CommitLog |
instance |
| Modifier and Type | Method and Description |
|---|---|
int |
activeSegments()
Used by tests.
|
void |
add(RowMutation rm)
Add a RowMutation to the commit log.
|
void |
discardCompletedSegments(java.util.UUID cfId,
ReplayPosition context)
Modifies the per-CF dirty cursors of any commit log segments for the column family according to the position
given.
|
java.util.List<java.lang.String> |
getActiveSegmentNames() |
java.lang.String |
getArchiveCommand()
Command to execute to archive a commitlog segment.
|
java.util.List<java.lang.String> |
getArchivingSegmentNames() |
long |
getCompletedTasks()
Get the number of completed tasks
|
java.util.concurrent.Future<ReplayPosition> |
getContext() |
long |
getPendingTasks()
Get the number of tasks waiting to be executed
|
java.lang.String |
getRestoreCommand()
Command to execute to make an archived commitlog live again
|
java.lang.String |
getRestoreDirectories()
Directory to scan the recovery files in
|
long |
getRestorePointInTime()
Restore mutations created up to and including this timestamp in GMT
Format: yyyy:MM:dd HH:mm:ss (2012:04:31 20:43:12)
Recovery will continue through the segment when the first client-supplied
timestamp greater than this time is encountered, but only mutations less than
or equal to this timestamp will be applied.
|
java.lang.String |
getRestorePrecision()
get precision of the timestamp used in the restore (MILLISECONDS, MICROSECONDS, ...)
to determine if passed the restore point in time.
|
long |
getTotalCommitlogSize()
Get the current size used by all the commitlog segments.
|
static boolean |
handleCommitError(java.lang.String message,
java.lang.Throwable t) |
int |
recover()
Perform recovery on commit logs located in the directory specified by the config file.
|
int |
recover(java.io.File... clogs)
Perform recovery on a list of commit log files.
|
void |
recover(java.lang.String path)
Perform recovery on a single commit log.
|
void |
resetUnsafe()
FOR TESTING PURPOSES.
|
void |
shutdownBlocking()
Shuts down the threads used by the commit log, blocking until completion.
|
void |
sync()
Forces a disk flush on the commit log files that need it.
|
public static final CommitLog instance
public final CommitLogAllocator allocator
public final CommitLogArchiver archiver
public static final int END_OF_SEGMENT_MARKER
public static final int END_OF_SEGMENT_MARKER_SIZE
public volatile CommitLogSegment activeSegment
public void resetUnsafe()
public int recover()
throws java.io.IOException
java.io.IOExceptionpublic int recover(java.io.File... clogs)
throws java.io.IOException
clogs - the list of commit log files to replayjava.io.IOExceptionpublic void recover(java.lang.String path)
throws java.io.IOException
recover in interface CommitLogMBeanjava.io.IOExceptionpublic java.util.concurrent.Future<ReplayPosition> getContext()
public int activeSegments()
public void add(RowMutation rm)
rm - the RowMutation to add to the logpublic void discardCompletedSegments(java.util.UUID cfId,
ReplayPosition context)
cfId - the column family ID that was flushedcontext - the replay position of the flushpublic void sync()
public long getCompletedTasks()
CommitLogMBeangetCompletedTasks in interface CommitLogMBeanCommitLogMetrics.completedTaskspublic long getPendingTasks()
CommitLogMBeangetPendingTasks in interface CommitLogMBeanCommitLogMetrics.pendingTaskspublic long getTotalCommitlogSize()
CommitLogMBeangetTotalCommitlogSize in interface CommitLogMBeanCommitLogMetrics.totalCommitLogSizepublic java.lang.String getArchiveCommand()
CommitLogMBeangetArchiveCommand in interface CommitLogMBeanpublic java.lang.String getRestoreCommand()
CommitLogMBeangetRestoreCommand in interface CommitLogMBeanpublic java.lang.String getRestoreDirectories()
CommitLogMBeangetRestoreDirectories in interface CommitLogMBeanpublic long getRestorePointInTime()
CommitLogMBeangetRestorePointInTime in interface CommitLogMBeanpublic java.lang.String getRestorePrecision()
CommitLogMBeangetRestorePrecision in interface CommitLogMBeanpublic java.util.List<java.lang.String> getActiveSegmentNames()
getActiveSegmentNames in interface CommitLogMBeanpublic java.util.List<java.lang.String> getArchivingSegmentNames()
getArchivingSegmentNames in interface CommitLogMBeanpublic void shutdownBlocking()
throws java.lang.InterruptedException
java.lang.InterruptedExceptionpublic static boolean handleCommitError(java.lang.String message,
java.lang.Throwable t)
Copyright © 2015 The Apache Software Foundation