- 19 Jul, 2010 4 commits
-
-
Evgeny Potemkin authored
This bug is a design flaw of the fix for the bug#33546. It assumed that an item can be used only in one comparison context, but actually it isn't the case. Item_cache_datetime is used to store result for MIX/MAX aggregate functions. Because Arg_comparator always compares datetime values as INTs when possible the Item_cache_datetime most time caches only INT value. But since all datetime values has STRING result type MIN/MAX functions are asked for a STRING value when the result is being sent to a client. The Item_cache_datetime was designed to avoid conversions and get INT/STRING values from an underlying item, but at the moment the values is asked underlying item doesn't hold it anymore thus wrong result is returned. Beside that MIN/MAX aggregate functions was wrongly initializing cached result and this led to a wrong result. The Item::has_compatible_context helper function is added. It checks whether this and given items has the same comparison context or can be compared as DATETIME values by Arg_comparator. The equality propagation optimization is adjusted to take into account that items which being compared as DATETIME can have different comparison contexts. The Item_cache_datetime now converts cached INT value to a correct STRING DATETIME value by means of number_to_datetime & my_TIME_to_str functions. The Arg_comparator::set_cmp_context_for_datetime helper function is added. It sets comparison context of items being compared as DATETIMEs to INT if items will be compared as longlong. The Item_sum_hybrid::setup function now correctly initializes its result value. In order to avoid unnecessary conversions Item_sum_hybrid now states that it can provide correct longlong value if the item being aggregated can do it too. mysql-test/r/group_by.result: Added a test case for the bug#49771. sql/item.cc: Bug#49771: Incorrect MIN/MAX for date/time values. The equality propagation mechanism is adjusted to take into account that items which being compared as DATETIME can have different comparison contexts. The Item_cache_datetime now converts cached INT value to a correct STRING DATETIME/TIME value. sql/item.h: Bug#49771: Incorrect MIN/MAX for date/time values. The Item::has_compatible_context helper function is added. It checks whether this and given items has the same comparison context or can be compared as DATETIME values by Arg_comparator. Added Item_cache::clear helper function. sql/item_cmpfunc.cc: Bug#49771: Incorrect MIN/MAX for date/time values. The Arg_comparator::set_cmp_func now sets the correct comparison context for items being compared as DATETIME values. sql/item_cmpfunc.h: Bug#49771: Incorrect MIN/MAX for date/time values. The Arg_comparator::set_cmp_context_for_datetime helper function is added. It sets comparison context of items being compared as DATETIMEs to INT if items will be compared as longlong. sql/item_sum.cc: Bug#49771: Incorrect MIN/MAX for date/time values. The Item_sum_hybrid::setup function now correctly initializes its result value. sql/item_sum.h: Bug#49771: Incorrect MIN/MAX for date/time values. In order to avoid unnecessary conversions Item_sum_hybrid now states that it can provide correct longlong value if the item being aggregated can do it too.
-
Jonathan Perkin authored
Put '-features=no%except' back into Solaris/x86 CXXFLAGS.
-
Alexander Nozdrin authored
Conflicts: - scripts/CMakeLists.txt
-
unknown authored
-
- 17 Jul, 2010 2 commits
-
-
Davi Arnaut authored
Post-merge fix: remove leftovers from safemalloc removal.
-
Andrei Elkin authored
-
- 16 Jul, 2010 20 commits
-
-
Davi Arnaut authored
-
Andrei Elkin authored
applying bundle made for next-mr-bugfixing to trunk-bugfixing branch of the bug
-
Andrei Elkin authored
applying bundle made for next-mr-bugfixing to trunk-bugfixing branch of the bug
-
Davi Arnaut authored
-
Davi Arnaut authored
Bug#47139: Test "merge" crashes in "embedded" run Backport patch for Bug#47139
-
Georgi Kodinov authored
-
Marc Alff authored
Backport from mysql-next-mr (5.6) to mysql-trunk (5.5)
-
Marc Alff authored
Backport from mysql-next-mr (5.6) to mysql-trunk (5.5)
-
Marc Alff authored
Backport from mysql-next-mr (5.6) to mysql-trunk (5.5)
-
Marc Alff authored
Backport from mysql-next-mr (5.6) to mysql-trunk (5.5)
-
Georgi Kodinov authored
-
Marc Alff authored
Backport from mysql-next-mr (5.6) to mysql-trunk (5.5)
-
Ramil Kalimullin authored
-
Ramil Kalimullin authored
of the "embedded" server Problem: mysqltest_embedded failed to load ha_innodb_plugin library on some platforms (due to some unresolved references). Fix: on FreeBSD use -export-dynamic flag building mysqltest_embedded. That allows to use its global symbols to resolve references in the dynamically loaded plugin library. libmysqld/examples/Makefile.am: Fix for bug #50667: The InnoDB plugin prevents initialization of the "embedded" server - use -export-dynamic (on FreeBSD/DragonFly) building mysqltest_embedded to allow using its global symbols to resolve references in the dynamically loaded plugin libraries.
-
Marc Alff authored
Backport from mysql-next-mr (5.6) to mysql-trunk (5.5)
-
Marc Alff authored
Backport from mysql-next-mr (5.6) to mysql-trunk (5.5)
-
Marc Alff authored
Backport from mysql-next-mr (5.6) to mysql-trunk (5.5)
-
Marc Alff authored
Backport from mysql-next-mr (5.6) to mysql-trunk (5.5)
-
Marc Alff authored
Backporting the fix from myql-next-mr (5.6) to mysql-trunk (5.5)
-
Marc Alff authored
This fix is for cleanup, to resolve a remaining code review item. Backport from mysql-next-mr (5.6) to mysql-trunk (5.5).
-
- 15 Jul, 2010 14 commits
-
-
Marc Alff authored
Fixed minor merge issues with #includes
-
Davi Arnaut authored
Post-merge fix: adjust line numbers in pfs_upgrade test case result given that mysql_system_tables_fix.sql was modified.
-
Davi Arnaut authored
mysql_config. Those are mainly warning options intended to monitor the server code and shouldn't be leaked to client code.
-
Davi Arnaut authored
Silence bogus aliasing warning through a pointer indirection. Also, no need to check the return of a placement new.
-
Davi Arnaut authored
Restore hack necessary to setup a libmysqld archive.
-
Davi Arnaut authored
-
Davi Arnaut authored
Fix compiler warnings due to: a mismatch in the prototypes for check_access and implicit conversions from double to ulonglong and vice-versa. mysys/my_getopt.c: Explicit conversion from ulonglong to double. Might need to be tweaked in the future. sql/sql_parse.h: Make prototype equal to the case when not compiling under embedded. sql/sys_vars.cc: Explicit conversion from ulonglong to double. Destination var is a ulonglong. sql/sys_vars.h: Explicit conversion from ulonglong to double. Might need to be tweaked in the future.
-
Georgi Kodinov authored
-
Davi Arnaut authored
-
Alexey Kopytov authored
-
Alexey Kopytov authored
-
Alexey Kopytov authored
-
Davi Arnaut authored
Remove OS/2 specific code.
-
Davi Arnaut authored
Remove QNX specific code.
-