|
||||||||||
| 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
An DIN represents an Duplicate Internal Node in the JE tree.
| Field Summary |
| Fields inherited from class com.sleepycat.je.tree.IN |
DBMAP_LEVEL, evictionProhibited, EXACT_MATCH, INSERT_SUCCESS, MAIN_LEVEL, MAX_LEVEL, MIN_LEVEL |
| Constructor Summary | |
DIN()
Create an empty DIN, with no node id, to be filled in from the log. |
|
DIN(DatabaseImpl db,
Key identifierKey,
int capacity,
Key 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(Key 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)
|
Key |
getChildKey(IN child)
Get the key (dupe or identifier) in child that is used to locate it in 'this' node. |
DupCountLN |
getDupCountLN()
|
ChildReference |
getDupCountLNRef()
|
Key |
getDupKey()
Return the key for this duplicate set. |
Key |
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. |
Key |
getMainTreeKey()
Return the key for navigating through the main tree. |
protected long |
getMemoryOverhead(MemoryBudget mb)
|
(package private) void |
incrementDuplicateCount(EnvironmentImpl env,
LockResult lockResult,
Key key,
Locker locker)
|
boolean |
isDbRoot()
|
(package private) boolean |
matchLNByNodeId(TreeLocation location,
long nodeId)
|
void |
readFromLog(ByteBuffer itemBuffer)
Initialize this object from the data in itemBuf. |
Key |
selectKey(Key mainTreeKey,
Key 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 |
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 |
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 |
marshallOutsideWriteLatch, postLogWork |
| Constructor Detail |
public DIN()
public DIN(DatabaseImpl db,
Key identifierKey,
int capacity,
Key dupKey,
ChildReference dupCountLNRef,
int level)
| Method Detail |
protected int generateLevel(DatabaseId dbId,
int newLevel)
generateLevel in class IN
protected IN createNewInstance(Key identifierKey,
int maxEntries,
int level)
createNewInstance in class INpublic Key getDupKey()
getDupKey in class IN
public Key getChildKey(IN child)
throws DatabaseException
getChildKey in class INDatabaseException
public Key selectKey(Key mainTreeKey,
Key dupTreeKey)
selectKey in class INpublic Key getDupTreeKey()
getDupTreeKey in class INpublic Key getMainTreeKey()
getMainTreeKey in class INpublic ChildReference getDupCountLNRef()
public DupCountLN getDupCountLN()
throws DatabaseException
DatabaseExceptionvoid setDupCountLN(ChildReference dupCountLNRef)
public void updateDupCountLNRefAndNullTarget(long newLsn)
public void updateDupCountLNRef(long newLsn)
public boolean containsDuplicates()
containsDuplicates in class Nodepublic boolean isDbRoot()
isDbRoot in class INpublic final Comparator getKeyComparator()
getKeyComparator in class IN
void incrementDuplicateCount(EnvironmentImpl env,
LockResult lockResult,
Key key,
Locker locker)
throws DatabaseException
DatabaseExceptionprotected long computeMemorySize()
computeMemorySize in class IN
public static long computeOverhead(DbConfigManager configManager)
throws DatabaseException
DatabaseExceptionprotected long getMemoryOverhead(MemoryBudget mb)
getMemoryOverhead in class IN
boolean matchLNByNodeId(TreeLocation location,
long nodeId)
throws DatabaseException
matchLNByNodeId in class NodeDatabaseExceptionvoid accumulateStats(TreeWalkerStatsAccumulator acc)
accumulateStats in class INpublic LogEntryType getLogType()
LoggableObject
getLogType in interface LoggableObjectgetLogType in class ININ.getLogType()public int getLogSize()
getLogSize in interface LogWritablegetLogSize in class ININ.getLogSize()public void writeToLog(ByteBuffer logBuffer)
LogWritable
writeToLog in interface LogWritablewriteToLog in class ININ.writeToLog(java.nio.ByteBuffer)
public void readFromLog(ByteBuffer itemBuffer)
throws LogException
LogReadable
readFromLog in interface LogReadablereadFromLog in class INLogExceptionIN.readFromLog(java.nio.ByteBuffer)protected void dumpLogAdditional(StringBuffer sb)
dumpLogAdditional in class INpublic String beginTag()
beginTag in class INpublic String endTag()
endTag in class IN
public String dumpString(int nSpaces,
boolean dumpTags)
dumpString in class INpublic String toString()
Node
toString in class INpublic String shortClassName()
shortClassName in class IN
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||