mysql-5.5 merge
This commit is contained in:
commit
38e3ae155d
2
VERSION
2
VERSION
@ -1,4 +1,4 @@
|
|||||||
MYSQL_VERSION_MAJOR=5
|
MYSQL_VERSION_MAJOR=5
|
||||||
MYSQL_VERSION_MINOR=5
|
MYSQL_VERSION_MINOR=5
|
||||||
MYSQL_VERSION_PATCH=18
|
MYSQL_VERSION_PATCH=21
|
||||||
MYSQL_VERSION_EXTRA=
|
MYSQL_VERSION_EXTRA=
|
||||||
|
@ -929,19 +929,19 @@ static int check_access()
|
|||||||
opt_datadir);
|
opt_datadir);
|
||||||
goto exit;
|
goto exit;
|
||||||
}
|
}
|
||||||
if ((error= my_access(opt_plugin_ini, F_OK)))
|
if (opt_plugin_ini && (error= my_access(opt_plugin_ini, F_OK)))
|
||||||
{
|
{
|
||||||
fprintf(stderr, "ERROR: Cannot access plugin config file at '%s'.\n",
|
fprintf(stderr, "ERROR: Cannot access plugin config file at '%s'.\n",
|
||||||
opt_plugin_ini);
|
opt_plugin_ini);
|
||||||
goto exit;
|
goto exit;
|
||||||
}
|
}
|
||||||
if ((error= my_access(opt_mysqld, F_OK)))
|
if (opt_mysqld && (error= my_access(opt_mysqld, F_OK)))
|
||||||
{
|
{
|
||||||
fprintf(stderr, "ERROR: Cannot access mysqld path '%s'.\n",
|
fprintf(stderr, "ERROR: Cannot access mysqld path '%s'.\n",
|
||||||
opt_mysqld);
|
opt_mysqld);
|
||||||
goto exit;
|
goto exit;
|
||||||
}
|
}
|
||||||
if ((error= my_access(opt_my_print_defaults, F_OK)))
|
if (opt_my_print_defaults && (error= my_access(opt_my_print_defaults, F_OK)))
|
||||||
{
|
{
|
||||||
fprintf(stderr, "ERROR: Cannot access my-print-defaults path '%s'.\n",
|
fprintf(stderr, "ERROR: Cannot access my-print-defaults path '%s'.\n",
|
||||||
opt_my_print_defaults);
|
opt_my_print_defaults);
|
||||||
@ -967,7 +967,7 @@ static int find_tool(const char *tool_name, char *tool_path)
|
|||||||
int i= 0;
|
int i= 0;
|
||||||
|
|
||||||
const char *paths[]= {
|
const char *paths[]= {
|
||||||
opt_basedir, opt_mysqld, opt_my_print_defaults, "/usr",
|
opt_mysqld, opt_basedir, opt_my_print_defaults, "/usr",
|
||||||
"/usr/local/mysql", "/usr/sbin", "/usr/share", "/extra", "/extra/debug",
|
"/usr/local/mysql", "/usr/sbin", "/usr/share", "/extra", "/extra/debug",
|
||||||
"/extra/release", "/bin", "/usr/bin", "/mysql/bin"
|
"/extra/release", "/bin", "/usr/bin", "/mysql/bin"
|
||||||
};
|
};
|
||||||
@ -1081,7 +1081,7 @@ static int build_bootstrap_file(char *operation, char *bootstrap)
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
fprintf(file,
|
fprintf(file,
|
||||||
"DELETE FROM mysql.plugin WHERE name = '%s';", plugin_data.name);
|
"DELETE FROM mysql.plugin WHERE dl = '%s';", plugin_data.so_name);
|
||||||
if (opt_verbose)
|
if (opt_verbose)
|
||||||
{
|
{
|
||||||
printf("# Disabling %s...\n", plugin_data.name);
|
printf("# Disabling %s...\n", plugin_data.name);
|
||||||
@ -1124,7 +1124,7 @@ static int dump_bootstrap_file(char *bootstrap_file)
|
|||||||
error= 1;
|
error= 1;
|
||||||
goto exit;
|
goto exit;
|
||||||
}
|
}
|
||||||
printf("# Query: %s", query_str);
|
printf("# Query: %s\n", query_str);
|
||||||
|
|
||||||
exit:
|
exit:
|
||||||
if (file)
|
if (file)
|
||||||
@ -1160,7 +1160,6 @@ static int bootstrap_server(char *server_path, char *bootstrap_file)
|
|||||||
{
|
{
|
||||||
char bootstrap_cmd[FN_REFLEN];
|
char bootstrap_cmd[FN_REFLEN];
|
||||||
int error= 0;
|
int error= 0;
|
||||||
int ret= 0;
|
|
||||||
|
|
||||||
#ifdef __WIN__
|
#ifdef __WIN__
|
||||||
char *format_str= 0;
|
char *format_str= 0;
|
||||||
@ -1196,7 +1195,7 @@ static int bootstrap_server(char *server_path, char *bootstrap_file)
|
|||||||
if (error)
|
if (error)
|
||||||
fprintf(stderr,
|
fprintf(stderr,
|
||||||
"ERROR: Unexpected result from bootstrap. Error code: %d.\n",
|
"ERROR: Unexpected result from bootstrap. Error code: %d.\n",
|
||||||
ret);
|
error);
|
||||||
|
|
||||||
return error;
|
return error;
|
||||||
}
|
}
|
||||||
|
@ -303,10 +303,9 @@ get_one_option(int optid, const struct my_option *opt,
|
|||||||
opt_verbose= 0;
|
opt_verbose= 0;
|
||||||
add_option= 0;
|
add_option= 0;
|
||||||
break;
|
break;
|
||||||
case 's':
|
|
||||||
add_option= 0;
|
|
||||||
break;
|
|
||||||
case 'f': /* --force */
|
case 'f': /* --force */
|
||||||
|
case 's': /* --upgrade-system-tables */
|
||||||
|
case OPT_WRITE_BINLOG: /* --write-binlog */
|
||||||
add_option= FALSE;
|
add_option= FALSE;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -564,6 +564,8 @@ static void verbose_msg(const char *fmt, ...)
|
|||||||
vfprintf(stderr, fmt, args);
|
vfprintf(stderr, fmt, args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
|
|
||||||
|
fflush(stderr);
|
||||||
|
|
||||||
DBUG_VOID_RETURN;
|
DBUG_VOID_RETURN;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -4131,6 +4133,8 @@ static int dump_all_tables_in_db(char *database)
|
|||||||
if (mysql_refresh(mysql, REFRESH_LOG))
|
if (mysql_refresh(mysql, REFRESH_LOG))
|
||||||
DB_error(mysql, "when doing refresh");
|
DB_error(mysql, "when doing refresh");
|
||||||
/* We shall continue here, if --force was given */
|
/* We shall continue here, if --force was given */
|
||||||
|
else
|
||||||
|
verbose_msg("-- dump_all_tables_in_db : logs flushed successfully!\n");
|
||||||
}
|
}
|
||||||
while ((table= getTableName(0)))
|
while ((table= getTableName(0)))
|
||||||
{
|
{
|
||||||
@ -4231,6 +4235,8 @@ static my_bool dump_all_views_in_db(char *database)
|
|||||||
if (mysql_refresh(mysql, REFRESH_LOG))
|
if (mysql_refresh(mysql, REFRESH_LOG))
|
||||||
DB_error(mysql, "when doing refresh");
|
DB_error(mysql, "when doing refresh");
|
||||||
/* We shall continue here, if --force was given */
|
/* We shall continue here, if --force was given */
|
||||||
|
else
|
||||||
|
verbose_msg("-- dump_all_views_in_db : logs flushed successfully!\n");
|
||||||
}
|
}
|
||||||
while ((table= getTableName(0)))
|
while ((table= getTableName(0)))
|
||||||
{
|
{
|
||||||
@ -4369,6 +4375,8 @@ static int dump_selected_tables(char *db, char **table_names, int tables)
|
|||||||
DB_error(mysql, "when doing refresh");
|
DB_error(mysql, "when doing refresh");
|
||||||
}
|
}
|
||||||
/* We shall countinue here, if --force was given */
|
/* We shall countinue here, if --force was given */
|
||||||
|
else
|
||||||
|
verbose_msg("-- dump_selected_tables : logs flushed successfully!\n");
|
||||||
}
|
}
|
||||||
if (opt_xml)
|
if (opt_xml)
|
||||||
print_xml_tag(md_result_file, "", "\n", "database", "name=", db, NullS);
|
print_xml_tag(md_result_file, "", "\n", "database", "name=", db, NullS);
|
||||||
@ -4675,6 +4683,7 @@ static int purge_bin_logs_to(MYSQL *mysql_con, char* log_name)
|
|||||||
|
|
||||||
static int start_transaction(MYSQL *mysql_con)
|
static int start_transaction(MYSQL *mysql_con)
|
||||||
{
|
{
|
||||||
|
verbose_msg("-- Starting transaction...\n");
|
||||||
/*
|
/*
|
||||||
We use BEGIN for old servers. --single-transaction --master-data will fail
|
We use BEGIN for old servers. --single-transaction --master-data will fail
|
||||||
on old servers, but that's ok as it was already silently broken (it didn't
|
on old servers, but that's ok as it was already silently broken (it didn't
|
||||||
@ -5284,25 +5293,39 @@ int main(int argc, char **argv)
|
|||||||
consistent_binlog_pos= check_consistent_binlog_pos(NULL, NULL);
|
consistent_binlog_pos= check_consistent_binlog_pos(NULL, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((opt_lock_all_tables || (opt_master_data && !consistent_binlog_pos)) &&
|
if ((opt_lock_all_tables || (opt_master_data && !consistent_binlog_pos) ||
|
||||||
|
(opt_single_transaction && flush_logs)) &&
|
||||||
do_flush_tables_read_lock(mysql))
|
do_flush_tables_read_lock(mysql))
|
||||||
goto err;
|
goto err;
|
||||||
if (opt_single_transaction && start_transaction(mysql))
|
|
||||||
goto err;
|
/*
|
||||||
if (opt_delete_master_logs)
|
Flush logs before starting transaction since
|
||||||
|
this causes implicit commit starting mysql-5.5.
|
||||||
|
*/
|
||||||
|
if (opt_lock_all_tables || opt_master_data ||
|
||||||
|
(opt_single_transaction && flush_logs) ||
|
||||||
|
opt_delete_master_logs)
|
||||||
{
|
{
|
||||||
if (mysql_refresh(mysql, REFRESH_LOG) ||
|
if (flush_logs || opt_delete_master_logs)
|
||||||
get_bin_log_name(mysql, bin_log_name, sizeof(bin_log_name)))
|
{
|
||||||
goto err;
|
if (mysql_refresh(mysql, REFRESH_LOG))
|
||||||
|
goto err;
|
||||||
|
verbose_msg("-- main : logs flushed successfully!\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Not anymore! That would not be sensible. */
|
||||||
flush_logs= 0;
|
flush_logs= 0;
|
||||||
}
|
}
|
||||||
if (opt_lock_all_tables || opt_master_data)
|
|
||||||
|
if (opt_delete_master_logs)
|
||||||
{
|
{
|
||||||
if (flush_logs && mysql_refresh(mysql, REFRESH_LOG))
|
if (get_bin_log_name(mysql, bin_log_name, sizeof(bin_log_name)))
|
||||||
goto err;
|
goto err;
|
||||||
flush_logs= 0; /* not anymore; that would not be sensible */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (opt_single_transaction && start_transaction(mysql))
|
||||||
|
goto err;
|
||||||
|
|
||||||
/* Add 'STOP SLAVE to beginning of dump */
|
/* Add 'STOP SLAVE to beginning of dump */
|
||||||
if (opt_slave_apply && add_stop_slave())
|
if (opt_slave_apply && add_stop_slave())
|
||||||
goto err;
|
goto err;
|
||||||
|
@ -310,6 +310,7 @@ struct st_connection
|
|||||||
pthread_mutex_t result_mutex;
|
pthread_mutex_t result_mutex;
|
||||||
pthread_cond_t result_cond;
|
pthread_cond_t result_cond;
|
||||||
int query_done;
|
int query_done;
|
||||||
|
my_bool has_thread;
|
||||||
#endif /*EMBEDDED_LIBRARY*/
|
#endif /*EMBEDDED_LIBRARY*/
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -525,6 +526,31 @@ struct st_command *curr_command= 0;
|
|||||||
|
|
||||||
char builtin_echo[FN_REFLEN];
|
char builtin_echo[FN_REFLEN];
|
||||||
|
|
||||||
|
struct st_replace_regex
|
||||||
|
{
|
||||||
|
DYNAMIC_ARRAY regex_arr; /* stores a list of st_regex subsitutions */
|
||||||
|
|
||||||
|
/*
|
||||||
|
Temporary storage areas for substitutions. To reduce unnessary copying
|
||||||
|
and memory freeing/allocation, we pre-allocate two buffers, and alternate
|
||||||
|
their use, one for input/one for output, the roles changing on the next
|
||||||
|
st_regex substition. At the end of substitutions buf points to the
|
||||||
|
one containing the final result.
|
||||||
|
*/
|
||||||
|
char* buf;
|
||||||
|
char* even_buf;
|
||||||
|
char* odd_buf;
|
||||||
|
int even_buf_len;
|
||||||
|
int odd_buf_len;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct st_replace_regex *glob_replace_regex= 0;
|
||||||
|
|
||||||
|
struct st_replace;
|
||||||
|
struct st_replace *glob_replace= 0;
|
||||||
|
void replace_strings_append(struct st_replace *rep, DYNAMIC_STRING* ds,
|
||||||
|
const char *from, int len);
|
||||||
|
|
||||||
static void cleanup_and_exit(int exit_code) __attribute__((noreturn));
|
static void cleanup_and_exit(int exit_code) __attribute__((noreturn));
|
||||||
|
|
||||||
void die(const char *fmt, ...)
|
void die(const char *fmt, ...)
|
||||||
@ -554,6 +580,7 @@ void str_to_file2(const char *fname, char *str, int size, my_bool append);
|
|||||||
|
|
||||||
void fix_win_paths(const char *val, int len);
|
void fix_win_paths(const char *val, int len);
|
||||||
const char *get_errname_from_code (uint error_code);
|
const char *get_errname_from_code (uint error_code);
|
||||||
|
int multi_reg_replace(struct st_replace_regex* r,char* val);
|
||||||
|
|
||||||
#ifdef __WIN__
|
#ifdef __WIN__
|
||||||
void free_tmp_sh_file();
|
void free_tmp_sh_file();
|
||||||
@ -2514,7 +2541,23 @@ void var_query_set(VAR *var, const char *query, const char** query_end)
|
|||||||
if (row[i])
|
if (row[i])
|
||||||
{
|
{
|
||||||
/* Add column to tab separated string */
|
/* Add column to tab separated string */
|
||||||
dynstr_append_mem(&result, row[i], lengths[i]);
|
char *val= row[i];
|
||||||
|
int len= lengths[i];
|
||||||
|
|
||||||
|
if (glob_replace_regex)
|
||||||
|
{
|
||||||
|
/* Regex replace */
|
||||||
|
if (!multi_reg_replace(glob_replace_regex, (char*)val))
|
||||||
|
{
|
||||||
|
val= glob_replace_regex->buf;
|
||||||
|
len= strlen(val);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (glob_replace)
|
||||||
|
replace_strings_append(glob_replace, &result, val, len);
|
||||||
|
else
|
||||||
|
dynstr_append_mem(&result, val, len);
|
||||||
}
|
}
|
||||||
dynstr_append_mem(&result, "\t", 1);
|
dynstr_append_mem(&result, "\t", 1);
|
||||||
}
|
}
|
||||||
@ -3443,8 +3486,9 @@ void do_copy_file(struct st_command *command)
|
|||||||
' ');
|
' ');
|
||||||
|
|
||||||
DBUG_PRINT("info", ("Copy %s to %s", ds_from_file.str, ds_to_file.str));
|
DBUG_PRINT("info", ("Copy %s to %s", ds_from_file.str, ds_to_file.str));
|
||||||
|
/* MY_HOLD_ORIGINAL_MODES prevents attempts to chown the file */
|
||||||
error= (my_copy(ds_from_file.str, ds_to_file.str,
|
error= (my_copy(ds_from_file.str, ds_to_file.str,
|
||||||
MYF(MY_DONT_OVERWRITE_FILE | MY_WME)) != 0);
|
MYF(MY_DONT_OVERWRITE_FILE | MY_WME | MY_HOLD_ORIGINAL_MODES)) != 0);
|
||||||
handle_command_error(command, error, my_errno);
|
handle_command_error(command, error, my_errno);
|
||||||
dynstr_free(&ds_from_file);
|
dynstr_free(&ds_from_file);
|
||||||
dynstr_free(&ds_to_file);
|
dynstr_free(&ds_to_file);
|
||||||
@ -4940,6 +4984,7 @@ void do_get_errcodes(struct st_command *command)
|
|||||||
struct st_match_err *to= saved_expected_errors.err;
|
struct st_match_err *to= saved_expected_errors.err;
|
||||||
char *p= command->first_argument;
|
char *p= command->first_argument;
|
||||||
uint count= 0;
|
uint count= 0;
|
||||||
|
char *next;
|
||||||
|
|
||||||
DBUG_ENTER("do_get_errcodes");
|
DBUG_ENTER("do_get_errcodes");
|
||||||
|
|
||||||
@ -4959,6 +5004,17 @@ void do_get_errcodes(struct st_command *command)
|
|||||||
while (*end && *end != ',' && *end != ' ')
|
while (*end && *end != ',' && *end != ' ')
|
||||||
end++;
|
end++;
|
||||||
|
|
||||||
|
next=end;
|
||||||
|
|
||||||
|
/* code to handle variables passed to mysqltest */
|
||||||
|
if( *p == '$')
|
||||||
|
{
|
||||||
|
const char* fin;
|
||||||
|
VAR *var = var_get(p,&fin,0,0);
|
||||||
|
p=var->str_val;
|
||||||
|
end=p+var->str_val_len;
|
||||||
|
}
|
||||||
|
|
||||||
if (*p == 'S')
|
if (*p == 'S')
|
||||||
{
|
{
|
||||||
char *to_ptr= to->code.sqlstate;
|
char *to_ptr= to->code.sqlstate;
|
||||||
@ -5033,7 +5089,7 @@ void do_get_errcodes(struct st_command *command)
|
|||||||
die("Too many errorcodes specified");
|
die("Too many errorcodes specified");
|
||||||
|
|
||||||
/* Set pointer to the end of the last error code */
|
/* Set pointer to the end of the last error code */
|
||||||
p= end;
|
p= next;
|
||||||
|
|
||||||
/* Find next ',' */
|
/* Find next ',' */
|
||||||
while (*p && *p != ',')
|
while (*p && *p != ',')
|
||||||
@ -9273,16 +9329,11 @@ typedef struct st_pointer_array { /* when using array-strings */
|
|||||||
uint array_allocs,max_count,length,max_length;
|
uint array_allocs,max_count,length,max_length;
|
||||||
} POINTER_ARRAY;
|
} POINTER_ARRAY;
|
||||||
|
|
||||||
struct st_replace;
|
|
||||||
struct st_replace *init_replace(char * *from, char * *to, uint count,
|
struct st_replace *init_replace(char * *from, char * *to, uint count,
|
||||||
char * word_end_chars);
|
char * word_end_chars);
|
||||||
int insert_pointer_name(reg1 POINTER_ARRAY *pa,char * name);
|
int insert_pointer_name(reg1 POINTER_ARRAY *pa,char * name);
|
||||||
void replace_strings_append(struct st_replace *rep, DYNAMIC_STRING* ds,
|
|
||||||
const char *from, int len);
|
|
||||||
void free_pointer_array(POINTER_ARRAY *pa);
|
void free_pointer_array(POINTER_ARRAY *pa);
|
||||||
|
|
||||||
struct st_replace *glob_replace;
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Get arguments for replace. The syntax is:
|
Get arguments for replace. The syntax is:
|
||||||
replace from to [from to ...]
|
replace from to [from to ...]
|
||||||
@ -9426,26 +9477,6 @@ struct st_regex
|
|||||||
int icase; /* true if the match is case insensitive */
|
int icase; /* true if the match is case insensitive */
|
||||||
};
|
};
|
||||||
|
|
||||||
struct st_replace_regex
|
|
||||||
{
|
|
||||||
DYNAMIC_ARRAY regex_arr; /* stores a list of st_regex subsitutions */
|
|
||||||
|
|
||||||
/*
|
|
||||||
Temporary storage areas for substitutions. To reduce unnessary copying
|
|
||||||
and memory freeing/allocation, we pre-allocate two buffers, and alternate
|
|
||||||
their use, one for input/one for output, the roles changing on the next
|
|
||||||
st_regex substition. At the end of substitutions buf points to the
|
|
||||||
one containing the final result.
|
|
||||||
*/
|
|
||||||
char* buf;
|
|
||||||
char* even_buf;
|
|
||||||
char* odd_buf;
|
|
||||||
int even_buf_len;
|
|
||||||
int odd_buf_len;
|
|
||||||
};
|
|
||||||
|
|
||||||
struct st_replace_regex *glob_replace_regex= 0;
|
|
||||||
|
|
||||||
int reg_replace(char** buf_p, int* buf_len_p, char *pattern, char *replace,
|
int reg_replace(char** buf_p, int* buf_len_p, char *pattern, char *replace,
|
||||||
char *string, int icase);
|
char *string, int icase);
|
||||||
|
|
||||||
@ -9644,7 +9675,13 @@ void do_get_replace_regex(struct st_command *command)
|
|||||||
{
|
{
|
||||||
char *expr= command->first_argument;
|
char *expr= command->first_argument;
|
||||||
free_replace_regex();
|
free_replace_regex();
|
||||||
if (!(glob_replace_regex=init_replace_regex(expr)))
|
/* Allow variable for the *entire* list of replacements */
|
||||||
|
if (*expr == '$')
|
||||||
|
{
|
||||||
|
VAR *val= var_get(expr, NULL, 0, 1);
|
||||||
|
expr= val ? val->str_val : NULL;
|
||||||
|
}
|
||||||
|
if (expr && *expr && !(glob_replace_regex=init_replace_regex(expr)))
|
||||||
die("Could not init replace_regex");
|
die("Could not init replace_regex");
|
||||||
command->last_argument= command->end;
|
command->last_argument= command->end;
|
||||||
}
|
}
|
||||||
|
@ -100,6 +100,11 @@ IF(NOT HAVE_FGETLN)
|
|||||||
SET(LIBEDIT_EXTRA_SOURCES ${LIBEDIT_EXTRA_SOURCES} np/fgetln.c)
|
SET(LIBEDIT_EXTRA_SOURCES ${LIBEDIT_EXTRA_SOURCES} np/fgetln.c)
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
|
CHECK_FUNCTION_EXISTS(fgetln HAVE_WCSDUP)
|
||||||
|
IF(NOT HAVE_WCSDUP)
|
||||||
|
SET(LIBEDIT_EXTRA_SOURCES ${LIBEDIT_EXTRA_SOURCES} np/wcsdup.c)
|
||||||
|
ENDIF()
|
||||||
|
|
||||||
# Generate headers
|
# Generate headers
|
||||||
FOREACH(SRCBASENAME vi emacs common)
|
FOREACH(SRCBASENAME vi emacs common)
|
||||||
SET(SRC ${CMAKE_CURRENT_SOURCE_DIR}/${SRCBASENAME}.c)
|
SET(SRC ${CMAKE_CURRENT_SOURCE_DIR}/${SRCBASENAME}.c)
|
||||||
@ -151,23 +156,27 @@ ${CURSES_INCLUDE_PATH}
|
|||||||
|
|
||||||
SET(LIBEDIT_SOURCES
|
SET(LIBEDIT_SOURCES
|
||||||
chared.c
|
chared.c
|
||||||
|
chartype.c
|
||||||
el.c
|
el.c
|
||||||
|
eln.c
|
||||||
history.c
|
history.c
|
||||||
|
historyn.c
|
||||||
map.c
|
map.c
|
||||||
prompt.c
|
prompt.c
|
||||||
readline.c
|
readline.c
|
||||||
search.c
|
search.c
|
||||||
tokenizer.c
|
tokenizer.c
|
||||||
|
tokenizern.c
|
||||||
vi.c
|
vi.c
|
||||||
common.c
|
common.c
|
||||||
emacs.c
|
emacs.c
|
||||||
hist.c
|
hist.c
|
||||||
key.c
|
keymacro.c
|
||||||
parse.c
|
parse.c
|
||||||
read.c
|
read.c
|
||||||
refresh.c
|
refresh.c
|
||||||
sig.c
|
sig.c
|
||||||
term.c
|
terminal.c
|
||||||
tty.c
|
tty.c
|
||||||
filecomplete.c
|
filecomplete.c
|
||||||
${CMAKE_CURRENT_BINARY_DIR}/help.c
|
${CMAKE_CURRENT_BINARY_DIR}/help.c
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
Copyright (c) 2001, 2010, Oracle and/or its affiliates.
|
Copyright (c) 2001, 2011, Oracle and/or its affiliates.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
@ -78,6 +78,69 @@ const char *my_addr_resolve_init();
|
|||||||
void my_write_core(int sig);
|
void my_write_core(int sig);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
Async-signal-safe utility functions used by signal handler routines.
|
||||||
|
Declared here in order to unit-test them.
|
||||||
|
These are not general-purpose, but tailored to the signal handling routines.
|
||||||
|
*/
|
||||||
|
/**
|
||||||
|
Converts a longlong value to string.
|
||||||
|
@param base 10 for decimal, 16 for hex values (0..9a..f)
|
||||||
|
@param val The value to convert
|
||||||
|
@param buf Assumed to point to the *end* of the buffer.
|
||||||
|
@returns Pointer to the first character of the converted string.
|
||||||
|
Negative values:
|
||||||
|
for base-10 the return string will be prepended with '-'
|
||||||
|
for base-16 the return string will contain 16 characters
|
||||||
|
Implemented with simplicity, and async-signal-safety in mind.
|
||||||
|
*/
|
||||||
|
char *my_safe_itoa(int base, longlong val, char *buf);
|
||||||
|
|
||||||
|
/**
|
||||||
|
Converts a ulonglong value to string.
|
||||||
|
@param base 10 for decimal, 16 for hex values (0..9a..f)
|
||||||
|
@param val The value to convert
|
||||||
|
@param buf Assumed to point to the *end* of the buffer.
|
||||||
|
@returns Pointer to the first character of the converted string.
|
||||||
|
Implemented with simplicity, and async-signal-safety in mind.
|
||||||
|
*/
|
||||||
|
char *my_safe_utoa(int base, ulonglong val, char *buf);
|
||||||
|
|
||||||
|
/**
|
||||||
|
A (very) limited version of snprintf.
|
||||||
|
@param to Destination buffer.
|
||||||
|
@param n Size of destination buffer.
|
||||||
|
@param fmt printf() style format string.
|
||||||
|
@returns Number of bytes written, including terminating '\0'
|
||||||
|
Supports 'd' 'i' 'u' 'x' 'p' 's' conversion.
|
||||||
|
Supports 'l' and 'll' modifiers for integral types.
|
||||||
|
Does not support any width/precision.
|
||||||
|
Implemented with simplicity, and async-signal-safety in mind.
|
||||||
|
*/
|
||||||
|
size_t my_safe_snprintf(char* to, size_t n, const char* fmt, ...)
|
||||||
|
ATTRIBUTE_FORMAT(printf, 3, 4);
|
||||||
|
|
||||||
|
/**
|
||||||
|
A (very) limited version of snprintf, which writes the result to STDERR.
|
||||||
|
@sa my_safe_snprintf
|
||||||
|
Implemented with simplicity, and async-signal-safety in mind.
|
||||||
|
@note Has an internal buffer capacity of 512 bytes,
|
||||||
|
which should suffice for our signal handling routines.
|
||||||
|
*/
|
||||||
|
size_t my_safe_printf_stderr(const char* fmt, ...)
|
||||||
|
ATTRIBUTE_FORMAT(printf, 1, 2);
|
||||||
|
|
||||||
|
/**
|
||||||
|
Writes up to count bytes from buffer to STDERR.
|
||||||
|
Implemented with simplicity, and async-signal-safety in mind.
|
||||||
|
@param buf Buffer containing data to be written.
|
||||||
|
@param count Number of bytes to write.
|
||||||
|
@returns Number of bytes written.
|
||||||
|
*/
|
||||||
|
size_t my_write_stderr(const void *buf, size_t count);
|
||||||
|
|
||||||
C_MODE_END
|
C_MODE_END
|
||||||
|
|
||||||
#endif /* _my_stacktrace_h_ */
|
#endif /* _my_stacktrace_h_ */
|
||||||
|
@ -45,6 +45,7 @@ SET(SQL_EMBEDDED_SOURCES emb_qcache.cc libmysqld.c lib_sql.cc
|
|||||||
../sql/password.c ../sql/discover.cc ../sql/derror.cc
|
../sql/password.c ../sql/discover.cc ../sql/derror.cc
|
||||||
../sql/field.cc ../sql/field_conv.cc
|
../sql/field.cc ../sql/field_conv.cc
|
||||||
../sql/filesort.cc ../sql/gstream.cc ../sql/slave.cc
|
../sql/filesort.cc ../sql/gstream.cc ../sql/slave.cc
|
||||||
|
../sql/signal_handler.cc
|
||||||
../sql/handler.cc ../sql/hash_filo.cc ../sql/hostname.cc
|
../sql/handler.cc ../sql/hash_filo.cc ../sql/hostname.cc
|
||||||
../sql/init.cc ../sql/item_buff.cc ../sql/item_cmpfunc.cc
|
../sql/init.cc ../sql/item_buff.cc ../sql/item_cmpfunc.cc
|
||||||
../sql/item.cc ../sql/item_create.cc ../sql/item_func.cc
|
../sql/item.cc ../sql/item_create.cc ../sql/item_func.cc
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
|
# Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
#
|
#
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# This program is free software; you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU General Public License as published by
|
# it under the terms of the GNU General Public License as published by
|
||||||
@ -16,15 +16,23 @@
|
|||||||
# Copy man pages
|
# Copy man pages
|
||||||
FILE(GLOB MAN1_FILES *.1)
|
FILE(GLOB MAN1_FILES *.1)
|
||||||
FILE(GLOB MAN1_EXCLUDE make_win_bin_dist.1)
|
FILE(GLOB MAN1_EXCLUDE make_win_bin_dist.1)
|
||||||
|
FILE(GLOB MAN1_NDB ndb*.1)
|
||||||
FILE(GLOB MAN8_FILES *.8)
|
FILE(GLOB MAN8_FILES *.8)
|
||||||
|
FILE(GLOB MAN8_NDB ndb*.8)
|
||||||
IF(MAN1_FILES)
|
IF(MAN1_FILES)
|
||||||
IF(MAN1_EXCLUDE)
|
IF(MAN1_EXCLUDE)
|
||||||
LIST(REMOVE_ITEM MAN1_FILES ${MAN1_EXCLUDE})
|
LIST(REMOVE_ITEM MAN1_FILES ${MAN1_EXCLUDE})
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
IF(MAN1_NDB)
|
||||||
|
LIST(REMOVE_ITEM MAN1_FILES ${MAN1_NDB})
|
||||||
|
ENDIF()
|
||||||
INSTALL(FILES ${MAN1_FILES} DESTINATION ${INSTALL_MANDIR}/man1
|
INSTALL(FILES ${MAN1_FILES} DESTINATION ${INSTALL_MANDIR}/man1
|
||||||
COMPONENT ManPages)
|
COMPONENT ManPages)
|
||||||
ENDIF()
|
ENDIF()
|
||||||
IF(MAN8_FILES)
|
IF(MAN8_FILES)
|
||||||
|
IF(MAN8_NDB)
|
||||||
|
LIST(REMOVE_ITEM MAN8_FILES ${MAN8_NDB})
|
||||||
|
ENDIF()
|
||||||
INSTALL(FILES ${MAN8_FILES} DESTINATION ${INSTALL_MANDIR}/man8
|
INSTALL(FILES ${MAN8_FILES} DESTINATION ${INSTALL_MANDIR}/man8
|
||||||
COMPONENT ManPages)
|
COMPONENT ManPages)
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
@ -24,4 +24,6 @@ sys_vars.wait_timeout_func # Bug#11750645 2010-04-26 alik wai
|
|||||||
sys_vars.ndb_log_update_as_write_basic
|
sys_vars.ndb_log_update_as_write_basic
|
||||||
sys_vars.have_ndbcluster_basic
|
sys_vars.have_ndbcluster_basic
|
||||||
sys_vars.ndb_log_updated_only_basic
|
sys_vars.ndb_log_updated_only_basic
|
||||||
|
sys_vars.query_cache_size_basic_64 # Bug#11748572 - 36747: ALLOCATING A LARGE QUERY CACHE IS NOT DETERMINISTIC
|
||||||
|
sys_vars.query_cache_size_basic_32 # Bug#11748572 - 36747: ALLOCATING A LARGE QUERY CACHE IS NOT DETERMINISTIC
|
||||||
sys_vars.rpl_init_slave_func # Bug#12535301 2011-05-09 andrei sys_vars.rpl_init_slave_func mismatches in daily-5.5
|
sys_vars.rpl_init_slave_func # Bug#12535301 2011-05-09 andrei sys_vars.rpl_init_slave_func mismatches in daily-5.5
|
||||||
|
@ -15,7 +15,6 @@ source include/show_binlog_events.inc;
|
|||||||
# absolutely need variables names to be quoted and strings to be
|
# absolutely need variables names to be quoted and strings to be
|
||||||
# escaped).
|
# escaped).
|
||||||
flush logs;
|
flush logs;
|
||||||
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
|
|
||||||
let $MYSQLD_DATADIR= `select @@datadir`;
|
let $MYSQLD_DATADIR= `select @@datadir`;
|
||||||
--exec $MYSQL_BINLOG --short-form $MYSQLD_DATADIR/master-bin.000001
|
--exec $MYSQL_BINLOG --short-form $MYSQLD_DATADIR/master-bin.000001
|
||||||
drop table t2;
|
drop table t2;
|
||||||
|
@ -48,6 +48,11 @@
|
|||||||
# must be provided both for begin_include_file.inc and
|
# must be provided both for begin_include_file.inc and
|
||||||
# end_include_file.inc.
|
# end_include_file.inc.
|
||||||
#
|
#
|
||||||
|
# $keep_include_silent
|
||||||
|
# This specifies whether it should be echoed to the result file
|
||||||
|
# the following string: include/$include_filename
|
||||||
|
# If not set, the string will be echoed.
|
||||||
|
#
|
||||||
# $rpl_debug
|
# $rpl_debug
|
||||||
# If set, this script will print the following text:
|
# If set, this script will print the following text:
|
||||||
# ==== BEGIN include/$include_filename.inc ====
|
# ==== BEGIN include/$include_filename.inc ====
|
||||||
@ -59,7 +64,10 @@
|
|||||||
# recursively.
|
# recursively.
|
||||||
if (!$_include_file_depth)
|
if (!$_include_file_depth)
|
||||||
{
|
{
|
||||||
--echo include/$include_filename
|
if (!$keep_include_silent)
|
||||||
|
{
|
||||||
|
--echo include/$include_filename
|
||||||
|
}
|
||||||
--let $_include_file_depth= 0
|
--let $_include_file_depth= 0
|
||||||
}
|
}
|
||||||
--inc $_include_file_depth
|
--inc $_include_file_depth
|
||||||
|
137
mysql-test/include/relocate_binlogs.inc
Normal file
137
mysql-test/include/relocate_binlogs.inc
Normal file
@ -0,0 +1,137 @@
|
|||||||
|
# ==== Purpose ====
|
||||||
|
#
|
||||||
|
# Relocates the relay logs and index file from
|
||||||
|
# a directory into another. The logs relocated
|
||||||
|
# are the one listed in the index file.
|
||||||
|
#
|
||||||
|
# ==== Usage ====
|
||||||
|
#
|
||||||
|
# [--let $relocate_disable_query_log= 1]
|
||||||
|
# [--let $rpl_debug= 1]
|
||||||
|
# [--let $relocate_is_windows= 0]
|
||||||
|
# [--let $relocate_recreate_index= 0]
|
||||||
|
# [--let $relocate_fix_relay_log_info= 0]
|
||||||
|
# --let $relocate_from= DIR
|
||||||
|
# --let $relocate_to= DIR
|
||||||
|
# --let $relocate_index_file= FNAME
|
||||||
|
# --source include/relocate_binlogs.inc
|
||||||
|
|
||||||
|
if ($relocate_disable_query_log)
|
||||||
|
{
|
||||||
|
--disable_query_log
|
||||||
|
}
|
||||||
|
|
||||||
|
--let $_path_separator=/
|
||||||
|
if ($relocate_is_windows)
|
||||||
|
{
|
||||||
|
--let $_path_separator=\
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($relocate_index_file)
|
||||||
|
{
|
||||||
|
SET SQL_LOG_BIN=0;
|
||||||
|
CREATE TEMPORARY TABLE tmp(id INT AUTO_INCREMENT PRIMARY KEY, filename VARCHAR(1024));
|
||||||
|
|
||||||
|
--let $write_var=
|
||||||
|
--let $_index_file= $relocate_index_file
|
||||||
|
--let $_index_file_basename= `SELECT RIGHT(RTRIM("$_index_file"), LOCATE("$_path_separator",REVERSE(RTRIM("$_index_file"))) -1)`
|
||||||
|
--let $_from= $relocate_from
|
||||||
|
--let $_to= $relocate_into
|
||||||
|
|
||||||
|
# chmod to allow the following LOAD DATA
|
||||||
|
--chmod 0666 $_index_file
|
||||||
|
|
||||||
|
--eval LOAD DATA INFILE '$_index_file' INTO TABLE tmp (filename)
|
||||||
|
--let $count= `SELECT count(*) FROM tmp`
|
||||||
|
|
||||||
|
while ($count)
|
||||||
|
{
|
||||||
|
--let $_filename= `select filename from tmp where id=$count`
|
||||||
|
|
||||||
|
--let $_filename= `SELECT RIGHT(RTRIM("$_filename"), LOCATE("$_path_separator",REVERSE(RTRIM("$_filename"))) -1)`
|
||||||
|
--move_file $_from/$_filename $_to/$_filename
|
||||||
|
|
||||||
|
if ($relocate_recreate_index)
|
||||||
|
{
|
||||||
|
|
||||||
|
if ($relocate_is_windows)
|
||||||
|
{
|
||||||
|
--let $_write_var=$_to\$_filename\n
|
||||||
|
}
|
||||||
|
if (!$relocate_is_windows)
|
||||||
|
{
|
||||||
|
--let $_write_var=$_to/$_filename\n
|
||||||
|
}
|
||||||
|
if (!$write_var)
|
||||||
|
{
|
||||||
|
--let $write_var=$_write_var
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!`SELECT STRCMP('$write_var', '$_write_var') = 0`)
|
||||||
|
{
|
||||||
|
--let $write_var=$_write_var$write_var
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
--dec $count
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!$relocate_recreate_index)
|
||||||
|
{
|
||||||
|
--move_file $_index_file $_to/$_index_file_basename
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($relocate_recreate_index)
|
||||||
|
{
|
||||||
|
--let $write_to_file= $_to/$_index_file_basename
|
||||||
|
--source include/write_var_to_file.inc
|
||||||
|
--remove_file $_index_file
|
||||||
|
}
|
||||||
|
|
||||||
|
DROP TEMPORARY TABLE tmp;
|
||||||
|
|
||||||
|
if ($relocate_fix_relay_log_info)
|
||||||
|
{
|
||||||
|
CREATE TEMPORARY TABLE tmp(id INT AUTO_INCREMENT PRIMARY KEY, entry VARCHAR(1024));
|
||||||
|
--let $write_var=
|
||||||
|
|
||||||
|
# chmod to allow the following LOAD DATA
|
||||||
|
--chmod 0666 $relocate_fix_relay_log_info
|
||||||
|
|
||||||
|
--eval LOAD DATA INFILE '$relocate_fix_relay_log_info' INTO TABLE tmp (entry)
|
||||||
|
--let $count= `SELECT count(*) FROM tmp`
|
||||||
|
|
||||||
|
--let $_curr_entry= `SELECT entry FROM tmp WHERE id=1`
|
||||||
|
--let $_curr_entry_basename= `SELECT RIGHT(RTRIM("$_curr_entry"), LOCATE("$_path_separator",REVERSE(RTRIM("$_curr_entry"))) -1)`
|
||||||
|
|
||||||
|
if ($relocate_is_windows)
|
||||||
|
{
|
||||||
|
--eval UPDATE tmp SET entry='$_to\$_curr_entry_basename' WHERE id=1
|
||||||
|
}
|
||||||
|
if (!$relocate_is_windows)
|
||||||
|
{
|
||||||
|
--eval UPDATE tmp SET entry='$_to/$_curr_entry_basename' WHERE id=1
|
||||||
|
}
|
||||||
|
|
||||||
|
--remove_file $relocate_fix_relay_log_info
|
||||||
|
|
||||||
|
while($count)
|
||||||
|
{
|
||||||
|
--let $_write_var= `SELECT entry FROM tmp WHERE id= $count`
|
||||||
|
--let $write_var=$_write_var\n$write_var
|
||||||
|
--dec $count
|
||||||
|
}
|
||||||
|
|
||||||
|
--let $write_to_file= $relocate_fix_relay_log_info
|
||||||
|
--source include/write_var_to_file.inc
|
||||||
|
|
||||||
|
DROP TEMPORARY TABLE tmp;
|
||||||
|
}
|
||||||
|
SET SQL_LOG_BIN=1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if ($relocate_disable_query_log)
|
||||||
|
{
|
||||||
|
--enable_query_log
|
||||||
|
}
|
@ -1,57 +1,77 @@
|
|||||||
drop table if exists t1, t2;
|
drop table if exists t1, t2;
|
||||||
|
set debug_sync='RESET';
|
||||||
create table t1 (n1 int, n2 int, n3 int,
|
create table t1 (n1 int, n2 int, n3 int,
|
||||||
key (n1, n2, n3),
|
key (n1, n2, n3),
|
||||||
key (n2, n3, n1),
|
key (n2, n3, n1),
|
||||||
key (n3, n1, n2));
|
key (n3, n1, n2));
|
||||||
create table t2 (i int);
|
create table t2 (i int);
|
||||||
alter table t1 disable keys;
|
alter table t1 disable keys;
|
||||||
insert into t1 values (RAND()*1000, RAND()*1000, RAND()*1000);
|
insert into t1 values (1, 2, 3);
|
||||||
reset master;
|
reset master;
|
||||||
set session debug="+d,sleep_alter_enable_indexes";
|
set debug_sync='alter_table_enable_indexes SIGNAL parked WAIT_FOR go';
|
||||||
alter table t1 enable keys;;
|
alter table t1 enable keys;;
|
||||||
|
set debug_sync='now WAIT_FOR parked';
|
||||||
insert into t2 values (1);
|
insert into t2 values (1);
|
||||||
insert into t1 values (1, 1, 1);
|
insert into t1 values (1, 1, 1);;
|
||||||
set session debug="-d,sleep_alter_enable_indexes";
|
set debug_sync='now SIGNAL go';
|
||||||
show binlog events from <binlog_start>;
|
show binlog events from <binlog_start>;
|
||||||
Log_name Pos Event_type Server_id End_log_pos Info
|
Log_name Pos Event_type Server_id End_log_pos Info
|
||||||
|
master-bin.000001 # Query # # BEGIN
|
||||||
master-bin.000001 # Query # # use `test`; insert into t2 values (1)
|
master-bin.000001 # Query # # use `test`; insert into t2 values (1)
|
||||||
|
master-bin.000001 # Query # # COMMIT
|
||||||
master-bin.000001 # Query # # use `test`; alter table t1 enable keys
|
master-bin.000001 # Query # # use `test`; alter table t1 enable keys
|
||||||
|
master-bin.000001 # Query # # BEGIN
|
||||||
master-bin.000001 # Query # # use `test`; insert into t1 values (1, 1, 1)
|
master-bin.000001 # Query # # use `test`; insert into t1 values (1, 1, 1)
|
||||||
|
master-bin.000001 # Query # # COMMIT
|
||||||
drop tables t1, t2;
|
drop tables t1, t2;
|
||||||
|
set debug_sync='RESET';
|
||||||
End of 5.0 tests
|
End of 5.0 tests
|
||||||
drop table if exists t1, t2, t3;
|
drop table if exists t1, t2, t3;
|
||||||
create table t1 (i int);
|
create table t1 (i int);
|
||||||
reset master;
|
reset master;
|
||||||
set session debug="+d,sleep_alter_before_main_binlog";
|
set debug_sync='alter_table_before_main_binlog SIGNAL parked WAIT_FOR go';
|
||||||
alter table t1 change i c char(10) default 'Test1';;
|
alter table t1 change i c char(10) default 'Test1';;
|
||||||
insert into t1 values ();
|
set debug_sync='now WAIT_FOR parked';
|
||||||
|
insert into t1 values ();;
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
select * from t1;
|
select * from t1;
|
||||||
c
|
c
|
||||||
Test1
|
Test1
|
||||||
|
set debug_sync='alter_table_before_main_binlog SIGNAL parked WAIT_FOR go';
|
||||||
alter table t1 change c vc varchar(100) default 'Test2';;
|
alter table t1 change c vc varchar(100) default 'Test2';;
|
||||||
rename table t1 to t2;
|
set debug_sync='now WAIT_FOR parked';
|
||||||
|
rename table t1 to t2;;
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
drop table t2;
|
drop table t2;
|
||||||
create table t1 (i int);
|
create table t1 (i int);
|
||||||
|
set debug_sync='alter_table_before_main_binlog SIGNAL parked WAIT_FOR go';
|
||||||
alter table t1 change i c char(10) default 'Test3', rename to t2;;
|
alter table t1 change i c char(10) default 'Test3', rename to t2;;
|
||||||
insert into t2 values ();
|
set debug_sync='now WAIT_FOR parked';
|
||||||
|
insert into t2 values();;
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
select * from t2;
|
select * from t2;
|
||||||
c
|
c
|
||||||
Test3
|
Test3
|
||||||
alter table t2 change c vc varchar(100) default 'Test2', rename to t1;;
|
alter table t2 change c vc varchar(100) default 'Test2', rename to t1;;
|
||||||
rename table t1 to t3;
|
rename table t1 to t3;
|
||||||
drop table t3;
|
drop table t3;
|
||||||
set session debug="-d,sleep_alter_before_main_binlog";
|
set debug_sync='alter_table_before_main_binlog SIGNAL parked WAIT_FOR go';
|
||||||
|
set debug_sync='RESET';
|
||||||
show binlog events from <binlog_start>;
|
show binlog events from <binlog_start>;
|
||||||
Log_name Pos Event_type Server_id End_log_pos Info
|
Log_name Pos Event_type Server_id End_log_pos Info
|
||||||
master-bin.000001 # Query # # use `test`; alter table t1 change i c char(10) default 'Test1'
|
master-bin.000001 # Query # # use `test`; alter table t1 change i c char(10) default 'Test1'
|
||||||
|
master-bin.000001 # Query # # BEGIN
|
||||||
master-bin.000001 # Query # # use `test`; insert into t1 values ()
|
master-bin.000001 # Query # # use `test`; insert into t1 values ()
|
||||||
|
master-bin.000001 # Query # # COMMIT
|
||||||
master-bin.000001 # Query # # use `test`; alter table t1 change c vc varchar(100) default 'Test2'
|
master-bin.000001 # Query # # use `test`; alter table t1 change c vc varchar(100) default 'Test2'
|
||||||
master-bin.000001 # Query # # use `test`; rename table t1 to t2
|
master-bin.000001 # Query # # use `test`; rename table t1 to t2
|
||||||
master-bin.000001 # Query # # use `test`; drop table t2
|
master-bin.000001 # Query # # use `test`; DROP TABLE `t2` /* generated by server */
|
||||||
master-bin.000001 # Query # # use `test`; create table t1 (i int)
|
master-bin.000001 # Query # # use `test`; create table t1 (i int)
|
||||||
master-bin.000001 # Query # # use `test`; alter table t1 change i c char(10) default 'Test3', rename to t2
|
master-bin.000001 # Query # # use `test`; alter table t1 change i c char(10) default 'Test3', rename to t2
|
||||||
master-bin.000001 # Query # # use `test`; insert into t2 values ()
|
master-bin.000001 # Query # # BEGIN
|
||||||
|
master-bin.000001 # Query # # use `test`; insert into t2 values()
|
||||||
|
master-bin.000001 # Query # # COMMIT
|
||||||
master-bin.000001 # Query # # use `test`; alter table t2 change c vc varchar(100) default 'Test2', rename to t1
|
master-bin.000001 # Query # # use `test`; alter table t2 change c vc varchar(100) default 'Test2', rename to t1
|
||||||
master-bin.000001 # Query # # use `test`; rename table t1 to t3
|
master-bin.000001 # Query # # use `test`; rename table t1 to t3
|
||||||
master-bin.000001 # Query # # use `test`; drop table t3
|
master-bin.000001 # Query # # use `test`; DROP TABLE `t3` /* generated by server */
|
||||||
End of 5.1 tests
|
End of 5.1 tests
|
||||||
|
@ -12832,3 +12832,22 @@ a b c d e f
|
|||||||
-1 b c d e 1
|
-1 b c d e 1
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
SET sort_buffer_size=DEFAULT;
|
SET sort_buffer_size=DEFAULT;
|
||||||
|
#
|
||||||
|
# BUG#11758979 - 51252: ARCHIVE TABLES STILL FAIL UNDER STRESS
|
||||||
|
# TESTS: CRASH, CORRUPTION, 4G MEMOR
|
||||||
|
# (to be executed with valgrind)
|
||||||
|
CREATE TABLE t1(a BLOB, b VARCHAR(200)) ENGINE=ARCHIVE;
|
||||||
|
INSERT INTO t1 VALUES(NULL, '');
|
||||||
|
FLUSH TABLE t1;
|
||||||
|
# we need this select to workaround BUG#11764364
|
||||||
|
SELECT * FROM t1;
|
||||||
|
a b
|
||||||
|
NULL
|
||||||
|
CHECKSUM TABLE t1 EXTENDED;
|
||||||
|
Table Checksum
|
||||||
|
test.t1 286155052
|
||||||
|
FLUSH TABLE t1;
|
||||||
|
OPTIMIZE TABLE t1;
|
||||||
|
Table Op Msg_type Msg_text
|
||||||
|
test.t1 optimize status OK
|
||||||
|
DROP TABLE t1;
|
||||||
|
@ -1,7 +1,10 @@
|
|||||||
drop table if exists t1,t2,t3,t4,t5;
|
drop table if exists t1,t2,t3,t4,t5;
|
||||||
set session debug="+d,sleep_create_select_before_create";
|
set debug_sync='RESET';
|
||||||
|
set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
|
||||||
create table t1 select 1 as i;;
|
create table t1 select 1 as i;;
|
||||||
create table t1 (j char(5));
|
set debug_sync='now WAIT_FOR parked';
|
||||||
|
create table t1 (j char(5));;
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
ERROR 42S01: Table 't1' already exists
|
ERROR 42S01: Table 't1' already exists
|
||||||
show create table t1;
|
show create table t1;
|
||||||
Table Create Table
|
Table Create Table
|
||||||
@ -9,8 +12,11 @@ t1 CREATE TABLE `t1` (
|
|||||||
`i` int(1) NOT NULL DEFAULT '0'
|
`i` int(1) NOT NULL DEFAULT '0'
|
||||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
|
||||||
create table t1 select 1 as i;;
|
create table t1 select 1 as i;;
|
||||||
create table t1 select "Test" as j;
|
set debug_sync='now WAIT_FOR parked';
|
||||||
|
create table t1 select 'Test' as j;;
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
ERROR 42S01: Table 't1' already exists
|
ERROR 42S01: Table 't1' already exists
|
||||||
show create table t1;
|
show create table t1;
|
||||||
Table Create Table
|
Table Create Table
|
||||||
@ -19,8 +25,11 @@ t1 CREATE TABLE `t1` (
|
|||||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||||
drop table t1;
|
drop table t1;
|
||||||
create table t3 (j char(5));
|
create table t3 (j char(5));
|
||||||
|
set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
|
||||||
create table t1 select 1 as i;;
|
create table t1 select 1 as i;;
|
||||||
create table t1 like t3;
|
set debug_sync='now WAIT_FOR parked';
|
||||||
|
create table t1 like t3;;
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
ERROR 42S01: Table 't1' already exists
|
ERROR 42S01: Table 't1' already exists
|
||||||
show create table t1;
|
show create table t1;
|
||||||
Table Create Table
|
Table Create Table
|
||||||
@ -28,8 +37,11 @@ t1 CREATE TABLE `t1` (
|
|||||||
`i` int(1) NOT NULL DEFAULT '0'
|
`i` int(1) NOT NULL DEFAULT '0'
|
||||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
|
||||||
create table t1 select 1 as i;;
|
create table t1 select 1 as i;;
|
||||||
rename table t3 to t1;
|
set debug_sync='now WAIT_FOR parked';
|
||||||
|
rename table t3 to t1;;
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
ERROR 42S01: Table 't1' already exists
|
ERROR 42S01: Table 't1' already exists
|
||||||
show create table t1;
|
show create table t1;
|
||||||
Table Create Table
|
Table Create Table
|
||||||
@ -37,82 +49,117 @@ t1 CREATE TABLE `t1` (
|
|||||||
`i` int(1) NOT NULL DEFAULT '0'
|
`i` int(1) NOT NULL DEFAULT '0'
|
||||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
|
||||||
create table t1 select 1 as i;;
|
create table t1 select 1 as i;;
|
||||||
|
set debug_sync='now WAIT_FOR parked';
|
||||||
alter table t3 rename to t1;
|
alter table t3 rename to t1;
|
||||||
ERROR 42S01: Table 't1' already exists
|
ERROR 42S01: Table 't1' already exists
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
show create table t1;
|
show create table t1;
|
||||||
Table Create Table
|
Table Create Table
|
||||||
t1 CREATE TABLE `t1` (
|
t1 CREATE TABLE `t1` (
|
||||||
`i` int(1) NOT NULL DEFAULT '0'
|
`i` int(1) NOT NULL DEFAULT '0'
|
||||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
|
||||||
create table t1 select 1 as i;;
|
create table t1 select 1 as i;;
|
||||||
|
set debug_sync='now WAIT_FOR parked';
|
||||||
alter table t3 rename to t1, add k int;
|
alter table t3 rename to t1, add k int;
|
||||||
ERROR 42S01: Table 't1' already exists
|
ERROR 42S01: Table 't1' already exists
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
show create table t1;
|
show create table t1;
|
||||||
Table Create Table
|
Table Create Table
|
||||||
t1 CREATE TABLE `t1` (
|
t1 CREATE TABLE `t1` (
|
||||||
`i` int(1) NOT NULL DEFAULT '0'
|
`i` int(1) NOT NULL DEFAULT '0'
|
||||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||||
drop table t1, t3;
|
drop table t1,t3;
|
||||||
set session debug="-d,sleep_create_select_before_create:+d,sleep_create_select_before_open";
|
set debug_sync='create_table_select_before_open SIGNAL parked WAIT_FOR go';
|
||||||
|
set debug_sync='create_table_select_before_open SIGNAL parked WAIT_FOR go';
|
||||||
create table t1 select 1 as i;;
|
create table t1 select 1 as i;;
|
||||||
drop table t1;
|
set debug_sync='now WAIT_FOR parked';
|
||||||
|
drop table t1;;
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
|
set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
|
||||||
create table t1 select 1 as i;;
|
create table t1 select 1 as i;;
|
||||||
rename table t1 to t2;
|
set debug_sync='now WAIT_FOR parked';
|
||||||
|
rename table t1 to t2;;
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
drop table t2;
|
drop table t2;
|
||||||
|
set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
|
||||||
create table t1 select 1 as i;;
|
create table t1 select 1 as i;;
|
||||||
select * from t1;
|
set debug_sync='now WAIT_FOR parked';
|
||||||
|
select * from t1;;
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
i
|
i
|
||||||
1
|
1
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
|
||||||
create table t1 select 1 as i;;
|
create table t1 select 1 as i;;
|
||||||
insert into t1 values (2);
|
set debug_sync='now WAIT_FOR parked';
|
||||||
|
insert into t1 values (2);;
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
select * from t1;
|
select * from t1;
|
||||||
i
|
i
|
||||||
1
|
1
|
||||||
2
|
2
|
||||||
drop table t1;
|
drop table t1;
|
||||||
set @a:=0;
|
set @a:=0;
|
||||||
|
set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
|
||||||
create table t1 select 1 as i;;
|
create table t1 select 1 as i;;
|
||||||
create trigger t1_bi before insert on t1 for each row set @a:=1;
|
set debug_sync='now WAIT_FOR parked';
|
||||||
|
create trigger t1_bi before insert on t1 for each row set @a:=1;;
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
select @a;
|
select @a;
|
||||||
@a
|
@a
|
||||||
0
|
0
|
||||||
drop table t1;
|
drop table t1;
|
||||||
set session debug="-d,sleep_create_select_before_open:+d,sleep_create_select_before_lock";
|
set debug_sync='create_table_select_before_lock SIGNAL parked WAIT_FOR go';
|
||||||
create table t1 select 1 as i;;
|
create table t1 select 1 as i;;
|
||||||
drop table t1;
|
set debug_sync='now WAIT_FOR parked';
|
||||||
|
drop table t1;;
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
|
set debug_sync='create_table_select_before_lock SIGNAL parked WAIT_FOR go';
|
||||||
create table t1 select 1 as i;;
|
create table t1 select 1 as i;;
|
||||||
rename table t1 to t2;
|
set debug_sync='now WAIT_FOR parked';
|
||||||
|
rename table t1 to t2;;
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
drop table t2;
|
drop table t2;
|
||||||
|
set debug_sync='create_table_select_before_lock SIGNAL parked WAIT_FOR go';
|
||||||
create table t1 select 1 as i;;
|
create table t1 select 1 as i;;
|
||||||
select * from t1;
|
set debug_sync='now WAIT_FOR parked';
|
||||||
|
select * from t1;;
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
i
|
i
|
||||||
1
|
1
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
set debug_sync='create_table_select_before_lock SIGNAL parked WAIT_FOR go';
|
||||||
create table t1 select 1 as i;;
|
create table t1 select 1 as i;;
|
||||||
insert into t1 values (2);
|
set debug_sync='now WAIT_FOR parked';
|
||||||
|
insert into t1 values (2);;
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
select * from t1;
|
select * from t1;
|
||||||
i
|
i
|
||||||
1
|
1
|
||||||
2
|
2
|
||||||
drop table t1;
|
drop table t1;
|
||||||
set @a:=0;
|
set @a:=0;
|
||||||
|
set debug_sync='create_table_select_before_lock SIGNAL parked WAIT_FOR go';
|
||||||
create table t1 select 1 as i;;
|
create table t1 select 1 as i;;
|
||||||
create trigger t1_bi before insert on t1 for each row set @a:=1;
|
set debug_sync='now WAIT_FOR parked';
|
||||||
|
create trigger t1_bi before insert on t1 for each row set @a:=1;;
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
select @a;
|
select @a;
|
||||||
@a
|
@a
|
||||||
0
|
0
|
||||||
drop table t1;
|
drop table t1;
|
||||||
set session debug="-d,sleep_create_select_before_lock:+d,sleep_create_select_before_check_if_exists";
|
set debug_sync='create_table_select_before_check_if_exists SIGNAL parked WAIT_FOR go';
|
||||||
create table t1 (i int);
|
|
||||||
create table if not exists t1 select 1 as i;;
|
create table if not exists t1 select 1 as i;;
|
||||||
drop table t1;
|
set debug_sync='now WAIT_FOR parked';
|
||||||
Warnings:
|
drop table t1;;
|
||||||
Note 1050 Table 't1' already exists
|
set debug_sync='now SIGNAL go';
|
||||||
create table t1 (i int);
|
create table t1 (i int);
|
||||||
set @a:=0;
|
set @a:=0;
|
||||||
|
set debug_sync='create_table_select_before_check_if_exists SIGNAL parked WAIT_FOR go';
|
||||||
create table if not exists t1 select 1 as i;;
|
create table if not exists t1 select 1 as i;;
|
||||||
create trigger t1_bi before insert on t1 for each row set @a:=1;
|
create trigger t1_bi before insert on t1 for each row set @a:=1;
|
||||||
Warnings:
|
Warnings:
|
||||||
@ -122,53 +169,17 @@ select @a;
|
|||||||
0
|
0
|
||||||
select * from t1;
|
select * from t1;
|
||||||
i
|
i
|
||||||
1
|
|
||||||
drop table t1;
|
drop table t1;
|
||||||
set session debug="-d,sleep_create_select_before_check_if_exists";
|
|
||||||
create table t2 (a int);
|
|
||||||
create table t4 (b int);
|
|
||||||
lock table t4 write;
|
|
||||||
select 1;
|
|
||||||
1
|
|
||||||
1
|
|
||||||
create table t3 as select * from t4;;
|
|
||||||
create table t1 select * from t2, t3;;
|
|
||||||
unlock tables;
|
|
||||||
select * from t1;
|
|
||||||
a b
|
|
||||||
show create table t1;
|
|
||||||
Table Create Table
|
|
||||||
t1 CREATE TABLE `t1` (
|
|
||||||
`a` int(11) DEFAULT NULL,
|
|
||||||
`b` int(11) DEFAULT NULL
|
|
||||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
|
||||||
drop table t1, t3;
|
|
||||||
lock table t4 read;
|
|
||||||
select 1;
|
|
||||||
1
|
|
||||||
1
|
|
||||||
rename table t4 to t3;;
|
|
||||||
create table if not exists t1 select 1 as i from t2, t3;;
|
|
||||||
create table t5 (j int);
|
|
||||||
rename table t5 to t1;
|
|
||||||
unlock tables;
|
|
||||||
Warnings:
|
|
||||||
Note 1050 Table 't1' already exists
|
|
||||||
select * from t1;
|
|
||||||
j
|
|
||||||
show create table t1;
|
|
||||||
Table Create Table
|
|
||||||
t1 CREATE TABLE `t1` (
|
|
||||||
`j` int(11) DEFAULT NULL
|
|
||||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
|
||||||
drop table t1, t2, t3;
|
|
||||||
drop table if exists t1,t2;
|
drop table if exists t1,t2;
|
||||||
|
set debug_sync='RESET';
|
||||||
create table t1 (i int);
|
create table t1 (i int);
|
||||||
set session debug="+d,sleep_create_like_before_check_if_exists";
|
set debug_sync='create_table_like_after_open SIGNAL parked WAIT_FOR go';
|
||||||
reset master;
|
reset master;
|
||||||
create table t2 like t1;;
|
create table t2 like t1;;
|
||||||
|
set debug_sync='now WAIT_FOR parked';
|
||||||
insert into t1 values (1);
|
insert into t1 values (1);
|
||||||
drop table t1;
|
drop table t1;;
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
show create table t2;
|
show create table t2;
|
||||||
Table Create Table
|
Table Create Table
|
||||||
t2 CREATE TABLE `t2` (
|
t2 CREATE TABLE `t2` (
|
||||||
@ -177,71 +188,41 @@ t2 CREATE TABLE `t2` (
|
|||||||
drop table t2;
|
drop table t2;
|
||||||
show binlog events from <binlog_start>;
|
show binlog events from <binlog_start>;
|
||||||
Log_name Pos Event_type Server_id End_log_pos Info
|
Log_name Pos Event_type Server_id End_log_pos Info
|
||||||
|
master-bin.000001 # Query # # BEGIN
|
||||||
master-bin.000001 # Query # # use `test`; insert into t1 values (1)
|
master-bin.000001 # Query # # use `test`; insert into t1 values (1)
|
||||||
|
master-bin.000001 # Query # # COMMIT
|
||||||
master-bin.000001 # Query # # use `test`; create table t2 like t1
|
master-bin.000001 # Query # # use `test`; create table t2 like t1
|
||||||
master-bin.000001 # Query # # use `test`; drop table t1
|
master-bin.000001 # Query # # use `test`; DROP TABLE `t1` /* generated by server */
|
||||||
master-bin.000001 # Query # # use `test`; drop table t2
|
master-bin.000001 # Query # # use `test`; DROP TABLE `t2` /* generated by server */
|
||||||
create table t1 (i int);
|
create table t1 (i int);
|
||||||
set session debug="-d,sleep_create_like_before_check_if_exists:+d,sleep_create_like_before_copy";
|
set debug_sync='create_table_like_before_binlog SIGNAL parked WAIT_FOR go';
|
||||||
create table t2 like t1;;
|
|
||||||
create table if not exists t2 (j int);
|
|
||||||
Warnings:
|
|
||||||
Note 1050 Table 't2' already exists
|
|
||||||
show create table t2;
|
|
||||||
Table Create Table
|
|
||||||
t2 CREATE TABLE `t2` (
|
|
||||||
`i` int(11) DEFAULT NULL
|
|
||||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
|
||||||
drop table t2;
|
|
||||||
reset master;
|
reset master;
|
||||||
create table t2 like t1;;
|
create table t2 like t1;;
|
||||||
drop table t1;
|
set debug_sync='now WAIT_FOR parked';
|
||||||
drop table t2;
|
insert into t2 values (1);;
|
||||||
show binlog events from <binlog_start>;
|
set debug_sync='now SIGNAL go';
|
||||||
Log_name Pos Event_type Server_id End_log_pos Info
|
|
||||||
master-bin.000001 # Query # # use `test`; create table t2 like t1
|
|
||||||
master-bin.000001 # Query # # use `test`; drop table t1
|
|
||||||
master-bin.000001 # Query # # use `test`; drop table t2
|
|
||||||
create table t1 (i int);
|
|
||||||
set session debug="-d,sleep_create_like_before_copy:+d,sleep_create_like_before_ha_create";
|
|
||||||
reset master;
|
|
||||||
create table t2 like t1;;
|
|
||||||
insert into t2 values (1);
|
|
||||||
drop table t2;
|
|
||||||
create table t2 like t1;;
|
|
||||||
drop table t2;
|
|
||||||
create table t2 like t1;;
|
|
||||||
drop table t1;
|
|
||||||
drop table t2;
|
drop table t2;
|
||||||
|
set debug_sync='create_table_like_before_binlog SIGNAL parked WAIT_FOR go';
|
||||||
|
create table t2 like t1;;
|
||||||
|
set debug_sync='now WAIT_FOR parked';
|
||||||
|
drop table t2;;
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
|
set debug_sync='create_table_like_before_binlog SIGNAL parked WAIT_FOR go';
|
||||||
|
create table t2 like t1;;
|
||||||
|
set debug_sync='now WAIT_FOR parked';
|
||||||
|
drop table t1;;
|
||||||
|
set debug_sync='now SIGNAL go';
|
||||||
|
drop table t2;
|
||||||
|
set debug_sync='RESET';
|
||||||
show binlog events from <binlog_start>;
|
show binlog events from <binlog_start>;
|
||||||
Log_name Pos Event_type Server_id End_log_pos Info
|
Log_name Pos Event_type Server_id End_log_pos Info
|
||||||
master-bin.000001 # Query # # use `test`; create table t2 like t1
|
master-bin.000001 # Query # # use `test`; create table t2 like t1
|
||||||
|
master-bin.000001 # Query # # BEGIN
|
||||||
master-bin.000001 # Query # # use `test`; insert into t2 values (1)
|
master-bin.000001 # Query # # use `test`; insert into t2 values (1)
|
||||||
master-bin.000001 # Query # # use `test`; drop table t2
|
master-bin.000001 # Query # # COMMIT
|
||||||
|
master-bin.000001 # Query # # use `test`; DROP TABLE `t2` /* generated by server */
|
||||||
master-bin.000001 # Query # # use `test`; create table t2 like t1
|
master-bin.000001 # Query # # use `test`; create table t2 like t1
|
||||||
master-bin.000001 # Query # # use `test`; drop table t2
|
master-bin.000001 # Query # # use `test`; DROP TABLE `t2` /* generated by server */
|
||||||
master-bin.000001 # Query # # use `test`; create table t2 like t1
|
master-bin.000001 # Query # # use `test`; create table t2 like t1
|
||||||
master-bin.000001 # Query # # use `test`; drop table t1
|
master-bin.000001 # Query # # use `test`; DROP TABLE `t1` /* generated by server */
|
||||||
master-bin.000001 # Query # # use `test`; drop table t2
|
master-bin.000001 # Query # # use `test`; DROP TABLE `t2` /* generated by server */
|
||||||
create table t1 (i int);
|
|
||||||
set session debug="-d,sleep_create_like_before_ha_create:+d,sleep_create_like_before_binlogging";
|
|
||||||
reset master;
|
|
||||||
create table t2 like t1;;
|
|
||||||
insert into t2 values (1);
|
|
||||||
drop table t2;
|
|
||||||
create table t2 like t1;;
|
|
||||||
drop table t2;
|
|
||||||
create table t2 like t1;;
|
|
||||||
drop table t1;
|
|
||||||
drop table t2;
|
|
||||||
show binlog events from <binlog_start>;
|
|
||||||
Log_name Pos Event_type Server_id End_log_pos Info
|
|
||||||
master-bin.000001 # Query # # use `test`; create table t2 like t1
|
|
||||||
master-bin.000001 # Query # # use `test`; insert into t2 values (1)
|
|
||||||
master-bin.000001 # Query # # use `test`; drop table t2
|
|
||||||
master-bin.000001 # Query # # use `test`; create table t2 like t1
|
|
||||||
master-bin.000001 # Query # # use `test`; drop table t2
|
|
||||||
master-bin.000001 # Query # # use `test`; create table t2 like t1
|
|
||||||
master-bin.000001 # Query # # use `test`; drop table t1
|
|
||||||
master-bin.000001 # Query # # use `test`; drop table t2
|
|
||||||
set session debug="-d,sleep_create_like_before_binlogging";
|
|
||||||
|
@ -1127,5 +1127,19 @@ NULL
|
|||||||
Warnings:
|
Warnings:
|
||||||
Warning 1301 Result of repeat() was larger than max_allowed_packet (1048576) - truncated
|
Warning 1301 Result of repeat() was larger than max_allowed_packet (1048576) - truncated
|
||||||
#
|
#
|
||||||
|
# Bug#11750518 41090: ORDER BY TRUNCATES GROUP_CONCAT RESULT
|
||||||
|
#
|
||||||
|
SET NAMES utf8, @@character_set_connection=utf16;
|
||||||
|
SELECT id, CHAR_LENGTH(GROUP_CONCAT(body)) AS l
|
||||||
|
FROM (SELECT 'a' AS id, REPEAT('foo bar', 100) AS body
|
||||||
|
UNION ALL
|
||||||
|
SELECT 'a' AS id, REPEAT('bla bla', 100) AS body) t1
|
||||||
|
GROUP BY id
|
||||||
|
ORDER BY l DESC;
|
||||||
|
id l
|
||||||
|
a 512
|
||||||
|
Warnings:
|
||||||
|
Warning 1260 Row 1 was cut by GROUP_CONCAT()
|
||||||
|
#
|
||||||
# End of 5.5 tests
|
# End of 5.5 tests
|
||||||
#
|
#
|
||||||
|
@ -1168,5 +1168,19 @@ CASE s1 WHEN 'a' THEN 'b' ELSE 'c' END
|
|||||||
b
|
b
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
#
|
#
|
||||||
|
# Bug#11750518 41090: ORDER BY TRUNCATES GROUP_CONCAT RESULT
|
||||||
|
#
|
||||||
|
SET NAMES utf8, @@character_set_connection=utf32;
|
||||||
|
SELECT id, CHAR_LENGTH(GROUP_CONCAT(body)) AS l
|
||||||
|
FROM (SELECT 'a' AS id, REPEAT('foo bar', 100) AS body
|
||||||
|
UNION ALL
|
||||||
|
SELECT 'a' AS id, REPEAT('bla bla', 100) AS body) t1
|
||||||
|
GROUP BY id
|
||||||
|
ORDER BY l DESC;
|
||||||
|
id l
|
||||||
|
a 256
|
||||||
|
Warnings:
|
||||||
|
Warning 1260 Row 1 was cut by GROUP_CONCAT()
|
||||||
|
#
|
||||||
# End of 5.5 tests
|
# End of 5.5 tests
|
||||||
#
|
#
|
||||||
|
@ -2792,7 +2792,7 @@ create table t1 as select group_concat(1,2,3) as c1;
|
|||||||
show create table t1;
|
show create table t1;
|
||||||
Table Create Table
|
Table Create Table
|
||||||
t1 CREATE TABLE `t1` (
|
t1 CREATE TABLE `t1` (
|
||||||
`c1` varchar(342) CHARACTER SET utf8 DEFAULT NULL
|
`c1` text CHARACTER SET utf8
|
||||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||||
drop table t1;
|
drop table t1;
|
||||||
create table t1 as select 1 as c1 union select 'a';
|
create table t1 as select 1 as c1 union select 'a';
|
||||||
@ -5014,5 +5014,19 @@ id select_type table type possible_keys key key_len ref rows filtered Extra
|
|||||||
Warnings:
|
Warnings:
|
||||||
Note 1003 select 'abcdÁÂÃÄÅ' AS `abcdÁÂÃÄÅ`,_latin1'abcd\xC3\x81\xC3\x82\xC3\x83\xC3\x84\xC3\x85' AS `abcdÃÂÃÄÅ`,_utf8'abcd\xC3\x81\xC3\x82\xC3\x83\xC3\x84\xC3\x85' AS `abcdÁÂÃÄÅ`
|
Note 1003 select 'abcdÁÂÃÄÅ' AS `abcdÁÂÃÄÅ`,_latin1'abcd\xC3\x81\xC3\x82\xC3\x83\xC3\x84\xC3\x85' AS `abcdÃÂÃÄÅ`,_utf8'abcd\xC3\x81\xC3\x82\xC3\x83\xC3\x84\xC3\x85' AS `abcdÁÂÃÄÅ`
|
||||||
#
|
#
|
||||||
|
# Bug#11750518 41090: ORDER BY TRUNCATES GROUP_CONCAT RESULT
|
||||||
|
#
|
||||||
|
SET NAMES utf8;
|
||||||
|
SELECT id, CHAR_LENGTH(GROUP_CONCAT(body)) AS l
|
||||||
|
FROM (SELECT 'a' AS id, REPEAT('foo bar', 100) AS body
|
||||||
|
UNION ALL
|
||||||
|
SELECT 'a' AS id, REPEAT('bla bla', 100) AS body) t1
|
||||||
|
GROUP BY id
|
||||||
|
ORDER BY l DESC;
|
||||||
|
id l
|
||||||
|
a 1024
|
||||||
|
Warnings:
|
||||||
|
Warning 1260 Row 2 was cut by GROUP_CONCAT()
|
||||||
|
#
|
||||||
# End of 5.5 tests
|
# End of 5.5 tests
|
||||||
#
|
#
|
||||||
|
@ -203,3 +203,17 @@ c
|
|||||||
NULL
|
NULL
|
||||||
0
|
0
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
#
|
||||||
|
# Bug#12532830
|
||||||
|
# SIGFPE OR ASSERTION (PRECISION <= ((9 * 9) - 8*2)) && (DEC <= 30)
|
||||||
|
#
|
||||||
|
select
|
||||||
|
sum(distinct(if('a',
|
||||||
|
(select adddate(elt(convert(9999999999999999999999999999999999999,decimal(64,0)),count(*)),
|
||||||
|
interval 1 day))
|
||||||
|
, .1))) as foo;
|
||||||
|
foo
|
||||||
|
0.1
|
||||||
|
Warnings:
|
||||||
|
Warning 1292 Truncated incorrect DOUBLE value: 'a'
|
||||||
|
Warning 1292 Truncated incorrect DOUBLE value: 'a'
|
||||||
|
@ -2788,6 +2788,12 @@ format(123,2,'no_NO')
|
|||||||
123,00
|
123,00
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
#
|
#
|
||||||
|
# Bug#11764310 conv function crashes, negative argument to memcpy
|
||||||
|
#
|
||||||
|
SELECT CONV(1,-2147483648,-2147483648);
|
||||||
|
CONV(1,-2147483648,-2147483648)
|
||||||
|
NULL
|
||||||
|
#
|
||||||
# Bug#12985030 SIMPLE QUERY WITH DECIMAL NUMBERS LEAKS MEMORY
|
# Bug#12985030 SIMPLE QUERY WITH DECIMAL NUMBERS LEAKS MEMORY
|
||||||
#
|
#
|
||||||
SELECT (rpad(1.0,2048,1)) IS NOT FALSE;
|
SELECT (rpad(1.0,2048,1)) IS NOT FALSE;
|
||||||
|
@ -1446,4 +1446,13 @@ Warning 1292 Incorrect datetime value: '\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00
|
|||||||
Warning 1441 Datetime function: datetime field overflow
|
Warning 1441 Datetime function: datetime field overflow
|
||||||
Warning 1292 Incorrect datetime value: '\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xF0?\x00\x00\x00\x00\x00\x00\x00@'
|
Warning 1292 Incorrect datetime value: '\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xF0?\x00\x00\x00\x00\x00\x00\x00@'
|
||||||
DROP TABLE g1;
|
DROP TABLE g1;
|
||||||
|
#
|
||||||
|
# Bug#13013970 MORE CRASHES IN FIELD_BLOB::GET_KEY_IMAGE
|
||||||
|
#
|
||||||
|
CREATE TABLE g1(a TEXT NOT NULL, KEY(a(255)));
|
||||||
|
INSERT INTO g1 VALUES ('a'),('a');
|
||||||
|
SELECT 1 FROM g1 WHERE a >= ANY
|
||||||
|
(SELECT 1 FROM g1 WHERE a = geomfromtext('') OR a) ;
|
||||||
|
1
|
||||||
|
DROP TABLE g1;
|
||||||
End of 5.5 tests
|
End of 5.5 tests
|
||||||
|
@ -94,3 +94,27 @@ pk
|
|||||||
drop view v1;
|
drop view v1;
|
||||||
drop table t1;
|
drop table t1;
|
||||||
End of 5.1 tests
|
End of 5.1 tests
|
||||||
|
#
|
||||||
|
# Bug#12540545 61101: ASSERTION FAILURE IN THREAD 1256741184 IN
|
||||||
|
# FILE /BUILDDIR/BUILD/BUILD/MYSQ
|
||||||
|
#
|
||||||
|
CREATE TABLE t1 (a CHAR(1), b CHAR(1), PRIMARY KEY (a,b)) ENGINE=InnoDB;
|
||||||
|
INSERT INTO t1 VALUES ('a', 'b'), ('c', 'd');
|
||||||
|
EXPLAIN SELECT COUNT(DISTINCT a) FROM t1 WHERE b = 'b';
|
||||||
|
id select_type table type possible_keys key key_len ref rows Extra
|
||||||
|
1 SIMPLE t1 index NULL PRIMARY 2 NULL 2 Using where; Using index
|
||||||
|
SELECT COUNT(DISTINCT a) FROM t1 WHERE b = 'b';
|
||||||
|
COUNT(DISTINCT a)
|
||||||
|
1
|
||||||
|
DROP TABLE t1;
|
||||||
|
CREATE TABLE t1 (a CHAR(1) NOT NULL, b CHAR(1) NOT NULL, UNIQUE KEY (a,b))
|
||||||
|
ENGINE=InnoDB;
|
||||||
|
INSERT INTO t1 VALUES ('a', 'b'), ('c', 'd');
|
||||||
|
EXPLAIN SELECT COUNT(DISTINCT a) FROM t1 WHERE b = 'b';
|
||||||
|
id select_type table type possible_keys key key_len ref rows Extra
|
||||||
|
1 SIMPLE t1 index NULL a 2 NULL 2 Using where; Using index
|
||||||
|
SELECT COUNT(DISTINCT a) FROM t1 WHERE b = 'b';
|
||||||
|
COUNT(DISTINCT a)
|
||||||
|
1
|
||||||
|
DROP TABLE t1;
|
||||||
|
End of 5.5 tests
|
||||||
|
@ -13,10 +13,32 @@ FILES
|
|||||||
GLOBAL_STATUS
|
GLOBAL_STATUS
|
||||||
GLOBAL_VARIABLES
|
GLOBAL_VARIABLES
|
||||||
INDEX_STATISTICS
|
INDEX_STATISTICS
|
||||||
|
INNODB_BUFFER_POOL_PAGES
|
||||||
|
INNODB_BUFFER_POOL_PAGES_BLOB
|
||||||
|
INNODB_BUFFER_POOL_PAGES_INDEX
|
||||||
|
INNODB_CMP
|
||||||
|
INNODB_CMPMEM
|
||||||
|
INNODB_CMPMEM_RESET
|
||||||
|
INNODB_CMP_RESET
|
||||||
|
INNODB_INDEX_STATS
|
||||||
|
INNODB_LOCKS
|
||||||
|
INNODB_LOCK_WAITS
|
||||||
|
INNODB_RSEG
|
||||||
|
INNODB_SYS_COLUMNS
|
||||||
|
INNODB_SYS_FIELDS
|
||||||
|
INNODB_SYS_FOREIGN
|
||||||
|
INNODB_SYS_FOREIGN_COLS
|
||||||
|
INNODB_SYS_INDEXES
|
||||||
|
INNODB_SYS_STATS
|
||||||
|
INNODB_SYS_TABLES
|
||||||
|
INNODB_SYS_TABLESTATS
|
||||||
|
INNODB_TABLE_STATS
|
||||||
|
INNODB_TRX
|
||||||
KEY_CACHES
|
KEY_CACHES
|
||||||
KEY_COLUMN_USAGE
|
KEY_COLUMN_USAGE
|
||||||
PARAMETERS
|
PARAMETERS
|
||||||
PARTITIONS
|
PARTITIONS
|
||||||
|
PBXT_STATISTICS
|
||||||
PLUGINS
|
PLUGINS
|
||||||
PROCESSLIST
|
PROCESSLIST
|
||||||
PROFILING
|
PROFILING
|
||||||
@ -36,29 +58,7 @@ TRIGGERS
|
|||||||
USER_PRIVILEGES
|
USER_PRIVILEGES
|
||||||
USER_STATISTICS
|
USER_STATISTICS
|
||||||
VIEWS
|
VIEWS
|
||||||
INNODB_CMPMEM_RESET
|
|
||||||
PBXT_STATISTICS
|
|
||||||
INNODB_CMPMEM
|
|
||||||
INNODB_RSEG
|
|
||||||
INNODB_SYS_TABLESTATS
|
|
||||||
INNODB_LOCK_WAITS
|
|
||||||
INNODB_INDEX_STATS
|
|
||||||
INNODB_CMP
|
|
||||||
INNODB_SYS_FOREIGN_COLS
|
|
||||||
INNODB_CMP_RESET
|
|
||||||
INNODB_BUFFER_POOL_PAGES
|
|
||||||
INNODB_TRX
|
|
||||||
INNODB_BUFFER_POOL_PAGES_INDEX
|
|
||||||
INNODB_LOCKS
|
|
||||||
INNODB_BUFFER_POOL_PAGES_BLOB
|
|
||||||
INNODB_SYS_TABLES
|
|
||||||
INNODB_SYS_FIELDS
|
|
||||||
INNODB_SYS_COLUMNS
|
|
||||||
INNODB_SYS_STATS
|
|
||||||
INNODB_SYS_FOREIGN
|
|
||||||
INNODB_SYS_INDEXES
|
|
||||||
XTRADB_ADMIN_COMMAND
|
XTRADB_ADMIN_COMMAND
|
||||||
INNODB_TABLE_STATS
|
|
||||||
SELECT t.table_name, c1.column_name
|
SELECT t.table_name, c1.column_name
|
||||||
FROM information_schema.tables t
|
FROM information_schema.tables t
|
||||||
INNER JOIN
|
INNER JOIN
|
||||||
@ -72,7 +72,7 @@ FROM information_schema.columns c2
|
|||||||
WHERE c2.table_schema = t.table_schema AND
|
WHERE c2.table_schema = t.table_schema AND
|
||||||
c2.table_name = t.table_name AND
|
c2.table_name = t.table_name AND
|
||||||
c2.column_name LIKE '%SCHEMA%'
|
c2.column_name LIKE '%SCHEMA%'
|
||||||
);
|
) order by t.table_name;
|
||||||
table_name column_name
|
table_name column_name
|
||||||
CHARACTER_SETS CHARACTER_SET_NAME
|
CHARACTER_SETS CHARACTER_SET_NAME
|
||||||
CLIENT_STATISTICS CLIENT
|
CLIENT_STATISTICS CLIENT
|
||||||
@ -86,10 +86,32 @@ FILES TABLE_SCHEMA
|
|||||||
GLOBAL_STATUS VARIABLE_NAME
|
GLOBAL_STATUS VARIABLE_NAME
|
||||||
GLOBAL_VARIABLES VARIABLE_NAME
|
GLOBAL_VARIABLES VARIABLE_NAME
|
||||||
INDEX_STATISTICS TABLE_SCHEMA
|
INDEX_STATISTICS TABLE_SCHEMA
|
||||||
|
INNODB_BUFFER_POOL_PAGES page_type
|
||||||
|
INNODB_BUFFER_POOL_PAGES_BLOB space_id
|
||||||
|
INNODB_BUFFER_POOL_PAGES_INDEX index_id
|
||||||
|
INNODB_CMP page_size
|
||||||
|
INNODB_CMPMEM page_size
|
||||||
|
INNODB_CMPMEM_RESET page_size
|
||||||
|
INNODB_CMP_RESET page_size
|
||||||
|
INNODB_INDEX_STATS table_schema
|
||||||
|
INNODB_LOCKS lock_id
|
||||||
|
INNODB_LOCK_WAITS requesting_trx_id
|
||||||
|
INNODB_RSEG rseg_id
|
||||||
|
INNODB_SYS_COLUMNS TABLE_ID
|
||||||
|
INNODB_SYS_FIELDS INDEX_ID
|
||||||
|
INNODB_SYS_FOREIGN ID
|
||||||
|
INNODB_SYS_FOREIGN_COLS ID
|
||||||
|
INNODB_SYS_INDEXES INDEX_ID
|
||||||
|
INNODB_SYS_STATS INDEX_ID
|
||||||
|
INNODB_SYS_TABLES SCHEMA
|
||||||
|
INNODB_SYS_TABLESTATS SCHEMA
|
||||||
|
INNODB_TABLE_STATS table_schema
|
||||||
|
INNODB_TRX trx_id
|
||||||
KEY_CACHES KEY_CACHE_NAME
|
KEY_CACHES KEY_CACHE_NAME
|
||||||
KEY_COLUMN_USAGE CONSTRAINT_SCHEMA
|
KEY_COLUMN_USAGE CONSTRAINT_SCHEMA
|
||||||
PARAMETERS SPECIFIC_SCHEMA
|
PARAMETERS SPECIFIC_SCHEMA
|
||||||
PARTITIONS TABLE_SCHEMA
|
PARTITIONS TABLE_SCHEMA
|
||||||
|
PBXT_STATISTICS ID
|
||||||
PLUGINS PLUGIN_NAME
|
PLUGINS PLUGIN_NAME
|
||||||
PROCESSLIST ID
|
PROCESSLIST ID
|
||||||
PROFILING QUERY_ID
|
PROFILING QUERY_ID
|
||||||
@ -109,29 +131,7 @@ TRIGGERS TRIGGER_SCHEMA
|
|||||||
USER_PRIVILEGES GRANTEE
|
USER_PRIVILEGES GRANTEE
|
||||||
USER_STATISTICS USER
|
USER_STATISTICS USER
|
||||||
VIEWS TABLE_SCHEMA
|
VIEWS TABLE_SCHEMA
|
||||||
INNODB_CMPMEM_RESET page_size
|
|
||||||
PBXT_STATISTICS ID
|
|
||||||
INNODB_CMPMEM page_size
|
|
||||||
INNODB_RSEG rseg_id
|
|
||||||
INNODB_SYS_TABLESTATS SCHEMA
|
|
||||||
INNODB_LOCK_WAITS requesting_trx_id
|
|
||||||
INNODB_INDEX_STATS table_schema
|
|
||||||
INNODB_CMP page_size
|
|
||||||
INNODB_SYS_FOREIGN_COLS ID
|
|
||||||
INNODB_CMP_RESET page_size
|
|
||||||
INNODB_BUFFER_POOL_PAGES page_type
|
|
||||||
INNODB_TRX trx_id
|
|
||||||
INNODB_BUFFER_POOL_PAGES_INDEX index_id
|
|
||||||
INNODB_LOCKS lock_id
|
|
||||||
INNODB_BUFFER_POOL_PAGES_BLOB space_id
|
|
||||||
INNODB_SYS_TABLES SCHEMA
|
|
||||||
INNODB_SYS_FIELDS INDEX_ID
|
|
||||||
INNODB_SYS_COLUMNS TABLE_ID
|
|
||||||
INNODB_SYS_STATS INDEX_ID
|
|
||||||
INNODB_SYS_FOREIGN ID
|
|
||||||
INNODB_SYS_INDEXES INDEX_ID
|
|
||||||
XTRADB_ADMIN_COMMAND result_message
|
XTRADB_ADMIN_COMMAND result_message
|
||||||
INNODB_TABLE_STATS table_schema
|
|
||||||
SELECT t.table_name, c1.column_name
|
SELECT t.table_name, c1.column_name
|
||||||
FROM information_schema.tables t
|
FROM information_schema.tables t
|
||||||
INNER JOIN
|
INNER JOIN
|
||||||
@ -145,7 +145,7 @@ FROM information_schema.columns c2
|
|||||||
WHERE c2.table_schema = 'information_schema' AND
|
WHERE c2.table_schema = 'information_schema' AND
|
||||||
c2.table_name = t.table_name AND
|
c2.table_name = t.table_name AND
|
||||||
c2.column_name LIKE '%SCHEMA%'
|
c2.column_name LIKE '%SCHEMA%'
|
||||||
);
|
) order by t.table_name;
|
||||||
table_name column_name
|
table_name column_name
|
||||||
CHARACTER_SETS CHARACTER_SET_NAME
|
CHARACTER_SETS CHARACTER_SET_NAME
|
||||||
CLIENT_STATISTICS CLIENT
|
CLIENT_STATISTICS CLIENT
|
||||||
@ -159,10 +159,32 @@ FILES TABLE_SCHEMA
|
|||||||
GLOBAL_STATUS VARIABLE_NAME
|
GLOBAL_STATUS VARIABLE_NAME
|
||||||
GLOBAL_VARIABLES VARIABLE_NAME
|
GLOBAL_VARIABLES VARIABLE_NAME
|
||||||
INDEX_STATISTICS TABLE_SCHEMA
|
INDEX_STATISTICS TABLE_SCHEMA
|
||||||
|
INNODB_BUFFER_POOL_PAGES page_type
|
||||||
|
INNODB_BUFFER_POOL_PAGES_BLOB space_id
|
||||||
|
INNODB_BUFFER_POOL_PAGES_INDEX index_id
|
||||||
|
INNODB_CMP page_size
|
||||||
|
INNODB_CMPMEM page_size
|
||||||
|
INNODB_CMPMEM_RESET page_size
|
||||||
|
INNODB_CMP_RESET page_size
|
||||||
|
INNODB_INDEX_STATS table_schema
|
||||||
|
INNODB_LOCKS lock_id
|
||||||
|
INNODB_LOCK_WAITS requesting_trx_id
|
||||||
|
INNODB_RSEG rseg_id
|
||||||
|
INNODB_SYS_COLUMNS TABLE_ID
|
||||||
|
INNODB_SYS_FIELDS INDEX_ID
|
||||||
|
INNODB_SYS_FOREIGN ID
|
||||||
|
INNODB_SYS_FOREIGN_COLS ID
|
||||||
|
INNODB_SYS_INDEXES INDEX_ID
|
||||||
|
INNODB_SYS_STATS INDEX_ID
|
||||||
|
INNODB_SYS_TABLES SCHEMA
|
||||||
|
INNODB_SYS_TABLESTATS SCHEMA
|
||||||
|
INNODB_TABLE_STATS table_schema
|
||||||
|
INNODB_TRX trx_id
|
||||||
KEY_CACHES KEY_CACHE_NAME
|
KEY_CACHES KEY_CACHE_NAME
|
||||||
KEY_COLUMN_USAGE CONSTRAINT_SCHEMA
|
KEY_COLUMN_USAGE CONSTRAINT_SCHEMA
|
||||||
PARAMETERS SPECIFIC_SCHEMA
|
PARAMETERS SPECIFIC_SCHEMA
|
||||||
PARTITIONS TABLE_SCHEMA
|
PARTITIONS TABLE_SCHEMA
|
||||||
|
PBXT_STATISTICS ID
|
||||||
PLUGINS PLUGIN_NAME
|
PLUGINS PLUGIN_NAME
|
||||||
PROCESSLIST ID
|
PROCESSLIST ID
|
||||||
PROFILING QUERY_ID
|
PROFILING QUERY_ID
|
||||||
@ -182,29 +204,7 @@ TRIGGERS TRIGGER_SCHEMA
|
|||||||
USER_PRIVILEGES GRANTEE
|
USER_PRIVILEGES GRANTEE
|
||||||
USER_STATISTICS USER
|
USER_STATISTICS USER
|
||||||
VIEWS TABLE_SCHEMA
|
VIEWS TABLE_SCHEMA
|
||||||
INNODB_CMPMEM_RESET page_size
|
|
||||||
PBXT_STATISTICS ID
|
|
||||||
INNODB_CMPMEM page_size
|
|
||||||
INNODB_RSEG rseg_id
|
|
||||||
INNODB_SYS_TABLESTATS SCHEMA
|
|
||||||
INNODB_LOCK_WAITS requesting_trx_id
|
|
||||||
INNODB_INDEX_STATS table_schema
|
|
||||||
INNODB_CMP page_size
|
|
||||||
INNODB_SYS_FOREIGN_COLS ID
|
|
||||||
INNODB_CMP_RESET page_size
|
|
||||||
INNODB_BUFFER_POOL_PAGES page_type
|
|
||||||
INNODB_TRX trx_id
|
|
||||||
INNODB_BUFFER_POOL_PAGES_INDEX index_id
|
|
||||||
INNODB_LOCKS lock_id
|
|
||||||
INNODB_BUFFER_POOL_PAGES_BLOB space_id
|
|
||||||
INNODB_SYS_TABLES SCHEMA
|
|
||||||
INNODB_SYS_FIELDS INDEX_ID
|
|
||||||
INNODB_SYS_COLUMNS TABLE_ID
|
|
||||||
INNODB_SYS_STATS INDEX_ID
|
|
||||||
INNODB_SYS_FOREIGN ID
|
|
||||||
INNODB_SYS_INDEXES INDEX_ID
|
|
||||||
XTRADB_ADMIN_COMMAND result_message
|
XTRADB_ADMIN_COMMAND result_message
|
||||||
INNODB_TABLE_STATS table_schema
|
|
||||||
select 1 as f1 from information_schema.tables where "CHARACTER_SETS"=
|
select 1 as f1 from information_schema.tables where "CHARACTER_SETS"=
|
||||||
(select cast(table_name as char) from information_schema.tables
|
(select cast(table_name as char) from information_schema.tables
|
||||||
order by table_name limit 1) limit 1;
|
order by table_name limit 1) limit 1;
|
||||||
@ -283,10 +283,11 @@ TRIGGERS information_schema.TRIGGERS 1
|
|||||||
USER_PRIVILEGES information_schema.USER_PRIVILEGES 1
|
USER_PRIVILEGES information_schema.USER_PRIVILEGES 1
|
||||||
USER_STATISTICS information_schema.USER_STATISTICS 1
|
USER_STATISTICS information_schema.USER_STATISTICS 1
|
||||||
VIEWS information_schema.VIEWS 1
|
VIEWS information_schema.VIEWS 1
|
||||||
|
+---------------------------------------+
|
||||||
|
+---------------------------------------+
|
||||||
|
+---------------------------------------+
|
||||||
Database: information_schema
|
Database: information_schema
|
||||||
+---------------------------------------+
|
|
||||||
| Tables |
|
| Tables |
|
||||||
+---------------------------------------+
|
|
||||||
| CHARACTER_SETS |
|
| CHARACTER_SETS |
|
||||||
| CLIENT_STATISTICS |
|
| CLIENT_STATISTICS |
|
||||||
| COLLATIONS |
|
| COLLATIONS |
|
||||||
@ -299,10 +300,32 @@ Database: information_schema
|
|||||||
| GLOBAL_STATUS |
|
| GLOBAL_STATUS |
|
||||||
| GLOBAL_VARIABLES |
|
| GLOBAL_VARIABLES |
|
||||||
| INDEX_STATISTICS |
|
| INDEX_STATISTICS |
|
||||||
|
| INNODB_BUFFER_POOL_PAGES |
|
||||||
|
| INNODB_BUFFER_POOL_PAGES_BLOB |
|
||||||
|
| INNODB_BUFFER_POOL_PAGES_INDEX |
|
||||||
|
| INNODB_CMP |
|
||||||
|
| INNODB_CMPMEM |
|
||||||
|
| INNODB_CMPMEM_RESET |
|
||||||
|
| INNODB_CMP_RESET |
|
||||||
|
| INNODB_INDEX_STATS |
|
||||||
|
| INNODB_LOCKS |
|
||||||
|
| INNODB_LOCK_WAITS |
|
||||||
|
| INNODB_RSEG |
|
||||||
|
| INNODB_SYS_COLUMNS |
|
||||||
|
| INNODB_SYS_FIELDS |
|
||||||
|
| INNODB_SYS_FOREIGN |
|
||||||
|
| INNODB_SYS_FOREIGN_COLS |
|
||||||
|
| INNODB_SYS_INDEXES |
|
||||||
|
| INNODB_SYS_STATS |
|
||||||
|
| INNODB_SYS_TABLES |
|
||||||
|
| INNODB_SYS_TABLESTATS |
|
||||||
|
| INNODB_TABLE_STATS |
|
||||||
|
| INNODB_TRX |
|
||||||
| KEY_CACHES |
|
| KEY_CACHES |
|
||||||
| KEY_COLUMN_USAGE |
|
| KEY_COLUMN_USAGE |
|
||||||
| PARAMETERS |
|
| PARAMETERS |
|
||||||
| PARTITIONS |
|
| PARTITIONS |
|
||||||
|
| PBXT_STATISTICS |
|
||||||
| PLUGINS |
|
| PLUGINS |
|
||||||
| PROCESSLIST |
|
| PROCESSLIST |
|
||||||
| PROFILING |
|
| PROFILING |
|
||||||
@ -322,34 +345,12 @@ Database: information_schema
|
|||||||
| USER_PRIVILEGES |
|
| USER_PRIVILEGES |
|
||||||
| USER_STATISTICS |
|
| USER_STATISTICS |
|
||||||
| VIEWS |
|
| VIEWS |
|
||||||
| INNODB_CMPMEM_RESET |
|
|
||||||
| PBXT_STATISTICS |
|
|
||||||
| INNODB_CMPMEM |
|
|
||||||
| INNODB_RSEG |
|
|
||||||
| INNODB_SYS_TABLESTATS |
|
|
||||||
| INNODB_LOCK_WAITS |
|
|
||||||
| INNODB_INDEX_STATS |
|
|
||||||
| INNODB_CMP |
|
|
||||||
| INNODB_SYS_FOREIGN_COLS |
|
|
||||||
| INNODB_CMP_RESET |
|
|
||||||
| INNODB_BUFFER_POOL_PAGES |
|
|
||||||
| INNODB_TRX |
|
|
||||||
| INNODB_BUFFER_POOL_PAGES_INDEX |
|
|
||||||
| INNODB_LOCKS |
|
|
||||||
| INNODB_BUFFER_POOL_PAGES_BLOB |
|
|
||||||
| INNODB_SYS_TABLES |
|
|
||||||
| INNODB_SYS_FIELDS |
|
|
||||||
| INNODB_SYS_COLUMNS |
|
|
||||||
| INNODB_SYS_STATS |
|
|
||||||
| INNODB_SYS_FOREIGN |
|
|
||||||
| INNODB_SYS_INDEXES |
|
|
||||||
| XTRADB_ADMIN_COMMAND |
|
| XTRADB_ADMIN_COMMAND |
|
||||||
| INNODB_TABLE_STATS |
|
+---------------------------------------+
|
||||||
|
+---------------------------------------+
|
||||||
+---------------------------------------+
|
+---------------------------------------+
|
||||||
Database: INFORMATION_SCHEMA
|
Database: INFORMATION_SCHEMA
|
||||||
+---------------------------------------+
|
|
||||||
| Tables |
|
| Tables |
|
||||||
+---------------------------------------+
|
|
||||||
| CHARACTER_SETS |
|
| CHARACTER_SETS |
|
||||||
| CLIENT_STATISTICS |
|
| CLIENT_STATISTICS |
|
||||||
| COLLATIONS |
|
| COLLATIONS |
|
||||||
@ -362,10 +363,32 @@ Database: INFORMATION_SCHEMA
|
|||||||
| GLOBAL_STATUS |
|
| GLOBAL_STATUS |
|
||||||
| GLOBAL_VARIABLES |
|
| GLOBAL_VARIABLES |
|
||||||
| INDEX_STATISTICS |
|
| INDEX_STATISTICS |
|
||||||
|
| INNODB_BUFFER_POOL_PAGES |
|
||||||
|
| INNODB_BUFFER_POOL_PAGES_BLOB |
|
||||||
|
| INNODB_BUFFER_POOL_PAGES_INDEX |
|
||||||
|
| INNODB_CMP |
|
||||||
|
| INNODB_CMPMEM |
|
||||||
|
| INNODB_CMPMEM_RESET |
|
||||||
|
| INNODB_CMP_RESET |
|
||||||
|
| INNODB_INDEX_STATS |
|
||||||
|
| INNODB_LOCKS |
|
||||||
|
| INNODB_LOCK_WAITS |
|
||||||
|
| INNODB_RSEG |
|
||||||
|
| INNODB_SYS_COLUMNS |
|
||||||
|
| INNODB_SYS_FIELDS |
|
||||||
|
| INNODB_SYS_FOREIGN |
|
||||||
|
| INNODB_SYS_FOREIGN_COLS |
|
||||||
|
| INNODB_SYS_INDEXES |
|
||||||
|
| INNODB_SYS_STATS |
|
||||||
|
| INNODB_SYS_TABLES |
|
||||||
|
| INNODB_SYS_TABLESTATS |
|
||||||
|
| INNODB_TABLE_STATS |
|
||||||
|
| INNODB_TRX |
|
||||||
| KEY_CACHES |
|
| KEY_CACHES |
|
||||||
| KEY_COLUMN_USAGE |
|
| KEY_COLUMN_USAGE |
|
||||||
| PARAMETERS |
|
| PARAMETERS |
|
||||||
| PARTITIONS |
|
| PARTITIONS |
|
||||||
|
| PBXT_STATISTICS |
|
||||||
| PLUGINS |
|
| PLUGINS |
|
||||||
| PROCESSLIST |
|
| PROCESSLIST |
|
||||||
| PROFILING |
|
| PROFILING |
|
||||||
@ -385,36 +408,13 @@ Database: INFORMATION_SCHEMA
|
|||||||
| USER_PRIVILEGES |
|
| USER_PRIVILEGES |
|
||||||
| USER_STATISTICS |
|
| USER_STATISTICS |
|
||||||
| VIEWS |
|
| VIEWS |
|
||||||
| INNODB_CMPMEM_RESET |
|
|
||||||
| PBXT_STATISTICS |
|
|
||||||
| INNODB_CMPMEM |
|
|
||||||
| INNODB_RSEG |
|
|
||||||
| INNODB_SYS_TABLESTATS |
|
|
||||||
| INNODB_LOCK_WAITS |
|
|
||||||
| INNODB_INDEX_STATS |
|
|
||||||
| INNODB_CMP |
|
|
||||||
| INNODB_SYS_FOREIGN_COLS |
|
|
||||||
| INNODB_CMP_RESET |
|
|
||||||
| INNODB_BUFFER_POOL_PAGES |
|
|
||||||
| INNODB_TRX |
|
|
||||||
| INNODB_BUFFER_POOL_PAGES_INDEX |
|
|
||||||
| INNODB_LOCKS |
|
|
||||||
| INNODB_BUFFER_POOL_PAGES_BLOB |
|
|
||||||
| INNODB_SYS_TABLES |
|
|
||||||
| INNODB_SYS_FIELDS |
|
|
||||||
| INNODB_SYS_COLUMNS |
|
|
||||||
| INNODB_SYS_STATS |
|
|
||||||
| INNODB_SYS_FOREIGN |
|
|
||||||
| INNODB_SYS_INDEXES |
|
|
||||||
| XTRADB_ADMIN_COMMAND |
|
| XTRADB_ADMIN_COMMAND |
|
||||||
| INNODB_TABLE_STATS |
|
+--------------------+
|
||||||
+---------------------------------------+
|
+--------------------+
|
||||||
|
+--------------------+
|
||||||
Wildcard: inf_rmation_schema
|
Wildcard: inf_rmation_schema
|
||||||
+--------------------+
|
|
||||||
| Databases |
|
| Databases |
|
||||||
+--------------------+
|
|
||||||
| information_schema |
|
| information_schema |
|
||||||
+--------------------+
|
|
||||||
SELECT table_schema, count(*) FROM information_schema.TABLES WHERE table_schema IN ('mysql', 'INFORMATION_SCHEMA', 'test', 'mysqltest') AND table_name<>'ndb_binlog_index' AND table_name<>'ndb_apply_status' GROUP BY TABLE_SCHEMA;
|
SELECT table_schema, count(*) FROM information_schema.TABLES WHERE table_schema IN ('mysql', 'INFORMATION_SCHEMA', 'test', 'mysqltest') AND table_name<>'ndb_binlog_index' AND table_name<>'ndb_apply_status' GROUP BY TABLE_SCHEMA;
|
||||||
table_schema count(*)
|
table_schema count(*)
|
||||||
information_schema 58
|
information_schema 58
|
||||||
|
@ -20,6 +20,8 @@ hex(a)
|
|||||||
616263
|
616263
|
||||||
set GLOBAL init_connect="adsfsdfsdfs";
|
set GLOBAL init_connect="adsfsdfsdfs";
|
||||||
select @a;
|
select @a;
|
||||||
|
ERROR 08S01: Aborted connection to db: 'test' user: 'user_1' host: 'localhost' (init_connect command failed)
|
||||||
|
select @a;
|
||||||
Got one of the listed errors
|
Got one of the listed errors
|
||||||
drop table t1;
|
drop table t1;
|
||||||
End of 4.1 tests
|
End of 4.1 tests
|
||||||
|
@ -1,24 +1,34 @@
|
|||||||
#
|
#
|
||||||
# Ensure the plugin isn't loaded.
|
# Ensure the plugin isn't loaded.
|
||||||
#
|
#
|
||||||
SELECT * FROM mysql.plugin WHERE name = 'daemon_example' ORDER BY name;
|
SELECT * FROM mysql.plugin WHERE dl like 'libdaemon%' ORDER BY name;
|
||||||
name dl
|
name dl
|
||||||
#
|
#
|
||||||
# Enable the plugin...
|
# Enable the plugin...
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
|
# Simulate loading a plugin libary with multiple entry points.
|
||||||
|
# This will test the DISABLE to ensure all rows are removed.
|
||||||
|
#
|
||||||
|
INSERT INTO mysql.plugin VALUES ('wicky', 'libdaemon_example.so');
|
||||||
|
INSERT INTO mysql.plugin VALUES ('wacky', 'libdaemon_example.so');
|
||||||
|
INSERT INTO mysql.plugin VALUES ('wonky', 'libdaemon_example.so');
|
||||||
|
#
|
||||||
# Ensure the plugin is now loaded.
|
# Ensure the plugin is now loaded.
|
||||||
#
|
#
|
||||||
SELECT * FROM mysql.plugin WHERE name = 'daemon_example' ORDER BY name;
|
SELECT * FROM mysql.plugin WHERE dl like 'libdaemon%' ORDER BY name;
|
||||||
name dl
|
name dl
|
||||||
daemon_example libdaemon_example.so
|
daemon_example libdaemon_example.so
|
||||||
|
wacky libdaemon_example.so
|
||||||
|
wicky libdaemon_example.so
|
||||||
|
wonky libdaemon_example.so
|
||||||
#
|
#
|
||||||
# Disable the plugin...
|
# Disable the plugin...
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
# Ensure the plugin isn't loaded.
|
# Ensure the plugin isn't loaded.
|
||||||
#
|
#
|
||||||
SELECT * FROM mysql.plugin WHERE name = 'daemon_example' ORDER BY name;
|
SELECT * FROM mysql.plugin WHERE dl like 'libdaemon%' ORDER BY name;
|
||||||
name dl
|
name dl
|
||||||
#
|
#
|
||||||
# Attempt to load non-existant plugin
|
# Attempt to load non-existant plugin
|
||||||
|
@ -245,3 +245,44 @@ End of 5.1 tests
|
|||||||
The --upgrade-system-tables option was used, databases won't be touched.
|
The --upgrade-system-tables option was used, databases won't be touched.
|
||||||
Phase 3/3: Running 'mysql_fix_privilege_tables'...
|
Phase 3/3: Running 'mysql_fix_privilege_tables'...
|
||||||
OK
|
OK
|
||||||
|
#
|
||||||
|
# Bug#11827359 60223: MYSQL_UPGRADE PROBLEM WITH OPTION
|
||||||
|
# SKIP-WRITE-BINLOG
|
||||||
|
#
|
||||||
|
# Droping the previously created mysql_upgrade_info file..
|
||||||
|
# Running mysql_upgrade with --skip-write-binlog..
|
||||||
|
Phase 1/3: Fixing table and database names
|
||||||
|
Phase 2/3: Checking and upgrading tables
|
||||||
|
Processing databases
|
||||||
|
information_schema
|
||||||
|
mtr
|
||||||
|
mtr.global_suppressions OK
|
||||||
|
mtr.test_suppressions OK
|
||||||
|
mysql
|
||||||
|
mysql.columns_priv OK
|
||||||
|
mysql.db OK
|
||||||
|
mysql.event OK
|
||||||
|
mysql.func OK
|
||||||
|
mysql.help_category OK
|
||||||
|
mysql.help_keyword OK
|
||||||
|
mysql.help_relation OK
|
||||||
|
mysql.help_topic OK
|
||||||
|
mysql.host OK
|
||||||
|
mysql.ndb_binlog_index OK
|
||||||
|
mysql.plugin OK
|
||||||
|
mysql.proc OK
|
||||||
|
mysql.procs_priv OK
|
||||||
|
mysql.proxies_priv OK
|
||||||
|
mysql.servers OK
|
||||||
|
mysql.tables_priv OK
|
||||||
|
mysql.time_zone OK
|
||||||
|
mysql.time_zone_leap_second OK
|
||||||
|
mysql.time_zone_name OK
|
||||||
|
mysql.time_zone_transition OK
|
||||||
|
mysql.time_zone_transition_type OK
|
||||||
|
mysql.user OK
|
||||||
|
performance_schema
|
||||||
|
test
|
||||||
|
Phase 3/3: Running 'mysql_fix_privilege_tables'...
|
||||||
|
OK
|
||||||
|
End of tests
|
||||||
|
@ -400,6 +400,8 @@ The following options may be given as the first argument:
|
|||||||
After this many write locks, allow some read locks to run
|
After this many write locks, allow some read locks to run
|
||||||
in between
|
in between
|
||||||
--memlock Lock mysqld in memory.
|
--memlock Lock mysqld in memory.
|
||||||
|
--metadata-locks-cache-size=#
|
||||||
|
Size of unused metadata locks cache
|
||||||
--min-examined-row-limit=#
|
--min-examined-row-limit=#
|
||||||
Don't write queries to slow log that examine fewer rows
|
Don't write queries to slow log that examine fewer rows
|
||||||
than that
|
than that
|
||||||
@ -956,6 +958,7 @@ max-tmp-tables 32
|
|||||||
max-user-connections 0
|
max-user-connections 0
|
||||||
max-write-lock-count 18446744073709551615
|
max-write-lock-count 18446744073709551615
|
||||||
memlock FALSE
|
memlock FALSE
|
||||||
|
metadata-locks-cache-size 1024
|
||||||
min-examined-row-limit 0
|
min-examined-row-limit 0
|
||||||
mrr-buffer-size 262144
|
mrr-buffer-size 262144
|
||||||
multi-range-count 256
|
multi-range-count 256
|
||||||
|
@ -399,6 +399,8 @@ The following options may be given as the first argument:
|
|||||||
After this many write locks, allow some read locks to run
|
After this many write locks, allow some read locks to run
|
||||||
in between
|
in between
|
||||||
--memlock Lock mysqld in memory.
|
--memlock Lock mysqld in memory.
|
||||||
|
--metadata-locks-cache-size=#
|
||||||
|
Size of unused metadata locks cache
|
||||||
--min-examined-row-limit=#
|
--min-examined-row-limit=#
|
||||||
Don't write queries to slow log that examine fewer rows
|
Don't write queries to slow log that examine fewer rows
|
||||||
than that
|
than that
|
||||||
@ -760,6 +762,10 @@ The following options may be given as the first argument:
|
|||||||
Log slow queries to given log file. Defaults logging to
|
Log slow queries to given log file. Defaults logging to
|
||||||
'hostname'-slow.log. Must be enabled to activate other
|
'hostname'-slow.log. Must be enabled to activate other
|
||||||
slow log options
|
slow log options
|
||||||
|
--slow-start-timeout=#
|
||||||
|
Maximum number of milliseconds that the service control
|
||||||
|
manager should wait before trying to kill the windows
|
||||||
|
service during startup(Default: 15000).
|
||||||
--socket=name Socket file to use for connection
|
--socket=name Socket file to use for connection
|
||||||
--sort-buffer-size=#
|
--sort-buffer-size=#
|
||||||
Each thread that needs to do a sort allocates a buffer of
|
Each thread that needs to do a sort allocates a buffer of
|
||||||
@ -959,6 +965,7 @@ max-tmp-tables 32
|
|||||||
max-user-connections 0
|
max-user-connections 0
|
||||||
max-write-lock-count 18446744073709551615
|
max-write-lock-count 18446744073709551615
|
||||||
memlock FALSE
|
memlock FALSE
|
||||||
|
metadata-locks-cache-size 1024
|
||||||
min-examined-row-limit 0
|
min-examined-row-limit 0
|
||||||
mrr-buffer-size 262144
|
mrr-buffer-size 262144
|
||||||
multi-range-count 256
|
multi-range-count 256
|
||||||
@ -1053,6 +1060,7 @@ slave-transaction-retries 10
|
|||||||
slave-type-conversions
|
slave-type-conversions
|
||||||
slow-launch-time 2
|
slow-launch-time 2
|
||||||
slow-query-log FALSE
|
slow-query-log FALSE
|
||||||
|
slow-start-timeout 15000
|
||||||
sort-buffer-size 2097152
|
sort-buffer-size 2097152
|
||||||
sql-mode
|
sql-mode
|
||||||
stack-trace TRUE
|
stack-trace TRUE
|
||||||
|
@ -4747,3 +4747,107 @@ UNLOCK TABLES;
|
|||||||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||||
|
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
#
|
||||||
|
# Bug#12809202 61854: MYSQLDUMP --SINGLE-TRANSACTION --FLUSH-LOG BREAKS
|
||||||
|
# CONSISTENCY
|
||||||
|
#
|
||||||
|
DROP DATABASE IF EXISTS b12809202_db;
|
||||||
|
CREATE DATABASE b12809202_db;
|
||||||
|
CREATE TABLE b12809202_db.t1 (c1 INT);
|
||||||
|
CREATE TABLE b12809202_db.t2 (c1 INT);
|
||||||
|
INSERT INTO b12809202_db.t1 VALUES (1), (2), (3);
|
||||||
|
INSERT INTO b12809202_db.t2 VALUES (1), (2), (3);
|
||||||
|
# Starting mysqldump with --single-transaction & --flush-log options..
|
||||||
|
# Note : In the following dump the transaction
|
||||||
|
# should start only after the logs are
|
||||||
|
# flushed, as 'flush logs' causes implicit
|
||||||
|
# commit starting 5.5.
|
||||||
|
|
||||||
|
#### Dump starts here ####
|
||||||
|
-- Connecting to localhost...
|
||||||
|
-- main : logs flushed successfully!
|
||||||
|
-- Starting transaction...
|
||||||
|
-- Retrieving table structure for table t1...
|
||||||
|
-- Sending SELECT query...
|
||||||
|
-- Retrieving rows...
|
||||||
|
--
|
||||||
|
-- Host: localhost Database: b12809202_db
|
||||||
|
-- ------------------------------------------------------
|
||||||
|
|
||||||
|
/*!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 */;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `t1`
|
||||||
|
--
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `t1`;
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8 */;
|
||||||
|
CREATE TABLE `t1` (
|
||||||
|
`c1` int(11) DEFAULT NULL
|
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Dumping data for table `t1`
|
||||||
|
--
|
||||||
|
|
||||||
|
LOCK TABLES `t1` WRITE;
|
||||||
|
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
|
||||||
|
INSERT INTO `t1` VALUES (1),(2),(3);
|
||||||
|
-- Retrieving table structure for table t2...
|
||||||
|
-- Sending SELECT query...
|
||||||
|
-- Retrieving rows...
|
||||||
|
/*!40000 ALTER TABLE `t1` ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `t2`
|
||||||
|
--
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `t2`;
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8 */;
|
||||||
|
CREATE TABLE `t2` (
|
||||||
|
`c1` int(11) DEFAULT NULL
|
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Dumping data for table `t2`
|
||||||
|
--
|
||||||
|
|
||||||
|
LOCK TABLES `t2` WRITE;
|
||||||
|
/*!40000 ALTER TABLE `t2` DISABLE KEYS */;
|
||||||
|
INSERT INTO `t2` VALUES (1),(2),(3);
|
||||||
|
/*!40000 ALTER TABLE `t2` ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
-- Disconnecting from localhost...
|
||||||
|
/*!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 */;
|
||||||
|
|
||||||
|
-- Dump completed
|
||||||
|
#### Dump ends here ####
|
||||||
|
DROP TABLE b12809202_db.t1;
|
||||||
|
DROP TABLE b12809202_db.t2;
|
||||||
|
DROP DATABASE b12809202_db;
|
||||||
|
#
|
||||||
|
# Delete all existing binary logs.
|
||||||
|
#
|
||||||
|
RESET MASTER;
|
||||||
|
@ -557,6 +557,7 @@ mysqltest: At line 1: Wrong column number to replace_column in 'replace_column 1
|
|||||||
select "LONG_STRING" as x;
|
select "LONG_STRING" as x;
|
||||||
x
|
x
|
||||||
LONG_STRING
|
LONG_STRING
|
||||||
|
dog
|
||||||
mysqltest: At line 1: Invalid integer argument "10!"
|
mysqltest: At line 1: Invalid integer argument "10!"
|
||||||
mysqltest: At line 1: Invalid integer argument "a"
|
mysqltest: At line 1: Invalid integer argument "a"
|
||||||
mysqltest: At line 1: Missing required argument 'connection name' to command 'connect'
|
mysqltest: At line 1: Missing required argument 'connection name' to command 'connect'
|
||||||
@ -674,6 +675,22 @@ a D
|
|||||||
1 1
|
1 1
|
||||||
1 4
|
1 4
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
y
|
||||||
|
txt
|
||||||
|
b is b and more is more
|
||||||
|
txt
|
||||||
|
a is a and less is more
|
||||||
|
create table t2 ( a char(10));
|
||||||
|
garbage;
|
||||||
|
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'garbage' at line 1
|
||||||
|
garbage;
|
||||||
|
Got one of the listed errors
|
||||||
|
garbage;
|
||||||
|
Got one of the listed errors
|
||||||
|
insert into t1 values ("Abcd");
|
||||||
|
Got one of the listed errors
|
||||||
|
garbage;
|
||||||
|
drop table t2;
|
||||||
create table t1 ( f1 char(10));
|
create table t1 ( f1 char(10));
|
||||||
insert into t1 values ("Abcd");
|
insert into t1 values ("Abcd");
|
||||||
select * from t1;
|
select * from t1;
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
#
|
#
|
||||||
# Bug#11766879/Bug#60106: DIFF BETWEEN # OF INDEXES IN MYSQL VS INNODB,
|
# Bug#11766879/Bug#60106: DIFF BETWEEN # OF INDEXES IN MYSQL VS INNODB,
|
||||||
# PARTITONING, ON INDEX CREATE
|
# PARTITONING, ON INDEX CREATE
|
||||||
|
# Bug#12696518: MEMORY LEAKS IN HA_PARTITION (VALGRIND TESTS ON TRUNK)
|
||||||
#
|
#
|
||||||
call mtr.add_suppression("contains 2 indexes inside InnoDB, which is different from the number of indexes 1 defined in the MySQL");
|
|
||||||
CREATE TABLE t1 (
|
CREATE TABLE t1 (
|
||||||
id bigint NOT NULL AUTO_INCREMENT,
|
id bigint NOT NULL AUTO_INCREMENT,
|
||||||
time date,
|
time date,
|
||||||
@ -20,6 +20,17 @@ ERROR 23000: Duplicate entry '2011-07-25-1' for key 'uk_time_id2'
|
|||||||
SELECT COUNT(*) FROM t1;
|
SELECT COUNT(*) FROM t1;
|
||||||
COUNT(*)
|
COUNT(*)
|
||||||
3
|
3
|
||||||
|
SHOW CREATE TABLE t1;
|
||||||
|
Table Create Table
|
||||||
|
t1 CREATE TABLE `t1` (
|
||||||
|
`id` bigint(20) NOT NULL AUTO_INCREMENT,
|
||||||
|
`time` date NOT NULL DEFAULT '0000-00-00',
|
||||||
|
`id2` bigint(20) NOT NULL,
|
||||||
|
PRIMARY KEY (`id`,`time`)
|
||||||
|
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8
|
||||||
|
/*!50100 PARTITION BY RANGE (TO_DAYS(time))
|
||||||
|
(PARTITION p10 VALUES LESS THAN (734708) ENGINE = InnoDB,
|
||||||
|
PARTITION p20 VALUES LESS THAN MAXVALUE ENGINE = InnoDB) */
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
call mtr.add_suppression("InnoDB: Error: table `test`.`t1` .* InnoDB internal");
|
call mtr.add_suppression("InnoDB: Error: table `test`.`t1` .* InnoDB internal");
|
||||||
#
|
#
|
||||||
|
@ -1596,7 +1596,63 @@ set global query_cache_type=0;
|
|||||||
show status like 'Qcache_free_blocks';
|
show status like 'Qcache_free_blocks';
|
||||||
Variable_name Value
|
Variable_name Value
|
||||||
Qcache_free_blocks 0
|
Qcache_free_blocks 0
|
||||||
|
set global query_cache_size=102400;
|
||||||
|
ERROR HY000: Query cache is disabled; set query_cache_type to ON or DEMAND to enable it
|
||||||
|
set global query_cache_type=on;
|
||||||
|
set session query_cache_type=on;
|
||||||
Restore default values.
|
Restore default values.
|
||||||
|
drop database if exists db1;
|
||||||
|
drop database if exists db2;
|
||||||
|
set GLOBAL query_cache_size=15*1024*1024;
|
||||||
|
create database db1;
|
||||||
|
use db1;
|
||||||
|
create table t1(c1 int)engine=myisam;
|
||||||
|
insert into t1(c1) values (1);
|
||||||
|
select * from db1.t1 f;
|
||||||
|
c1
|
||||||
|
1
|
||||||
|
show status like 'Qcache_queries_in_cache';
|
||||||
|
Variable_name Value
|
||||||
|
Qcache_queries_in_cache 1
|
||||||
|
create database db2;
|
||||||
|
rename table db1.t1 to db2.t2;
|
||||||
|
drop database db1;
|
||||||
|
show status like 'Qcache_queries_in_cache';
|
||||||
|
Variable_name Value
|
||||||
|
Qcache_queries_in_cache 0
|
||||||
|
drop database db2;
|
||||||
|
set global query_cache_size=default;
|
||||||
|
drop database if exists db1;
|
||||||
|
drop database if exists db3;
|
||||||
|
set GLOBAL query_cache_size=15*1024*1024;
|
||||||
|
create database db1;
|
||||||
|
create database db3;
|
||||||
|
use db1;
|
||||||
|
create table t1(c1 int) engine=myisam;
|
||||||
|
use db3;
|
||||||
|
create table t1(c1 int) engine=myisam;
|
||||||
|
use db1;
|
||||||
|
insert into t1(c1) values (1);
|
||||||
|
use test;
|
||||||
|
select * from db1.t1;
|
||||||
|
c1
|
||||||
|
1
|
||||||
|
select c1+1 from db1.t1;
|
||||||
|
c1+1
|
||||||
|
2
|
||||||
|
select * from db3.t1;
|
||||||
|
c1
|
||||||
|
show status like 'Qcache_queries_in_cache';
|
||||||
|
Variable_name Value
|
||||||
|
Qcache_queries_in_cache 3
|
||||||
|
create database db2;
|
||||||
|
rename table db1.t1 to db2.t2;
|
||||||
|
drop database db1;
|
||||||
|
show status like 'Qcache_queries_in_cache';
|
||||||
|
Variable_name Value
|
||||||
|
Qcache_queries_in_cache 1
|
||||||
|
drop database db2;
|
||||||
|
drop database db3;
|
||||||
set GLOBAL query_cache_type=default;
|
set GLOBAL query_cache_type=default;
|
||||||
set GLOBAL query_cache_limit=default;
|
set GLOBAL query_cache_limit=default;
|
||||||
set GLOBAL query_cache_min_res_unit=default;
|
set GLOBAL query_cache_min_res_unit=default;
|
||||||
|
@ -5234,6 +5234,7 @@ avg(distinct(t1.a))
|
|||||||
0
|
0
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
# End of test BUG#57203
|
# End of test BUG#57203
|
||||||
|
#
|
||||||
# lp:822760 Wrong result with view + invalid dates
|
# lp:822760 Wrong result with view + invalid dates
|
||||||
#
|
#
|
||||||
CREATE TABLE t1 (f1 date);
|
CREATE TABLE t1 (f1 date);
|
||||||
@ -5270,4 +5271,22 @@ Warning 1292 Incorrect datetime value: 'zz'
|
|||||||
Warning 1292 Incorrect datetime value: 'aa'
|
Warning 1292 Incorrect datetime value: 'aa'
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
DROP VIEW v1;
|
DROP VIEW v1;
|
||||||
|
#
|
||||||
|
# Bug#63020: Function "format"'s 'locale' argument is not considered
|
||||||
|
# when creating a "view'
|
||||||
|
#
|
||||||
|
CREATE TABLE t1 (f1 DECIMAL(10,2));
|
||||||
|
INSERT INTO t1 VALUES (11.67),(17865.3),(12345678.92);
|
||||||
|
CREATE VIEW view_t1 AS SELECT FORMAT(f1,1,'sk_SK') AS f1 FROM t1;
|
||||||
|
SHOW CREATE VIEW view_t1;
|
||||||
|
View Create View character_set_client collation_connection
|
||||||
|
view_t1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `view_t1` AS select format(`t1`.`f1`,1,'sk_SK') AS `f1` from `t1` latin1 latin1_swedish_ci
|
||||||
|
SELECT * FROM view_t1;
|
||||||
|
f1
|
||||||
|
11,7
|
||||||
|
17 865,3
|
||||||
|
12 345 678,9
|
||||||
|
DROP TABLE t1;
|
||||||
|
DROP VIEW view_t1;
|
||||||
|
# End of test BUG#63020
|
||||||
SET optimizer_switch=@save_optimizer_switch;
|
SET optimizer_switch=@save_optimizer_switch;
|
||||||
|
@ -5245,6 +5245,7 @@ avg(distinct(t1.a))
|
|||||||
0
|
0
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
# End of test BUG#57203
|
# End of test BUG#57203
|
||||||
|
#
|
||||||
# lp:822760 Wrong result with view + invalid dates
|
# lp:822760 Wrong result with view + invalid dates
|
||||||
#
|
#
|
||||||
CREATE TABLE t1 (f1 date);
|
CREATE TABLE t1 (f1 date);
|
||||||
@ -5281,6 +5282,24 @@ Warning 1292 Incorrect datetime value: 'zz'
|
|||||||
Warning 1292 Incorrect datetime value: 'aa'
|
Warning 1292 Incorrect datetime value: 'aa'
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
DROP VIEW v1;
|
DROP VIEW v1;
|
||||||
|
#
|
||||||
|
# Bug#63020: Function "format"'s 'locale' argument is not considered
|
||||||
|
# when creating a "view'
|
||||||
|
#
|
||||||
|
CREATE TABLE t1 (f1 DECIMAL(10,2));
|
||||||
|
INSERT INTO t1 VALUES (11.67),(17865.3),(12345678.92);
|
||||||
|
CREATE VIEW view_t1 AS SELECT FORMAT(f1,1,'sk_SK') AS f1 FROM t1;
|
||||||
|
SHOW CREATE VIEW view_t1;
|
||||||
|
View Create View character_set_client collation_connection
|
||||||
|
view_t1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `view_t1` AS select format(`t1`.`f1`,1,'sk_SK') AS `f1` from `t1` latin1 latin1_swedish_ci
|
||||||
|
SELECT * FROM view_t1;
|
||||||
|
f1
|
||||||
|
11,7
|
||||||
|
17 865,3
|
||||||
|
12 345 678,9
|
||||||
|
DROP TABLE t1;
|
||||||
|
DROP VIEW view_t1;
|
||||||
|
# End of test BUG#63020
|
||||||
SET optimizer_switch=@save_optimizer_switch;
|
SET optimizer_switch=@save_optimizer_switch;
|
||||||
set join_cache_level=default;
|
set join_cache_level=default;
|
||||||
show variables like 'join_cache_level';
|
show variables like 'join_cache_level';
|
||||||
|
@ -5234,6 +5234,7 @@ avg(distinct(t1.a))
|
|||||||
0
|
0
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
# End of test BUG#57203
|
# End of test BUG#57203
|
||||||
|
#
|
||||||
# lp:822760 Wrong result with view + invalid dates
|
# lp:822760 Wrong result with view + invalid dates
|
||||||
#
|
#
|
||||||
CREATE TABLE t1 (f1 date);
|
CREATE TABLE t1 (f1 date);
|
||||||
@ -5270,4 +5271,22 @@ Warning 1292 Incorrect datetime value: 'zz'
|
|||||||
Warning 1292 Incorrect datetime value: 'aa'
|
Warning 1292 Incorrect datetime value: 'aa'
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
DROP VIEW v1;
|
DROP VIEW v1;
|
||||||
|
#
|
||||||
|
# Bug#63020: Function "format"'s 'locale' argument is not considered
|
||||||
|
# when creating a "view'
|
||||||
|
#
|
||||||
|
CREATE TABLE t1 (f1 DECIMAL(10,2));
|
||||||
|
INSERT INTO t1 VALUES (11.67),(17865.3),(12345678.92);
|
||||||
|
CREATE VIEW view_t1 AS SELECT FORMAT(f1,1,'sk_SK') AS f1 FROM t1;
|
||||||
|
SHOW CREATE VIEW view_t1;
|
||||||
|
View Create View character_set_client collation_connection
|
||||||
|
view_t1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `view_t1` AS select format(`t1`.`f1`,1,'sk_SK') AS `f1` from `t1` latin1 latin1_swedish_ci
|
||||||
|
SELECT * FROM view_t1;
|
||||||
|
f1
|
||||||
|
11,7
|
||||||
|
17 865,3
|
||||||
|
12 345 678,9
|
||||||
|
DROP TABLE t1;
|
||||||
|
DROP VIEW view_t1;
|
||||||
|
# End of test BUG#63020
|
||||||
SET optimizer_switch=@save_optimizer_switch;
|
SET optimizer_switch=@save_optimizer_switch;
|
||||||
|
@ -2772,20 +2772,23 @@ userid
|
|||||||
drop procedure bug8116|
|
drop procedure bug8116|
|
||||||
drop table t3|
|
drop table t3|
|
||||||
drop procedure if exists bug6857|
|
drop procedure if exists bug6857|
|
||||||
create procedure bug6857(counter int)
|
create procedure bug6857()
|
||||||
begin
|
begin
|
||||||
declare t0, t1 int;
|
declare t0, t1 int;
|
||||||
declare plus bool default 0;
|
declare plus bool default 0;
|
||||||
set t0 = current_time();
|
set t0 = unix_timestamp();
|
||||||
while counter > 0 do
|
select sleep(1.1);
|
||||||
set counter = counter - 1;
|
set t1 = unix_timestamp();
|
||||||
end while;
|
|
||||||
set t1 = current_time();
|
|
||||||
if t1 > t0 then
|
if t1 > t0 then
|
||||||
set plus = 1;
|
set plus = 1;
|
||||||
end if;
|
end if;
|
||||||
select plus;
|
select plus;
|
||||||
end|
|
end|
|
||||||
|
call bug6857()|
|
||||||
|
sleep(1.1)
|
||||||
|
0
|
||||||
|
plus
|
||||||
|
1
|
||||||
drop procedure bug6857|
|
drop procedure bug6857|
|
||||||
drop procedure if exists bug8757|
|
drop procedure if exists bug8757|
|
||||||
create procedure bug8757()
|
create procedure bug8757()
|
||||||
@ -7435,17 +7438,17 @@ ERROR 42000: Undeclared variable: a
|
|||||||
# Try to use data types not allowed in LIMIT
|
# Try to use data types not allowed in LIMIT
|
||||||
#
|
#
|
||||||
create procedure p1(p1 date, p2 date) select * from t1 limit p1, p2;
|
create procedure p1(p1 date, p2 date) select * from t1 limit p1, p2;
|
||||||
ERROR HY000: A variable of a non-integer type in LIMIT clause
|
ERROR HY000: A variable of a non-integer based type in LIMIT clause
|
||||||
create procedure p1(p1 integer, p2 float) select * from t1 limit p1, p2;
|
create procedure p1(p1 integer, p2 float) select * from t1 limit p1, p2;
|
||||||
ERROR HY000: A variable of a non-integer type in LIMIT clause
|
ERROR HY000: A variable of a non-integer based type in LIMIT clause
|
||||||
create procedure p1(p1 integer, p2 char(1)) select * from t1 limit p1, p2;
|
create procedure p1(p1 integer, p2 char(1)) select * from t1 limit p1, p2;
|
||||||
ERROR HY000: A variable of a non-integer type in LIMIT clause
|
ERROR HY000: A variable of a non-integer based type in LIMIT clause
|
||||||
create procedure p1(p1 varchar(5), p2 char(1)) select * from t1 limit p1, p2;
|
create procedure p1(p1 varchar(5), p2 char(1)) select * from t1 limit p1, p2;
|
||||||
ERROR HY000: A variable of a non-integer type in LIMIT clause
|
ERROR HY000: A variable of a non-integer based type in LIMIT clause
|
||||||
create procedure p1(p1 decimal, p2 decimal) select * from t1 limit p1, p2;
|
create procedure p1(p1 decimal, p2 decimal) select * from t1 limit p1, p2;
|
||||||
ERROR HY000: A variable of a non-integer type in LIMIT clause
|
ERROR HY000: A variable of a non-integer based type in LIMIT clause
|
||||||
create procedure p1(p1 double, p2 double) select * from t1 limit p1, p2;
|
create procedure p1(p1 double, p2 double) select * from t1 limit p1, p2;
|
||||||
ERROR HY000: A variable of a non-integer type in LIMIT clause
|
ERROR HY000: A variable of a non-integer based type in LIMIT clause
|
||||||
#
|
#
|
||||||
# Finally, test the valid case.
|
# Finally, test the valid case.
|
||||||
#
|
#
|
||||||
@ -7481,9 +7484,117 @@ call p1(3, 2);
|
|||||||
c1
|
c1
|
||||||
4
|
4
|
||||||
5
|
5
|
||||||
|
# Try to create a function that
|
||||||
|
# refers to non-existing variables.
|
||||||
|
create function f1(p1 integer, p2 integer)
|
||||||
|
returns int
|
||||||
|
begin
|
||||||
|
declare a int;
|
||||||
|
set a = (select count(*) from t1 limit a, b);
|
||||||
|
return a;
|
||||||
|
end|
|
||||||
|
ERROR 42000: Undeclared variable: b
|
||||||
|
create function f1()
|
||||||
|
returns int
|
||||||
|
begin
|
||||||
|
declare a, b, c int;
|
||||||
|
set a = (select count(*) from t1 limit b, c);
|
||||||
|
return a;
|
||||||
|
end|
|
||||||
|
# How do we handle NULL limit values?
|
||||||
|
select f1();
|
||||||
|
f1()
|
||||||
|
NULL
|
||||||
|
drop function f1;
|
||||||
|
#
|
||||||
|
# Try to use data types not allowed in LIMIT
|
||||||
|
#
|
||||||
|
create function f1(p1 date, p2 date)
|
||||||
|
returns int
|
||||||
|
begin
|
||||||
|
declare a int;
|
||||||
|
set a = (select count(*) from t1 limit p1, p2);
|
||||||
|
return a;
|
||||||
|
end|
|
||||||
|
ERROR HY000: A variable of a non-integer based type in LIMIT clause
|
||||||
|
create function f1(p1 integer, p2 float)
|
||||||
|
returns int
|
||||||
|
begin
|
||||||
|
declare a int;
|
||||||
|
set a = (select count(*) from t1 limit p1, p2);
|
||||||
|
return a;
|
||||||
|
end|
|
||||||
|
ERROR HY000: A variable of a non-integer based type in LIMIT clause
|
||||||
|
create function f1(p1 integer, p2 char(1))
|
||||||
|
returns int
|
||||||
|
begin
|
||||||
|
declare a int;
|
||||||
|
set a = (select count(*) from t1 limit p1, p2);
|
||||||
|
return a;
|
||||||
|
end|
|
||||||
|
ERROR HY000: A variable of a non-integer based type in LIMIT clause
|
||||||
|
create function f1(p1 varchar(5), p2 char(1))
|
||||||
|
returns int
|
||||||
|
begin
|
||||||
|
declare a int;
|
||||||
|
set a = (select count(*) from t1 limit p1, p2);
|
||||||
|
return a;
|
||||||
|
end|
|
||||||
|
ERROR HY000: A variable of a non-integer based type in LIMIT clause
|
||||||
|
create function f1(p1 decimal, p2 decimal)
|
||||||
|
returns int
|
||||||
|
begin
|
||||||
|
declare a int;
|
||||||
|
set a = (select count(*) from t1 limit p1, p2);
|
||||||
|
return a;
|
||||||
|
end|
|
||||||
|
ERROR HY000: A variable of a non-integer based type in LIMIT clause
|
||||||
|
create function f1(p1 double, p2 double)
|
||||||
|
returns int
|
||||||
|
begin
|
||||||
|
declare a int;
|
||||||
|
set a = (select count(*) from t1 limit p1, p2);
|
||||||
|
return a;
|
||||||
|
end|
|
||||||
|
ERROR HY000: A variable of a non-integer based type in LIMIT clause
|
||||||
|
#
|
||||||
|
# Finally, test the valid case.
|
||||||
|
#
|
||||||
|
create function f1(p1 integer, p2 integer)
|
||||||
|
returns int
|
||||||
|
begin
|
||||||
|
declare count int;
|
||||||
|
set count= (select count(*) from (select * from t1 limit p1, p2) t_1);
|
||||||
|
return count;
|
||||||
|
end|
|
||||||
|
select f1(0, 0);
|
||||||
|
f1(0, 0)
|
||||||
|
0
|
||||||
|
select f1(0, -1);
|
||||||
|
f1(0, -1)
|
||||||
|
5
|
||||||
|
select f1(-1, 0);
|
||||||
|
f1(-1, 0)
|
||||||
|
0
|
||||||
|
select f1(-1, -1);
|
||||||
|
f1(-1, -1)
|
||||||
|
0
|
||||||
|
select f1(0, 1);
|
||||||
|
f1(0, 1)
|
||||||
|
1
|
||||||
|
select f1(1, 0);
|
||||||
|
f1(1, 0)
|
||||||
|
0
|
||||||
|
select f1(1, 5);
|
||||||
|
f1(1, 5)
|
||||||
|
4
|
||||||
|
select f1(3, 2);
|
||||||
|
f1(3, 2)
|
||||||
|
2
|
||||||
# Cleanup
|
# Cleanup
|
||||||
drop table t1;
|
drop table t1;
|
||||||
drop procedure p1;
|
drop procedure p1;
|
||||||
|
drop function f1;
|
||||||
#
|
#
|
||||||
# BUG#11766234: 59299: ASSERT (TABLE_REF->TABLE || TABLE_REF->VIEW)
|
# BUG#11766234: 59299: ASSERT (TABLE_REF->TABLE || TABLE_REF->VIEW)
|
||||||
# FAILS IN SET_FIELD_ITERATOR
|
# FAILS IN SET_FIELD_ITERATOR
|
||||||
@ -7604,4 +7715,34 @@ b
|
|||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
DROP PROCEDURE p1;
|
DROP PROCEDURE p1;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Bug#12621017 - Crash if a sp variable is used in the
|
||||||
|
# limit clause of a set statement
|
||||||
|
#
|
||||||
|
DROP TABLE IF EXISTS t1;
|
||||||
|
DROP PROCEDURE IF EXISTS p1;
|
||||||
|
DROP PROCEDURE IF EXISTS p2;
|
||||||
|
CREATE TABLE t1 (c1 INT);
|
||||||
|
INSERT INTO t1 VALUES (1);
|
||||||
|
CREATE PROCEDURE p1()
|
||||||
|
BEGIN
|
||||||
|
DECLARE foo, cnt INT UNSIGNED DEFAULT 1;
|
||||||
|
SET foo = (SELECT MIN(c1) FROM t1 LIMIT cnt);
|
||||||
|
END|
|
||||||
|
CREATE PROCEDURE p2()
|
||||||
|
BEGIN
|
||||||
|
DECLARE iLimit INT;
|
||||||
|
DECLARE iVal INT;
|
||||||
|
DECLARE cur1 CURSOR FOR
|
||||||
|
SELECT c1 FROM t1
|
||||||
|
LIMIT iLimit;
|
||||||
|
SET iLimit=1;
|
||||||
|
OPEN cur1;
|
||||||
|
FETCH cur1 INTO iVal;
|
||||||
|
END|
|
||||||
|
CALL p1();
|
||||||
|
CALL p2();
|
||||||
|
DROP PROCEDURE p1;
|
||||||
|
DROP PROCEDURE p2;
|
||||||
|
DROP TABLE t1;
|
||||||
# End of 5.5 test
|
# End of 5.5 test
|
||||||
|
@ -109,6 +109,9 @@ ERROR 42000: SHOW VIEW command denied to user 'mysqltest_1'@'localhost' for tabl
|
|||||||
explain select c from mysqltest.v5;
|
explain select c from mysqltest.v5;
|
||||||
ERROR 42000: SELECT command denied to user 'mysqltest_1'@'localhost' for table 'v5'
|
ERROR 42000: SELECT command denied to user 'mysqltest_1'@'localhost' for table 'v5'
|
||||||
show create view mysqltest.v5;
|
show create view mysqltest.v5;
|
||||||
|
ERROR 42000: SELECT command denied to user 'mysqltest_1'@'localhost' for table 'v5'
|
||||||
|
grant select on mysqltest.v5 to mysqltest_1@localhost;
|
||||||
|
show create view mysqltest.v5;
|
||||||
View Create View character_set_client collation_connection
|
View Create View character_set_client collation_connection
|
||||||
v5 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest`.`v5` AS select (`mysqltest`.`t1`.`a` + 1) AS `c`,(`mysqltest`.`t1`.`b` + 1) AS `d` from `mysqltest`.`t1` latin1 latin1_swedish_ci
|
v5 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest`.`v5` AS select (`mysqltest`.`t1`.`a` + 1) AS `c`,(`mysqltest`.`t1`.`b` + 1) AS `d` from `mysqltest`.`t1` latin1 latin1_swedish_ci
|
||||||
explain select c from mysqltest.v1;
|
explain select c from mysqltest.v1;
|
||||||
@ -117,6 +120,7 @@ show create view mysqltest.v1;
|
|||||||
ERROR 42000: SHOW VIEW command denied to user 'mysqltest_1'@'localhost' for table 'v1'
|
ERROR 42000: SHOW VIEW command denied to user 'mysqltest_1'@'localhost' for table 'v1'
|
||||||
grant show view on mysqltest.v1 to mysqltest_1@localhost;
|
grant show view on mysqltest.v1 to mysqltest_1@localhost;
|
||||||
grant select on mysqltest.t1 to mysqltest_1@localhost;
|
grant select on mysqltest.t1 to mysqltest_1@localhost;
|
||||||
|
revoke select on mysqltest.v5 from mysqltest_1@localhost;
|
||||||
explain select c from mysqltest.v1;
|
explain select c from mysqltest.v1;
|
||||||
id select_type table type possible_keys key key_len ref rows Extra
|
id select_type table type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 system NULL NULL NULL NULL 0 const row not found
|
1 SIMPLE t1 system NULL NULL NULL NULL 0 const row not found
|
||||||
@ -137,9 +141,6 @@ show create view mysqltest.v4;
|
|||||||
ERROR 42000: SHOW VIEW command denied to user 'mysqltest_1'@'localhost' for table 'v4'
|
ERROR 42000: SHOW VIEW command denied to user 'mysqltest_1'@'localhost' for table 'v4'
|
||||||
explain select c from mysqltest.v5;
|
explain select c from mysqltest.v5;
|
||||||
ERROR 42000: SELECT command denied to user 'mysqltest_1'@'localhost' for table 'v5'
|
ERROR 42000: SELECT command denied to user 'mysqltest_1'@'localhost' for table 'v5'
|
||||||
show create view mysqltest.v5;
|
|
||||||
View Create View character_set_client collation_connection
|
|
||||||
v5 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest`.`v5` AS select (`mysqltest`.`t1`.`a` + 1) AS `c`,(`mysqltest`.`t1`.`b` + 1) AS `d` from `mysqltest`.`t1` latin1 latin1_swedish_ci
|
|
||||||
grant show view on mysqltest.* to mysqltest_1@localhost;
|
grant show view on mysqltest.* to mysqltest_1@localhost;
|
||||||
explain select c from mysqltest.v1;
|
explain select c from mysqltest.v1;
|
||||||
id select_type table type possible_keys key key_len ref rows Extra
|
id select_type table type possible_keys key key_len ref rows Extra
|
||||||
|
@ -4,8 +4,6 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# should work with embedded server after mysqltest is fixed
|
|
||||||
--source include/not_embedded.inc
|
|
||||||
--source federated.inc
|
--source federated.inc
|
||||||
--source have_federatedx.inc
|
--source have_federatedx.inc
|
||||||
|
|
||||||
|
@ -1045,20 +1045,6 @@ COMMIT;
|
|||||||
UPDATE bug12547647 SET c = REPEAT('b',16928);
|
UPDATE bug12547647 SET c = REPEAT('b',16928);
|
||||||
ERROR HY000: Undo log record is too big.
|
ERROR HY000: Undo log record is too big.
|
||||||
DROP TABLE bug12547647;
|
DROP TABLE bug12547647;
|
||||||
SET @r=REPEAT('a',500);
|
|
||||||
CREATE TABLE t1(a INT,
|
|
||||||
v1 VARCHAR(500), v2 VARCHAR(500), v3 VARCHAR(500),
|
|
||||||
v4 VARCHAR(500), v5 VARCHAR(500), v6 VARCHAR(500),
|
|
||||||
v7 VARCHAR(500), v8 VARCHAR(500), v9 VARCHAR(500),
|
|
||||||
v10 VARCHAR(500), v11 VARCHAR(500), v12 VARCHAR(500),
|
|
||||||
v13 VARCHAR(500), v14 VARCHAR(500), v15 VARCHAR(500),
|
|
||||||
v16 VARCHAR(500), v17 VARCHAR(500), v18 VARCHAR(500)
|
|
||||||
) ENGINE=InnoDB ROW_FORMAT=DYNAMIC;
|
|
||||||
CREATE INDEX idx1 ON t1(a,v1);
|
|
||||||
INSERT INTO t1 VALUES(9,@r,@r,@r,@r,@r,@r,@r,@r,@r,@r,@r,@r,@r,@r,@r,@r,@r,@r);
|
|
||||||
UPDATE t1 SET a=1000;
|
|
||||||
DELETE FROM t1;
|
|
||||||
DROP TABLE t1;
|
|
||||||
set global innodb_file_per_table=0;
|
set global innodb_file_per_table=0;
|
||||||
set global innodb_file_format=Antelope;
|
set global innodb_file_format=Antelope;
|
||||||
set global innodb_file_format_max=Antelope;
|
set global innodb_file_format_max=Antelope;
|
||||||
|
@ -3130,3 +3130,14 @@ Handler_update 1
|
|||||||
Variable_name Value
|
Variable_name Value
|
||||||
Handler_delete 1
|
Handler_delete 1
|
||||||
DROP TABLE bug58912;
|
DROP TABLE bug58912;
|
||||||
|
create table t1 (f1 integer primary key) engine=innodb;
|
||||||
|
flush status;
|
||||||
|
show status like "handler_read_key";
|
||||||
|
Variable_name Value
|
||||||
|
Handler_read_key 0
|
||||||
|
select f1 from t1;
|
||||||
|
f1
|
||||||
|
show status like "handler_read_key";
|
||||||
|
Variable_name Value
|
||||||
|
Handler_read_key 0
|
||||||
|
drop table t1;
|
||||||
|
@ -1,2 +1,9 @@
|
|||||||
CREATE TEMPORARY TABLE table_54044 ENGINE = INNODB
|
CREATE TEMPORARY TABLE table_54044 ENGINE = INNODB
|
||||||
AS SELECT IF(NULL IS NOT NULL, NULL, NULL);
|
AS SELECT IF(NULL IS NOT NULL, NULL, NULL);
|
||||||
|
SHOW CREATE TABLE table_54044;
|
||||||
|
Table Create Table
|
||||||
|
table_54044 CREATE TEMPORARY TABLE `table_54044` (
|
||||||
|
`IF(NULL IS NOT NULL, NULL, NULL)` binary(0) DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1
|
||||||
|
CREATE TEMPORARY TABLE tmp1 ENGINE = INNODB AS SELECT COALESCE(NULL, NULL, NULL);
|
||||||
|
CREATE TEMPORARY TABLE tmp2 ENGINE = INNODB AS SELECT GREATEST(NULL, NULL);
|
||||||
|
26
mysql-test/suite/innodb/r/innodb_bug60229.result
Normal file
26
mysql-test/suite/innodb/r/innodb_bug60229.result
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
CREATE TABLE PERSON (
|
||||||
|
PERSON_ID VARCHAR(50) NOT NULL,
|
||||||
|
DOB VARCHAR(50) NOT NULL,
|
||||||
|
NAME NVARCHAR(255) NOT NULL,
|
||||||
|
CONSTRAINT PK_PERSON PRIMARY KEY (PERSON_ID, DOB)
|
||||||
|
)Engine=InnoDB;
|
||||||
|
CREATE TABLE PHOTO (
|
||||||
|
PERSON_ID VARCHAR(50) NOT NULL,
|
||||||
|
DOB VARCHAR(50) NOT NULL,
|
||||||
|
PHOTO_DETAILS VARCHAR(50) NULL,
|
||||||
|
CONSTRAINT PK_PHOTO PRIMARY KEY (PERSON_ID, DOB),
|
||||||
|
CONSTRAINT FK_PHOTO_2_PERSON FOREIGN KEY (PERSON_ID, DOB) REFERENCES PERSON (PERSON_ID, DOB)
|
||||||
|
)Engine=InnoDB;
|
||||||
|
CREATE TABLE ADDRESS (
|
||||||
|
PERSON_ID VARCHAR(50) NOT NULL,
|
||||||
|
DOB VARCHAR(50) NOT NULL,
|
||||||
|
ADDRESS_ID VARCHAR(50) NOT NULL,
|
||||||
|
ADDRESS_DETAILS NVARCHAR(250) NULL,
|
||||||
|
CONSTRAINT PK_ADDRESS PRIMARY KEY (PERSON_ID, DOB, ADDRESS_ID),
|
||||||
|
CONSTRAINT FK_ADDRESS_2_PERSON FOREIGN KEY (PERSON_ID, DOB) REFERENCES PERSON (PERSON_ID, DOB) ON DELETE CASCADE
|
||||||
|
)Engine=InnoDB;
|
||||||
|
INSERT INTO PERSON VALUES("10", "11011999", "John");
|
||||||
|
INSERT INTO PHOTO VALUES("10", "11011999", "new photo");
|
||||||
|
DROP TABLE PHOTO;
|
||||||
|
DROP TABLE ADDRESS;
|
||||||
|
DROP TABLE PERSON;
|
14
mysql-test/suite/innodb/r/innodb_cmp_drop_table.result
Normal file
14
mysql-test/suite/innodb/r/innodb_cmp_drop_table.result
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
set global innodb_file_per_table=on;
|
||||||
|
set global innodb_file_format=`1`;
|
||||||
|
create table t1(a text) engine=innodb key_block_size=8;
|
||||||
|
SELECT page_size FROM information_schema.innodb_cmpmem WHERE pages_used > 0;
|
||||||
|
page_size
|
||||||
|
8192
|
||||||
|
drop table t1;
|
||||||
|
SELECT page_size FROM information_schema.innodb_cmpmem WHERE pages_used > 0;
|
||||||
|
page_size
|
||||||
|
8192
|
||||||
|
create table t2(a text) engine=innodb;
|
||||||
|
SELECT page_size FROM information_schema.innodb_cmpmem WHERE pages_used > 0;
|
||||||
|
page_size
|
||||||
|
drop table t2;
|
@ -97,8 +97,6 @@ insert into t1 values (1,1), (2,null), (3,1), (4,1),
|
|||||||
# Demonstrate that for the SELECT statement
|
# Demonstrate that for the SELECT statement
|
||||||
# used later in the test JT_EQ_REF access method is used.
|
# used later in the test JT_EQ_REF access method is used.
|
||||||
#
|
#
|
||||||
set @tmp_optimizer_switch=@@optimizer_switch;
|
|
||||||
set optimizer_switch='derived_merge=off,derived_with_keys=off';
|
|
||||||
explain
|
explain
|
||||||
select 1 from t1 natural join (select 2 as a, 1 as b union all
|
select 1 from t1 natural join (select 2 as a, 1 as b union all
|
||||||
select 2 as a, 2 as b) as t2 for update;
|
select 2 as a, 2 as b) as t2 for update;
|
||||||
@ -106,7 +104,7 @@ id 1
|
|||||||
select_type PRIMARY
|
select_type PRIMARY
|
||||||
table <derived2>
|
table <derived2>
|
||||||
type ALL
|
type ALL
|
||||||
possible_keys NULL
|
possible_keys key0
|
||||||
key NULL
|
key NULL
|
||||||
key_len NULL
|
key_len NULL
|
||||||
ref NULL
|
ref NULL
|
||||||
@ -121,7 +119,7 @@ key PRIMARY
|
|||||||
key_len 4
|
key_len 4
|
||||||
ref t2.a
|
ref t2.a
|
||||||
rows 1
|
rows 1
|
||||||
Extra Using index condition; Using where
|
Extra Using where
|
||||||
id 2
|
id 2
|
||||||
select_type DERIVED
|
select_type DERIVED
|
||||||
table NULL
|
table NULL
|
||||||
@ -152,7 +150,6 @@ key_len NULL
|
|||||||
ref NULL
|
ref NULL
|
||||||
rows NULL
|
rows NULL
|
||||||
Extra
|
Extra
|
||||||
set optimizer_switch=@tmp_optimizer_switch;
|
|
||||||
#
|
#
|
||||||
# Demonstrate that the reported SELECT statement
|
# Demonstrate that the reported SELECT statement
|
||||||
# no longer produces warnings.
|
# no longer produces warnings.
|
||||||
@ -304,8 +301,6 @@ begin;
|
|||||||
# is retreived and processed first.
|
# is retreived and processed first.
|
||||||
#
|
#
|
||||||
# Verify that JT_EQ_REF is used.
|
# Verify that JT_EQ_REF is used.
|
||||||
set @tmp_optimizer_switch=@@optimizer_switch;
|
|
||||||
set optimizer_switch='derived_merge=off,derived_with_keys=off';
|
|
||||||
explain
|
explain
|
||||||
select 1 from t1 natural join (select 3 as a, 2 as b union all
|
select 1 from t1 natural join (select 3 as a, 2 as b union all
|
||||||
select 3 as a, 1 as b) as t2 for update;
|
select 3 as a, 1 as b) as t2 for update;
|
||||||
@ -313,7 +308,7 @@ id 1
|
|||||||
select_type PRIMARY
|
select_type PRIMARY
|
||||||
table <derived2>
|
table <derived2>
|
||||||
type ALL
|
type ALL
|
||||||
possible_keys NULL
|
possible_keys key0
|
||||||
key NULL
|
key NULL
|
||||||
key_len NULL
|
key_len NULL
|
||||||
ref NULL
|
ref NULL
|
||||||
@ -328,7 +323,7 @@ key PRIMARY
|
|||||||
key_len 4
|
key_len 4
|
||||||
ref t2.a
|
ref t2.a
|
||||||
rows 1
|
rows 1
|
||||||
Extra Using index condition; Using where
|
Extra Using where
|
||||||
id 2
|
id 2
|
||||||
select_type DERIVED
|
select_type DERIVED
|
||||||
table NULL
|
table NULL
|
||||||
@ -359,7 +354,6 @@ key_len NULL
|
|||||||
ref NULL
|
ref NULL
|
||||||
rows NULL
|
rows NULL
|
||||||
Extra
|
Extra
|
||||||
set optimizer_switch=@tmp_optimizer_switch;
|
|
||||||
# Lock the record.
|
# Lock the record.
|
||||||
select 1 from t1 natural join (select 3 as a, 2 as b union all
|
select 1 from t1 natural join (select 3 as a, 2 as b union all
|
||||||
select 3 as a, 1 as b) as t2 for update;
|
select 3 as a, 1 as b) as t2 for update;
|
||||||
|
@ -1,77 +0,0 @@
|
|||||||
#
|
|
||||||
#Bug#11759688 52020: InnoDB can still deadlock
|
|
||||||
#on just INSERT...ON DUPLICATE KEY
|
|
||||||
#a.k.a. Bug#7975 deadlock without any locking, simple select and update
|
|
||||||
#
|
|
||||||
CREATE TABLE t1 (a INT PRIMARY KEY, b INT NOT NULL) ENGINE=InnoDB;
|
|
||||||
INSERT INTO t1 VALUES(3,1);
|
|
||||||
BEGIN;
|
|
||||||
SET DEBUG_SYNC='write_row_noreplace SIGNAL insert1 WAIT_FOR select1';
|
|
||||||
INSERT INTO t1 VALUES(3,2);
|
|
||||||
SET DEBUG_SYNC='now WAIT_FOR insert1';
|
|
||||||
SELECT * FROM t1 LOCK IN SHARE MODE;
|
|
||||||
a b
|
|
||||||
3 1
|
|
||||||
SELECT * FROM t1 FOR UPDATE;
|
|
||||||
SET DEBUG_SYNC='now SIGNAL select1';
|
|
||||||
ERROR 23000: Duplicate entry '3' for key 'PRIMARY'
|
|
||||||
INSERT INTO t1 VALUES(3,3) ON DUPLICATE KEY UPDATE b=b+10;
|
|
||||||
ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
|
|
||||||
COMMIT;
|
|
||||||
SET DEBUG_SYNC='write_row_replace SIGNAL insert2 WAIT_FOR select2';
|
|
||||||
REPLACE INTO t1 VALUES(3,4);
|
|
||||||
SET DEBUG_SYNC='now WAIT_FOR insert2';
|
|
||||||
SELECT * FROM t1;
|
|
||||||
a b
|
|
||||||
3 11
|
|
||||||
SELECT * FROM t1 LOCK IN SHARE MODE;
|
|
||||||
SET DEBUG_SYNC='now SIGNAL select2';
|
|
||||||
SET DEBUG_SYNC='write_row_replace SIGNAL insert3 WAIT_FOR select3';
|
|
||||||
INSERT INTO t1 VALUES(3,5) ON DUPLICATE KEY UPDATE b=b+20;
|
|
||||||
a b
|
|
||||||
3 4
|
|
||||||
SET DEBUG_SYNC='now WAIT_FOR insert3';
|
|
||||||
SELECT b FROM t1 LOCK IN SHARE MODE;
|
|
||||||
SET DEBUG_SYNC='now SIGNAL select3';
|
|
||||||
b
|
|
||||||
24
|
|
||||||
SET DEBUG_SYNC='write_row_noreplace SIGNAL insert4 WAIT_FOR select4';
|
|
||||||
LOAD DATA INFILE '../../std_data/loaddata5.dat' INTO TABLE t1 FIELDS TERMINATED BY '' ENCLOSED BY '' (a, b);
|
|
||||||
SET DEBUG_SYNC='now WAIT_FOR insert4';
|
|
||||||
SELECT b FROM t1 WHERE a=3 LOCK IN SHARE MODE;
|
|
||||||
b
|
|
||||||
24
|
|
||||||
SELECT b FROM t1 WHERE a=3 FOR UPDATE;
|
|
||||||
SET DEBUG_SYNC='now SIGNAL select4';
|
|
||||||
b
|
|
||||||
24
|
|
||||||
ERROR 23000: Duplicate entry '3' for key 'PRIMARY'
|
|
||||||
SET DEBUG_SYNC='write_row_noreplace SIGNAL insert5 WAIT_FOR select5';
|
|
||||||
LOAD DATA INFILE '../../std_data/loaddata5.dat' IGNORE INTO TABLE t1 FIELDS TERMINATED BY '' ENCLOSED BY '' (a, b);
|
|
||||||
SET DEBUG_SYNC='now WAIT_FOR insert5';
|
|
||||||
SELECT * FROM t1;
|
|
||||||
a b
|
|
||||||
3 24
|
|
||||||
SELECT * FROM t1 WHERE a=3 LOCK IN SHARE MODE;
|
|
||||||
a b
|
|
||||||
3 24
|
|
||||||
SELECT * FROM t1 WHERE a=3 FOR UPDATE;
|
|
||||||
SET DEBUG_SYNC='now SIGNAL select5';
|
|
||||||
a b
|
|
||||||
3 24
|
|
||||||
SET DEBUG_SYNC='write_row_replace SIGNAL insert6 WAIT_FOR select6';
|
|
||||||
LOAD DATA INFILE '../../std_data/loaddata5.dat' REPLACE INTO TABLE t1 FIELDS TERMINATED BY '' ENCLOSED BY '' (a, b);
|
|
||||||
SET DEBUG_SYNC='now WAIT_FOR insert6';
|
|
||||||
SELECT * FROM t1;
|
|
||||||
a b
|
|
||||||
1 2
|
|
||||||
3 24
|
|
||||||
5 6
|
|
||||||
SELECT a,b FROM t1 LOCK IN SHARE MODE;
|
|
||||||
SET DEBUG_SYNC='now SIGNAL select6';
|
|
||||||
a b
|
|
||||||
1 2
|
|
||||||
3 4
|
|
||||||
5 6
|
|
||||||
SET DEBUG_SYNC='RESET';
|
|
||||||
DROP TABLE t1;
|
|
@ -530,24 +530,6 @@ COMMIT;
|
|||||||
--error ER_UNDO_RECORD_TOO_BIG
|
--error ER_UNDO_RECORD_TOO_BIG
|
||||||
UPDATE bug12547647 SET c = REPEAT('b',16928);
|
UPDATE bug12547647 SET c = REPEAT('b',16928);
|
||||||
DROP TABLE bug12547647;
|
DROP TABLE bug12547647;
|
||||||
# Bug#12637786
|
|
||||||
SET @r=REPEAT('a',500);
|
|
||||||
CREATE TABLE t1(a INT,
|
|
||||||
v1 VARCHAR(500), v2 VARCHAR(500), v3 VARCHAR(500),
|
|
||||||
v4 VARCHAR(500), v5 VARCHAR(500), v6 VARCHAR(500),
|
|
||||||
v7 VARCHAR(500), v8 VARCHAR(500), v9 VARCHAR(500),
|
|
||||||
v10 VARCHAR(500), v11 VARCHAR(500), v12 VARCHAR(500),
|
|
||||||
v13 VARCHAR(500), v14 VARCHAR(500), v15 VARCHAR(500),
|
|
||||||
v16 VARCHAR(500), v17 VARCHAR(500), v18 VARCHAR(500)
|
|
||||||
) ENGINE=InnoDB ROW_FORMAT=DYNAMIC;
|
|
||||||
|
|
||||||
CREATE INDEX idx1 ON t1(a,v1);
|
|
||||||
INSERT INTO t1 VALUES(9,@r,@r,@r,@r,@r,@r,@r,@r,@r,@r,@r,@r,@r,@r,@r,@r,@r,@r);
|
|
||||||
UPDATE t1 SET a=1000;
|
|
||||||
DELETE FROM t1;
|
|
||||||
# Let the purge thread clean up this file.
|
|
||||||
-- sleep 10
|
|
||||||
DROP TABLE t1;
|
|
||||||
|
|
||||||
eval set global innodb_file_per_table=$per_table;
|
eval set global innodb_file_per_table=$per_table;
|
||||||
eval set global innodb_file_format=$format;
|
eval set global innodb_file_format=$format;
|
||||||
|
@ -2541,6 +2541,17 @@ SET GLOBAL innodb_thread_concurrency = @innodb_thread_concurrency_orig;
|
|||||||
# Clean up after the Bug#55284/Bug#58912 test case.
|
# Clean up after the Bug#55284/Bug#58912 test case.
|
||||||
DROP TABLE bug58912;
|
DROP TABLE bug58912;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Test fix for bug 13117023. InnoDB increments HA_READ_KEY_COUNT (aka
|
||||||
|
# HANDLER_READ_KEY) when it should not.
|
||||||
|
#
|
||||||
|
create table t1 (f1 integer primary key) engine=innodb;
|
||||||
|
flush status;
|
||||||
|
show status like "handler_read_key";
|
||||||
|
select f1 from t1;
|
||||||
|
show status like "handler_read_key";
|
||||||
|
drop table t1;
|
||||||
|
|
||||||
#######################################################################
|
#######################################################################
|
||||||
# #
|
# #
|
||||||
# Please, DO NOT TOUCH this file as well as the innodb.result file. #
|
# Please, DO NOT TOUCH this file as well as the innodb.result file. #
|
||||||
|
@ -2,6 +2,10 @@
|
|||||||
# during create table, so it will not trigger assertion failure.
|
# during create table, so it will not trigger assertion failure.
|
||||||
|
|
||||||
|
|
||||||
|
# This 'create table' operation no longer uses the NULL datatype.
|
||||||
|
|
||||||
CREATE TEMPORARY TABLE table_54044 ENGINE = INNODB
|
CREATE TEMPORARY TABLE table_54044 ENGINE = INNODB
|
||||||
AS SELECT IF(NULL IS NOT NULL, NULL, NULL);
|
AS SELECT IF(NULL IS NOT NULL, NULL, NULL);
|
||||||
|
SHOW CREATE TABLE table_54044;
|
||||||
|
CREATE TEMPORARY TABLE tmp1 ENGINE = INNODB AS SELECT COALESCE(NULL, NULL, NULL);
|
||||||
|
CREATE TEMPORARY TABLE tmp2 ENGINE = INNODB AS SELECT GREATEST(NULL, NULL);
|
||||||
|
1
mysql-test/suite/innodb/t/innodb_bug60229-master.opt
Normal file
1
mysql-test/suite/innodb/t/innodb_bug60229-master.opt
Normal file
@ -0,0 +1 @@
|
|||||||
|
--lower_case_table_names=0
|
39
mysql-test/suite/innodb/t/innodb_bug60229.test
Normal file
39
mysql-test/suite/innodb/t/innodb_bug60229.test
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
#
|
||||||
|
# Bug #13083023 - 60229: BROKEN COMPATIBILITY: ERROR WHILE CREATE TABLE
|
||||||
|
# WITH FOREIGN KEY CONSTRAINT.
|
||||||
|
|
||||||
|
-- source include/have_innodb.inc
|
||||||
|
|
||||||
|
CREATE TABLE PERSON (
|
||||||
|
PERSON_ID VARCHAR(50) NOT NULL,
|
||||||
|
DOB VARCHAR(50) NOT NULL,
|
||||||
|
NAME NVARCHAR(255) NOT NULL,
|
||||||
|
CONSTRAINT PK_PERSON PRIMARY KEY (PERSON_ID, DOB)
|
||||||
|
)Engine=InnoDB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE PHOTO (
|
||||||
|
PERSON_ID VARCHAR(50) NOT NULL,
|
||||||
|
DOB VARCHAR(50) NOT NULL,
|
||||||
|
PHOTO_DETAILS VARCHAR(50) NULL,
|
||||||
|
CONSTRAINT PK_PHOTO PRIMARY KEY (PERSON_ID, DOB),
|
||||||
|
CONSTRAINT FK_PHOTO_2_PERSON FOREIGN KEY (PERSON_ID, DOB) REFERENCES PERSON (PERSON_ID, DOB)
|
||||||
|
)Engine=InnoDB;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE ADDRESS (
|
||||||
|
PERSON_ID VARCHAR(50) NOT NULL,
|
||||||
|
DOB VARCHAR(50) NOT NULL,
|
||||||
|
ADDRESS_ID VARCHAR(50) NOT NULL,
|
||||||
|
ADDRESS_DETAILS NVARCHAR(250) NULL,
|
||||||
|
CONSTRAINT PK_ADDRESS PRIMARY KEY (PERSON_ID, DOB, ADDRESS_ID),
|
||||||
|
CONSTRAINT FK_ADDRESS_2_PERSON FOREIGN KEY (PERSON_ID, DOB) REFERENCES PERSON (PERSON_ID, DOB) ON DELETE CASCADE
|
||||||
|
)Engine=InnoDB;
|
||||||
|
|
||||||
|
INSERT INTO PERSON VALUES("10", "11011999", "John");
|
||||||
|
INSERT INTO PHOTO VALUES("10", "11011999", "new photo");
|
||||||
|
|
||||||
|
DROP TABLE PHOTO;
|
||||||
|
DROP TABLE ADDRESS;
|
||||||
|
DROP TABLE PERSON;
|
||||||
|
|
@ -0,0 +1 @@
|
|||||||
|
--innodb-buffer-pool-size=8M
|
58
mysql-test/suite/innodb/t/innodb_cmp_drop_table.test
Normal file
58
mysql-test/suite/innodb/t/innodb_cmp_drop_table.test
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
|
||||||
|
let $per_table=`select @@innodb_file_per_table`;
|
||||||
|
let $format=`select @@innodb_file_format`;
|
||||||
|
|
||||||
|
-- let $query_i_s = SELECT page_size FROM information_schema.innodb_cmpmem WHERE pages_used > 0
|
||||||
|
|
||||||
|
set global innodb_file_per_table=on;
|
||||||
|
set global innodb_file_format=`1`;
|
||||||
|
|
||||||
|
create table t1(a text) engine=innodb key_block_size=8;
|
||||||
|
|
||||||
|
-- disable_query_log
|
||||||
|
|
||||||
|
# insert some rows so we are using compressed pages
|
||||||
|
-- let $i = 10
|
||||||
|
while ($i)
|
||||||
|
{
|
||||||
|
insert into t1 values(repeat('abcdefghijklmnopqrstuvwxyz',100));
|
||||||
|
dec $i;
|
||||||
|
}
|
||||||
|
-- enable_query_log
|
||||||
|
|
||||||
|
# we should be using some 8K pages
|
||||||
|
-- eval $query_i_s
|
||||||
|
|
||||||
|
drop table t1;
|
||||||
|
|
||||||
|
# because of lazy eviction at drop table in 5.5 there should be some
|
||||||
|
# used 8K pages
|
||||||
|
-- eval $query_i_s
|
||||||
|
|
||||||
|
# create a non-compressed table and insert enough into it to evict
|
||||||
|
# compressed pages
|
||||||
|
create table t2(a text) engine=innodb;
|
||||||
|
|
||||||
|
-- disable_query_log
|
||||||
|
|
||||||
|
-- let $i = 400
|
||||||
|
while ($i)
|
||||||
|
{
|
||||||
|
insert into t2 values(repeat('abcdefghijklmnopqrstuvwxyz',1000));
|
||||||
|
dec $i;
|
||||||
|
}
|
||||||
|
|
||||||
|
-- enable_query_log
|
||||||
|
|
||||||
|
# now there should be no 8K pages in the buffer pool
|
||||||
|
-- eval $query_i_s
|
||||||
|
|
||||||
|
drop table t2;
|
||||||
|
|
||||||
|
#
|
||||||
|
# restore environment to the state it was before this test execution
|
||||||
|
#
|
||||||
|
|
||||||
|
-- disable_query_log
|
||||||
|
eval set global innodb_file_format=$format;
|
||||||
|
eval set global innodb_file_per_table=$per_table;
|
@ -3,6 +3,10 @@
|
|||||||
#
|
#
|
||||||
-- source include/have_innodb.inc
|
-- source include/have_innodb.inc
|
||||||
|
|
||||||
|
# Issues with innodb_change_buffering_debug on Windows, so the test scenario
|
||||||
|
# cannot be created on windows
|
||||||
|
--source include/not_windows.inc
|
||||||
|
|
||||||
# This test needs debug server
|
# This test needs debug server
|
||||||
--source include/have_debug.inc
|
--source include/have_debug.inc
|
||||||
|
|
||||||
|
@ -139,12 +139,10 @@ insert into t1 values (1,1), (2,null), (3,1), (4,1),
|
|||||||
--echo # used later in the test JT_EQ_REF access method is used.
|
--echo # used later in the test JT_EQ_REF access method is used.
|
||||||
--echo #
|
--echo #
|
||||||
--vertical_results
|
--vertical_results
|
||||||
set @tmp_optimizer_switch=@@optimizer_switch;
|
--replace_result "Using index condition; Using where" "Using where"
|
||||||
set optimizer_switch='derived_merge=off,derived_with_keys=off';
|
|
||||||
explain
|
explain
|
||||||
select 1 from t1 natural join (select 2 as a, 1 as b union all
|
select 1 from t1 natural join (select 2 as a, 1 as b union all
|
||||||
select 2 as a, 2 as b) as t2 for update;
|
select 2 as a, 2 as b) as t2 for update;
|
||||||
set optimizer_switch=@tmp_optimizer_switch;
|
|
||||||
--horizontal_results
|
--horizontal_results
|
||||||
--echo #
|
--echo #
|
||||||
--echo # Demonstrate that the reported SELECT statement
|
--echo # Demonstrate that the reported SELECT statement
|
||||||
@ -238,12 +236,10 @@ begin;
|
|||||||
--echo #
|
--echo #
|
||||||
--echo # Verify that JT_EQ_REF is used.
|
--echo # Verify that JT_EQ_REF is used.
|
||||||
--vertical_results
|
--vertical_results
|
||||||
set @tmp_optimizer_switch=@@optimizer_switch;
|
--replace_result "Using index condition; Using where" "Using where"
|
||||||
set optimizer_switch='derived_merge=off,derived_with_keys=off';
|
|
||||||
explain
|
explain
|
||||||
select 1 from t1 natural join (select 3 as a, 2 as b union all
|
select 1 from t1 natural join (select 3 as a, 2 as b union all
|
||||||
select 3 as a, 1 as b) as t2 for update;
|
select 3 as a, 1 as b) as t2 for update;
|
||||||
set optimizer_switch=@tmp_optimizer_switch;
|
|
||||||
--horizontal_results
|
--horizontal_results
|
||||||
--echo # Lock the record.
|
--echo # Lock the record.
|
||||||
select 1 from t1 natural join (select 3 as a, 2 as b union all
|
select 1 from t1 natural join (select 3 as a, 2 as b union all
|
||||||
|
@ -1,186 +0,0 @@
|
|||||||
--source include/have_innodb.inc
|
|
||||||
--source include/have_debug_sync.inc
|
|
||||||
|
|
||||||
--echo #
|
|
||||||
--echo #Bug#11759688 52020: InnoDB can still deadlock
|
|
||||||
--echo #on just INSERT...ON DUPLICATE KEY
|
|
||||||
--echo #a.k.a. Bug#7975 deadlock without any locking, simple select and update
|
|
||||||
--echo #
|
|
||||||
|
|
||||||
CREATE TABLE t1 (a INT PRIMARY KEY, b INT NOT NULL) ENGINE=InnoDB;
|
|
||||||
|
|
||||||
INSERT INTO t1 VALUES(3,1);
|
|
||||||
|
|
||||||
connect (con1,localhost,root,,);
|
|
||||||
connect (con2,localhost,root,,);
|
|
||||||
connection con1;
|
|
||||||
|
|
||||||
BEGIN;
|
|
||||||
# normal INSERT of a duplicate should only S-lock the existing record (3,1)
|
|
||||||
SET DEBUG_SYNC='write_row_noreplace SIGNAL insert1 WAIT_FOR select1';
|
|
||||||
--send
|
|
||||||
INSERT INTO t1 VALUES(3,2);
|
|
||||||
|
|
||||||
connection default;
|
|
||||||
SET DEBUG_SYNC='now WAIT_FOR insert1';
|
|
||||||
# this should S-lock (3,1); no conflict
|
|
||||||
SELECT * FROM t1 LOCK IN SHARE MODE;
|
|
||||||
# this should X-lock (3,1), conflicting with con1
|
|
||||||
--send
|
|
||||||
SELECT * FROM t1 FOR UPDATE;
|
|
||||||
|
|
||||||
connection con2;
|
|
||||||
# Check that the above SELECT is blocked
|
|
||||||
let $wait_condition=
|
|
||||||
select count(*) = 1 from information_schema.processlist
|
|
||||||
where state = 'Sending data' and
|
|
||||||
info = 'SELECT * FROM t1 FOR UPDATE';
|
|
||||||
--source include/wait_condition.inc
|
|
||||||
SET DEBUG_SYNC='now SIGNAL select1';
|
|
||||||
|
|
||||||
connection con1;
|
|
||||||
--error ER_DUP_ENTRY
|
|
||||||
reap;
|
|
||||||
# We are still holding an S-lock on (3,1) after the failed INSERT.
|
|
||||||
# The following will upgrade it to an X-lock, causing a deadlock.
|
|
||||||
# InnoDB should resolve the deadlock by aborting the blocked SELECT.
|
|
||||||
INSERT INTO t1 VALUES(3,3) ON DUPLICATE KEY UPDATE b=b+10;
|
|
||||||
|
|
||||||
connection default;
|
|
||||||
--error ER_LOCK_DEADLOCK
|
|
||||||
reap;
|
|
||||||
connection con1;
|
|
||||||
COMMIT;
|
|
||||||
|
|
||||||
SET DEBUG_SYNC='write_row_replace SIGNAL insert2 WAIT_FOR select2';
|
|
||||||
--send
|
|
||||||
REPLACE INTO t1 VALUES(3,4);
|
|
||||||
|
|
||||||
connection default;
|
|
||||||
SET DEBUG_SYNC='now WAIT_FOR insert2';
|
|
||||||
SELECT * FROM t1;
|
|
||||||
--send
|
|
||||||
SELECT * FROM t1 LOCK IN SHARE MODE;
|
|
||||||
|
|
||||||
connection con2;
|
|
||||||
# Check that the above SELECT is blocked because of X lock.
|
|
||||||
let $wait_condition=
|
|
||||||
select count(*) = 1 from information_schema.processlist
|
|
||||||
where state = 'Sending data' and
|
|
||||||
info = 'SELECT * FROM t1 LOCK IN SHARE MODE';
|
|
||||||
--source include/wait_condition.inc
|
|
||||||
SET DEBUG_SYNC='now SIGNAL select2';
|
|
||||||
|
|
||||||
connection con1;
|
|
||||||
reap;
|
|
||||||
|
|
||||||
SET DEBUG_SYNC='write_row_replace SIGNAL insert3 WAIT_FOR select3';
|
|
||||||
--send
|
|
||||||
INSERT INTO t1 VALUES(3,5) ON DUPLICATE KEY UPDATE b=b+20;
|
|
||||||
|
|
||||||
connection default;
|
|
||||||
reap;
|
|
||||||
SET DEBUG_SYNC='now WAIT_FOR insert3';
|
|
||||||
--send
|
|
||||||
SELECT b FROM t1 LOCK IN SHARE MODE;
|
|
||||||
|
|
||||||
connection con2;
|
|
||||||
# Check that the above SELECT is blocked because of X lock.
|
|
||||||
let $wait_condition=
|
|
||||||
select count(*) = 1 from information_schema.processlist
|
|
||||||
where state = 'Sending data' and
|
|
||||||
info = 'SELECT b FROM t1 LOCK IN SHARE MODE';
|
|
||||||
--source include/wait_condition.inc
|
|
||||||
SET DEBUG_SYNC='now SIGNAL select3';
|
|
||||||
|
|
||||||
connection default;
|
|
||||||
reap;
|
|
||||||
|
|
||||||
connection con1;
|
|
||||||
reap;
|
|
||||||
SET DEBUG_SYNC='write_row_noreplace SIGNAL insert4 WAIT_FOR select4';
|
|
||||||
--send
|
|
||||||
LOAD DATA INFILE '../../std_data/loaddata5.dat' INTO TABLE t1 FIELDS TERMINATED BY '' ENCLOSED BY '' (a, b);
|
|
||||||
|
|
||||||
connection default;
|
|
||||||
SET DEBUG_SYNC='now WAIT_FOR insert4';
|
|
||||||
# this should S-lock (3,1); no conflict
|
|
||||||
SELECT b FROM t1 WHERE a=3 LOCK IN SHARE MODE;
|
|
||||||
# this should X-lock (3,1), conflicting with con1
|
|
||||||
--send
|
|
||||||
SELECT b FROM t1 WHERE a=3 FOR UPDATE;
|
|
||||||
|
|
||||||
connection con2;
|
|
||||||
# Check that the above SELECT is blocked
|
|
||||||
let $wait_condition=
|
|
||||||
select count(*) = 1 from information_schema.processlist
|
|
||||||
where state = 'statistics' and
|
|
||||||
info = 'SELECT b FROM t1 WHERE a=3 FOR UPDATE';
|
|
||||||
--source include/wait_condition.inc
|
|
||||||
SET DEBUG_SYNC='now SIGNAL select4';
|
|
||||||
|
|
||||||
connection default;
|
|
||||||
reap;
|
|
||||||
|
|
||||||
connection con1;
|
|
||||||
--error ER_DUP_ENTRY
|
|
||||||
reap;
|
|
||||||
SET DEBUG_SYNC='write_row_noreplace SIGNAL insert5 WAIT_FOR select5';
|
|
||||||
--send
|
|
||||||
LOAD DATA INFILE '../../std_data/loaddata5.dat' IGNORE INTO TABLE t1 FIELDS TERMINATED BY '' ENCLOSED BY '' (a, b);
|
|
||||||
|
|
||||||
connection default;
|
|
||||||
SET DEBUG_SYNC='now WAIT_FOR insert5';
|
|
||||||
SELECT * FROM t1;
|
|
||||||
# this should S-lock; no conflict
|
|
||||||
SELECT * FROM t1 WHERE a=3 LOCK IN SHARE MODE;
|
|
||||||
# this should X-lock, conflicting with the S-lock of the IGNORE in con1
|
|
||||||
--send
|
|
||||||
SELECT * FROM t1 WHERE a=3 FOR UPDATE;
|
|
||||||
|
|
||||||
connection con2;
|
|
||||||
# Check that the above SELECT is blocked
|
|
||||||
let $wait_condition=
|
|
||||||
select count(*) = 1 from information_schema.processlist
|
|
||||||
where state = 'statistics' and
|
|
||||||
info = 'SELECT * FROM t1 WHERE a=3 FOR UPDATE';
|
|
||||||
--source include/wait_condition.inc
|
|
||||||
SET DEBUG_SYNC='now SIGNAL select5';
|
|
||||||
|
|
||||||
connection con1;
|
|
||||||
reap;
|
|
||||||
connection default;
|
|
||||||
reap;
|
|
||||||
|
|
||||||
connection con1;
|
|
||||||
SET DEBUG_SYNC='write_row_replace SIGNAL insert6 WAIT_FOR select6';
|
|
||||||
--send
|
|
||||||
LOAD DATA INFILE '../../std_data/loaddata5.dat' REPLACE INTO TABLE t1 FIELDS TERMINATED BY '' ENCLOSED BY '' (a, b);
|
|
||||||
|
|
||||||
connection default;
|
|
||||||
SET DEBUG_SYNC='now WAIT_FOR insert6';
|
|
||||||
SELECT * FROM t1;
|
|
||||||
# this should conflict with the X-lock acquired by the REPLACE
|
|
||||||
--send
|
|
||||||
SELECT a,b FROM t1 LOCK IN SHARE MODE;
|
|
||||||
|
|
||||||
connection con2;
|
|
||||||
# Check that the above SELECT is blocked
|
|
||||||
let $wait_condition=
|
|
||||||
select count(*) = 1 from information_schema.processlist
|
|
||||||
where state = 'Sending data' and
|
|
||||||
info = 'SELECT a,b FROM t1 LOCK IN SHARE MODE';
|
|
||||||
--source include/wait_condition.inc
|
|
||||||
SET DEBUG_SYNC='now SIGNAL select6';
|
|
||||||
|
|
||||||
connection con1;
|
|
||||||
reap;
|
|
||||||
connection default;
|
|
||||||
reap;
|
|
||||||
|
|
||||||
disconnect con1;
|
|
||||||
disconnect con2;
|
|
||||||
|
|
||||||
connection default;
|
|
||||||
SET DEBUG_SYNC='RESET';
|
|
||||||
DROP TABLE t1;
|
|
@ -1,4 +1,75 @@
|
|||||||
DROP TABLE IF EXISTS t1;
|
DROP TABLE IF EXISTS t1;
|
||||||
|
#
|
||||||
|
# Bug#12696518/Bug#11766879/60106:DIFF BETWEEN # OF INDEXES IN MYSQL
|
||||||
|
# VS INNODB, PARTITONING, ON INDEX CREATE
|
||||||
|
#
|
||||||
|
CREATE TABLE t1
|
||||||
|
(a INT PRIMARY KEY,
|
||||||
|
b VARCHAR(64))
|
||||||
|
ENGINE = InnoDB
|
||||||
|
PARTITION BY HASH (a) PARTITIONS 3;
|
||||||
|
INSERT INTO t1 VALUES (0, 'first row'), (1, 'second row'), (2, 'Third row');
|
||||||
|
INSERT INTO t1 VALUES (3, 'row id 3'), (4, '4 row'), (5, 'row5');
|
||||||
|
INSERT INTO t1 VALUES (6, 'X 6 row'), (7, 'Seventh row'), (8, 'Last row');
|
||||||
|
ALTER TABLE t1 ADD INDEX new_b_index (b);
|
||||||
|
ALTER TABLE t1 DROP INDEX new_b_index;
|
||||||
|
SET SESSION debug_dbug = "+d,ha_partition_fail_final_add_index";
|
||||||
|
ALTER TABLE t1 ADD INDEX (b);
|
||||||
|
ERROR HY000: Table has no partition for value 0
|
||||||
|
SHOW CREATE TABLE t1;
|
||||||
|
Table Create Table
|
||||||
|
t1 CREATE TABLE `t1` (
|
||||||
|
`a` int(11) NOT NULL,
|
||||||
|
`b` varchar(64) DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`a`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1
|
||||||
|
/*!50100 PARTITION BY HASH (a)
|
||||||
|
PARTITIONS 3 */
|
||||||
|
SELECT * FROM t1;
|
||||||
|
a b
|
||||||
|
0 first row
|
||||||
|
1 second row
|
||||||
|
2 Third row
|
||||||
|
3 row id 3
|
||||||
|
4 4 row
|
||||||
|
5 row5
|
||||||
|
6 X 6 row
|
||||||
|
7 Seventh row
|
||||||
|
8 Last row
|
||||||
|
FLUSH TABLES;
|
||||||
|
CREATE INDEX new_index ON t1 (b);
|
||||||
|
ERROR HY000: Table has no partition for value 0
|
||||||
|
SHOW CREATE TABLE t1;
|
||||||
|
Table Create Table
|
||||||
|
t1 CREATE TABLE `t1` (
|
||||||
|
`a` int(11) NOT NULL,
|
||||||
|
`b` varchar(64) DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`a`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1
|
||||||
|
/*!50100 PARTITION BY HASH (a)
|
||||||
|
PARTITIONS 3 */
|
||||||
|
SELECT * FROM t1;
|
||||||
|
a b
|
||||||
|
0 first row
|
||||||
|
1 second row
|
||||||
|
2 Third row
|
||||||
|
3 row id 3
|
||||||
|
4 4 row
|
||||||
|
5 row5
|
||||||
|
6 X 6 row
|
||||||
|
7 Seventh row
|
||||||
|
8 Last row
|
||||||
|
SET SESSION debug_dbug = "-d,ha_partition_fail_final_add_index";
|
||||||
|
SHOW CREATE TABLE t1;
|
||||||
|
Table Create Table
|
||||||
|
t1 CREATE TABLE `t1` (
|
||||||
|
`a` int(11) NOT NULL,
|
||||||
|
`b` varchar(64) DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`a`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1
|
||||||
|
/*!50100 PARTITION BY HASH (a)
|
||||||
|
PARTITIONS 3 */
|
||||||
|
DROP TABLE t1;
|
||||||
call mtr.add_suppression("InnoDB: Warning: allocated tablespace .*, old maximum was");
|
call mtr.add_suppression("InnoDB: Warning: allocated tablespace .*, old maximum was");
|
||||||
call mtr.add_suppression("InnoDB: Error: table .* does not exist in the InnoDB internal");
|
call mtr.add_suppression("InnoDB: Error: table .* does not exist in the InnoDB internal");
|
||||||
call mtr.add_suppression("InnoDB: Warning: MySQL is trying to drop table ");
|
call mtr.add_suppression("InnoDB: Warning: MySQL is trying to drop table ");
|
||||||
|
@ -13,6 +13,41 @@ DROP TABLE IF EXISTS t1;
|
|||||||
|
|
||||||
--let $DATADIR= `SELECT @@datadir;`
|
--let $DATADIR= `SELECT @@datadir;`
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # Bug#12696518/Bug#11766879/60106:DIFF BETWEEN # OF INDEXES IN MYSQL
|
||||||
|
--echo # VS INNODB, PARTITONING, ON INDEX CREATE
|
||||||
|
--echo #
|
||||||
|
CREATE TABLE t1
|
||||||
|
(a INT PRIMARY KEY,
|
||||||
|
b VARCHAR(64))
|
||||||
|
ENGINE = InnoDB
|
||||||
|
PARTITION BY HASH (a) PARTITIONS 3;
|
||||||
|
INSERT INTO t1 VALUES (0, 'first row'), (1, 'second row'), (2, 'Third row');
|
||||||
|
INSERT INTO t1 VALUES (3, 'row id 3'), (4, '4 row'), (5, 'row5');
|
||||||
|
INSERT INTO t1 VALUES (6, 'X 6 row'), (7, 'Seventh row'), (8, 'Last row');
|
||||||
|
|
||||||
|
ALTER TABLE t1 ADD INDEX new_b_index (b);
|
||||||
|
ALTER TABLE t1 DROP INDEX new_b_index;
|
||||||
|
|
||||||
|
SET SESSION debug_dbug = "+d,ha_partition_fail_final_add_index";
|
||||||
|
|
||||||
|
--error ER_NO_PARTITION_FOR_GIVEN_VALUE
|
||||||
|
ALTER TABLE t1 ADD INDEX (b);
|
||||||
|
SHOW CREATE TABLE t1;
|
||||||
|
--sorted_result
|
||||||
|
SELECT * FROM t1;
|
||||||
|
|
||||||
|
FLUSH TABLES;
|
||||||
|
--error ER_NO_PARTITION_FOR_GIVEN_VALUE
|
||||||
|
CREATE INDEX new_index ON t1 (b);
|
||||||
|
SHOW CREATE TABLE t1;
|
||||||
|
--sorted_result
|
||||||
|
SELECT * FROM t1;
|
||||||
|
|
||||||
|
SET SESSION debug_dbug = "-d,ha_partition_fail_final_add_index";
|
||||||
|
SHOW CREATE TABLE t1;
|
||||||
|
DROP TABLE t1;
|
||||||
|
|
||||||
# Checking with #innodb what this is...
|
# Checking with #innodb what this is...
|
||||||
call mtr.add_suppression("InnoDB: Warning: allocated tablespace .*, old maximum was");
|
call mtr.add_suppression("InnoDB: Warning: allocated tablespace .*, old maximum was");
|
||||||
# If there is a crash or failure between the ddl_log is written and the
|
# If there is a crash or failure between the ddl_log is written and the
|
||||||
|
@ -1176,7 +1176,7 @@ EXPLAIN SELECT 1 FROM t1 WHERE a IN
|
|||||||
id select_type table type possible_keys key key_len ref rows Extra
|
id select_type table type possible_keys key key_len ref rows Extra
|
||||||
1 PRIMARY t1 index PRIMARY,i2 PRIMARY 4 NULL 144 Using index
|
1 PRIMARY t1 index PRIMARY,i2 PRIMARY 4 NULL 144 Using index
|
||||||
1 PRIMARY <subquery2> eq_ref distinct_key distinct_key 4 func 1
|
1 PRIMARY <subquery2> eq_ref distinct_key distinct_key 4 func 1
|
||||||
2 SUBQUERY t1 ALL NULL NULL NULL NULL 144
|
2 MATERIALIZED t1 ALL NULL NULL NULL NULL 144
|
||||||
CREATE TABLE t2 (a INT, b INT, KEY(a));
|
CREATE TABLE t2 (a INT, b INT, KEY(a));
|
||||||
INSERT INTO t2 VALUES (1, 1), (2, 2), (3,3), (4,4);
|
INSERT INTO t2 VALUES (1, 1), (2, 2), (3,3), (4,4);
|
||||||
EXPLAIN SELECT a, SUM(b) FROM t2 GROUP BY a LIMIT 2;
|
EXPLAIN SELECT a, SUM(b) FROM t2 GROUP BY a LIMIT 2;
|
||||||
@ -1190,5 +1190,5 @@ EXPLAIN SELECT 1 FROM t2 WHERE a IN
|
|||||||
id select_type table type possible_keys key key_len ref rows Extra
|
id select_type table type possible_keys key key_len ref rows Extra
|
||||||
1 PRIMARY t2 index a a 5 NULL 4 Using index
|
1 PRIMARY t2 index a a 5 NULL 4 Using index
|
||||||
1 PRIMARY <subquery2> eq_ref distinct_key distinct_key 4 func 1
|
1 PRIMARY <subquery2> eq_ref distinct_key distinct_key 4 func 1
|
||||||
2 SUBQUERY t1 ALL NULL NULL NULL NULL 144
|
2 MATERIALIZED t1 ALL NULL NULL NULL NULL 144
|
||||||
DROP TABLE t1, t2;
|
DROP TABLE t1, t2;
|
||||||
|
@ -75,10 +75,11 @@ Database: test
|
|||||||
2 rows in set.
|
2 rows in set.
|
||||||
|
|
||||||
DROP TABLE t1, t2;
|
DROP TABLE t1, t2;
|
||||||
|
+---------------------------------------+
|
||||||
|
+---------------------------------------+
|
||||||
|
+---------------------------------------+
|
||||||
Database: information_schema
|
Database: information_schema
|
||||||
+---------------------------------------+
|
|
||||||
| Tables |
|
| Tables |
|
||||||
+---------------------------------------+
|
|
||||||
| CHARACTER_SETS |
|
| CHARACTER_SETS |
|
||||||
| CLIENT_STATISTICS |
|
| CLIENT_STATISTICS |
|
||||||
| COLLATIONS |
|
| COLLATIONS |
|
||||||
@ -91,10 +92,32 @@ Database: information_schema
|
|||||||
| GLOBAL_STATUS |
|
| GLOBAL_STATUS |
|
||||||
| GLOBAL_VARIABLES |
|
| GLOBAL_VARIABLES |
|
||||||
| INDEX_STATISTICS |
|
| INDEX_STATISTICS |
|
||||||
|
| INNODB_BUFFER_POOL_PAGES |
|
||||||
|
| INNODB_BUFFER_POOL_PAGES_BLOB |
|
||||||
|
| INNODB_BUFFER_POOL_PAGES_INDEX |
|
||||||
|
| INNODB_CMP |
|
||||||
|
| INNODB_CMPMEM |
|
||||||
|
| INNODB_CMPMEM_RESET |
|
||||||
|
| INNODB_CMP_RESET |
|
||||||
|
| INNODB_INDEX_STATS |
|
||||||
|
| INNODB_LOCKS |
|
||||||
|
| INNODB_LOCK_WAITS |
|
||||||
|
| INNODB_RSEG |
|
||||||
|
| INNODB_SYS_COLUMNS |
|
||||||
|
| INNODB_SYS_FIELDS |
|
||||||
|
| INNODB_SYS_FOREIGN |
|
||||||
|
| INNODB_SYS_FOREIGN_COLS |
|
||||||
|
| INNODB_SYS_INDEXES |
|
||||||
|
| INNODB_SYS_STATS |
|
||||||
|
| INNODB_SYS_TABLES |
|
||||||
|
| INNODB_SYS_TABLESTATS |
|
||||||
|
| INNODB_TABLE_STATS |
|
||||||
|
| INNODB_TRX |
|
||||||
| KEY_CACHES |
|
| KEY_CACHES |
|
||||||
| KEY_COLUMN_USAGE |
|
| KEY_COLUMN_USAGE |
|
||||||
| PARAMETERS |
|
| PARAMETERS |
|
||||||
| PARTITIONS |
|
| PARTITIONS |
|
||||||
|
| PBXT_STATISTICS |
|
||||||
| PLUGINS |
|
| PLUGINS |
|
||||||
| PROCESSLIST |
|
| PROCESSLIST |
|
||||||
| PROFILING |
|
| PROFILING |
|
||||||
@ -114,34 +137,12 @@ Database: information_schema
|
|||||||
| USER_PRIVILEGES |
|
| USER_PRIVILEGES |
|
||||||
| USER_STATISTICS |
|
| USER_STATISTICS |
|
||||||
| VIEWS |
|
| VIEWS |
|
||||||
| INNODB_CMPMEM_RESET |
|
|
||||||
| PBXT_STATISTICS |
|
|
||||||
| INNODB_CMPMEM |
|
|
||||||
| INNODB_RSEG |
|
|
||||||
| INNODB_SYS_TABLESTATS |
|
|
||||||
| INNODB_LOCK_WAITS |
|
|
||||||
| INNODB_INDEX_STATS |
|
|
||||||
| INNODB_CMP |
|
|
||||||
| INNODB_SYS_FOREIGN_COLS |
|
|
||||||
| INNODB_CMP_RESET |
|
|
||||||
| INNODB_BUFFER_POOL_PAGES |
|
|
||||||
| INNODB_TRX |
|
|
||||||
| INNODB_BUFFER_POOL_PAGES_INDEX |
|
|
||||||
| INNODB_LOCKS |
|
|
||||||
| INNODB_BUFFER_POOL_PAGES_BLOB |
|
|
||||||
| INNODB_SYS_TABLES |
|
|
||||||
| INNODB_SYS_FIELDS |
|
|
||||||
| INNODB_SYS_COLUMNS |
|
|
||||||
| INNODB_SYS_STATS |
|
|
||||||
| INNODB_SYS_FOREIGN |
|
|
||||||
| INNODB_SYS_INDEXES |
|
|
||||||
| XTRADB_ADMIN_COMMAND |
|
| XTRADB_ADMIN_COMMAND |
|
||||||
| INNODB_TABLE_STATS |
|
+---------------------------------------+
|
||||||
|
+---------------------------------------+
|
||||||
+---------------------------------------+
|
+---------------------------------------+
|
||||||
Database: INFORMATION_SCHEMA
|
Database: INFORMATION_SCHEMA
|
||||||
+---------------------------------------+
|
|
||||||
| Tables |
|
| Tables |
|
||||||
+---------------------------------------+
|
|
||||||
| CHARACTER_SETS |
|
| CHARACTER_SETS |
|
||||||
| CLIENT_STATISTICS |
|
| CLIENT_STATISTICS |
|
||||||
| COLLATIONS |
|
| COLLATIONS |
|
||||||
@ -154,10 +155,32 @@ Database: INFORMATION_SCHEMA
|
|||||||
| GLOBAL_STATUS |
|
| GLOBAL_STATUS |
|
||||||
| GLOBAL_VARIABLES |
|
| GLOBAL_VARIABLES |
|
||||||
| INDEX_STATISTICS |
|
| INDEX_STATISTICS |
|
||||||
|
| INNODB_BUFFER_POOL_PAGES |
|
||||||
|
| INNODB_BUFFER_POOL_PAGES_BLOB |
|
||||||
|
| INNODB_BUFFER_POOL_PAGES_INDEX |
|
||||||
|
| INNODB_CMP |
|
||||||
|
| INNODB_CMPMEM |
|
||||||
|
| INNODB_CMPMEM_RESET |
|
||||||
|
| INNODB_CMP_RESET |
|
||||||
|
| INNODB_INDEX_STATS |
|
||||||
|
| INNODB_LOCKS |
|
||||||
|
| INNODB_LOCK_WAITS |
|
||||||
|
| INNODB_RSEG |
|
||||||
|
| INNODB_SYS_COLUMNS |
|
||||||
|
| INNODB_SYS_FIELDS |
|
||||||
|
| INNODB_SYS_FOREIGN |
|
||||||
|
| INNODB_SYS_FOREIGN_COLS |
|
||||||
|
| INNODB_SYS_INDEXES |
|
||||||
|
| INNODB_SYS_STATS |
|
||||||
|
| INNODB_SYS_TABLES |
|
||||||
|
| INNODB_SYS_TABLESTATS |
|
||||||
|
| INNODB_TABLE_STATS |
|
||||||
|
| INNODB_TRX |
|
||||||
| KEY_CACHES |
|
| KEY_CACHES |
|
||||||
| KEY_COLUMN_USAGE |
|
| KEY_COLUMN_USAGE |
|
||||||
| PARAMETERS |
|
| PARAMETERS |
|
||||||
| PARTITIONS |
|
| PARTITIONS |
|
||||||
|
| PBXT_STATISTICS |
|
||||||
| PLUGINS |
|
| PLUGINS |
|
||||||
| PROCESSLIST |
|
| PROCESSLIST |
|
||||||
| PROFILING |
|
| PROFILING |
|
||||||
@ -177,30 +200,7 @@ Database: INFORMATION_SCHEMA
|
|||||||
| USER_PRIVILEGES |
|
| USER_PRIVILEGES |
|
||||||
| USER_STATISTICS |
|
| USER_STATISTICS |
|
||||||
| VIEWS |
|
| VIEWS |
|
||||||
| INNODB_CMPMEM_RESET |
|
|
||||||
| PBXT_STATISTICS |
|
|
||||||
| INNODB_CMPMEM |
|
|
||||||
| INNODB_RSEG |
|
|
||||||
| INNODB_SYS_TABLESTATS |
|
|
||||||
| INNODB_LOCK_WAITS |
|
|
||||||
| INNODB_INDEX_STATS |
|
|
||||||
| INNODB_CMP |
|
|
||||||
| INNODB_SYS_FOREIGN_COLS |
|
|
||||||
| INNODB_CMP_RESET |
|
|
||||||
| INNODB_BUFFER_POOL_PAGES |
|
|
||||||
| INNODB_TRX |
|
|
||||||
| INNODB_BUFFER_POOL_PAGES_INDEX |
|
|
||||||
| INNODB_LOCKS |
|
|
||||||
| INNODB_BUFFER_POOL_PAGES_BLOB |
|
|
||||||
| INNODB_SYS_TABLES |
|
|
||||||
| INNODB_SYS_FIELDS |
|
|
||||||
| INNODB_SYS_COLUMNS |
|
|
||||||
| INNODB_SYS_STATS |
|
|
||||||
| INNODB_SYS_FOREIGN |
|
|
||||||
| INNODB_SYS_INDEXES |
|
|
||||||
| XTRADB_ADMIN_COMMAND |
|
| XTRADB_ADMIN_COMMAND |
|
||||||
| INNODB_TABLE_STATS |
|
|
||||||
+---------------------------------------+
|
|
||||||
Wildcard: inf_rmation_schema
|
Wildcard: inf_rmation_schema
|
||||||
+--------------------+
|
+--------------------+
|
||||||
| Databases |
|
| Databases |
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software Foundation,
|
|
||||||
# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
RESET MASTER;
|
RESET MASTER;
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or
|
|
||||||
# modify it under the terms of the GNU General Public License
|
|
||||||
# as published by the Free Software Foundation; version 2 of
|
|
||||||
# the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--disable_warnings
|
--disable_warnings
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software Foundation,
|
|
||||||
# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
let $MYSQLD_DATADIR= `select @@datadir`;
|
let $MYSQLD_DATADIR= `select @@datadir`;
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
show databases;
|
show databases;
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
# Routine to be called by pfs_upgrade.test
|
# Routine to be called by pfs_upgrade.test
|
||||||
# $out_file and $err_file must be set within pfs_upgrade.test.
|
# $out_file and $err_file must be set within pfs_upgrade.test.
|
||||||
#
|
#
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2009-2010 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
# Verify that statistics aggregated by different criteria are consistent.
|
# Verify that statistics aggregated by different criteria are consistent.
|
||||||
|
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software Foundation,
|
|
||||||
# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
# Check error handling for invalid server start options
|
# Check error handling for invalid server start options
|
||||||
|
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software Foundation,
|
|
||||||
# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
# Check error handling for ambiguous server start options
|
# Check error handling for ambiguous server start options
|
||||||
|
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software Foundation,
|
|
||||||
# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
# Check error handling for invalid server start options
|
# Check error handling for invalid server start options
|
||||||
|
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software Foundation,
|
|
||||||
# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
# Check error handling for invalid server start options
|
# Check error handling for invalid server start options
|
||||||
|
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software Foundation,
|
|
||||||
# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
# Check error handling for invalid server start options
|
# Check error handling for invalid server start options
|
||||||
|
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software Foundation,
|
|
||||||
# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/have_log_bin.inc
|
--source include/have_log_bin.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software Foundation,
|
|
||||||
# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/have_log_bin.inc
|
--source include/have_log_bin.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software Foundation,
|
|
||||||
# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/have_log_bin.inc
|
--source include/have_log_bin.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software Foundation,
|
|
||||||
# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (c) 2009, 2010 Sun Microsystems, Inc.
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
# Check server start options, read from a .cnf file
|
# Check server start options, read from a .cnf file
|
||||||
|
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
# Check server start options, read from a .cnf file
|
# Check server start options, read from a .cnf file
|
||||||
|
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
# Test how columns privileges can be used on performance schema tables,
|
# Test how columns privileges can be used on performance schema tables,
|
||||||
# for very fine control.
|
# for very fine control.
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (c) 2009, 2010 Sun Microsystems, Inc.
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
##############################################################################
|
##############################################################################
|
||||||
#
|
#
|
||||||
# List the test cases that are to be disabled temporarily.
|
# List the test cases that are to be disabled temporarily.
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -1,18 +1,3 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; version 2 of the License.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user