mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
fixed bug in Item_func_div::val_int() that broke all functions that
do val_int() on their arguments before starting the computation. Similar fixes are need for +-* and probably several other but I want to make sure Monty is fine with my fix approach before changing a lot of code. Amazingly, this bug is not as critical as you would expect since very few functions do val_int() on their arguments ( from_unixtime(), sec_to_time()), and those not very frequently perform a computation on their floating point arguments. which is probably why no one has yet reported this bug. Another possibility is that the result is usually wrong by no more than 5%, which makes it hard to catch it. I found it when trying to compute mile splits for 30:47 10K - it told me 5:07, and I knew it was wrong because 5:00 mile gives you 31:08. However, if I had not run as many 10K races, I would have easily believed that 30:47 10K is a 5:07 mile pace and would not have noticed the bug.
This commit is contained in:
@ -6,8 +6,8 @@ now()-now() weekday(curdate())-weekday(now()) unix_timestamp()-unix_timestamp(no
|
||||
0 0 0
|
||||
from_unixtime(unix_timestamp("1994-03-02 10:11:12")) from_unixtime(unix_timestamp("1994-03-02 10:11:12"),"%Y-%m-%d %h:%i:%s") from_unixtime(unix_timestamp("1994-03-02 10:11:12"))+0
|
||||
1994-03-02 10:11:12 1994-03-02 10:11:12 19940302101112
|
||||
sec_to_time(9001) sec_to_time(9001)+0 time_to_sec("15:12:22")
|
||||
02:30:01 23001 54742
|
||||
sec_to_time(9001) sec_to_time(9001)+0 time_to_sec("15:12:22") sec_to_time(time_to_sec("0:30:47")/6.21)
|
||||
02:30:01 23001 54742 00:04:57
|
||||
now()-curdate()*1000000-curtime()
|
||||
0
|
||||
strcmp(current_timestamp(),concat(current_date()," ",current_time()))
|
||||
|
Reference in New Issue
Block a user