mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
Merge next-mr -> next-4284.
Cherry-pick a fix Bug#37148 from next-mr, to preserve file ids of the added files, and ensure that all the necessary changes have been pulled. Since initially Bug#37148 was null-merged into 6.0, the changeset that is now being cherry-picked was likewise null merged into next-4284. Now that Bug#37148 has been reapplied to 6.0, try to make it work with next-4284. This is also necessary to be able to pull other changes from 5.1-rep into next-4284. To resolve the merge issues use this changeset applied to 6.0: revid:jperkin@sun.com-20091216103628-ylhqf7s6yegui2t9 revno: 3776.1.1 committer: He Zhenxing <zhenxing.he@sun.com> branch nick: 6.0-codebase-bugfixing timestamp: Thu 2009-12-17 17:02:50 +0800 message: Fix merge problem with Bug#37148
This commit is contained in:
@ -1505,7 +1505,7 @@ void close_thread_tables(THD *thd)
|
||||
handled either before writing a query log event (inside
|
||||
binlog_query()) or when preparing a pending event.
|
||||
*/
|
||||
thd->binlog_flush_pending_rows_event(TRUE);
|
||||
(void)thd->binlog_flush_pending_rows_event(TRUE);
|
||||
mysql_unlock_tables(thd, thd->lock);
|
||||
thd->lock=0;
|
||||
}
|
||||
@ -1710,7 +1710,11 @@ void close_temporary_tables(THD *thd)
|
||||
qinfo.db= db.ptr();
|
||||
qinfo.db_len= db.length();
|
||||
thd->variables.character_set_client= cs_save;
|
||||
mysql_bin_log.write(&qinfo);
|
||||
if (mysql_bin_log.write(&qinfo))
|
||||
{
|
||||
push_warning(thd, MYSQL_ERROR::WARN_LEVEL_ERROR, MYF(0),
|
||||
"Failed to write the DROP statement for temporary tables to binary log");
|
||||
}
|
||||
thd->variables.pseudo_thread_id= save_pseudo_thread_id;
|
||||
}
|
||||
else
|
||||
@ -3633,9 +3637,13 @@ static bool open_table_entry_fini(THD *thd, TABLE_SHARE *share, TABLE *entry)
|
||||
end = strxmov(strmov(query, "DELETE FROM `"),
|
||||
share->db.str,"`.`",share->table_name.str,"`", NullS);
|
||||
int errcode= query_error_code(thd, TRUE);
|
||||
thd->binlog_query(THD::STMT_QUERY_TYPE,
|
||||
query, (ulong)(end-query),
|
||||
FALSE, FALSE, errcode);
|
||||
if (thd->binlog_query(THD::STMT_QUERY_TYPE,
|
||||
query, (ulong)(end-query),
|
||||
FALSE, FALSE, errcode))
|
||||
{
|
||||
my_free(query, MYF(0));
|
||||
return TRUE;
|
||||
}
|
||||
my_free(query, MYF(0));
|
||||
}
|
||||
else
|
||||
|
Reference in New Issue
Block a user