~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/optimizer/range_param.h

  • Committer: Dennis Schoen
  • Date: 2010-02-03 08:50:56 UTC
  • mfrom: (1280 build)
  • mto: This revision was merged to the branch mainline in revision 1292.
  • Revision ID: dennis@blogma.de-20100203085056-nswlw9e0tkje5ojj
merge trunk

Show diffs side-by-side

added added

removed removed

Lines of Context:
34
34
class RangeParameter
35
35
{
36
36
public:
 
37
 
 
38
  RangeParameter()
 
39
    :
 
40
      session(NULL),
 
41
      table(NULL),
 
42
      cond(NULL),
 
43
      prev_tables(),
 
44
      read_tables(),
 
45
      current_table(),
 
46
      key_parts(NULL),
 
47
      key_parts_end(NULL),
 
48
      mem_root(NULL),
 
49
      old_root(NULL),
 
50
      keys(0),
 
51
      using_real_indexes(false),
 
52
      remove_jump_scans(false),
 
53
      alloced_sel_args(0),
 
54
      force_default_mrr(false)
 
55
  {}
 
56
 
37
57
  Session       *session;   /* Current thread handle */
38
58
  Table *table; /* Table being analyzed */
39
59
  COND *cond;   /* Used inside get_mm_tree(). */
74
94
class Parameter : public RangeParameter
75
95
{
76
96
public:
 
97
 
 
98
  Parameter()
 
99
    :
 
100
      RangeParameter(),
 
101
      max_key_part(0),
 
102
      range_count(0),
 
103
      quick(false),
 
104
      fields_bitmap_size(0),
 
105
      needed_fields(),
 
106
      tmp_covered_fields(),
 
107
      needed_reg(NULL),
 
108
      imerge_cost_buff(NULL),
 
109
      imerge_cost_buff_size(0),
 
110
      is_ror_scan(false),
 
111
      n_ranges(0)
 
112
  {}
 
113
 
77
114
  KEY_PART *key[MAX_KEY]; /* First key parts of keys used in the query */
78
115
  uint32_t max_key_part;
79
116
  /* Number of ranges in the last checked tree->key */
80
117
  uint32_t range_count;
81
 
  unsigned char min_key[MAX_KEY_LENGTH+MAX_FIELD_WIDTH],
82
 
    max_key[MAX_KEY_LENGTH+MAX_FIELD_WIDTH];
83
 
  bool quick;                           // Don't calulate possible keys
 
118
  unsigned char min_key[MAX_KEY_LENGTH+MAX_FIELD_WIDTH];
 
119
  unsigned char max_key[MAX_KEY_LENGTH+MAX_FIELD_WIDTH];
 
120
  bool quick; // Don't calulate possible keys
84
121
 
85
122
  uint32_t fields_bitmap_size;
86
123
  MyBitmap needed_fields;    /* bitmask of fields needed by the query */