Loading mysql-test/r/func_math.result +6 −0 Original line number Diff line number Diff line Loading @@ -32,3 +32,9 @@ ASIN(0.8+0.2) 1.570796 ASIN(1.2-0.2) 1.570796 floor(log(4)/log(2)) 2 floor(log(8)/log(2)) 3 floor(log(16)/log(2)) 4 mysql-test/t/func_math.test +8 −0 Original line number Diff line number Diff line Loading @@ -24,3 +24,11 @@ SELECT ACOS(0.2*5.0); SELECT ACOS(0.5*2.0); SELECT ASIN(0.8+0.2); SELECT ASIN(1.2-0.2); # # Bug #3051 FLOOR returns invalid # select floor(log(4)/log(2)); select floor(log(8)/log(2)); select floor(log(16)/log(2)); sql/item_func.cc +2 −1 Original line number Diff line number Diff line Loading @@ -572,7 +572,8 @@ longlong Item_func_ceiling::val_int() longlong Item_func_floor::val_int() { double value=args[0]->val(); // the volatile's for BUG #3051 to calm optimizer down (because of gcc's bug) volatile double value=args[0]->val(); null_value=args[0]->null_value; return (longlong) floor(value); } Loading Loading
mysql-test/r/func_math.result +6 −0 Original line number Diff line number Diff line Loading @@ -32,3 +32,9 @@ ASIN(0.8+0.2) 1.570796 ASIN(1.2-0.2) 1.570796 floor(log(4)/log(2)) 2 floor(log(8)/log(2)) 3 floor(log(16)/log(2)) 4
mysql-test/t/func_math.test +8 −0 Original line number Diff line number Diff line Loading @@ -24,3 +24,11 @@ SELECT ACOS(0.2*5.0); SELECT ACOS(0.5*2.0); SELECT ASIN(0.8+0.2); SELECT ASIN(1.2-0.2); # # Bug #3051 FLOOR returns invalid # select floor(log(4)/log(2)); select floor(log(8)/log(2)); select floor(log(16)/log(2));
sql/item_func.cc +2 −1 Original line number Diff line number Diff line Loading @@ -572,7 +572,8 @@ longlong Item_func_ceiling::val_int() longlong Item_func_floor::val_int() { double value=args[0]->val(); // the volatile's for BUG #3051 to calm optimizer down (because of gcc's bug) volatile double value=args[0]->val(); null_value=args[0]->null_value; return (longlong) floor(value); } Loading