Commit b30d80e8 authored by unknown's avatar unknown
Browse files

Post merge fix

parent 0775a712
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -616,7 +616,7 @@ insert into t1 values (1,repeat('a',255)),(2,repeat('b',255));
select f2,group_concat(f1) from t1 group by f2;
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def	test	t1	t1	f2	f2	253	255	255	Y	0	0	8
def					group_concat(f1)	252	400	1	Y	128	0	63
def					group_concat(f1)	253	400	1	Y	128	0	63
f2	group_concat(f1)
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa	1
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb	2
+1 −4
Original line number Diff line number Diff line
@@ -380,10 +380,7 @@ Field *Item_func::tmp_table_field(TABLE *t_arg)
    res= new Field_double(max_length, maybe_null, name, t_arg, decimals);
    break;
  case STRING_RESULT:
    if (max_length/collation.collation->mbmaxlen > CONVERT_IF_BIGGER_TO_BLOB)
      res= new Field_blob(max_length, maybe_null, name, t_arg, collation.collation);
    else
      res= new Field_string(max_length, maybe_null, name, t_arg, collation.collation);
    res= make_string_field(t_arg);
    break;
  case DECIMAL_RESULT:
    res= new Field_new_decimal(my_decimal_precision_to_length(decimal_precision(),
+2 −2
Original line number Diff line number Diff line
@@ -377,7 +377,7 @@ Field *Item_sum::create_tmp_field(bool group, TABLE *table,
  case INT_RESULT:
    return new Field_longlong(max_length,maybe_null,name,table,unsigned_flag);
  case STRING_RESULT:
    if (max_length > 255 && convert_blob_length)
    if (max_length/collation.collation->mbmaxlen > 255 && convert_blob_length)
      return new Field_varstring(convert_blob_length, maybe_null,
                                 name, table,
                                 collation.collation);
+2 −2
Original line number Diff line number Diff line
@@ -1124,7 +1124,7 @@ class Item_func_group_concat : public Item_sum
    if (max_length/collation.collation->mbmaxlen > CONVERT_IF_BIGGER_TO_BLOB )
      return FIELD_TYPE_BLOB;
    else
      return MYSQL_TYPE_VAR_STRING;
      return MYSQL_TYPE_VARCHAR;
  }
  void clear();
  bool add();
+6 −13
Original line number Diff line number Diff line
@@ -8245,20 +8245,13 @@ static Field *create_tmp_field_from_item(THD *thd, Item *item, TABLE *table,
    if ((type= item->field_type()) == MYSQL_TYPE_DATETIME ||
        type == MYSQL_TYPE_TIME || type == MYSQL_TYPE_DATE)
      new_field= item->tmp_table_field_from_field_type(table);
    else if (item->max_length/item->collation.collation->mbmaxlen >
             CONVERT_IF_BIGGER_TO_BLOB)
    {
      if (convert_blob_length)
    else if (item->max_length/item->collation.collation->mbmaxlen > 255 &&
             convert_blob_length)
      new_field= new Field_varstring(convert_blob_length, maybe_null,
                                     item->name, table,
                                     item->collation.collation);
    else
        new_field= new Field_blob(item->max_length, maybe_null, item->name,
                                  table, item->collation.collation);
    }
    else
      new_field= new Field_string(item->max_length, maybe_null, item->name, 
                                  table, item->collation.collation);
      new_field= item->make_string_field(table);
    break;
  case DECIMAL_RESULT:
    new_field= new Field_new_decimal(item->max_length, maybe_null, item->name,