|
| PDBPage (char *dataIn, NodeID dataNodeID, DatabaseID dataDbID, UserTypeID dataTypeID, SetID setID, PageID pageID, size_t dataSize, size_t offset, int internalOffset=0, int numObjects=0) |
|
| PDBPage (char *dataIn, size_t offset, int internalOffset=0) |
|
| ~PDBPage () |
|
void | freePage () |
|
void | preparePage () |
|
void | incRefCount () |
|
void | decRefCount () |
|
void | freeContent () |
|
int | incEmbeddedNumObjects () |
|
int | getEmbeddedNumObjects () |
|
void | setNumObjects (int numObjects) |
|
int | getNumObjects () |
|
void * | addVariableBytes (size_t size) |
|
void * | getBytes () |
|
size_t | getSize () |
|
void | unpin () |
|
void | readLock () |
|
void | readUnlock () |
|
void | writeLock () |
|
void | writeUnlock () |
|
NodeID | getNodeID () const |
|
DatabaseID | getDbID () const |
|
UserTypeID | getTypeID () const |
|
SetID | getSetID () const |
|
PageID | getPageID () const |
|
char * | getRawBytes () const |
|
size_t | getRawSize () const |
|
size_t | getOffset () const |
|
int | getNumHeadMiniPages () const |
|
int | getNumMiniPages () const |
|
size_t | getMiniPageSize () const |
|
size_t | getHeadSize () const |
|
long | getAccessSequenceId () const |
|
int | getRefCount () |
|
void | resetRefCount () |
|
bool | isPinned () |
|
bool | isDirty () |
|
bool | isInFlush () |
|
bool | isInEviction () |
|
unsigned int | getPageSeqInPartition () const |
|
FilePartitionID | getPartitionId () const |
|
void | setNodeID (NodeID nodeID) |
|
void | setDbID (DatabaseID dbID) |
|
void | setTypeID (UserTypeID typeID) |
|
void | setSetID (SetID setID) |
|
void | setPageID (PageID pageID) |
|
void | setRawBytes (char *rawBytes) |
|
void | setSize (size_t size) |
|
void | setOffset (size_t offset) |
|
void | setNumHeadMiniPages (int numHeadMiniPages) |
|
void | setNumMiniPages (int numMiniPages) |
|
void | setMiniPageSize (size_t miniPageSize) |
|
void | setHeadSize (size_t headSize) |
|
void | setAccessSequenceId (long accessSequenceId) |
|
void | setPinned (bool isPinned) |
|
void | setDirty (bool dirty) |
|
void | setInFlush (bool inFlush) |
|
void | setInEviction (bool inEviction) |
|
void | setPageSeqInPartition (unsigned int pageSeqInPartition) |
|
void | setPartitionId (FilePartitionID partitionId) |
|
void | setInternalOffset (int offset) |
|
int | getInternalOffset () |
|
This class implements PDBPage that is a fixed size (e.g. 64MB) piece of data allocated in shared memory. A PDBPage usually consists of two parts: 1) A page header that often consists of following fields:
- NodeID
- DatabaseID
- UserTypeID
- PageID
- reference count for on-page reference count 2) A page body that consists of a series of <object raw data size, object raw data> pairs , with each pair aligned with miniPage size (often set to be cacheline size).
A page at frontend will be setup by the PageCache instance. A page at backend will be setup by the DataProxy instance and used via PageHandle instance.
Definition at line 52 of file PDBPage.h.