|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.sleepycat.je.tree.Node
com.sleepycat.je.tree.IN
com.sleepycat.je.tree.DIN
public final class DIN
An DIN represents an Duplicate Internal Node in the JE tree.
Field Summary |
---|
Fields inherited from class com.sleepycat.je.tree.IN |
---|
ACCUMULATED_LIMIT, DBMAP_LEVEL, EXACT_MATCH, INSERT_SUCCESS, LEVEL_MASK, MAIN_LEVEL, MAX_LEVEL, MAY_EVICT_LNS, MAY_EVICT_NODE, MAY_NOT_EVICT, MIN_LEVEL |
Constructor Summary | |
---|---|
DIN()
Create an empty DIN, with no node id, to be filled in from the log. |
|
DIN(DatabaseImpl db,
byte[] identifierKey,
int capacity,
byte[] dupKey,
ChildReference dupCountLNRef,
int level)
Create a new DIN. |
Method Summary | |
---|---|
(package private) void |
accumulateStats(TreeWalkerStatsAccumulator acc)
|
String |
beginTag()
|
protected long |
computeMemorySize()
Count up the memory usage attributable to this node alone. |
static long |
computeOverhead(DbConfigManager configManager)
|
boolean |
containsDuplicates()
|
protected IN |
createNewInstance(byte[] identifierKey,
int maxEntries,
int level)
Create a new DIN. |
protected void |
dumpLogAdditional(StringBuffer sb)
DINS need to dump their dup key |
String |
dumpString(int nSpaces,
boolean dumpTags)
For unit test support: |
String |
endTag()
|
protected int |
generateLevel(DatabaseId dbId,
int newLevel)
|
byte[] |
getChildKey(IN child)
Get the key (dupe or identifier) in child that is used to locate it in 'this' node. |
DupCountLN |
getDupCountLN()
|
ChildReference |
getDupCountLNRef()
|
byte[] |
getDupKey()
Return the key for this duplicate set. |
byte[] |
getDupTreeKey()
Return the key for navigating through the duplicate tree. |
Comparator |
getKeyComparator()
Return the comparator function to be used for DINs. |
int |
getLogSize()
|
LogEntryType |
getLogType()
All objects that are reponsible for a generating a type of log entry must implement this. |
byte[] |
getMainTreeKey()
Return the key for navigating through the main tree. |
protected long |
getMemoryOverhead(MemoryBudget mb)
|
(package private) void |
incrementDuplicateCount(EnvironmentImpl env,
LockResult lockResult,
byte[] key,
Locker locker)
|
boolean |
isDbRoot()
|
(package private) boolean |
matchLNByNodeId(TreeLocation location,
long nodeId)
|
void |
readFromLog(ByteBuffer itemBuffer,
byte entryTypeVersion)
Initialize this object from the data in itemBuf. |
byte[] |
selectKey(byte[] mainTreeKey,
byte[] dupTreeKey)
|
(package private) void |
setDupCountLN(ChildReference dupCountLNRef)
Assign the Dup Count LN. |
String |
shortClassName()
|
String |
toString()
Default toString method at the root of the tree. |
void |
updateDupCountLN(Node target)
Assign the Dup Count LN node. |
void |
updateDupCountLNRef(long newLsn)
Update dup count LSN. |
void |
updateDupCountLNRefAndNullTarget(long newLsn)
Update Dup Count LN. |
void |
writeToLog(ByteBuffer logBuffer)
Serialize this object into the buffer. |
Methods inherited from class com.sleepycat.je.tree.Node |
---|
countAsObsoleteWhenLogged, dump, getLastId, getMemorySizeIncludedByParent, getNextNodeId, getNodeId, getType, marshallOutsideWriteLatch, postLogWork, setLastNodeId, setNodeId, shortDescription |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface com.sleepycat.je.log.LoggableObject |
---|
countAsObsoleteWhenLogged, marshallOutsideWriteLatch, postLogWork |
Constructor Detail |
---|
public DIN()
public DIN(DatabaseImpl db, byte[] identifierKey, int capacity, byte[] dupKey, ChildReference dupCountLNRef, int level)
Method Detail |
---|
protected int generateLevel(DatabaseId dbId, int newLevel)
generateLevel
in class IN
protected IN createNewInstance(byte[] identifierKey, int maxEntries, int level)
createNewInstance
in class IN
public byte[] getDupKey()
getDupKey
in class IN
public byte[] getChildKey(IN child) throws DatabaseException
getChildKey
in class IN
DatabaseException
public byte[] selectKey(byte[] mainTreeKey, byte[] dupTreeKey)
selectKey
in class IN
public byte[] getDupTreeKey()
getDupTreeKey
in class IN
public byte[] getMainTreeKey()
getMainTreeKey
in class IN
public ChildReference getDupCountLNRef()
public DupCountLN getDupCountLN() throws DatabaseException
DatabaseException
void setDupCountLN(ChildReference dupCountLNRef)
public void updateDupCountLN(Node target)
public void updateDupCountLNRefAndNullTarget(long newLsn)
public void updateDupCountLNRef(long newLsn)
public boolean containsDuplicates()
containsDuplicates
in class Node
public boolean isDbRoot()
isDbRoot
in class IN
public final Comparator getKeyComparator()
getKeyComparator
in class IN
void incrementDuplicateCount(EnvironmentImpl env, LockResult lockResult, byte[] key, Locker locker) throws DatabaseException
DatabaseException
protected long computeMemorySize()
computeMemorySize
in class IN
public static long computeOverhead(DbConfigManager configManager) throws DatabaseException
DatabaseException
protected long getMemoryOverhead(MemoryBudget mb)
getMemoryOverhead
in class IN
boolean matchLNByNodeId(TreeLocation location, long nodeId) throws DatabaseException
matchLNByNodeId
in class Node
DatabaseException
void accumulateStats(TreeWalkerStatsAccumulator acc)
accumulateStats
in class IN
public LogEntryType getLogType()
LoggableObject
getLogType
in interface LoggableObject
getLogType
in class IN
IN.getLogType()
public int getLogSize()
getLogSize
in interface LogWritable
getLogSize
in class IN
IN.getLogSize()
public void writeToLog(ByteBuffer logBuffer)
LogWritable
writeToLog
in interface LogWritable
writeToLog
in class IN
logBuffer
- is the destination bufferIN.writeToLog(java.nio.ByteBuffer)
public void readFromLog(ByteBuffer itemBuffer, byte entryTypeVersion) throws LogException
LogReadable
readFromLog
in interface LogReadable
readFromLog
in class IN
LogException
IN.readFromLog(java.nio.ByteBuffer, byte)
protected void dumpLogAdditional(StringBuffer sb)
dumpLogAdditional
in class IN
public String beginTag()
beginTag
in class IN
public String endTag()
endTag
in class IN
public String dumpString(int nSpaces, boolean dumpTags)
dumpString
in class IN
public String toString()
Node
toString
in class IN
public String shortClassName()
shortClassName
in class IN
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |