VersionedRandomAllocationSegment.h File Reference

Go to the source code of this file.

Classes

struct  VersionedPageEntry
 Allocation status for a single data page in this extent. More...
struct  ModifiedPageEntry
 ModifiedPageEntry is a structure that keeps track of the number of updates made to the page entry and extent entry corresponding to a page. More...
class  VersionedRandomAllocationSegment
 VersionedRandomAllocationSegment refines RandomAllocationSegmentBase, defining a VersionedExtentAllocationNode where each page entry within the segment is versioned. More...

Typedefs

typedef boost::shared_ptr<
ModifiedAllocationNode
SharedModifiedAllocationNode
typedef boost::shared_ptr<
ModifiedPageEntry
SharedModifiedPageEntry
typedef std::hash_map< PageId,
SharedModifiedPageEntry
ModifiedPageEntryMap
typedef ModifiedPageEntryMap::const_iterator ModifiedPageEntryMapIter

Variables

static const PageOwnerId UNCOMMITTED_PAGE_OWNER_ID = PageOwnerId(1)
 Symbolic value for the owner of an uncommitted page.
static const uint64_t DEALLOCATED_PAGE_OWNER_ID_MASK = 0x8000000000000000LL
 Deallocation-deferred pages are indicated as such by setting the high order bit in the pageOwnerId in the page entry, and storing the id of the txn that deallocated the page in the remaining bits.


Typedef Documentation

typedef std::hash_map<PageId, SharedModifiedPageEntry> ModifiedPageEntryMap

Definition at line 102 of file VersionedRandomAllocationSegment.h.

typedef ModifiedPageEntryMap::const_iterator ModifiedPageEntryMapIter

Definition at line 103 of file VersionedRandomAllocationSegment.h.

typedef boost::shared_ptr<ModifiedAllocationNode> SharedModifiedAllocationNode

Definition at line 38 of file VersionedRandomAllocationSegment.h.

typedef boost::shared_ptr<ModifiedPageEntry> SharedModifiedPageEntry

Definition at line 99 of file VersionedRandomAllocationSegment.h.


Variable Documentation

const uint64_t DEALLOCATED_PAGE_OWNER_ID_MASK = 0x8000000000000000LL [static]

Deallocation-deferred pages are indicated as such by setting the high order bit in the pageOwnerId in the page entry, and storing the id of the txn that deallocated the page in the remaining bits.

This mask is used to set and turn off the high order bit.

Definition at line 116 of file VersionedRandomAllocationSegment.h.

Referenced by VersionedRandomAllocationSegment::getDeallocatedTxnId(), VersionedRandomAllocationSegment::isDeallocatedPageOwnerId(), and VersionedRandomAllocationSegment::makeDeallocatedPageOwnerId().

const PageOwnerId UNCOMMITTED_PAGE_OWNER_ID = PageOwnerId(1) [static]

Symbolic value for the owner of an uncommitted page.

Definition at line 108 of file VersionedRandomAllocationSegment.h.

Referenced by SnapshotRandomAllocationSegment::allocatePageId(), VersionedRandomAllocationSegment::copyPageEntryFromTemp(), VersionedRandomAllocationSegment::getOldestTxnId(), and SnapshotRandomAllocationSegment::getSnapshotId().


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