- 10 Jan, 2007 1 commit
-
-
unknown authored
This patch is an additional code change to the get_str_len_and_pointer method in log_events.cc. This change is necessary to correct a problem encountered on 64-bit SUSE where the auto_increment_* variables were being overwritten. The change corrects a cast mismatch which caused the problem. sql/log_event.cc: BUG#22645 - LC_TIME_NAMES: Statement not replicated This patch is an additional code change to the get_str_len_and_pointer, copy_str_and_move methods and the Query_leg_event constructor to correct a type mismatch encountered during testing on SUSE 64-bit. The patch changes the data type of the buffer variables was changed to a new typedef defined in the Log_event class. The new type is: typedef unsigned char Byte; The variables changed include: pos, start, end, and data_buf sql/log_event.h: This patch adds a new type definition to the Log_event class. The new type is typedef unsigned char Byte. It is used in place of the uchar and usigned char definitions in the Query_log_event constructor to eliminate type conversion problems encountere on SUSE 64-bit.
-
- 03 Jan, 2007 1 commit
-
-
unknown authored
On loaded boxes it is possible a INSERT with sleep of 1.5s to take more time. mysql-test/r/events_logs_tests.result: update result file mysql-test/t/events_logs_tests.test: fix test case to be proof of loaded boxes. 20 seconds is reasonable time not to get a sleep of 1.5s to sleep for 20s
-
- 29 Dec, 2006 4 commits
- 22 Dec, 2006 4 commits
-
-
unknown authored
into romeo.(none):/home/bkroot/mysql-5.1-new-rpl
-
unknown authored
Post-merge fixes. sql/log.cc: Removing HAVE_ROW_BASED_REPLICATION from file.
-
unknown authored
-
unknown authored
into mysql.com:/usr/home/bar/mysql-5.1.b17642 mysql-test/r/mysqlbinlog.result: Auto merged mysql-test/t/mysqlbinlog.test: After merge fix
-
- 21 Dec, 2006 2 commits
-
-
unknown authored
into romeo.(none):/home/bk/merge-b22864-myql-5.1-new-rpl sql/log.h: Auto merged sql/log_event.h: Auto merged sql/mysql_priv.h: Auto merged sql/sql_class.h: Auto merged sql/log.cc: Merge with mysql-5.1-new-rpl sql/slave.cc: Merge with mysql-5.1-new-rpl sql/sql_insert.cc: Merge with mysql-5.1-new-rpl
-
unknown authored
from log): When row-based logging is used, the CREATE-SELECT is written as two parts: as a CREATE TABLE statement and as the rows for the table. For both transactional and non-transactional tables, the CREATE TABLE statement was written to the transaction cache, as were the rows, and on statement end, the entire transaction cache was written to the binary log if the table was non-transactional. For transactional tables, the events were kept in the transaction cache until end of transaction (or statement that were not part of a transaction). For the case when AUTOCOMMIT=0 and we are creating a transactional table using a create select, we would then keep the CREATE TABLE statement and the rows for the CREATE-SELECT, while executing the following statements. On a rollback, the transaction cache would then be cleared, which would also remove the CREATE TABLE statement. Hence no table would be created on the slave, while there is an empty table on the master. This relates to BUG#22865 where the table being created exists on the master, but not on the slave during insertion of rows into the newly created table. This occurs since the CREATE TABLE statement were still in the transaction cache until the statement finished executing, and possibly longer if the table was transactional. This patch changes the behaviour of the CREATE-SELECT statement by adding an implicit commit at the end of the statement when creating non-temporary tables. Hence, non-temporary tables will be written to the binary log on completion, and in the even of AUTOCOMMIT=0, a new transaction will be started. Temporary tables do not commit an ongoing transaction: neither as a pre- not a post-commit. The events for both transactional and non-transactional tables are saved in the transaction cache, and written to the binary log at end of the statement. mysql-test/r/rpl_row_create_table.result: Result change mysql-test/t/rpl_row_create_table.test: Requring InnoDB for slave as well. Adding test CREATE-SELECT that is rolled back explicitly. Changing binlog positions. sql/log.cc: Adding helper class to handle lock/unlock of mutexes using RAII. Factoring out code into write_cache() function to transaction cache to binary log. Adding function THD::binlog_flush_transaction_cache() to flush the transaction cache to the binary log file. Factoring out code into binlog_set_stmt_begin() to set the beginning of statement savepoint. Clearing before statement point when transaction cache is truncated so that these points are out of range. sql/log.h: Adding method MYSQL_BIN_LOG::write_cache() sql/log_event.h: Replicating OPTION_NOT_AUTOCOMMIT flag (see changeset comment) sql/mysql_priv.h: Although left-shifting signed integer values is well-defined, it has potential for strange errors. Using unsigned long long instead of signed long long since this is the type of the options flags. sql/slave.cc: Adding printout of transaction-critical thread flags. sql/sql_class.h: Adding function THD::binlog_flush_transaction_cache() Adding function THD::binlog_set_stmt_begin() sql/sql_insert.cc: Adding code to cache events for a CREATE-SELECT statement. Disabling binlog for SBR (but not RBR) when sending error for select part of CREATE-SELECT statement. Adding implicit commit at end of statement for non-temporary tables. mysql-test/t/rpl_row_create_table-slave.opt: New BitKeeper file ``mysql-test/t/rpl_row_create_table-slave.opt''
-
- 14 Dec, 2006 5 commits
-
-
unknown authored
-
unknown authored
into mysql.com:/usr/home/bar/mysql-5.1.b22645 mysql-test/t/mysqlbinlog.test: Auto merged sql/log_event.cc: Auto merged sql/log_event.h: Auto merged mysql-test/t/disabled.def: SCCS merged
-
unknown authored
mysql-test/t/mysqlbinlog.test: After merge fix sql/log_event.cc: Fixing comment, thanks to Andrei for suggestion
-
unknown authored
into mysql.com:/usr/home/bar/mysql-5.0.b22645 mysql-test/t/disabled.def: Auto merged sql/log_event.cc: Auto merged sql/log_event.h: Auto merged mysql-test/r/mysqlbinlog.result: After merge fix mysql-test/t/mysqlbinlog.test: After merge fix
-
unknown authored
Problem: mysqlbinlog_base64 failed sporadically. Reason: Missing "flush logs" before running $MYSQL_BINLOG, which could start dumping the log file before server has finished writting into it. Fix: - implementing --force-if-open option to "mysqlbinlog" - adding --disable-force-if-open to make $MYSQL_BINLOG fail on non-closed log files, to garantee that nobody will forget "flush logs" in the future. - adding "flush logs" into all affected tests. client/mysqlbinlog.cc: Implementing --force-if-open option with TRUE by default mysql-test/mysql-test-run.pl: Using --disable-force-if-open for all tests to avoid sporadic test failures because of running "mysqlbinlog" on a non-flushed binlog files. mysql-test/r/binlog_row_mix_innodb_myisam.result: FLush log before running dumping. mysql-test/r/binlog_stm_mix_innodb_myisam.result: FLush log before running dumping. mysql-test/r/mysqlbinlog.result: FLush log before running dumping. mysql-test/r/mysqlbinlog2.result: FLush log before running dumping. mysql-test/r/mysqlbinlog_base64.result: FLush log before running dumping. mysql-test/r/user_var-binlog.result: FLush log before running dumping. mysql-test/t/binlog_row_mix_innodb_myisam.test: FLush log before running dumping. mysql-test/t/binlog_stm_mix_innodb_myisam.test: FLush log before running dumping. mysql-test/t/mysqlbinlog.test: FLush log before running dumping. Adding new tests: - checking that $MYSQL_BINLOG returns an error on a non-closed binlog file because of --disable-force-if-open - checking that it does not return an error with --force-if-open mysql-test/t/mysqlbinlog2.test: FLush log before running dumping. mysql-test/t/mysqlbinlog_base64.test: FLush log before running dumping. mysql-test/t/user_var-binlog.test: FLush log before running dumping.
-
- 11 Dec, 2006 5 commits
- 08 Dec, 2006 14 commits
-
-
unknown authored
into mysql.com:/home/bk/MERGE/mysql-5.1-merge client/mysqlbinlog.cc: Auto merged client/mysqldump.c: Auto merged mysql-test/r/mysqldump.result: Auto merged mysql-test/r/rpl_timezone.result: Auto merged mysql-test/t/disabled.def: Auto merged mysql-test/t/mysqldump.test: Auto merged mysys/my_thr_init.c: Auto merged sql/item_timefunc.cc: Auto merged sql/log.cc: Auto merged sql/log_event.cc: Auto merged sql/mysql_priv.h: Auto merged sql/set_var.cc: Auto merged sql/sp_head.cc: Auto merged sql/sql_acl.cc: Auto merged sql/sql_parse.cc: Auto merged include/my_pthread.h: Manual merge
-
unknown authored
into mysql.com:/home/bk/MERGE/mysql-5.0-merge sql/item_timefunc.cc: Auto merged sql/set_var.cc: Auto merged
-
unknown authored
into mysql.com:/home/bk/MERGE/mysql-5.1-merge client/mysqlbinlog.cc: Auto merged client/mysqldump.c: Auto merged config/ac-macros/ha_ndbcluster.m4: Auto merged configure.in: Auto merged include/my_global.h: Auto merged mysql-test/r/mysqldump.result: Auto merged mysql-test/r/rpl_timezone.result: Auto merged mysql-test/t/disabled.def: Auto merged sql/handler.cc: Auto merged sql/item_create.cc: Auto merged sql/item_timefunc.cc: Auto merged sql/log.cc: Auto merged sql/log.h: Auto merged sql/log_event.h: Auto merged sql/mysql_priv.h: Auto merged sql/mysqld.cc: Auto merged sql/rpl_injector.h: Auto merged sql/set_var.cc: Auto merged sql/sp_head.cc: Auto merged sql/sql_acl.cc: Auto merged sql/sql_base.cc: Auto merged sql/sql_class.cc: Auto merged sql/sql_class.h: Auto merged sql/sql_insert.cc: Auto merged sql/sql_lex.cc: Auto merged sql/sql_lex.h: Auto merged sql/sql_parse.cc: Auto merged sql/sql_view.cc: Auto merged sql/table.cc: Auto merged mysql-test/t/mysqldump.test: Manual merge sql/log_event.cc: manual merge
-
unknown authored
into mysql.com:/home/bk/MERGE/mysql-5.0-merge client/mysqldump.c: Auto merged include/my_pthread.h: Auto merged mysql-test/r/mysqldump.result: Auto merged mysql-test/r/rpl_timezone.result: Auto merged mysql-test/t/disabled.def: Auto merged mysql-test/t/mysqldump.test: Auto merged mysys/my_thr_init.c: Auto merged sql/item_timefunc.cc: Auto merged sql/log.cc: Auto merged sql/mysql_priv.h: Auto merged sql/set_var.cc: Auto merged sql/sp_head.cc: Auto merged sql/sql_acl.cc: Auto merged sql/sql_parse.cc: Auto merged
-
unknown authored
into mysql.com:/home/bk/MERGE/mysql-4.1-merge sql/item_timefunc.cc: Auto merged sql/set_var.cc: Auto merged
-
unknown authored
include/my_pthread.h: Fixed missing \ in #if directive.
-
unknown authored
into quant.(none):/ext/mysql/bk/mysql-5.0-bug24507 sql/sql_acl.cc: Auto merged
-
unknown authored
into mysql.com:/usr/home/bar/mysql-5.1.b20396 mysql-test/r/rpl_do_grant.result: Auto merged mysql-test/t/rpl_do_grant.test: Auto merged sql/sql_acl.cc: Auto merged
-
unknown authored
into mysql.com:/usr/home/bar/mysql-5.0.b24158
-
unknown authored
-
unknown authored
into quant.(none):/ext/mysql/bk/mysql-5.0-bug24507 client/mysqlbinlog.cc: Auto merged client/mysqldump.c: Auto merged mysql-test/t/disabled.def: Auto merged sql/item_timefunc.cc: Auto merged sql/log_event.cc: Auto merged sql/mysql_priv.h: Auto merged sql/sql_parse.cc: Auto merged
-
unknown authored
The problem was located to lie inside current NPTL pthread_exit() implementation. Race conditions in this code can lead to segmentation fault. Hovewer, this can happen only in a race between first thread calling pthread_exit() and other threads. Workaround implemented in this patch spawns a dummy thread, which exits immediately, during thread lib initialization. This will exclude segment violations when further threads exit. include/my_pthread.h: define macro NPTL_PTHREAD_EXIT_BUG which controls whether workaround in my_thread_global_init() is included or not. mysys/my_thr_init.c: Spawn a dummy thread in my_thread_global_init() to initialize pthread lib internal variables.
-
unknown authored
client/mysqlbinlog.cc: Auto merged mysql-test/r/user_var-binlog.result: Auto merged mysql-test/t/mysqlbinlog.test: Auto merged BitKeeper/deleted/.del-ctype_ucs_binlog.result~280d136b1a0bcf17: Auto merged mysql-test/r/binlog_stm_mix_innodb_myisam.result: Auto merged mysql-test/r/rpl_stm_charset.result: Auto merged mysql-test/extra/binlog_tests/mix_innodb_myisam_binlog.test: after merge fix.
-
unknown authored
into mysql.com:/usr/home/bar/mysql-5.0.b20396
-
- 07 Dec, 2006 4 commits
-
-
unknown authored
-
unknown authored
into suse.vabb.com:/home/Chuck/development/mysql-5.1_WL_3618 sql/log.cc: Auto merged sql/mysql_priv.h: Auto merged sql/set_var.cc: Auto merged sql/set_var.h: Auto merged sql/table.cc: Auto merged
-
unknown authored
Please see worklog for details on files changed. BitKeeper/deleted/.del-have_row_based.require: Delete: mysql-test/r/have_row_based.require BitKeeper/deleted/.del-not_row_based.require: Delete: mysql-test/r/not_row_based.require BitKeeper/deleted/.del-have_row_based.inc: Delete: mysql-test/include/have_row_based.inc BitKeeper/deleted/.del-not_row_based.inc: Delete: mysql-test/include/not_row_based.inc BitKeeper/deleted/.del-replication.m4: Delete: config/ac-macros/replication.m4
-
unknown authored
into example.com:/work/mysql-5.1-maint
-