mirror of
https://github.com/MariaDB/server.git
synced 2025-01-31 11:01:52 +01:00
7 commits
Author | SHA1 | Message | Date | |
---|---|---|---|---|
unknown
|
46ea874fb7 |
After merge fixes
Note: The following tests fails - fulltext (Sergei has promised to fix) - rpl_charset (Guilhem should fix) - rpl_timezone (Dimitray has promised to fix) Sanja needs to check out the calling of close_thread_tables() in sp_head.cc myisam/mi_check.c: After merge fix myisam/sort.c: After merge fix mysql-test/mysql-test-run.sh: Export master socket to mysqltest mysql-test/r/func_group.result: Make result repeatable mysql-test/r/mysqlbinlog.result: After merge fix mysql-test/r/ps_1general.result: After merge fix mysql-test/r/ps_2myisam.result: After merge fix mysql-test/r/ps_3innodb.result: After merge fix mysql-test/r/ps_4heap.result: After merge fix mysql-test/r/ps_5merge.result: After merge fix mysql-test/r/ps_6bdb.result: After merge fix mysql-test/r/rpl_flush_log_loop.result: After merge fix mysql-test/r/rpl_replicate_do.result: After merge fix mysql-test/r/rpl_temporary.result: After merge fix mysql-test/r/rpl_timezone.result: After merge fix Note that this test fails now (Dimitry has promised to fix this) mysql-test/r/rpl_user_variables.result: After merge fix mysql-test/r/select.result: After merge fix mysql-test/r/sp-error.result: After merge fix mysql-test/r/sp-security.result: After merge fix mysql-test/r/sp.result: After merge fix mysql-test/r/user_var.result: After merge fix mysql-test/r/variables.result: After merge fix mysql-test/t/alter_table.test: After merge fix mysql-test/t/derived.test: After merge fix mysql-test/t/func_group.test: Make result repeatable mysql-test/t/grant_cache.test: Use MASTER_MYSOCK instead of master.sock mysql-test/t/multi_update.test: Use MASTER_MYSOCK instead of master.sock mysql-test/t/rpl000015.test: Use MASTER_MYSOCK instead of master.sock mysql-test/t/rpl000017.test: Use MASTER_MYSOCK instead of master.sock mysql-test/t/rpl000018.test: Use MASTER_MYSOCK instead of master.sock mysql-test/t/rpl_charset.test: After merge fix mysql-test/t/rpl_heap.test: Use MASTER_MYSOCK instead of master.sock mysql-test/t/rpl_rotate_logs.test: Use MASTER_MYSOCK instead of master.sock mysql-test/t/sp-error.test: after merge fix mysql-test/t/sp-security.test: after merge fix mysql-test/t/user_var.test: after merge fix scripts/mysql_fix_privilege_tables.sh: This can now be exectued from the source distribution sql/handler.cc: Cleanup sql/handler.h: More debugging sql/item.h: Indentation fixes sql/item_cmpfunc.cc: After merge fixes sql/opt_range.cc: After merge fixes sql/opt_range.h: After merge fixes sql/sp.cc: After merge fixes sql/sp_head.cc: Remove closing of thread tables in a SP function as this caused a core dump. (Has to be fixed better) sql/sql_base.cc: More debugging sql/sql_handler.cc: After merge fixes (We have to call ha_index_or_rnd_end() before calling close_thread_table()) sql/sql_parse.cc: More debugging sql/sql_prepare.cc: After merge fixes sql/sql_select.cc: After merge fixes |
||
unknown
|
62554f812e |
This is the final commit for Worklog tasks:
* A more dynamic binlog format which allows small changes (1064) * Log session variables in Query_log_event (1063) It contains a few bugfixes (which I made when running the testsuite). I carefully updated the results of the testsuite (i.e. I checked for every one, if the difference between .reject and .result could be explained). Apparently mysql-test-run --manager is broken in 4.1 and 5.0 currently, so I could neither run the few tests which require --manager, nor check that they pass nor modify their .result. But for builds, we don't run with --manager. Apart from --manager, the full testsuite passes, with Valgrind too (no errors). I'm going to push in the next minutes. Remains: update the manual. Note: by chance I saw that (in 4.1, in 5.0) rpl_get_lock fails when run alone; this is normal at it makes assumptions on thread ids. I will fix this one day in 4.1. mysql-test/r/rpl000015.result: result update mysql-test/r/rpl_change_master.result: result update mysql-test/r/rpl_error_ignored_table.result: result update mysql-test/r/rpl_flush_log_loop.result: result update mysql-test/r/rpl_flush_tables.result: result update mysql-test/r/rpl_loaddata.result: result update mysql-test/r/rpl_loaddata_rule_m.result: result update mysql-test/r/rpl_loaddata_rule_s.result: result update mysql-test/r/rpl_log.result: result update mysql-test/r/rpl_log_pos.result: result update mysql-test/r/rpl_max_relay_size.result: result update mysql-test/r/rpl_relayrotate.result: result update mysql-test/r/rpl_replicate_do.result: result update mysql-test/r/rpl_reset_slave.result: result update mysql-test/r/rpl_rotate_logs.result: result update mysql-test/r/rpl_session_var.result: result update mysql-test/r/rpl_temporary.result: result update mysql-test/r/rpl_trunc_binlog.result: result update mysql-test/r/rpl_until.result: result update mysql-test/r/rpl_user_variables.result: result update mysql-test/t/rpl000010-slave.opt: need to wait 2 events, because now we receive a Format_desc on top of the Rotate, when replication starts. mysql-test/t/rpl000015.test: relay log information is not repeatable in general (if a reconnection happens because --sleep=10 for example), so we hide these columns. mysql-test/t/rpl_change_master.test: relay log information is not repeatable in general (if a reconnection happens because --sleep=10 for example), so we hide these columns. mysql-test/t/rpl_empty_master_crash.test: relay log information is not repeatable in general (if a reconnection happens because --sleep=10 for example), so we hide these columns. mysql-test/t/rpl_error_ignored_table.test: relay log information is not repeatable in general (if a reconnection happens because --sleep=10 for example), so we hide these columns. mysql-test/t/rpl_flush_log_loop.test: relay log information is not repeatable in general (if a reconnection happens because --sleep=10 for example), so we hide these columns. mysql-test/t/rpl_loaddata.test: position update mysql-test/t/rpl_loaddata_rule_m.test: position update mysql-test/t/rpl_loaddata_rule_s.test: position update mysql-test/t/rpl_log.test: position update mysql-test/t/rpl_log_pos.test: position update mysql-test/t/rpl_max_relay_size.test: relay log information is not repeatable in general (if a reconnection happens because --sleep=10 for example), so we hide these columns. mysql-test/t/rpl_openssl.test: relay log information is not repeatable in general (if a reconnection happens because --sleep=10 for example), so we hide these columns. mysql-test/t/rpl_redirect.test: relay log information is not repeatable in general (if a reconnection happens because --sleep=10 for example), so we hide these columns. mysql-test/t/rpl_relayrotate-slave.opt: better options for this test mysql-test/t/rpl_relayrotate.test: using max() is better for debugging (it shows at which place the slave SQL thread resumed) mysql-test/t/rpl_replicate_do.test: relay log information is not repeatable in general (if a reconnection happens because --sleep=10 for example), so we hide these columns. mysql-test/t/rpl_reset_slave.test: relay log information is not repeatable in general (if a reconnection happens because --sleep=10 for example), so we hide these columns. mysql-test/t/rpl_rotate_logs.test: relay log information is not repeatable in general (if a reconnection happens because --sleep=10 for example), so we hide these columns. mysql-test/t/rpl_session_var.test: 100 because password() is longer than 10 chars mysql-test/t/rpl_trunc_binlog.test: relay log information is not repeatable in general (if a reconnection happens because --sleep=10 for example), so we hide these columns. mysql-test/t/rpl_until.test: position update mysql-test/t/rpl_user_variables.test: position update sql/log.cc: Ensure that the Format_desc propagated on next relay logs does not trigger undue actions (like incrementing some positions or clearing some files). sql/log_event.cc: * When the slave SQL thread finds a Rotate/Format_desc/Stop in the middle of a transaction (then these were written by the slave itself to its relay log), it should not increment rli->group* variables, but only rli->event* ones. * When the slave SQL thread finds a Format_desc not to be ignored (not the same server id as the slave's), if it has log_pos==0 it must not trigger "unfinished transaction in master's binlog" (log_pos==0 is always a marker in the relay log to mean "this event was not at this place in the master's binlog": it's for fake Rotate events, and for Format_description events which the master had to send us for replication to start). * In the Query_log_event on disk, catalog is now terminated by '\0'. * thd->catalog must be set to 0 when some exec_event() terminate (otherwise double free). sql/slave.cc: * Fixes for a few bugs when ignoring events in the slave SQL thread: - do not decrement rli->slave_skip_counter if the event is an event related to the binlog or relay log itself (FORMAT_DESCRIPTION, ROTATE, STOP) because these events should never be skipped (or the slave will be confused). Usually the user wants to skip a query, not a Rotate... - when we (re)connect to the master, we must free description_event_for_queue (otherwise memory leak when we reconnect). * Changed a bit the code where we change description_event_for_queue, to make it look "safer". * Moved 'created=0' to log.cc where it is safer. * When the slave SQL thread finds a Rotate/Format_desc/Stop in the middle of a transaction (then these were written by the slave itself to its relay log), it should not increment rli->group* variables, but only rli->event* ones. sql/sql_class.h: a warning comment sql/sql_repl.cc: A mistake: I had passed a char* instead of char** |
||
unknown
|
031b6b5fbb |
fix for BUG#1331: "Unexistent user variable is not replicated".
When an update query is to be written to the binlog, and it reads unset user variables (example: INSERT INTO t VALUEs(@a) where @a does not exist), we create the variable like if it had been set with SET before, and we loop (i.e. we redo the steps of logging, now that the variable exists). mysql-test/r/rpl_user_variables.result: result update. mysql-test/t/rpl_user_variables.test: test to see if unset user variables are written to the binlog sql/item_func.cc: When an update query is to be written to the binlog, and it reads unset user variables (example: INSERT INTO t VALUEs(@a) where @a does not exist), we create the variable like if it had been set with SET before, and we loop (i.e. we redo the steps of logging, now that the variable exists). |
||
unknown
|
2901c3b8fa |
After merge fixes
Use server character set if --default-character-set is not used Added convert_string() for more efficient alloc+character-set convert of strings BitKeeper/deleted/.del-convert.result~a3b56e1db6f498e9: Delete: mysql-test/r/convert.result BitKeeper/deleted/.del-convert.test~f4ceb743194dfe72: Delete: mysql-test/t/convert.test BitKeeper/deleted/.del-make_win_src_distribution.old~5c9ebdc4a852b43b: Delete: scripts/make_win_src_distribution.old client/mysql.cc: Use server character set if --default-character-set is not used client/mysqltest.c: Code cleanup (merge identical code) More debug messages heap/hp_create.c: After merge fix include/m_ctype.h: After merge fix include/my_global.h: Remove size_str (we already have size_s) include/mysql_com.h: After merge fix libmysql/libmysql.c: After merge fix libmysqld/Makefile.am: After merge fix mysql-test/r/auto_increment.result: After merge fix mysql-test/r/create.result: After merge fix mysql-test/r/ctype_latin1_de.result: After merge fix mysql-test/r/distinct.result: After merge fix mysql-test/r/drop.result: After merge fix mysql-test/r/fulltext.result: After merge fix mysql-test/r/func_gconcat.result: After merge fix mysql-test/r/func_str.result: After merge fix mysql-test/r/func_test.result: After merge fix mysql-test/r/grant.result: After merge fix mysql-test/r/group_by.result: After merge fix mysql-test/r/handler.result: After merge fix mysql-test/r/heap.result: After merge fix mysql-test/r/heap_btree.result: After merge fix mysql-test/r/heap_hash.result: After merge fix mysql-test/r/innodb.result: After merge fix mysql-test/r/insert.result: After merge fix mysql-test/r/insert_select.result: After merge fix mysql-test/r/join_outer.result: After merge fix mysql-test/r/key.result: After merge fix mysql-test/r/key_cache.result: After merge fix mysql-test/r/loaddata.result: After merge fix mysql-test/r/myisam.result: After merge fix mysql-test/r/null.result: After merge fix mysql-test/r/null_key.result: After merge fix mysql-test/r/order_by.result: After merge fix mysql-test/r/rpl_do_grant.result: After merge fix mysql-test/r/rpl_error_ignored_table.result: After merge fix mysql-test/r/rpl_ignore_grant.result: After merge fix mysql-test/r/rpl_loaddata.result: After merge fix mysql-test/r/rpl_log.result: After merge fix mysql-test/r/rpl_log_pos.result: After merge fix mysql-test/r/rpl_max_relay_size.result: After merge fix mysql-test/r/rpl_replicate_do.result: After merge fix mysql-test/r/rpl_reset_slave.result: After merge fix mysql-test/r/rpl_rotate_logs.result: After merge fix mysql-test/r/rpl_user_variables.result: After merge fix mysql-test/r/select.result: After merge fix mysql-test/r/select_safe.result: After merge fix mysql-test/r/subselect.result: After merge fix mysql-test/r/type_blob.result: After merge fix mysql-test/r/type_decimal.result: After merge fix mysql-test/r/type_float.result: After merge fix mysql-test/r/type_ranges.result: After merge fix mysql-test/r/type_time.result: After merge fix mysql-test/r/type_uint.result: After merge fix mysql-test/r/union.result: After merge fix mysql-test/r/warnings.result: After merge fix mysql-test/t/auto_increment.test: After merge fix mysql-test/t/case.test: After merge fix mysql-test/t/ctype_collate.test: After merge fix mysql-test/t/ctype_latin1_de.test: After merge fix mysql-test/t/drop.test: After merge fix mysql-test/t/func_in.test: After merge fix mysql-test/t/func_set.test: After merge fix mysql-test/t/func_str.test: After merge fix mysql-test/t/func_test.test: After merge fix mysql-test/t/grant.test: After merge fix mysql-test/t/group_by.test: After merge fix mysql-test/t/handler.test: After merge fix mysql-test/t/heap.test: After merge fix mysql-test/t/heap_btree.test: After merge fix mysql-test/t/heap_hash.test: After merge fix mysql-test/t/innodb.test: After merge fix mysql-test/t/insert_select.test: After merge fix mysql-test/t/key.test: After merge fix mysql-test/t/key_cache.test: After merge fix mysql-test/t/lock_tables_lost_commit-master.opt: After merge fix mysql-test/t/lock_tables_lost_commit.test: After merge fix mysql-test/t/myisam.test: After merge fix mysql-test/t/row.test: After merge fix mysql-test/t/subselect.test: After merge fix mysql-test/t/type_decimal.test: After merge fix mysql-test/t/type_ranges.test: After merge fix mysql-test/t/type_uint.test: After merge fix mysql-test/t/variables.test: After merge fix mysql-test/t/warnings.test: After merge fix scripts/make_win_src_distribution.sh: after merge fixes sql-common/client.c: After merge fix Change my_connect() to use poll() If character set is not given, use servers character set. sql/field.cc: After merge fix Don't give warnings when storing data in fields in optimizer. sql/ha_myisammrg.h: After merge fix sql/log.cc: After merge fix sql/log_event.cc: After merge fix sql/mysqld.cc: After merge fix sql/opt_range.cc: After merge fix sql/set_var.cc: Code cleanup Fixed wrong usage of base_names (like medium.key_buffer) that caused core dumps sql/set_var.h: Fixed wrong usage of base_names (like medium.key_buffer) that caused core dumps sql/slave.cc: After merge fix sql/sql_acl.cc: After merge fix Code cleanup sql/sql_class.cc: Added convert_string() for more efficient alloc+character-set convert of strings Add cached flags to avoid calling mysql_charset_same() during parsing. sql/sql_class.h: Added convert_string() for more efficient alloc+character-set convert of strings Add cached flags to avoid calling mysql_charset_same() during parsing. sql/sql_handler.cc: After merge fix sql/sql_lex.h: After merge fix sql/sql_parse.cc: Optimize and fix memory reference errors reported by valgrind sql/sql_repl.cc: After merge fix sql/sql_yacc.yy: After merge fix Avoid calling mysql_charset_same() when parsing identifiers strings/ctype-latin1.c: Port latin_de conversion code from 4.0 |
||
unknown
|
4a07a2b1db |
Test's result update because std_data/words.dat has been lengthened by 500 bytes.
Increased some tests' robustness a bit : - Added RESET MASTER to all tests who do SHOW BINLOG EVENTS, to make them independent from previous tests. - Added save_master_pos to these tests to wait for the slave to start before purging its binary logs. mysql-test/r/rpl_log.result: Updated SHOW BINLOG EVENTS's positions as Monty lengthened std_data/words.dat by 500 bytes. mysql-test/r/rpl_temporary.result: Added RESET MASTER to make positions shown by SHOW BINLOG EVENTS independent of any previous test. mysql-test/r/rpl_user_variables.result: Added RESET MASTER to make positions shown by SHOW BINLOG EVENTS independent of any previous test. mysql-test/t/rpl_log.test: Added save_master_pos to wait for the slave to have started before purging its binary logs. Otherwise, we could purge before the slave finishes starting, and then the slave could log events implicitly provoked by previous tests. mysql-test/t/rpl_temporary.test: Added RESET MASTER to make positions shown by SHOW BINLOG EVENTS independent of any previous test. mysql-test/t/rpl_user_variables.test: Added RESET MASTER to make positions shown by SHOW BINLOG EVENTS independent of any previous test. BitKeeper/etc/logging_ok: Logging to logging@openlogging.org accepted |
||
unknown
|
5a12dff30b |
Fixed problem when connecting to user without a password.
Fixed problem with LIKE and BINARY BitKeeper/etc/ignore: added scripts/fill_help_tables client/mysqltest.c: Better error messages libmysql/libmysql.c: Simple code cleanup Simplified connect() and change_user() by using sub function libmysqld/lib_sql.cc: Ensure that new fields in MYSQL_FIELD structure is used mysql-test/r/rpl_user_variables.result: Cleaned up test mysql-test/r/type_blob.result: New test mysql-test/t/rpl_user_variables.test: Cleaned up test mysql-test/t/type_blob.test: New test sql/item.cc: Fixed that Item_ref returns the right character set sql/item_cmpfunc.cc: Fixed problem with LIKE and BINARY sql/item_func.cc: Don't store end ASCII(0) for string user variables (Made some other code easier) sql/log_event.cc: Don't store end ASCII(0) for string user variables. Fixed comment style Some optimizations sql/log_event.h: Optimized type sql/mini_client.cc: Indentation changes sql/mysql_priv.h: Made is_update_query extern sql/protocol.cc: Simple code cleanup sql/sql_acl.cc: Code cleanup Fixed problem when connecting to user without a password. sql/sql_lex.h: Fixed problem with uninitialized memory sql/sql_parse.cc: Fixed problem with user without passwords Fixed some connect problems. sql/time.cc: removed reference to uninitialized memory |
||
unknown
|
6828a4c0a1 |
'Replicate user variables' task
include/my_sys.h: Addet reset_dinamic BitKeeper/etc/logging_ok: Logging to logging@openlogging.org accepted |