3860 Serge Kozlov 2012-05-22
WL#5223. Test case for BGC options
modified:
mysql-test/suite/rpl/r/rpl_binlog_gcommit_options.result
mysql-test/suite/rpl/t/rpl_binlog_gcommit_options.test
3859 Serge Kozlov 2012-05-22
WL#5223. Test case for BGC options
added:
mysql-test/suite/rpl/r/rpl_binlog_gcommit_options.result
mysql-test/suite/rpl/t/rpl_binlog_gcommit_options-master.opt
mysql-test/suite/rpl/t/rpl_binlog_gcommit_options.test
3858 Alfranio Correia 2012-05-21
BUG#14094591 - SERVER CRASHED WITH --BINLOG-MAX-FLUSH-QUEUE-TIME=1
If a timeout was set, wait_queue might never be updated thus
leading to an assertion failure, i.e. BUG_ASSERT(queue).
To fix the problem, we make sure that wait_queue is never
null.
modified:
sql/binlog.cc
=== added file 'mysql-test/suite/rpl/r/rpl_binlog_gcommit_options.result'
--- a/mysql-test/suite/rpl/r/rpl_binlog_gcommit_options.result 1970-01-01 00:00:00 +0000
+++ b/mysql-test/suite/rpl/r/rpl_binlog_gcommit_options.result 2012-05-22 11:37:37 +0000
@@ -0,0 +1,20 @@
+include/master-slave.inc
+Warnings:
+Note #### Sending passwords in plain text without SSL/TLS is extremely insecure.
+Note #### 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]
+# Create table
+# Create connections
+# Insert rows
+# Master results
+SELECT COUNT(a) FROM t;
+COUNT(a)
+200
+# Slave results
+SELECT COUNT(a) FROM t;
+COUNT(a)
+200
+# Clean up
+DROP TABLE t;
+include/stop_slave.inc
+# End of tests
=== added file 'mysql-test/suite/rpl/t/rpl_binlog_gcommit_options-master.opt'
--- a/mysql-test/suite/rpl/t/rpl_binlog_gcommit_options-master.opt 1970-01-01 00:00:00 +0000
+++ b/mysql-test/suite/rpl/t/rpl_binlog_gcommit_options-master.opt 2012-05-22 11:35:49 +0000
@@ -0,0 +1 @@
+--binlog-max-flush-queue-time=1 --skip-binlog-order-commits
=== added file 'mysql-test/suite/rpl/t/rpl_binlog_gcommit_options.test'
--- a/mysql-test/suite/rpl/t/rpl_binlog_gcommit_options.test 1970-01-01 00:00:00 +0000
+++ b/mysql-test/suite/rpl/t/rpl_binlog_gcommit_options.test 2012-05-22 11:37:37 +0000
@@ -0,0 +1,60 @@
+############################################################
+# Purpose: WL#5223. Testing BGC options
+# Author: Serge Kozlov <serge.kozlov@stripped>
+# Purpose: Execute server code related to BGC options.
+# We do not test here the functionality of new
+# options because of it requires a complex
+# test with debug-sync and just make sure
+# that there is no crash/assertion when
+# that code executed.
+############################################################
+source include/have_innodb.inc;
+source include/have_log_bin.inc;
+source include/master-slave.inc;
+
+# Settings
+let $loop_counter= 100;
+
+--disable_query_log
+# Create table
+echo # Create table;
+CREATE TABLE t (a INT NOT NULL, b VARCHAR(200), c TEXT, d DATETIME NOT NULL, e BIGINT NOT NULL, KEY(d,e)) ENGINE=InnoDB;
+
+# Create connections
+echo # Create connections;
+connect(conn_1,localhost,root,,);
+connect(conn_2,localhost,root,,);
+
+# Main test
+echo # Insert rows;
+disable_query_log;
+disable_result_log;
+while ($loop_counter) {
+ connection conn_1;
+ send INSERT INTO t VALUES (1, '', REPEAT('a', 1), NOW(), 1);
+ connection conn_2;
+ send INSERT INTO t VALUES (1, '', REPEAT('a', 1), NOW(), 1);
+ connection conn_1;
+ reap;
+ connection conn_2;
+ reap;
+ dec $loop_counter;
+}
+enable_result_log;
+enable_query_log;
+
+# Results
+echo # Master results;
+connection master;
+SELECT COUNT(a) FROM t;
+sync_slave_with_master;
+echo # Slave results;
+SELECT COUNT(a) FROM t;
+
+# Clean up
+echo # Clean up;
+connection master;
+DROP TABLE t;
+sync_slave_with_master;
+source include/stop_slave.inc;
+echo # End of tests;
No bundle (reason: useless for push emails).
| Thread |
|---|
| • bzr push into mysql-trunk branch (serge.kozlov:3858 to 3860) WL#5223 | Serge Kozlov | 22 May |