- 21 Nov, 2009 1 commit
-
-
He Zhenxing authored
This is the non-ndb part of the patch. The return value of mysql_bin_log.write was ignored by most callers, which may lead to inconsistent on master and slave if the transaction was committed while the binlog was not correctly written. If my_error() is call in mysql_bin_log.write, this could also lead to assertion issue if my_ok() or my_error() is called after. This fixed the problem by let the caller to check and handle the return value of mysql_bin_log.write. This patch only adresses the simple cases. mysql-test/include/binlog_inject_error.inc: inject binlog write error when doing a query mysql-test/suite/binlog/t/binlog_write_error.test: Simple test case to check if proper error is reported when injecting binlog write errors. sql/events.cc: check return value of mysql_bin_log.write sql/log.cc: check return value of mysql_bin_log.write sql/log_event.cc: check return value of mysql_bin_log.write sql/log_event_old.cc: check return value of mysql_bin_log.write sql/mysql_priv.h: Change write_bin_log to return int instead of void sql/rpl_injector.cc: check return value of writing binlog sql/sp.cc: check return value of writing binlog sql/sp_head.cc: return 1 if writing binlog failed sql/sql_acl.cc: check return value of writing binlog sql/sql_base.cc: check return value of writing binlog sql/sql_class.h: Change binlog_show_create_table to return int sql/sql_db.cc: Change write_to_binlog to return int check return value of writing binlog sql/sql_delete.cc: check return value of writing binlog sql/sql_insert.cc: check return value of writing binlog sql/sql_load.cc: check return value of writing binlog sql/sql_parse.cc: check return value of writing binlog sql/sql_partition.cc: check return value of writing binlog sql/sql_rename.cc: check return value of writing binlog sql/sql_repl.cc: check return value of writing binlog sql/sql_table.cc: Change write_bin_log to return int, and return 1 if there was error writing binlog sql/sql_tablespace.cc: check return value of writing binlog sql/sql_trigger.cc: check return value of writing binlog sql/sql_udf.cc: check return value of writing binlog sql/sql_update.cc: check return value of writing binlog sql/sql_view.cc: check return value of writing binlog
-
- 18 Nov, 2009 1 commit
-
-
Guilhem Bichot authored
Backport of the fix for BUG#40368 "mysqld_safe not honouring underscore same as dash on server options" from 6.0 (revision-id:guilhem@mysql.com-20090505113602-l12kxupeatve18dh). Such bug led "mysqld_safe --core_file_size=#" to not work because mysqld_safe wouldn't recognize that "ulimit -c" is needed; only --core-file-size=# worked. Same for --open_files_limit and other options with _ where mysqld_safe needs to do something more than passing to mysqld. Original fix by Erik Ljungstrom erik at ibiblio dot org ; slightly modified here. Tested on all internally accessible Unix.
-
- 17 Nov, 2009 3 commits
-
-
Alexey Botchkov authored
-
Alexey Botchkov authored
-
Alexey Botchkov authored
-
- 15 Nov, 2009 1 commit
-
-
Alexey Botchkov authored
-
- 12 Nov, 2009 10 commits
-
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-
- 11 Nov, 2009 5 commits
-
-
Marc Alff authored
Backport to 5.5: adjusted the test outputs in the funcs_1 test suite
-
Alexey Botchkov authored
-
Philip Stoev authored
-
Alexey Botchkov authored
-
Alexey Botchkov authored
Although the MY_SYNC_DIR flag supported in my_create(), my_delete(), my_rename() and my_symlink(), this feature is not used in the mysql code now. So technically we can declare the MY_SYNC_DIR as 0, but I decided to assign a new value for it as it's probably safer and worths nothing. per-file comments: include/my_sys.h Bug#47126 equal flag values causing unexpected behaviour assign unique value for the MY_SYNC_DIR
-
- 10 Nov, 2009 5 commits
-
-
Alexey Botchkov authored
In fact this crashes in normal (not embedded) run also. The problem is in the memory mapping. Handling the ha_myisammrg::extra(MMAP) the MERGE engine tries to mmap all the tables it unites. Though some can be empty and then in the mi_dynmap_file() we call the my_mmap(0). Normally this call returns MAP_FAILED, but not on FreeBSD. There it returns like a 'normal' value, and after the consequitive munmap systems gets unstable and crashes on some system call later. per-file comments: storage/myisam/mi_dynrec.c Bug #47139 Test "merge" crashes in "embedded" run don't try to mmap zero-length area, just return at once.
-
Alexey Botchkov authored
The additional patch. That 'loadxml.test' failure was actually about our testing system, not the code. Firstly we need a new mysqltest command, wich i called 'send_eval'. So the expression can be evaluated, then started in a parallel thread. We only have separane 'send' and 'eval' commands at the moment. Then we need to add the waiting code after the 'KILL' to our test, so the thread will be killed before the test goes further. The present 'reap' command doesn't handle the killed threads well. per-file comments: client/mysqltest.cc Bug#42520 killing load .. infile Assertion failed: ! is_set(), file .\sql_error.cc, line 8 The 'send_eval' command implemented. mysql-test/r/loadxml.result Bug#42520 killing load .. infile Assertion failed: ! is_set(), file .\sql_error.cc, line 8 test result updated. mysql-test/t/loadxml.test Bug#42520 killing load .. infile Assertion failed: ! is_set(), file .\sql_error.cc, line 8 test case added.
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-
- 09 Nov, 2009 8 commits
-
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-
Alexander Barkov authored
Backporting from 6.0.
-
Alexander Barkov authored
# Bug#24690 Stored functions: RETURNing UTF8 strings # do not return UTF8_UNICODE_CI collation # # Bug#17903: cast to char results in binary # Regression. The character set was not being properly initialized # for CAST() with a type like CHAR(2) BINARY, which resulted in # incorrect results or even a server crash. # Backporting from mysql-6.0-codebase. mysql-test/r/sp-ucs2.result: mysql-test/t/sp-ucs2.test: Adding tests sql/mysql_priv.h: Adding prototype sql/sp.cc Remember COLLATE clause for non-default collations sql/sql_parse.cc Adding a new helper function sql/sql_yacc.yy - Allow "CHARACTER SET cs COLLATE cl" in SP parameters, RETURNS, DECLARE - Minor reorganization for "ASCII" and "UNICODE" related rules, to make the code more readable, also to allow these aliases: * "VARCHAR(10) ASCII BINARY" -> CHARACTER SET latin1 COLLATE latin1_bin * "VARCHAR(10) BINARY ASCII" -> CHARACTER SET latin1 COLLATE latin1_bin * "VARCHAR(10) UNICODE BINARY" -> CHARACTER SET ucs2 COLLATE ucs2_bin * "VARCHAR(10) BINARY UNICODE" -> CHARACTER SET ucs2 COLLATE ucs2_bin Previously these four aliases returned the error "This version of MySQL does not yet support return value collation". Note: This patch allows "VARCHAR(10) CHARACTER SET cs COLLATE cl" and the above four aliases. "VARCHAR(10) COLLATE cl" is still not allowed i.e. when COLLATE is given without CHARACTER SET. If we want to support this, we need an architecture decision which character set to use by default.
-
Alexander Barkov authored
-
Alexander Barkov authored
-
- 06 Nov, 2009 6 commits
-
-
Mikael Ronstrom authored
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-