public class INFileReader extends FileReader
This file reader can also be run in tracking mode to keep track of the maximum node ID, database ID and txn ID seen so those sequences can be updated properly at recovery. In this mode it also performs utilization counting. It is only run once in tracking mode per recovery, in the first phase of recovery.
FileReader.EOFException, FileReader.ReadWindow
cksumValidator, currentEntryHeader, currentEntryOffset, currentEntryPrevOffset, envImpl, eof, fileManager, forward, logger, nextEntryOffset, startLsn, window
Constructor and Description |
---|
INFileReader(EnvironmentImpl env,
int readBufferSize,
long startLsn,
long finishLsn,
boolean trackIds,
boolean mapDbOnly,
long partialCkptStart,
long ckptEnd,
RecoveryUtilizationTracker tracker)
Create this reader to start at a given LSN.
|
INFileReader(EnvironmentImpl env,
int readBufferSize,
long startLsn,
long finishLsn,
boolean trackIds,
boolean mapDbOnly,
long partialCkptStart,
long ckptEnd,
RecoveryUtilizationTracker tracker,
java.util.Set<DatabaseId> logVersion8UpgradeDbs,
java.util.concurrent.atomic.AtomicBoolean logVersion8UpgradeDeltas)
Create with logVersion8UpgradeDbs and logVersion8UpgradeDeltas params.
|
Modifier and Type | Method and Description |
---|---|
void |
addTargetType(LogEntryType entryType)
Configure this reader to target this kind of entry.
|
DatabaseId |
getDatabaseId()
Get the last databaseId seen by the reader.
|
IN |
getIN(DatabaseImpl dbImpl)
Get the last IN seen by the reader.
|
long |
getMaxDbId()
Get the maximum DB ID seen by the reader.
|
long |
getMaxNodeId()
Get the maximum node ID seen by the reader.
|
long |
getMaxTxnId()
Get the maximum txn ID seen by the reader.
|
long |
getMinReplicatedDbId() |
long |
getMinReplicatedNodeId() |
long |
getMinReplicatedTxnId() |
VLSNRecoveryProxy |
getVLSNProxy() |
boolean |
isBINDelta() |
boolean |
isDeleteInfo() |
boolean |
isDupDeleteInfo() |
protected boolean |
isTargetEntry()
If we're tracking node, database and txn IDs, we want to see all node
log entries.
|
protected boolean |
processEntry(java.nio.ByteBuffer entryBuffer)
This reader returns non-provisional INs and IN delete entries.
|
entryIsReplicated, getAndResetNReads, getLastEntrySize, getLastLsn, getNRepeatIteratorReads, getNumRead, initStartingPosition, makeWindow, readNextEntry, readNextEntryAllowExceptions, resyncReader, setAlwaysValidateChecksum, setBackwardPosition, setForwardPosition, skipData, skipEntry, threadSafeBufferFlip, threadSafeBufferPosition, threadSafeBufferPosition
public INFileReader(EnvironmentImpl env, int readBufferSize, long startLsn, long finishLsn, boolean trackIds, boolean mapDbOnly, long partialCkptStart, long ckptEnd, RecoveryUtilizationTracker tracker)
public INFileReader(EnvironmentImpl env, int readBufferSize, long startLsn, long finishLsn, boolean trackIds, boolean mapDbOnly, long partialCkptStart, long ckptEnd, RecoveryUtilizationTracker tracker, java.util.Set<DatabaseId> logVersion8UpgradeDbs, java.util.concurrent.atomic.AtomicBoolean logVersion8UpgradeDeltas) throws DatabaseException
DatabaseException
public void addTargetType(LogEntryType entryType) throws DatabaseException
DatabaseException
protected boolean isTargetEntry() throws DatabaseException
isTargetEntry
in class FileReader
DatabaseException
- from subclasses.protected boolean processEntry(java.nio.ByteBuffer entryBuffer) throws DatabaseException
processEntry
in class FileReader
entryBuffer
- contains the entry data and is positioned at the
dataDatabaseException
public IN getIN(DatabaseImpl dbImpl) throws DatabaseException
DatabaseException
public DatabaseId getDatabaseId()
public long getMaxNodeId()
public long getMinReplicatedNodeId()
public long getMaxDbId()
public long getMinReplicatedDbId()
public long getMaxTxnId()
public long getMinReplicatedTxnId()
public boolean isDeleteInfo()
public boolean isDupDeleteInfo()
public boolean isBINDelta()
public VLSNRecoveryProxy getVLSNProxy()
Copyright (c) 2004-2012 Oracle. All rights reserved.