Commit 687191a0 authored by unknown's avatar unknown

Merge moonbone.local:/mnt/gentoo64/work/test-5.0-opt-mysql

into  moonbone.local:/mnt/gentoo64/work/test-5.1-opt-mysql


mysql-test/r/user_var.result:
  Auto merged
mysql-test/t/user_var.test:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_func.h:
  Auto merged
parents 8b0afa63 e19dcfa9
......@@ -317,8 +317,11 @@ SHOW COUNT(*) WARNINGS;
SHOW COUNT(*) ERRORS;
@@session.error_count
1
create table t1(f1 int);
insert into t1 values(1),(1),(2),(3),(4),(1),(3),(1);
create table t1(f1 int, f2 varchar(2), f3 float, f4 decimal(2,1));
insert into t1 values
(1, "a", 1.5, 1.6), (1, "a", 1.5, 1.6), (2, "b", 2.5, 2.6),
(3, "c", 3.5, 3.6), (4, "d", 4.5, 4.6), (1, "a", 1.5, 1.6),
(3, "c", 3.5, 3.6), (1, "a", 1.5, 1.6);
select @a:=f1, count(f1) from t1 group by 1 desc;
@a:=f1 count(f1)
4 1
......@@ -331,4 +334,22 @@ select @a:=f1, count(f1) from t1 group by 1 asc;
2 1
3 2
4 1
select @a:=f2, count(f2) from t1 group by 1 desc;
@a:=f2 count(f2)
d 1
c 2
b 1
a 4
select @a:=f3, count(f3) from t1 group by 1 desc;
@a:=f3 count(f3)
4.5 1
3.5 2
2.5 1
1.5 4
select @a:=f4, count(f4) from t1 group by 1 desc;
@a:=f4 count(f4)
4.6 1
3.6 2
2.6 1
1.6 4
drop table t1;
......@@ -226,8 +226,14 @@ SHOW COUNT(*) ERRORS;
#
# Bug#28494: Grouping by Item_func_set_user_var produces incorrect result.
#
create table t1(f1 int);
insert into t1 values(1),(1),(2),(3),(4),(1),(3),(1);
create table t1(f1 int, f2 varchar(2), f3 float, f4 decimal(2,1));
insert into t1 values
(1, "a", 1.5, 1.6), (1, "a", 1.5, 1.6), (2, "b", 2.5, 2.6),
(3, "c", 3.5, 3.6), (4, "d", 4.5, 4.6), (1, "a", 1.5, 1.6),
(3, "c", 3.5, 3.6), (1, "a", 1.5, 1.6);
select @a:=f1, count(f1) from t1 group by 1 desc;
select @a:=f1, count(f1) from t1 group by 1 asc;
select @a:=f2, count(f2) from t1 group by 1 desc;
select @a:=f3, count(f3) from t1 group by 1 desc;
select @a:=f4, count(f4) from t1 group by 1 desc;
drop table t1;
......@@ -4180,7 +4180,7 @@ my_decimal *Item_func_set_user_var::val_decimal(my_decimal *val)
}
double Item_func_set_user_var::val_real_result()
double Item_func_set_user_var::val_result()
{
DBUG_ASSERT(fixed == 1);
check(TRUE);
......@@ -4196,7 +4196,7 @@ longlong Item_func_set_user_var::val_int_result()
return entry->val_int(&null_value);
}
String *Item_func_set_user_var::val_str_result(String *str)
String *Item_func_set_user_var::str_result(String *str)
{
DBUG_ASSERT(fixed == 1);
check(TRUE);
......
......@@ -1236,9 +1236,9 @@ public:
longlong val_int();
String *val_str(String *str);
my_decimal *val_decimal(my_decimal *);
double val_real_result();
double val_result();
longlong val_int_result();
String *val_str_result(String *str);
String *str_result(String *str);
my_decimal *val_decimal_result(my_decimal *);
bool update_hash(void *ptr, uint length, enum Item_result type,
CHARSET_INFO *cs, Derivation dv, bool unsigned_arg);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment