Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.1-opt
into magare.gmz:/home/kgeorge/mysql/autopush/B27816-5.1-opt sql/sql_table.cc: Auto merged
This commit is contained in:
commit
ab84fb1d1b
@ -1245,4 +1245,12 @@ INSERT INTO t1 SELECT a + 8, b FROM t1;
|
|||||||
ALTER TABLE t1 ADD PARTITION (PARTITION p1 VALUES LESS THAN (64));
|
ALTER TABLE t1 ADD PARTITION (PARTITION p1 VALUES LESS THAN (64));
|
||||||
ALTER TABLE t1 DROP PARTITION p1;
|
ALTER TABLE t1 DROP PARTITION p1;
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
USE mysql;
|
||||||
|
SET GLOBAL general_log = 0;
|
||||||
|
ALTER TABLE general_log ENGINE = MyISAM;
|
||||||
|
ALTER TABLE general_log PARTITION BY RANGE (TO_DAYS(event_time))
|
||||||
|
(PARTITION p0 VALUES LESS THAN (733144), PARTITION p1 VALUES LESS THAN (3000000));
|
||||||
|
ERROR HY000: Incorrect usage of PARTITION and log table
|
||||||
|
ALTER TABLE general_log ENGINE = CSV;
|
||||||
|
SET GLOBAL general_log = default;
|
||||||
End of 5.1 tests
|
End of 5.1 tests
|
||||||
|
@ -1465,4 +1465,18 @@ ALTER TABLE t1 DROP PARTITION p1;
|
|||||||
|
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Bug #27816: Log tables ran with partitions crashes the server when logging
|
||||||
|
# is enabled.
|
||||||
|
#
|
||||||
|
|
||||||
|
USE mysql;
|
||||||
|
SET GLOBAL general_log = 0;
|
||||||
|
ALTER TABLE general_log ENGINE = MyISAM;
|
||||||
|
--error ER_WRONG_USAGE
|
||||||
|
ALTER TABLE general_log PARTITION BY RANGE (TO_DAYS(event_time))
|
||||||
|
(PARTITION p0 VALUES LESS THAN (733144), PARTITION p1 VALUES LESS THAN (3000000));
|
||||||
|
ALTER TABLE general_log ENGINE = CSV;
|
||||||
|
SET GLOBAL general_log = default;
|
||||||
|
|
||||||
--echo End of 5.1 tests
|
--echo End of 5.1 tests
|
||||||
|
@ -296,6 +296,8 @@ bool Log_to_csv_event_handler::open_log_table(uint log_table_type)
|
|||||||
table->db= log_thd->db;
|
table->db= log_thd->db;
|
||||||
table->db_length= log_thd->db_length;
|
table->db_length= log_thd->db_length;
|
||||||
|
|
||||||
|
lex_start(log_thd);
|
||||||
|
log_thd->clear_error();
|
||||||
if (simple_open_n_lock_tables(log_thd, table) ||
|
if (simple_open_n_lock_tables(log_thd, table) ||
|
||||||
table->table->file->extra(HA_EXTRA_MARK_AS_LOG_TABLE) ||
|
table->table->file->extra(HA_EXTRA_MARK_AS_LOG_TABLE) ||
|
||||||
table->table->file->ha_rnd_init(0))
|
table->table->file->ha_rnd_init(0))
|
||||||
|
@ -5747,21 +5747,31 @@ bool mysql_alter_table(THD *thd,char *new_db, char *new_name,
|
|||||||
table_list->table_name_length,
|
table_list->table_name_length,
|
||||||
table_list->table_name, 0);
|
table_list->table_name, 0);
|
||||||
|
|
||||||
/* Disable alter of enabled log tables */
|
if (table_kind)
|
||||||
if (table_kind && logger.is_log_table_enabled(table_kind))
|
|
||||||
{
|
{
|
||||||
my_error(ER_BAD_LOG_STATEMENT, MYF(0), "ALTER");
|
/* Disable alter of enabled log tables */
|
||||||
DBUG_RETURN(TRUE);
|
if (logger.is_log_table_enabled(table_kind))
|
||||||
}
|
{
|
||||||
|
my_error(ER_BAD_LOG_STATEMENT, MYF(0), "ALTER");
|
||||||
|
DBUG_RETURN(TRUE);
|
||||||
|
}
|
||||||
|
|
||||||
/* Disable alter of log tables to unsupported engine */
|
/* Disable alter of log tables to unsupported engine */
|
||||||
if (table_kind &&
|
if ((create_info->used_fields & HA_CREATE_USED_ENGINE) &&
|
||||||
(create_info->used_fields & HA_CREATE_USED_ENGINE) &&
|
(!create_info->db_type || /* unknown engine */
|
||||||
(!create_info->db_type || /* unknown engine */
|
!(create_info->db_type->flags & HTON_SUPPORT_LOG_TABLES)))
|
||||||
!(create_info->db_type->flags & HTON_SUPPORT_LOG_TABLES)))
|
{
|
||||||
{
|
my_error(ER_UNSUPORTED_LOG_ENGINE, MYF(0));
|
||||||
my_error(ER_UNSUPORTED_LOG_ENGINE, MYF(0));
|
DBUG_RETURN(TRUE);
|
||||||
DBUG_RETURN(TRUE);
|
}
|
||||||
|
|
||||||
|
#ifdef WITH_PARTITION_STORAGE_ENGINE
|
||||||
|
if (alter_info->flags & ALTER_PARTITION)
|
||||||
|
{
|
||||||
|
my_error(ER_WRONG_USAGE, MYF(0), "PARTITION", "log table");
|
||||||
|
DBUG_RETURN(TRUE);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user