mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
BUG#13627921 - MISSING FLAGS IN SQL_COMMAND_FLAGS MAY LEAD TO REPLICATION PROBLEMS
merge from MySQL-5.6, revision: revno: 3677.2.1 committer: Alfranio Correia <alfranio.correia@oracle.com> timestamp: Tue 2012-02-28 16:26:37 +0000 message: BUG#13627921 - MISSING FLAGS IN SQL_COMMAND_FLAGS MAY LEAD TO REPLICATION PROBLEMS Flags in sql_command_flags[command] are not correctly set for the following commands: . SQLCOM_SET_OPTION is missing CF_CAN_GENERATE_ROW_EVENTS; . SQLCOM_BINLOG_BASE64_EVENT is missing CF_CAN_GENERATE_ROW_EVENTS; . SQLCOM_REVOKE_ALL is missing CF_CHANGES_DATA; . SQLCOM_CREATE_FUNCTION is missing CF_AUTO_COMMIT_TRANS; This may lead to a wrong sequence of events in the binary log. To fix the problem, we correctly set the flags in sql_command_flags[command].
This commit is contained in:
@ -32,7 +32,7 @@ INSERT INTO tt_2(ddl_case) VALUES(0);
|
||||
--echo # CHECK IMPLICT COMMIT
|
||||
--echo #########################################################################
|
||||
SET AUTOCOMMIT= 0;
|
||||
let $ddl_cases= 41;
|
||||
let $ddl_cases= 43;
|
||||
while ($ddl_cases >= 1)
|
||||
{
|
||||
--echo -b-b-b-b-b-b-b-b-b-b-b- >> << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
@ -84,6 +84,15 @@ while ($ddl_cases >= 1)
|
||||
let $first_binlog_position= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||
--enable_query_log
|
||||
eval INSERT INTO tt_1(ddl_case) VALUES ($ddl_cases);
|
||||
|
||||
if ($ddl_cases == 43)
|
||||
{
|
||||
let $cmd= CREATE FUNCTION myfunc_int RETURNS INTEGER SONAME "$UDF_EXAMPLE_SO";
|
||||
}
|
||||
if ($ddl_cases == 42)
|
||||
{
|
||||
let $cmd= DROP FUNCTION myfunc_int;
|
||||
}
|
||||
if ($ddl_cases == 41)
|
||||
{
|
||||
let $cmd= LOAD INDEX INTO CACHE nt_1 IGNORE LEAVES;
|
||||
@ -611,6 +620,7 @@ while ($ddl_cases >= 1)
|
||||
let $commit_event_row_number= 6;
|
||||
}
|
||||
}
|
||||
--replace_result $UDF_EXAMPLE_SO UDF_EXAMPLE_LIB
|
||||
--eval $cmd
|
||||
--disable_query_log
|
||||
#
|
||||
@ -634,6 +644,7 @@ while ($ddl_cases >= 1)
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
--echo -e-e-e-e-e-e-e-e-e-e-e- >> << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
let $binlog_start= $first_binlog_position;
|
||||
--echo -b-b-b-b-b-b-b-b-b-b-b- >> << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
|
Reference in New Issue
Block a user