com.sleepycat.je.tree.dupConvert
Class DBIN

java.lang.Object
  extended by com.sleepycat.je.tree.Node
      extended by com.sleepycat.je.tree.IN
          extended by com.sleepycat.je.tree.BIN
              extended by com.sleepycat.je.tree.dupConvert.DBIN
All Implemented Interfaces:
Loggable, Comparable<IN>

public final class DBIN
extends BIN
implements Loggable

A DBIN represents an Duplicate Bottom Internal Node in the JE tree. Obsolete in log version 8, only used by DupConvert and some log readers.


Field Summary
 
Fields inherited from class com.sleepycat.je.tree.IN
ACCUMULATED_LIMIT, BIN_LEVEL, DBMAP_LEVEL, EXACT_MATCH, INSERT_SUCCESS, latch, LEVEL_MASK, MAIN_LEVEL, MAX_LEVEL, MAY_EVICT_LNS, MAY_EVICT_NODE, MAY_NOT_EVICT, MIN_LEVEL
 
Fields inherited from class com.sleepycat.je.tree.Node
NULL_NODE_ID
 
Constructor Summary
DBIN()
           
DBIN(SizeofMarker marker)
          For Sizeof, set all array fields to null, since they are not part of the fixed overhead.
 
Method Summary
 String beginTag()
           
 boolean containsDuplicates()
          Since DIN/DBIN/DupCountLN are no longer used in the Btree, this method should normally only be used by dup conversion or entities that do not access records via the Btree.
protected  void dumpLogAdditional(StringBuilder sb)
          DBINS need to dump their dup key
 String dumpString(int nSpaces, boolean dumpTags)
          For unit test support:
 String endTag()
           
protected  long getFixedMemoryOverhead()
           
 int getLogSize()
           
 LogEntryType getLogType()
          Get the log type of this node.
protected  boolean isEvictionProhibited()
          Note that the IN may or may not be latched when this method is called.
 void readFromLog(ByteBuffer itemBuffer, int entryVersion)
          Initialize this object from the data in itemBuf.
 String shortClassName()
           
 void writeToLog(ByteBuffer logBuffer)
          Serialize this object into the buffer.
 
Methods inherited from class com.sleepycat.je.tree.BIN
addCursor, afterLog, beforeLog, clearKnownDeleted, compress, computeMemorySize, createNewInstance, createReference, evictLN, evictLNs, fetchTarget, getCursorSet, getLastDeltaVersion, getLastLoggedVersion, getTreeAdminMemorySize, getVLSN, getVLSNCache, incEvictStats, incFetchStats, isBIN, isCompressible, logDirtyChildren, nCursors, queueSlotDeletion, removeCursor, setKnownDeleted, setKnownDeletedClearAll, setProhibitNextDelta, shouldLogDelta, verifyCursors
 
Methods inherited from class com.sleepycat.je.tree.IN
clearLsnCompaction, clearPendingDeleted, compactMemory, compareTo, deleteEntry, dumpLog, equals, fetchTargetWithExclusiveLatch, findEntry, findEntry, getBudgetedMemorySize, getCompactMaxKeyLength, getDatabase, getDatabaseId, getDirty, getEvictionType, getGeneration, getGenericLogType, getIdentifierKey, getInListResident, getInMemorySize, getKey, getKeyComparator, getKeyVals, getLastFullVersion, getLatchQueueLength, getLatchString, getLevel, getLsn, getMaxEntries, getMigrate, getNEntries, getNodeId, getRecalcToggle, getState, getTarget, getTargets, hashCode, init, initMemorySize, insertEntry, insertEntry1, isDbRoot, isEntryKnownDeleted, isEntryPendingDeleted, isEvictable, isIN, isKeyInBounds, isLatchOwnerForRead, isLatchOwnerForWrite, isRoot, latch, latch, latchNoWait, latchNoWait, latchShared, latchShared, log, log, log, logicalEquals, needsSplitting, optionalLog, optionalLogProvisional, postFetchInit, postRecoveryInit, prepareForSlotReuse, printMemorySize, recalcKeyPrefix, releaseLatch, releaseLatchIfOwner, resetAndGetMemorySize, setDatabase, setDirty, setGeneration, setGeneration, setIdentifierKey, setInListResident, setMigrate, setPendingDeleted, setRecalcToggle, splitInternal, toString, updateEntry, updateEntry, updateEntry, updateMemorySize, updateNode, updateNode, updateNode, verify, verifyMemorySize
 
Methods inherited from class com.sleepycat.je.tree.Node
dump, getMemorySizeIncludedByParent, getTransactionId, getType, isLN
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.sleepycat.je.log.Loggable
dumpLog, getTransactionId, logicalEquals
 

Constructor Detail

DBIN

public DBIN()

DBIN

public DBIN(SizeofMarker marker)
For Sizeof, set all array fields to null, since they are not part of the fixed overhead.

Method Detail

containsDuplicates

public boolean containsDuplicates()
Description copied from class: Node
Since DIN/DBIN/DupCountLN are no longer used in the Btree, this method should normally only be used by dup conversion or entities that do not access records via the Btree.

Overrides:
containsDuplicates in class Node
Returns:
true if this node is a duplicate-bearing node type, false if otherwise.

getFixedMemoryOverhead

protected long getFixedMemoryOverhead()
Overrides:
getFixedMemoryOverhead in class BIN

isEvictionProhibited

protected boolean isEvictionProhibited()
Description copied from class: BIN
Note that the IN may or may not be latched when this method is called. Returning the wrong answer is OK in that case (it will be called again later when latched), but an exception should not occur.

Overrides:
isEvictionProhibited in class BIN

beginTag

public String beginTag()
Overrides:
beginTag in class BIN

endTag

public String endTag()
Overrides:
endTag in class BIN

dumpString

public String dumpString(int nSpaces,
                         boolean dumpTags)
For unit test support:

Overrides:
dumpString in class IN
Returns:
a string that dumps information about this IN, without

getLogType

public LogEntryType getLogType()
Description copied from class: IN
Get the log type of this node.

Overrides:
getLogType in class BIN
See Also:
IN.getLogType()

getLogSize

public int getLogSize()
Specified by:
getLogSize in interface Loggable
Overrides:
getLogSize in class IN
Returns:
number of bytes used to store this object.
See Also:
Loggable.getLogSize()

writeToLog

public void writeToLog(ByteBuffer logBuffer)
Description copied from interface: Loggable
Serialize this object into the buffer.

Specified by:
writeToLog in interface Loggable
Overrides:
writeToLog in class IN
Parameters:
logBuffer - is the destination buffer
See Also:
Loggable.writeToLog(java.nio.ByteBuffer)

readFromLog

public void readFromLog(ByteBuffer itemBuffer,
                        int entryVersion)
Description copied from interface: Loggable
Initialize this object from the data in itemBuf.

Specified by:
readFromLog in interface Loggable
Overrides:
readFromLog in class IN
See Also:
IN.readFromLog(java.nio.ByteBuffer, int)

dumpLogAdditional

protected void dumpLogAdditional(StringBuilder sb)
DBINS need to dump their dup key

Overrides:
dumpLogAdditional in class IN

shortClassName

public String shortClassName()
Overrides:
shortClassName in class BIN


Copyright (c) 2004-2012 Oracle. All rights reserved.