| java.lang.Object com.sleepycat.je.log.FileReader com.sleepycat.je.log.INFileReader
INFileReader | public class INFileReader extends FileReader (Code) | | INFileReader supports recovery by scanning log files during the IN rebuild
pass. It looks for internal nodes (all types), segregated by whether they
belong to the main tree or the duplicate trees.
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.
|
Constructor Summary | |
public | INFileReader(EnvironmentImpl env, int readBufferSize, long startLsn, long finishLsn, boolean trackIds, boolean mapDbOnly, long partialCkptStart, Map fileSummaryLsns) Create this reader to start at a given LSN. |
Method Summary | |
public void | addTargetType(LogEntryType entryType) Configure this reader to target this kind of entry. | public DatabaseId | getDatabaseId() Get the last databaseId seen by the reader. | public byte[] | getDeletedIdKey() Get the deleted id key stored in the last delete info log entry. | public long | getDeletedNodeId() Get the deleted node id stored in the last delete info log entry. | public byte[] | getDupDeletedDupKey() Get the deleted main key stored in the last delete info log entry. | public byte[] | getDupDeletedMainKey() Get the deleted main key stored in the last delete info log entry. | public long | getDupDeletedNodeId() Get the deleted node id stored in the last delete info log entry. | public IN | getIN() Get the last IN seen by the reader. | public long | getLsnOfIN() Get the LSN that should represent this IN. | public int | getMaxDbId() Get the maximum db id seen by the reader. | public long | getMaxNodeId() Get the maximum node id seen by the reader. | public long | getMaxTxnId() Get the maximum txn id seen by the reader. | public boolean | isDeleteInfo() | public boolean | isDupDeleteInfo() | protected boolean | isTargetEntry(byte entryTypeNum, byte entryTypeVersion) If we're tracking node, database and txn ids, we want to see all node
log entries. | protected boolean | processEntry(ByteBuffer entryBuffer) This reader looks at all nodes for the max node id and database id. |
INFileReader | public INFileReader(EnvironmentImpl env, int readBufferSize, long startLsn, long finishLsn, boolean trackIds, boolean mapDbOnly, long partialCkptStart, Map fileSummaryLsns) throws IOException, DatabaseException(Code) | | Create this reader to start at a given LSN.
|
getDatabaseId | public DatabaseId getDatabaseId()(Code) | | Get the last databaseId seen by the reader.
|
getDeletedIdKey | public byte[] getDeletedIdKey()(Code) | | Get the deleted id key stored in the last delete info log entry.
|
getDeletedNodeId | public long getDeletedNodeId()(Code) | | Get the deleted node id stored in the last delete info log entry.
|
getDupDeletedDupKey | public byte[] getDupDeletedDupKey()(Code) | | Get the deleted main key stored in the last delete info log entry.
|
getDupDeletedMainKey | public byte[] getDupDeletedMainKey()(Code) | | Get the deleted main key stored in the last delete info log entry.
|
getDupDeletedNodeId | public long getDupDeletedNodeId()(Code) | | Get the deleted node id stored in the last delete info log entry.
|
getLsnOfIN | public long getLsnOfIN()(Code) | | Get the LSN that should represent this IN. For most INs, it's the LSN
that was just read. For BINDelta entries, it's the LSN of the last
full version.
|
getMaxDbId | public int getMaxDbId()(Code) | | Get the maximum db id seen by the reader.
|
getMaxNodeId | public long getMaxNodeId()(Code) | | Get the maximum node id seen by the reader.
|
getMaxTxnId | public long getMaxTxnId()(Code) | | Get the maximum txn id seen by the reader.
|
isDeleteInfo | public boolean isDeleteInfo()(Code) | | true if the last entry was a delete info entry. |
isDupDeleteInfo | public boolean isDupDeleteInfo()(Code) | | true if the last entry was a dup delete info entry. |
isTargetEntry | protected boolean isTargetEntry(byte entryTypeNum, byte entryTypeVersion) throws DatabaseException(Code) | | If we're tracking node, database and txn ids, we want to see all node
log entries. If not, we only want to see IN entries.
true if this is an IN entry. |
processEntry | protected boolean processEntry(ByteBuffer entryBuffer) throws DatabaseException(Code) | | This reader looks at all nodes for the max node id and database id. It
only returns non-provisional INs and IN delete entries.
|
|
|