db_page.h File Reference

Go to the source code of this file.

Classes

struct  _binternal
struct  _bkeydata
struct  _boverflow
struct  _btmeta31
struct  _db_page
struct  _dbmeta31
struct  _hashmeta31
struct  _hkeydata
struct  _hoffdup
struct  _hoffpage
struct  _qmeta31
struct  _qpage
struct  _rinternal

Defines

#define __P_DUPLICATE   1
#define B_DCLR(t)   (t) &= ~B_DELETE
#define B_DELETE   (0x80)
#define B_DISSET(t)   ((t) & B_DELETE)
#define B_DSET(t)   (t) |= B_DELETE
#define B_DUPLICATE   2
#define B_KEYDATA   1
#define B_OVERFLOW   3
#define B_TSET(t, type, deleted)
#define B_TYPE(t)   ((t) & ~B_DELETE)
#define BINTERNAL_PSIZE(len)   (BINTERNAL_SIZE(len) + sizeof(db_indx_t))
#define BINTERNAL_SIZE(len)   ALIGN((len) + SSZA(BINTERNAL, data), 4)
#define BKEYDATA_PSIZE(len)   (BKEYDATA_SIZE(len) + sizeof(db_indx_t))
#define BKEYDATA_SIZE(len)   ALIGN((len) + SSZA(BKEYDATA, data), 4)
#define BOVERFLOW_PSIZE   (BOVERFLOW_SIZE + sizeof(db_indx_t))
#define BOVERFLOW_SIZE   ALIGN(sizeof(BOVERFLOW), 4)
#define BTM_DUP   0x001
#define BTM_DUPSORT   0x040
#define BTM_FIXEDLEN   0x008
#define BTM_MASK   0x07f
#define BTM_RECNO   0x002
#define BTM_RECNUM   0x004
#define BTM_RENUMBER   0x010
#define BTM_SUBDB   0x020
#define DB_HASH_DUP   0x01
#define DB_HASH_DUPSORT   0x04
#define DB_HASH_SUBDB   0x02
#define DB_PAGE_DB_LEN   32
#define DB_PAGE_QUEUE_LEN   0
#define DBMETASIZE   256
#define GET_BINTERNAL(pg, indx)   ((BINTERNAL *)P_ENTRY(pg, indx))
#define GET_BKEYDATA(pg, indx)   ((BKEYDATA *)P_ENTRY(pg, indx))
#define GET_BOVERFLOW(pg, indx)   ((BOVERFLOW *)P_ENTRY(pg, indx))
#define GET_RINTERNAL(pg, indx)   ((RINTERNAL *)P_ENTRY(pg, indx))
#define H_DATAINDEX(indx)   ((indx) + 1)
#define H_DUPLICATE   2
#define H_KEYDATA   1
#define H_KEYINDEX(indx)   (indx)
#define H_NUMPAIRS(pg)   (NUM_ENT(pg) / 2)
#define H_OFFDUP   4
#define H_OFFPAGE   3
#define H_PAIRDATA(pg, indx)   P_ENTRY(pg, H_DATAINDEX(indx))
#define H_PAIRKEY(pg, indx)   P_ENTRY(pg, H_KEYINDEX(indx))
#define H_PAIRSIZE(pg, psize, indx)
#define HKEYDATA_DATA(p)   (((u_int8_t *)p) + SSZA(HKEYDATA, data))
#define HKEYDATA_PSIZE(len)   (HKEYDATA_SIZE(len) + sizeof(db_indx_t))
#define HKEYDATA_SIZE(len)   ((len) + SSZA(HKEYDATA, data))
#define HOFFDUP_PGNO(p)   (((u_int8_t *)p) + SSZ(HOFFDUP, pgno))
#define HOFFDUP_PSIZE   (HOFFDUP_SIZE + sizeof(db_indx_t))
#define HOFFDUP_SIZE   (sizeof(HOFFDUP))
#define HOFFPAGE_PGNO(p)   (((u_int8_t *)p) + SSZ(HOFFPAGE, pgno))
#define HOFFPAGE_PSIZE   (HOFFPAGE_SIZE + sizeof(db_indx_t))
#define HOFFPAGE_SIZE   (sizeof(HOFFPAGE))
#define HOFFPAGE_TLEN(p)   (((u_int8_t *)p) + SSZ(HOFFPAGE, tlen))
#define HOFFSET(p)   (((PAGE *)p)->hf_offset)
#define HPAGE_PTYPE(p)   (*(u_int8_t *)p)
#define HPAGE_TYPE(pg, indx)   (*P_ENTRY(pg, indx))
#define LEAFLEVEL   1
#define LEN_HDATA(p, psize, indx)   LEN_HKEYDATA(p, psize, H_DATAINDEX(indx))
#define LEN_HITEM(pg, pgsize, indx)
#define LEN_HKEY(p, psize, indx)   LEN_HKEYDATA(p, psize, H_KEYINDEX(indx))
#define LEN_HKEYDATA(pg, psize, indx)
#define LEVEL(p)   (((PAGE *)p)->level)
#define LOFFSET(pg)   (P_OVERHEAD + NUM_ENT(pg) * sizeof(db_indx_t))
#define LSN(p)   (((PAGE *)p)->lsn)
#define MAXBTREELEVEL   255
#define NCACHED   32
#define NEXT_PGNO(p)   (((PAGE *)p)->next_pgno)
#define NUM_ENT(p)   (((PAGE *)p)->entries)
#define O_INDX   1
#define OV_LEN(p)   (((PAGE *)p)->hf_offset)
#define OV_REF(p)   (((PAGE *)p)->entries)
#define P_BTREEMETA   9
#define P_CMPR_FREE   14
#define P_CMPR_INTERNAL   13
#define P_ENTRY(pg, indx)   ((u_int8_t *)pg + ((PAGE *)pg)->inp[indx])
#define P_FREESPACE(pg)   (HOFFSET(pg) - LOFFSET(pg))
#define P_HASH   2
#define P_HASHMETA   8
#define P_IBTREE   3
#define P_INDX   2
#define P_INIT(pg, pg_size, n, pg_prev, pg_next, btl, pg_type, pg_tags)
#define P_INVALID   0
#define P_IRECNO   4
#define P_LBTREE   5
#define P_LDUP   12
#define P_LRECNO   6
#define P_MAXSPACE(psize)   ((psize) - P_OVERHEAD)
#define P_OVERFLOW   7
#define P_OVERHEAD   (SSZA(PAGE, inp))
#define P_OVFLSPACE(psize, pg)   (P_MAXSPACE(psize) - HOFFSET(pg))
#define P_PAGETYPE_MAX   15
#define P_QAMDATA   11
#define P_QAMMETA   10
#define PGNO(p)   (((PAGE *)p)->pgno)
#define PGNO_BASE_MD   1
#define PGNO_INVALID   0
#define PREV_PGNO(p)   (((PAGE *)p)->prev_pgno)
#define PUT_HKEYDATA(pe, kd, len, type)
#define RE_NREC(p)
#define RE_NREC_ADJ(p, adj)   PREV_PGNO(p) += adj;
#define RE_NREC_SET(p, num)   PREV_PGNO(p) = num;
#define RINTERNAL_PSIZE   (RINTERNAL_SIZE + sizeof(db_indx_t))
#define RINTERNAL_SIZE   ALIGN(sizeof(RINTERNAL), 4)
#define TAGS(p)   (((PAGE *)p)->type & TAGS_MASK)
#define TAGS_MASK   0xf0
#define TAGS_SET(p, v)   (TYPE_TAGS(p) = TYPE(p) | ((v) & TAGS_MASK))
#define TYPE(p)   ((((PAGE *)p)->type) & TYPE_MASK)
#define TYPE_MASK   0x0f
#define TYPE_SET(p, v)   (TYPE_TAGS(p) = ((v) & TYPE_MASK) | TAGS(p))
#define TYPE_TAGS(p)   (((PAGE *)p)->type)

Typedefs

typedef struct _binternal BINTERNAL
typedef struct _bkeydata BKEYDATA
typedef struct _boverflow BOVERFLOW
typedef struct _btmeta31 BTMETA
typedef struct _btmeta31 BTMETA31
typedef struct _dbmeta31 DBMETA
typedef struct _dbmeta31 DBMETA31
typedef struct _hkeydata HKEYDATA
typedef struct _hashmeta31 HMETA
typedef struct _hashmeta31 HMETA31
typedef struct _hoffdup HOFFDUP
typedef struct _hoffpage HOFFPAGE
typedef struct _db_page PAGE
typedef struct _qmeta31 QMETA
typedef struct _qmeta31 QMETA31
typedef struct _qpage QPAGE
typedef struct _rinternal RINTERNAL


Generated on Sun Jun 8 10:56:49 2008 for GNUmifluz by  doxygen 1.5.5