org.h2.index
Class PageBtree

java.lang.Object
  extended by org.h2.util.CacheObject
      extended by org.h2.store.Page
          extended by org.h2.index.PageBtree
All Implemented Interfaces:
java.lang.Comparable<CacheObject>
Direct Known Subclasses:
PageBtreeLeaf, PageBtreeNode

public abstract class PageBtree
extends Page

A page that contains index data.


Field Summary
protected  Data data
          The data page.
protected  int entryCount
          The number of entries.
protected  PageBtreeIndex index
          The index.
protected  int memoryEstimated
          The estimated memory used by this object.
protected  int[] offsets
          The row offsets.
protected  boolean onlyPosition
          If only the position of the row is stored in the page
protected  int parentPageId
          The page number of the parent.
protected  SearchRow[] rows
          The index data
protected  int start
          The start of the data area.
protected  boolean written
          Whether the data page is up-to-date.
 
Fields inherited from class org.h2.store.Page
changeCount, FLAG_LAST, TYPE_BTREE_LEAF, TYPE_BTREE_NODE, TYPE_DATA_LEAF, TYPE_DATA_NODE, TYPE_DATA_OVERFLOW, TYPE_EMPTY, TYPE_FREE_LIST, TYPE_STREAM_DATA, TYPE_STREAM_TRUNK
 
Fields inherited from class org.h2.util.CacheObject
cacheChained, cacheNext, cachePrevious
 
Method Summary
 boolean canRemove()
          Check if the object can be removed from the cache.
 int getMemory()
          Get the estimated memory size.
protected  void readAllRows()
          Ensure all rows are read in memory.
 
Methods inherited from class org.h2.store.Page
add, canMove, insert, insert, insert, moveTo, remove, remove, remove, write
 
Methods inherited from class org.h2.util.CacheObject
compareTo, getPos, isChanged, setChanged, setPos
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

index

protected final PageBtreeIndex index
The index.


parentPageId

protected int parentPageId
The page number of the parent.


data

protected final Data data
The data page.


offsets

protected int[] offsets
The row offsets.


entryCount

protected int entryCount
The number of entries.


rows

protected SearchRow[] rows
The index data


start

protected int start
The start of the data area.


onlyPosition

protected boolean onlyPosition
If only the position of the row is stored in the page


written

protected boolean written
Whether the data page is up-to-date.


memoryEstimated

protected int memoryEstimated
The estimated memory used by this object.

Method Detail

readAllRows

protected void readAllRows()
Ensure all rows are read in memory.


getMemory

public int getMemory()
Get the estimated memory size.

Specified by:
getMemory in class CacheObject
Returns:
number of double words (4 bytes)

canRemove

public boolean canRemove()
Description copied from class: CacheObject
Check if the object can be removed from the cache. For example pinned objects can not be removed.

Specified by:
canRemove in class CacheObject
Returns:
true if it can be removed