com.sleepycat.je.log
Class SyncedLogManager

java.lang.Object
  extended by com.sleepycat.je.log.LogManager
      extended by com.sleepycat.je.log.SyncedLogManager

public class SyncedLogManager
extends LogManager

The SyncedLogManager uses the synchronized keyword to implement protected regions.


Nested Class Summary
 
Nested classes/interfaces inherited from class com.sleepycat.je.log.LogManager
LogManager.LogResult
 
Field Summary
 
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
 
Constructor Summary
SyncedLogManager(EnvironmentImpl envImpl, boolean readOnly)
          There is a single log manager per database environment.
 
Method Summary
 void countObsoleteINs(List lsnList)
          Counts the given obsolete IN LSNs under the log write latch.
 void countObsoleteNode(long lsn, LogEntryType type)
          Count node as obsolete under the log write latch.
 void countObsoleteNodes(TrackedFileSummary[] summaries)
          Counts file summary info under the log write latch.
protected  void flushInternal()
           
 TrackedFileSummary getUnflushableTrackedSummary(long file)
          Returns a tracked summary for the given file which will not be flushed.
protected  LogManager.LogResult logItem(LoggableObject item, boolean isProvisional, boolean flushRequired, boolean forceNewLogFile, long oldNodeLsn, boolean marshallOutsideLatch, ByteBuffer marshalledBuffer, UtilizationTracker tracker)
           
 
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
 

Constructor Detail

SyncedLogManager

public SyncedLogManager(EnvironmentImpl envImpl,
                        boolean readOnly)
                 throws DatabaseException
There is a single log manager per database environment.

Throws:
DatabaseException
Method Detail

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.getUnflushableTrackedSummary(long)

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.