class LogBufferPool
extends java.lang.Object
Constructor and Description |
---|
LogBufferPool(FileManager fileManager,
EnvironmentImpl envImpl) |
Modifier and Type | Method and Description |
---|---|
StatGroup |
getBufferPoolLatchStats()
For unit testing.
|
(package private) int |
getLogBufferSize() |
long |
getNCacheMiss()
Return the current nCacheMiss statistic in a lightweight fashion, without
perturbing other statistics or requiring synchronization.
|
(package private) LogBuffer |
getReadBufferByLsn(long lsn)
Find a buffer that contains the given LSN location.
|
(package private) LogBuffer |
getWriteBuffer(int sizeNeeded,
boolean flippedFile)
Get a log buffer for writing sizeNeeded bytes.
|
(package private) StatGroup |
loadStats(StatsConfig config) |
(package private) void |
reset(DbConfigManager configManager)
Initialize the pool at construction time and when the cache is resized.
|
(package private) void |
writeBufferToFile(int sizeNeeded,
boolean flushRequired)
Write the contents of the currentWriteBuffer to disk.
|
(package private) void |
writeCompleted(long lsn,
boolean flushRequired,
boolean fsyncRequired)
A loggable object has been freshly marshalled into the write log buffer.
|
LogBufferPool(FileManager fileManager, EnvironmentImpl envImpl) throws DatabaseException
DatabaseException
final int getLogBufferSize()
void reset(DbConfigManager configManager) throws DatabaseException
DatabaseException
LogBuffer getWriteBuffer(int sizeNeeded, boolean flippedFile) throws java.io.IOException, DatabaseException
java.io.IOException
DatabaseException
void writeBufferToFile(int sizeNeeded, boolean flushRequired) throws DatabaseException
sizeNeeded
- is the size of the next object we need to write to
the log. 0 if this is called on behalf of LogManager.flush() and
indicates that a flush is required (i.e. the write() must complete
and may not be queued before returning.flushRequired
- true if a write must finish prior to returning from
this call (i.e. this is a TxnWriteNoSync call). false if the write may
be queued and executed later by placing it in the Write Queue.DatabaseException
void writeCompleted(long lsn, boolean flushRequired, boolean fsyncRequired) throws DatabaseException
DatabaseException
LogBuffer getReadBufferByLsn(long lsn) throws DatabaseException
DatabaseException
StatGroup loadStats(StatsConfig config) throws DatabaseException
DatabaseException
public long getNCacheMiss()
public StatGroup getBufferPoolLatchStats()
Copyright (c) 2004-2012 Oracle. All rights reserved.