com.sleepycat.je.log
Class LatchedLogManager
java.lang.Object
com.sleepycat.je.log.LogManager
com.sleepycat.je.log.LatchedLogManager
public class LatchedLogManager
- extends LogManager
The LatchedLogManager uses the latches to implement critical sections.
Fields inherited from class com.sleepycat.je.log.LogManager |
envImpl, HEADER_BYTES, HEADER_CHECKSUM_OFFSET, HEADER_CONTENT_BYTES, HEADER_ENTRY_TYPE_OFFSET, HEADER_PREV_OFFSET, HEADER_SIZE_OFFSET, HEADER_VERSION_OFFSET, logBufferPool, logWriteLatch, PREV_BYTES |
Methods inherited from class com.sleepycat.je.log.LogManager |
countObsoleteINsInternal, countObsoleteNodeInternal, countObsoleteNodesInternal, flush, get, getLastLsnAtRecovery, getLogEntry, getLogEntry, getUnflushableTrackedSummaryInternal, loadStats, log, log, logForceFlip, logForceFlush, logInternal, putIntoBuffer, resetPool, setLastLsnAtRecovery, setReadHook |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
LatchedLogManager
public LatchedLogManager(EnvironmentImpl envImpl,
boolean readOnly)
throws DatabaseException
- There is a single log manager per database environment.
- Throws:
DatabaseException
logItem
protected LogManager.LogResult logItem(LoggableObject item,
boolean isProvisional,
boolean flushRequired,
boolean forceNewLogFile,
long oldNodeLsn,
boolean marshallOutsideLatch,
ByteBuffer marshalledBuffer,
UtilizationTracker tracker)
throws IOException,
DatabaseException
- Specified by:
logItem
in class LogManager
- Throws:
IOException
DatabaseException
flushInternal
protected void flushInternal()
throws LogException,
DatabaseException
- Specified by:
flushInternal
in class LogManager
- Throws:
LogException
DatabaseException
getUnflushableTrackedSummary
public TrackedFileSummary getUnflushableTrackedSummary(long file)
throws DatabaseException
- Description copied from class:
LogManager
- Returns a tracked summary for the given file which will not be flushed.
Used for watching changes that occur while a file is being cleaned.
- Specified by:
getUnflushableTrackedSummary
in class LogManager
- Throws:
DatabaseException
- See Also:
LogManager#getUnflusableTrackedSummary
countObsoleteNode
public void countObsoleteNode(long lsn,
LogEntryType type)
throws DatabaseException
- Description copied from class:
LogManager
- Count node as obsolete under the log write latch. This is done here
because the log write latch is managed here, and all utilization
counting must be performed under the log write latch.
- Specified by:
countObsoleteNode
in class LogManager
- Throws:
DatabaseException
- See Also:
LogManager#countObsoleteLNs
countObsoleteNodes
public void countObsoleteNodes(TrackedFileSummary[] summaries)
throws DatabaseException
- Description copied from class:
LogManager
- Counts file summary info under the log write latch.
- Specified by:
countObsoleteNodes
in class LogManager
- Throws:
DatabaseException
- See Also:
LogManager.countObsoleteNodes(com.sleepycat.je.cleaner.TrackedFileSummary[])
countObsoleteINs
public void countObsoleteINs(List lsnList)
throws DatabaseException
- Description copied from class:
LogManager
- Counts the given obsolete IN LSNs under the log write latch.
- Specified by:
countObsoleteINs
in class LogManager
- Throws:
DatabaseException
- See Also:
LogManager.countObsoleteINs(java.util.List)
Copyright 2004-2005 Sleepycat, Inc. All Rights Reserved.