Merge mysql.com:/users/lthalmann/bkroot/mysql-5.0
into mysql.com:/users/lthalmann/bk/MERGE/mysql-5.0-merge
This commit is contained in:
commit
97c3a27357
@ -658,13 +658,13 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
|
||||
tty_password=1;
|
||||
break;
|
||||
case 'r':
|
||||
if (!(md_result_file = my_fopen(argument, O_WRONLY | FILE_BINARY,
|
||||
if (!(md_result_file= my_fopen(argument, O_WRONLY | FILE_BINARY,
|
||||
MYF(MY_WME))))
|
||||
exit(1);
|
||||
break;
|
||||
case 'W':
|
||||
#ifdef __WIN__
|
||||
opt_protocol = MYSQL_PROTOCOL_PIPE;
|
||||
opt_protocol= MYSQL_PROTOCOL_PIPE;
|
||||
#endif
|
||||
break;
|
||||
case 'N':
|
||||
@ -679,7 +679,7 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
|
||||
#include <sslopt-case.h>
|
||||
case 'V': print_version(); exit(0);
|
||||
case 'X':
|
||||
opt_xml = 1;
|
||||
opt_xml= 1;
|
||||
extended_insert= opt_drop= opt_lock=
|
||||
opt_disable_keys= opt_autocommit= opt_create_db= 0;
|
||||
break;
|
||||
@ -1442,7 +1442,7 @@ static uint get_table_structure(char *table, char *db, char *table_type,
|
||||
const char *insert_option;
|
||||
char name_buff[NAME_LEN+3],table_buff[NAME_LEN*2+3];
|
||||
char table_buff2[NAME_LEN*2+3], query_buff[512];
|
||||
FILE *sql_file = md_result_file;
|
||||
FILE *sql_file= md_result_file;
|
||||
int len;
|
||||
MYSQL_RES *result;
|
||||
MYSQL_ROW row;
|
||||
@ -1486,7 +1486,7 @@ static uint get_table_structure(char *table, char *db, char *table_type,
|
||||
opt_quoted_table= quote_name(table, table_buff2, 0);
|
||||
|
||||
if (opt_order_by_primary)
|
||||
order_by = primary_key_fields(result_table);
|
||||
order_by= primary_key_fields(result_table);
|
||||
|
||||
if (!opt_xml && !mysql_query_with_error_report(mysql, 0, query_buff))
|
||||
{
|
||||
@ -1538,7 +1538,7 @@ static uint get_table_structure(char *table, char *db, char *table_type,
|
||||
field= mysql_fetch_field_direct(result, 0);
|
||||
if (strcmp(field->name, "View") == 0)
|
||||
{
|
||||
char *scv_buff = NULL;
|
||||
char *scv_buff= NULL;
|
||||
|
||||
verbose_msg("-- It's a view, create dummy table for view\n");
|
||||
|
||||
@ -1575,7 +1575,7 @@ static uint get_table_structure(char *table, char *db, char *table_type,
|
||||
my_free(scv_buff, MYF(MY_ALLOW_ZERO_PTR));
|
||||
|
||||
safe_exit(EX_MYSQLERR);
|
||||
DBUG_RETURN(0);
|
||||
DBUG_RETURN(0);
|
||||
}
|
||||
else
|
||||
my_free(scv_buff, MYF(MY_ALLOW_ZERO_PTR));
|
||||
@ -1939,7 +1939,7 @@ static void dump_triggers_for_table (char *table, char *db)
|
||||
char name_buff[NAME_LEN*4+3], table_buff[NAME_LEN*2+3];
|
||||
char query_buff[512];
|
||||
uint old_opt_compatible_mode=opt_compatible_mode;
|
||||
FILE *sql_file = md_result_file;
|
||||
FILE *sql_file= md_result_file;
|
||||
MYSQL_RES *result;
|
||||
MYSQL_ROW row;
|
||||
|
||||
@ -2183,15 +2183,15 @@ static void dump_table(char *table, char *db)
|
||||
end= strmov(end,buff);
|
||||
if (where || order_by)
|
||||
{
|
||||
query = alloc_query_str((ulong) ((end - query) + 1 +
|
||||
query= alloc_query_str((ulong) ((end - query) + 1 +
|
||||
(where ? strlen(where) + 7 : 0) +
|
||||
(order_by ? strlen(order_by) + 10 : 0)));
|
||||
end = strmov(query, query_buf);
|
||||
end= strmov(query, query_buf);
|
||||
|
||||
if (where)
|
||||
end = strxmov(end, " WHERE ", where, NullS);
|
||||
end= strxmov(end, " WHERE ", where, NullS);
|
||||
if (order_by)
|
||||
end = strxmov(end, " ORDER BY ", order_by, NullS);
|
||||
end= strxmov(end, " ORDER BY ", order_by, NullS);
|
||||
}
|
||||
if (mysql_real_query(mysql, query, (uint) (end - query)))
|
||||
{
|
||||
@ -2212,10 +2212,10 @@ static void dump_table(char *table, char *db)
|
||||
result_table);
|
||||
if (where || order_by)
|
||||
{
|
||||
query = alloc_query_str((ulong) (strlen(query) + 1 +
|
||||
query= alloc_query_str((ulong) (strlen(query) + 1 +
|
||||
(where ? strlen(where) + 7 : 0) +
|
||||
(order_by ? strlen(order_by) + 10 : 0)));
|
||||
end = strmov(query, query_buf);
|
||||
end= strmov(query, query_buf);
|
||||
|
||||
if (where)
|
||||
{
|
||||
@ -2224,7 +2224,7 @@ static void dump_table(char *table, char *db)
|
||||
fprintf(md_result_file, "-- WHERE: %s\n", where);
|
||||
check_io(md_result_file);
|
||||
}
|
||||
end = strxmov(end, " WHERE ", where, NullS);
|
||||
end= strxmov(end, " WHERE ", where, NullS);
|
||||
}
|
||||
if (order_by)
|
||||
{
|
||||
@ -2233,7 +2233,7 @@ static void dump_table(char *table, char *db)
|
||||
fprintf(md_result_file, "-- ORDER BY: %s\n", order_by);
|
||||
check_io(md_result_file);
|
||||
}
|
||||
end = strxmov(end, " ORDER BY ", order_by, NullS);
|
||||
end= strxmov(end, " ORDER BY ", order_by, NullS);
|
||||
}
|
||||
}
|
||||
if (!opt_xml && !opt_compact)
|
||||
@ -2309,12 +2309,12 @@ static void dump_table(char *table, char *db)
|
||||
check_io(md_result_file);
|
||||
}
|
||||
|
||||
for (i = 0; i < mysql_num_fields(res); i++)
|
||||
for (i= 0; i < mysql_num_fields(res); i++)
|
||||
{
|
||||
int is_blob;
|
||||
ulong length= lengths[i];
|
||||
|
||||
if (!(field = mysql_fetch_field(res)))
|
||||
if (!(field= mysql_fetch_field(res)))
|
||||
{
|
||||
my_snprintf(query, QUERY_LENGTH,
|
||||
"%s: Not enough fields from table %s! Aborting.\n",
|
||||
@ -2386,7 +2386,7 @@ static void dump_table(char *table, char *db)
|
||||
else
|
||||
{
|
||||
/* change any strings ("inf", "-inf", "nan") into NULL */
|
||||
char *ptr = row[i];
|
||||
char *ptr= row[i];
|
||||
if (my_isalpha(charset_info, *ptr) || (*ptr == '-' &&
|
||||
my_isalpha(charset_info, ptr[1])))
|
||||
dynstr_append(&extended_row, "NULL");
|
||||
@ -2446,7 +2446,7 @@ static void dump_table(char *table, char *db)
|
||||
else
|
||||
{
|
||||
/* change any strings ("inf", "-inf", "nan") into NULL */
|
||||
char *ptr = row[i];
|
||||
char *ptr= row[i];
|
||||
if (opt_xml)
|
||||
{
|
||||
print_xml_tag1(md_result_file, "\t\t", "field name=",
|
||||
@ -2492,10 +2492,10 @@ static void dump_table(char *table, char *db)
|
||||
{
|
||||
ulong row_length;
|
||||
dynstr_append(&extended_row,")");
|
||||
row_length = 2 + extended_row.length;
|
||||
row_length= 2 + extended_row.length;
|
||||
if (total_length + row_length < opt_net_buffer_length)
|
||||
{
|
||||
total_length += row_length;
|
||||
total_length+= row_length;
|
||||
fputc(',',md_result_file); /* Always row break */
|
||||
fputs(extended_row.str,md_result_file);
|
||||
}
|
||||
@ -2507,7 +2507,7 @@ static void dump_table(char *table, char *db)
|
||||
|
||||
fputs(insert_pat.str,md_result_file);
|
||||
fputs(extended_row.str,md_result_file);
|
||||
total_length = row_length+init_length;
|
||||
total_length= row_length+init_length;
|
||||
}
|
||||
check_io(md_result_file);
|
||||
}
|
||||
@ -2572,15 +2572,15 @@ err:
|
||||
|
||||
static char *getTableName(int reset)
|
||||
{
|
||||
static MYSQL_RES *res = NULL;
|
||||
static MYSQL_RES *res= NULL;
|
||||
MYSQL_ROW row;
|
||||
|
||||
if (!res)
|
||||
{
|
||||
if (!(res = mysql_list_tables(mysql,NullS)))
|
||||
if (!(res= mysql_list_tables(mysql,NullS)))
|
||||
return(NULL);
|
||||
}
|
||||
if ((row = mysql_fetch_row(res)))
|
||||
if ((row= mysql_fetch_row(res)))
|
||||
return((char*) row[0]);
|
||||
|
||||
if (reset)
|
||||
@ -2588,7 +2588,7 @@ static char *getTableName(int reset)
|
||||
else
|
||||
{
|
||||
mysql_free_result(res);
|
||||
res = NULL;
|
||||
res= NULL;
|
||||
}
|
||||
return(NULL);
|
||||
} /* getTableName */
|
||||
@ -2602,7 +2602,7 @@ static int dump_all_databases()
|
||||
|
||||
if (mysql_query_with_error_report(mysql, &tableres, "SHOW DATABASES"))
|
||||
return 1;
|
||||
while ((row = mysql_fetch_row(tableres)))
|
||||
while ((row= mysql_fetch_row(tableres)))
|
||||
{
|
||||
if (dump_all_tables_in_db(row[0]))
|
||||
result=1;
|
||||
@ -2610,13 +2610,13 @@ static int dump_all_databases()
|
||||
if (seen_views)
|
||||
{
|
||||
if (mysql_query(mysql, "SHOW DATABASES") ||
|
||||
!(tableres = mysql_store_result(mysql)))
|
||||
!(tableres= mysql_store_result(mysql)))
|
||||
{
|
||||
my_printf_error(0, "Error: Couldn't execute 'SHOW DATABASES': %s",
|
||||
MYF(0), mysql_error(mysql));
|
||||
return 1;
|
||||
}
|
||||
while ((row = mysql_fetch_row(tableres)))
|
||||
while ((row= mysql_fetch_row(tableres)))
|
||||
{
|
||||
if (dump_all_views_in_db(row[0]))
|
||||
result=1;
|
||||
@ -3048,7 +3048,7 @@ static int do_show_master_status(MYSQL *mysql_con)
|
||||
}
|
||||
else
|
||||
{
|
||||
row = mysql_fetch_row(master);
|
||||
row= mysql_fetch_row(master);
|
||||
if (row && row[0] && row[1])
|
||||
{
|
||||
/* SHOW MASTER STATUS reports file and position */
|
||||
@ -3175,7 +3175,7 @@ static void print_value(FILE *file, MYSQL_RES *result, MYSQL_ROW row,
|
||||
MYSQL_FIELD *field;
|
||||
mysql_field_seek(result, 0);
|
||||
|
||||
for ( ; (field = mysql_fetch_field(result)) ; row++)
|
||||
for ( ; (field= mysql_fetch_field(result)) ; row++)
|
||||
{
|
||||
if (!strcmp(field->name,name))
|
||||
{
|
||||
@ -3303,17 +3303,19 @@ char check_if_ignore_table(const char *table_name, char *table_type)
|
||||
|
||||
static char *primary_key_fields(const char *table_name)
|
||||
{
|
||||
MYSQL_RES *res = NULL;
|
||||
MYSQL_RES *res= NULL;
|
||||
MYSQL_ROW row;
|
||||
/* SHOW KEYS FROM + table name * 2 (escaped) + 2 quotes + \0 */
|
||||
char show_keys_buff[15 + NAME_LEN * 2 + 3];
|
||||
uint result_length = 0;
|
||||
char *result = 0;
|
||||
uint result_length= 0;
|
||||
char *result= 0;
|
||||
char buff[NAME_LEN * 2 + 3];
|
||||
char *quoted_field;
|
||||
|
||||
my_snprintf(show_keys_buff, sizeof(show_keys_buff),
|
||||
"SHOW KEYS FROM %s", table_name);
|
||||
if (mysql_query(mysql, show_keys_buff) ||
|
||||
!(res = mysql_store_result(mysql)))
|
||||
!(res= mysql_store_result(mysql)))
|
||||
{
|
||||
fprintf(stderr, "Warning: Couldn't read keys from table %s;"
|
||||
" records are NOT sorted (%s)\n",
|
||||
@ -3328,12 +3330,14 @@ static char *primary_key_fields(const char *table_name)
|
||||
* row, and UNIQUE keys come before others. So we only need to check
|
||||
* the first key, not all keys.
|
||||
*/
|
||||
if ((row = mysql_fetch_row(res)) && atoi(row[1]) == 0)
|
||||
if ((row= mysql_fetch_row(res)) && atoi(row[1]) == 0)
|
||||
{
|
||||
/* Key is unique */
|
||||
do
|
||||
result_length += strlen(row[4]) + 1; /* + 1 for ',' or \0 */
|
||||
while ((row = mysql_fetch_row(res)) && atoi(row[3]) > 1);
|
||||
{
|
||||
quoted_field= quote_name(row[4], buff, 0);
|
||||
result_length+= strlen(quoted_field) + 1; /* + 1 for ',' or \0 */
|
||||
} while ((row= mysql_fetch_row(res)) && atoi(row[3]) > 1);
|
||||
}
|
||||
|
||||
/* Build the ORDER BY clause result */
|
||||
@ -3341,17 +3345,21 @@ static char *primary_key_fields(const char *table_name)
|
||||
{
|
||||
char *end;
|
||||
/* result (terminating \0 is already in result_length) */
|
||||
result = my_malloc(result_length + 10, MYF(MY_WME));
|
||||
result= my_malloc(result_length + 10, MYF(MY_WME));
|
||||
if (!result)
|
||||
{
|
||||
fprintf(stderr, "Error: Not enough memory to store ORDER BY clause\n");
|
||||
goto cleanup;
|
||||
}
|
||||
mysql_data_seek(res, 0);
|
||||
row = mysql_fetch_row(res);
|
||||
end = strmov(result, row[4]);
|
||||
while ((row = mysql_fetch_row(res)) && atoi(row[3]) > 1)
|
||||
end = strxmov(end, ",", row[4], NullS);
|
||||
row= mysql_fetch_row(res);
|
||||
quoted_field= quote_name(row[4], buff, 0);
|
||||
end= strmov(result, quoted_field);
|
||||
while ((row= mysql_fetch_row(res)) && atoi(row[3]) > 1)
|
||||
{
|
||||
quoted_field= quote_name(row[4], buff, 0);
|
||||
end= strxmov(end, ",", quoted_field, NullS);
|
||||
}
|
||||
}
|
||||
|
||||
cleanup:
|
||||
@ -3419,7 +3427,7 @@ static my_bool get_view_structure(char *table, char* db)
|
||||
char table_buff[NAME_LEN*2+3];
|
||||
char table_buff2[NAME_LEN*2+3];
|
||||
char query[QUERY_LENGTH];
|
||||
FILE *sql_file = md_result_file;
|
||||
FILE *sql_file= md_result_file;
|
||||
DBUG_ENTER("get_view_structure");
|
||||
|
||||
if (opt_no_create_info) /* Don't write table creation info */
|
||||
|
@ -22,6 +22,9 @@ INSERT INTO t1 VALUES (1), (2);
|
||||
</database>
|
||||
</mysqldump>
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# Bug #2005
|
||||
#
|
||||
CREATE TABLE t1 (a decimal(64, 20));
|
||||
INSERT INTO t1 VALUES ("1234567890123456789012345678901234567890"),
|
||||
("0987654321098765432109876543210987654321");
|
||||
@ -30,6 +33,9 @@ CREATE TABLE `t1` (
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
|
||||
INSERT INTO `t1` VALUES ('1234567890123456789012345678901234567890.00000000000000000000'),('987654321098765432109876543210987654321.00000000000000000000');
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# Bug #2055
|
||||
#
|
||||
CREATE TABLE t1 (a double);
|
||||
INSERT INTO t1 VALUES ('-9e999999');
|
||||
Warnings:
|
||||
@ -39,6 +45,9 @@ CREATE TABLE `t1` (
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
|
||||
INSERT INTO `t1` VALUES (RES);
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# Bug #3361 mysqldump quotes DECIMAL values inconsistently
|
||||
#
|
||||
CREATE TABLE t1 (a DECIMAL(10,5), b FLOAT);
|
||||
INSERT INTO t1 VALUES (1.2345, 2.3456);
|
||||
INSERT INTO t1 VALUES ('1.2345', 2.3456);
|
||||
@ -136,6 +145,9 @@ INSERT INTO t1 VALUES (1, "test", "tes"), (2, "TEST", "TES");
|
||||
</database>
|
||||
</mysqldump>
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# Bug #1707
|
||||
#
|
||||
CREATE TABLE t1 (`a"b"` char(2));
|
||||
INSERT INTO t1 VALUES ("1\""), ("\"2");
|
||||
<?xml version="1.0"?>
|
||||
@ -155,6 +167,10 @@ INSERT INTO t1 VALUES ("1\""), ("\"2");
|
||||
</database>
|
||||
</mysqldump>
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# Bug #1994
|
||||
# Bug #4261
|
||||
#
|
||||
CREATE TABLE t1 (a VARCHAR(255)) DEFAULT CHARSET koi8r;
|
||||
INSERT INTO t1 VALUES (_koi8r x'C1C2C3C4C5'), (NULL);
|
||||
|
||||
@ -190,6 +206,9 @@ UNLOCK TABLES;
|
||||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# Bug #2634
|
||||
#
|
||||
CREATE TABLE t1 (a int) ENGINE=MYISAM;
|
||||
INSERT INTO t1 VALUES (1), (2);
|
||||
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
|
||||
@ -239,11 +258,17 @@ UNLOCK TABLES;
|
||||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# Bug #2592 'mysqldump doesn't quote "tricky" names correctly'
|
||||
#
|
||||
create table ```a` (i int);
|
||||
CREATE TABLE ```a` (
|
||||
`i` int(11) default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
|
||||
drop table ```a`;
|
||||
#
|
||||
# Bug #2591 "mysqldump quotes names inconsistently"
|
||||
#
|
||||
create table t1(a int);
|
||||
|
||||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||
@ -352,6 +377,9 @@ UNLOCK TABLES;
|
||||
|
||||
set global sql_mode='';
|
||||
drop table t1;
|
||||
#
|
||||
# Bug #2705 'mysqldump --tab extra output'
|
||||
#
|
||||
create table t1(a int);
|
||||
insert into t1 values (1),(2),(3);
|
||||
|
||||
@ -380,6 +408,9 @@ CREATE TABLE `t1` (
|
||||
2
|
||||
3
|
||||
drop table t1;
|
||||
#
|
||||
# Bug #6101: create database problem
|
||||
#
|
||||
|
||||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||
@ -432,6 +463,12 @@ USE `mysqldump_test_db`;
|
||||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||
|
||||
drop database mysqldump_test_db;
|
||||
#
|
||||
# Bug #7020
|
||||
# Check that we don't dump in UTF8 in compatible mode by default,
|
||||
# but use the default compiled values, or the values given in
|
||||
# --default-character-set=xxx. However, we should dump in UTF8
|
||||
# if it is explicitely set.
|
||||
CREATE TABLE t1 (a CHAR(10));
|
||||
INSERT INTO t1 VALUES (_latin1 'ÄÖÜß');
|
||||
|
||||
@ -465,6 +502,13 @@ UNLOCK TABLES;
|
||||
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||
|
||||
#
|
||||
# Bug#8063: make test mysqldump [ fail ]
|
||||
# We cannot tes this command because its output depends
|
||||
# on --default-character-set incompiled into "mysqldump" program.
|
||||
# If the future we can move this command into a separate test with
|
||||
# checking that "mysqldump" is compiled with "latin1"
|
||||
#
|
||||
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
|
||||
/*!40103 SET TIME_ZONE='+00:00' */;
|
||||
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||
@ -535,6 +579,9 @@ UNLOCK TABLES;
|
||||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# WL #2319: Exclude Tables from dump
|
||||
#
|
||||
CREATE TABLE t1 (a int);
|
||||
CREATE TABLE t2 (a int);
|
||||
INSERT INTO t1 VALUES (1),(2),(3);
|
||||
@ -572,6 +619,9 @@ UNLOCK TABLES;
|
||||
|
||||
DROP TABLE t1;
|
||||
DROP TABLE t2;
|
||||
#
|
||||
# Bug #8830
|
||||
#
|
||||
CREATE TABLE t1 (`b` blob);
|
||||
INSERT INTO `t1` VALUES (0x602010000280100005E71A);
|
||||
|
||||
@ -606,6 +656,9 @@ UNLOCK TABLES;
|
||||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# Test for --insert-ignore
|
||||
#
|
||||
CREATE TABLE t1 (a int);
|
||||
INSERT INTO t1 VALUES (1),(2),(3);
|
||||
INSERT INTO t1 VALUES (4),(5),(6);
|
||||
@ -670,6 +723,10 @@ INSERT DELAYED IGNORE INTO `t1` VALUES (1),(2),(3),(4),(5),(6);
|
||||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# Bug #10286: mysqldump -c crashes on table that has many fields with long
|
||||
# names
|
||||
#
|
||||
create table t1 (
|
||||
F_c4ca4238a0b923820dcc509a6f75849b int,
|
||||
F_c81e728d9d4c2f636f067f89cc14862c int,
|
||||
@ -1363,6 +1420,9 @@ UNLOCK TABLES;
|
||||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||
|
||||
drop table t1;
|
||||
#
|
||||
# Test for --add-drop-database
|
||||
#
|
||||
CREATE TABLE t1 (a int);
|
||||
INSERT INTO t1 VALUES (1),(2),(3);
|
||||
|
||||
@ -1403,6 +1463,9 @@ UNLOCK TABLES;
|
||||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# Bug #9558 mysqldump --no-data db t1 t2 format still dumps data
|
||||
#
|
||||
CREATE DATABASE mysqldump_test_db;
|
||||
USE mysqldump_test_db;
|
||||
CREATE TABLE t1 ( a INT );
|
||||
@ -1491,6 +1554,11 @@ CREATE TABLE `t2` (
|
||||
</mysqldump>
|
||||
DROP TABLE t1, t2;
|
||||
DROP DATABASE mysqldump_test_db;
|
||||
#
|
||||
# Testing with tables and databases that don't exists
|
||||
# or contains illegal characters
|
||||
# (Bug #9358 mysqldump crashes if tablename starts with \)
|
||||
#
|
||||
create database mysqldump_test_db;
|
||||
use mysqldump_test_db;
|
||||
create table t1(a varchar(30) primary key, b int not null);
|
||||
@ -1529,6 +1597,9 @@ mysqldump: Got error: 1102: Incorrect database name 'mysqld\ump_test_db' when se
|
||||
drop table t1, t2, t3;
|
||||
drop database mysqldump_test_db;
|
||||
use test;
|
||||
#
|
||||
# Bug #9657 mysqldump xml ( -x ) does not format NULL fields correctly
|
||||
#
|
||||
create table t1 (a int(10));
|
||||
create table t2 (pk int primary key auto_increment,
|
||||
a int(10), b varchar(30), c datetime, d blob, e text);
|
||||
@ -1585,6 +1656,9 @@ insert into t2 (a, b) values (NULL, NULL),(10, NULL),(NULL, "twenty"),(30, "thir
|
||||
</database>
|
||||
</mysqldump>
|
||||
drop table t1, t2;
|
||||
#
|
||||
# BUG #12123
|
||||
#
|
||||
create table t1 (a text character set utf8, b text character set latin1);
|
||||
insert t1 values (0x4F736E616272C3BC636B, 0x4BF66C6E);
|
||||
select * from t1;
|
||||
@ -1595,7 +1669,13 @@ select * from t1;
|
||||
a b
|
||||
Osnabrück Köln
|
||||
drop table t1;
|
||||
#
|
||||
# BUG#15328 Segmentation fault occured if my.cnf is invalid for escape sequence
|
||||
#
|
||||
--fields-optionally-enclosed-by="
|
||||
#
|
||||
# BUG #19025 mysqldump doesn't correctly dump "auto_increment = [int]"
|
||||
#
|
||||
create table `t1` (
|
||||
t1_name varchar(255) default null,
|
||||
t1_id int(10) unsigned not null auto_increment,
|
||||
@ -1633,6 +1713,9 @@ t1 CREATE TABLE `t1` (
|
||||
KEY `t1_name` (`t1_name`)
|
||||
) ENGINE=MyISAM AUTO_INCREMENT=1003 DEFAULT CHARSET=latin1
|
||||
drop table `t1`;
|
||||
#
|
||||
# Bug #18536: wrong table order
|
||||
#
|
||||
create table t1(a int);
|
||||
create table t2(a int);
|
||||
create table t3(a int);
|
||||
@ -1670,6 +1753,9 @@ CREATE TABLE `t2` (
|
||||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||
|
||||
drop table t1, t2, t3;
|
||||
#
|
||||
# Bug #21288: mysqldump segmentation fault when using --where
|
||||
#
|
||||
create table t1 (a int);
|
||||
mysqldump: Couldn't execute 'SELECT /*!40001 SQL_NO_CACHE */ * FROM `t1` WHERE xx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx': You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' at line 1 (1064)
|
||||
mysqldump: Got error: 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' at line 1 when retrieving data from server
|
||||
@ -1701,6 +1787,9 @@ CREATE TABLE `t1` (
|
||||
|
||||
drop table t1;
|
||||
End of 4.1 tests
|
||||
#
|
||||
# Bug #10213 mysqldump crashes when dumping VIEWs(on MacOS X)
|
||||
#
|
||||
create database db1;
|
||||
use db1;
|
||||
CREATE TABLE t2 (
|
||||
@ -1760,6 +1849,9 @@ drop table t2;
|
||||
drop view v2;
|
||||
drop database db1;
|
||||
use test;
|
||||
#
|
||||
# Bug 10713 mysqldump includes database in create view and referenced tables
|
||||
#
|
||||
create database db2;
|
||||
use db2;
|
||||
create table t1 (a int);
|
||||
@ -1833,6 +1925,9 @@ DROP TABLE IF EXISTS `v1`;
|
||||
|
||||
drop view v1;
|
||||
drop table t1;
|
||||
#
|
||||
# Bug #10213 mysqldump crashes when dumping VIEWs(on MacOS X)
|
||||
#
|
||||
create database mysqldump_test_db;
|
||||
use mysqldump_test_db;
|
||||
CREATE TABLE t2 (
|
||||
@ -1892,6 +1987,9 @@ drop table t2;
|
||||
drop view v2;
|
||||
drop database mysqldump_test_db;
|
||||
use test;
|
||||
#
|
||||
# Bug #9756
|
||||
#
|
||||
CREATE TABLE t1 (a char(10));
|
||||
INSERT INTO t1 VALUES ('\'');
|
||||
|
||||
@ -1926,6 +2024,9 @@ UNLOCK TABLES;
|
||||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# Bug #10927 mysqldump: Can't reload dump with view that consist of other view
|
||||
#
|
||||
create table t1(a int, b int, c varchar(30));
|
||||
insert into t1 values(1, 2, "one"), (2, 4, "two"), (3, 6, "three");
|
||||
create view v3 as
|
||||
@ -2003,6 +2104,9 @@ DROP TABLE IF EXISTS `v3`;
|
||||
|
||||
drop view v1, v2, v3;
|
||||
drop table t1;
|
||||
#
|
||||
# Test for dumping triggers
|
||||
#
|
||||
CREATE TABLE t1 (a int, b bigint default NULL);
|
||||
CREATE TABLE t2 (a int);
|
||||
create trigger trg1 before insert on t1 for each row
|
||||
@ -2201,8 +2305,14 @@ set @fired:= "No";
|
||||
end if;
|
||||
end BEFORE # STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER root@localhost
|
||||
DROP TABLE t1, t2;
|
||||
#
|
||||
# Bugs #9136, #12917: problems with --defaults-extra-file option
|
||||
#
|
||||
--port=1234
|
||||
--port=1234
|
||||
#
|
||||
# Test of fix to BUG 12597
|
||||
#
|
||||
DROP TABLE IF EXISTS `test1`;
|
||||
Warnings:
|
||||
Note 1051 Unknown table 'test1'
|
||||
@ -2234,6 +2344,9 @@ a2
|
||||
DROP TRIGGER testref;
|
||||
DROP TABLE test1;
|
||||
DROP TABLE test2;
|
||||
#
|
||||
# BUG#9056 - mysqldump does not dump routines
|
||||
#
|
||||
DROP TABLE IF EXISTS t1;
|
||||
DROP FUNCTION IF EXISTS bug9056_func1;
|
||||
DROP FUNCTION IF EXISTS bug9056_func2;
|
||||
@ -2330,6 +2443,9 @@ DROP PROCEDURE bug9056_proc1;
|
||||
DROP PROCEDURE bug9056_proc2;
|
||||
DROP PROCEDURE `a'b`;
|
||||
drop table t1;
|
||||
#
|
||||
# BUG# 13052 - mysqldump timestamp reloads broken
|
||||
#
|
||||
drop table if exists t1;
|
||||
create table t1 (`d` timestamp, unique (`d`));
|
||||
set time_zone='+00:00';
|
||||
@ -2416,6 +2532,9 @@ UNLOCK TABLES;
|
||||
drop table t1;
|
||||
set global time_zone=default;
|
||||
set time_zone=default;
|
||||
#
|
||||
# Test of fix to BUG 13146 - ansi quotes break loading of triggers
|
||||
#
|
||||
DROP TABLE IF EXISTS `t1 test`;
|
||||
DROP TABLE IF EXISTS `t2 test`;
|
||||
CREATE TABLE `t1 test` (
|
||||
@ -2479,6 +2598,9 @@ UNLOCK TABLES;
|
||||
DROP TRIGGER `test trig`;
|
||||
DROP TABLE `t1 test`;
|
||||
DROP TABLE `t2 test`;
|
||||
#
|
||||
# BUG# 12838 mysqldump -x with views exits with error
|
||||
#
|
||||
drop table if exists t1;
|
||||
create table t1 (a int, b varchar(32), c varchar(32));
|
||||
insert into t1 values (1, 'first value', 'xxxx');
|
||||
@ -2571,6 +2693,10 @@ drop view v2;
|
||||
drop view v0;
|
||||
drop view v1;
|
||||
drop table t1;
|
||||
#
|
||||
# BUG#14554 - mysqldump does not separate words "ROW" and "BEGIN"
|
||||
# for tables with trigger created in the IGNORE_SPACE sql mode.
|
||||
#
|
||||
SET @old_sql_mode = @@SQL_MODE;
|
||||
SET SQL_MODE = IGNORE_SPACE;
|
||||
CREATE TABLE t1 (a INT);
|
||||
@ -2626,6 +2752,9 @@ DELIMITER ;
|
||||
|
||||
DROP TRIGGER tr1;
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# Bug #13318: Bad result with empty field and --hex-blob
|
||||
#
|
||||
create table t1 (a binary(1), b blob);
|
||||
insert into t1 values ('','');
|
||||
|
||||
@ -2693,6 +2822,9 @@ UNLOCK TABLES;
|
||||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||
|
||||
drop table t1;
|
||||
#
|
||||
# Bug 14871 Invalid view dump output
|
||||
#
|
||||
create table t1 (a int);
|
||||
insert into t1 values (289), (298), (234), (456), (789);
|
||||
create definer = CURRENT_USER view v1 as select * from t1;
|
||||
@ -2719,6 +2851,9 @@ a
|
||||
789
|
||||
drop table t1;
|
||||
drop view v1, v2, v3, v4, v5;
|
||||
#
|
||||
# Bug #16878 dump of trigger
|
||||
#
|
||||
create table t1 (a int, created datetime);
|
||||
create table t2 (b int, created datetime);
|
||||
create trigger tr1 before insert on t1 for each row set
|
||||
@ -2741,6 +2876,9 @@ end AFTER # root@localhost
|
||||
drop trigger tr1;
|
||||
drop trigger tr2;
|
||||
drop table t1, t2;
|
||||
#
|
||||
# Bug#18462 mysqldump does not dump view structures correctly
|
||||
#
|
||||
create table t (qty int, price int);
|
||||
insert into t values(3, 50);
|
||||
insert into t values(5, 51);
|
||||
@ -2760,6 +2898,10 @@ mysqldump {
|
||||
drop view v1;
|
||||
drop view v2;
|
||||
drop table t;
|
||||
#
|
||||
# Bug#14857 Reading dump files with single statement stored routines fails.
|
||||
# fixed by patch for bug#16878
|
||||
#
|
||||
/*!50003 CREATE FUNCTION `f`() RETURNS bigint(20)
|
||||
return 42 */|
|
||||
/*!50003 CREATE PROCEDURE `p`()
|
||||
@ -2774,6 +2916,9 @@ p CREATE DEFINER=`root`@`localhost` PROCEDURE `p`()
|
||||
select 42
|
||||
drop function f;
|
||||
drop procedure p;
|
||||
#
|
||||
# Bug #17371 Unable to dump a schema with invalid views
|
||||
#
|
||||
create table t1 ( id serial );
|
||||
create view v1 as select * from t1;
|
||||
drop table t1;
|
||||
@ -2783,6 +2928,9 @@ mysqldump {
|
||||
|
||||
} mysqldump
|
||||
drop view v1;
|
||||
# BUG#17201 Spurious 'DROP DATABASE' in output,
|
||||
# also confusion between tables and views.
|
||||
# Example code from Markus Popp
|
||||
create database mysqldump_test_db;
|
||||
use mysqldump_test_db;
|
||||
create table t1 (id int);
|
||||
@ -2843,6 +2991,9 @@ USE `mysqldump_test_db`;
|
||||
drop view v1;
|
||||
drop table t1;
|
||||
drop database mysqldump_test_db;
|
||||
#
|
||||
# Bug21014 Segmentation fault of mysqldump on view
|
||||
#
|
||||
create database mysqldump_tables;
|
||||
use mysqldump_tables;
|
||||
create table basetable ( id serial, tag varchar(64) );
|
||||
@ -2876,6 +3027,9 @@ drop view nasishnasifu;
|
||||
drop database mysqldump_views;
|
||||
drop table mysqldump_tables.basetable;
|
||||
drop database mysqldump_tables;
|
||||
#
|
||||
# Bug20221 Dumping of multiple databases containing view(s) yields maleformed dumps
|
||||
#
|
||||
create database mysqldump_dba;
|
||||
use mysqldump_dba;
|
||||
create table t1 (f1 int, f2 int);
|
||||
@ -2908,6 +3062,9 @@ drop view v1;
|
||||
drop table t1;
|
||||
drop database mysqldump_dbb;
|
||||
use test;
|
||||
#
|
||||
# Bug#21215 mysqldump creating incomplete backups without warning
|
||||
#
|
||||
create user mysqltest_1@localhost;
|
||||
create table t1(a int, b varchar(34));
|
||||
reset master;
|
||||
@ -2924,6 +3081,12 @@ CREATE TABLE `t1` (
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
|
||||
drop table t1;
|
||||
drop user mysqltest_1@localhost;
|
||||
#
|
||||
# Bug #21527 mysqldump incorrectly tries to LOCK TABLES on the
|
||||
# information_schema database.
|
||||
#
|
||||
# Bug #21424 mysqldump failing to export/import views
|
||||
#
|
||||
create database mysqldump_myDB;
|
||||
use mysqldump_myDB;
|
||||
create user myDB_User;
|
||||
@ -2942,6 +3105,9 @@ revoke all privileges on mysqldump_myDB.* from myDB_User@localhost;
|
||||
drop user myDB_User;
|
||||
drop database mysqldump_myDB;
|
||||
flush privileges;
|
||||
# Bug #21424 continues from here.
|
||||
# Restore. Flush Privileges test ends.
|
||||
#
|
||||
use mysqldump_myDB;
|
||||
select * from mysqldump_myDB.v1;
|
||||
c1
|
||||
@ -2957,4 +3123,78 @@ revoke all privileges on mysqldump_myDB.* from myDB_User@localhost;
|
||||
drop user myDB_User;
|
||||
drop database mysqldump_myDB;
|
||||
use test;
|
||||
End of 5.0 tests
|
||||
#
|
||||
# BUG#13926: --order-by-primary fails if PKEY contains quote character
|
||||
#
|
||||
DROP TABLE IF EXISTS `t1`;
|
||||
CREATE TABLE `t1` (
|
||||
`a b` INT,
|
||||
`c"d` INT,
|
||||
`e``f` INT,
|
||||
PRIMARY KEY (`a b`, `c"d`, `e``f`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
|
||||
insert into t1 values (0815, 4711, 2006);
|
||||
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
|
||||
/*!40103 SET TIME_ZONE='+00:00' */;
|
||||
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO,ANSI' */;
|
||||
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
|
||||
DROP TABLE IF EXISTS "t1";
|
||||
CREATE TABLE "t1" (
|
||||
"a b" int(11) NOT NULL default '0',
|
||||
"c""d" int(11) NOT NULL default '0',
|
||||
"e`f" int(11) NOT NULL default '0',
|
||||
PRIMARY KEY ("a b","c""d","e`f")
|
||||
);
|
||||
|
||||
LOCK TABLES "t1" WRITE;
|
||||
/*!40000 ALTER TABLE "t1" DISABLE KEYS */;
|
||||
INSERT INTO "t1" VALUES (815,4711,2006);
|
||||
/*!40000 ALTER TABLE "t1" ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
|
||||
|
||||
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
|
||||
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||||
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||
|
||||
|
||||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||
/*!40101 SET NAMES utf8 */;
|
||||
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
|
||||
/*!40103 SET TIME_ZONE='+00:00' */;
|
||||
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
|
||||
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
|
||||
DROP TABLE IF EXISTS `t1`;
|
||||
CREATE TABLE `t1` (
|
||||
`a b` int(11) NOT NULL default '0',
|
||||
`c"d` int(11) NOT NULL default '0',
|
||||
`e``f` int(11) NOT NULL default '0',
|
||||
PRIMARY KEY (`a b`,`c"d`,`e``f`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
|
||||
|
||||
LOCK TABLES `t1` WRITE;
|
||||
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
|
||||
INSERT INTO `t1` VALUES (815,4711,2006);
|
||||
/*!40000 ALTER TABLE `t1` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
|
||||
|
||||
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
|
||||
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||||
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||||
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||
|
||||
DROP TABLE `t1`;
|
||||
#
|
||||
# End of 5.0 tests
|
||||
#
|
||||
|
@ -1,9 +1,20 @@
|
||||
#
|
||||
# Setup
|
||||
#
|
||||
stop slave;
|
||||
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
||||
reset master;
|
||||
reset slave;
|
||||
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
||||
start slave;
|
||||
use test;
|
||||
drop table if exists t1, t2, t3;
|
||||
#
|
||||
# See if queries that use both auto_increment and LAST_INSERT_ID()
|
||||
# are replicated well
|
||||
#
|
||||
# We also check how the foreign_key_check variable is replicated
|
||||
#
|
||||
create table t1(a int auto_increment, key(a));
|
||||
create table t2(b int auto_increment, c int, key(b));
|
||||
insert into t1 values (1),(2),(3);
|
||||
@ -38,6 +49,9 @@ select * from t2;
|
||||
b c
|
||||
5 0
|
||||
6 11
|
||||
#
|
||||
# check if INSERT SELECT in auto_increment is well replicated (bug #490)
|
||||
#
|
||||
drop table t2;
|
||||
drop table t1;
|
||||
create table t1(a int auto_increment, key(a));
|
||||
@ -68,12 +82,19 @@ b c
|
||||
9 13
|
||||
drop table t1;
|
||||
drop table t2;
|
||||
#
|
||||
# Bug#8412: Error codes reported in binary log for CHARACTER SET,
|
||||
# FOREIGN_KEY_CHECKS
|
||||
#
|
||||
SET TIMESTAMP=1000000000;
|
||||
CREATE TABLE t1 ( a INT UNIQUE );
|
||||
SET FOREIGN_KEY_CHECKS=0;
|
||||
INSERT INTO t1 VALUES (1),(1);
|
||||
ERROR 23000: Duplicate entry '1' for key 1
|
||||
drop table t1;
|
||||
#
|
||||
# Bug#14553: NULL in WHERE resets LAST_INSERT_ID
|
||||
#
|
||||
create table t1(a int auto_increment, key(a));
|
||||
create table t2(a int);
|
||||
insert into t1 (a) values (null);
|
||||
@ -87,6 +108,9 @@ a
|
||||
1
|
||||
drop table t1;
|
||||
drop table t2;
|
||||
#
|
||||
# End of 4.1 tests
|
||||
#
|
||||
drop function if exists bug15728;
|
||||
drop function if exists bug15728_insert;
|
||||
drop table if exists t1, t2;
|
||||
@ -210,3 +234,6 @@ n b
|
||||
2 100
|
||||
3 350
|
||||
drop table t1;
|
||||
|
||||
# End of 5.0 tests
|
||||
|
||||
|
@ -5,9 +5,15 @@ reset slave;
|
||||
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
||||
start slave;
|
||||
stop slave;
|
||||
#
|
||||
# Generate a big enough master's binlog to cause relay log rotations
|
||||
#
|
||||
create table t1 (a int);
|
||||
drop table t1;
|
||||
reset slave;
|
||||
#
|
||||
# Test 1
|
||||
#
|
||||
set global max_binlog_size=8192;
|
||||
set global max_relay_log_size=8192-1;
|
||||
select @@global.max_relay_log_size;
|
||||
@ -15,47 +21,251 @@ select @@global.max_relay_log_size;
|
||||
4096
|
||||
start slave;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 72952 # # master-bin.000001 Yes Yes 0 0 72952 # None 0 No #
|
||||
Slave_IO_State #
|
||||
Master_Host 127.0.0.1
|
||||
Master_User root
|
||||
Master_Port MASTER_PORT
|
||||
Connect_Retry 1
|
||||
Master_Log_File master-bin.000001
|
||||
Read_Master_Log_Pos 72952
|
||||
Relay_Log_File #
|
||||
Relay_Log_Pos #
|
||||
Relay_Master_Log_File master-bin.000001
|
||||
Slave_IO_Running Yes
|
||||
Slave_SQL_Running Yes
|
||||
Replicate_Do_DB
|
||||
Replicate_Ignore_DB
|
||||
Replicate_Do_Table
|
||||
Replicate_Ignore_Table
|
||||
Replicate_Wild_Do_Table
|
||||
Replicate_Wild_Ignore_Table
|
||||
Last_Errno 0
|
||||
Last_Error
|
||||
Skip_Counter 0
|
||||
Exec_Master_Log_Pos 72952
|
||||
Relay_Log_Space #
|
||||
Until_Condition None
|
||||
Until_Log_File
|
||||
Until_Log_Pos 0
|
||||
Master_SSL_Allowed No
|
||||
Master_SSL_CA_File
|
||||
Master_SSL_CA_Path
|
||||
Master_SSL_Cert
|
||||
Master_SSL_Cipher
|
||||
Master_SSL_Key
|
||||
Seconds_Behind_Master #
|
||||
#
|
||||
# Test 2
|
||||
#
|
||||
stop slave;
|
||||
reset slave;
|
||||
set global max_relay_log_size=(5*4096);
|
||||
select @@global.max_relay_log_size;
|
||||
@@global.max_relay_log_size
|
||||
20480
|
||||
@@global.max_relay_log_size 20480
|
||||
start slave;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 72952 # # master-bin.000001 Yes Yes 0 0 72952 # None 0 No #
|
||||
Slave_IO_State #
|
||||
Master_Host 127.0.0.1
|
||||
Master_User root
|
||||
Master_Port MASTER_PORT
|
||||
Connect_Retry 1
|
||||
Master_Log_File master-bin.000001
|
||||
Read_Master_Log_Pos 72952
|
||||
Relay_Log_File #
|
||||
Relay_Log_Pos #
|
||||
Relay_Master_Log_File master-bin.000001
|
||||
Slave_IO_Running Yes
|
||||
Slave_SQL_Running Yes
|
||||
Replicate_Do_DB
|
||||
Replicate_Ignore_DB
|
||||
Replicate_Do_Table
|
||||
Replicate_Ignore_Table
|
||||
Replicate_Wild_Do_Table
|
||||
Replicate_Wild_Ignore_Table
|
||||
Last_Errno 0
|
||||
Last_Error
|
||||
Skip_Counter 0
|
||||
Exec_Master_Log_Pos 72952
|
||||
Relay_Log_Space #
|
||||
Until_Condition None
|
||||
Until_Log_File
|
||||
Until_Log_Pos 0
|
||||
Master_SSL_Allowed No
|
||||
Master_SSL_CA_File
|
||||
Master_SSL_CA_Path
|
||||
Master_SSL_Cert
|
||||
Master_SSL_Cipher
|
||||
Master_SSL_Key
|
||||
Seconds_Behind_Master #
|
||||
#
|
||||
# Test 3: max_relay_log_size = 0
|
||||
#
|
||||
stop slave;
|
||||
reset slave;
|
||||
set global max_relay_log_size=0;
|
||||
select @@global.max_relay_log_size;
|
||||
@@global.max_relay_log_size
|
||||
0
|
||||
@@global.max_relay_log_size 0
|
||||
start slave;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 72952 # # master-bin.000001 Yes Yes 0 0 72952 # None 0 No #
|
||||
Slave_IO_State #
|
||||
Master_Host 127.0.0.1
|
||||
Master_User root
|
||||
Master_Port MASTER_PORT
|
||||
Connect_Retry 1
|
||||
Master_Log_File master-bin.000001
|
||||
Read_Master_Log_Pos 72952
|
||||
Relay_Log_File #
|
||||
Relay_Log_Pos #
|
||||
Relay_Master_Log_File master-bin.000001
|
||||
Slave_IO_Running Yes
|
||||
Slave_SQL_Running Yes
|
||||
Replicate_Do_DB
|
||||
Replicate_Ignore_DB
|
||||
Replicate_Do_Table
|
||||
Replicate_Ignore_Table
|
||||
Replicate_Wild_Do_Table
|
||||
Replicate_Wild_Ignore_Table
|
||||
Last_Errno 0
|
||||
Last_Error
|
||||
Skip_Counter 0
|
||||
Exec_Master_Log_Pos 72952
|
||||
Relay_Log_Space #
|
||||
Until_Condition None
|
||||
Until_Log_File
|
||||
Until_Log_Pos 0
|
||||
Master_SSL_Allowed No
|
||||
Master_SSL_CA_File
|
||||
Master_SSL_CA_Path
|
||||
Master_SSL_Cert
|
||||
Master_SSL_Cipher
|
||||
Master_SSL_Key
|
||||
Seconds_Behind_Master #
|
||||
#
|
||||
# Test 4: Tests below are mainly to ensure that we have not coded with wrong assumptions
|
||||
#
|
||||
stop slave;
|
||||
reset slave;
|
||||
flush logs;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 4 # # No No 0 0 0 # None 0 No #
|
||||
Slave_IO_State #
|
||||
Master_Host 127.0.0.1
|
||||
Master_User root
|
||||
Master_Port MASTER_PORT
|
||||
Connect_Retry 1
|
||||
Master_Log_File
|
||||
Read_Master_Log_Pos 4
|
||||
Relay_Log_File #
|
||||
Relay_Log_Pos #
|
||||
Relay_Master_Log_File
|
||||
Slave_IO_Running No
|
||||
Slave_SQL_Running No
|
||||
Replicate_Do_DB
|
||||
Replicate_Ignore_DB
|
||||
Replicate_Do_Table
|
||||
Replicate_Ignore_Table
|
||||
Replicate_Wild_Do_Table
|
||||
Replicate_Wild_Ignore_Table
|
||||
Last_Errno 0
|
||||
Last_Error
|
||||
Skip_Counter 0
|
||||
Exec_Master_Log_Pos 0
|
||||
Relay_Log_Space #
|
||||
Until_Condition None
|
||||
Until_Log_File
|
||||
Until_Log_Pos 0
|
||||
Master_SSL_Allowed No
|
||||
Master_SSL_CA_File
|
||||
Master_SSL_CA_Path
|
||||
Master_SSL_Cert
|
||||
Master_SSL_Cipher
|
||||
Master_SSL_Key
|
||||
Seconds_Behind_Master #
|
||||
#
|
||||
# Test 5
|
||||
#
|
||||
reset slave;
|
||||
start slave;
|
||||
flush logs;
|
||||
create table t1 (a int);
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 73038 # # master-bin.000001 Yes Yes 0 0 73038 # None 0 No #
|
||||
Slave_IO_State #
|
||||
Master_Host 127.0.0.1
|
||||
Master_User root
|
||||
Master_Port MASTER_PORT
|
||||
Connect_Retry 1
|
||||
Master_Log_File master-bin.000001
|
||||
Read_Master_Log_Pos 73038
|
||||
Relay_Log_File #
|
||||
Relay_Log_Pos #
|
||||
Relay_Master_Log_File master-bin.000001
|
||||
Slave_IO_Running Yes
|
||||
Slave_SQL_Running Yes
|
||||
Replicate_Do_DB
|
||||
Replicate_Ignore_DB
|
||||
Replicate_Do_Table
|
||||
Replicate_Ignore_Table
|
||||
Replicate_Wild_Do_Table
|
||||
Replicate_Wild_Ignore_Table
|
||||
Last_Errno 0
|
||||
Last_Error
|
||||
Skip_Counter 0
|
||||
Exec_Master_Log_Pos 73038
|
||||
Relay_Log_Space #
|
||||
Until_Condition None
|
||||
Until_Log_File
|
||||
Until_Log_Pos 0
|
||||
Master_SSL_Allowed No
|
||||
Master_SSL_CA_File
|
||||
Master_SSL_CA_Path
|
||||
Master_SSL_Cert
|
||||
Master_SSL_Cipher
|
||||
Master_SSL_Key
|
||||
Seconds_Behind_Master #
|
||||
#
|
||||
# Test 6: one more rotation, to be sure Relay_Log_Space is correctly updated
|
||||
#
|
||||
flush logs;
|
||||
drop table t1;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 73114 # # master-bin.000001 Yes Yes 0 0 73114 # None 0 No #
|
||||
Slave_IO_State #
|
||||
Master_Host 127.0.0.1
|
||||
Master_User root
|
||||
Master_Port MASTER_PORT
|
||||
Connect_Retry 1
|
||||
Master_Log_File master-bin.000001
|
||||
Read_Master_Log_Pos 73114
|
||||
Relay_Log_File #
|
||||
Relay_Log_Pos #
|
||||
Relay_Master_Log_File master-bin.000001
|
||||
Slave_IO_Running Yes
|
||||
Slave_SQL_Running Yes
|
||||
Replicate_Do_DB
|
||||
Replicate_Ignore_DB
|
||||
Replicate_Do_Table
|
||||
Replicate_Ignore_Table
|
||||
Replicate_Wild_Do_Table
|
||||
Replicate_Wild_Ignore_Table
|
||||
Last_Errno 0
|
||||
Last_Error
|
||||
Skip_Counter 0
|
||||
Exec_Master_Log_Pos 73114
|
||||
Relay_Log_Space #
|
||||
Until_Condition None
|
||||
Until_Log_File
|
||||
Until_Log_Pos 0
|
||||
Master_SSL_Allowed No
|
||||
Master_SSL_CA_File
|
||||
Master_SSL_CA_Path
|
||||
Master_SSL_Cert
|
||||
Master_SSL_Cipher
|
||||
Master_SSL_Key
|
||||
Seconds_Behind_Master #
|
||||
flush logs;
|
||||
show master status;
|
||||
File Position Binlog_Do_DB Binlog_Ignore_DB
|
||||
master-bin.000002 98
|
||||
File master-bin.000002
|
||||
Position 98
|
||||
Binlog_Do_DB
|
||||
Binlog_Ignore_DB
|
||||
#
|
||||
# End of 4.1 tests
|
||||
#
|
||||
|
@ -91,3 +91,19 @@ c
|
||||
---> Cleaning up...
|
||||
DROP VIEW v1;
|
||||
DROP TABLE t1;
|
||||
create table t1(a int, b int);
|
||||
insert into t1 values (1, 1), (1, 2), (1, 3);
|
||||
create view v1(a, b) as select a, sum(b) from t1 group by a;
|
||||
explain v1;
|
||||
Field Type Null Key Default Extra
|
||||
a int(11) YES NULL
|
||||
b decimal(32,0) YES NULL
|
||||
show create table v1;
|
||||
View Create View
|
||||
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a`,sum(`t1`.`b`) AS `b` from `t1` group by `t1`.`a`
|
||||
select * from v1;
|
||||
a b
|
||||
1 6
|
||||
drop table t1;
|
||||
drop view v1;
|
||||
End of 5.0 tests
|
||||
|
@ -16,9 +16,9 @@ INSERT INTO t1 VALUES (1), (2);
|
||||
--exec $MYSQL_DUMP --skip-create --skip-comments -X test t1
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Bug #2005
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #2005
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (a decimal(64, 20));
|
||||
INSERT INTO t1 VALUES ("1234567890123456789012345678901234567890"),
|
||||
@ -26,9 +26,9 @@ INSERT INTO t1 VALUES ("1234567890123456789012345678901234567890"),
|
||||
--exec $MYSQL_DUMP --compact test t1
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Bug #2055
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #2055
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (a double);
|
||||
INSERT INTO t1 VALUES ('-9e999999');
|
||||
@ -38,9 +38,9 @@ INSERT INTO t1 VALUES ('-9e999999');
|
||||
--exec $MYSQL_DUMP --compact test t1
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Bug #3361 mysqldump quotes DECIMAL values inconsistently
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #3361 mysqldump quotes DECIMAL values inconsistently
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (a DECIMAL(10,5), b FLOAT);
|
||||
|
||||
@ -69,28 +69,28 @@ INSERT INTO t1 VALUES (1, "test", "tes"), (2, "TEST", "TES");
|
||||
--exec $MYSQL_DUMP --skip-create --compact -X test t1
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Bug #1707
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #1707
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (`a"b"` char(2));
|
||||
INSERT INTO t1 VALUES ("1\""), ("\"2");
|
||||
--exec $MYSQL_DUMP --compact --skip-create -X test t1
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Bug #1994
|
||||
# Bug #4261
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #1994
|
||||
--echo # Bug #4261
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (a VARCHAR(255)) DEFAULT CHARSET koi8r;
|
||||
INSERT INTO t1 VALUES (_koi8r x'C1C2C3C4C5'), (NULL);
|
||||
--exec $MYSQL_DUMP --skip-comments --skip-extended-insert test t1
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Bug #2634
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #2634
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (a int) ENGINE=MYISAM;
|
||||
INSERT INTO t1 VALUES (1), (2);
|
||||
@ -98,17 +98,17 @@ INSERT INTO t1 VALUES (1), (2);
|
||||
--exec $MYSQL_DUMP --skip-comments --compatible=mysql323 test t1
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Bug #2592 'mysqldump doesn't quote "tricky" names correctly'
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #2592 'mysqldump doesn't quote "tricky" names correctly'
|
||||
--echo #
|
||||
|
||||
create table ```a` (i int);
|
||||
--exec $MYSQL_DUMP --compact test
|
||||
drop table ```a`;
|
||||
|
||||
#
|
||||
# Bug #2591 "mysqldump quotes names inconsistently"
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #2591 "mysqldump quotes names inconsistently"
|
||||
--echo #
|
||||
|
||||
create table t1(a int);
|
||||
--exec $MYSQL_DUMP --comments=0 test
|
||||
@ -119,9 +119,9 @@ set global sql_mode='ANSI_QUOTES';
|
||||
set global sql_mode='';
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# Bug #2705 'mysqldump --tab extra output'
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #2705 'mysqldump --tab extra output'
|
||||
--echo #
|
||||
|
||||
create table t1(a int);
|
||||
insert into t1 values (1),(2),(3);
|
||||
@ -135,9 +135,9 @@ insert into t1 values (1),(2),(3);
|
||||
--exec rm $MYSQLTEST_VARDIR/tmp/t1.txt
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# Bug #6101: create database problem
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #6101: create database problem
|
||||
--echo #
|
||||
|
||||
--exec $MYSQL_DUMP --skip-comments --databases test
|
||||
|
||||
@ -145,32 +145,34 @@ create database mysqldump_test_db character set latin2 collate latin2_bin;
|
||||
--exec $MYSQL_DUMP --skip-comments --databases mysqldump_test_db
|
||||
drop database mysqldump_test_db;
|
||||
|
||||
#
|
||||
# Bug #7020
|
||||
# Check that we don't dump in UTF8 in compatible mode by default,
|
||||
# but use the default compiled values, or the values given in
|
||||
# --default-character-set=xxx. However, we should dump in UTF8
|
||||
# if it is explicitely set.
|
||||
--echo #
|
||||
--echo # Bug #7020
|
||||
--echo # Check that we don't dump in UTF8 in compatible mode by default,
|
||||
--echo # but use the default compiled values, or the values given in
|
||||
--echo # --default-character-set=xxx. However, we should dump in UTF8
|
||||
--echo # if it is explicitely set.
|
||||
|
||||
CREATE TABLE t1 (a CHAR(10));
|
||||
INSERT INTO t1 VALUES (_latin1 'ÄÖÜß');
|
||||
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --skip-comments test t1
|
||||
#
|
||||
# Bug#8063: make test mysqldump [ fail ]
|
||||
# We cannot tes this command because its output depends
|
||||
# on --default-character-set incompiled into "mysqldump" program.
|
||||
# If the future we can move this command into a separate test with
|
||||
# checking that "mysqldump" is compiled with "latin1"
|
||||
#
|
||||
|
||||
--echo #
|
||||
--echo # Bug#8063: make test mysqldump [ fail ]
|
||||
--echo # We cannot tes this command because its output depends
|
||||
--echo # on --default-character-set incompiled into "mysqldump" program.
|
||||
--echo # If the future we can move this command into a separate test with
|
||||
--echo # checking that "mysqldump" is compiled with "latin1"
|
||||
--echo #
|
||||
|
||||
#--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --skip-comments --compatible=mysql323 test t1
|
||||
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --skip-comments --compatible=mysql323 --default-character-set=cp850 test t1
|
||||
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --skip-comments --default-character-set=cp850 --compatible=mysql323 test t1
|
||||
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --skip-comments --default-character-set=utf8 --compatible=mysql323 test t1
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# WL #2319: Exclude Tables from dump
|
||||
#
|
||||
--echo #
|
||||
--echo # WL #2319: Exclude Tables from dump
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (a int);
|
||||
CREATE TABLE t2 (a int);
|
||||
@ -180,18 +182,18 @@ INSERT INTO t2 VALUES (4),(5),(6);
|
||||
DROP TABLE t1;
|
||||
DROP TABLE t2;
|
||||
|
||||
#
|
||||
# Bug #8830
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #8830
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (`b` blob);
|
||||
INSERT INTO `t1` VALUES (0x602010000280100005E71A);
|
||||
--exec $MYSQL_DUMP --skip-extended-insert --hex-blob test --skip-comments t1
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Test for --insert-ignore
|
||||
#
|
||||
--echo #
|
||||
--echo # Test for --insert-ignore
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (a int);
|
||||
INSERT INTO t1 VALUES (1),(2),(3);
|
||||
@ -200,10 +202,10 @@ INSERT INTO t1 VALUES (4),(5),(6);
|
||||
--exec $MYSQL_DUMP --skip-comments --insert-ignore --delayed-insert test t1
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Bug #10286: mysqldump -c crashes on table that has many fields with long
|
||||
# names
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #10286: mysqldump -c crashes on table that has many fields with long
|
||||
--echo # names
|
||||
--echo #
|
||||
create table t1 (
|
||||
F_c4ca4238a0b923820dcc509a6f75849b int,
|
||||
F_c81e728d9d4c2f636f067f89cc14862c int,
|
||||
@ -539,18 +541,18 @@ insert into t1 (F_8d3bba7425e7c98c50f52ca1b52d3735) values (1);
|
||||
--exec $MYSQL_DUMP --skip-comments -c test
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# Test for --add-drop-database
|
||||
#
|
||||
--echo #
|
||||
--echo # Test for --add-drop-database
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (a int);
|
||||
INSERT INTO t1 VALUES (1),(2),(3);
|
||||
--exec $MYSQL_DUMP --add-drop-database --skip-comments --databases test
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Bug #9558 mysqldump --no-data db t1 t2 format still dumps data
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #9558 mysqldump --no-data db t1 t2 format still dumps data
|
||||
--echo #
|
||||
|
||||
CREATE DATABASE mysqldump_test_db;
|
||||
USE mysqldump_test_db;
|
||||
@ -565,11 +567,11 @@ INSERT INTO t2 VALUES (1), (2);
|
||||
DROP TABLE t1, t2;
|
||||
DROP DATABASE mysqldump_test_db;
|
||||
|
||||
#
|
||||
# Testing with tables and databases that don't exists
|
||||
# or contains illegal characters
|
||||
# (Bug #9358 mysqldump crashes if tablename starts with \)
|
||||
#
|
||||
--echo #
|
||||
--echo # Testing with tables and databases that don't exists
|
||||
--echo # or contains illegal characters
|
||||
--echo # (Bug #9358 mysqldump crashes if tablename starts with \)
|
||||
--echo #
|
||||
create database mysqldump_test_db;
|
||||
use mysqldump_test_db;
|
||||
create table t1(a varchar(30) primary key, b int not null);
|
||||
@ -629,9 +631,9 @@ drop database mysqldump_test_db;
|
||||
use test;
|
||||
|
||||
|
||||
#
|
||||
# Bug #9657 mysqldump xml ( -x ) does not format NULL fields correctly
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #9657 mysqldump xml ( -x ) does not format NULL fields correctly
|
||||
--echo #
|
||||
|
||||
create table t1 (a int(10));
|
||||
create table t2 (pk int primary key auto_increment,
|
||||
@ -641,9 +643,10 @@ insert into t2 (a, b) values (NULL, NULL),(10, NULL),(NULL, "twenty"),(30, "thir
|
||||
--exec $MYSQL_DUMP --skip-comments --xml --no-create-info test
|
||||
drop table t1, t2;
|
||||
|
||||
#
|
||||
# BUG #12123
|
||||
#
|
||||
--echo #
|
||||
--echo # BUG #12123
|
||||
--echo #
|
||||
|
||||
create table t1 (a text character set utf8, b text character set latin1);
|
||||
insert t1 values (0x4F736E616272C3BC636B, 0x4BF66C6E);
|
||||
select * from t1;
|
||||
@ -654,15 +657,16 @@ select * from t1;
|
||||
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# BUG#15328 Segmentation fault occured if my.cnf is invalid for escape sequence
|
||||
#
|
||||
--echo #
|
||||
--echo # BUG#15328 Segmentation fault occured if my.cnf is invalid for escape sequence
|
||||
--echo #
|
||||
|
||||
--exec $MYSQL_MY_PRINT_DEFAULTS --config-file=$MYSQL_TEST_DIR/std_data/bug15328.cnf mysqldump
|
||||
|
||||
#
|
||||
# BUG #19025 mysqldump doesn't correctly dump "auto_increment = [int]"
|
||||
#
|
||||
--echo #
|
||||
--echo # BUG #19025 mysqldump doesn't correctly dump "auto_increment = [int]"
|
||||
--echo #
|
||||
|
||||
create table `t1` (
|
||||
t1_name varchar(255) default null,
|
||||
t1_id int(10) unsigned not null auto_increment,
|
||||
@ -689,9 +693,9 @@ show create table `t1`;
|
||||
|
||||
drop table `t1`;
|
||||
|
||||
#
|
||||
# Bug #18536: wrong table order
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #18536: wrong table order
|
||||
--echo #
|
||||
|
||||
create table t1(a int);
|
||||
create table t2(a int);
|
||||
@ -700,9 +704,10 @@ create table t3(a int);
|
||||
--exec $MYSQL_DUMP --skip-comments --force --no-data test t3 t1 non_existing t2
|
||||
drop table t1, t2, t3;
|
||||
|
||||
#
|
||||
# Bug #21288: mysqldump segmentation fault when using --where
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #21288: mysqldump segmentation fault when using --where
|
||||
--echo #
|
||||
|
||||
create table t1 (a int);
|
||||
--error 2
|
||||
--exec $MYSQL_DUMP --skip-comments --force test t1 --where='xx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' 2>&1
|
||||
@ -710,9 +715,9 @@ drop table t1;
|
||||
|
||||
--echo End of 4.1 tests
|
||||
|
||||
#
|
||||
# Bug #10213 mysqldump crashes when dumping VIEWs(on MacOS X)
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #10213 mysqldump crashes when dumping VIEWs(on MacOS X)
|
||||
--echo #
|
||||
|
||||
create database db1;
|
||||
use db1;
|
||||
@ -734,9 +739,9 @@ drop view v2;
|
||||
drop database db1;
|
||||
use test;
|
||||
|
||||
#
|
||||
# Bug 10713 mysqldump includes database in create view and referenced tables
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug 10713 mysqldump includes database in create view and referenced tables
|
||||
--echo #
|
||||
|
||||
# create table and views in db2
|
||||
create database db2;
|
||||
@ -779,9 +784,9 @@ create view v1 as select * from t1;
|
||||
drop view v1;
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# Bug #10213 mysqldump crashes when dumping VIEWs(on MacOS X)
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #10213 mysqldump crashes when dumping VIEWs(on MacOS X)
|
||||
--echo #
|
||||
|
||||
create database mysqldump_test_db;
|
||||
use mysqldump_test_db;
|
||||
@ -803,18 +808,18 @@ drop view v2;
|
||||
drop database mysqldump_test_db;
|
||||
use test;
|
||||
|
||||
#
|
||||
# Bug #9756
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #9756
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (a char(10));
|
||||
INSERT INTO t1 VALUES ('\'');
|
||||
--exec $MYSQL_DUMP --skip-comments test t1
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Bug #10927 mysqldump: Can't reload dump with view that consist of other view
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #10927 mysqldump: Can't reload dump with view that consist of other view
|
||||
--echo #
|
||||
|
||||
create table t1(a int, b int, c varchar(30));
|
||||
|
||||
@ -834,9 +839,9 @@ select v3.a from v3, v1 where v1.a=v3.a and v3.b=3 limit 1;
|
||||
drop view v1, v2, v3;
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# Test for dumping triggers
|
||||
#
|
||||
--echo #
|
||||
--echo # Test for dumping triggers
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (a int, b bigint default NULL);
|
||||
CREATE TABLE t2 (a int);
|
||||
@ -884,9 +889,9 @@ show tables;
|
||||
show triggers;
|
||||
DROP TABLE t1, t2;
|
||||
|
||||
#
|
||||
# Bugs #9136, #12917: problems with --defaults-extra-file option
|
||||
#
|
||||
--echo #
|
||||
--echo # Bugs #9136, #12917: problems with --defaults-extra-file option
|
||||
--echo #
|
||||
|
||||
--system echo '[mysqltest1]' > $MYSQLTEST_VARDIR/tmp/tmp.cnf
|
||||
--system echo 'port=1234' >> $MYSQLTEST_VARDIR/tmp/tmp.cnf
|
||||
@ -894,9 +899,9 @@ DROP TABLE t1, t2;
|
||||
--exec $MYSQL_MY_PRINT_DEFAULTS -e $MYSQLTEST_VARDIR/tmp/tmp.cnf mysqltest1 mysqltest1
|
||||
--system rm $MYSQLTEST_VARDIR/tmp/tmp.cnf
|
||||
|
||||
#
|
||||
# Test of fix to BUG 12597
|
||||
#
|
||||
--echo #
|
||||
--echo # Test of fix to BUG 12597
|
||||
--echo #
|
||||
|
||||
DROP TABLE IF EXISTS `test1`;
|
||||
CREATE TABLE `test1` (
|
||||
@ -932,9 +937,9 @@ DROP TRIGGER testref;
|
||||
DROP TABLE test1;
|
||||
DROP TABLE test2;
|
||||
|
||||
#
|
||||
# BUG#9056 - mysqldump does not dump routines
|
||||
#
|
||||
--echo #
|
||||
--echo # BUG#9056 - mysqldump does not dump routines
|
||||
--echo #
|
||||
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS t1;
|
||||
@ -981,9 +986,10 @@ DROP PROCEDURE bug9056_proc2;
|
||||
DROP PROCEDURE `a'b`;
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# BUG# 13052 - mysqldump timestamp reloads broken
|
||||
#
|
||||
--echo #
|
||||
--echo # BUG# 13052 - mysqldump timestamp reloads broken
|
||||
--echo #
|
||||
|
||||
--disable_warnings
|
||||
drop table if exists t1;
|
||||
--enable_warnings
|
||||
@ -1003,9 +1009,10 @@ drop table t1;
|
||||
set global time_zone=default;
|
||||
set time_zone=default;
|
||||
|
||||
#
|
||||
# Test of fix to BUG 13146 - ansi quotes break loading of triggers
|
||||
#
|
||||
--echo #
|
||||
--echo # Test of fix to BUG 13146 - ansi quotes break loading of triggers
|
||||
--echo #
|
||||
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS `t1 test`;
|
||||
DROP TABLE IF EXISTS `t2 test`;
|
||||
@ -1036,9 +1043,9 @@ DROP TRIGGER `test trig`;
|
||||
DROP TABLE `t1 test`;
|
||||
DROP TABLE `t2 test`;
|
||||
|
||||
#
|
||||
# BUG# 12838 mysqldump -x with views exits with error
|
||||
#
|
||||
--echo #
|
||||
--echo # BUG# 12838 mysqldump -x with views exits with error
|
||||
--echo #
|
||||
|
||||
--disable_warnings
|
||||
drop table if exists t1;
|
||||
@ -1060,10 +1067,10 @@ drop view v0;
|
||||
drop view v1;
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# BUG#14554 - mysqldump does not separate words "ROW" and "BEGIN"
|
||||
# for tables with trigger created in the IGNORE_SPACE sql mode.
|
||||
#
|
||||
--echo #
|
||||
--echo # BUG#14554 - mysqldump does not separate words "ROW" and "BEGIN"
|
||||
--echo # for tables with trigger created in the IGNORE_SPACE sql mode.
|
||||
--echo #
|
||||
|
||||
SET @old_sql_mode = @@SQL_MODE;
|
||||
SET SQL_MODE = IGNORE_SPACE;
|
||||
@ -1084,18 +1091,19 @@ SET SQL_MODE = @old_sql_mode;
|
||||
DROP TRIGGER tr1;
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Bug #13318: Bad result with empty field and --hex-blob
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #13318: Bad result with empty field and --hex-blob
|
||||
--echo #
|
||||
|
||||
create table t1 (a binary(1), b blob);
|
||||
insert into t1 values ('','');
|
||||
--exec $MYSQL_DUMP --skip-comments --skip-extended-insert --hex-blob test t1
|
||||
--exec $MYSQL_DUMP --skip-comments --hex-blob test t1
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# Bug 14871 Invalid view dump output
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug 14871 Invalid view dump output
|
||||
--echo #
|
||||
|
||||
create table t1 (a int);
|
||||
insert into t1 values (289), (298), (234), (456), (789);
|
||||
@ -1122,9 +1130,9 @@ select * from v3 order by a;
|
||||
drop table t1;
|
||||
drop view v1, v2, v3, v4, v5;
|
||||
|
||||
#
|
||||
# Bug #16878 dump of trigger
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #16878 dump of trigger
|
||||
--echo #
|
||||
|
||||
create table t1 (a int, created datetime);
|
||||
create table t2 (b int, created datetime);
|
||||
@ -1152,11 +1160,10 @@ drop trigger tr1;
|
||||
drop trigger tr2;
|
||||
drop table t1, t2;
|
||||
|
||||
--echo #
|
||||
--echo # Bug#18462 mysqldump does not dump view structures correctly
|
||||
--echo #
|
||||
|
||||
#
|
||||
# Bug#18462 mysqldump does not dump view structures correctly
|
||||
#
|
||||
#
|
||||
create table t (qty int, price int);
|
||||
insert into t values(3, 50);
|
||||
insert into t values(5, 51);
|
||||
@ -1173,11 +1180,11 @@ drop view v2;
|
||||
drop table t;
|
||||
|
||||
|
||||
#
|
||||
# Bug#14857 Reading dump files with single statement stored routines fails.
|
||||
# fixed by patch for bug#16878
|
||||
#
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug#14857 Reading dump files with single statement stored routines fails.
|
||||
--echo # fixed by patch for bug#16878
|
||||
--echo #
|
||||
|
||||
DELIMITER |;
|
||||
/*!50003 CREATE FUNCTION `f`() RETURNS bigint(20)
|
||||
return 42 */|
|
||||
@ -1189,10 +1196,10 @@ show create procedure p;
|
||||
drop function f;
|
||||
drop procedure p;
|
||||
|
||||
#
|
||||
# Bug #17371 Unable to dump a schema with invalid views
|
||||
#
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #17371 Unable to dump a schema with invalid views
|
||||
--echo #
|
||||
|
||||
create table t1 ( id serial );
|
||||
create view v1 as select * from t1;
|
||||
drop table t1;
|
||||
@ -1203,9 +1210,9 @@ drop table t1;
|
||||
--echo } mysqldump
|
||||
drop view v1;
|
||||
|
||||
# BUG#17201 Spurious 'DROP DATABASE' in output,
|
||||
# also confusion between tables and views.
|
||||
# Example code from Markus Popp
|
||||
--echo # BUG#17201 Spurious 'DROP DATABASE' in output,
|
||||
--echo # also confusion between tables and views.
|
||||
--echo # Example code from Markus Popp
|
||||
|
||||
create database mysqldump_test_db;
|
||||
use mysqldump_test_db;
|
||||
@ -1220,7 +1227,9 @@ drop view v1;
|
||||
drop table t1;
|
||||
drop database mysqldump_test_db;
|
||||
|
||||
# Bug21014 Segmentation fault of mysqldump on view
|
||||
--echo #
|
||||
--echo # Bug21014 Segmentation fault of mysqldump on view
|
||||
--echo #
|
||||
|
||||
create database mysqldump_tables;
|
||||
use mysqldump_tables;
|
||||
@ -1237,7 +1246,9 @@ drop database mysqldump_views;
|
||||
drop table mysqldump_tables.basetable;
|
||||
drop database mysqldump_tables;
|
||||
|
||||
# Bug20221 Dumping of multiple databases containing view(s) yields maleformed dumps
|
||||
--echo #
|
||||
--echo # Bug20221 Dumping of multiple databases containing view(s) yields maleformed dumps
|
||||
--echo #
|
||||
|
||||
create database mysqldump_dba;
|
||||
use mysqldump_dba;
|
||||
@ -1276,9 +1287,9 @@ drop table t1;
|
||||
drop database mysqldump_dbb;
|
||||
use test;
|
||||
|
||||
#
|
||||
# Bug#21215 mysqldump creating incomplete backups without warning
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug#21215 mysqldump creating incomplete backups without warning
|
||||
--echo #
|
||||
|
||||
# Create user without sufficient privs to perform the requested operation
|
||||
create user mysqltest_1@localhost;
|
||||
@ -1318,12 +1329,12 @@ grant REPLICATION CLIENT on *.* to mysqltest_1@localhost;
|
||||
drop table t1;
|
||||
drop user mysqltest_1@localhost;
|
||||
|
||||
#
|
||||
# Bug #21527 mysqldump incorrectly tries to LOCK TABLES on the
|
||||
# information_schema database.
|
||||
#
|
||||
# Bug #21424 mysqldump failing to export/import views
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug #21527 mysqldump incorrectly tries to LOCK TABLES on the
|
||||
--echo # information_schema database.
|
||||
--echo #
|
||||
--echo # Bug #21424 mysqldump failing to export/import views
|
||||
--echo #
|
||||
|
||||
# Do as root
|
||||
connect (root,localhost,root,,test,$MASTER_MYPORT,$MASTER_MYSOCK);
|
||||
@ -1357,8 +1368,10 @@ drop user myDB_User;
|
||||
drop database mysqldump_myDB;
|
||||
flush privileges;
|
||||
|
||||
# Bug #21424 continues from here.
|
||||
# Restore. Flush Privileges test ends.
|
||||
--echo # Bug #21424 continues from here.
|
||||
--echo # Restore. Flush Privileges test ends.
|
||||
--echo #
|
||||
|
||||
--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug21527.sql;
|
||||
|
||||
# Do as a user
|
||||
@ -1380,4 +1393,25 @@ drop user myDB_User;
|
||||
drop database mysqldump_myDB;
|
||||
use test;
|
||||
|
||||
--echo End of 5.0 tests
|
||||
--echo #
|
||||
--echo # BUG#13926: --order-by-primary fails if PKEY contains quote character
|
||||
--echo #
|
||||
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS `t1`;
|
||||
CREATE TABLE `t1` (
|
||||
`a b` INT,
|
||||
`c"d` INT,
|
||||
`e``f` INT,
|
||||
PRIMARY KEY (`a b`, `c"d`, `e``f`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
|
||||
insert into t1 values (0815, 4711, 2006);
|
||||
|
||||
--exec $MYSQL_DUMP --skip-comments --compatible=ansi --order-by-primary test t1
|
||||
--exec $MYSQL_DUMP --skip-comments --order-by-primary test t1
|
||||
DROP TABLE `t1`;
|
||||
--enable_warnings
|
||||
|
||||
--echo #
|
||||
--echo # End of 5.0 tests
|
||||
--echo #
|
||||
|
@ -1,10 +1,21 @@
|
||||
# See if queries that use both auto_increment and LAST_INSERT_ID()
|
||||
# are replicated well
|
||||
|
||||
# We also check how the foreign_key_check variable is replicated
|
||||
--echo #
|
||||
--echo # Setup
|
||||
--echo #
|
||||
|
||||
source include/master-slave.inc;
|
||||
source include/have_innodb.inc;
|
||||
use test;
|
||||
--disable_warnings
|
||||
drop table if exists t1, t2, t3;
|
||||
--enable_warnings
|
||||
|
||||
--echo #
|
||||
--echo # See if queries that use both auto_increment and LAST_INSERT_ID()
|
||||
--echo # are replicated well
|
||||
--echo #
|
||||
--echo # We also check how the foreign_key_check variable is replicated
|
||||
--echo #
|
||||
|
||||
connection master;
|
||||
create table t1(a int auto_increment, key(a));
|
||||
create table t2(b int auto_increment, c int, key(b));
|
||||
@ -39,7 +50,9 @@ select * from t1;
|
||||
select * from t2;
|
||||
connection master;
|
||||
|
||||
# check if INSERT SELECT in auto_increment is well replicated (bug #490)
|
||||
--echo #
|
||||
--echo # check if INSERT SELECT in auto_increment is well replicated (bug #490)
|
||||
--echo #
|
||||
|
||||
drop table t2;
|
||||
drop table t1;
|
||||
@ -62,10 +75,11 @@ save_master_pos;
|
||||
connection slave;
|
||||
sync_with_master;
|
||||
|
||||
#
|
||||
# Bug#8412: Error codes reported in binary log for CHARACTER SET,
|
||||
# FOREIGN_KEY_CHECKS
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug#8412: Error codes reported in binary log for CHARACTER SET,
|
||||
--echo # FOREIGN_KEY_CHECKS
|
||||
--echo #
|
||||
|
||||
connection master;
|
||||
SET TIMESTAMP=1000000000;
|
||||
CREATE TABLE t1 ( a INT UNIQUE );
|
||||
@ -78,9 +92,10 @@ connection master;
|
||||
drop table t1;
|
||||
sync_slave_with_master;
|
||||
|
||||
#
|
||||
# Bug#14553: NULL in WHERE resets LAST_INSERT_ID
|
||||
#
|
||||
--echo #
|
||||
--echo # Bug#14553: NULL in WHERE resets LAST_INSERT_ID
|
||||
--echo #
|
||||
|
||||
connection master;
|
||||
create table t1(a int auto_increment, key(a));
|
||||
create table t2(a int);
|
||||
@ -95,8 +110,10 @@ connection master;
|
||||
drop table t1;
|
||||
drop table t2;
|
||||
sync_slave_with_master;
|
||||
# End of 4.1 tests
|
||||
|
||||
--echo #
|
||||
--echo # End of 4.1 tests
|
||||
--echo #
|
||||
|
||||
#
|
||||
# BUG#15728: LAST_INSERT_ID function inside a stored function returns 0
|
||||
@ -227,7 +244,10 @@ select * from t1 order by n;
|
||||
|
||||
connection master;
|
||||
drop table t1;
|
||||
|
||||
# End of 5.0 tests
|
||||
|
||||
sync_slave_with_master;
|
||||
|
||||
--echo
|
||||
--echo # End of 5.0 tests
|
||||
--echo
|
||||
|
||||
|
||||
|
@ -7,7 +7,11 @@ source include/master-slave.inc;
|
||||
connection slave;
|
||||
stop slave;
|
||||
connection master;
|
||||
# Generate a big enough master's binlog to cause relay log rotations
|
||||
|
||||
--echo #
|
||||
--echo # Generate a big enough master's binlog to cause relay log rotations
|
||||
--echo #
|
||||
|
||||
create table t1 (a int);
|
||||
let $1=800;
|
||||
disable_query_log;
|
||||
@ -23,6 +27,11 @@ drop table t1;
|
||||
save_master_pos;
|
||||
connection slave;
|
||||
reset slave;
|
||||
|
||||
--echo #
|
||||
--echo # Test 1
|
||||
--echo #
|
||||
|
||||
set global max_binlog_size=8192;
|
||||
set global max_relay_log_size=8192-1; # mapped to 4096
|
||||
select @@global.max_relay_log_size;
|
||||
@ -30,7 +39,13 @@ start slave;
|
||||
sync_with_master;
|
||||
--replace_result $MASTER_MYPORT MASTER_PORT
|
||||
--replace_column 1 # 8 # 9 # 23 # 33 #
|
||||
--vertical_results
|
||||
show slave status;
|
||||
|
||||
--echo #
|
||||
--echo # Test 2
|
||||
--echo #
|
||||
|
||||
stop slave;
|
||||
reset slave;
|
||||
set global max_relay_log_size=(5*4096);
|
||||
@ -39,7 +54,13 @@ start slave;
|
||||
sync_with_master;
|
||||
--replace_result $MASTER_MYPORT MASTER_PORT
|
||||
--replace_column 1 # 8 # 9 # 23 # 33 #
|
||||
--vertical_results
|
||||
show slave status;
|
||||
|
||||
--echo #
|
||||
--echo # Test 3: max_relay_log_size = 0
|
||||
--echo #
|
||||
|
||||
stop slave;
|
||||
reset slave;
|
||||
set global max_relay_log_size=0;
|
||||
@ -48,9 +69,12 @@ start slave;
|
||||
sync_with_master;
|
||||
--replace_result $MASTER_MYPORT MASTER_PORT
|
||||
--replace_column 1 # 8 # 9 # 23 # 33 #
|
||||
--vertical_results
|
||||
show slave status;
|
||||
|
||||
# Tests below are mainly to ensure that we have not coded with wrong assumptions
|
||||
--echo #
|
||||
--echo # Test 4: Tests below are mainly to ensure that we have not coded with wrong assumptions
|
||||
--echo #
|
||||
|
||||
stop slave;
|
||||
reset slave;
|
||||
@ -59,8 +83,13 @@ reset slave;
|
||||
flush logs;
|
||||
--replace_result $MASTER_MYPORT MASTER_PORT
|
||||
--replace_column 1 # 8 # 9 # 23 # 33 #
|
||||
--vertical_results
|
||||
show slave status;
|
||||
|
||||
--echo #
|
||||
--echo # Test 5
|
||||
--echo #
|
||||
|
||||
reset slave;
|
||||
start slave;
|
||||
sync_with_master;
|
||||
@ -75,8 +104,13 @@ connection slave;
|
||||
sync_with_master;
|
||||
--replace_result $MASTER_MYPORT MASTER_PORT
|
||||
--replace_column 1 # 8 # 9 # 23 # 33 #
|
||||
--vertical_results
|
||||
show slave status;
|
||||
# one more rotation, to be sure Relay_Log_Space is correctly updated
|
||||
|
||||
--echo #
|
||||
--echo # Test 6: one more rotation, to be sure Relay_Log_Space is correctly updated
|
||||
--echo #
|
||||
|
||||
flush logs;
|
||||
connection master;
|
||||
drop table t1;
|
||||
@ -85,6 +119,7 @@ connection slave;
|
||||
sync_with_master;
|
||||
--replace_result $MASTER_MYPORT MASTER_PORT
|
||||
--replace_column 1 # 8 # 9 # 23 # 33 #
|
||||
--vertical_results
|
||||
show slave status;
|
||||
|
||||
connection master;
|
||||
@ -92,5 +127,6 @@ connection master;
|
||||
flush logs;
|
||||
show master status;
|
||||
|
||||
# End of 4.1 tests
|
||||
#
|
||||
--echo #
|
||||
--echo # End of 4.1 tests
|
||||
--echo #
|
||||
|
@ -129,3 +129,24 @@ DROP TABLE t1;
|
||||
--sync_with_master
|
||||
--connection master
|
||||
|
||||
#
|
||||
# BUG#19419: "VIEW: View that the column name is different
|
||||
# by master and slave is made".
|
||||
#
|
||||
connection master;
|
||||
create table t1(a int, b int);
|
||||
insert into t1 values (1, 1), (1, 2), (1, 3);
|
||||
create view v1(a, b) as select a, sum(b) from t1 group by a;
|
||||
|
||||
sync_slave_with_master;
|
||||
explain v1;
|
||||
show create table v1;
|
||||
select * from v1;
|
||||
|
||||
connection master;
|
||||
drop table t1;
|
||||
drop view v1;
|
||||
|
||||
sync_slave_with_master;
|
||||
|
||||
--echo End of 5.0 tests
|
||||
|
@ -4765,6 +4765,19 @@ end_with_restore_list:
|
||||
}
|
||||
append_identifier(thd, &buff, first_table->table_name,
|
||||
first_table->table_name_length);
|
||||
if (lex->view_list.elements)
|
||||
{
|
||||
List_iterator_fast<LEX_STRING> names(lex->view_list);
|
||||
LEX_STRING *name;
|
||||
int i;
|
||||
|
||||
for (i= 0; name= names++; i++)
|
||||
{
|
||||
buff.append(i ? ", " : "(");
|
||||
append_identifier(thd, &buff, name->str, name->length);
|
||||
}
|
||||
buff.append(')');
|
||||
}
|
||||
buff.append(STRING_WITH_LEN(" AS "));
|
||||
buff.append(first_table->source.str, first_table->source.length);
|
||||
|
||||
|
@ -6921,6 +6921,9 @@ load: LOAD DATA_SYM
|
||||
YYABORT;
|
||||
}
|
||||
lex->sql_command = SQLCOM_LOAD_MASTER_TABLE;
|
||||
WARN_DEPRECATED("LOAD TABLE FROM MASTER",
|
||||
"mysqldump or future "
|
||||
"BACKUP/RESTORE DATABASE facility");
|
||||
if (!Select->add_table_to_list(YYTHD, $3, NULL, TL_OPTION_UPDATING))
|
||||
YYABORT;
|
||||
};
|
||||
@ -6959,6 +6962,9 @@ load_data:
|
||||
FROM MASTER_SYM
|
||||
{
|
||||
Lex->sql_command = SQLCOM_LOAD_MASTER_DATA;
|
||||
WARN_DEPRECATED("LOAD DATA FROM MASTER",
|
||||
"mysqldump or future "
|
||||
"BACKUP/RESTORE DATABASE facility");
|
||||
};
|
||||
|
||||
opt_local:
|
||||
|
Loading…
x
Reference in New Issue
Block a user