1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-08 11:22:35 +03:00

Merge branch '5.5' into 10.0

This commit is contained in:
Sergei Golubchik
2016-04-26 23:05:26 +02:00
109 changed files with 1309 additions and 319 deletions

View File

@@ -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
@@ -5421,6 +5421,9 @@ bool mysql_create_like_table(THD* thd, TABLE_LIST* table,
/*
We have to write the query before we unlock the tables.
*/
if (thd->is_current_stmt_binlog_disabled())
goto err;
if (thd->is_current_stmt_binlog_format_row())
{
/*
@@ -5491,6 +5494,21 @@ bool mysql_create_like_table(THD* thd, TABLE_LIST* table,
*/
if (!table->view)
{
/*
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))=
show_create_table(thd, table, &query, create_info, WITH_DB_NAME);
@@ -8434,7 +8452,7 @@ bool mysql_alter_table(THD *thd,char *new_db, char *new_name,
till this point for the alter operation.
*/
if ((alter_info->flags & Alter_info::ADD_FOREIGN_KEY) &&
check_fk_parent_table_access(thd, create_info, alter_info))
check_fk_parent_table_access(thd, create_info, alter_info, new_db))
DBUG_RETURN(true);
/*