~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/rpl_utility.h

Merged build changes from Antony.

Show diffs side-by-side

added added

removed removed

Lines of Context:
70
70
                                       &m_null_bits, (size + 7) / 8,
71
71
                                       NULL);
72
72
 
73
 
    bzero(m_field_metadata, size * sizeof(uint16_t));
 
73
    memset(m_field_metadata, 0, size * sizeof(uint16_t));
74
74
 
75
75
    if (m_type)
76
76
      memcpy(m_type, types, size);
89
89
      for (unsigned int i= 0; i < m_size; i++)
90
90
      {
91
91
        switch (m_type[i]) {
92
 
        case MYSQL_TYPE_BLOB:
93
 
        case MYSQL_TYPE_DOUBLE:
 
92
        case DRIZZLE_TYPE_BLOB:
 
93
        case DRIZZLE_TYPE_DOUBLE:
94
94
        {
95
95
          /*
96
96
            These types store a single byte.
99
99
          index++;
100
100
          break;
101
101
        }
102
 
        case MYSQL_TYPE_SET:
103
 
        case MYSQL_TYPE_ENUM:
104
 
        case MYSQL_TYPE_STRING:
 
102
        case DRIZZLE_TYPE_SET:
 
103
        case DRIZZLE_TYPE_ENUM:
 
104
        case DRIZZLE_TYPE_STRING:
105
105
        {
106
106
          uint16_t x= field_metadata[index++] << 8U; // real_type
107
107
          x+= field_metadata[index++];            // pack or field length
108
108
          m_field_metadata[i]= x;
109
109
          break;
110
110
        }
111
 
        case MYSQL_TYPE_VARCHAR:
 
111
        case DRIZZLE_TYPE_VARCHAR:
112
112
        {
113
113
          /*
114
114
            These types store two bytes.
118
118
          index= index + 2;
119
119
          break;
120
120
        }
121
 
        case MYSQL_TYPE_NEWDECIMAL:
 
121
        case DRIZZLE_TYPE_NEWDECIMAL:
122
122
        {
123
123
          uint16_t x= field_metadata[index++] << 8U; // precision
124
124
          x+= field_metadata[index++];            // decimals
204
204
    WL#3915) or needs to advance the pointer for the fields in the raw 
205
205
    data from the master to a specific column.
206
206
  */
207
 
  uint32 calc_field_size(uint32_t col, unsigned char *master_data) const;
 
207
  uint32_t calc_field_size(uint32_t col, unsigned char *master_data) const;
208
208
 
209
209
  /**
210
210
    Decide if the table definition is compatible with a table.