Commit 37abfebb authored by unknown's avatar unknown
Browse files

Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0

into  sanja.is.com.ua:/home/bell/mysql/bk/work-bug6-5.0

parents bb349787 baee965b
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -2385,3 +2385,11 @@ show create view v1;
View	Create View
v1	CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY INVOKER VIEW `v1` AS select 1 AS `1`
drop view v1;
create table t1(f1 int, f2 int);
insert into t1 values (null, 10), (null,2);
create view v1 as select * from t1;
select f1, sum(f2) from v1 group by f1;
f1	sum(f2)
NULL	12
drop view v1;
drop table t1;
+10 −0
Original line number Diff line number Diff line
@@ -2253,3 +2253,13 @@ drop view v1;
create definer = current_user sql security invoker view v1 as select 1;
show create view v1;
drop view v1;

#
# Bug #14850 Item_ref's values wasn't updated
#
create table t1(f1 int, f2 int);
insert into t1 values (null, 10), (null,2);
create view v1 as select * from t1;
select f1, sum(f2) from v1 group by f1;
drop view v1;
drop table t1;
+5 −1
Original line number Diff line number Diff line
@@ -1603,7 +1603,11 @@ class Item_ref :public Item_ident
  void make_field(Send_field *field);
  bool fix_fields(THD *, Item **);
  int save_in_field(Field *field, bool no_conversions);
  void save_org_in_field(Field *field)	{ (*ref)->save_org_in_field(field); }
  void save_org_in_field(Field *field)
  {
    (*ref)->save_org_in_field(field);
    null_value= (*ref)->null_value;
  }
  enum Item_result result_type () const { return (*ref)->result_type(); }
  enum_field_types field_type() const   { return (*ref)->field_type(); }
  Field *get_tmp_table_field()