3839 Martin Zaun 2012-03-22 [merge]
merge
renamed:
mysql-test/suite/rpl/t/rpl_skip_ddl_errors_cli.cnf => mysql-test/suite/rpl/t/rpl_skip_ddl_errors_cli-slave.opt
modified:
mysql-test/suite/rpl/r/rpl_skip_ddl_errors_cli.result
mysql-test/suite/rpl/t/rpl_skip_ddl_errors_cli.test
mysql-test/suite/rpl/t/rpl_skip_ddl_errors_cli-slave.opt
3838 Nuno Carvalho 2012-03-22
BUG#13799489: ROWS_QUERY_LOG_EVENTS CORRUPTED IF QUERY LONGER THAN 255 BYTES
Problem:
In Rows_query_log_events, the length of the query is stored using
only one byte, length is stored on the first index of the stored char
array and the complete query on the following indexes.
When the query was read its length was set against the stored length
on the first position, what made queries longer than 255 truncated.
Solution:
1. Change Rows_query_log_event::Rows_query_log_event(...) so that it
ignores the length byte and uses the full length of the event.
2. In log_event.cc, rename functions:
- read_str -> read_str_at_most_255_bytes;
- write_str -> write_str_at_most_255_bytes.
Just to reduce the risk of future bugs.
added:
mysql-test/suite/binlog/r/binlog_row_query_log_events.result
mysql-test/suite/binlog/t/binlog_row_query_log_events.test
modified:
sql/log_event.cc
=== modified file 'mysql-test/suite/rpl/r/rpl_skip_ddl_errors_cli.result'
--- a/mysql-test/suite/rpl/r/rpl_skip_ddl_errors_cli.result 2012-03-22 06:25:38 +0000
+++ b/mysql-test/suite/rpl/r/rpl_skip_ddl_errors_cli.result 2012-03-22 18:32:52 +0000
@@ -1,5 +1,11 @@
+include/master-slave.inc
+Warnings:
+Note 1756 Sending passwords in plain text without SSL/TLS is extremely insecure.
+Note 1757 Storing MySQL user name or password information in the master.info repository is not secure and is therefore not recommended. Please see the MySQL Manual for more about this issue and possible alternatives.
+[connection master]
Show the effect of the server command line option slave-skip-errors
being passed the alias ignore_ddl_errors and a numeric error code
SHOW VARIABLES LIKE 'slave_skip_errors';
Variable_name Value
slave_skip_errors 1003,1007,1008,1050,1051,1054,1060,1061,1068,1091,1146
+include/rpl_end.inc
=== renamed file 'mysql-test/suite/rpl/t/rpl_skip_ddl_errors_cli.cnf' => 'mysql-test/suite/rpl/t/rpl_skip_ddl_errors_cli-slave.opt'
--- a/mysql-test/suite/rpl/t/rpl_skip_ddl_errors_cli.cnf 2012-03-22 06:25:38 +0000
+++ b/mysql-test/suite/rpl/t/rpl_skip_ddl_errors_cli-slave.opt 2012-03-22 18:32:52 +0000
@@ -1,7 +1 @@
-!include include/default_mysqld.cnf
-
-[mysqld]
-# expect combined error codes
-slave-skip-errors=ddl_exist_errors,1003
-
-[mysqld.1.1]
+--slave-skip-errors=ddl_exist_errors,1003
=== modified file 'mysql-test/suite/rpl/t/rpl_skip_ddl_errors_cli.test'
--- a/mysql-test/suite/rpl/t/rpl_skip_ddl_errors_cli.test 2012-03-22 06:25:38 +0000
+++ b/mysql-test/suite/rpl/t/rpl_skip_ddl_errors_cli.test 2012-03-22 18:32:52 +0000
@@ -1,3 +1,9 @@
+--source include/master-slave.inc
+--source include/have_binlog_format_mixed.inc
+
+--connection slave
--echo Show the effect of the server command line option slave-skip-errors
--echo being passed the alias ignore_ddl_errors and a numeric error code
SHOW VARIABLES LIKE 'slave_skip_errors';
+
+--source include/rpl_end.inc
No bundle (reason: useless for push emails).
| Thread |
|---|
| • bzr push into mysql-trunk branch (martin.zaun:3838 to 3839) | Martin Zaun | 22 Mar |