| java.lang.Object com.sleepycat.je.log.LogBufferPool
LogBufferPool | class LogBufferPool (Code) | | LogBufferPool keeps a set of log buffers.
|
getLogBufferSize | final int getLogBufferSize()(Code) | | |
getReadBuffer | LogBuffer getReadBuffer(long lsn) throws DatabaseException(Code) | | Find a buffer that holds this LSN.
the buffer that contains this LSN, latched and ready toread, or return null. |
getWriteBuffer | LogBuffer getWriteBuffer(int sizeNeeded, boolean flippedFile) throws IOException, DatabaseException(Code) | | Get a log buffer for writing sizeNeeded bytes. If currentWriteBuffer is
too small or too full, flush currentWriteBuffer and get a new one.
Called within the log write latch.
a buffer that can hold sizeNeeded bytes. |
reset | void reset(DbConfigManager configManager) throws DatabaseException(Code) | | Initialize the pool at construction time and when the cache is resized.
This method is called after the memory budget has been calculated.
|
writeBufferToFile | void writeBufferToFile(int sizeNeeded) throws IOException, DatabaseException(Code) | | Write the contents of the currentWriteBuffer to disk. Leave this buffer
in memory to be available to would be readers. Set up a new
currentWriteBuffer. Assumes the log write latch is held.
Parameters: sizeNeeded - is the size of the next object we need to write tothe log. May be 0 if this is called on behalf of LogManager.flush(). |
writeCompleted | void writeCompleted(long lsn, boolean flushRequired) throws DatabaseException, IOException(Code) | | A loggable object has been freshly marshalled into the write log buffer.
1. Update buffer so it knows what LSNs it contains.
2. If this object requires a flush, write this buffer out to the
backing file.
Assumes log write latch is held.
|
|
|