Drizzled Public API Documentation

dict0boot.h File Reference
#include "univ.i"
#include "mtr0mtr.h"
#include "mtr0log.h"
#include "ut0byte.h"
#include "buf0buf.h"
#include "fsp0fsp.h"
#include "dict0dict.h"
#include "dict0boot.ic"

Go to the source code of this file.

Defines

#define DICT_HDR_SPACE   0
#define DICT_HDR_PAGE_NO   FSP_DICT_HDR_PAGE_NO
#define DICT_TABLES_ID   1
#define DICT_COLUMNS_ID   2
#define DICT_INDEXES_ID   3
#define DICT_FIELDS_ID   4
#define DICT_TABLE_IDS_ID   5
#define DICT_HDR_FIRST_ID   10
#define DICT_IBUF_ID_MIN   0xFFFFFFFF00000000ULL
#define DICT_HDR   FSEG_PAGE_DATA
#define DICT_HDR_ROW_ID   0
#define DICT_HDR_TABLE_ID   8
#define DICT_HDR_INDEX_ID   16
#define DICT_HDR_MAX_SPACE_ID   24
#define DICT_HDR_MIX_ID_LOW   28
#define DICT_HDR_TABLES   32
#define DICT_HDR_TABLE_IDS   36
#define DICT_HDR_COLUMNS   40
#define DICT_HDR_INDEXES   44
#define DICT_HDR_FIELDS   48
#define DICT_HDR_FSEG_HEADER   56
#define DICT_SYS_INDEXES_PAGE_NO_FIELD   8
#define DICT_SYS_INDEXES_SPACE_NO_FIELD   7
#define DICT_SYS_INDEXES_TYPE_FIELD   6
#define DICT_SYS_INDEXES_NAME_FIELD   4
#define DICT_HDR_ROW_ID_WRITE_MARGIN   256

Typedefs

typedef byte dict_hdr_t

Functions

UNIV_INTERN dict_hdr_t * dict_hdr_get (mtr_t *mtr)
UNIV_INTERN void dict_hdr_get_new_id (table_id_t *table_id, index_id_t *index_id, ulint *space_id)
UNIV_INLINE row_id_t dict_sys_get_new_row_id (void)
UNIV_INLINE row_id_t dict_sys_read_row_id (const byte *field)
UNIV_INLINE void dict_sys_write_row_id (byte *field, row_id_t row_id)
UNIV_INTERN void dict_boot (void)
UNIV_INTERN void dict_create (void)

Detailed Description

Data dictionary creation and booting

Created 4/18/1996 Heikki Tuuri

Definition in file dict0boot.h.


Function Documentation

UNIV_INTERN void dict_boot ( void  )
UNIV_INTERN void dict_create ( void  )

Creates and initializes the data dictionary at the database creation.

Definition at line 473 of file dict0boot.cc.

References mtr_commit(), and mtr_start().

UNIV_INTERN dict_hdr_t* dict_hdr_get ( mtr_t mtr)

Gets a pointer to the dictionary header and x-latches its page.

Returns:
pointer to the dictionary header, page x-latched in: mtr

Gets a pointer to the dictionary header and x-latches its page.

Returns:
pointer to the dictionary header, page x-latched
Parameters:
mtrin: mtr

Definition at line 48 of file dict0boot.cc.

References buf_page_get.

UNIV_INTERN void dict_hdr_get_new_id ( table_id_t *  table_id,
index_id_t *  index_id,
ulint *  space_id 
)

Returns a new table, index, or space id. out: space id (not assigned if NULL)

Returns a new table, index, or space id.

Parameters:
table_idout: table id (not assigned if NULL)
index_idout: index id (not assigned if NULL)
space_idout: space id (not assigned if NULL)

Definition at line 68 of file dict0boot.cc.

References mach_read_from_8(), MLOG_4BYTES, mlog_write_ulint(), mlog_write_ull(), mtr_commit(), mtr_read_ulint(), and mtr_start().

UNIV_INLINE row_id_t dict_sys_get_new_row_id ( void  )

Returns a new row id.

Returns:
the new id
UNIV_INLINE row_id_t dict_sys_read_row_id ( const byte *  field)

Reads a row id from a record or other 6-byte stored form.

Returns:
row id in: record field
UNIV_INLINE void dict_sys_write_row_id ( byte *  field,
row_id_t  row_id 
)

Writes a row id to a record or other 6-byte stored form. in: row id

Parameters:
fieldin: record field