- 28 Nov, 2010 1 commit
-
-
unknown authored
When using BINLOG statement to execute rows log events, session variables foreign_key_checks and unique_checks are changed temporarily. As each rows log event has their own special session environment and its own foreign_key_checks and unique_checks can be different from current session which executing the BINLOG statement. But these variables are not restored correctly after BINLOG statement. This problem will cause that the following statements fail or generate unexpected data. In this patch, code is added to backup and restore these two variables. So BINLOG statement will not affect current session's variables again. mysql-test/extra/binlog_tests/binlog.test: Add test to verify this patch. mysql-test/suite/binlog/r/binlog_row_binlog.result: Add test to verify this patch. mysql-test/suite/binlog/r/binlog_stm_binlog.result: Add test to verify this patch. sql/sql_binlog.cc: Add code to backup and restore thd->options.
-
- 27 Nov, 2010 1 commit
-
-
Bjorn Munch authored
-
- 26 Nov, 2010 6 commits
-
-
Georgi Kodinov authored
-
Alexander Barkov authored
Problem: MySQL cp1251 did not support 'U+20AC EURO SIGN' which was assigned a few years ago to 0x88. Fix: adding mapping: 0x88 <-> U+20AC @ mysql-test/include/ctype_8bit.inc New shared file to test 8bit character sets. @ mysql-test/r/ctype_cp1251.result @ mysql-test/t/ctype_cp1251.test Adding tests @ sql/share/charsets/cp1251.xml Adding mapping @ strings/ctype-extra.c Regenerating ctype-extra.c using strings/conf_to_src according to new cp1251.xml
-
Nirbhay Choubey authored
After dropping and recreating the database specified along with --one-database option at command line, mysql client keeps filtering the statements even after the execution of a 'USE' command on the same database. --one-database option enables the filtering of statements when the current database is not the one specified at the command line. However, when the same database is dropped and recreated the variable (current_db) that holds the inital database name gets altered. This bug exploits the fact that current_db initially gets set to null value (0) when a 'use db_name' follows the recreation of same database db_name (speficied at the command line) and hence skip_updates gets set to 1, which inturn triggers the further filtering of statements. Fixed by making get_current_db() a no-op function when one_database is set, and hence, under that condition current_db will not get altered. Note, however the value of current_db can change when we execute 'connect' command with a differnet database to reconnect to the server, in which case, the behavior of --one-database will be formulated using this new database. client/mysql.cc: Bug #54899 : --one-database option cannot handle DROP/CREATE DATABASE commands Added an if statement at the beginnning of get_current_db() , which makes it a no-op function if one-database option is specified, and hence current_db remains unchanged. Changed the help message for one-database option to a more appropriate message as specified in mysql documentation. mysql-test/r/mysql.result: Added a test case for bug#54899 and some more test cases to check other one-database option related behaviors. mysql-test/t/mysql.test: Added a test case for bug#54899 and some more test cases to check other one-database option related behaviors.
-
Bjorn Munch authored
Fixed as suggested in the .inc file and two tests Could not reproduce problem, but tested tests on Windows
-
Georgi Kodinov authored
-
Georgi Kodinov authored
-
- 25 Nov, 2010 3 commits
-
-
Bjorn Munch authored
It does work in general, the problem here was that the test name 'alter_table' matches 'main.alter_table-big' which has already been found. Fixed by matching more explicitly (with/without suite name)
-
Tatiana Azundris Nurnberg authored
-
Tatiana A. Nurnberg authored
43233/55794. mysql-test/r/change_user.result: Don't use -1 integer wrap around. It used to work, but now we do what's actually in the documentation. In tests, we now use DEFAULT or the numeral equivalent (as we do in the 5.6 tests). mysql-test/r/key_cache.result: Can't drop default key case is an error now, not a warning, for compatibility with 5.6. mysql-test/r/variables.result: Can't drop default key case is an error now, not a warning, for compatibility with 5.6. mysql-test/t/change_user.test: Don't use -1 integer wrap around. It used to work, but now we do what's actually in the documentation. In tests, we now use DEFAULT or the numeral equivalent (as we do in the 5.6 tests). mysql-test/t/key_cache.test: Can't drop default key case is an error now, not a warning, for compatibility with 5.6. mysql-test/t/variables.test: Can't drop default key case is an error now, not a warning, for compatibility with 5.6. sql/mysqld.cc: 0 is a legal (albeit magic) value: "drop key cache." sql/set_var.cc: bound_unsigned() can go now, it was just a kludge until things are done The Right Way, which they are now. Can't drop default key case is an error now, not a warning, for compatibility with 5.6. tests/mysql_client_test.c: Don't use -1 integer wrap around. It used to work, but now we do what's actually in the documentation. In tests, we now use DEFAULT or the numeral equivalent (as we do in the 5.6 tests).
-
- 24 Nov, 2010 6 commits
-
-
Bjorn Munch authored
-
Alexander Nozdrin authored
-
Tatiana A. Nurnberg authored
-
Alexander Nozdrin authored
EXCEPTIONS-CLIENT from all the places.
-
Bjorn Munch authored
If mysqltest dies, mtr waits to see if mysqld dies too within 100ms But in that case, it should not care about expected crash Fix: jump past the code that checks the expect file
-
Tatiana A. Nurnberg authored
-
- 23 Nov, 2010 2 commits
-
-
Bjorn Munch authored
Follow-up discussed with Reporter: Avoid hard shutdown after test failure, if caused by server log warning AND we are running valgrind More general pick-up of valgrind summaries, order may apparently vary Do exit(1) if we did find valgrind summary warnings
-
Sergey Glukhov authored
In case of low memory sort buffer QUICK_INDEX_MERGE_SELECT creates temporary file where is stores row ids which meet QUICK_SELECT ranges except of clustered pk range, clustered range is processed separately. In init_read_record we check if temporary file is used and choose appropriate record access method. It does not take into account that temporary file contains partial result in case of QUICK_INDEX_MERGE_SELECT with clustered pk range. The fix is always to use rr_quick if QUICK_INDEX_MERGE_SELECT with clustered pk range is used. mysql-test/suite/innodb/r/innodb_mysql.result: test case mysql-test/suite/innodb/t/innodb_mysql.test: test case mysql-test/suite/innodb_plugin/r/innodb_mysql.result: test case mysql-test/suite/innodb_plugin/t/innodb_mysql.test: test case sql/opt_range.h: added new method sql/records.cc: The fix is always to use rr_quick if QUICK_INDEX_MERGE_SELECT with clustered pk range is used.
-
- 22 Nov, 2010 4 commits
-
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-
Guilhem Bichot authored
and related small fixes. mysql-test/t/user_var.test: test for bug sql/field_conv.cc: From the C standard, memcpy() has undefined behaviour if to->ptr==from->ptr sql/item_func.cc: In the case of BUG#56138, entry->value==ptr in which case memcpy() has undefined results per the C standard. sql/sql_select.cc: Work around a bug in old gcc
-
- 20 Nov, 2010 1 commit
-
-
Davi Arnaut authored
Although ICC identifies itself as GCC, even in version numbers, it does not support the stpcpy built-in. include/m_string.h: Work around ICC. Hacks...
-
- 18 Nov, 2010 1 commit
-
-
Georgi Kodinov authored
options/settings 1. Changed the default value for socket on Windows to the windows default 2. Removed hard-coded trailing slashes from innodb_data_home_dir and innodb_log_group_name_dir. 3. Added extra backslashes to the innodb directory example 4. Made the tempdir platform "dependent" 5. Fixed the comments in the .ini files 6. Removed the tmpdir from the templates and the scripts
-
- 19 Nov, 2010 1 commit
-
-
Bjorn Munch authored
-
- 18 Nov, 2010 4 commits
-
-
unknown authored
-
Vasil Dimov authored
-
Vasil Dimov authored
-
Alexander Barkov authored
Problem: crash in Item_float constructor on DBUG_ASSERT due to not null-terminated string parameter. Fix: making Item_float::Item_float non-null-termintated parameter safe: - Using temporary buffer when generating error modified: @ mysql-test/r/xml.result @ mysql-test/t/xml.test @ sql/item.cc
-
- 17 Nov, 2010 2 commits
-
-
Bjorn Munch authored
Evaluation would start with the space and thus ignore the $ Added while() to skip past white space
-
Davi Arnaut authored
Use __builtin_stpcpy only if the system supports stpcpy. This is necessary as in some cases a call to stpcpy will be emitted if the built-in can not optimized. include/m_string.h: The expansion of stpcpy (in glibc) causes warnings if the return value of strmov is not being used. Since stpcpy is a GNU extension and the expansion ends up using a built-in provided by GCC, use the compiler provided built-in directly when possible. Nonetheless, the C library must have stpcpy as a call be emitted if the built-in can not optimized.
-
- 15 Nov, 2010 1 commit
-
-
Bjorn Munch authored
Results from query is sent for evaluation Break recursion by asking for ` to be ignored
-
- 14 Nov, 2010 1 commit
-
-
Bjorn Munch authored
-
- 11 Nov, 2010 6 commits
-
-
Marko Mäkelä authored
thr_local_create(): Initialize local->slot_no to ULINT_UNDEFINED. thr_local_validate(): Allow local->slot_no to be ULINT_UNDEFINED.
-
Tatiana A. Nurnberg authored
Bug#55794: ulonglong options of mysqld show wrong values. Port the few remaining system variables to the correct mechanism -- range-check in check-stage (and throw error or warning at that point as needed and depending on STRICTness), update in update stage. Fix some signedness errors when retrieving sysvar values for display. mysql-test/r/variables.result: Show that we throw warnings or errors depending on strictness even for "special" variables now. mysql-test/t/variables.test: Show that we throw warnings or errors depending on strictness even for "special" variables now. sql/item_func.cc: show sys_var_ulonglong_ptr and SHOW_LONGLONG type variables as unsigned. sql/set_var.cc: move range-checking from update stage to check stage for the remaining few sys-vars that broke the pattern sql/set_var.h: add check functions.
-
Vasil Dimov authored
Also delete dict_update_statistics() and rename dict_update_statistics_low() to dict_update_statistics() because the only thing that distinguished those two functions was the removed parameter.
-
Marko Mäkelä authored
thr_local_validate(), i_s_locks_row_validate(): New validate functions, used in UNIV_DEBUG code for checking the state of internal memory structures.
-
Marko Mäkelä authored
-
Tatiana A. Nurnberg authored
MySQL 5.1 server Server used to clip overly long user-names. This was presumably lost when code was made UTF8-clean. Now we emulate the behaviour for backward compatibility, but UTF8-ly correct. mysql-test/r/connect.result: Show that user-names that are too long get clipped now. mysql-test/t/connect.test: Show that user-names that are too long get clipped now. sql/sql_connect.cc: Clip user-name to 16 characters (not bytes). strings/CHARSET_INFO.txt: Clarify in docs.
-