mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
Merge branch 'mysql/5.5' into 5.5
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright (c) 2000, 2015, Oracle and/or its affiliates.
|
||||
Copyright (c) 2000, 2016, Oracle and/or its affiliates.
|
||||
Copyright (c) 2010, 2016, MariaDB
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
@@ -4880,7 +4880,8 @@ bool mysql_create_like_table(THD* thd, TABLE_LIST* table, TABLE_LIST* src_table,
|
||||
/*
|
||||
We have to write the query before we unlock the tables.
|
||||
*/
|
||||
if (thd->is_current_stmt_binlog_format_row())
|
||||
if (!thd->is_current_stmt_binlog_disabled() &&
|
||||
thd->is_current_stmt_binlog_format_row())
|
||||
{
|
||||
/*
|
||||
Since temporary tables are not replicated under row-based
|
||||
@@ -4922,6 +4923,21 @@ bool mysql_create_like_table(THD* thd, TABLE_LIST* table, TABLE_LIST* src_table,
|
||||
if (open_table(thd, table, thd->mem_root, &ot_ctx))
|
||||
goto err;
|
||||
|
||||
/*
|
||||
After opening a MERGE table add the children to the query list of
|
||||
tables, so that children tables info can be used on "CREATE TABLE"
|
||||
statement generation by the binary log.
|
||||
Note that placeholders don't have the handler open.
|
||||
*/
|
||||
if (table->table->file->extra(HA_EXTRA_ADD_CHILDREN_LIST))
|
||||
goto err;
|
||||
|
||||
/*
|
||||
As the reference table is temporary and may not exist on slave, we must
|
||||
force the ENGINE to be present into CREATE TABLE.
|
||||
*/
|
||||
create_info->used_fields|= HA_CREATE_USED_ENGINE;
|
||||
|
||||
int result __attribute__((unused))=
|
||||
store_create_info(thd, table, &query,
|
||||
create_info, TRUE /* show_database */);
|
||||
|
Reference in New Issue
Block a user