Commit 10863a35 authored by unknown's avatar unknown

merge


mysql-test/t/rpl_get_lock.test:
  Auto merged
sql/ha_innobase.cc:
  Merge
sql/sql_parse.cc:
  Clean up comments
parents 0af41d8e 836c5cac
...@@ -6,6 +6,13 @@ dirty_close master; ...@@ -6,6 +6,13 @@ dirty_close master;
connection master1; connection master1;
select get_lock("lock",2); select get_lock("lock",2);
select release_lock("lock"); select release_lock("lock");
let $1=2000;
while ($1)
{
do get_lock("lock",2);
do release_lock("lock");
dec $1;
}
save_master_pos; save_master_pos;
connection slave; connection slave;
sync_with_master; sync_with_master;
......
...@@ -1100,6 +1100,29 @@ mysql_execute_command(void) ...@@ -1100,6 +1100,29 @@ mysql_execute_command(void)
SELECT_LEX *select_lex = lex->select; SELECT_LEX *select_lex = lex->select;
DBUG_ENTER("mysql_execute_command"); DBUG_ENTER("mysql_execute_command");
if (thd->slave_thread)
{
/*
Skip if we are in the slave thread, some table rules have been
given and the table list says the query should not be replicated
*/
if (table_rules_on && tables && !tables_ok(thd,tables))
DBUG_VOID_RETURN;
#ifndef TO_BE_DELETED
/*
This is a workaround to deal with the shortcoming in 3.23.44-3.23.46
masters in RELEASE_LOCK() logging. We re-write SELECT RELEASE_LOCK()
as DO RELEASE_LOCK()
*/
if (lex->sql_command == SQLCOM_SELECT)
{
lex->sql_command = SQLCOM_DO;
lex->insert_list = &lex->item_list;
}
#endif
}
thread_safe_increment(com_stat[lex->sql_command],&LOCK_thread_count);
/* /*
Skip if we are in the slave thread, some table rules have been given Skip if we are in the slave thread, some table rules have been given
and the table list says the query should not be replicated and the table list says the query should not be replicated
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment