PageDataNode

A leaf page that contains data of one or multiple rows. Format:
  • page type: byte (0)
  • checksum: short (1-2)
  • parent page id (0 for root): int (3-6)
  • table id: varInt
  • count of all children (-1 if not known): int
  • entry count: short
  • rightmost child page id: int
  • entries (child page id: int, key: varLong)
The key is the largest key of the respective child, meaning key[0] is the largest key of child[0].

Methods
static PageDataNode create(PageDataIndex index, int pageId, int parentPageId)
Create a new page.
static PageDataNode create(PageDataIndex index, int pageId, int parentPageId)
Create a new page.
Parameters:
index - the index
pageId - the page id
parentPageId - the parent
Returns:
the page
static Page read(PageDataIndex index, Data data, int pageId)
Read a data node page.
static Page read(PageDataIndex index, Data data, int pageId)
Read a data node page.
Parameters:
index - the index
data - the data
pageId - the page id
Returns:
the page
int addRowTry(Row row)
int addRowTry(Row row)
Cursor find(Session session, long minKey, long maxKey, boolean multiVersion)
Cursor find(Session session, long minKey, long maxKey, boolean multiVersion)
void freeRecursive()
void freeRecursive()
long getDiskSpaceUsed()
long getDiskSpaceUsed()
PageDataLeaf getFirstLeaf()
PageDataLeaf getFirstLeaf()
long getLastKey()
long getLastKey()
PageDataLeaf getNextPage(long key)
Get the next leaf page.
PageDataLeaf getNextPage(long key)
Get the next leaf page.
Parameters:
key - the last key of the current page
Returns:
the next leaf page
int getRowCount()
int getRowCount()
Row getRowWithKey(long key)
Row getRowWithKey(long key)
void init(PageData page1, long pivot, PageData page2)
Initialize the page.
void init(PageData page1, long pivot, PageData page2)
Initialize the page.
Parameters:
page1 - the first child page
pivot - the pivot key
page2 - the last child page
void moveChild(int oldPos, int newPos)
One of the children has moved to another page.
void moveChild(int oldPos, int newPos)
One of the children has moved to another page.
Parameters:
oldPos - the old position
newPos - the new position
void moveTo(Session session, int newPos)
void moveTo(Session session, int newPos)
void remapChildren(int old)
void remapChildren(int old)
boolean remove(long key)
boolean remove(long key)
void setRowCountStored(int rowCount)
void setRowCountStored(int rowCount)
PageData split(int splitPoint)
PageData split(int splitPoint)
String toString()
String toString()
void write()
void write()