- 26 Oct, 2007 1 commit
-
-
unknown authored
file .\ha_innodb. Problem: if a partial unique key followed by a non-partial one we declare the second one as a primary key. Fix: sort non-partial unique keys before partial ones. include/my_base.h: Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, file .\ha_innodb. - sort unique keys that don't contain partial segments before other keys: set HA_KEY_HAS_PART_KEY_SEG flag for such keys in the mysql_prepare_table(), use it in the sort_keys(); mysql-test/r/innodb_mysql.result: Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, file .\ha_innodb. - test result. mysql-test/r/key.result: Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, file .\ha_innodb. - test result. mysql-test/t/innodb_mysql.test: Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, file .\ha_innodb. - test case. mysql-test/t/key.test: Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, file .\ha_innodb. - test case. sql/sql_table.cc: Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, file .\ha_innodb. - sort unique keys that don't contain partial segments before other keys: set HA_KEY_HAS_PART_KEY_SEG flag for such keys in the mysql_prepare_table(), use it in the sort_keys(); sql/structs.h: Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, file .\ha_innodb. - sort unique keys that don't contain partial segments before other keys: set HA_KEY_HAS_PART_KEY_SEG flag for such keys in the mysql_prepare_table(), use it in the sort_keys();
-
- 25 Oct, 2007 2 commits
- 24 Oct, 2007 6 commits
-
-
unknown authored
into ramayana.hindu.god:/home/tsmith/m/bk/maint/50
-
ssh://bk-internal.mysql.com//home/bk/mysql-5.0-maintunknown authored
into polly.(none):/home/kaa/src/maint/mysql-5.0-maint
-
unknown authored
into polly.(none):/home/kaa/src/maint/mysql-5.0-maint
-
unknown authored
some platforms Since the behavior of write(fd, buf, 0) is undefined, it may fail with EFAULT on some architectures when buf == NULL. The error was propagated up to a caller, since my_write() code did not handle it properly. Fixed by checking the 'number of bytes' argument in my_write() and returning before calling the write() system call when there is nothing to write. mysys/my_write.c: Return from my_write() before calling the write() system call when the number of bytes to be written is 0, since the behavior of write() in this case is not portable.
-
unknown authored
into mysql.com:/home/ram/work/b31615/b31615.4.1
-
unknown authored
into mysql.com:/home/ram/work/b31615/b31615.5.0 sql/set_var.cc: Auto merged
-
- 23 Oct, 2007 7 commits
-
-
unknown authored
into pilot.mysql.com:/data/msvensson/mysql/mysql-5.0-maint
-
unknown authored
into pilot.mysql.com:/data/msvensson/mysql/mysql-5.0-maint
-
unknown authored
into mysql.com:/home/ram/work/b31615/b31615.5.0 mysql-test/r/ctype_ucs.result: Auto merged mysql-test/t/ctype_ucs.test: Auto merged sql/set_var.cc: Auto merged sql/set_var.h: Auto merged
-
unknown authored
into mysql.com:/home/ram/work/b31349/b31349.5.0
-
unknown authored
mysql-test/mysql-test-run.pl: Use an array to store the valgrind options Deprecate --valgrind-options=s and instead use --valgrind-option(but allow PushBuild's) --valgrind-options=s usage. Make the variables local
-
unknown authored
into polly.(none):/home/kaa/src/maint/mysql-5.0-maint
-
unknown authored
into mysql.com:/home/ram/work/b31349/b31349.5.0
-
- 22 Oct, 2007 2 commits
- 19 Oct, 2007 4 commits
-
-
unknown authored
into anubis.xiphis.org:/usr/home/antony/work/mysql-5.0-engines.merge
-
unknown authored
into anubis.xiphis.org:/usr/home/antony/work/mysql-5.0-engines.merge mysql-test/r/heap_btree.result: Auto merged mysql-test/t/heap_btree.test: Auto merged
-
unknown authored
into anubis.xiphis.org:/usr/home/antony/work/mysql-4.1-engines.merge
-
unknown authored
Problem: lying to the optimizer that a function (Item_func_inet_ntoa) cannot return NULL values leads to unexpected results (in the case group keys creation/comparison is broken). Fix: Item_func_inet_ntoa::maybe_null should be set properly. mysql-test/r/func_misc.result: Fix for bug #31349: ERROR 1062 (23000): Duplicate entry '' for key 'group_key' - test result. mysql-test/t/func_misc.test: Fix for bug #31349: ERROR 1062 (23000): Duplicate entry '' for key 'group_key' - test case. sql/item_strfunc.h: Fix for bug #31349: ERROR 1062 (23000): Duplicate entry '' for key 'group_key' - set Item_func_inet_ntoa::maybe_null flag.
-
- 18 Oct, 2007 4 commits
-
-
unknown authored
into lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.0-rt-merge mysql-test/r/udf.result: Auto merged mysql-test/t/udf.test: Auto merged sql/item.cc: Auto merged sql/item_func.cc: Auto merged sql/mysql_priv.h: Auto merged sql/set_var.cc: Auto merged sql/udf_example.c: Auto merged sql/udf_example.def: Auto merged
-
unknown authored
into pilot.mysql.com:/data/msvensson/mysql/mysql-5.0-maint
-
unknown authored
-
unknown authored
into polly.(none):/home/kaa/src/maint/mysql-5.0-maint myisam/sort.c: Auto merged sql/sql_acl.cc: Auto merged sql/sql_select.cc: Auto merged
-
- 17 Oct, 2007 6 commits
-
-
unknown authored
Previously, UDF *_init functions were passed constant strings with erroneous lengths. The length came from the containing variable's size, not the length of the value itself. Now the *_init functions get the constant as a null terminated string with the correct length supplied too. mysql-test/r/udf.result: Test case to check constants passed UDFs. mysql-test/t/udf.test: Test case to check constants passed UDFs. sql/item_func.cc: UDF _init functions are now passed the length of the constants, rather than the max length of the var containing the constant. sql/udf_example.c: Added check_const_len functions. The check_const_len_init functions checks that lengths of constants are correctly passed. sql/udf_example.def: Add new example functions to windows dll export list.
-
unknown authored
in middle of block) libmysql/libmysql.c: Fix syntax error - don't define new variables in the middle of a block. Also, use size_t instead of uint to avoid unnecessary casting.
-
unknown authored
CPUs / Intel's ICC compile The bug is a combination of two problems: 1. IA64/ICC MySQL binaries use glibc's qsort(), not the one in mysys. 2. The order relation implemented by join_tab_cmp() is not transitive, i.e. it is possible to choose such a, b and c that (a < b) && (b < c) but (c < a). This implies that result of a sort using the relation implemented by join_tab_cmp() depends on the order in which elements are compared, i.e. the result is implementation-specific. Since choose_plan() uses qsort() to pre-sort the join tables using join_tab_cmp() as a compare function, the results of the sorting may vary depending on qsort() implementation. It is neither possible nor important to implement a better ordering algorithm in join_tab_cmp(). Therefore the only way to fix it is to force our own qsort() to be used by renaming it to my_qsort(), so we don't depend on linker to decide that. This patch also "fixes" bug #20530: qsort redefinition violates the standard. include/my_sys.h: Renamed qsort() and qsort2() to my_qsort() and my_qsort2(). Since previously we relied on stdlib.h to provide a declaration for qsort(), a separate declaration for my_qsort() is now required. libmysql/Makefile.shared: Added mf_qsort.c to libmysql, since my_lib.c now uses my_qsort() instead of qsort(). myisam/ft_boolean_search.c: Replaced qsort2() with my_qsort2(). myisam/ft_nlq_search.c: Replaced qsort2() with my_qsort2(). myisam/myisampack.c: Replaced qsort() with my_qsort(). myisam/sort.c: Replaced qsort2() with my_qsort2(). mysys/mf_keycache.c: Replaced qsort() with my_qsort(). mysys/mf_qsort.c: Renamed qsort() to my_qsort() and qsort2() to my_qsort2(). mysys/mf_sort.c: Replaced qsort2() with my_qsort2(). mysys/my_lib.c: Replaced qsort() with my_qsort(). mysys/queues.c: Replaced qsort2() with my_qsort2(). sql/item_cmpfunc.cc: Replaced qsort2() with my_qsort2(). sql/item_cmpfunc.h: Replaced qsort2() with my_qsort2(). sql/opt_range.cc: Replaced qsort() with my_qsort(). sql/records.cc: Replaced qsort() with my_qsort(). sql/sql_acl.cc: Replaced qsort() with my_qsort(). sql/sql_array.h: Replaced qsort() with my_qsort(). sql/sql_help.cc: Replaced qsort() with my_qsort(). sql/sql_select.cc: Replaced qsort() with my_qsort(). sql/examples/ha_tina.cc: Replaced qsort() with my_qsort(). sql/sql_table.cc: Replaced qsort() with my_qsort().
-
unknown authored
Problem: currently, UCS-2 cannot be used as a client character set. Fix: raise an error if one attempts to set it to USC-2. mysql-test/r/ctype_ucs.result: Fix for bug#31615: crash after set names ucs2 collate xxx - test result. mysql-test/t/ctype_ucs.test: Fix for bug#31615: crash after set names ucs2 collate xxx - test case. sql/set_var.cc: Fix for bug#31615: crash after set names ucs2 collate xxx - raise an error if one is going to set character_set_client to UCS-2. sql/set_var.h: Fix for bug#31615: crash after set names ucs2 collate xxx - raise an error if one is going to set character_set_client to UCS-2.
-
unknown authored
into polly.(none):/home/kaa/src/maint/mysql-5.0-maint mysql-test/r/repair.result: Auto merged mysql-test/t/repair.test: Auto merged
-
unknown authored
-
- 16 Oct, 2007 6 commits
-
-
unknown authored
sql/sql_yacc.yy: Fixed error message to use char*, not LEX_STRING
-
unknown authored
into lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.0-28318-rework
-
unknown authored
mysql-test/r/sp.result: Added tests for coverage mysql-test/t/sp.test: Added tests for coverage sql/sql_udf.cc: Code cleanup
-
unknown authored
into polly.(none):/home/kaa/src/maint/mysql-5.0-maint myisam/sort.c: Auto merged mysql-test/r/repair.result: Auto merged mysql-test/t/repair.test: Auto merged
-
unknown authored
into polly.(none):/home/kaa/src/maint/mysql-4.1-maint
-
unknown authored
The root cause of the issue was that the CREATE FUNCTION grammar, for User Defined Functions, was using the sp_name rule. The sp_name rule is intended for fully qualified stored procedure names, like either ident.ident, or just ident but with a default database implicitly selected. A UDF does not have a fully qualified name, only a name (ident), and should not use the sp_name grammar fragment during parsing. The fix is to re-organize the CREATE FUNCTION grammar, to better separate: - creating UDF (no definer, can have AGGREGATE, simple ident) - creating Stored Functions (definer, no AGGREGATE, fully qualified name) With the test case provided, another issue was exposed which is also fixed: the DROP FUNCTION statement was using sp_name and also failing when no database is implicitly selected, when droping UDF functions. The fix is also to change the grammar so that DROP FUNCTION works with both the ident.ident syntax (to drop a stored function), or just the ident syntax (to drop either a UDF or a Stored Function, in the current database) mysql-test/r/sp-error.result: Adjust test results mysql-test/r/udf.result: Adjust test results mysql-test/t/sp-error.test: Adjust test results mysql-test/t/udf.test: Adjust test results sql/sql_parse.cc: CREATE UDF FUNCTION does not use a fully qualified name. sql/sql_yacc.yy: Fix grammar for CREATE / DROP FUNCTION, FOR udf Improve error messages for select no_such_function()
-
- 15 Oct, 2007 2 commits