Fennel: LcsClusterAccessBase Class Reference (original) (raw)

LcsClusterAccessBase is a base for classes which access cluster pages. More...

#include <[LcsClusterAccessBase.h](LcsClusterAccessBase%5F8h-source.html)>

Inheritance diagram for LcsClusterAccessBase:

List of all members.

Public Member Functions
LcsClusterAccessBase (BTreeDescriptor const &treeDescriptor)
uint getNumClusterCols ()
Returns number of columns in cluster.
void setNumClusterCols (uint nCols)
Sets number of columns in cluster.
void unlockClusterPage ()
Unlocks cluster page.
Protected Member Functions
LcsRid readRid ()
Returns RID from btree tuple.
PageId readClusterPageId ()
Returns cluster pageid from btree tuple.
void setHdrOffsets (PConstLcsClusterNode pHdr)
Sets pointers to offset arrays in cluster page header.
Protected Attributes
TupleData bTreeTupleData
Tuple data representing the btree key corresponding to the cluster page.
SegmentAccessor segmentAccessor
Accessor for segment storing both btree and cluster pages.
ClusterPageLock clusterLock
Buffer lock for the actual cluster node pages.
PageId clusterPageId
Current cluster pageid.
LcsRid bTreeRid
Current rid in btree used to access current cluster page.
uint nClusterCols
Number of columns in cluster.
uint16_t * lastVal
Offsets to the last value stored on the page for each column in cluster.
uint16_t * firstVal
Offsets to the first value stored on the page for each column in cluster.
uint * nVal
Number of distinct values in the page for each column in cluster.
uint16_t * delta
For each column in the cluster, offset used to get the real offset within the page.

Detailed Description

LcsClusterAccessBase is a base for classes which access cluster pages.

Definition at line 34 of file LcsClusterAccessBase.h.


Constructor & Destructor Documentation

LcsClusterAccessBase::LcsClusterAccessBase ( BTreeDescriptor const & treeDescriptor ) [explicit]

Member Function Documentation

| LcsRid LcsClusterAccessBase::readRid | ( | | ) | [protected] | | ------------------------------------ | - | | - | ------------- |

| PageId LcsClusterAccessBase::readClusterPageId | ( | | ) | [protected] | | ---------------------------------------------- | - | | - | ------------- |

| uint LcsClusterAccessBase::getNumClusterCols | ( | | ) | [inline] | | --------------------------------------------------------------------------------------------------------- | - | | - | ---------- |

void LcsClusterAccessBase::setNumClusterCols ( uint nCols ) [inline]

| void LcsClusterAccessBase::unlockClusterPage | ( | | ) | | -------------------------------------------- | - | | - |


Member Data Documentation

Number of columns in cluster.

Definition at line 68 of file LcsClusterAccessBase.h.

Referenced by LcsClusterNodeWriter::addValue(), LcsClusterNodeWriter::allocArrays(), LcsClusterDump::dump(), LcsClusterReader::getNumRows(), LcsClusterNodeWriter::init(), LcsClusterReader::initColumnReaders(), LcsClusterNodeWriter::LcsClusterNodeWriter(), LcsClusterNodeWriter::moveFromIndexToTemp(), LcsClusterNodeWriter::moveFromTempToIndex(), LcsClusterNodeWriter::openAppend(), LcsClusterNodeWriter::openNew(), LcsClusterReader::positionInBlock(), and setHdrOffsets().

Offsets to the last value stored on the page for each column in cluster.

Definition at line 74 of file LcsClusterAccessBase.h.

Referenced by LcsClusterNodeWriter::addValue(), LcsClusterDump::dump(), LcsClusterNodeWriter::moveFromIndexToTemp(), LcsClusterNodeWriter::moveFromTempToIndex(), LcsClusterNodeWriter::openAppend(), LcsClusterNodeWriter::openNew(), LcsClusterNodeWriter::pickCompressionMode(), LcsClusterNodeWriter::putCompressedBatch(), LcsClusterNodeWriter::putFixedVarBatch(), LcsClusterNodeWriter::rollBackLastBatch(), setHdrOffsets(), and LcsClusterNodeWriter::undoValue().

Number of distinct values in the page for each column in cluster.

Definition at line 87 of file LcsClusterAccessBase.h.

Referenced by LcsClusterNodeWriter::addValue(), LcsClusterDump::dump(), LcsClusterNodeWriter::moveFromIndexToTemp(), LcsClusterNodeWriter::moveFromTempToIndex(), LcsClusterNodeWriter::openAppend(), LcsClusterNodeWriter::openNew(), LcsClusterNodeWriter::pickCompressionMode(), LcsClusterNodeWriter::putCompressedBatch(), LcsClusterNodeWriter::putFixedVarBatch(), LcsClusterNodeWriter::rollBackLastBatch(), setHdrOffsets(), and LcsClusterNodeWriter::undoValue().


The documentation for this class was generated from the following files:


Generated on Mon Jun 22 04:00:36 2009 for Fennel by doxygen 1.5.1