Drizzled Public API Documentation

definitions.h File Reference

#include <drizzled/enum.h>
#include <stdint.h>
#include "common.h"
#include <drizzled/enum.h>

Go to the source code of this file.

Namespaces

namespace  drizzled
 

TODO: Rename this file - func.h is stupid.


Defines

#define GLOBAL_TEMPORARY_EXT   ".temporary"
#define LANGUAGE   "english/"
#define TEMP_PREFIX   "MY"
#define ER(X)   ::drizzled::error_message((X))
#define STRERROR_MAX   256
#define MAX_FIELD_NAME   34
#define MAX_SYS_VAR_LENGTH   32
#define MAX_INDEXES   64
#define MAX_REFLENGTH   4
#define MAX_MBWIDTH   4
#define MAX_FIELD_CHARLENGTH   255
#define MAX_FIELD_VARCHARLENGTH   65535
#define CONVERT_IF_BIGGER_TO_BLOB   512
#define MAX_FIELD_WIDTH   (MAX_FIELD_CHARLENGTH*MAX_MBWIDTH+1)
#define MAX_TABLES   (sizeof(table_map)*8-3)
#define PARAM_TABLE_BIT   (((table_map) 1) << (sizeof(table_map)*8-3))
#define OUTER_REF_TABLE_BIT   (((table_map) 1) << (sizeof(table_map)*8-2))
#define RAND_TABLE_BIT   (((table_map) 1) << (sizeof(table_map)*8-1))
#define PSEUDO_TABLE_BITS
#define MAX_FIELDS   4096
#define MAX_SELECT_NESTING   (sizeof(nesting_map)*8-1)
#define MAX_SORT_MEMORY   (2048*1024-MALLOC_OVERHEAD)
#define MIN_SORT_MEMORY   (32*1024-MALLOC_OVERHEAD)
#define DEFAULT_ERROR_COUNT   64
#define EXTRA_RECORDS   10
#define NAMES_SEP_CHAR   '\377'
#define READ_RECORD_BUFFER   (uint32_t) (IO_SIZE*8)
#define DISK_BUFFER_SIZE   (uint32_t) (IO_SIZE*16)
#define ME_ERROR   (ME_BELL+ME_OLDWIN+ME_NOREFRESH)
#define MYF_RW   MYF(MY_WME+MY_NABP)
#define MIN_TURBOBM_PATTERN_LEN   3
#define MAX_FIELDS_BEFORE_HASH   32
#define TABLE_OPEN_CACHE_MIN   64
#define TABLE_OPEN_CACHE_DEFAULT   1024
#define STACK_MIN_SIZE   12000
 Abort if less stack during eval.
#define STACK_MIN_SIZE_FOR_OPEN   1024*80
#define STACK_BUFF_ALLOC   352
 For stack overrun checks.
#define QUERY_ALLOC_BLOCK_SIZE   8192
#define QUERY_ALLOC_PREALLOC_SIZE   8192
#define RANGE_ALLOC_BLOCK_SIZE   4096
#define TABLE_ALLOC_BLOCK_SIZE   1024
#define WARN_ALLOC_BLOCK_SIZE   2048
#define WARN_ALLOC_PREALLOC_SIZE   1024
#define MIN_FILE_LENGTH_TO_USE_ROW_CACHE   (10L*1024*1024)
#define MIN_ROWS_TO_USE_TABLE_CACHE   100
#define TIME_FOR_COMPARE   5
#define TIME_FOR_COMPARE_ROWID   (TIME_FOR_COMPARE*2)
#define DISK_SEEK_BASE_COST   ((double)0.9)
#define BLOCKS_IN_AVG_SEEK   128
#define DISK_SEEK_PROP_COST   ((double)0.1/BLOCKS_IN_AVG_SEEK)
#define MATCHING_ROWS_IN_OTHER_TABLE   10
#define KEY_DEFAULT_PACK_LENGTH   8
#define PROCESS_LIST_WIDTH   100
#define MODE_NO_ZERO_DATE   (2)
#define MODE_INVALID_DATES   (MODE_NO_ZERO_DATE*2)
#define MY_CHARSET_BIN_MB_MAXLEN   1
#define UNDEF_POS   (-1)
#define portable_sizeof_char_ptr   8
#define TMP_FILE_PREFIX   "#sql"
#define TMP_FILE_PREFIX_LENGTH   4
#define WEEK_MONDAY_FIRST   1
#define WEEK_YEAR   2
#define WEEK_FIRST_WEEKDAY   4
#define MAX_DAY_NUMBER   3652424L
#define STRING_BUFFER_USUAL_SIZE   80
#define HA_ADMIN_ALREADY_DONE   1
#define HA_ADMIN_OK   0
#define HA_ADMIN_NOT_IMPLEMENTED   -1
#define HA_ADMIN_FAILED   -2
#define HA_ADMIN_CORRUPT   -3
#define HA_ADMIN_INTERNAL_ERROR   -4
#define HA_ADMIN_INVALID   -5
#define HA_ADMIN_REJECT   -6
#define HA_READ_NEXT   1
#define HA_READ_PREV   2
#define HA_READ_ORDER   4
#define HA_READ_RANGE   8
#define HA_ONLY_WHOLE_INDEX   16
#define HA_KEYREAD_ONLY   64
#define HA_KEY_SCAN_NOT_ROR   128
#define HA_KEY_SWITCH_NONUNIQ   0
#define HA_KEY_SWITCH_ALL   1
#define HA_KEY_SWITCH_NONUNIQ_SAVE   2
#define HA_KEY_SWITCH_ALL_SAVE   3
#define HA_OPEN_KEYFILE   1
#define HA_OPEN_RNDFILE   2
#define HA_GET_INDEX   4
#define HA_GET_INFO   8
#define HA_READ_ONLY   16
#define HA_TRY_READ_ONLY   32
#define HA_WAIT_IF_LOCKED   64
#define HA_ABORT_IF_LOCKED   128
#define HA_BLOCK_LOCK   256
#define HA_OPEN_TEMPORARY   512
#define HA_KEY_NULL_LENGTH   1
#define HA_KEY_BLOB_LENGTH   2
#define HA_CHECK_DUP_KEY   1
#define HA_CHECK_DUP_UNIQUE   2
#define HA_CHECK_DUP   (HA_CHECK_DUP_KEY + HA_CHECK_DUP_UNIQUE)
#define HA_CREATE_USED_AUTO   (1L << 0)
#define HA_CREATE_USED_CHARSET   (1L << 8)
#define HA_CREATE_USED_DEFAULT_CHARSET   (1L << 9)
#define HA_MRR_SINGLE_POINT   1
#define HA_MRR_FIXED_KEY   2
#define HA_MRR_NO_ASSOCIATION   4
#define HA_MRR_SORTED   8
#define HA_MRR_INDEX_ONLY   16
#define HA_MRR_LIMITS   32
#define HA_MRR_USE_DEFAULT_IMPL   64
#define MYF(v)   (static_cast<drizzled::myf>(v))
#define MY_COLL_ALLOW_SUPERSET_CONV   1
#define MY_COLL_ALLOW_COERCIBLE_CONV   2
#define MY_COLL_ALLOW_CONV   3
#define MY_COLL_DISALLOW_NONE   4
#define MY_COLL_CMP_CONV   7
#define FIELDFLAG_PACK_SHIFT   3
#define FIELDFLAG_MAX_DEC   31
#define MTYP_TYPENR(type)   (type & 127)
#define set_if_bigger(a, b)   do { if ((a) < (b)) (a)=(b); } while(0)
#define set_if_smaller(a, b)   do { if ((a) > (b)) (a)=(b); } while(0)
#define array_elements(a)
#define FN_LIBCHAR   '/'
#define FN_ROOTDIR   "/"
#define MY_NFILE   64
#define OS_FILE_LIMIT   65535
#define MALLOC_OVERHEAD   8
#define uint64_t2double(A)   ((double) (uint64_t) (A))
#define int64_t2double(A)   ((double) (int64_t) (A))
#define offsetof(TYPE, MEMBER)   ((size_t) &((TYPE *)0)->MEMBER)
#define DBL_MIN   4.94065645841246544e-324
#define DBL_MAX   1.79769313486231470e+308
#define M_PI   3.14159265358979323846
#define M_E   2.7182818284590452354
#define M_LN2   0.69314718055994530942
#define MY_ALIGN(A, L)   (((A) + (L) - 1) & ~((L) - 1))
#define ALIGN_SIZE(A)   MY_ALIGN((A),sizeof(double))
#define ADD_TO_PTR(ptr, size, type)   (type) ((unsigned char*) (ptr)+size)
#define MY_DIV_UP(A, B)   (((A) + (B) - 1) / (B))
#define MY_ALIGNED_BYTE_ARRAY(N, S, T)   T N[MY_DIV_UP(S, sizeof(T))]
#define MY_FILEPOS_ERROR   -1
#define DRIZZLE_SERVER
#define MY_INT32_NUM_DECIMAL_DIGITS   11
#define MY_INT64_NUM_DECIMAL_DIGITS   21
#define IO_SIZE   4096
#define FN_LEN   256
#define FN_REFLEN   512
#define FN_EXTCHAR   '.'
#define FN_HOMELIB   '~'
#define FN_CURLIB   '.'
#define FN_PARENTDIR   ".."
#define QUOTE_ARG(x)   #x
#define STRINGIFY_ARG(x)   QUOTE_ARG(x)
#define __builtin_expect(x, expected_value)   (x)
#define likely(x)   __builtin_expect((x),1)
#define unlikely(x)   __builtin_expect((x),0)
#define _DTRACE_VERSION   0

Typedefs

typedef void * drizzled::range_seq_t
typedef int drizzled::myf
typedef uint64_t drizzled::table_map
typedef uint32_t drizzled::nesting_map

Enumerations

enum  ha_stat_type { HA_ENGINE_STATUS, HA_ENGINE_LOGS, HA_ENGINE_MUTEX }
enum  start_transaction_option_t { START_TRANS_NO_OPTIONS, START_TRANS_OPT_WITH_CONS_SNAPSHOT }

Functions

static void drizzled::clear_timestamp_auto_bits (timestamp_auto_set_type &_target_, timestamp_auto_set_type _bits_)
static uint32_t drizzled::f_settype (const enum enum_field_types x)
template<class T >
void drizzled::safe_delete (T *&ptr)

Variables

const uint32_t drizzled::MAX_KEY = MAX_INDEXES
const uint32_t drizzled::MAX_REF_PARTS = 16
const uint32_t drizzled::MAX_KEY_LENGTH = 4096
const uint32_t drizzled::MAX_KEY_LENGTH_DECIMAL_WIDTH = 4
static const uint32_t drizzled::UNCACHEABLE_DEPENDENT = 1
static const uint32_t drizzled::UNCACHEABLE_RAND = 2
static const uint32_t drizzled::UNCACHEABLE_SIDEEFFECT = 3
static const uint32_t drizzled::UNCACHEABLE_EXPLAIN = 4
 forcing to save JOIN for explain
static const uint32_t drizzled::UNCACHEABLE_PREPARE = 5
static const uint32_t drizzled::UNCACHEABLE_UNITED = 6
static const uint32_t drizzled::TL_OPTION_UPDATING = 0
static const uint32_t drizzled::TL_OPTION_FORCE_INDEX = 1
static const uint32_t drizzled::TL_OPTION_IGNORE_LEAVES = 2
static const uint32_t drizzled::TL_OPTION_ALIAS = 3
static const uint32_t drizzled::NUM_OF_TABLE_OPTIONS = 4
const uint32_t drizzled::HA_MAX_REC_LENGTH = 65535
static const uint32_t drizzled::ONCE_ALLOC_INIT = 4096
static const uint32_t drizzled::RECORD_CACHE_SIZE = 64*1024

Detailed Description

Mostly constants and some macros/functions used by the server

Definition in file definitions.h.


Define Documentation

#define array_elements (   a)
Value:
((sizeof(a) / sizeof(*(a))) / \
   static_cast<size_t>(!(sizeof(a) % sizeof(*(a)))))

Definition at line 431 of file definitions.h.

#define KEY_DEFAULT_PACK_LENGTH   8

Don't pack string keys shorter than this (if PACK_KEYS=1 isn't used).

Definition at line 174 of file definitions.h.

Referenced by drizzled::prepare_create_table().

#define MATCHING_ROWS_IN_OTHER_TABLE   10

Number of rows in a reference table when refereed through a not unique key. This value is only used when we don't know anything about the key distribution.

Definition at line 171 of file definitions.h.

Referenced by drizzled::best_access_path().

#define PROCESS_LIST_WIDTH   100

Characters shown for the command in 'show processlist'.

Definition at line 177 of file definitions.h.

#define PSEUDO_TABLE_BITS
Value:
(PARAM_TABLE_BIT | OUTER_REF_TABLE_BIT | \
                           RAND_TABLE_BIT)

Definition at line 77 of file definitions.h.

#define TIME_FOR_COMPARE   5

The following is used to decide if MySQL should use table scanning instead of reading with keys. The number says how many evaluation of the WHERE clause is comparable to reading one extra row from a table.

Definition at line 144 of file definitions.h.

Referenced by drizzled::best_access_path(), drizzled::best_extension_by_limited_search(), drizzled::Cursor::multi_range_read_info_const(), and drizzled::optimize_straight_join().

#define TIME_FOR_COMPARE_ROWID   (TIME_FOR_COMPARE*2)

Number of comparisons of table rowids equivalent to reading one row from a table.

Definition at line 150 of file definitions.h.

#define TMP_FILE_PREFIX   "#sql"

Prefix for tmp tables

Definition at line 210 of file definitions.h.

Referenced by drizzled::internal_alter_table().