Drizzled Public API Documentation

drizzled::table_reference_st Struct Reference

List of all members.

Public Attributes

bool key_err
uint32_t key_parts
uint32_t key_length
int32_t key
unsigned char * key_buff
unsigned char * key_buff2
StoredKey ** key_copy
Item ** items
bool ** cond_guards
key_part_map null_rejecting
table_map depend_map
unsigned char * null_ref_key
bool disable_cache

Detailed Description

Definition at line 39 of file table_reference.h.


Member Data Documentation

Array of pointers to trigger variables. Some/all of the pointers may be NULL. The ref access can be used iff

for each used key part i, (!cond_guards[i] || *cond_guards[i])

This array is used by subquery code. The subquery code may inject triggered conditions, i.e. conditions that can be 'switched off'. A ref access created from such condition is not valid when at least one of the underlying conditions is switched off (see subquery code for more details)

Definition at line 74 of file table_reference.h.

Table depends on these tables.

Definition at line 80 of file table_reference.h.

Referenced by drizzled::update_depend_map().

true <=> disable the "cache" as doing lookup with the same key value may produce different results (because of Index Condition Pushdown)

Definition at line 87 of file table_reference.h.

key_buff+key_length

Definition at line 60 of file table_reference.h.

No idea what this does...

Definition at line 61 of file table_reference.h.

length of key_buff

Definition at line 57 of file table_reference.h.

Referenced by drizzled::find_key_for_maxmin(), and drizzled::matching_cond().

null byte position in the key_buf. Used for REF_OR_NULL optimization

Definition at line 82 of file table_reference.h.

Referenced by drizzled::join_read_always_key_or_null().

(null_rejecting & (1<<i)) means the condition is '=' and no matching rows will be produced if items[i] IS NULL (see add_not_null_conds())

Definition at line 79 of file table_reference.h.


The documentation for this struct was generated from the following file: