taco-db  0.1.0
Classes | Namespaces | Functions | Variables
BTreeInternal.h File Reference
#include "tdb.h"
#include "index/btree/BTree.h"
#include "storage/Record.h"
#include "storage/VarlenDataPage.h"

Go to the source code of this file.

Classes

struct  taco::BTreeMetaPageData
 The B-tree meta page. More...
 
struct  taco::BTreePageHeaderData
 The B-Tree page header for both internal pages and the leaf pages. More...
 
struct  taco::BTreeInternalRecordHeaderData
 The header of a B-Tree internal page record. More...
 
struct  taco::BTreeLeafRecordHeaderData
 The header of a B-Tree leaf page record. More...
 

Namespaces

 taco
 

Functions

static char * taco::BTreeRecordGetPayload (char *recbuf, bool isleaf)
 
static const char * taco::BTreeRecordGetPayload (const char *recbuf, bool isleaf)
 
static const RecordId & taco::BTreeRecordGetHeapRecordId (const char *recbuf, bool isleaf)
 
static FieldOffset taco::BTreeComputePageUsage (SlotId num_recs, FieldOffset totrlen)
 Returns the page usage of a B-Tree page given its number of records and its total length of all the records. More...
 

Variables

static const RecordId taco::INFINITY_RECORDID = { RESERVED_PID, MaxSlotId }
 This is the record number that is guaranteed to be larger than any valid record ID. More...
 
constexpr uint16_t taco::BTREE_PAGE_ISROOT = 1u
 
constexpr uint16_t taco::BTREE_PAGE_ISLEAF = 2u
 
constexpr size_t taco::BTreePageHeaderSize = sizeof(BTreePageHeaderData)
 
constexpr size_t taco::BTreeInternalRecordHeaderSize
 
constexpr size_t taco::BTreeLeafRecordHeaderSize
 
constexpr FieldOffset taco::BTREE_MAX_RECORD_SIZE = 2000
 
constexpr FieldOffset taco::BTREE_MIN_PAGE_USAGE = (FieldOffset) (PAGE_SIZE * 0.4)