merge from mysql-trunk-bugfixing
This commit is contained in:
commit
a5d72c498c
@ -122,13 +122,13 @@ fi
|
||||
# Override -DFORCE_INIT_OF_VARS from debug_cflags. It enables the macro
|
||||
# LINT_INIT(), which is only useful for silencing spurious warnings
|
||||
# of static analysis tools. We want LINT_INIT() to be a no-op in Valgrind.
|
||||
valgrind_flags="-USAFEMALLOC -UFORCE_INIT_OF_VARS -DHAVE_purify "
|
||||
valgrind_flags="-UFORCE_INIT_OF_VARS -DHAVE_purify "
|
||||
valgrind_flags="$valgrind_flags -DMYSQL_SERVER_SUFFIX=-valgrind-max"
|
||||
valgrind_configs="--with-valgrind"
|
||||
#
|
||||
# Used in -debug builds
|
||||
debug_cflags="-DUNIV_MUST_NOT_INLINE -DEXTRA_DEBUG -DFORCE_INIT_OF_VARS "
|
||||
debug_cflags="$debug_cflags -DSAFEMALLOC -DPEDANTIC_SAFEMALLOC -DSAFE_MUTEX"
|
||||
debug_cflags="$debug_cflags -DSAFE_MUTEX"
|
||||
error_inject="--with-error-inject "
|
||||
#
|
||||
# Base C++ flags for all builds
|
||||
|
@ -1010,7 +1010,7 @@ set_ccache_usage()
|
||||
set_valgrind_flags()
|
||||
{
|
||||
if test "x$valgrind_flag" = "xyes" ; then
|
||||
loc_valgrind_flags="-USAFEMALLOC -UFORCE_INIT_OF_VARS -DHAVE_purify "
|
||||
loc_valgrind_flags="-UFORCE_INIT_OF_VARS -DHAVE_purify "
|
||||
loc_valgrind_flags="$loc_valgrind_flags -DMYSQL_SERVER_SUFFIX=-valgrind-max"
|
||||
compiler_flags="$compiler_flags $loc_valgrind_flags"
|
||||
with_flags="$with_flags --with-valgrind"
|
||||
@ -1066,7 +1066,7 @@ set_with_debug_flags()
|
||||
if test "x$with_debug_flag" = "xyes" ; then
|
||||
if test "x$developer_flag" = "xyes" ; then
|
||||
loc_debug_flags="-DUNIV_MUST_NOT_INLINE -DEXTRA_DEBUG -DFORCE_INIT_OF_VARS "
|
||||
loc_debug_flags="$loc_debug_flags -DSAFEMALLOC -DPEDANTIC_SAFEMALLOC"
|
||||
loc_debug_flags="$loc_debug_flags"
|
||||
compiler_flags="$compiler_flags $loc_debug_flags"
|
||||
fi
|
||||
fi
|
||||
|
@ -4,5 +4,5 @@ gmake -k maintainer-clean || true
|
||||
path=`dirname $0`
|
||||
. "$path/autorun.sh"
|
||||
|
||||
CC=ecc CFLAGS="-w1 -DEXTRA_DEBUG -DSAFEMALLOC -DSAFE_MUTEX -O2" CXX=ecc CXXFLAGS="-w1 -DEXTRA_DEBUG -DSAFEMALLOC -DSAFE_MUTEX -O2" ./configure --prefix=/usr/local/mysql --with-extra-charsets=complex --enable-thread-safe-client --with-mysqld-ldflags=-all-static --with-client-ldflags=-all-static --with-debug --with-innodb --with-embedded-server --with-archive-storage-engine
|
||||
CC=ecc CFLAGS="-w1 -DEXTRA_DEBUG -DSAFE_MUTEX -O2" CXX=ecc CXXFLAGS="-w1 -DEXTRA_DEBUG -DSAFE_MUTEX -O2" ./configure --prefix=/usr/local/mysql --with-extra-charsets=complex --enable-thread-safe-client --with-mysqld-ldflags=-all-static --with-client-ldflags=-all-static --with-debug --with-innodb --with-embedded-server --with-archive-storage-engine
|
||||
gmake
|
||||
|
@ -34,7 +34,7 @@ ENDIF()
|
||||
SET(CUSTOM_C_FLAGS $ENV{CFLAGS})
|
||||
|
||||
OPTION(WITH_DEBUG "Use dbug/safemutex" OFF)
|
||||
OPTION(WITH_DEBUG_FULL "Use dbug and safemalloc/safemutex. Slow" OFF)
|
||||
OPTION(WITH_DEBUG_FULL "Use dbug and safemutex. Slow." OFF)
|
||||
|
||||
# Distinguish between community and non-community builds, with the
|
||||
# default being a community build. This does not impact the feature
|
||||
@ -175,14 +175,13 @@ IF(NOT CMAKE_BUILD_TYPE
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
# Add safemalloc and safemutex for debug condifurations, except on Windows
|
||||
# (C runtime library provides safemalloc functionality and safemutex has never
|
||||
# worked there)
|
||||
# Add safemutex for debug configurations, except on Windows
|
||||
# (safemutex has never worked on Windows)
|
||||
IF(WITH_DEBUG OR WITH_DEBUG_FULL AND NOT WIN32)
|
||||
FOREACH(LANG C CXX)
|
||||
IF(WITH_DEBUG_FULL)
|
||||
SET(CMAKE_${LANG}_FLAGS_DEBUG
|
||||
"${CMAKE_${LANG}_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
|
||||
"${CMAKE_${LANG}_FLAGS_DEBUG} -DSAFE_MUTEX")
|
||||
ELSE()
|
||||
SET(CMAKE_${LANG}_FLAGS_DEBUG
|
||||
"${CMAKE_${LANG}_FLAGS_DEBUG} -DSAFE_MUTEX")
|
||||
|
@ -22,7 +22,6 @@
|
||||
|
||||
#include <my_global.h>
|
||||
#include <m_string.h>
|
||||
#undef SAFEMALLOC // Speed things up
|
||||
#include <my_sys.h>
|
||||
#include "completion_hash.h"
|
||||
|
||||
@ -213,7 +212,7 @@ void completion_hash_clean(HashTable *ht)
|
||||
void completion_hash_free(HashTable *ht)
|
||||
{
|
||||
completion_hash_clean(ht);
|
||||
my_free(ht->arBuckets, MYF(0));
|
||||
my_free(ht->arBuckets);
|
||||
}
|
||||
|
||||
|
||||
|
@ -1205,7 +1205,7 @@ int main(int argc,char *argv[])
|
||||
strncmp(link_name, "/dev/null", 10) == 0)
|
||||
{
|
||||
/* The .mysql_history file is a symlink to /dev/null, don't use it */
|
||||
my_free(histfile, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(histfile);
|
||||
histfile= 0;
|
||||
}
|
||||
}
|
||||
@ -1266,23 +1266,23 @@ sig_handler mysql_end(int sig)
|
||||
glob_buffer.free();
|
||||
old_buffer.free();
|
||||
processed_prompt.free();
|
||||
my_free(server_version,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(opt_password,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(opt_mysql_unix_port,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(histfile,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(histfile_tmp,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(current_db,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(current_host,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(current_user,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(full_username,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(part_username,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(default_prompt,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(server_version);
|
||||
my_free(opt_password);
|
||||
my_free(opt_mysql_unix_port);
|
||||
my_free(histfile);
|
||||
my_free(histfile_tmp);
|
||||
my_free(current_db);
|
||||
my_free(current_host);
|
||||
my_free(current_user);
|
||||
my_free(full_username);
|
||||
my_free(part_username);
|
||||
my_free(default_prompt);
|
||||
#ifdef HAVE_SMEM
|
||||
my_free(shared_memory_base_name,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(shared_memory_base_name);
|
||||
#endif
|
||||
my_free(current_prompt,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(current_prompt);
|
||||
while (embedded_server_arg_count > 1)
|
||||
my_free(embedded_server_args[--embedded_server_arg_count],MYF(0));
|
||||
my_free(embedded_server_args[--embedded_server_arg_count]);
|
||||
mysql_server_end();
|
||||
free_defaults(defaults_argv);
|
||||
my_end(my_end_arg);
|
||||
@ -1736,7 +1736,7 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
|
||||
if (argument)
|
||||
{
|
||||
char *start= argument;
|
||||
my_free(opt_password, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(opt_password);
|
||||
opt_password= my_strdup(argument, MYF(MY_FAE));
|
||||
while (*argument) *argument++= 'x'; // Destroy argument
|
||||
if (*start)
|
||||
@ -1833,7 +1833,7 @@ static int get_options(int argc, char **argv)
|
||||
if (argc == 1)
|
||||
{
|
||||
skip_updates= 0;
|
||||
my_free(current_db, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(current_db);
|
||||
current_db= my_strdup(*argv, MYF(MY_WME));
|
||||
}
|
||||
if (tty_password)
|
||||
@ -2731,7 +2731,7 @@ static void get_current_db()
|
||||
{
|
||||
MYSQL_RES *res;
|
||||
|
||||
my_free(current_db, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(current_db);
|
||||
current_db= NULL;
|
||||
/* In case of error below current_db will be NULL */
|
||||
if (!mysql_query(&mysql, "SELECT DATABASE()") &&
|
||||
@ -4023,12 +4023,12 @@ com_connect(String *buffer, char *line)
|
||||
tmp= get_arg(buff, 0);
|
||||
if (tmp && *tmp)
|
||||
{
|
||||
my_free(current_db, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(current_db);
|
||||
current_db= my_strdup(tmp, MYF(MY_WME));
|
||||
tmp= get_arg(buff, 1);
|
||||
if (tmp)
|
||||
{
|
||||
my_free(current_host,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(current_host);
|
||||
current_host=my_strdup(tmp,MYF(MY_WME));
|
||||
}
|
||||
}
|
||||
@ -4200,7 +4200,7 @@ com_use(String *buffer __attribute__((unused)), char *line)
|
||||
if (mysql_select_db(&mysql,tmp))
|
||||
return put_error(&mysql);
|
||||
}
|
||||
my_free(current_db,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(current_db);
|
||||
current_db=my_strdup(tmp,MYF(MY_WME));
|
||||
#ifdef HAVE_READLINE
|
||||
if (select_db > 1)
|
||||
@ -4952,8 +4952,8 @@ static void add_int_to_prompt(int toadd)
|
||||
|
||||
static void init_username()
|
||||
{
|
||||
my_free(full_username,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(part_username,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(full_username);
|
||||
my_free(part_username);
|
||||
|
||||
MYSQL_RES *result;
|
||||
LINT_INIT(result);
|
||||
@ -4971,7 +4971,7 @@ static int com_prompt(String *buffer, char *line)
|
||||
{
|
||||
char *ptr=strchr(line, ' ');
|
||||
prompt_counter = 0;
|
||||
my_free(current_prompt,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(current_prompt);
|
||||
current_prompt=my_strdup(ptr ? ptr+1 : default_prompt,MYF(MY_WME));
|
||||
if (!ptr)
|
||||
tee_fprintf(stdout, "Returning to default PROMPT of %s\n", default_prompt);
|
||||
|
@ -236,7 +236,7 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
|
||||
if (argument)
|
||||
{
|
||||
char *start=argument;
|
||||
my_free(opt_password,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(opt_password);
|
||||
opt_password=my_strdup(argument,MYF(MY_FAE));
|
||||
while (*argument) *argument++= 'x'; /* Destroy argument */
|
||||
if (*start)
|
||||
@ -448,10 +448,10 @@ int main(int argc,char *argv[])
|
||||
} /* got connection */
|
||||
|
||||
mysql_close(&mysql);
|
||||
my_free(opt_password,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(user,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(opt_password);
|
||||
my_free(user);
|
||||
#ifdef HAVE_SMEM
|
||||
my_free(shared_memory_base_name,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(shared_memory_base_name);
|
||||
#endif
|
||||
free_defaults(save_argv);
|
||||
my_end(my_end_arg);
|
||||
@ -1008,8 +1008,8 @@ static int execute_commands(MYSQL *mysql,int argc, char **argv)
|
||||
/* free up memory from prompted password */
|
||||
if (typed_password != argv[1])
|
||||
{
|
||||
my_free(typed_password,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(verified,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(typed_password);
|
||||
my_free(verified);
|
||||
}
|
||||
argc--; argv++;
|
||||
break;
|
||||
|
@ -68,20 +68,20 @@ TYPELIB base64_output_mode_typelib=
|
||||
{ array_elements(base64_output_mode_names) - 1, "",
|
||||
base64_output_mode_names, NULL };
|
||||
static enum_base64_output_mode opt_base64_output_mode= BASE64_OUTPUT_UNSPEC;
|
||||
static const char *opt_base64_output_mode_str= NullS;
|
||||
static const char* database= 0;
|
||||
static char *opt_base64_output_mode_str= NullS;
|
||||
static char* database= 0;
|
||||
static my_bool force_opt= 0, short_form= 0, remote_opt= 0;
|
||||
static my_bool debug_info_flag, debug_check_flag;
|
||||
static my_bool force_if_open_opt= 1;
|
||||
static ulonglong offset = 0;
|
||||
static const char* host = 0;
|
||||
static char* host = 0;
|
||||
static int port= 0;
|
||||
static uint my_end_arg;
|
||||
static const char* sock= 0;
|
||||
#ifdef HAVE_SMEM
|
||||
static char *shared_memory_base_name= 0;
|
||||
#endif
|
||||
static const char* user = 0;
|
||||
static char* user = 0;
|
||||
static char* pass = 0;
|
||||
static char *charset= 0;
|
||||
|
||||
@ -96,7 +96,7 @@ static my_time_t start_datetime= 0, stop_datetime= MY_TIME_T_MAX;
|
||||
static ulonglong rec_count= 0;
|
||||
static short binlog_flags = 0;
|
||||
static MYSQL* mysql = NULL;
|
||||
static const char* dirname_for_local_load= 0;
|
||||
static char* dirname_for_local_load= 0;
|
||||
|
||||
/**
|
||||
Pointer to the Format_description_log_event of the currently active binlog.
|
||||
@ -191,7 +191,7 @@ public:
|
||||
int init()
|
||||
{
|
||||
return init_dynamic_array(&file_names, sizeof(File_name_record),
|
||||
100,100 CALLER_INFO);
|
||||
100, 100);
|
||||
}
|
||||
|
||||
void init_by_dir_name(const char *dir)
|
||||
@ -213,7 +213,7 @@ public:
|
||||
{
|
||||
if (ptr->fname)
|
||||
{
|
||||
my_free(ptr->fname, MYF(MY_WME));
|
||||
my_free(ptr->fname);
|
||||
delete ptr->event;
|
||||
bzero((char *)ptr, sizeof(File_name_record));
|
||||
}
|
||||
@ -442,7 +442,7 @@ Exit_status Load_log_processor::process_first_event(const char *bname,
|
||||
{
|
||||
error("Could not construct local filename %s%s.",
|
||||
target_dir_name,bname);
|
||||
my_free(fname, MYF(0));
|
||||
my_free(fname);
|
||||
delete ce;
|
||||
DBUG_RETURN(ERROR_STOP);
|
||||
}
|
||||
@ -458,7 +458,7 @@ Exit_status Load_log_processor::process_first_event(const char *bname,
|
||||
if (set_dynamic(&file_names, (uchar*)&rec, file_id))
|
||||
{
|
||||
error("Out of memory.");
|
||||
my_free(fname, MYF(0));
|
||||
my_free(fname);
|
||||
delete ce;
|
||||
DBUG_RETURN(ERROR_STOP);
|
||||
}
|
||||
@ -822,7 +822,7 @@ Exit_status process_event(PRINT_EVENT_INFO *print_event_info, Log_event *ev,
|
||||
*/
|
||||
convert_path_to_forward_slashes((char*) ce->fname);
|
||||
ce->print(result_file, print_event_info, TRUE);
|
||||
my_free((char*)ce->fname,MYF(MY_WME));
|
||||
my_free((void*)ce->fname);
|
||||
delete ce;
|
||||
}
|
||||
else
|
||||
@ -887,7 +887,7 @@ Exit_status process_event(PRINT_EVENT_INFO *print_event_info, Log_event *ev,
|
||||
}
|
||||
|
||||
if (fname)
|
||||
my_free(fname, MYF(MY_WME));
|
||||
my_free(fname);
|
||||
break;
|
||||
}
|
||||
case TABLE_MAP_EVENT:
|
||||
@ -1222,11 +1222,11 @@ static void warning(const char *format,...)
|
||||
*/
|
||||
static void cleanup()
|
||||
{
|
||||
my_free(pass,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free((char*) database, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free((char*) host, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free((char*) user, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free((char*) dirname_for_local_load, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(pass);
|
||||
my_free(database);
|
||||
my_free(host);
|
||||
my_free(user);
|
||||
my_free(dirname_for_local_load);
|
||||
|
||||
delete glob_description_event;
|
||||
if (mysql)
|
||||
@ -1306,7 +1306,7 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
|
||||
argument= (char*) ""; // Don't require password
|
||||
if (argument)
|
||||
{
|
||||
my_free(pass,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(pass);
|
||||
char *start=argument;
|
||||
pass= my_strdup(argument,MYF(MY_FAE));
|
||||
while (*argument) *argument++= 'x'; /* Destroy argument */
|
||||
@ -2032,6 +2032,7 @@ int main(int argc, char** argv)
|
||||
{
|
||||
usage();
|
||||
free_defaults(defaults_argv);
|
||||
my_end(my_end_arg);
|
||||
exit(1);
|
||||
}
|
||||
|
||||
|
@ -291,7 +291,7 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
|
||||
if (argument)
|
||||
{
|
||||
char *start = argument;
|
||||
my_free(opt_password, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(opt_password);
|
||||
opt_password = my_strdup(argument, MYF(MY_FAE));
|
||||
while (*argument) *argument++= 'x'; /* Destroy argument */
|
||||
if (*start)
|
||||
@ -470,7 +470,7 @@ static int process_selected_tables(char *db, char **table_names, int tables)
|
||||
}
|
||||
*--end = 0;
|
||||
handle_request_for_tables(table_names_comma_sep + 1, (uint) (tot_length - 1));
|
||||
my_free(table_names_comma_sep, MYF(0));
|
||||
my_free(table_names_comma_sep);
|
||||
}
|
||||
else
|
||||
for (; tables > 0; tables--, table_names++)
|
||||
@ -569,7 +569,7 @@ static int process_all_tables_in_db(char *database)
|
||||
*--end = 0;
|
||||
if (tot_length)
|
||||
handle_request_for_tables(tables + 1, tot_length - 1);
|
||||
my_free(tables, MYF(0));
|
||||
my_free(tables);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -727,7 +727,7 @@ static int handle_request_for_tables(char *tables, uint length)
|
||||
return 1;
|
||||
}
|
||||
print_result();
|
||||
my_free(query, MYF(0));
|
||||
my_free(query);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -899,9 +899,9 @@ int main(int argc, char **argv)
|
||||
dbDisconnect(current_host);
|
||||
if (opt_auto_repair)
|
||||
delete_dynamic(&tables4repair);
|
||||
my_free(opt_password, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(opt_password);
|
||||
#ifdef HAVE_SMEM
|
||||
my_free(shared_memory_base_name,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(shared_memory_base_name);
|
||||
#endif
|
||||
my_end(my_end_arg);
|
||||
return(first_error!=0);
|
||||
|
@ -715,12 +715,6 @@ static void write_footer(FILE *sql_file)
|
||||
} /* write_footer */
|
||||
|
||||
|
||||
static void free_table_ent(char *key)
|
||||
{
|
||||
my_free(key, MYF(0));
|
||||
}
|
||||
|
||||
|
||||
uchar* get_table_key(const char *entry, size_t *length,
|
||||
my_bool not_used __attribute__((unused)))
|
||||
{
|
||||
@ -745,7 +739,7 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
|
||||
if (argument)
|
||||
{
|
||||
char *start=argument;
|
||||
my_free(opt_password,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(opt_password);
|
||||
opt_password=my_strdup(argument,MYF(MY_FAE));
|
||||
while (*argument) *argument++= 'x'; /* Destroy argument */
|
||||
if (*start)
|
||||
@ -905,8 +899,7 @@ static int get_options(int *argc, char ***argv)
|
||||
defaults_argv= *argv;
|
||||
|
||||
if (my_hash_init(&ignore_table, charset_info, 16, 0, 0,
|
||||
(my_hash_get_key) get_table_key,
|
||||
(my_hash_free_key) free_table_ent, 0))
|
||||
(my_hash_get_key) get_table_key, my_free, 0))
|
||||
return(EX_EOM);
|
||||
/* Don't copy internal log tables */
|
||||
if (my_hash_insert(&ignore_table,
|
||||
@ -1420,7 +1413,7 @@ static void free_resources()
|
||||
{
|
||||
if (md_result_file && md_result_file != stdout)
|
||||
my_fclose(md_result_file, MYF(0));
|
||||
my_free(opt_password, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(opt_password);
|
||||
if (my_hash_inited(&ignore_table))
|
||||
my_hash_free(&ignore_table);
|
||||
if (extended_insert)
|
||||
@ -1534,7 +1527,7 @@ static void unescape(FILE *file,char *pos,uint length)
|
||||
fputs(tmp, file);
|
||||
fputc('\'', file);
|
||||
check_io(file);
|
||||
my_free(tmp, MYF(MY_WME));
|
||||
my_free(tmp);
|
||||
DBUG_VOID_RETURN;
|
||||
} /* unescape */
|
||||
|
||||
@ -2201,7 +2194,7 @@ static uint dump_routines_for_db(char *db)
|
||||
}
|
||||
}
|
||||
|
||||
my_free(query_str, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(query_str);
|
||||
}
|
||||
} /* end of routine printing */
|
||||
mysql_free_result(routine_res);
|
||||
@ -2374,12 +2367,12 @@ static uint get_table_structure(char *table, char *db, char *table_type,
|
||||
if (mysql_errno(mysql) == ER_VIEW_INVALID)
|
||||
fprintf(sql_file, "\n-- failed on view %s: %s\n\n", result_table, scv_buff ? scv_buff : "");
|
||||
|
||||
my_free(scv_buff, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(scv_buff);
|
||||
|
||||
DBUG_RETURN(0);
|
||||
}
|
||||
else
|
||||
my_free(scv_buff, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(scv_buff);
|
||||
|
||||
if (mysql_num_rows(result))
|
||||
{
|
||||
@ -2855,7 +2848,7 @@ static int dump_trigger(FILE *sql_file, MYSQL_RES *show_create_trigger_rs,
|
||||
DBUG_RETURN(TRUE);
|
||||
}
|
||||
|
||||
my_free(query_str, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(query_str);
|
||||
}
|
||||
|
||||
DBUG_RETURN(FALSE);
|
||||
@ -4073,7 +4066,7 @@ static int dump_all_tables_in_db(char *database)
|
||||
if (include_table((uchar*) hash_key, end - hash_key))
|
||||
{
|
||||
dump_table(table,database);
|
||||
my_free(order_by, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(order_by);
|
||||
order_by= 0;
|
||||
if (opt_dump_triggers && ! opt_xml &&
|
||||
mysql_get_server_version(mysql) >= 50009)
|
||||
@ -4345,7 +4338,7 @@ static int dump_selected_tables(char *db, char **table_names, int tables)
|
||||
dump_routines_for_db(db);
|
||||
}
|
||||
free_root(&root, MYF(0));
|
||||
my_free(order_by, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(order_by);
|
||||
order_by= 0;
|
||||
if (opt_xml)
|
||||
{
|
||||
@ -5258,7 +5251,7 @@ int main(int argc, char **argv)
|
||||
goto err;
|
||||
|
||||
#ifdef HAVE_SMEM
|
||||
my_free(shared_memory_base_name,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(shared_memory_base_name);
|
||||
#endif
|
||||
/*
|
||||
No reason to explicitely COMMIT the transaction, neither to explicitely
|
||||
|
@ -230,7 +230,7 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
|
||||
if (argument)
|
||||
{
|
||||
char *start=argument;
|
||||
my_free(opt_password,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(opt_password);
|
||||
opt_password=my_strdup(argument,MYF(MY_FAE));
|
||||
while (*argument) *argument++= 'x'; /* Destroy argument */
|
||||
if (*start)
|
||||
@ -684,9 +684,9 @@ int main(int argc, char **argv)
|
||||
exitcode= error;
|
||||
db_disconnect(current_host, mysql);
|
||||
}
|
||||
my_free(opt_password,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(opt_password);
|
||||
#ifdef HAVE_SMEM
|
||||
my_free(shared_memory_base_name,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(shared_memory_base_name);
|
||||
#endif
|
||||
free_defaults(argv_to_free);
|
||||
my_end(my_end_arg);
|
||||
|
@ -149,10 +149,9 @@ int main(int argc, char **argv)
|
||||
break;
|
||||
}
|
||||
mysql_close(&mysql); /* Close & free connection */
|
||||
if (opt_password)
|
||||
my_free(opt_password,MYF(0));
|
||||
my_free(opt_password);
|
||||
#ifdef HAVE_SMEM
|
||||
my_free(shared_memory_base_name,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(shared_memory_base_name);
|
||||
#endif
|
||||
my_end(my_end_arg);
|
||||
exit(error ? 1 : 0);
|
||||
@ -292,7 +291,7 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
|
||||
if (argument)
|
||||
{
|
||||
char *start=argument;
|
||||
my_free(opt_password,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(opt_password);
|
||||
opt_password=my_strdup(argument,MYF(MY_FAE));
|
||||
while (*argument) *argument++= 'x'; /* Destroy argument */
|
||||
if (*start)
|
||||
|
@ -399,10 +399,8 @@ int main(int argc, char **argv)
|
||||
mysql_close(&mysql); /* Close & free connection */
|
||||
|
||||
/* now free all the strings we created */
|
||||
if (opt_password)
|
||||
my_free(opt_password, MYF(0));
|
||||
|
||||
my_free(concurrency, MYF(0));
|
||||
my_free(opt_password);
|
||||
my_free(concurrency);
|
||||
|
||||
statement_cleanup(create_statements);
|
||||
statement_cleanup(query_statements);
|
||||
@ -411,8 +409,7 @@ int main(int argc, char **argv)
|
||||
option_cleanup(engine_options);
|
||||
|
||||
#ifdef HAVE_SMEM
|
||||
if (shared_memory_base_name)
|
||||
my_free(shared_memory_base_name, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(shared_memory_base_name);
|
||||
#endif
|
||||
free_defaults(defaults_argv);
|
||||
my_end(my_end_arg);
|
||||
@ -504,7 +501,7 @@ void concurrency_loop(MYSQL *mysql, uint current, option_string *eptr)
|
||||
if (opt_csv_str)
|
||||
print_conclusions_csv(&conclusion);
|
||||
|
||||
my_free(head_sptr, MYF(0));
|
||||
my_free(head_sptr);
|
||||
|
||||
}
|
||||
|
||||
@ -721,7 +718,7 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
|
||||
if (argument)
|
||||
{
|
||||
char *start= argument;
|
||||
my_free(opt_password, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(opt_password);
|
||||
opt_password= my_strdup(argument,MYF(MY_FAE));
|
||||
while (*argument) *argument++= 'x'; /* Destroy argument */
|
||||
if (*start)
|
||||
@ -1367,7 +1364,7 @@ get_options(int *argc,char ***argv)
|
||||
tmp_string[sbuf.st_size]= '\0';
|
||||
my_close(data_file,MYF(0));
|
||||
parse_delimiter(tmp_string, &create_statements, delimiter[0]);
|
||||
my_free(tmp_string, MYF(0));
|
||||
my_free(tmp_string);
|
||||
}
|
||||
else if (create_string)
|
||||
{
|
||||
@ -1396,7 +1393,7 @@ get_options(int *argc,char ***argv)
|
||||
if (user_supplied_query)
|
||||
actual_queries= parse_delimiter(tmp_string, &query_statements,
|
||||
delimiter[0]);
|
||||
my_free(tmp_string, MYF(0));
|
||||
my_free(tmp_string);
|
||||
}
|
||||
else if (user_supplied_query)
|
||||
{
|
||||
@ -1427,7 +1424,7 @@ get_options(int *argc,char ***argv)
|
||||
if (user_supplied_pre_statements)
|
||||
(void)parse_delimiter(tmp_string, &pre_statements,
|
||||
delimiter[0]);
|
||||
my_free(tmp_string, MYF(0));
|
||||
my_free(tmp_string);
|
||||
}
|
||||
else if (user_supplied_pre_statements)
|
||||
{
|
||||
@ -1458,7 +1455,7 @@ get_options(int *argc,char ***argv)
|
||||
if (user_supplied_post_statements)
|
||||
(void)parse_delimiter(tmp_string, &post_statements,
|
||||
delimiter[0]);
|
||||
my_free(tmp_string, MYF(0));
|
||||
my_free(tmp_string);
|
||||
}
|
||||
else if (user_supplied_post_statements)
|
||||
{
|
||||
@ -1555,9 +1552,9 @@ drop_primary_key_list(void)
|
||||
if (primary_keys_number_of)
|
||||
{
|
||||
for (counter= 0; counter < primary_keys_number_of; counter++)
|
||||
my_free(primary_keys[counter], MYF(0));
|
||||
my_free(primary_keys[counter]);
|
||||
|
||||
my_free(primary_keys, MYF(0));
|
||||
my_free(primary_keys);
|
||||
}
|
||||
|
||||
return 0;
|
||||
@ -2154,11 +2151,9 @@ option_cleanup(option_string *stmt)
|
||||
for (ptr= stmt; ptr; ptr= nptr)
|
||||
{
|
||||
nptr= ptr->next;
|
||||
if (ptr->string)
|
||||
my_free(ptr->string, MYF(0));
|
||||
if (ptr->option)
|
||||
my_free(ptr->option, MYF(0));
|
||||
my_free(ptr, MYF(0));
|
||||
my_free(ptr->string);
|
||||
my_free(ptr->option);
|
||||
my_free(ptr);
|
||||
}
|
||||
}
|
||||
|
||||
@ -2172,9 +2167,8 @@ statement_cleanup(statement *stmt)
|
||||
for (ptr= stmt; ptr; ptr= nptr)
|
||||
{
|
||||
nptr= ptr->next;
|
||||
if (ptr->string)
|
||||
my_free(ptr->string, MYF(0));
|
||||
my_free(ptr, MYF(0));
|
||||
my_free(ptr->string);
|
||||
my_free(ptr);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -84,10 +84,10 @@ static my_bool get_one_option(int optid, const struct my_option *,
|
||||
C_MODE_END
|
||||
|
||||
enum {
|
||||
OPT_SKIP_SAFEMALLOC=OPT_MAX_CLIENT_OPTION,
|
||||
OPT_PS_PROTOCOL, OPT_SP_PROTOCOL, OPT_CURSOR_PROTOCOL, OPT_VIEW_PROTOCOL,
|
||||
OPT_MAX_CONNECT_RETRIES, OPT_MAX_CONNECTIONS, OPT_MARK_PROGRESS,
|
||||
OPT_LOG_DIR, OPT_TAIL_LINES, OPT_RESULT_FORMAT_VERSION
|
||||
OPT_PS_PROTOCOL=OPT_MAX_CLIENT_OPTION, OPT_SP_PROTOCOL,
|
||||
OPT_CURSOR_PROTOCOL, OPT_VIEW_PROTOCOL, OPT_MAX_CONNECT_RETRIES,
|
||||
OPT_MAX_CONNECTIONS, OPT_MARK_PROGRESS, OPT_LOG_DIR,
|
||||
OPT_TAIL_LINES, OPT_RESULT_FORMAT_VERSION
|
||||
};
|
||||
|
||||
static int record= 0, opt_sleep= -1;
|
||||
@ -156,7 +156,7 @@ static struct st_block *cur_block, *block_stack_end;
|
||||
struct st_test_file
|
||||
{
|
||||
FILE* file;
|
||||
const char *file_name;
|
||||
char *file_name;
|
||||
uint lineno; /* Current line in file */
|
||||
};
|
||||
|
||||
@ -1106,9 +1106,9 @@ void close_connections()
|
||||
mysql_close(&next_con->mysql);
|
||||
if (next_con->util_mysql)
|
||||
mysql_close(next_con->util_mysql);
|
||||
my_free(next_con->name, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(next_con->name);
|
||||
}
|
||||
my_free(connections, MYF(MY_WME));
|
||||
my_free(connections);
|
||||
DBUG_VOID_RETURN;
|
||||
}
|
||||
|
||||
@ -1137,7 +1137,7 @@ void close_files()
|
||||
DBUG_PRINT("info", ("closing file: %s", cur_file->file_name));
|
||||
fclose(cur_file->file);
|
||||
}
|
||||
my_free((uchar*) cur_file->file_name, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(cur_file->file_name);
|
||||
cur_file->file_name= 0;
|
||||
}
|
||||
DBUG_VOID_RETURN;
|
||||
@ -1157,22 +1157,22 @@ void free_used_memory()
|
||||
for (i= 0 ; i < q_lines.elements ; i++)
|
||||
{
|
||||
struct st_command **q= dynamic_element(&q_lines, i, struct st_command**);
|
||||
my_free((*q)->query_buf,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free((*q)->query_buf);
|
||||
if ((*q)->content.str)
|
||||
dynstr_free(&(*q)->content);
|
||||
my_free((*q),MYF(0));
|
||||
my_free((*q));
|
||||
}
|
||||
for (i= 0; i < 10; i++)
|
||||
{
|
||||
if (var_reg[i].alloced_len)
|
||||
my_free(var_reg[i].str_val, MYF(MY_WME));
|
||||
my_free(var_reg[i].str_val);
|
||||
}
|
||||
while (embedded_server_arg_count > 1)
|
||||
my_free(embedded_server_args[--embedded_server_arg_count],MYF(0));
|
||||
my_free(embedded_server_args[--embedded_server_arg_count]);
|
||||
delete_dynamic(&q_lines);
|
||||
dynstr_free(&ds_res);
|
||||
free_all_replace();
|
||||
my_free(opt_pass,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(opt_pass);
|
||||
free_defaults(default_argv);
|
||||
free_re();
|
||||
#ifdef __WIN__
|
||||
@ -1933,9 +1933,10 @@ static uchar *get_var_key(const uchar* var, size_t *len,
|
||||
|
||||
static void var_free(void *v)
|
||||
{
|
||||
my_free(((VAR*) v)->str_val, MYF(MY_WME));
|
||||
if (((VAR*)v)->alloced)
|
||||
my_free(v, MYF(MY_WME));
|
||||
VAR *var= (VAR*) v;
|
||||
my_free(var->str_val);
|
||||
if (var->alloced)
|
||||
my_free(var);
|
||||
}
|
||||
|
||||
C_MODE_END
|
||||
@ -4824,7 +4825,7 @@ void do_close_connection(struct st_command *command)
|
||||
con->util_mysql= 0;
|
||||
con->pending= FALSE;
|
||||
|
||||
my_free(con->name, MYF(0));
|
||||
my_free(con->name);
|
||||
|
||||
/*
|
||||
When the connection is closed set name to "-closed_connection-"
|
||||
@ -5491,7 +5492,7 @@ int read_line(char *buf, int size)
|
||||
fclose(cur_file->file);
|
||||
cur_file->file= 0;
|
||||
}
|
||||
my_free((uchar*) cur_file->file_name, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(cur_file->file_name);
|
||||
cur_file->file_name= 0;
|
||||
if (cur_file == file_stack)
|
||||
{
|
||||
@ -5967,9 +5968,6 @@ static struct my_option my_long_options[] =
|
||||
0, 0, 0},
|
||||
{"silent", 's', "Suppress all normal output. Synonym for --quiet.",
|
||||
&silent, &silent, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
|
||||
{"skip-safemalloc", OPT_SKIP_SAFEMALLOC,
|
||||
"Don't use the memory allocation checking.", 0, 0, 0, GET_NO_ARG, NO_ARG,
|
||||
0, 0, 0, 0, 0, 0},
|
||||
{"sleep", 'T', "Always sleep this many seconds on sleep commands.",
|
||||
&opt_sleep, &opt_sleep, 0, GET_INT, REQUIRED_ARG, -1, -1, 0,
|
||||
0, 0, 0},
|
||||
@ -6125,7 +6123,7 @@ get_one_option(int optid, const struct my_option *, char *argument)
|
||||
argument= (char*) ""; // Don't require password
|
||||
if (argument)
|
||||
{
|
||||
my_free(opt_pass, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(opt_pass);
|
||||
opt_pass= my_strdup(argument, MYF(MY_FAE));
|
||||
while (*argument) *argument++= 'x'; /* Destroy argument */
|
||||
tty_password= 0;
|
||||
@ -6158,11 +6156,6 @@ get_one_option(int optid, const struct my_option *, char *argument)
|
||||
case 'F':
|
||||
read_embedded_server_arguments(argument);
|
||||
break;
|
||||
case OPT_SKIP_SAFEMALLOC:
|
||||
#ifdef SAFEMALLOC
|
||||
sf_malloc_quick=1;
|
||||
#endif
|
||||
break;
|
||||
case OPT_RESULT_FORMAT_VERSION:
|
||||
set_result_format_version(opt_result_format_version);
|
||||
break;
|
||||
@ -6321,7 +6314,7 @@ void init_win_path_patterns()
|
||||
/* Don't insert zero length strings in patterns array */
|
||||
if (strlen(p) == 0)
|
||||
{
|
||||
my_free(p, MYF(0));
|
||||
my_free(p);
|
||||
continue;
|
||||
}
|
||||
|
||||
@ -6345,7 +6338,7 @@ void free_win_path_patterns()
|
||||
for (i=0 ; i < patterns.elements ; i++)
|
||||
{
|
||||
const char** pattern= dynamic_element(&patterns, i, const char**);
|
||||
my_free((char*) *pattern, MYF(0));
|
||||
my_free((void *) *pattern);
|
||||
}
|
||||
delete_dynamic(&patterns);
|
||||
}
|
||||
@ -6538,12 +6531,12 @@ void append_stmt_result(DYNAMIC_STRING *ds, MYSQL_STMT *stmt,
|
||||
for (i= 0; i < num_fields; i++)
|
||||
{
|
||||
/* Free data for output */
|
||||
my_free(my_bind[i].buffer, MYF(MY_WME | MY_FAE));
|
||||
my_free(my_bind[i].buffer);
|
||||
}
|
||||
/* Free array with bind structs, lengths and NULL flags */
|
||||
my_free(my_bind , MYF(MY_WME | MY_FAE));
|
||||
my_free(length , MYF(MY_WME | MY_FAE));
|
||||
my_free(is_null , MYF(MY_WME | MY_FAE));
|
||||
my_free(my_bind);
|
||||
my_free(length);
|
||||
my_free(is_null);
|
||||
}
|
||||
|
||||
|
||||
@ -8489,11 +8482,11 @@ void do_get_replace_column(struct st_command *command)
|
||||
if (!*from)
|
||||
die("Wrong number of arguments to replace_column in '%s'", command->query);
|
||||
to= get_string(&buff, &from, command);
|
||||
my_free(replace_column[column_number-1], MY_ALLOW_ZERO_PTR);
|
||||
my_free(replace_column[column_number-1]);
|
||||
replace_column[column_number-1]= my_strdup(to, MYF(MY_WME | MY_FAE));
|
||||
set_if_bigger(max_replace_column, column_number);
|
||||
}
|
||||
my_free(start, MYF(0));
|
||||
my_free(start);
|
||||
command->last_argument= command->end;
|
||||
|
||||
DBUG_VOID_RETURN;
|
||||
@ -8507,7 +8500,7 @@ void free_replace_column()
|
||||
{
|
||||
if (replace_column[i])
|
||||
{
|
||||
my_free(replace_column[i], 0);
|
||||
my_free(replace_column[i]);
|
||||
replace_column[i]= 0;
|
||||
}
|
||||
}
|
||||
@ -8588,7 +8581,7 @@ void do_get_replace(struct st_command *command)
|
||||
die("Can't initialize replace from '%s'", command->query);
|
||||
free_pointer_array(&from_array);
|
||||
free_pointer_array(&to_array);
|
||||
my_free(start, MYF(0));
|
||||
my_free(start);
|
||||
command->last_argument= command->end;
|
||||
DBUG_VOID_RETURN;
|
||||
}
|
||||
@ -8597,11 +8590,8 @@ void do_get_replace(struct st_command *command)
|
||||
void free_replace()
|
||||
{
|
||||
DBUG_ENTER("free_replace");
|
||||
if (glob_replace)
|
||||
{
|
||||
my_free(glob_replace,MYF(0));
|
||||
glob_replace=0;
|
||||
}
|
||||
my_free(glob_replace);
|
||||
glob_replace= NULL;
|
||||
DBUG_VOID_RETURN;
|
||||
}
|
||||
|
||||
@ -8821,7 +8811,7 @@ struct st_replace_regex* init_replace_regex(char* expr)
|
||||
return res;
|
||||
|
||||
err:
|
||||
my_free(res,0);
|
||||
my_free(res);
|
||||
die("Error parsing replace_regex \"%s\"", expr);
|
||||
return 0;
|
||||
}
|
||||
@ -8913,9 +8903,9 @@ void free_replace_regex()
|
||||
if (glob_replace_regex)
|
||||
{
|
||||
delete_dynamic(&glob_replace_regex->regex_arr);
|
||||
my_free(glob_replace_regex->even_buf,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(glob_replace_regex->odd_buf,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(glob_replace_regex,MYF(0));
|
||||
my_free(glob_replace_regex->even_buf);
|
||||
my_free(glob_replace_regex->odd_buf);
|
||||
my_free(glob_replace_regex);
|
||||
glob_replace_regex=0;
|
||||
}
|
||||
}
|
||||
@ -9110,7 +9100,7 @@ int reg_replace(char** buf_p, int* buf_len_p, char *pattern,
|
||||
str_p= str_end;
|
||||
}
|
||||
}
|
||||
my_free(subs, MYF(0));
|
||||
my_free(subs);
|
||||
my_regfree(&r);
|
||||
*res_p= 0;
|
||||
*buf_p= buf;
|
||||
@ -9242,7 +9232,7 @@ REPLACE *init_replace(char * *from, char * *to,uint count,
|
||||
if (!(follow=(FOLLOWS*) my_malloc((states+2)*sizeof(FOLLOWS),MYF(MY_WME))))
|
||||
{
|
||||
free_sets(&sets);
|
||||
my_free(found_set,MYF(0));
|
||||
my_free(found_set);
|
||||
DBUG_RETURN(0);
|
||||
}
|
||||
|
||||
@ -9437,9 +9427,9 @@ REPLACE *init_replace(char * *from, char * *to,uint count,
|
||||
replace[i].next[j]=(REPLACE*) (rep_str+(-sets.set[i].next[j]-1));
|
||||
}
|
||||
}
|
||||
my_free(follow,MYF(0));
|
||||
my_free(follow);
|
||||
free_sets(&sets);
|
||||
my_free(found_set,MYF(0));
|
||||
my_free(found_set);
|
||||
DBUG_PRINT("exit",("Replace table has %d states",sets.count));
|
||||
DBUG_RETURN(replace);
|
||||
}
|
||||
@ -9455,7 +9445,7 @@ int init_sets(REP_SETS *sets,uint states)
|
||||
if (!(sets->bit_buffer=(uint*) my_malloc(sizeof(uint)*sets->size_of_bits*
|
||||
SET_MALLOC_HUNC,MYF(MY_WME))))
|
||||
{
|
||||
my_free(sets->set,MYF(0));
|
||||
my_free(sets->set);
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
@ -9516,8 +9506,8 @@ void free_last_set(REP_SETS *sets)
|
||||
|
||||
void free_sets(REP_SETS *sets)
|
||||
{
|
||||
my_free(sets->set_buffer,MYF(0));
|
||||
my_free(sets->bit_buffer,MYF(0));
|
||||
my_free(sets->set_buffer);
|
||||
my_free(sets->bit_buffer);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -9657,7 +9647,7 @@ int insert_pointer_name(reg1 POINTER_ARRAY *pa,char * name)
|
||||
if (!(pa->str= (uchar*) my_malloc((uint) (PS_MALLOC-MALLOC_OVERHEAD),
|
||||
MYF(MY_WME))))
|
||||
{
|
||||
my_free((char*) pa->typelib.type_names,MYF(0));
|
||||
my_free(pa->typelib.type_names);
|
||||
DBUG_RETURN (-1);
|
||||
}
|
||||
pa->max_count=(PC_MALLOC-MALLOC_OVERHEAD)/(sizeof(uchar*)+
|
||||
@ -9718,9 +9708,9 @@ void free_pointer_array(POINTER_ARRAY *pa)
|
||||
if (pa->typelib.count)
|
||||
{
|
||||
pa->typelib.count=0;
|
||||
my_free((char*) pa->typelib.type_names,MYF(0));
|
||||
my_free(pa->typelib.type_names);
|
||||
pa->typelib.type_names=0;
|
||||
my_free(pa->str,MYF(0));
|
||||
my_free(pa->str);
|
||||
}
|
||||
} /* free_pointer_array */
|
||||
|
||||
|
@ -35,7 +35,7 @@ LINE_BUFFER *batch_readline_init(ulong max_size,FILE *file)
|
||||
return 0;
|
||||
if (init_line_buffer(line_buff,my_fileno(file),IO_SIZE,max_size))
|
||||
{
|
||||
my_free(line_buff,MYF(0));
|
||||
my_free(line_buff);
|
||||
return 0;
|
||||
}
|
||||
return line_buff;
|
||||
@ -63,8 +63,8 @@ void batch_readline_end(LINE_BUFFER *line_buff)
|
||||
{
|
||||
if (line_buff)
|
||||
{
|
||||
my_free(line_buff->buffer,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(line_buff,MYF(0));
|
||||
my_free(line_buff->buffer);
|
||||
my_free(line_buff);
|
||||
}
|
||||
}
|
||||
|
||||
@ -77,7 +77,7 @@ LINE_BUFFER *batch_readline_command(LINE_BUFFER *line_buff, char * str)
|
||||
return 0;
|
||||
if (init_line_buffer_from_string(line_buff,str))
|
||||
{
|
||||
my_free(line_buff,MYF(0));
|
||||
my_free(line_buff);
|
||||
return 0;
|
||||
}
|
||||
return line_buff;
|
||||
|
@ -175,7 +175,7 @@ public:
|
||||
{
|
||||
alloced=0;
|
||||
Alloced_length=0;
|
||||
my_free(Ptr,MYF(0));
|
||||
my_free(Ptr);
|
||||
Ptr=0;
|
||||
str_length=0; /* Safety */
|
||||
}
|
||||
|
@ -250,7 +250,7 @@ SET(DEBUGBUILDDIR "${BINARY_PARENTDIR}/debug" CACHE INTERNAL "Directory of debug
|
||||
|
||||
FUNCTION(INSTALL_DEBUG_TARGET target)
|
||||
CMAKE_PARSE_ARGUMENTS(ARG
|
||||
"DESTINATION;RENAME"
|
||||
"DESTINATION;RENAME;PDB_DESTINATION;COMPONENT"
|
||||
""
|
||||
${ARGN}
|
||||
)
|
||||
@ -269,6 +269,9 @@ FUNCTION(INSTALL_DEBUG_TARGET target)
|
||||
ELSE()
|
||||
STRING(REPLACE "${CMAKE_CFG_INTDIR}" "Debug" debug_target_location "${target_location}" )
|
||||
ENDIF()
|
||||
IF(NOT ARG_COMPONENT)
|
||||
SET(ARG_COMPONENT DebugBinaries)
|
||||
ENDIF()
|
||||
|
||||
# Define permissions
|
||||
# For executable files
|
||||
@ -305,19 +308,26 @@ FUNCTION(INSTALL_DEBUG_TARGET target)
|
||||
${RENAME_PARAM}
|
||||
${PERMISSIONS_${target_type}}
|
||||
CONFIGURATIONS Release RelWithDebInfo
|
||||
COMPONENT ${ARG_COMPONENT}
|
||||
OPTIONAL)
|
||||
|
||||
IF(MSVC)
|
||||
GET_FILENAME_COMPONENT(ext ${debug_target_location} EXT)
|
||||
STRING(REPLACE "${ext}" ".pdb" debug_pdb_target_location "${debug_target_location}" )
|
||||
IF(RENAME_PARAM)
|
||||
STRING(REPLACE "${ext}" ".pdb" "${ARG_RENAME}" pdb_rename)
|
||||
SET(PDB_RENAME_PARAM RENAME ${pdb_rename})
|
||||
IF (RENAME_PARAM)
|
||||
IF(NOT ARG_PDB_DESTINATION)
|
||||
STRING(REPLACE "${ext}" ".pdb" "${ARG_RENAME}" pdb_rename)
|
||||
SET(PDB_RENAME_PARAM RENAME "${pdb_rename}")
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
IF(NOT ARG_PDB_DESTINATION)
|
||||
SET(ARG_PDB_DESTINATION "${ARG_DESTINATION}")
|
||||
ENDIF()
|
||||
INSTALL(FILES ${debug_pdb_target_location}
|
||||
DESTINATION ${ARG_DESTINATION}
|
||||
${RPDB_RENAME_PARAM}
|
||||
DESTINATION ${ARG_PDB_DESTINATION}
|
||||
${PDB_RENAME_PARAM}
|
||||
CONFIGURATIONS Release RelWithDebInfo
|
||||
COMPONENT ${ARG_COMPONENT}
|
||||
OPTIONAL)
|
||||
ENDIF()
|
||||
ENDFUNCTION()
|
||||
|
@ -1902,8 +1902,8 @@ elif test "$with_debug" = "full"
|
||||
then
|
||||
# Full debug. Very slow in some cases
|
||||
AC_DEFINE([DBUG_ON], [1], [Use libdbug])
|
||||
CFLAGS="$DEBUG_CFLAGS -DSAFE_MUTEX -DSAFEMALLOC $CFLAGS"
|
||||
CXXFLAGS="$DEBUG_CXXFLAGS -DSAFE_MUTEX -DSAFEMALLOC $CXXFLAGS"
|
||||
CFLAGS="$DEBUG_CFLAGS -DSAFE_MUTEX $CFLAGS"
|
||||
CXXFLAGS="$DEBUG_CXXFLAGS -DSAFE_MUTEX $CXXFLAGS"
|
||||
else
|
||||
# Optimized version. No debug
|
||||
AC_DEFINE([DBUG_OFF], [1], [Don't use libdbug])
|
||||
|
@ -17,6 +17,6 @@ INCLUDE_DIRECTORIES(
|
||||
${CMAKE_SOURCE_DIR}/dbug
|
||||
${CMAKE_SOURCE_DIR}/include
|
||||
)
|
||||
SET(DBUG_SOURCES dbug.c sanity.c)
|
||||
SET(DBUG_SOURCES dbug.c)
|
||||
ADD_CONVENIENCE_LIBRARY(dbug ${DBUG_SOURCES})
|
||||
TARGET_LINK_LIBRARIES(dbug mysys)
|
||||
|
@ -19,7 +19,7 @@ INCLUDES = -I$(top_builddir)/include -I$(top_srcdir)/include
|
||||
LDADD = libdbug.a ../mysys/libmysys.a ../strings/libmystrings.a
|
||||
pkglib_LIBRARIES = libdbug.a
|
||||
noinst_HEADERS = dbug_long.h
|
||||
libdbug_a_SOURCES = dbug.c sanity.c
|
||||
libdbug_a_SOURCES = dbug.c
|
||||
EXTRA_DIST = CMakeLists.txt example1.c example2.c example3.c \
|
||||
user.r monty.doc dbug_add_tags.pl \
|
||||
my_main.c main.c factorial.c dbug_analyze.c \
|
||||
|
23
dbug/dbug.c
23
dbug/dbug.c
@ -128,9 +128,8 @@
|
||||
#define PROFILE_ON (1 << 7) /* Print out profiling code */
|
||||
#define PID_ON (1 << 8) /* Identify each line with process id */
|
||||
#define TIMESTAMP_ON (1 << 9) /* timestamp every line of output */
|
||||
#define SANITY_CHECK_ON (1 << 10) /* Check safemalloc on DBUG_ENTER */
|
||||
#define FLUSH_ON_WRITE (1 << 11) /* Flush on every write */
|
||||
#define OPEN_APPEND (1 << 12) /* Open for append */
|
||||
#define FLUSH_ON_WRITE (1 << 10) /* Flush on every write */
|
||||
#define OPEN_APPEND (1 << 11) /* Open for append */
|
||||
#define TRACE_ON ((uint)1 << 31) /* Trace enabled. MUST be the highest bit!*/
|
||||
|
||||
#define TRACING (cs->stack->flags & TRACE_ON)
|
||||
@ -184,12 +183,6 @@
|
||||
static void perror(); /* Fake system/library error print routine */
|
||||
#endif
|
||||
|
||||
#ifdef SAFEMALLOC
|
||||
IMPORT int _sanity(const char *file,uint line); /* safemalloc sanity checker */
|
||||
#else
|
||||
#define _sanity(X,Y) (1)
|
||||
#endif
|
||||
|
||||
/*
|
||||
* The user may specify a list of functions to trace or
|
||||
* debug. These lists are kept in a linear linked list,
|
||||
@ -705,12 +698,6 @@ int DbugParse(CODE_STATE *cs, const char *control)
|
||||
else
|
||||
stack->flags |= TIMESTAMP_ON;
|
||||
break;
|
||||
case 'S':
|
||||
if (sign < 0)
|
||||
stack->flags &= ~SANITY_CHECK_ON;
|
||||
else
|
||||
stack->flags |= SANITY_CHECK_ON;
|
||||
break;
|
||||
}
|
||||
if (!*end)
|
||||
break;
|
||||
@ -1069,7 +1056,6 @@ int _db_explain_ (CODE_STATE *cs, char *buf, size_t len)
|
||||
op_bool_to_buf('r', cs->stack->sub_level != 0);
|
||||
op_intf_to_buf('t', cs->stack->maxdepth, MAXDEPTH, TRACING);
|
||||
op_bool_to_buf('T', cs->stack->flags & TIMESTAMP_ON);
|
||||
op_bool_to_buf('S', cs->stack->flags & SANITY_CHECK_ON);
|
||||
|
||||
*buf= '\0';
|
||||
return 0;
|
||||
@ -1187,8 +1173,6 @@ void _db_enter_(const char *_func_, const char *_file_,
|
||||
if (!TRACING) break;
|
||||
/* fall through */
|
||||
case DO_TRACE:
|
||||
if ((cs->stack->flags & SANITY_CHECK_ON) && _sanity(_file_,_line_))
|
||||
cs->stack->flags &= ~SANITY_CHECK_ON;
|
||||
if (TRACING)
|
||||
{
|
||||
if (!cs->locked)
|
||||
@ -1247,9 +1231,6 @@ void _db_return_(uint _line_, struct _db_stack_frame_ *_stack_frame_)
|
||||
#endif
|
||||
if (DoTrace(cs) & DO_TRACE)
|
||||
{
|
||||
if ((cs->stack->flags & SANITY_CHECK_ON) &&
|
||||
_sanity(_stack_frame_->file,_line_))
|
||||
cs->stack->flags &= ~SANITY_CHECK_ON;
|
||||
if (TRACING)
|
||||
{
|
||||
if (!cs->locked)
|
||||
|
@ -1,13 +0,0 @@
|
||||
/* Declarate _sanity() if not declared in main program */
|
||||
|
||||
#include <my_global.h>
|
||||
|
||||
extern int _sanity(const char *file,uint line);
|
||||
|
||||
#if defined(SAFEMALLOC) && !defined(MASTER) /* Avoid errors in MySQL */
|
||||
int _sanity(const char * file __attribute__((unused)),
|
||||
uint line __attribute__((unused)))
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
#endif
|
@ -1019,14 +1019,6 @@ Most useful with
|
||||
.B DBUG_PUSH
|
||||
macros used to temporarily alter the
|
||||
debugger state.
|
||||
.LI S
|
||||
When compiled with
|
||||
.I safemalloc
|
||||
this flag forces "sanity" memory checks (for overwrites/underwrites)
|
||||
on each
|
||||
.B DBUG_ENTER
|
||||
and
|
||||
.B DBUG_RETURN.
|
||||
.LI t[,N]
|
||||
Enable function control flow tracing.
|
||||
The maximum nesting depth is specified by N, and defaults to
|
||||
|
@ -387,15 +387,15 @@ static void clean_up(struct languages *lang_head, struct errors *error_head)
|
||||
struct errors *tmp_error, *next_error;
|
||||
uint count, i;
|
||||
|
||||
my_free((uchar*) default_language, MYF(0));
|
||||
my_free((void*) default_language);
|
||||
|
||||
for (tmp_lang= lang_head; tmp_lang; tmp_lang= next_language)
|
||||
{
|
||||
next_language= tmp_lang->next_lang;
|
||||
my_free(tmp_lang->lang_short_name, MYF(0));
|
||||
my_free(tmp_lang->lang_long_name, MYF(0));
|
||||
my_free(tmp_lang->charset, MYF(0));
|
||||
my_free((uchar*) tmp_lang, MYF(0));
|
||||
my_free(tmp_lang->lang_short_name);
|
||||
my_free(tmp_lang->lang_long_name);
|
||||
my_free(tmp_lang->charset);
|
||||
my_free(tmp_lang);
|
||||
}
|
||||
|
||||
for (tmp_error= error_head; tmp_error; tmp_error= next_error)
|
||||
@ -406,17 +406,17 @@ static void clean_up(struct languages *lang_head, struct errors *error_head)
|
||||
{
|
||||
struct message *tmp;
|
||||
tmp= dynamic_element(&tmp_error->msg, i, struct message*);
|
||||
my_free((uchar*) tmp->lang_short_name, MYF(0));
|
||||
my_free((uchar*) tmp->text, MYF(0));
|
||||
my_free(tmp->lang_short_name);
|
||||
my_free(tmp->text);
|
||||
}
|
||||
|
||||
delete_dynamic(&tmp_error->msg);
|
||||
if (tmp_error->sql_code1[0])
|
||||
my_free((uchar*) tmp_error->sql_code1, MYF(0));
|
||||
my_free((void*) tmp_error->sql_code1);
|
||||
if (tmp_error->sql_code2[0])
|
||||
my_free((uchar*) tmp_error->sql_code2, MYF(0));
|
||||
my_free((uchar*) tmp_error->er_name, MYF(0));
|
||||
my_free((uchar*) tmp_error, MYF(0));
|
||||
my_free((void*) tmp_error->sql_code2);
|
||||
my_free((void*) tmp_error->er_name);
|
||||
my_free(tmp_error);
|
||||
}
|
||||
}
|
||||
|
||||
@ -559,7 +559,7 @@ static uint parse_error_offset(char *str)
|
||||
|
||||
end= 0;
|
||||
ioffset= (uint) my_strtoll10(soffset, &end, &error);
|
||||
my_free((uchar*) soffset, MYF(0));
|
||||
my_free(soffset);
|
||||
DBUG_RETURN(ioffset);
|
||||
}
|
||||
|
||||
|
@ -200,7 +200,7 @@ int main(int argc, char **argv)
|
||||
for (argument= arguments+1 ; *argument ; argument++)
|
||||
if (*argument != args_separator) /* skip arguments separator */
|
||||
puts(*argument);
|
||||
my_free((char*) load_default_groups,MYF(0));
|
||||
my_free(load_default_groups);
|
||||
free_defaults(arguments);
|
||||
|
||||
exit(0);
|
||||
|
@ -262,7 +262,7 @@ static int insert_pointer_name(reg1 POINTER_ARRAY *pa,char * name)
|
||||
if (!(pa->str= (uchar*) my_malloc((uint) (PS_MALLOC-MALLOC_OVERHEAD),
|
||||
MYF(MY_WME))))
|
||||
{
|
||||
my_free((uchar*) pa->typelib.type_names,MYF(0));
|
||||
my_free(pa->typelib.type_names);
|
||||
DBUG_RETURN (-1);
|
||||
}
|
||||
pa->max_count=(PC_MALLOC-MALLOC_OVERHEAD)/(sizeof(uchar*)+
|
||||
@ -324,9 +324,9 @@ static void free_pointer_array(reg1 POINTER_ARRAY *pa)
|
||||
if (pa->typelib.count)
|
||||
{
|
||||
pa->typelib.count=0;
|
||||
my_free((uchar*) pa->typelib.type_names,MYF(0));
|
||||
my_free(pa->typelib.type_names);
|
||||
pa->typelib.type_names=0;
|
||||
my_free((uchar*) pa->str,MYF(0));
|
||||
my_free(pa->str);
|
||||
}
|
||||
return;
|
||||
} /* free_pointer_array */
|
||||
@ -441,7 +441,7 @@ static REPLACE *init_replace(char * *from, char * *to,uint count,
|
||||
if (!(follow=(FOLLOWS*) my_malloc((states+2)*sizeof(FOLLOWS),MYF(MY_WME))))
|
||||
{
|
||||
free_sets(&sets);
|
||||
my_free((uchar*) found_set,MYF(0));
|
||||
my_free(found_set);
|
||||
DBUG_RETURN(0);
|
||||
}
|
||||
|
||||
@ -663,9 +663,9 @@ static REPLACE *init_replace(char * *from, char * *to,uint count,
|
||||
replace[i].next[j]=(REPLACE*) (rep_str+(-sets.set[i].next[j]-1));
|
||||
}
|
||||
}
|
||||
my_free((uchar*) follow,MYF(0));
|
||||
my_free(follow);
|
||||
free_sets(&sets);
|
||||
my_free((uchar*) found_set,MYF(0));
|
||||
my_free(found_set);
|
||||
DBUG_PRINT("exit",("Replace table has %d states",sets.count));
|
||||
DBUG_RETURN(replace);
|
||||
}
|
||||
@ -681,7 +681,7 @@ static int init_sets(REP_SETS *sets,uint states)
|
||||
if (!(sets->bit_buffer=(uint*) my_malloc(sizeof(uint)*sets->size_of_bits*
|
||||
SET_MALLOC_HUNC,MYF(MY_WME))))
|
||||
{
|
||||
my_free((uchar*) sets->set,MYF(0));
|
||||
my_free(sets->set);
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
@ -742,8 +742,8 @@ static void free_last_set(REP_SETS *sets)
|
||||
|
||||
static void free_sets(REP_SETS *sets)
|
||||
{
|
||||
my_free((uchar*)sets->set_buffer,MYF(0));
|
||||
my_free((uchar*)sets->bit_buffer,MYF(0));
|
||||
my_free(sets->set_buffer);
|
||||
my_free(sets->bit_buffer);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -950,8 +950,8 @@ static void reset_buffer()
|
||||
|
||||
static void free_buffer()
|
||||
{
|
||||
my_free(buffer,MYF(MY_WME));
|
||||
my_free(out_buff,MYF(MY_WME));
|
||||
my_free(buffer);
|
||||
my_free(out_buff);
|
||||
}
|
||||
|
||||
|
||||
|
@ -64,14 +64,14 @@ typedef struct st_hash {
|
||||
typedef uint HASH_SEARCH_STATE;
|
||||
|
||||
#define my_hash_init(A,B,C,D,E,F,G,H) \
|
||||
_my_hash_init(A,0,B,C,D,E,F,G,H CALLER_INFO)
|
||||
_my_hash_init(A,0,B,C,D,E,F,G,H)
|
||||
#define my_hash_init2(A,B,C,D,E,F,G,H,I) \
|
||||
_my_hash_init(A,B,C,D,E,F,G,H,I CALLER_INFO)
|
||||
_my_hash_init(A,B,C,D,E,F,G,H,I)
|
||||
my_bool _my_hash_init(HASH *hash, uint growth_size, CHARSET_INFO *charset,
|
||||
ulong default_array_elements, size_t key_offset,
|
||||
size_t key_length, my_hash_get_key get_key,
|
||||
void (*free_element)(void*),
|
||||
uint flags CALLER_INFO_PROTO);
|
||||
uint flags);
|
||||
void my_hash_free(HASH *tree);
|
||||
void my_hash_reset(HASH *hash);
|
||||
uchar *my_hash_element(HASH *hash, ulong idx);
|
||||
@ -100,7 +100,7 @@ my_bool my_hash_check(HASH *hash); /* Only in debug library */
|
||||
#define my_hash_clear(H) bzero((char*) (H), sizeof(*(H)))
|
||||
#define my_hash_inited(H) ((H)->blength != 0)
|
||||
#define my_hash_init_opt(A,B,C,D,E,F,G,H) \
|
||||
(!my_hash_inited(A) && _my_hash_init(A,0,B,C,D,E,F,G, H CALLER_INFO))
|
||||
(!my_hash_inited(A) && _my_hash_init(A,0,B,C,D,E,F,G,H))
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@ -204,7 +204,7 @@ uint lf_alloc_pool_count(LF_ALLOCATOR *allocator);
|
||||
#define lf_alloc_get_pins(A) lf_pinbox_get_pins(&(A)->pinbox)
|
||||
#define _lf_alloc_put_pins(PINS) _lf_pinbox_put_pins(PINS)
|
||||
#define lf_alloc_put_pins(PINS) lf_pinbox_put_pins(PINS)
|
||||
#define lf_alloc_direct_free(ALLOC, ADDR) my_free((uchar*)(ADDR), MYF(0))
|
||||
#define lf_alloc_direct_free(ALLOC, ADDR) my_free((ADDR))
|
||||
|
||||
lock_wrap(lf_alloc_new, void *,
|
||||
(LF_PINS *pins),
|
||||
|
@ -889,11 +889,8 @@ typedef SOCKET_SIZE_TYPE size_socket;
|
||||
How much overhead does malloc have. The code often allocates
|
||||
something like 1024-MALLOC_OVERHEAD bytes
|
||||
*/
|
||||
#ifdef SAFEMALLOC
|
||||
#define MALLOC_OVERHEAD (8+24+4)
|
||||
#else
|
||||
#define MALLOC_OVERHEAD 8
|
||||
#endif
|
||||
|
||||
/* get memory in huncs */
|
||||
#define ONCE_ALLOC_INIT (uint) (4096-MALLOC_OVERHEAD)
|
||||
/* Typical record cash */
|
||||
@ -1712,11 +1709,6 @@ inline void operator delete[](void*, void*) { /* Do nothing */ }
|
||||
#define min(a, b) ((a) < (b) ? (a) : (b))
|
||||
#endif
|
||||
|
||||
#define x_free(A) \
|
||||
do { my_free((uchar*)(A), MYF(MY_WME|MY_FAE|MY_ALLOW_ZERO_PTR)); } while (0)
|
||||
#define safeFree(X) \
|
||||
do { if (X) { my_free((uchar*)(X), MYF(0)); (X) = NULL; } } while (0)
|
||||
|
||||
/*
|
||||
Only Linux is known to need an explicit sync of the directory to make sure a
|
||||
file creation/deletion/renaming in(from,to) this directory durable.
|
||||
|
@ -37,7 +37,7 @@ extern int list_walk(LIST *,list_walk_action action,unsigned char * argument);
|
||||
|
||||
#define list_rest(a) ((a)->next)
|
||||
#define list_push(a,b) (a)=list_cons((b),(a))
|
||||
#define list_pop(A) {LIST *old=(A); (A)=list_delete(old,old) ; my_free((unsigned char *) old,MYF(MY_FAE)); }
|
||||
#define list_pop(A) {LIST *old=(A); (A)=list_delete(old,old); my_free(old); }
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@ -39,7 +39,7 @@ extern size_t my_quick_read(File Filedes,uchar *Buffer,size_t Count,
|
||||
myf myFlags);
|
||||
extern size_t my_quick_write(File Filedes,const uchar *Buffer,size_t Count);
|
||||
|
||||
#if !defined(SAFEMALLOC) && defined(USE_HALLOC)
|
||||
#if defined(USE_HALLOC)
|
||||
#define my_malloc(a,b) halloc(a,1)
|
||||
#define my_no_flags_free(a) hfree(a)
|
||||
#endif
|
||||
|
@ -158,46 +158,15 @@ extern int NEAR my_errno; /* Last error in mysys */
|
||||
#define GETDATE_FIXEDLENGTH 16
|
||||
|
||||
/* defines when allocating data */
|
||||
#ifdef SAFEMALLOC
|
||||
#define my_malloc(SZ,FLAG) _mymalloc((SZ), __FILE__, __LINE__, FLAG )
|
||||
#define my_malloc_ci(SZ,FLAG) _mymalloc((SZ), sFile, uLine, FLAG )
|
||||
#define my_realloc(PTR,SZ,FLAG) _myrealloc((PTR), (SZ), __FILE__, __LINE__, FLAG )
|
||||
#define my_checkmalloc() _sanity( __FILE__, __LINE__ )
|
||||
#define my_free(PTR,FLAG) _myfree((PTR), __FILE__, __LINE__,FLAG)
|
||||
#define my_memdup(A,B,C) _my_memdup((A),(B), __FILE__,__LINE__,C)
|
||||
#define my_strdup(A,C) _my_strdup((A), __FILE__,__LINE__,C)
|
||||
#define my_strndup(A,B,C) _my_strndup((A),(B),__FILE__,__LINE__,C)
|
||||
#define TRASH(A,B) do { bfill(A, B, 0x8F); MEM_UNDEFINED(A, B); } while (0)
|
||||
#define QUICK_SAFEMALLOC sf_malloc_quick=1
|
||||
#define NORMAL_SAFEMALLOC sf_malloc_quick=0
|
||||
extern uint sf_malloc_prehunc,sf_malloc_endhunc,sf_malloc_quick;
|
||||
extern ulonglong sf_malloc_mem_limit;
|
||||
|
||||
#define CALLER_INFO_PROTO , const char *sFile, uint uLine
|
||||
#define CALLER_INFO , __FILE__, __LINE__
|
||||
#define ORIG_CALLER_INFO , sFile, uLine
|
||||
#else
|
||||
#define my_checkmalloc()
|
||||
#undef TERMINATE
|
||||
#define TERMINATE(A,B) {}
|
||||
#define QUICK_SAFEMALLOC
|
||||
#define NORMAL_SAFEMALLOC
|
||||
extern void *my_malloc(size_t Size,myf MyFlags);
|
||||
#define my_malloc_ci(SZ,FLAG) my_malloc( SZ, FLAG )
|
||||
extern void *my_multi_malloc(myf MyFlags, ...);
|
||||
extern void *my_realloc(void *oldpoint, size_t Size, myf MyFlags);
|
||||
extern void my_no_flags_free(void *ptr);
|
||||
extern void my_free(void *ptr);
|
||||
extern void *my_memdup(const void *from,size_t length,myf MyFlags);
|
||||
extern char *my_strdup(const char *from,myf MyFlags);
|
||||
extern char *my_strndup(const char *from, size_t length,
|
||||
myf MyFlags);
|
||||
/* we do use FG (as a no-op) in below so that a typo on FG is caught */
|
||||
#define my_free(PTR,FG) ((void)FG,my_no_flags_free(PTR))
|
||||
#define CALLER_INFO_PROTO /* nothing */
|
||||
#define CALLER_INFO /* nothing */
|
||||
#define ORIG_CALLER_INFO /* nothing */
|
||||
#define TRASH(A,B) do{MEM_CHECK_ADDRESSABLE(A,B);MEM_UNDEFINED(A,B);} while (0)
|
||||
#endif
|
||||
|
||||
#if defined(ENABLED_DEBUG_SYNC)
|
||||
extern void (*debug_sync_C_callback_ptr)(const char *, size_t);
|
||||
#define DEBUG_SYNC_C(_sync_point_name_) do { \
|
||||
@ -211,11 +180,11 @@ extern void (*debug_sync_C_callback_ptr)(const char *, size_t);
|
||||
#ifdef HAVE_LARGE_PAGES
|
||||
extern uint my_get_large_page_size(void);
|
||||
extern uchar * my_large_malloc(size_t size, myf my_flags);
|
||||
extern void my_large_free(uchar * ptr, myf my_flags);
|
||||
extern void my_large_free(uchar *ptr);
|
||||
#else
|
||||
#define my_get_large_page_size() (0)
|
||||
#define my_large_malloc(A,B) my_malloc_lock((A),(B))
|
||||
#define my_large_free(A,B) my_free_lock((A),(B))
|
||||
#define my_large_free(A) my_free_lock((A))
|
||||
#endif /* HAVE_LARGE_PAGES */
|
||||
|
||||
#ifdef HAVE_ALLOCA
|
||||
@ -233,7 +202,7 @@ extern void my_large_free(uchar * ptr, myf my_flags);
|
||||
#define my_afree(PTR) {}
|
||||
#else
|
||||
#define my_alloca(SZ) my_malloc(SZ,MYF(0))
|
||||
#define my_afree(PTR) my_free(PTR,MYF(MY_WME))
|
||||
#define my_afree(PTR) my_free(PTR)
|
||||
#endif /* HAVE_ALLOCA */
|
||||
|
||||
#ifndef errno /* did we already get it? */
|
||||
@ -642,20 +611,6 @@ extern size_t my_fwrite(FILE *stream,const uchar *Buffer,size_t Count,
|
||||
myf MyFlags);
|
||||
extern my_off_t my_fseek(FILE *stream,my_off_t pos,int whence,myf MyFlags);
|
||||
extern my_off_t my_ftell(FILE *stream,myf MyFlags);
|
||||
extern void *_mymalloc(size_t uSize,const char *sFile,
|
||||
uint uLine, myf MyFlag);
|
||||
extern void *_myrealloc(void *pPtr,size_t uSize,const char *sFile,
|
||||
uint uLine, myf MyFlag);
|
||||
extern void * my_multi_malloc _VARARGS((myf MyFlags, ...));
|
||||
extern void _myfree(void *pPtr,const char *sFile,uint uLine, myf MyFlag);
|
||||
extern int _sanity(const char *sFile, uint uLine);
|
||||
extern void *_my_memdup(const void *from, size_t length,
|
||||
const char *sFile, uint uLine,myf MyFlag);
|
||||
extern char * _my_strdup(const char *from, const char *sFile, uint uLine,
|
||||
myf MyFlag);
|
||||
extern char *_my_strndup(const char *from, size_t length,
|
||||
const char *sFile, uint uLine,
|
||||
myf MyFlag);
|
||||
|
||||
/* implemented in my_memmem.c */
|
||||
extern void *my_memmem(const void *haystack, size_t haystacklen,
|
||||
@ -684,9 +639,6 @@ extern HANDLE my_get_osfhandle(File fd);
|
||||
extern void my_osmaperr(unsigned long last_error);
|
||||
#endif
|
||||
|
||||
#ifndef TERMINATE
|
||||
extern void TERMINATE(FILE *file, uint flag);
|
||||
#endif
|
||||
extern void init_glob_errs(void);
|
||||
extern const char** get_global_errmsgs();
|
||||
extern void wait_for_free_space(const char *filename, int errors);
|
||||
@ -835,18 +787,16 @@ extern my_bool real_open_cached_file(IO_CACHE *cache);
|
||||
extern void close_cached_file(IO_CACHE *cache);
|
||||
File create_temp_file(char *to, const char *dir, const char *pfx,
|
||||
int mode, myf MyFlags);
|
||||
#define my_init_dynamic_array(A,B,C,D) init_dynamic_array2(A,B,NULL,C,D CALLER_INFO)
|
||||
#define my_init_dynamic_array_ci(A,B,C,D) init_dynamic_array2(A,B,NULL,C,D ORIG_CALLER_INFO)
|
||||
#define my_init_dynamic_array2(A,B,C,D,E) init_dynamic_array2(A,B,C,D,E CALLER_INFO)
|
||||
#define my_init_dynamic_array2_ci(A,B,C,D,E) init_dynamic_array2(A,B,C,D,E ORIG_CALLER_INFO)
|
||||
extern my_bool init_dynamic_array2(DYNAMIC_ARRAY *array,uint element_size,
|
||||
void *init_buffer, uint init_alloc,
|
||||
uint alloc_increment
|
||||
CALLER_INFO_PROTO);
|
||||
#define my_init_dynamic_array(A,B,C,D) init_dynamic_array2(A,B,NULL,C,D)
|
||||
#define my_init_dynamic_array_ci(A,B,C,D) init_dynamic_array2(A,B,NULL,C,D)
|
||||
#define my_init_dynamic_array2(A,B,C,D,E) init_dynamic_array2(A,B,C,D,E)
|
||||
#define my_init_dynamic_array2_ci(A,B,C,D,E) init_dynamic_array2(A,B,C,D,E)
|
||||
extern my_bool init_dynamic_array2(DYNAMIC_ARRAY *array, uint element_size,
|
||||
void *init_buffer, uint init_alloc,
|
||||
uint alloc_increment);
|
||||
/* init_dynamic_array() function is deprecated */
|
||||
extern my_bool init_dynamic_array(DYNAMIC_ARRAY *array,uint element_size,
|
||||
uint init_alloc,uint alloc_increment
|
||||
CALLER_INFO_PROTO);
|
||||
extern my_bool init_dynamic_array(DYNAMIC_ARRAY *array, uint element_size,
|
||||
uint init_alloc, uint alloc_increment);
|
||||
extern my_bool insert_dynamic(DYNAMIC_ARRAY *array,uchar * element);
|
||||
extern uchar *alloc_dynamic(DYNAMIC_ARRAY *array);
|
||||
extern uchar *pop_dynamic(DYNAMIC_ARRAY*);
|
||||
@ -876,10 +826,10 @@ extern my_bool dynstr_trunc(DYNAMIC_STRING *str, size_t n);
|
||||
extern void dynstr_free(DYNAMIC_STRING *str);
|
||||
#ifdef HAVE_MLOCK
|
||||
extern void *my_malloc_lock(size_t length,myf flags);
|
||||
extern void my_free_lock(void *ptr,myf flags);
|
||||
extern void my_free_lock(void *ptr);
|
||||
#else
|
||||
#define my_malloc_lock(A,B) my_malloc((A),(B))
|
||||
#define my_free_lock(A,B) my_free((A),(B))
|
||||
#define my_free_lock(A) my_free((A))
|
||||
#endif
|
||||
#define alloc_root_inited(A) ((A)->min_malloc != 0)
|
||||
#define ALLOC_ROOT_MIN_BLOCK_SIZE (MALLOC_OVERHEAD + sizeof(USED_MEM) + 8)
|
||||
|
@ -233,10 +233,10 @@ extern void make_type(char *to,unsigned int nr,TYPELIB *typelib);
|
||||
extern const char *get_type(TYPELIB *typelib,unsigned int nr);
|
||||
extern TYPELIB *copy_typelib(MEM_ROOT *root, TYPELIB *from);
|
||||
extern TYPELIB sql_protocol_typelib;
|
||||
my_ulonglong find_set_from_flags(const TYPELIB *lib, uint default_name,
|
||||
my_ulonglong find_set_from_flags(const TYPELIB *lib, unsigned int default_name,
|
||||
my_ulonglong cur_set, my_ulonglong default_set,
|
||||
const char *str, uint length,
|
||||
char **err_pos, uint *err_len);
|
||||
const char *str, unsigned int length,
|
||||
char **err_pos, unsigned int *err_len);
|
||||
typedef struct st_mysql_rows {
|
||||
struct st_mysql_rows *next;
|
||||
MYSQL_ROW data;
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 2008-2009 Sun Microsystems, Inc
|
||||
/* 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
|
||||
@ -10,8 +10,8 @@
|
||||
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 */
|
||||
along with this program; if not, write to the Free Software Foundation,
|
||||
51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
|
||||
|
||||
#ifndef MYSQL_FILE_H
|
||||
#define MYSQL_FILE_H
|
||||
@ -800,7 +800,7 @@ inline_mysql_file_fopen(
|
||||
#endif
|
||||
if (unlikely(that->m_file == NULL))
|
||||
{
|
||||
my_free(that, MYF(0));
|
||||
my_free(that);
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
@ -834,7 +834,7 @@ inline_mysql_file_fclose(
|
||||
if (likely(locker != NULL))
|
||||
PSI_server->end_file_wait(locker, (size_t) 0);
|
||||
#endif
|
||||
my_free(file, MYF(0));
|
||||
my_free(file);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 2008-2009 Sun Microsystems, Inc
|
||||
/* 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
|
||||
@ -10,8 +10,8 @@
|
||||
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 */
|
||||
along with this program; if not, write to the Free Software Foundation,
|
||||
51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
|
||||
|
||||
#ifndef MYSQL_THREAD_H
|
||||
#define MYSQL_THREAD_H
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 2008-2010 Sun Microsystems, Inc
|
||||
/* 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
|
||||
@ -10,8 +10,8 @@
|
||||
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 */
|
||||
along with this program; if not, write to the Free Software Foundation,
|
||||
51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
|
||||
|
||||
#ifndef MYSQL_PERFORMANCE_SCHEMA_INTERFACE_H
|
||||
#define MYSQL_PERFORMANCE_SCHEMA_INTERFACE_H
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 2008-2009 Sun Microsystems, Inc
|
||||
/* 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
|
||||
@ -10,8 +10,8 @@
|
||||
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 */
|
||||
along with this program; if not, write to the Free Software Foundation,
|
||||
51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
|
||||
|
||||
/**
|
||||
@file mysql/psi/psi_abi_v1.h
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 2008-2009 Sun Microsystems, Inc
|
||||
/* 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
|
||||
@ -10,8 +10,8 @@
|
||||
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 */
|
||||
along with this program; if not, write to the Free Software Foundation,
|
||||
51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
|
||||
|
||||
/**
|
||||
@file mysql/psi/psi_abi_v1.h
|
||||
|
@ -36,9 +36,9 @@ extern TYPELIB *copy_typelib(MEM_ROOT *root, TYPELIB *from);
|
||||
|
||||
extern TYPELIB sql_protocol_typelib;
|
||||
|
||||
my_ulonglong find_set_from_flags(const TYPELIB *lib, uint default_name,
|
||||
my_ulonglong find_set_from_flags(const TYPELIB *lib, unsigned int default_name,
|
||||
my_ulonglong cur_set, my_ulonglong default_set,
|
||||
const char *str, uint length,
|
||||
char **err_pos, uint *err_len);
|
||||
const char *str, unsigned int length,
|
||||
char **err_pos, unsigned int *err_len);
|
||||
|
||||
#endif /* _typelib_h */
|
||||
|
@ -79,7 +79,7 @@ link_sources:
|
||||
# a minimal MySQL client library
|
||||
#
|
||||
# For a really minimal distribution (without debugging code) we could
|
||||
# keep only the stubs for safemalloc.c and debug.c
|
||||
# keep only the stubs for debug.c
|
||||
#
|
||||
# A list of needed headers collected from the deps information 000213
|
||||
nh = my_global.h config-win32.h dbug.h errmsg.h \
|
||||
|
@ -49,15 +49,15 @@ mystringsobjects = strmov.lo strxmov.lo strxnmov.lo strnmov.lo \
|
||||
ctype-uca.lo xml.lo my_strtoll10.lo str_alloc.lo dtoa.lo
|
||||
|
||||
mystringsextra= strto.c
|
||||
dbugobjects = dbug.lo # IT IS IN SAFEMALLOC.C sanity.lo
|
||||
dbugobjects = dbug.lo
|
||||
mysysheaders = mysys_priv.h my_static.h
|
||||
vioheaders = vio_priv.h
|
||||
mysysobjects1 = my_init.lo my_static.lo my_malloc.lo my_realloc.lo \
|
||||
mysysobjects1 = my_init.lo my_static.lo my_malloc.lo \
|
||||
my_create.lo my_delete.lo mf_tempfile.lo my_open.lo \
|
||||
my_file.lo my_read.lo my_write.lo errors.lo \
|
||||
my_error.lo my_getwd.lo my_div.lo \
|
||||
mf_pack.lo my_mess.lo mf_dirname.lo mf_fn_ext.lo\
|
||||
mf_wcomp.lo typelib.lo safemalloc.lo my_alloc.lo \
|
||||
mf_wcomp.lo typelib.lo my_alloc.lo \
|
||||
mf_format.lo mf_path.lo mf_unixpath.lo my_fopen.lo \
|
||||
my_symlink.lo my_fstream.lo mf_arr_appstr.lo \
|
||||
mf_loadpath.lo my_pthread.lo my_thr_init.lo \
|
||||
|
@ -341,7 +341,7 @@ mysql_connect(MYSQL *mysql,const char *host,
|
||||
if (!(res=mysql_real_connect(mysql,host,user,passwd,NullS,0,NullS,0)))
|
||||
{
|
||||
if (mysql->free_me)
|
||||
my_free((uchar*) mysql,MYF(0));
|
||||
my_free(mysql);
|
||||
}
|
||||
mysql->reconnect= 1;
|
||||
DBUG_RETURN(res);
|
||||
@ -457,9 +457,9 @@ my_bool STDCALL mysql_change_user(MYSQL *mysql, const char *user,
|
||||
if (rc == 0)
|
||||
{
|
||||
/* Free old connect information */
|
||||
my_free(mysql->user,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(mysql->passwd,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(mysql->db,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(mysql->user);
|
||||
my_free(mysql->passwd);
|
||||
my_free(mysql->db);
|
||||
|
||||
/* alloc new connect information */
|
||||
mysql->user= my_strdup(user,MYF(MY_WME));
|
||||
@ -604,7 +604,7 @@ my_bool handle_local_infile(MYSQL *mysql, const char *net_filename)
|
||||
err:
|
||||
/* free up memory allocated with _init, usually */
|
||||
(*options->local_infile_end)(li_ptr);
|
||||
my_free(buf, MYF(0));
|
||||
my_free(buf);
|
||||
DBUG_RETURN(result);
|
||||
}
|
||||
|
||||
@ -715,7 +715,7 @@ static void default_local_infile_end(void *ptr)
|
||||
{
|
||||
if (data->fd >= 0)
|
||||
my_close(data->fd, MYF(MY_WME));
|
||||
my_free(ptr, MYF(MY_WME));
|
||||
my_free(ptr);
|
||||
}
|
||||
}
|
||||
|
||||
@ -2206,7 +2206,7 @@ int cli_stmt_execute(MYSQL_STMT *stmt)
|
||||
}
|
||||
result= execute(stmt, param_data, length);
|
||||
stmt->send_types_to_server=0;
|
||||
my_free(param_data, MYF(MY_WME));
|
||||
my_free(param_data);
|
||||
DBUG_RETURN(result);
|
||||
}
|
||||
DBUG_RETURN((int) execute(stmt,0,0));
|
||||
@ -4707,7 +4707,7 @@ my_bool STDCALL mysql_stmt_close(MYSQL_STMT *stmt)
|
||||
}
|
||||
}
|
||||
|
||||
my_free((uchar*) stmt, MYF(MY_WME));
|
||||
my_free(stmt);
|
||||
|
||||
DBUG_RETURN(test(rc));
|
||||
}
|
||||
|
@ -76,7 +76,7 @@ void embedded_get_error(MYSQL *mysql, MYSQL_DATA *data)
|
||||
strmake(net->last_error, ei->info, sizeof(net->last_error)-1);
|
||||
memcpy(net->sqlstate, ei->sqlstate, sizeof(net->sqlstate));
|
||||
mysql->server_status= ei->server_status;
|
||||
my_free(data, MYF(0));
|
||||
my_free(data);
|
||||
}
|
||||
|
||||
static my_bool
|
||||
@ -207,7 +207,7 @@ static MYSQL_FIELD *emb_list_fields(MYSQL *mysql)
|
||||
res= ((THD*) mysql->thd)->cur_data;
|
||||
((THD*) mysql->thd)->cur_data= 0;
|
||||
mysql->field_alloc= res->alloc;
|
||||
my_free(res,MYF(0));
|
||||
my_free(res);
|
||||
mysql->status= MYSQL_STATUS_READY;
|
||||
return mysql->fields;
|
||||
}
|
||||
@ -236,7 +236,7 @@ static my_bool emb_read_prepare_result(MYSQL *mysql, MYSQL_STMT *stmt)
|
||||
stmt->fields= mysql->fields;
|
||||
stmt->mem_root= res->alloc;
|
||||
mysql->fields= NULL;
|
||||
my_free(res,MYF(0));
|
||||
my_free(res);
|
||||
}
|
||||
|
||||
return 0;
|
||||
@ -293,7 +293,7 @@ static my_bool emb_read_query_result(MYSQL *mysql)
|
||||
thd->cur_data= res;
|
||||
}
|
||||
else
|
||||
my_free(res, MYF(0));
|
||||
my_free(res);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@ -335,7 +335,7 @@ int emb_read_binary_rows(MYSQL_STMT *stmt)
|
||||
return 1;
|
||||
}
|
||||
stmt->result= *data;
|
||||
my_free((char *) data, MYF(0));
|
||||
my_free(data);
|
||||
set_stmt_errmsg(stmt, &stmt->mysql->net);
|
||||
return 0;
|
||||
}
|
||||
@ -590,7 +590,7 @@ int init_embedded_server(int argc, char **argv, char **groups)
|
||||
|
||||
void end_embedded_server()
|
||||
{
|
||||
my_free((char*) copy_arguments_ptr, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(copy_arguments_ptr);
|
||||
copy_arguments_ptr=0;
|
||||
clean_up(0);
|
||||
}
|
||||
|
@ -119,8 +119,8 @@ mysql_real_connect(MYSQL *mysql,const char *host, const char *user,
|
||||
(mysql->options.my_cnf_file ?
|
||||
mysql->options.my_cnf_file : "my"),
|
||||
mysql->options.my_cnf_group);
|
||||
my_free(mysql->options.my_cnf_file,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(mysql->options.my_cnf_group,MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free(mysql->options.my_cnf_file);
|
||||
my_free(mysql->options.my_cnf_group);
|
||||
mysql->options.my_cnf_file=mysql->options.my_cnf_group=0;
|
||||
}
|
||||
|
||||
|
@ -69,4 +69,34 @@ let $VERSION=`SELECT VERSION()`;
|
||||
source include/show_binlog_events.inc;
|
||||
DROP DATABASE `drop-temp+table-test`;
|
||||
|
||||
|
||||
#
|
||||
# Bug #54842: DROP TEMPORARY TABLE not binlogged after manual switching binlog format to ROW
|
||||
#
|
||||
# Sanity test. Checking that implicit DROP event is logged.
|
||||
#
|
||||
# After BUG#52616, the switch to ROW mode becomes effective even
|
||||
# if there are open temporary tables. As such the implicit drop
|
||||
# for temporary tables on session closing must be logged.
|
||||
#
|
||||
|
||||
RESET MASTER;
|
||||
|
||||
CREATE TABLE t1 ( i text );
|
||||
|
||||
--connect(con1,localhost,root,,)
|
||||
CREATE TEMPORARY TABLE ttmp1 ( i text );
|
||||
SET @@session.binlog_format=ROW;
|
||||
INSERT INTO t1 VALUES ('1');
|
||||
SELECT @@session.binlog_format;
|
||||
--disconnect con1
|
||||
|
||||
-- connection default
|
||||
--let $wait_binlog_event= DROP
|
||||
--source include/wait_for_binlog_event.inc
|
||||
-- source include/show_binlog_events.inc
|
||||
RESET MASTER;
|
||||
|
||||
DROP TABLE t1;
|
||||
|
||||
# End of 4.1 tests
|
||||
|
@ -77,11 +77,11 @@ eval UPDATE t2, t1 SET t2.data = CONCAT($data, $data, $data, $data),
|
||||
connection slave;
|
||||
--source include/wait_for_slave_sql_to_stop.inc
|
||||
|
||||
if (`SELECT @@binlog_format = 'STATEMENT'`)
|
||||
if (`SELECT @@binlog_format = 'STATEMENT' || @@binlog_format = 'MIXED'`)
|
||||
{
|
||||
SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;
|
||||
}
|
||||
if (`SELECT @@binlog_format = 'ROW' || @@binlog_format = 'MIXED'`)
|
||||
if (`SELECT @@binlog_format = 'ROW'`)
|
||||
{
|
||||
SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 2;
|
||||
}
|
||||
|
967
mysql-test/extra/rpl_tests/rpl_drop_create_temp_table.inc
Normal file
967
mysql-test/extra/rpl_tests/rpl_drop_create_temp_table.inc
Normal file
@ -0,0 +1,967 @@
|
||||
--source include/have_innodb.inc
|
||||
--disable_abort_on_error
|
||||
|
||||
if (`SELECT HEX(@commands) = HEX('configure')`)
|
||||
{
|
||||
connection master;
|
||||
|
||||
#
|
||||
# Creates a T-table that is never dropped.
|
||||
#
|
||||
--eval CREATE TABLE tt_xx_1 ( id INT ) ENGINE = Innodb
|
||||
|
||||
#
|
||||
# Creates a N-table that is never dropped.
|
||||
#
|
||||
--eval CREATE TABLE nt_xx_1 ( id INT ) ENGINE = MyIsam
|
||||
|
||||
#
|
||||
# Creates a Temporary N-table that is never dropped.
|
||||
#
|
||||
--eval CREATE TEMPORARY TABLE nt_tmp_xx_1 ( id INT ) ENGINE = MyIsam
|
||||
|
||||
#
|
||||
# Creates a Temporary N-table that is never dropped.
|
||||
#
|
||||
--eval CREATE TEMPORARY TABLE tt_tmp_xx_1 ( id INT ) ENGINE = Innodb
|
||||
|
||||
#
|
||||
# In what follows, we create a set of tables that are used
|
||||
# throughout this test case. The number of tables to be
|
||||
# created is give by the variable $tot_table.
|
||||
#
|
||||
#
|
||||
# Creates Temporay N-tables that are automatically dropped and recreated
|
||||
# when a command ends.
|
||||
#
|
||||
--let $n= $tot_table
|
||||
while (`SELECT $n != 0`)
|
||||
{
|
||||
--eval DROP TEMPORARY TABLE IF EXISTS nt_tmp_$n
|
||||
--eval CREATE TEMPORARY TABLE nt_tmp_$n ( id INT ) ENGINE = MyIsam
|
||||
--disable_query_log
|
||||
--eval SET @check_temp='$available_n_temp'
|
||||
--enable_query_log
|
||||
#
|
||||
# Updates the $available_n_temp that keeps track of the created
|
||||
# temporary N-tables.
|
||||
#
|
||||
if (`SELECT HEX(@check_temp) != HEX('')`)
|
||||
{
|
||||
--let $available_n_temp= $available_n_temp,nt_tmp_$n
|
||||
}
|
||||
if (`SELECT HEX(@check_temp) = HEX('')`)
|
||||
{
|
||||
--let $available_n_temp= nt_tmp_$n
|
||||
}
|
||||
--dec $n
|
||||
}
|
||||
|
||||
#
|
||||
# Creates Temporay T-tables that are automatically dropped and recreated
|
||||
# when a command ends.
|
||||
#
|
||||
--let $n= $tot_table
|
||||
while (`SELECT $n != 0`)
|
||||
{
|
||||
--eval DROP TEMPORARY TABLE IF EXISTS tt_tmp_$n
|
||||
--eval CREATE TEMPORARY TABLE tt_tmp_$n ( id INT ) ENGINE = Innodb
|
||||
--disable_query_log
|
||||
--eval SET @check_temp='$available_t_temp'
|
||||
--enable_query_log
|
||||
#
|
||||
# Updates the $available_t_temp that keeps track of the created
|
||||
# temporary T-tables.
|
||||
#
|
||||
if (`SELECT HEX(@check_temp) != HEX('')`)
|
||||
{
|
||||
--let $available_t_temp= $available_t_temp,tt_tmp_$n
|
||||
}
|
||||
if (`SELECT HEX(@check_temp) = HEX('')`)
|
||||
{
|
||||
--let $available_t_temp= tt_tmp_$n
|
||||
}
|
||||
--dec $n
|
||||
}
|
||||
|
||||
#
|
||||
# Creates N-tables that are automatically dropped and recreated
|
||||
# when a command ends.
|
||||
#
|
||||
--let $n= $tot_table
|
||||
while (`SELECT $n != 0`)
|
||||
{
|
||||
--eval DROP TABLE IF EXISTS nt_$n
|
||||
--eval CREATE TABLE nt_$n ( id INT ) ENGINE = MyIsam
|
||||
--disable_query_log
|
||||
--eval SET @check_temp='$available_n'
|
||||
--enable_query_log
|
||||
#
|
||||
# Updates the $available_n that keeps track of the created
|
||||
# N-tables.
|
||||
#
|
||||
if (`SELECT HEX(@check_temp) != HEX('')`)
|
||||
{
|
||||
--let $available_n= $available_n,nt_$n
|
||||
}
|
||||
if (`SELECT HEX(@check_temp) = HEX('')`)
|
||||
{
|
||||
--let $available_n= nt_$n
|
||||
}
|
||||
--dec $n
|
||||
}
|
||||
|
||||
#
|
||||
# Creates T-tables that are automatically dropped and recreated
|
||||
# when a command ends.
|
||||
#
|
||||
--let $n= $tot_table
|
||||
while (`SELECT $n != 0`)
|
||||
{
|
||||
--eval DROP TABLE IF EXISTS tt_$n
|
||||
--eval CREATE TABLE tt_$n ( id INT ) ENGINE = Innodb
|
||||
--disable_query_log
|
||||
--eval SET @check_temp='$available_t'
|
||||
--enable_query_log
|
||||
#
|
||||
# Updates the $available_t that keeps track of the created
|
||||
# T-tables.
|
||||
#
|
||||
if (`SELECT HEX(@check_temp) != HEX('')`)
|
||||
{
|
||||
--let $available_t= $available_t,tt_$n
|
||||
}
|
||||
if (`SELECT HEX(@check_temp) = HEX('')`)
|
||||
{
|
||||
--let $available_t= tt_$n
|
||||
}
|
||||
--dec $n
|
||||
}
|
||||
|
||||
--let $dropped_t_temp=
|
||||
--let $dropped_n_temp=
|
||||
|
||||
--let $dropped_t=
|
||||
--let $dropped_n=
|
||||
|
||||
let $pos_trans_command= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||
|
||||
SET @commands= '';
|
||||
}
|
||||
|
||||
#
|
||||
# Drops tables and synchronizes master and slave. Note that temporary
|
||||
# tables are not explitcily dropped as they will be dropped while
|
||||
# closing the connection.
|
||||
#
|
||||
if (`SELECT HEX(@commands) = HEX('clean')`)
|
||||
{
|
||||
connection master;
|
||||
|
||||
DROP TABLE IF EXISTS tt_xx_1;
|
||||
|
||||
DROP TABLE IF EXISTS nt_xx_1;
|
||||
|
||||
--let $n= $tot_table
|
||||
while (`SELECT $n != 0`)
|
||||
{
|
||||
--eval DROP TABLE IF EXISTS nt_$n
|
||||
--dec $n
|
||||
}
|
||||
|
||||
--let $n= $tot_table
|
||||
while (`SELECT $n != 0`)
|
||||
{
|
||||
--eval DROP TABLE IF EXISTS tt_$n
|
||||
--dec $n
|
||||
}
|
||||
|
||||
sync_slave_with_master;
|
||||
|
||||
SET @commands= '';
|
||||
}
|
||||
|
||||
#
|
||||
# This is the core of the test is responsible for processing
|
||||
# the following commands:
|
||||
#
|
||||
# B - Begin
|
||||
# C - Commit
|
||||
# R - Rollback
|
||||
#
|
||||
#
|
||||
# T - Inserts a row into a T-table
|
||||
# N-Temp - Inserts a row into a temporary N-table.
|
||||
#
|
||||
#
|
||||
# T-SELECT-N-Temp - Selects from a temporary N-table and inserts
|
||||
# into a T-table.
|
||||
# N-SELECT-N-Temp - Selects from a temporary N-table and inserts
|
||||
# into a N-table.
|
||||
# T-SELECT-T-Temp - Selects from a temporary T-table and inserts
|
||||
# into a T-table.
|
||||
# N-SELECT-T-Temp - Selects from a temporary T-table and inserts
|
||||
# into a N-table.
|
||||
#
|
||||
#
|
||||
# Create-N-Temp - Creates a temporary N-table if a temporary N-table
|
||||
# was dropped before
|
||||
# Create-T-Temp - Creates a temporary T-table if a temporary T-table
|
||||
# was dropped before
|
||||
#
|
||||
#
|
||||
# Drop-Temp-T-Temp - Drops a temporary T-table if there is any
|
||||
# Drop-Temp-N-Temp - Drops a temporary N-table if there is any
|
||||
# Drop-Temp-TN-Temp - Drops both a temporary T-table and N-table if there
|
||||
# is any
|
||||
# Drop-Temp-TT-Temp - Drops two temporary T-tables if there is any
|
||||
# Drop-Temp-NN-Temp - Drops two temporary N-tables if there is any
|
||||
# Drop-Temp-Xe-Temp - Tries to drop a temporary table that does not exist
|
||||
# Drop-Temp-NXe-Temp - Drops a temporary N-table if there is any and
|
||||
# a temporary table that does not exist
|
||||
# Drop-Temp-TXe-Temp - Drops a temporary T-table if there is any and
|
||||
# a temporary table that does not exist
|
||||
#
|
||||
#
|
||||
# Drop-Temp-If-Xe-Temp - Tries to drop a temporary table that does not exist
|
||||
# Drop-Temp-If-TXe-Temp - Drops a temporary T-table if there is any and
|
||||
# a temporary table that does not exist
|
||||
#
|
||||
#
|
||||
# Drop-T - Drops a T-table if there is any
|
||||
# Drop-N - Drops a N-table if there is any
|
||||
# Drop-Xe - Tries to drop a table that does not exist
|
||||
# Drop-TXe - Drops a T-table if there is any and a table that does
|
||||
# not exist
|
||||
# Drop-NXe - Drops a N-table if there is any and a table that does
|
||||
# not exist
|
||||
# Drop-TN - Drops both a T-table and N-table if there is any
|
||||
# Drop-TT - Drops two T-tables if there is any
|
||||
# Drop-NN - Drops two N-tables if there is any
|
||||
# Drop-N-TN-Temp - Drops a N-table and both a temporary T-table and
|
||||
# N-table if there is any
|
||||
#
|
||||
#
|
||||
# Drop-If-Xe - Tries to drop a table that does not exist
|
||||
# Drop-If-TXe - Drops a T-table if there is any and a table that does
|
||||
# not exist
|
||||
# Drop-If-NXe - Drops a N-table if there is any and a table that does
|
||||
# not exist
|
||||
#
|
||||
while (`SELECT HEX(@commands) != HEX('')`)
|
||||
{
|
||||
--disable_query_log
|
||||
SET @command= SUBSTRING_INDEX(@commands, ' ', 1);
|
||||
let $command= `SELECT @command`;
|
||||
--eval SET @check_commands= '$commands'
|
||||
if (`SELECT HEX(@check_commands) = HEX('''')`)
|
||||
{
|
||||
let $commands= `SELECT @commands`;
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('B')`)
|
||||
{
|
||||
--enable_query_log
|
||||
eval BEGIN;
|
||||
--disable_query_log
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('T')`)
|
||||
{
|
||||
--enable_query_log
|
||||
eval INSERT INTO tt_xx_1() VALUES (1);
|
||||
--disable_query_log
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('N')`)
|
||||
{
|
||||
--enable_query_log
|
||||
eval INSERT INTO nt_xx_1() VALUES (1);
|
||||
--disable_query_log
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('N-Temp')`)
|
||||
{
|
||||
--enable_query_log
|
||||
eval INSERT INTO nt_tmp_xx_1() VALUES (1);
|
||||
--disable_query_log
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('N-SELECT-N-Temp')`)
|
||||
{
|
||||
--enable_query_log
|
||||
eval INSERT INTO nt_xx_1 SELECT * FROM nt_tmp_xx_1;
|
||||
--disable_query_log
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('N-SELECT-T-Temp')`)
|
||||
{
|
||||
--enable_query_log
|
||||
eval INSERT INTO nt_xx_1 SELECT * FROM tt_tmp_xx_1;
|
||||
--disable_query_log
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('T-SELECT-N-Temp')`)
|
||||
{
|
||||
--enable_query_log
|
||||
eval INSERT INTO tt_xx_1 SELECT * FROM nt_tmp_xx_1;
|
||||
--disable_query_log
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('T-SELECT-T-Temp')`)
|
||||
{
|
||||
--enable_query_log
|
||||
eval INSERT INTO tt_xx_1 SELECT * FROM tt_tmp_xx_1;
|
||||
--disable_query_log
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('Create-N-Temp') || HEX(@command) = HEX('Create-T-Temp')`)
|
||||
{
|
||||
if (`SELECT HEX(@command) = HEX('Create-N-Temp')`)
|
||||
{
|
||||
--let $dropped_temp=$dropped_n_temp
|
||||
--let $available_temp=$available_n_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Create-T-Temp')`)
|
||||
{
|
||||
--let $dropped_temp=$dropped_t_temp
|
||||
--let $available_temp=$available_t_temp
|
||||
}
|
||||
|
||||
--eval SET @check_temp='$dropped_temp'
|
||||
if (`SELECT HEX(@check_temp) != HEX('')`)
|
||||
{
|
||||
SET @temp= SUBSTRING_INDEX(@check_temp, ',', 1);
|
||||
let $table=`SELECT @temp`;
|
||||
--eval SET @check_temp='$available_temp'
|
||||
if (`SELECT HEX(@check_temp) != HEX('')`)
|
||||
{
|
||||
--let $available_temp= $available_temp,$table
|
||||
}
|
||||
if (`SELECT HEX(@check_temp) = HEX('')`)
|
||||
{
|
||||
--let $available_temp= $table
|
||||
}
|
||||
--eval SET @check_temp='$dropped_temp'
|
||||
--eval SET @table_temp='$table'
|
||||
SET @check_temp= LTRIM(SUBSTRING(@check_temp, LENGTH(@table_temp) + 2));
|
||||
--let $dropped_temp= `SELECT @check_temp`
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('Create-N-Temp')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval CREATE TEMPORARY TABLE $table ( id INT ) engine= MyIsam
|
||||
--disable_query_log
|
||||
|
||||
--let $available_n_temp= $available_temp
|
||||
--let $dropped_n_temp= $dropped_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Create-T-Temp')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval CREATE TEMPORARY TABLE $table ( id INT ) engine= Innodb
|
||||
--disable_query_log
|
||||
|
||||
--let $available_t_temp= $available_temp
|
||||
--let $dropped_t_temp= $dropped_temp
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Temp-N-Temp') || HEX(@command) = HEX('Drop-Temp-T-Temp') || HEX(@command) = HEX('Drop-T') || HEX(@command) = HEX('Drop-N')`)
|
||||
{
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Temp-N-Temp')`)
|
||||
{
|
||||
--let $dropped_temp=$dropped_n_temp
|
||||
--let $available_temp=$available_n_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Temp-T-Temp')`)
|
||||
{
|
||||
--let $dropped_temp=$dropped_t_temp
|
||||
--let $available_temp=$available_t_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-N')`)
|
||||
{
|
||||
--let $dropped_temp=$dropped_n
|
||||
--let $available_temp=$available_n
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-T')`)
|
||||
{
|
||||
--let $dropped_temp=$dropped_t
|
||||
--let $available_temp=$available_t
|
||||
}
|
||||
|
||||
--eval SET @check_temp='$available_temp'
|
||||
if (`SELECT HEX(@check_temp) != HEX('')`)
|
||||
{
|
||||
SET @temp= SUBSTRING_INDEX(@check_temp, ',', 1);
|
||||
let $table=`SELECT @temp`;
|
||||
--eval SET @check_temp='$dropped_temp'
|
||||
if (`SELECT HEX(@check_temp) != HEX('')`)
|
||||
{
|
||||
--let $dropped_temp= $dropped_temp,$table
|
||||
}
|
||||
if (`SELECT HEX(@check_temp) = HEX('')`)
|
||||
{
|
||||
--let $dropped_temp= $table
|
||||
}
|
||||
--eval SET @check_temp='$available_temp'
|
||||
--eval SET @table_temp='$table'
|
||||
SET @check_temp= LTRIM(SUBSTRING(@check_temp, LENGTH(@table_temp) + 2));
|
||||
--let $available_temp= `SELECT @check_temp`
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Temp-N-Temp')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TEMPORARY TABLE $table
|
||||
--disable_query_log
|
||||
|
||||
--let $available_n_temp= $available_temp
|
||||
--let $dropped_n_temp= $dropped_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Temp-T-Temp')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TEMPORARY TABLE $table
|
||||
--disable_query_log
|
||||
|
||||
--let $available_t_temp= $available_temp
|
||||
--let $dropped_t_temp= $dropped_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-N')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TABLE $table
|
||||
--disable_query_log
|
||||
|
||||
--let $available_n= $available_temp
|
||||
--let $dropped_n= $dropped_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-T')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TABLE $table
|
||||
--disable_query_log
|
||||
|
||||
--let $available_t= $available_temp
|
||||
--let $dropped_t= $dropped_temp
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Temp-Xe-Temp')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TEMPORARY TABLE tt_xx_1
|
||||
--disable_query_log
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Temp-If-Xe-Temp')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TEMPORARY TABLE IF EXISTS tt_xx_1
|
||||
--disable_query_log
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Xe')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TABLE xx_1
|
||||
--disable_query_log
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('Drop-If-Xe')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TABLE IF EXISTS xx_1
|
||||
--disable_query_log
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Temp-NXe-Temp') || HEX(@command) = HEX('Drop-Temp-TXe-Temp') || HEX(@command) = HEX('Drop-NXe') || HEX(@command) = HEX('Drop-TXe') || HEX(@command) = HEX('Drop-Temp-If-NXe-Temp') || HEX(@command) = HEX('Drop-Temp-If-TXe-Temp') || HEX(@command) = HEX('Drop-If-NXe') || HEX(@command) = HEX('Drop-If-TXe')`)
|
||||
{
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Temp-NXe-Temp') || HEX(@command) = HEX('Drop-Temp-If-NXe-Temp')`)
|
||||
{
|
||||
--let $dropped_temp=$dropped_n_temp
|
||||
--let $available_temp=$available_n_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Temp-TXe-Temp') || HEX(@command) = HEX('Drop-Temp-If-TXe-Temp')`)
|
||||
{
|
||||
--let $dropped_temp=$dropped_t_temp
|
||||
--let $available_temp=$available_t_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-NXe') || HEX(@command) = HEX('Drop-If-NXe')`)
|
||||
{
|
||||
--let $dropped_temp=$dropped_n
|
||||
--let $available_temp=$available_n
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-TXe') || HEX(@command) = HEX('Drop-If-TXe')`)
|
||||
{
|
||||
--let $dropped_temp=$dropped_t
|
||||
--let $available_temp=$available_t
|
||||
}
|
||||
|
||||
--eval SET @check_temp='$available_temp'
|
||||
if (`SELECT HEX(@check_temp) != HEX('')`)
|
||||
{
|
||||
SET @temp= SUBSTRING_INDEX(@check_temp, ',', 1);
|
||||
let $table=`SELECT @temp`;
|
||||
--eval SET @check_temp='$dropped_temp'
|
||||
if (`SELECT HEX(@check_temp) != HEX('')`)
|
||||
{
|
||||
--let $dropped_temp= $dropped_temp,$table
|
||||
}
|
||||
if (`SELECT HEX(@check_temp) = HEX('')`)
|
||||
{
|
||||
--let $dropped_n_temp= $table
|
||||
}
|
||||
--eval SET @check_temp='$available_temp'
|
||||
--eval SET @table_temp='$table'
|
||||
SET @check_temp= LTRIM(SUBSTRING(@check_temp, LENGTH(@table_temp) + 2));
|
||||
--let $available_temp= `SELECT @check_temp`
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Temp-NXe-Temp')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TEMPORARY TABLE $table, tt_1
|
||||
--disable_query_log
|
||||
|
||||
--let $available_n_temp= $available_temp
|
||||
--let $dropped_n_temp= $dropped_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Temp-If-NXe-Temp')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TEMPORARY TABLE IF EXISTS $table, tt_1
|
||||
--disable_query_log
|
||||
|
||||
--let $available_n_temp= $available_temp
|
||||
--let $dropped_n_temp= $dropped_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Temp-TXe-Temp')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TEMPORARY TABLE $table, tt_1
|
||||
--disable_query_log
|
||||
|
||||
--let $available_t_temp= $available_temp
|
||||
--let $dropped_t_temp= $dropped_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Temp-If-TXe-Temp')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TEMPORARY TABLE IF EXISTS $table, tt_1
|
||||
--disable_query_log
|
||||
|
||||
--let $available_t_temp= $available_temp
|
||||
--let $dropped_t_temp= $dropped_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-NXe')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TABLE $table, xx_1
|
||||
--disable_query_log
|
||||
|
||||
--let $available_n= $available_temp
|
||||
--let $dropped_n= $dropped_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-If-NXe')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TABLE IF EXISTS $table, xx_1
|
||||
--disable_query_log
|
||||
|
||||
--let $available_n= $available_temp
|
||||
--let $dropped_n= $dropped_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-TXe')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TABLE $table, xx_1
|
||||
--disable_query_log
|
||||
|
||||
--let $available_t= $available_temp
|
||||
--let $dropped_t= $dropped_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-If-TXe')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TABLE IF EXISTS $table, xx_1
|
||||
--disable_query_log
|
||||
|
||||
--let $available_t= $available_temp
|
||||
--let $dropped_t= $dropped_temp
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Temp-NN-Temp') || HEX(@command) = HEX('Drop-Temp-TT-Temp') || HEX(@command) = HEX('Drop-NN') || HEX(@command) = HEX('Drop-TT')`)
|
||||
{
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Temp-NN-Temp')`)
|
||||
{
|
||||
--let $dropped_temp=$dropped_n_temp
|
||||
--let $available_temp=$available_n_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Temp-TT-Temp')`)
|
||||
{
|
||||
--let $dropped_temp=$dropped_t_temp
|
||||
--let $available_temp=$available_t_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-NN')`)
|
||||
{
|
||||
--let $dropped_temp=$dropped_n
|
||||
--let $available_temp=$available_n
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-TT')`)
|
||||
{
|
||||
--let $dropped_temp=$dropped_t
|
||||
--let $available_temp=$available_t
|
||||
}
|
||||
|
||||
--eval SET @check_temp='$available_temp'
|
||||
if (`SELECT HEX(@check_temp) != HEX('')`)
|
||||
{
|
||||
--let $n= 2
|
||||
while (`SELECT HEX(@check_temp) != HEX('') && $n != 0`)
|
||||
{
|
||||
SET @temp= SUBSTRING_INDEX(@check_temp, ',', 1);
|
||||
let $table=`SELECT @temp`;
|
||||
--eval SET @check_temp='$dropped_temp'
|
||||
if (`SELECT HEX(@check_temp) != HEX('')`)
|
||||
{
|
||||
--let $dropped_temp= $dropped_temp,$table
|
||||
}
|
||||
if (`SELECT HEX(@check_temp) = HEX('')`)
|
||||
{
|
||||
--let $dropped_temp= $table
|
||||
}
|
||||
if (`SELECT $n = 1`)
|
||||
{
|
||||
--let $table_1= $table
|
||||
}
|
||||
if (`SELECT $n = 2`)
|
||||
{
|
||||
--let $table_2= $table
|
||||
}
|
||||
|
||||
--dec $n
|
||||
--eval SET @check_temp='$available_temp'
|
||||
--eval SET @table_temp='$table'
|
||||
SET @check_temp= LTRIM(SUBSTRING(@check_temp, LENGTH(@table_temp) + 2));
|
||||
--let $available_temp= `SELECT @check_temp`
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Temp-NN-Temp') && $n = 0`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TEMPORARY TABLE $table_1, $table_2
|
||||
--disable_query_log
|
||||
|
||||
--let $available_n_temp= $available_temp
|
||||
--let $dropped_n_temp= $dropped_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Temp-TT-Temp') && $n= 0`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TEMPORARY TABLE $table_1, $table_2
|
||||
--disable_query_log
|
||||
|
||||
--let $available_t_temp= $available_temp
|
||||
--let $dropped_t_temp= $dropped_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-NN') && $n = 0`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TABLE $table_1, $table_2
|
||||
--disable_query_log
|
||||
|
||||
--let $available_n= $available_temp
|
||||
--let $dropped_n= $dropped_temp
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-TT') && $n= 0`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TABLE $table_1, $table_2
|
||||
--disable_query_log
|
||||
|
||||
--let $available_t= $available_temp
|
||||
--let $dropped_t= $dropped_temp
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('Drop-Temp-TN-Temp')`)
|
||||
{
|
||||
--eval SET @check_temp_t='$available_t_temp'
|
||||
--eval SET @check_temp_n='$available_n_temp'
|
||||
if (`SELECT HEX(@check_temp_t) != HEX('') && HEX(@check_temp_n) != HEX('')`)
|
||||
{
|
||||
SET @temp_t= SUBSTRING_INDEX(@check_temp_t, ',', 1);
|
||||
let $table_t=`SELECT @temp_t`;
|
||||
--eval SET @check_temp_t='$dropped_t_temp'
|
||||
if (`SELECT HEX(@check_temp_t) != HEX('')`)
|
||||
{
|
||||
--let $dropped_t_temp= $dropped_t_temp,$table_t
|
||||
}
|
||||
if (`SELECT HEX(@check_temp_t) = HEX('')`)
|
||||
{
|
||||
--let $dropped_t_temp= $table_t
|
||||
}
|
||||
--eval SET @check_temp='$available_t_temp'
|
||||
--eval SET @table_temp='$table_t'
|
||||
SET @check_temp= LTRIM(SUBSTRING(@check_temp, LENGTH(@table_temp) + 2));
|
||||
--let $available_t_temp= `SELECT @check_temp`
|
||||
|
||||
SET @temp_n= SUBSTRING_INDEX(@check_temp_n, ',', 1);
|
||||
let $table_n=`SELECT @temp_n`;
|
||||
--eval SET @check_temp_n='$dropped_n_temp'
|
||||
if (`SELECT HEX(@check_temp_n) != HEX('')`)
|
||||
{
|
||||
--let $dropped_n_temp= $dropped_n_temp,$table_n
|
||||
}
|
||||
if (`SELECT HEX(@check_temp_n) = HEX('')`)
|
||||
{
|
||||
--let $dropped_n_temp= $table_n
|
||||
}
|
||||
--eval SET @check_temp='$available_n_temp'
|
||||
--eval SET @table_temp='$table_n'
|
||||
SET @check_temp= LTRIM(SUBSTRING(@check_temp, LENGTH(@table_temp) + 2));
|
||||
--let $available_t_temp= `SELECT @check_temp`
|
||||
|
||||
--enable_query_log
|
||||
--eval DROP TEMPORARY TABLE $table_t, $table_n
|
||||
--disable_query_log
|
||||
}
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('Drop-TN')`)
|
||||
{
|
||||
--eval SET @check_temp_t='$available_t'
|
||||
--eval SET @check_temp_n='$available_n'
|
||||
if (`SELECT HEX(@check_temp_t) != HEX('') && HEX(@check_temp_n) != HEX('')`)
|
||||
{
|
||||
SET @temp_t= SUBSTRING_INDEX(@check_temp_t, ',', 1);
|
||||
let $table_t=`SELECT @temp_t`;
|
||||
--eval SET @check_temp_t='$dropped_t'
|
||||
if (`SELECT HEX(@check_temp_t) != HEX('')`)
|
||||
{
|
||||
--let $dropped_t= $dropped_t,$table_t
|
||||
}
|
||||
if (`SELECT HEX(@check_temp_t) = HEX('')`)
|
||||
{
|
||||
--let $dropped_t= $table_t
|
||||
}
|
||||
--eval SET @check_temp='$available_t'
|
||||
--eval SET @table_temp='$table_t'
|
||||
SET @check_temp= LTRIM(SUBSTRING(@check_temp, LENGTH(@table_temp) + 2));
|
||||
--let $available_t= `SELECT @check_temp`
|
||||
|
||||
SET @temp_n= SUBSTRING_INDEX(@check_temp_n, ',', 1);
|
||||
let $table_n=`SELECT @temp_n`;
|
||||
--eval SET @check_temp_n='$dropped_n'
|
||||
if (`SELECT HEX(@check_temp_n) != HEX('')`)
|
||||
{
|
||||
--let $dropped_n= $dropped_n,$table_n
|
||||
}
|
||||
if (`SELECT HEX(@check_temp_n) = HEX('')`)
|
||||
{
|
||||
--let $dropped_n= $table_n
|
||||
}
|
||||
--eval SET @check_temp='$available_n'
|
||||
--eval SET @table_temp='$table_n'
|
||||
SET @check_temp= LTRIM(SUBSTRING(@check_temp, LENGTH(@table_temp) + 2));
|
||||
--let $available_t= `SELECT @check_temp`
|
||||
|
||||
--enable_query_log
|
||||
--eval DROP TABLE $table_t, $table_n
|
||||
--disable_query_log
|
||||
}
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('Drop-N-TN-Temp') || HEX(@command) = HEX('Drop-TN-Temp')`)
|
||||
{
|
||||
--eval SET @check_temp_t='$available_t_temp'
|
||||
--eval SET @check_temp_n='$available_n_temp'
|
||||
if (`SELECT HEX(@command) = HEX('Drop-N-TN-Temp')`)
|
||||
{
|
||||
--eval SET @check_n='$available_n'
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-TN-Temp')`)
|
||||
{
|
||||
#
|
||||
# Just to be possible to go through the next if...
|
||||
#
|
||||
--eval SET @check_n='...'
|
||||
}
|
||||
if (`SELECT HEX(@check_temp_t) != HEX('') && HEX(@check_temp_n) != HEX('') && HEX(@check_n) != HEX('')`)
|
||||
{
|
||||
SET @temp_t= SUBSTRING_INDEX(@check_temp_t, ',', 1);
|
||||
let $table_temp_t=`SELECT @temp_t`;
|
||||
--eval SET @check_temp_t='$dropped_t_temp'
|
||||
if (`SELECT HEX(@check_temp_t) != HEX('')`)
|
||||
{
|
||||
--let $dropped_t_temp= $dropped_t_temp,$table_temp_t
|
||||
}
|
||||
if (`SELECT HEX(@check_temp_t) = HEX('')`)
|
||||
{
|
||||
--let $dropped_t_temp= $table_temp_t
|
||||
}
|
||||
--eval SET @check_temp='$available_t_temp'
|
||||
--eval SET @table_temp='$table_temp_t'
|
||||
SET @check_temp= LTRIM(SUBSTRING(@check_temp, LENGTH(@table_temp) + 2));
|
||||
--let $available_t_temp= `SELECT @check_temp`
|
||||
|
||||
SET @temp_n= SUBSTRING_INDEX(@check_temp_n, ',', 1);
|
||||
let $table_temp_n=`SELECT @temp_n`;
|
||||
--eval SET @check_temp_n='$dropped_n_temp'
|
||||
if (`SELECT HEX(@check_temp_n) != HEX('')`)
|
||||
{
|
||||
--let $dropped_n_temp= $dropped_n_temp,$table_temp_n
|
||||
}
|
||||
if (`SELECT HEX(@check_temp_n) = HEX('')`)
|
||||
{
|
||||
--let $dropped_n_temp= $table_temp_n
|
||||
}
|
||||
--eval SET @check_temp='$available_n_temp'
|
||||
--eval SET @table_temp='$table_temp_n'
|
||||
SET @check_temp= LTRIM(SUBSTRING(@check_temp, LENGTH(@table_temp) + 2));
|
||||
--let $available_n_temp= `SELECT @check_temp`
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('Drop-N-TN-Temp')`)
|
||||
{
|
||||
SET @temp_n= SUBSTRING_INDEX(@check_n, ',', 1);
|
||||
let $table_n=`SELECT @temp_n`;
|
||||
--eval SET @check_n='$dropped_n'
|
||||
if (`SELECT HEX(@check_n) != HEX('')`)
|
||||
{
|
||||
--let $dropped_n= $dropped_n,$table_n
|
||||
}
|
||||
if (`SELECT HEX(@check_n) = HEX('')`)
|
||||
{
|
||||
--let $dropped_n= $table_n
|
||||
}
|
||||
--eval SET @check_temp='$available_n'
|
||||
--eval SET @table_temp='$table_n'
|
||||
SET @check_temp= LTRIM(SUBSTRING(@check_temp, LENGTH(@table_temp) + 2));
|
||||
--let $available_n= `SELECT @check_temp`
|
||||
|
||||
--enable_query_log
|
||||
--eval DROP TABLE $table_temp_t, $table_temp_n, $table_n
|
||||
--disable_query_log
|
||||
}
|
||||
if (`SELECT HEX(@command) = HEX('Drop-TN-Temp')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--eval DROP TABLE $table_temp_t, $table_temp_n
|
||||
--disable_query_log
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('C')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--error 0, ER_GET_ERRMSG
|
||||
eval COMMIT;
|
||||
--disable_query_log
|
||||
}
|
||||
|
||||
if (`SELECT HEX(@command) = HEX('R')`)
|
||||
{
|
||||
--enable_query_log
|
||||
--error 0, ER_GET_ERRMSG
|
||||
eval ROLLBACK;
|
||||
--disable_query_log
|
||||
}
|
||||
|
||||
SET @commands= LTRIM(SUBSTRING(@commands, LENGTH(@command) + 1));
|
||||
if (`SELECT HEX(@commands) = HEX('')`)
|
||||
{
|
||||
let $binlog_start= $pos_trans_command;
|
||||
--echo -b-b-b-b-b-b-b-b-b-b-b- >> $commands << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
--source include/show_binlog_events.inc
|
||||
--echo -e-e-e-e-e-e-e-e-e-e-e- >> $commands << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
--echo
|
||||
|
||||
--disable_warnings
|
||||
--let $available_n_temp=
|
||||
--let $dropped_n_temp=
|
||||
--let $n= $tot_table
|
||||
while (`SELECT $n != 0`)
|
||||
{
|
||||
--eval DROP TEMPORARY TABLE IF EXISTS nt_tmp_$n
|
||||
--eval CREATE TEMPORARY TABLE nt_tmp_$n ( id INT ) ENGINE = MyIsam
|
||||
--eval SET @check_temp='$available_n_temp'
|
||||
if (`SELECT HEX(@check_temp) != HEX('')`)
|
||||
{
|
||||
--let $available_n_temp= $available_n_temp,nt_tmp_$n
|
||||
}
|
||||
if (`SELECT HEX(@check_temp) = HEX('')`)
|
||||
{
|
||||
--let $available_n_temp= nt_tmp_$n
|
||||
}
|
||||
--dec $n
|
||||
}
|
||||
|
||||
--let $available_t_temp=
|
||||
--let $dropped_t_temp=
|
||||
--let $n= $tot_table
|
||||
while (`SELECT $n != 0`)
|
||||
{
|
||||
--eval DROP TEMPORARY TABLE IF EXISTS tt_tmp_$n
|
||||
--eval CREATE TEMPORARY TABLE tt_tmp_$n ( id INT ) ENGINE = Innodb
|
||||
--eval SET @check_temp='$available_t_temp'
|
||||
if (`SELECT HEX(@check_temp) != HEX('')`)
|
||||
{
|
||||
--let $available_t_temp= $available_t_temp,tt_tmp_$n
|
||||
}
|
||||
if (`SELECT HEX(@check_temp) = HEX('')`)
|
||||
{
|
||||
--let $available_t_temp= tt_tmp_$n
|
||||
}
|
||||
--dec $n
|
||||
}
|
||||
|
||||
--let $available_t=
|
||||
--let $dropped_t=
|
||||
--let $n= $tot_table
|
||||
while (`SELECT $n != 0`)
|
||||
{
|
||||
--eval DROP TABLE IF EXISTS tt_$n
|
||||
--eval CREATE TABLE tt_$n ( id INT ) ENGINE = Innodb
|
||||
--eval SET @check_temp='$available_t'
|
||||
if (`SELECT HEX(@check_temp) != HEX('')`)
|
||||
{
|
||||
--let $available_t= $available_t,tt_$n
|
||||
}
|
||||
if (`SELECT HEX(@check_temp) = HEX('')`)
|
||||
{
|
||||
--let $available_t= tt_$n
|
||||
}
|
||||
--dec $n
|
||||
}
|
||||
|
||||
--let $available_n=
|
||||
--let $dropped_n=
|
||||
--let $n= $tot_table
|
||||
while (`SELECT $n != 0`)
|
||||
{
|
||||
--eval DROP TABLE IF EXISTS nt_$n
|
||||
--eval CREATE TABLE nt_$n ( id INT ) ENGINE = MyIsam
|
||||
--eval SET @check_temp='$available_n'
|
||||
if (`SELECT HEX(@check_temp) != HEX('')`)
|
||||
{
|
||||
--let $available_n= $available_n,nt_$n
|
||||
}
|
||||
if (`SELECT HEX(@check_temp) = HEX('')`)
|
||||
{
|
||||
--let $available_n= nt_$n
|
||||
}
|
||||
--dec $n
|
||||
}
|
||||
--enable_warnings
|
||||
|
||||
let $pos_trans_command= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||
let $commands= '';
|
||||
}
|
||||
--enable_query_log
|
||||
}
|
389
mysql-test/extra/rpl_tests/rpl_drop_create_temp_table.test
Normal file
389
mysql-test/extra/rpl_tests/rpl_drop_create_temp_table.test
Normal file
@ -0,0 +1,389 @@
|
||||
###############################################################################
|
||||
# In this test case, we check how changes to temporary tables are written
|
||||
# to the binary log.
|
||||
#
|
||||
# (TODO --- GET INFO AS SOON AS THE SITE IS AVAILABLE)
|
||||
#
|
||||
# This test uses the commands available at:
|
||||
# extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
#
|
||||
###############################################################################
|
||||
|
||||
|
||||
--echo #########################################################################
|
||||
--echo # CONFIGURATION
|
||||
--echo #########################################################################
|
||||
|
||||
call mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT.");
|
||||
|
||||
--let $tot_table= 2
|
||||
SET @commands= 'configure';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
--echo #########################################################################
|
||||
--echo # 1 - Tables dropped by "DROP TEMPORARY TABLE"
|
||||
--echo #########################################################################
|
||||
connection master;
|
||||
|
||||
--echo
|
||||
--echo #
|
||||
--echo #1) Generates in the binlog what follows:
|
||||
--echo #
|
||||
SET @commands= 'Drop-Temp-T-Temp';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-Temp-N-Temp';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-Temp-Xe-Temp';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-Temp-If-Xe-Temp';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-Temp-TXe-Temp';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-Temp-If-TXe-Temp';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-Temp-NXe-Temp';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-Temp-If-NXe-Temp';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-Temp-TN-Temp';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-Temp-TT-Temp';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-Temp-NN-Temp';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
|
||||
--echo
|
||||
--echo #
|
||||
--echo #2) Generates in the binlog what follows:
|
||||
--echo #
|
||||
SET @commands= 'B T Drop-Temp-T-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-T-Temp N Drop-Temp-T-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-N-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-N-Temp N Drop-Temp-N-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-Xe-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-Xe-Temp N Drop-Temp-Xe-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-If-Xe-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-If-Xe-Temp N Drop-Temp-If-Xe-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-TXe-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-TXe-Temp N Drop-Temp-TXe-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-If-TXe-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-If-TXe-Temp N Drop-Temp-If-TXe-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-NXe-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-NXe-Temp N Drop-Temp-NXe-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-If-NXe-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-If-NXe-Temp N Drop-Temp-If-NXe-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-TN-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-TN-Temp N Drop-Temp-TN-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-TT-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-TT-Temp N Drop-Temp-TT-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-NN-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-NN-Temp N Drop-Temp-NN-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
|
||||
--echo
|
||||
--echo #
|
||||
--echo #3) Generates in the binlog what follows:
|
||||
--echo #
|
||||
SET @commands= 'B T Drop-Temp-T-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-T-Temp N Drop-Temp-T-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-N-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-N-Temp N Drop-Temp-N-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-Xe-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-Xe-Temp N Drop-Temp-Xe-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-If-Xe-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-If-Xe-Temp N Drop-Temp-If-Xe-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-TXe-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-TXe-Temp N Drop-Temp-TXe-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-If-TXe-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-If-TXe-Temp N Drop-Temp-If-TXe-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-NXe-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-NXe-Temp N Drop-Temp-NXe-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-If-NXe-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-If-NXe-Temp N Drop-Temp-If-NXe-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-TN-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-TN-Temp N Drop-Temp-TN-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-TT-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-TT-Temp N Drop-Temp-TT-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-NN-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Temp-NN-Temp N Drop-Temp-NN-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
|
||||
--echo #########################################################################
|
||||
--echo # 2 - Tables dropped by "DROP TABLE"
|
||||
--echo #########################################################################
|
||||
connection master;
|
||||
|
||||
--echo
|
||||
--echo #
|
||||
--echo #1) Generates in the binlog what follows:
|
||||
--echo #
|
||||
SET @commands= 'Drop-T';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-N';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-Xe';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-If-Xe';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-TXe';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-If-TXe';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-NXe';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-If-NXe';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-TN';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-TT';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-NN';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-N-TN-Temp';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-TN-Temp';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
--echo
|
||||
--echo #
|
||||
--echo #2) Generates in the binlog what follows:
|
||||
--echo #
|
||||
SET @commands= 'B T Drop-T';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-N';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-Xe';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-If-Xe';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-TXe';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-If-TXe';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-NXe';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-If-NXe';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-TN';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-TT';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-NN';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-N-TN-Temp';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B T Drop-TN-Temp';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
--echo #########################################################################
|
||||
--echo # 3 - CREATE TEMPORARY TABLE
|
||||
--echo #########################################################################
|
||||
connection master;
|
||||
|
||||
--echo
|
||||
--echo #
|
||||
--echo #1) Generates in the binlog what follows:
|
||||
--echo #
|
||||
SET @commands= 'Drop-Temp-N-Temp Create-N-Temp Drop-Temp-N-Temp Drop-Temp-N-Temp';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'Drop-Temp-T-Temp Create-T-Temp Drop-Temp-T-Temp Drop-Temp-T-Temp';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
--echo
|
||||
--echo #
|
||||
--echo #2) Generates in the binlog what follows:
|
||||
--echo #
|
||||
SET @commands= 'B T Drop-Temp-N-Temp Create-N-Temp Drop-Temp-N-Temp Drop-Temp-N-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B Drop-Temp-T-Temp Create-T-Temp Drop-Temp-T-Temp Drop-Temp-T-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
--echo
|
||||
--echo #
|
||||
--echo #3) Generates in the binlog what follows:
|
||||
--echo #
|
||||
SET @commands= 'B T Drop-Temp-N-Temp Create-N-Temp Drop-Temp-N-Temp Drop-Temp-N-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B Drop-Temp-T-Temp Create-T-Temp Drop-Temp-T-Temp Drop-Temp-T-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
|
||||
--echo #########################################################################
|
||||
--echo # 4 - CHANGING TEMPORARY TABLES
|
||||
--echo #########################################################################
|
||||
connection master;
|
||||
|
||||
--echo
|
||||
--echo #
|
||||
--echo #1) Generates in the binlog what follows:
|
||||
--echo #
|
||||
SET @commands= 'B N N-Temp N-SELECT-N-Temp N-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B N N-Temp T-SELECT-N-Temp N-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B N N-Temp N-SELECT-T-Temp N-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B N N-Temp T-SELECT-T-Temp N-Temp C';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
--echo
|
||||
--echo
|
||||
--echo #
|
||||
--echo #2) Generates in the binlog what follows:
|
||||
--echo #
|
||||
SET @commands= 'B N N-Temp N-SELECT-N-Temp N-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B N N-Temp T-SELECT-N-Temp N-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B N N-Temp N-SELECT-T-Temp N-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
SET @commands= 'B N N-Temp T-SELECT-T-Temp N-Temp R';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
||||
|
||||
--echo ###################################################################################
|
||||
--echo # CHECK CONSISTENCY
|
||||
--echo ###################################################################################
|
||||
connection master;
|
||||
sync_slave_with_master;
|
||||
|
||||
let $MYSQLD_DATADIR= `SELECT @@datadir`;
|
||||
|
||||
--exec $MYSQL_DUMP --compact --order-by-primary --skip-extended-insert --no-create-info test > $MYSQLD_DATADIR/test-temporary-master.sql
|
||||
--exec $MYSQL_DUMP_SLAVE --compact --order-by-primary --skip-extended-insert --no-create-info test > $MYSQLD_DATADIR/test-temporary-slave.sql
|
||||
--diff_files $MYSQLD_DATADIR/test-temporary-master.sql $MYSQLD_DATADIR/test-temporary-slave.sql
|
||||
|
||||
--echo #########################################################################
|
||||
--echo # CLEAN
|
||||
--echo #########################################################################
|
||||
SET @commands= 'clean';
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.inc
|
@ -1606,3 +1606,41 @@ drop function f1;
|
||||
--echo # End of WL#2649 Number-to-string conversions
|
||||
--echo #
|
||||
|
||||
--echo #
|
||||
--echo # Bug#54668 User variable assignments get wrong type
|
||||
--echo #
|
||||
SET @x=md5('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
SET @x=old_password('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
SET @x=password('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
SET @x=sha('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
SET @x=sha1('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
SET @x=astext(point(1,2));
|
||||
SELECT charset(@x), collation(@x);
|
||||
SET @x=aswkt(point(1,2));
|
||||
SELECT charset(@x), collation(@x);
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # Bug#52159 returning time type from function and empty left join causes debug assertion
|
||||
--echo #
|
||||
CREATE FUNCTION f1() RETURNS TIME RETURN 1;
|
||||
CREATE TABLE t1 (b INT);
|
||||
INSERT INTO t1 VALUES (0);
|
||||
SELECT f1() FROM t1 LEFT JOIN (SELECT 1 AS a FROM t1 LIMIT 0) AS d ON 1 GROUP BY a;
|
||||
DROP FUNCTION f1;
|
||||
DROP TABLE t1;
|
||||
|
||||
SET NAMES latin1;
|
||||
SET sql_mode='';
|
||||
CREATE TABLE t1(a char(215) CHARACTER SET utf8 NOT NULL DEFAULT '', KEY(a));
|
||||
INSERT INTO t1 VALUES ();
|
||||
--disable_warnings
|
||||
SELECT maketime(`a`,`a`,`a`) FROM t1 GROUP BY 1;
|
||||
--enable_warnings
|
||||
DROP TABLE t1;
|
||||
SET sql_mode=default;
|
||||
|
@ -13,7 +13,7 @@ perl;
|
||||
@skipvars=qw/basedir open-files-limit general-log-file log plugin-dir
|
||||
log-slow-queries pid-file slow-query-log-file
|
||||
datadir slave-load-tmpdir tmpdir/;
|
||||
@plugins=qw/innodb ndb archive blackhole federated partition ndbcluster safemalloc debug temp-pool ssl des-key-file
|
||||
@plugins=qw/innodb ndb archive blackhole federated partition ndbcluster debug temp-pool ssl des-key-file
|
||||
thread-concurrency super-large-pages mutex-deadlock-detector null-audit/;
|
||||
@env=qw/MYSQLTEST_VARDIR MYSQL_TEST_DIR MYSQL_LIBDIR MYSQL_CHARSETSDIR MYSQL_SHAREDIR /;
|
||||
$re1=join('|', @skipvars, @plugins);
|
||||
|
@ -253,19 +253,8 @@ sub mtr_report_stats ($) {
|
||||
mtr_warning("can't read $errlog");
|
||||
next;
|
||||
}
|
||||
my $leak_reports_expected= undef;
|
||||
while ( <ERR> )
|
||||
{
|
||||
# There is a test case that purposely provokes a
|
||||
# SAFEMALLOC leak report, even though there is no actual
|
||||
# leak. We need to detect this, and ignore the warning in
|
||||
# that case.
|
||||
if (/Begin safemalloc memory dump:/) {
|
||||
$leak_reports_expected= 1;
|
||||
} elsif (/End safemalloc memory dump./) {
|
||||
$leak_reports_expected= undef;
|
||||
}
|
||||
|
||||
# Skip some non fatal warnings from the log files
|
||||
if (
|
||||
/\"SELECT UNIX_TIMESTAMP\(\)\" failed on master/ or
|
||||
@ -426,9 +415,6 @@ sub mtr_report_stats ($) {
|
||||
}
|
||||
if ( /$pattern/ )
|
||||
{
|
||||
if ($leak_reports_expected) {
|
||||
next;
|
||||
}
|
||||
$found_problems= 1;
|
||||
print WARN basename($errlog) . ": $testname: $_";
|
||||
}
|
||||
|
@ -3881,8 +3881,6 @@ sub mysqld_arguments ($$$$) {
|
||||
|
||||
if ( $opt_valgrind_mysqld )
|
||||
{
|
||||
mtr_add_arg($args, "%s--loose-skip-safemalloc", $prefix);
|
||||
|
||||
if ( $mysql_version_id < 50100 )
|
||||
{
|
||||
mtr_add_arg($args, "%s--skip-bdb", $prefix);
|
||||
@ -4721,7 +4719,6 @@ sub run_check_testcase ($$) {
|
||||
|
||||
mtr_add_arg($args, "--no-defaults");
|
||||
mtr_add_arg($args, "--silent");
|
||||
mtr_add_arg($args, "--skip-safemalloc");
|
||||
mtr_add_arg($args, "--tmpdir=%s", $opt_tmpdir);
|
||||
mtr_add_arg($args, "--character-sets-dir=%s", $path_charsetsdir);
|
||||
|
||||
@ -4804,7 +4801,6 @@ sub run_mysqltest ($) {
|
||||
|
||||
mtr_add_arg($args, "--no-defaults");
|
||||
mtr_add_arg($args, "--silent");
|
||||
mtr_add_arg($args, "--skip-safemalloc");
|
||||
mtr_add_arg($args, "--tmpdir=%s", $opt_tmpdir);
|
||||
mtr_add_arg($args, "--character-sets-dir=%s", $path_charsetsdir);
|
||||
mtr_add_arg($args, "--logdir=%s/log", $opt_vardir);
|
||||
|
@ -123,7 +123,7 @@ $pid_file="mysql_stress_test.pid";
|
||||
$opt_mysqltest= ($^O =~ /mswin32/i) ? "mysqltest.exe" : "mysqltest";
|
||||
$opt_check_tests_file="";
|
||||
# OBM adding a setting for 'max-connect-retries=20' the default of 500 is to high
|
||||
@mysqltest_args=("--silent", "-v", "--skip-safemalloc", "--max-connect-retries=20");
|
||||
@mysqltest_args=("--silent", "-v", "--max-connect-retries=20");
|
||||
|
||||
# Client ip address
|
||||
$client_ip=inet_ntoa((gethostbyname(hostname()))[4]);
|
||||
|
@ -3180,7 +3180,6 @@ sub start_run_one ($$) {
|
||||
mtr_add_arg($args, "--defaults-group-suffix=%s", $mysqld->after('mysqld'));
|
||||
|
||||
mtr_add_arg($args, "--silent");
|
||||
mtr_add_arg($args, "--skip-safemalloc");
|
||||
mtr_add_arg($args, "--test-file=%s", "include/$run.test");
|
||||
|
||||
my $errfile= "$opt_vardir/tmp/$name.err";
|
||||
@ -3759,25 +3758,6 @@ sub extract_server_log ($$) {
|
||||
}
|
||||
$Ferr = undef; # Close error log file
|
||||
|
||||
# mysql_client_test.test sends a COM_DEBUG packet to the server
|
||||
# to provoke a SAFEMALLOC leak report, ignore any warnings
|
||||
# between "Begin/end safemalloc memory dump"
|
||||
if ( grep(/Begin safemalloc memory dump:/, @lines) > 0)
|
||||
{
|
||||
my $discard_lines= 1;
|
||||
foreach my $line ( @lines )
|
||||
{
|
||||
if ($line =~ /Begin safemalloc memory dump:/){
|
||||
$discard_lines = 1;
|
||||
} elsif ($line =~ /End safemalloc memory dump./){
|
||||
$discard_lines = 0;
|
||||
}
|
||||
|
||||
if ($discard_lines){
|
||||
$line = "ignored";
|
||||
}
|
||||
}
|
||||
}
|
||||
return @lines;
|
||||
}
|
||||
|
||||
@ -3873,8 +3853,6 @@ sub start_check_warnings ($$) {
|
||||
|
||||
mtr_add_arg($args, "--defaults-file=%s", $path_config_file);
|
||||
mtr_add_arg($args, "--defaults-group-suffix=%s", $mysqld->after('mysqld'));
|
||||
|
||||
mtr_add_arg($args, "--loose-skip-safemalloc");
|
||||
mtr_add_arg($args, "--test-file=%s", "include/check-warnings.test");
|
||||
|
||||
if ( $opt_embedded_server )
|
||||
@ -4305,8 +4283,6 @@ sub mysqld_arguments ($$$) {
|
||||
|
||||
if ( $opt_valgrind_mysqld )
|
||||
{
|
||||
mtr_add_arg($args, "--loose-skip-safemalloc");
|
||||
|
||||
if ( $mysql_version_id < 50100 )
|
||||
{
|
||||
mtr_add_arg($args, "--skip-bdb");
|
||||
@ -4899,9 +4875,6 @@ sub start_check_testcase ($$$) {
|
||||
|
||||
mtr_add_arg($args, "--defaults-file=%s", $path_config_file);
|
||||
mtr_add_arg($args, "--defaults-group-suffix=%s", $mysqld->after('mysqld'));
|
||||
|
||||
mtr_add_arg($args, "--skip-safemalloc");
|
||||
|
||||
mtr_add_arg($args, "--result-file=%s", "$opt_vardir/tmp/$name.result");
|
||||
mtr_add_arg($args, "--test-file=%s", "include/check-testcase.test");
|
||||
mtr_add_arg($args, "--verbose");
|
||||
@ -4942,7 +4915,6 @@ sub start_mysqltest ($) {
|
||||
|
||||
mtr_add_arg($args, "--defaults-file=%s", $path_config_file);
|
||||
mtr_add_arg($args, "--silent");
|
||||
mtr_add_arg($args, "--skip-safemalloc");
|
||||
mtr_add_arg($args, "--tmpdir=%s", $opt_tmpdir);
|
||||
mtr_add_arg($args, "--character-sets-dir=%s", $path_charsetsdir);
|
||||
mtr_add_arg($args, "--logdir=%s/log", $opt_vardir);
|
||||
|
@ -2567,5 +2567,56 @@ drop function f1;
|
||||
# End of WL#2649 Number-to-string conversions
|
||||
#
|
||||
#
|
||||
# Bug#54668 User variable assignments get wrong type
|
||||
#
|
||||
SET @x=md5('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
binary binary
|
||||
SET @x=old_password('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
binary binary
|
||||
SET @x=password('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
binary binary
|
||||
SET @x=sha('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
binary binary
|
||||
SET @x=sha1('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
binary binary
|
||||
SET @x=astext(point(1,2));
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
binary binary
|
||||
SET @x=aswkt(point(1,2));
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
binary binary
|
||||
#
|
||||
# Bug#52159 returning time type from function and empty left join causes debug assertion
|
||||
#
|
||||
CREATE FUNCTION f1() RETURNS TIME RETURN 1;
|
||||
CREATE TABLE t1 (b INT);
|
||||
INSERT INTO t1 VALUES (0);
|
||||
SELECT f1() FROM t1 LEFT JOIN (SELECT 1 AS a FROM t1 LIMIT 0) AS d ON 1 GROUP BY a;
|
||||
f1()
|
||||
00:00:01
|
||||
DROP FUNCTION f1;
|
||||
DROP TABLE t1;
|
||||
SET NAMES latin1;
|
||||
SET sql_mode='';
|
||||
CREATE TABLE t1(a char(215) CHARACTER SET utf8 NOT NULL DEFAULT '', KEY(a));
|
||||
INSERT INTO t1 VALUES ();
|
||||
SELECT maketime(`a`,`a`,`a`) FROM t1 GROUP BY 1;
|
||||
maketime(`a`,`a`,`a`)
|
||||
00:00:00
|
||||
DROP TABLE t1;
|
||||
SET sql_mode=default;
|
||||
#
|
||||
# End of 5.5 tests
|
||||
#
|
||||
|
@ -2649,5 +2649,56 @@ drop function f1;
|
||||
# End of WL#2649 Number-to-string conversions
|
||||
#
|
||||
#
|
||||
# Bug#54668 User variable assignments get wrong type
|
||||
#
|
||||
SET @x=md5('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
cp1251 cp1251_general_ci
|
||||
SET @x=old_password('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
cp1251 cp1251_general_ci
|
||||
SET @x=password('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
cp1251 cp1251_general_ci
|
||||
SET @x=sha('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
cp1251 cp1251_general_ci
|
||||
SET @x=sha1('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
cp1251 cp1251_general_ci
|
||||
SET @x=astext(point(1,2));
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
cp1251 cp1251_general_ci
|
||||
SET @x=aswkt(point(1,2));
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
cp1251 cp1251_general_ci
|
||||
#
|
||||
# Bug#52159 returning time type from function and empty left join causes debug assertion
|
||||
#
|
||||
CREATE FUNCTION f1() RETURNS TIME RETURN 1;
|
||||
CREATE TABLE t1 (b INT);
|
||||
INSERT INTO t1 VALUES (0);
|
||||
SELECT f1() FROM t1 LEFT JOIN (SELECT 1 AS a FROM t1 LIMIT 0) AS d ON 1 GROUP BY a;
|
||||
f1()
|
||||
00:00:01
|
||||
DROP FUNCTION f1;
|
||||
DROP TABLE t1;
|
||||
SET NAMES latin1;
|
||||
SET sql_mode='';
|
||||
CREATE TABLE t1(a char(215) CHARACTER SET utf8 NOT NULL DEFAULT '', KEY(a));
|
||||
INSERT INTO t1 VALUES ();
|
||||
SELECT maketime(`a`,`a`,`a`) FROM t1 GROUP BY 1;
|
||||
maketime(`a`,`a`,`a`)
|
||||
00:00:00
|
||||
DROP TABLE t1;
|
||||
SET sql_mode=default;
|
||||
#
|
||||
# End of 5.5 tests
|
||||
#
|
||||
|
@ -2977,5 +2977,56 @@ drop function f1;
|
||||
# End of WL#2649 Number-to-string conversions
|
||||
#
|
||||
#
|
||||
# Bug#54668 User variable assignments get wrong type
|
||||
#
|
||||
SET @x=md5('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
latin1 latin1_swedish_ci
|
||||
SET @x=old_password('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
latin1 latin1_swedish_ci
|
||||
SET @x=password('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
latin1 latin1_swedish_ci
|
||||
SET @x=sha('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
latin1 latin1_swedish_ci
|
||||
SET @x=sha1('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
latin1 latin1_swedish_ci
|
||||
SET @x=astext(point(1,2));
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
latin1 latin1_swedish_ci
|
||||
SET @x=aswkt(point(1,2));
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
latin1 latin1_swedish_ci
|
||||
#
|
||||
# Bug#52159 returning time type from function and empty left join causes debug assertion
|
||||
#
|
||||
CREATE FUNCTION f1() RETURNS TIME RETURN 1;
|
||||
CREATE TABLE t1 (b INT);
|
||||
INSERT INTO t1 VALUES (0);
|
||||
SELECT f1() FROM t1 LEFT JOIN (SELECT 1 AS a FROM t1 LIMIT 0) AS d ON 1 GROUP BY a;
|
||||
f1()
|
||||
00:00:01
|
||||
DROP FUNCTION f1;
|
||||
DROP TABLE t1;
|
||||
SET NAMES latin1;
|
||||
SET sql_mode='';
|
||||
CREATE TABLE t1(a char(215) CHARACTER SET utf8 NOT NULL DEFAULT '', KEY(a));
|
||||
INSERT INTO t1 VALUES ();
|
||||
SELECT maketime(`a`,`a`,`a`) FROM t1 GROUP BY 1;
|
||||
maketime(`a`,`a`,`a`)
|
||||
00:00:00
|
||||
DROP TABLE t1;
|
||||
SET sql_mode=default;
|
||||
#
|
||||
# End of 5.5 tests
|
||||
#
|
||||
|
@ -3808,6 +3808,57 @@ drop function f1;
|
||||
#
|
||||
# End of WL#2649 Number-to-string conversions
|
||||
#
|
||||
#
|
||||
# Bug#54668 User variable assignments get wrong type
|
||||
#
|
||||
SET @x=md5('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
ucs2 ucs2_general_ci
|
||||
SET @x=old_password('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
ucs2 ucs2_general_ci
|
||||
SET @x=password('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
ucs2 ucs2_general_ci
|
||||
SET @x=sha('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
ucs2 ucs2_general_ci
|
||||
SET @x=sha1('a');
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
ucs2 ucs2_general_ci
|
||||
SET @x=astext(point(1,2));
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
ucs2 ucs2_general_ci
|
||||
SET @x=aswkt(point(1,2));
|
||||
SELECT charset(@x), collation(@x);
|
||||
charset(@x) collation(@x)
|
||||
ucs2 ucs2_general_ci
|
||||
#
|
||||
# Bug#52159 returning time type from function and empty left join causes debug assertion
|
||||
#
|
||||
CREATE FUNCTION f1() RETURNS TIME RETURN 1;
|
||||
CREATE TABLE t1 (b INT);
|
||||
INSERT INTO t1 VALUES (0);
|
||||
SELECT f1() FROM t1 LEFT JOIN (SELECT 1 AS a FROM t1 LIMIT 0) AS d ON 1 GROUP BY a;
|
||||
f1()
|
||||
00:00:01
|
||||
DROP FUNCTION f1;
|
||||
DROP TABLE t1;
|
||||
SET NAMES latin1;
|
||||
SET sql_mode='';
|
||||
CREATE TABLE t1(a char(215) CHARACTER SET utf8 NOT NULL DEFAULT '', KEY(a));
|
||||
INSERT INTO t1 VALUES ();
|
||||
SELECT maketime(`a`,`a`,`a`) FROM t1 GROUP BY 1;
|
||||
maketime(`a`,`a`,`a`)
|
||||
00:00:00
|
||||
DROP TABLE t1;
|
||||
SET sql_mode=default;
|
||||
SET NAMES latin1;
|
||||
#
|
||||
# End of 5.5 tests
|
||||
|
@ -1405,3 +1405,24 @@ LENGTH(SHA2( 'size', 384 )) / 2 * 8 = 384
|
||||
SELECT LENGTH(SHA2( 'computed', 512 )) / 2 * 8 = 512;
|
||||
LENGTH(SHA2( 'computed', 512 )) / 2 * 8 = 512
|
||||
1
|
||||
#
|
||||
# Bug#54661 sha2() returns BINARY result
|
||||
#
|
||||
SET NAMES binary;
|
||||
SELECT sha2('1',224);
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def sha2('1',224) 253 56 56 Y 128 31 63
|
||||
sha2('1',224)
|
||||
e25388fde8290dc286a6164fa2d97e551b53498dcbf7bc378eb1f178
|
||||
SET NAMES utf8;
|
||||
SELECT sha2('1',224);
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def sha2('1',224) 253 168 56 Y 0 31 33
|
||||
sha2('1',224)
|
||||
e25388fde8290dc286a6164fa2d97e551b53498dcbf7bc378eb1f178
|
||||
SET NAMES latin1;
|
||||
SELECT sha2('1',224);
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def sha2('1',224) 253 56 56 Y 0 31 8
|
||||
sha2('1',224)
|
||||
e25388fde8290dc286a6164fa2d97e551b53498dcbf7bc378eb1f178
|
||||
|
@ -1427,7 +1427,7 @@ USE test;
|
||||
End of 5.0 tests.
|
||||
select * from information_schema.engines WHERE ENGINE="MyISAM";
|
||||
ENGINE SUPPORT COMMENT TRANSACTIONS XA SAVEPOINTS
|
||||
MyISAM DEFAULT Default engine as of MySQL 3.23 with great performance NO NO NO
|
||||
MyISAM DEFAULT MyISAM storage engine NO NO NO
|
||||
grant select on *.* to user3148@localhost;
|
||||
select user,db from information_schema.processlist;
|
||||
user db
|
||||
|
@ -373,3 +373,21 @@ CREATE TABLE t1 (a INT) ENGINE=InnoDB
|
||||
PARTITION BY list(a) (PARTITION p1 VALUES IN (1));
|
||||
CREATE INDEX i1 ON t1 (a);
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# Bug#54783: optimize table crashes with invalid timestamp default value and NO_ZERO_DATE
|
||||
#
|
||||
DROP TABLE IF EXISTS t1;
|
||||
CREATE TABLE t1 (a INT, b TIMESTAMP DEFAULT '0000-00-00 00:00:00')
|
||||
ENGINE=INNODB PARTITION BY LINEAR HASH (a) PARTITIONS 1;
|
||||
SET @old_mode = @@sql_mode;
|
||||
SET SESSION sql_mode = 'NO_ZERO_DATE';
|
||||
OPTIMIZE TABLE t1;
|
||||
Table Op Msg_type Msg_text
|
||||
test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
|
||||
test.t1 optimize error Invalid default value for 'b'
|
||||
test.t1 optimize status Operation failed
|
||||
Warnings:
|
||||
Warning 1265 Data truncated for column 'b' at row 1
|
||||
Error 1067 Invalid default value for 'b'
|
||||
SET SESSION sql_mode = @old_mode;
|
||||
DROP TABLE t1;
|
||||
|
@ -4857,3 +4857,22 @@ SELECT * FROM t1 WHERE 102 < c;
|
||||
a b c
|
||||
DROP TABLE t1;
|
||||
End of 5.1 tests
|
||||
#
|
||||
# Bug#54515: Crash in opt_range.cc::get_best_group_min_max on
|
||||
# SELECT from VIEW with GROUP BY
|
||||
#
|
||||
CREATE TABLE t1 (
|
||||
col_int_key int DEFAULT NULL,
|
||||
KEY int_key (col_int_key)
|
||||
) ;
|
||||
INSERT INTO t1 VALUES (1),(2);
|
||||
CREATE VIEW view_t1 AS
|
||||
SELECT t1.col_int_key AS col_int_key
|
||||
FROM t1;
|
||||
SELECT col_int_key FROM view_t1 GROUP BY col_int_key;
|
||||
col_int_key
|
||||
1
|
||||
2
|
||||
DROP VIEW view_t1;
|
||||
DROP TABLE t1;
|
||||
# End of test BUG#54515
|
||||
|
@ -14,7 +14,7 @@ end|
|
||||
reset master|
|
||||
insert into t2 values (bug23333(),1)|
|
||||
ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
|
||||
show binlog events from <binlog_start>|
|
||||
show binlog events from <binlog_start> limit 0, 4|
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.t1)
|
||||
|
@ -7,8 +7,6 @@ SET SESSION BINLOG_FORMAT=STATEMENT;
|
||||
INSERT INTO t1b VALUES (1,1), (1,2), (2,1), (2,2);
|
||||
INSERT INTO t1m VALUES (1,1), (1,2), (2,1), (2,2);
|
||||
UPDATE t1m, t1b SET m = 2, b = 3 WHERE n = c;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
The last event before the COMMIT is use `test`; UPDATE t1m, t1b SET m = 2, b = 3 WHERE n = c
|
||||
*** Please look in binlog_multi_engine.test if you have a diff here ****
|
||||
START TRANSACTION;
|
||||
@ -73,6 +71,9 @@ mysqld-bin.000001 # Table_map # # table_id: # (mysql.ndb_apply_status)
|
||||
mysqld-bin.000001 # Write_rows # # table_id: #
|
||||
mysqld-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
mysqld-bin.000001 # Query # # COMMIT
|
||||
mysqld-bin.000001 # Query # # BEGIN
|
||||
mysqld-bin.000001 # Query # # use `test`; UPDATE t1m, t1b SET m = 2, b = 3 WHERE n = c
|
||||
mysqld-bin.000001 # Query # # COMMIT
|
||||
mysqld-bin.000001 # Query # # use `test`; TRUNCATE t1m
|
||||
mysqld-bin.000001 # Query # # use `test`; TRUNCATE t1b
|
||||
mysqld-bin.000001 # Query # # use `test`; TRUNCATE t1n
|
||||
|
@ -33,4 +33,23 @@ master-bin.000001 # Query # # use `drop-temp+table-test`; DROP TEMPORARY TABLE I
|
||||
master-bin.000001 # Query # # use `drop-temp+table-test`; DROP TABLE IF EXISTS `t` /* generated by server */
|
||||
master-bin.000001 # Query # # use `drop-temp+table-test`; DROP TEMPORARY TABLE IF EXISTS `tmp2` /* generated by server */
|
||||
master-bin.000001 # Query # # use `drop-temp+table-test`; DROP TABLE IF EXISTS tmp2, t
|
||||
master-bin.000001 # Query # # use `drop-temp+table-test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `shortn2`,`table:name`,`shortn1`
|
||||
DROP DATABASE `drop-temp+table-test`;
|
||||
RESET MASTER;
|
||||
CREATE TABLE t1 ( i text );
|
||||
CREATE TEMPORARY TABLE ttmp1 ( i text );
|
||||
SET @@session.binlog_format=ROW;
|
||||
INSERT INTO t1 VALUES ('1');
|
||||
SELECT @@session.binlog_format;
|
||||
@@session.binlog_format
|
||||
ROW
|
||||
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 t1 ( i text )
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.t1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # use `test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `ttmp1`
|
||||
RESET MASTER;
|
||||
DROP TABLE t1;
|
||||
|
@ -297,6 +297,7 @@ master-bin.000001 # Table_map # # table_id: # (test.t0)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # use `test`; create table t2 (n int) engine=innodb
|
||||
master-bin.000001 # Query # # use `test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `t1`,`ti`
|
||||
do release_lock("lock1");
|
||||
drop table t0,t2;
|
||||
set autocommit=0;
|
||||
|
@ -635,7 +635,9 @@ COERCIBILITY(NAME_CONST('s1', _utf8'test' COLLATE utf8_unicode_ci)) d2,
|
||||
COERCIBILITY(s1) d3;
|
||||
DROP TEMPORARY TABLE tmp1;
|
||||
END
|
||||
master-bin.000001 # Query # # use `bug39182`; DROP TEMPORARY TABLE IF EXISTS `tmp1` /* generated by server */
|
||||
master-bin.000001 # Query # # use `bug39182`; CREATE TEMPORARY TABLE tmp1
|
||||
SELECT * FROM t1 WHERE a LIKE CONCAT("%", NAME_CONST('s1',_utf8'test' COLLATE 'utf8_unicode_ci'), "%")
|
||||
master-bin.000001 # Query # # use `bug39182`; DROP TEMPORARY TABLE tmp1
|
||||
DROP PROCEDURE p1;
|
||||
DROP TABLE t1;
|
||||
DROP DATABASE bug39182;
|
||||
|
@ -42,3 +42,22 @@ master-bin.000001 # Query # # use `drop-temp+table-test`; DROP TABLE IF EXISTS t
|
||||
master-bin.000001 # Query # # use `drop-temp+table-test`; DROP TABLE IF EXISTS tmp2, t
|
||||
master-bin.000001 # Query # # use `drop-temp+table-test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `shortn2`,`table:name`,`shortn1`
|
||||
DROP DATABASE `drop-temp+table-test`;
|
||||
RESET MASTER;
|
||||
CREATE TABLE t1 ( i text );
|
||||
CREATE TEMPORARY TABLE ttmp1 ( i text );
|
||||
SET @@session.binlog_format=ROW;
|
||||
INSERT INTO t1 VALUES ('1');
|
||||
SELECT @@session.binlog_format;
|
||||
@@session.binlog_format
|
||||
ROW
|
||||
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 t1 ( i text )
|
||||
master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE ttmp1 ( i text )
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.t1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # use `test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `ttmp1`
|
||||
RESET MASTER;
|
||||
DROP TABLE t1;
|
||||
|
@ -110,8 +110,6 @@ delete from t2;
|
||||
reset master;
|
||||
insert into t1 values(9);
|
||||
insert into t2 select * from t1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
show binlog events from <binlog_start>;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
@ -126,8 +124,6 @@ reset master;
|
||||
insert into t1 values(10);
|
||||
begin;
|
||||
insert into t2 select * from t1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
show binlog events from <binlog_start>;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
@ -245,8 +241,6 @@ Warnings:
|
||||
Warning 1196 Some non-transactional changed tables couldn't be rolled back
|
||||
create table t0 (n int);
|
||||
insert t0 select * from t1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
set autocommit=1;
|
||||
insert into t0 select GET_LOCK("lock1",null);
|
||||
Warnings:
|
||||
@ -288,7 +282,7 @@ master-bin.000001 # Query # # use `test`; create temporary table t1 (a int) engi
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; insert t1 values (1)
|
||||
master-bin.000001 # Query # # ROLLBACK
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # use `test`; create table t0 (n int)
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; insert t0 select * from t1
|
||||
|
@ -2,7 +2,7 @@ SELECT * FROM information_schema.engines
|
||||
WHERE ENGINE = 'MyISAM';
|
||||
ENGINE MyISAM
|
||||
SUPPORT DEFAULT
|
||||
COMMENT Default engine as of MySQL 3.23 with great performance
|
||||
COMMENT MyISAM storage engine
|
||||
TRANSACTIONS NO
|
||||
XA NO
|
||||
SAVEPOINTS NO
|
||||
|
@ -8,8 +8,6 @@ SET SESSION BINLOG_FORMAT=STATEMENT;
|
||||
INSERT INTO t1 VALUES (1,1), (1,2), (2,1), (2,2);
|
||||
INSERT INTO t2 VALUES (1,1), (1,2), (2,1), (2,2);
|
||||
UPDATE t1, t2 SET m = 2, b = 3 WHERE n = c;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
START TRANSACTION;
|
||||
INSERT INTO t3 VALUES (1,1), (1,2), (2,1), (2,2);
|
||||
UPDATE t1, t3 SET m = 2, e = 3 WHERE n = f;
|
||||
|
@ -10,8 +10,9 @@
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
ndb_partition_error2 : Bug#40989 ndb_partition_error2 needs maintenance
|
||||
ndb_binlog_discover : Bug#54851 2010-07-02 alik ndb.ndb_binlog_discover crashes the server
|
||||
ndb_condition_pushdown : Bug#49746 2010-02-08 alik ndb_condition_pushdown fails in mysql-next-mr
|
||||
ndb_partition_error2 : Bug#40989 ndb_partition_error2 needs maintenance
|
||||
|
||||
|
||||
# the below testcase have been reworked to avoid the bug, test contains comment, keep bug open
|
||||
|
@ -72,8 +72,6 @@ before call db1.p1()
|
||||
INSERT INTO db1.t2 VALUES ('before call db1.p2()');
|
||||
BEGIN;
|
||||
CALL db1.p2();
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
ROLLBACK;
|
||||
INSERT INTO db1.t2 VALUES ('after call db1.p2()');
|
||||
SELECT * FROM db1.t1;
|
||||
|
@ -29,8 +29,6 @@ UPDATE t SET f = 'magenta 2' WHERE f = 'red';
|
||||
ERROR HY000: Lock wait timeout exceeded; try restarting transaction
|
||||
INSERT INTO t VALUES (5 + (2 * 10),"brown");
|
||||
INSERT INTO n VALUES (now(),"brown");
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
COMMIT;
|
||||
ROLLBACK;
|
||||
Warnings:
|
||||
@ -58,8 +56,6 @@ UPDATE t SET f = 'dark blue 2' WHERE f = 'red';
|
||||
ERROR HY000: Lock wait timeout exceeded; try restarting transaction
|
||||
INSERT INTO t VALUES (6 + (2 * 10),"brown");
|
||||
INSERT INTO n VALUES (now(),"brown");
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
COMMIT;
|
||||
COMMIT;
|
||||
show binlog events from <binlog_start>;
|
||||
@ -83,8 +79,6 @@ UPDATE t SET f = 'magenta 1' WHERE f = 'red';
|
||||
ERROR HY000: Lock wait timeout exceeded; try restarting transaction
|
||||
INSERT INTO t VALUES (5 + (1 * 10),"brown");
|
||||
INSERT INTO n VALUES (now(),"brown");
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
COMMIT;
|
||||
ROLLBACK;
|
||||
Warnings:
|
||||
@ -110,8 +104,6 @@ UPDATE t SET f = 'dark blue 1' WHERE f = 'red';
|
||||
ERROR HY000: Lock wait timeout exceeded; try restarting transaction
|
||||
INSERT INTO t VALUES (6 + (1 * 10),"brown");
|
||||
INSERT INTO n VALUES (now(),"brown");
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
COMMIT;
|
||||
COMMIT;
|
||||
show binlog events from <binlog_start>;
|
||||
|
@ -26,3 +26,24 @@ CREATE TEMPORARY TABLE tmp3 (a int);
|
||||
DROP TEMPORARY TABLE tmp3;
|
||||
SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
|
||||
START SLAVE;
|
||||
stop slave;
|
||||
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
||||
reset master;
|
||||
reset slave;
|
||||
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
||||
start slave;
|
||||
CREATE TABLE t1 ( i INT );
|
||||
SHOW STATUS LIKE 'Slave_open_temp_tables';
|
||||
Variable_name Value
|
||||
Slave_open_temp_tables 0
|
||||
CREATE TEMPORARY TABLE ttmp1 ( i INT );
|
||||
SET SESSION binlog_format=ROW;
|
||||
SHOW STATUS LIKE 'Slave_open_temp_tables';
|
||||
Variable_name Value
|
||||
Slave_open_temp_tables 0
|
||||
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 t1 ( i INT )
|
||||
master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE ttmp1 ( i INT )
|
||||
master-bin.000001 # Query # # use `test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `ttmp1`
|
||||
DROP TABLE t1;
|
||||
|
@ -19,7 +19,7 @@ SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;
|
||||
START SLAVE SQL_THREAD;
|
||||
*** Single statement on both transactional and non-transactional tables. ***
|
||||
Got one of the listed errors
|
||||
SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 2;
|
||||
SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;
|
||||
START SLAVE SQL_THREAD;
|
||||
source include/diff_master_slave.inc;
|
||||
########################################################################################
|
||||
|
1513
mysql-test/suite/rpl/r/rpl_mixed_drop_create_temp_table.result
Normal file
1513
mysql-test/suite/rpl/r/rpl_mixed_drop_create_temp_table.result
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -393,15 +393,13 @@ master-bin.000001 # Query # # COMMIT
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 23, 1, COUNT(*) FROM tt_1;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 23, 1, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> tN << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> tN << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 23, 1, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> tN << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
|
||||
@ -409,15 +407,13 @@ master-bin.000001 # Query # # COMMIT
|
||||
INSERT INTO tt_1(trans_id, stmt_id, info) SELECT 24, 1, COUNT(*) FROM nt_1;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.tt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tt_1(trans_id, stmt_id, info) SELECT 24, 1, COUNT(*) FROM nt_1
|
||||
master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> nT << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> nT << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.tt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tt_1(trans_id, stmt_id, info) SELECT 24, 1, COUNT(*) FROM nt_1
|
||||
master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> nT << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
|
||||
@ -425,23 +421,13 @@ master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
UPDATE nt_3, tt_3 SET nt_3.info= "new text 25 --> 1", tt_3.info= "new text 25 --> 1" where nt_3.trans_id = tt_3.trans_id and tt_3.trans_id = 1;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_3)
|
||||
master-bin.000001 # Update_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.tt_3)
|
||||
master-bin.000001 # Update_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; UPDATE nt_3, tt_3 SET nt_3.info= "new text 25 --> 1", tt_3.info= "new text 25 --> 1" where nt_3.trans_id = tt_3.trans_id and tt_3.trans_id = 1
|
||||
master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> NT << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> NT << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_3)
|
||||
master-bin.000001 # Update_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.tt_3)
|
||||
master-bin.000001 # Update_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; UPDATE nt_3, tt_3 SET nt_3.info= "new text 25 --> 1", tt_3.info= "new text 25 --> 1" where nt_3.trans_id = tt_3.trans_id and tt_3.trans_id = 1
|
||||
master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> NT << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
|
||||
@ -449,23 +435,13 @@ master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
INSERT INTO nt_4(trans_id, stmt_id) VALUES (26, 1);
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_4)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.tt_4)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_4(trans_id, stmt_id) VALUES (26, 1)
|
||||
master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> NT-trig << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> NT-trig << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_4)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.tt_4)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_4(trans_id, stmt_id) VALUES (26, 1)
|
||||
master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> NT-trig << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
|
||||
@ -473,35 +449,13 @@ master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
INSERT INTO nt_5(trans_id, stmt_id, info) VALUES (27, 1, fc_i_tt_5_suc(27, 1));
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_5)
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_6)
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.tt_5)
|
||||
master-bin.000001 # Table_map # # table_id: # (test.tt_6)
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_5(trans_id, stmt_id, info) VALUES (27, 1, fc_i_tt_5_suc(27, 1))
|
||||
master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> NT-func << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> NT-func << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_5)
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_6)
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.tt_5)
|
||||
master-bin.000001 # Table_map # # table_id: # (test.tt_6)
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_5(trans_id, stmt_id, info) VALUES (27, 1, fc_i_tt_5_suc(27, 1))
|
||||
master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> NT-func << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
|
||||
@ -509,23 +463,13 @@ master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
UPDATE tt_4, nt_4 SET tt_4.info= "new text 28 --> 1", nt_4.info= "new text 28 --> 1" where nt_4.trans_id = tt_4.trans_id and tt_4.trans_id = 1;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_4)
|
||||
master-bin.000001 # Update_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.tt_4)
|
||||
master-bin.000001 # Update_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; UPDATE tt_4, nt_4 SET tt_4.info= "new text 28 --> 1", nt_4.info= "new text 28 --> 1" where nt_4.trans_id = tt_4.trans_id and tt_4.trans_id = 1
|
||||
master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> TN << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> TN << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_4)
|
||||
master-bin.000001 # Update_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.tt_4)
|
||||
master-bin.000001 # Update_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; UPDATE tt_4, nt_4 SET tt_4.info= "new text 28 --> 1", nt_4.info= "new text 28 --> 1" where nt_4.trans_id = tt_4.trans_id and tt_4.trans_id = 1
|
||||
master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> TN << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
|
||||
@ -533,23 +477,13 @@ master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
INSERT INTO tt_3(trans_id, stmt_id) VALUES (29, 1);
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_3)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.tt_3)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tt_3(trans_id, stmt_id) VALUES (29, 1)
|
||||
master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> TN-trig << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> TN-trig << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_3)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.tt_3)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tt_3(trans_id, stmt_id) VALUES (29, 1)
|
||||
master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> TN-trig << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
|
||||
@ -557,35 +491,13 @@ master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
INSERT INTO tt_5(trans_id, stmt_id, info) VALUES (30, 1, fc_i_nt_5_suc(30, 1));
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_5)
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_6)
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.tt_5)
|
||||
master-bin.000001 # Table_map # # table_id: # (test.tt_6)
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tt_5(trans_id, stmt_id, info) VALUES (30, 1, fc_i_nt_5_suc(30, 1))
|
||||
master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> TN-func << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> TN-func << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_5)
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_6)
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.tt_5)
|
||||
master-bin.000001 # Table_map # # table_id: # (test.tt_6)
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tt_5(trans_id, stmt_id, info) VALUES (30, 1, fc_i_nt_5_suc(30, 1))
|
||||
master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> TN-func << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
|
||||
@ -604,15 +516,13 @@ INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 31, 1, COUNT(*) FROM tt_1 UNION
|
||||
Got one of the listed errors
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 31, 1, COUNT(*) FROM tt_1 UNION SELECT 23, 1, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> tNe << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> tNe << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 31, 1, COUNT(*) FROM tt_1 UNION SELECT 23, 1, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> tNe << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
|
||||
@ -630,16 +540,14 @@ INSERT INTO nt_4(trans_id, stmt_id) VALUES (33, 1), (26, 1);
|
||||
Got one of the listed errors
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_4)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_4(trans_id, stmt_id) VALUES (33, 1), (26, 1)
|
||||
master-bin.000001 # Query # # ROLLBACK
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> NeT-trig << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> NeT-trig << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_4)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_4(trans_id, stmt_id) VALUES (33, 1), (26, 1)
|
||||
master-bin.000001 # Query # # ROLLBACK
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> NeT-trig << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> NeT-func << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
@ -647,20 +555,14 @@ INSERT INTO nt_5(trans_id, stmt_id, info) VALUES (34, 1, ''), (30, 2, fc_i_tt_5_
|
||||
Got one of the listed errors
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_5)
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_6)
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_5(trans_id, stmt_id, info) VALUES (34, 1, ''), (30, 2, fc_i_tt_5_suc (34, 1))
|
||||
master-bin.000001 # Query # # ROLLBACK
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> NeT-func << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> NeT-func << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_5)
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_6)
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_5(trans_id, stmt_id, info) VALUES (34, 1, ''), (30, 2, fc_i_tt_5_suc (34, 1))
|
||||
master-bin.000001 # Query # # ROLLBACK
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> NeT-func << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> TeN-trig << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
@ -668,16 +570,14 @@ INSERT INTO tt_3(trans_id, stmt_id) VALUES (35, 1), (29, 1);
|
||||
Got one of the listed errors
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_3)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tt_3(trans_id, stmt_id) VALUES (35, 1), (29, 1)
|
||||
master-bin.000001 # Query # # ROLLBACK
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> TeN-trig << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> TeN-trig << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_3)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tt_3(trans_id, stmt_id) VALUES (35, 1), (29, 1)
|
||||
master-bin.000001 # Query # # ROLLBACK
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> TeN-trig << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> TeN-func << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
@ -685,24 +585,14 @@ INSERT INTO tt_5(trans_id, stmt_id, info) VALUES (36, 1, ''), (30, 1, fc_i_nt_5_
|
||||
Got one of the listed errors
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_5)
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_6)
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tt_5(trans_id, stmt_id, info) VALUES (36, 1, ''), (30, 1, fc_i_nt_5_suc (36, 1))
|
||||
master-bin.000001 # Query # # ROLLBACK
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> TeN-func << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> TeN-func << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_5)
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_6)
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: #
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tt_5(trans_id, stmt_id, info) VALUES (36, 1, ''), (30, 1, fc_i_nt_5_suc (36, 1))
|
||||
master-bin.000001 # Query # # ROLLBACK
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> TeN-func << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
|
||||
|
||||
@ -6434,8 +6324,7 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 205, 2, COUNT(*) FROM tt_1;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 205, 2, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> tN << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> T << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
@ -6452,8 +6341,7 @@ master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> B tN T C << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 205, 2, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tt_1(trans_id, stmt_id) VALUES (205, 4)
|
||||
@ -6762,8 +6650,7 @@ INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 213, 2, COUNT(*) FROM tt_1 UNIO
|
||||
Got one of the listed errors
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 213, 2, COUNT(*) FROM tt_1 UNION SELECT 205, 2, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> tNe << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> T << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
@ -6780,8 +6667,7 @@ master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> B tNe T C << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 213, 2, COUNT(*) FROM tt_1 UNION SELECT 205, 2, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tt_1(trans_id, stmt_id) VALUES (213, 4)
|
||||
@ -6986,8 +6872,7 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 219, 2, COUNT(*) FROM tt_1;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 219, 2, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> tN << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> T << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
@ -7003,8 +6888,7 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> B tN T R << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 219, 2, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> B tN T R << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
|
||||
@ -7240,8 +7124,7 @@ INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 227, 2, COUNT(*) FROM tt_1 UNIO
|
||||
Got one of the listed errors
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 227, 2, COUNT(*) FROM tt_1 UNION SELECT 219, 2, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> tNe << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> T << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
@ -7257,8 +7140,7 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> B tNe T R << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 227, 2, COUNT(*) FROM tt_1 UNION SELECT 219, 2, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> B tNe T R << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
|
||||
@ -8439,8 +8321,7 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 261, 2, COUNT(*) FROM tt_1;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 261, 2, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> tN << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
@ -8457,8 +8338,7 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> B tN N C << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 261, 2, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (261, 4)
|
||||
@ -8810,8 +8690,7 @@ INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 269, 2, COUNT(*) FROM tt_1 UNIO
|
||||
Got one of the listed errors
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 269, 2, COUNT(*) FROM tt_1 UNION SELECT 268, 4, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> tNe << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
@ -8828,8 +8707,7 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> B tNe N C << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 269, 2, COUNT(*) FROM tt_1 UNION SELECT 268, 4, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (269, 4)
|
||||
@ -9035,8 +8913,7 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 275, 2, COUNT(*) FROM tt_1;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 275, 2, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> tN << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
@ -9055,8 +8932,7 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> B tN N R << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 275, 2, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (275, 4)
|
||||
@ -9354,8 +9230,7 @@ INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 283, 2, COUNT(*) FROM tt_1 UNIO
|
||||
Got one of the listed errors
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 283, 2, COUNT(*) FROM tt_1 UNION SELECT 282, 4, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> tNe << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
@ -9374,8 +9249,7 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> B tNe N R << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 283, 2, COUNT(*) FROM tt_1 UNION SELECT 282, 4, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (283, 4)
|
||||
@ -9597,8 +9471,7 @@ master-bin.000001 # Query # # COMMIT
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 289, 4, COUNT(*) FROM tt_1;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 289, 4, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> tN << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> C << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
@ -9611,8 +9484,7 @@ master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (289, 2)
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 289, 4, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> B N tN C << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
|
||||
@ -9953,8 +9825,7 @@ INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 297, 4, COUNT(*) FROM tt_1 UNIO
|
||||
Got one of the listed errors
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 297, 4, COUNT(*) FROM tt_1 UNION SELECT 297, 2, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> tNe << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> C << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
@ -9967,8 +9838,7 @@ master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (297, 2)
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 297, 4, COUNT(*) FROM tt_1 UNION SELECT 297, 2, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> B N tNe C << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
|
||||
@ -10177,8 +10047,7 @@ master-bin.000001 # Query # # COMMIT
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 303, 4, COUNT(*) FROM tt_1;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 303, 4, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> tN << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> R << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
@ -10193,8 +10062,7 @@ master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (303, 2)
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 303, 4, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> B N tN R << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
|
||||
@ -10481,8 +10349,7 @@ INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 311, 4, COUNT(*) FROM tt_1 UNIO
|
||||
Got one of the listed errors
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 311, 4, COUNT(*) FROM tt_1 UNION SELECT 311, 2, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> tNe << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> R << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
@ -10497,8 +10364,7 @@ master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (311, 2)
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 311, 4, COUNT(*) FROM tt_1 UNION SELECT 311, 2, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> B N tNe R << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
|
||||
@ -11931,8 +11797,7 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 357, 2, COUNT(*) FROM tt_1;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 357, 2, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> tN << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> CT << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
@ -11956,8 +11821,7 @@ master-bin.000001 # Query # # ROLLBACK
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> B tN CT T R << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Table_map # # table_id: # (test.nt_1)
|
||||
master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 357, 2, COUNT(*) FROM tt_1
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE tt_xx_14 (a int) engine=Innodb
|
||||
|
@ -391,8 +391,6 @@ master-bin.000001 # Query # # COMMIT
|
||||
#
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> tN << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 23, 1, COUNT(*) FROM tt_1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 23, 1, COUNT(*) FROM tt_1
|
||||
@ -407,8 +405,6 @@ master-bin.000001 # Query # # COMMIT
|
||||
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> nT << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO tt_1(trans_id, stmt_id, info) SELECT 24, 1, COUNT(*) FROM nt_1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tt_1(trans_id, stmt_id, info) SELECT 24, 1, COUNT(*) FROM nt_1
|
||||
@ -423,8 +419,6 @@ master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> NT << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
UPDATE nt_3, tt_3 SET nt_3.info= "new text 25 --> 1", tt_3.info= "new text 25 --> 1" where nt_3.trans_id = tt_3.trans_id and tt_3.trans_id = 1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; UPDATE nt_3, tt_3 SET nt_3.info= "new text 25 --> 1", tt_3.info= "new text 25 --> 1" where nt_3.trans_id = tt_3.trans_id and tt_3.trans_id = 1
|
||||
@ -439,8 +433,6 @@ master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> NT-trig << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_4(trans_id, stmt_id) VALUES (26, 1);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_4(trans_id, stmt_id) VALUES (26, 1)
|
||||
@ -455,8 +447,6 @@ master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> NT-func << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_5(trans_id, stmt_id, info) VALUES (27, 1, fc_i_tt_5_suc(27, 1));
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_5(trans_id, stmt_id, info) VALUES (27, 1, fc_i_tt_5_suc(27, 1))
|
||||
@ -471,8 +461,6 @@ master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> TN << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
UPDATE tt_4, nt_4 SET tt_4.info= "new text 28 --> 1", nt_4.info= "new text 28 --> 1" where nt_4.trans_id = tt_4.trans_id and tt_4.trans_id = 1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; UPDATE tt_4, nt_4 SET tt_4.info= "new text 28 --> 1", nt_4.info= "new text 28 --> 1" where nt_4.trans_id = tt_4.trans_id and tt_4.trans_id = 1
|
||||
@ -487,8 +475,6 @@ master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> TN-trig << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO tt_3(trans_id, stmt_id) VALUES (29, 1);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tt_3(trans_id, stmt_id) VALUES (29, 1)
|
||||
@ -503,8 +489,6 @@ master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> TN-func << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO tt_5(trans_id, stmt_id, info) VALUES (30, 1, fc_i_nt_5_suc(30, 1));
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tt_5(trans_id, stmt_id, info) VALUES (30, 1, fc_i_nt_5_suc(30, 1))
|
||||
@ -6076,8 +6060,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> B << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> tN << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 205, 2, COUNT(*) FROM tt_1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 205, 2, COUNT(*) FROM tt_1
|
||||
@ -6518,8 +6500,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> B << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> tN << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 219, 2, COUNT(*) FROM tt_1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 219, 2, COUNT(*) FROM tt_1
|
||||
@ -7845,8 +7825,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> B << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> tN << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 261, 2, COUNT(*) FROM tt_1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 261, 2, COUNT(*) FROM tt_1
|
||||
@ -8311,8 +8289,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> B << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> tN << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 275, 2, COUNT(*) FROM tt_1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 275, 2, COUNT(*) FROM tt_1
|
||||
@ -8811,8 +8787,6 @@ master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> N << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> tN << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 289, 4, COUNT(*) FROM tt_1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 289, 4, COUNT(*) FROM tt_1
|
||||
@ -9297,8 +9271,6 @@ master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> N << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> tN << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 303, 4, COUNT(*) FROM tt_1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 303, 4, COUNT(*) FROM tt_1
|
||||
@ -10557,7 +10529,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
INSERT INTO nt_xx_9(trans_id, stmt_id, info) SELECT trans_id, stmt_id, USER() FROM tt_1;;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it uses a system function that may return a different value on the slave.
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_xx_9(trans_id, stmt_id, info) SELECT trans_id, stmt_id, USER() FROM tt_1
|
||||
@ -10966,8 +10937,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> B << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> tN << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 357, 2, COUNT(*) FROM tt_1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 357, 2, COUNT(*) FROM tt_1
|
||||
|
1539
mysql-test/suite/rpl/r/rpl_row_drop_create_temp_table.result
Normal file
1539
mysql-test/suite/rpl/r/rpl_row_drop_create_temp_table.result
Normal file
File diff suppressed because it is too large
Load Diff
@ -32,18 +32,12 @@ BEGIN;
|
||||
Got one of the listed errors
|
||||
Got one of the listed errors
|
||||
Got one of the listed errors
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
BEGIN;
|
||||
Got one of the listed errors
|
||||
Got one of the listed errors
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
BEGIN;
|
||||
Got one of the listed errors
|
||||
Got one of the listed errors
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
source include/diff_master_slave.inc;
|
||||
########################################################################################
|
||||
# 3 - BEGIN - COMMIT
|
||||
@ -55,8 +49,6 @@ BEGIN;
|
||||
Got one of the listed errors
|
||||
Got one of the listed errors
|
||||
Got one of the listed errors
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
COMMIT;
|
||||
source include/diff_master_slave.inc;
|
||||
########################################################################################
|
||||
@ -69,8 +61,6 @@ BEGIN;
|
||||
Got one of the listed errors
|
||||
Got one of the listed errors
|
||||
Got one of the listed errors
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
ROLLBACK;
|
||||
Warnings:
|
||||
Warning 1196 Some non-transactional changed tables couldn't be rolled back
|
||||
@ -109,8 +99,6 @@ BEGIN;
|
||||
Got one of the listed errors
|
||||
Got one of the listed errors
|
||||
Got one of the listed errors
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
ROLLBACK TO sv;
|
||||
Warnings:
|
||||
Warning 1196 Some non-transactional changed tables couldn't be rolled back
|
||||
@ -123,19 +111,11 @@ TRUNCATE TABLE t1;
|
||||
TRUNCATE TABLE t2;
|
||||
TRUNCATE TABLE t3;
|
||||
BEGIN;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Got one of the listed errors
|
||||
Got one of the listed errors
|
||||
Got one of the listed errors
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
COMMIT;
|
||||
BEGIN;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Got one of the listed errors
|
||||
COMMIT;
|
||||
source include/diff_master_slave.inc;
|
||||
|
1513
mysql-test/suite/rpl/r/rpl_stm_drop_create_temp_table.result
Normal file
1513
mysql-test/suite/rpl/r/rpl_stm_drop_create_temp_table.result
Normal file
File diff suppressed because it is too large
Load Diff
@ -391,8 +391,6 @@ master-bin.000001 # Query # # COMMIT
|
||||
#
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> tN << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 23, 1, COUNT(*) FROM tt_1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 23, 1, COUNT(*) FROM tt_1
|
||||
@ -407,8 +405,6 @@ master-bin.000001 # Query # # COMMIT
|
||||
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> nT << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO tt_1(trans_id, stmt_id, info) SELECT 24, 1, COUNT(*) FROM nt_1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tt_1(trans_id, stmt_id, info) SELECT 24, 1, COUNT(*) FROM nt_1
|
||||
@ -423,8 +419,6 @@ master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> NT << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
UPDATE nt_3, tt_3 SET nt_3.info= "new text 25 --> 1", tt_3.info= "new text 25 --> 1" where nt_3.trans_id = tt_3.trans_id and tt_3.trans_id = 1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; UPDATE nt_3, tt_3 SET nt_3.info= "new text 25 --> 1", tt_3.info= "new text 25 --> 1" where nt_3.trans_id = tt_3.trans_id and tt_3.trans_id = 1
|
||||
@ -439,8 +433,6 @@ master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> NT-trig << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_4(trans_id, stmt_id) VALUES (26, 1);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_4(trans_id, stmt_id) VALUES (26, 1)
|
||||
@ -455,8 +447,6 @@ master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> NT-func << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_5(trans_id, stmt_id, info) VALUES (27, 1, fc_i_tt_5_suc(27, 1));
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_5(trans_id, stmt_id, info) VALUES (27, 1, fc_i_tt_5_suc(27, 1))
|
||||
@ -471,8 +461,6 @@ master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> TN << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
UPDATE tt_4, nt_4 SET tt_4.info= "new text 28 --> 1", nt_4.info= "new text 28 --> 1" where nt_4.trans_id = tt_4.trans_id and tt_4.trans_id = 1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; UPDATE tt_4, nt_4 SET tt_4.info= "new text 28 --> 1", nt_4.info= "new text 28 --> 1" where nt_4.trans_id = tt_4.trans_id and tt_4.trans_id = 1
|
||||
@ -487,8 +475,6 @@ master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> TN-trig << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO tt_3(trans_id, stmt_id) VALUES (29, 1);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tt_3(trans_id, stmt_id) VALUES (29, 1)
|
||||
@ -503,8 +489,6 @@ master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> TN-func << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO tt_5(trans_id, stmt_id, info) VALUES (30, 1, fc_i_nt_5_suc(30, 1));
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tt_5(trans_id, stmt_id, info) VALUES (30, 1, fc_i_nt_5_suc(30, 1))
|
||||
@ -3615,8 +3599,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> T << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (133, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (133, 4)
|
||||
@ -3649,8 +3631,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> T << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N-trig << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_5(trans_id, stmt_id) VALUES (134, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_5(trans_id, stmt_id) VALUES (134, 4)
|
||||
@ -3755,8 +3735,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> T-trig << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (137, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (137, 4)
|
||||
@ -3789,8 +3767,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> T-trig << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N-trig << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_5(trans_id, stmt_id) VALUES (138, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_5(trans_id, stmt_id) VALUES (138, 4)
|
||||
@ -3897,8 +3873,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> T-func << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (141, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (141, 4)
|
||||
@ -3933,8 +3907,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> T-func << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N-trig << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_5(trans_id, stmt_id) VALUES (142, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_5(trans_id, stmt_id) VALUES (142, 4)
|
||||
@ -4043,8 +4015,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> T-proc << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (145, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (145, 4)
|
||||
@ -4079,8 +4049,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> T-proc << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N-trig << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_5(trans_id, stmt_id) VALUES (146, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_5(trans_id, stmt_id) VALUES (146, 4)
|
||||
@ -4329,8 +4297,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> T << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (153, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (153, 4)
|
||||
@ -4365,8 +4331,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> T << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N-trig << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_5(trans_id, stmt_id) VALUES (154, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_5(trans_id, stmt_id) VALUES (154, 4)
|
||||
@ -4477,8 +4441,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> T-trig << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (157, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (157, 4)
|
||||
@ -4513,8 +4475,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> T-trig << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N-trig << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_5(trans_id, stmt_id) VALUES (158, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_5(trans_id, stmt_id) VALUES (158, 4)
|
||||
@ -4627,8 +4587,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> T-func << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (161, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (161, 4)
|
||||
@ -4665,8 +4623,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> T-func << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N-trig << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_5(trans_id, stmt_id) VALUES (162, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_5(trans_id, stmt_id) VALUES (162, 4)
|
||||
@ -4781,8 +4737,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> T-proc << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (165, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (165, 4)
|
||||
@ -4819,8 +4773,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> T-proc << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N-trig << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_5(trans_id, stmt_id) VALUES (166, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_5(trans_id, stmt_id) VALUES (166, 4)
|
||||
@ -6244,8 +6196,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> B << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> tN << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 205, 2, COUNT(*) FROM tt_1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 205, 2, COUNT(*) FROM tt_1
|
||||
@ -6686,8 +6636,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> B << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> tN << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 219, 2, COUNT(*) FROM tt_1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 219, 2, COUNT(*) FROM tt_1
|
||||
@ -8029,8 +7977,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> B << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> tN << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 261, 2, COUNT(*) FROM tt_1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 261, 2, COUNT(*) FROM tt_1
|
||||
@ -8069,8 +8015,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> nT << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (262, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (262, 4)
|
||||
@ -8105,8 +8049,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> NT << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (263, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (263, 4)
|
||||
@ -8141,8 +8083,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> NT-trig << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (264, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (264, 4)
|
||||
@ -8177,8 +8117,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> NT-func << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (265, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (265, 4)
|
||||
@ -8213,8 +8151,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> TN << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (266, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (266, 4)
|
||||
@ -8249,8 +8185,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> TN-trig << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (267, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (267, 4)
|
||||
@ -8285,8 +8219,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> TN-func << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (268, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (268, 4)
|
||||
@ -8392,8 +8324,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> NeT-trig << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (271, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (271, 4)
|
||||
@ -8427,8 +8357,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> NeT-func << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (272, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (272, 4)
|
||||
@ -8462,8 +8390,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> TeN-trig << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (273, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (273, 4)
|
||||
@ -8497,8 +8423,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> TeN-func << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (274, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (274, 4)
|
||||
@ -8539,8 +8463,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> B << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> tN << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 275, 2, COUNT(*) FROM tt_1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 275, 2, COUNT(*) FROM tt_1
|
||||
@ -8581,8 +8503,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> nT << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (276, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (276, 4)
|
||||
@ -8619,8 +8539,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> NT << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (277, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (277, 4)
|
||||
@ -8657,8 +8575,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> NT-trig << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (278, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (278, 4)
|
||||
@ -8695,8 +8611,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> NT-func << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (279, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (279, 4)
|
||||
@ -8733,8 +8647,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> TN << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (280, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (280, 4)
|
||||
@ -8771,8 +8683,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> TN-trig << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (281, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (281, 4)
|
||||
@ -8809,8 +8719,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> TN-func << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (282, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (282, 4)
|
||||
@ -8922,8 +8830,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> NeT-trig << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (285, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (285, 4)
|
||||
@ -8959,8 +8865,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> NeT-func << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (286, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (286, 4)
|
||||
@ -8996,8 +8900,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> TeN-trig << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (287, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (287, 4)
|
||||
@ -9033,8 +8935,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> TeN-func << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (288, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (288, 4)
|
||||
@ -9083,8 +8983,6 @@ master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> N << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> tN << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 289, 4, COUNT(*) FROM tt_1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 289, 4, COUNT(*) FROM tt_1
|
||||
@ -9569,8 +9467,6 @@ master-bin.000001 # Query # # COMMIT
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> N << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> tN << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 303, 4, COUNT(*) FROM tt_1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 303, 4, COUNT(*) FROM tt_1
|
||||
@ -10158,8 +10054,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> T << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (319, 4);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (319, 4)
|
||||
@ -10216,8 +10110,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> S1 << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> N << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id) VALUES (320, 5);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id) VALUES (320, 5)
|
||||
@ -10845,7 +10737,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
INSERT INTO nt_xx_9(trans_id, stmt_id, info) SELECT trans_id, stmt_id, USER() FROM tt_1;;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it uses a system function that may return a different value on the slave.
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_xx_9(trans_id, stmt_id, info) SELECT trans_id, stmt_id, USER() FROM tt_1
|
||||
@ -10949,7 +10840,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
INSERT INTO nt_xx_10(trans_id, stmt_id, info) SELECT trans_id, stmt_id, USER() FROM nt_1;;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it uses a system function that may return a different value on the slave.
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_xx_10(trans_id, stmt_id, info) SELECT trans_id, stmt_id, USER() FROM nt_1
|
||||
@ -11262,8 +11152,6 @@ Log_name Pos Event_type Server_id End_log_pos Info
|
||||
-e-e-e-e-e-e-e-e-e-e-e- >> B << -e-e-e-e-e-e-e-e-e-e-e-
|
||||
-b-b-b-b-b-b-b-b-b-b-b- >> tN << -b-b-b-b-b-b-b-b-b-b-b-
|
||||
INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 357, 2, COUNT(*) FROM tt_1;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO nt_1(trans_id, stmt_id, info) SELECT 357, 2, COUNT(*) FROM tt_1
|
||||
|
@ -52,8 +52,6 @@ include/start_slave.inc
|
||||
set @@global.debug="+d,stop_slave_middle_group";
|
||||
set @@global.debug="+d,incomplete_group_in_relay_log";
|
||||
update tm as t1, ti as t2 set t1.a=t1.a * 2, t2.a=t2.a * 2;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
SELECT "Fatal error: ... The slave SQL is stopped, leaving the current group of events unfinished with a non-transaction table changed. If the group consists solely of Row-based events, you can try restarting the slave with --slave-exec-mode=IDEMPOTENT, which ignores duplicate key, key not found, and similar errors (see documentation for details)." AS Last_SQL_Error, @check as `true`;
|
||||
Last_SQL_Error true
|
||||
Fatal error: ... The slave SQL is stopped, leaving the current group of events unfinished with a non-transaction table changed. If the group consists solely of Row-based events, you can try restarting the slave with --slave-exec-mode=IDEMPOTENT, which ignores duplicate key, key not found, and similar errors (see documentation for details). 1
|
||||
|
@ -1,240 +0,0 @@
|
||||
stop slave;
|
||||
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
||||
reset master;
|
||||
reset slave;
|
||||
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
||||
start slave;
|
||||
CALL mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT");
|
||||
########################################################################
|
||||
# VERIFY ITEMS 1 and 2
|
||||
########################################################################
|
||||
#
|
||||
# Create temporary tables to verify when statements involving temporary
|
||||
# tables are classified as safe or unsafe by printing out the warning
|
||||
# messages.
|
||||
#
|
||||
CREATE TABLE t_myisam(id int) engine= MyIsam;
|
||||
INSERT INTO t_myisam VALUES(1);
|
||||
CREATE TABLE t_innodb(id int) engine= Innodb;
|
||||
INSERT INTO t_innodb VALUES(1);
|
||||
CREATE TEMPORARY TABLE t_myisam_temp(id int) engine= MyIsam;
|
||||
INSERT INTO t_myisam_temp VALUES(1);
|
||||
CREATE TEMPORARY TABLE t_innodb_temp(id int) engine= Innodb;
|
||||
INSERT INTO t_innodb_temp VALUES(1);
|
||||
BEGIN;
|
||||
INSERT INTO t_myisam SELECT * FROM t_myisam_temp;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
INSERT INTO t_innodb SELECT * FROM t_myisam_temp;
|
||||
INSERT INTO t_innodb SELECT * FROM t_innodb_temp;
|
||||
ROLLBACK;
|
||||
Warnings:
|
||||
Warning 1196 Some non-transactional changed tables couldn't be rolled back
|
||||
BEGIN;
|
||||
INSERT INTO t_myisam SELECT * FROM t_innodb_temp;
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement accesses nontransactional table as well as transactional or temporary table, and writes to any of them.
|
||||
INSERT INTO t_innodb SELECT * FROM t_myisam_temp;
|
||||
INSERT INTO t_innodb SELECT * FROM t_innodb_temp;
|
||||
ROLLBACK;
|
||||
Warnings:
|
||||
Warning 1196 Some non-transactional changed tables couldn't be rolled back
|
||||
########################################################################
|
||||
# VERIFY ITEM 3
|
||||
########################################################################
|
||||
#
|
||||
# When there is a temporary table we can switch between the mixed and
|
||||
# row formats. However, we cannot switch to the statement format.
|
||||
#
|
||||
SET BINLOG_FORMAT=MIXED;
|
||||
SET BINLOG_FORMAT=ROW;
|
||||
SET BINLOG_FORMAT=MIXED;
|
||||
SET BINLOG_FORMAT=STATEMENT;
|
||||
ERROR HY000: Cannot switch out of the row-based binary log format when the session has open temporary tables
|
||||
#
|
||||
# When there is a temporary table we can switch between the mixed and
|
||||
# row formats. However, we cannot swith to the statement format.
|
||||
#
|
||||
SET BINLOG_FORMAT=MIXED;
|
||||
DROP TABLE t_myisam_temp, t_innodb_temp, t_myisam, t_innodb;
|
||||
show binlog events from <binlog_start>;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO t_myisam SELECT * FROM t_myisam_temp
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO t_innodb SELECT * FROM t_myisam_temp
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO t_innodb SELECT * FROM t_innodb_temp
|
||||
master-bin.000001 # Query # # ROLLBACK
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO t_myisam SELECT * FROM t_innodb_temp
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO t_innodb SELECT * FROM t_myisam_temp
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO t_innodb SELECT * FROM t_innodb_temp
|
||||
master-bin.000001 # Query # # ROLLBACK
|
||||
master-bin.000001 # Query # # use `test`; DROP TABLE `t_myisam`,`t_innodb` /* generated by server */
|
||||
master-bin.000001 # Query # # use `test`; DROP TEMPORARY TABLE IF EXISTS `t_myisam_temp`,`t_innodb_temp` /* generated by server */
|
||||
########################################################################
|
||||
# VERIFY ITEMS 4 and 5
|
||||
########################################################################
|
||||
#
|
||||
BEGIN;
|
||||
CREATE TEMPORARY TABLE tmp1(id int) engine= MyIsam;
|
||||
INSERT INTO tmp1 VALUES(1);
|
||||
CREATE TEMPORARY TABLE tmp2 LIKE tmp1;
|
||||
INSERT INTO tmp2 VALUES(1);
|
||||
CREATE TEMPORARY TABLE tmp3 engine= MyIsam SELECT * FROM tmp1;
|
||||
INSERT INTO tmp3 VALUES(1);
|
||||
DROP TEMPORARY TABLE tmp1;
|
||||
DROP TEMPORARY TABLE tmp2;
|
||||
DROP TEMPORARY TABLE tmp3;
|
||||
COMMIT;
|
||||
show binlog events from <binlog_start>;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE tmp1(id int) engine= MyIsam
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tmp1 VALUES(1)
|
||||
master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE tmp2 LIKE tmp1
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tmp2 VALUES(1)
|
||||
master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE tmp3 engine= MyIsam SELECT * FROM tmp1
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tmp3 VALUES(1)
|
||||
master-bin.000001 # Query # # use `test`; DROP TEMPORARY TABLE tmp1
|
||||
master-bin.000001 # Query # # use `test`; DROP TEMPORARY TABLE tmp2
|
||||
master-bin.000001 # Query # # use `test`; DROP TEMPORARY TABLE tmp3
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
BEGIN;
|
||||
CREATE TEMPORARY TABLE tmp1(id int) engine= MyIsam;
|
||||
INSERT INTO tmp1 VALUES(1);
|
||||
CREATE TEMPORARY TABLE tmp2 LIKE tmp1;
|
||||
INSERT INTO tmp2 VALUES(1);
|
||||
CREATE TEMPORARY TABLE tmp3 engine= MyIsam SELECT * FROM tmp1;
|
||||
INSERT INTO tmp3 VALUES(1);
|
||||
DROP TEMPORARY TABLE tmp1;
|
||||
DROP TEMPORARY TABLE tmp2;
|
||||
DROP TEMPORARY TABLE tmp3;
|
||||
ROLLBACK;
|
||||
Warnings:
|
||||
Warning 1196 Some non-transactional changed tables couldn't be rolled back
|
||||
show binlog events from <binlog_start>;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE tmp1(id int) engine= MyIsam
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tmp1 VALUES(1)
|
||||
master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE tmp2 LIKE tmp1
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tmp2 VALUES(1)
|
||||
master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE tmp3 engine= MyIsam SELECT * FROM tmp1
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tmp3 VALUES(1)
|
||||
master-bin.000001 # Query # # use `test`; DROP TEMPORARY TABLE tmp1
|
||||
master-bin.000001 # Query # # use `test`; DROP TEMPORARY TABLE tmp2
|
||||
master-bin.000001 # Query # # use `test`; DROP TEMPORARY TABLE tmp3
|
||||
master-bin.000001 # Query # # ROLLBACK
|
||||
########################################################################
|
||||
# VERIFY ITEM 6
|
||||
########################################################################
|
||||
SET BINLOG_FORMAT=STATEMENT;
|
||||
CREATE TEMPORARY TABLE tmp1(id int) engine= MyIsam;
|
||||
CREATE TEMPORARY TABLE tmp2 LIKE tmp1;
|
||||
CREATE TEMPORARY TABLE tmp3 engine= MyIsam SELECT * FROM tmp1;
|
||||
SET BINLOG_FORMAT=ROW;
|
||||
DROP TEMPORARY TABLE tmp1;
|
||||
BEGIN;
|
||||
INSERT INTO tmp2 VALUES(1);
|
||||
DROP TEMPORARY TABLE tmp2;
|
||||
INSERT INTO tmp3 VALUES(1);
|
||||
DROP TEMPORARY TABLE tmp3;
|
||||
COMMIT;
|
||||
show binlog events from <binlog_start>;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE tmp1(id int) engine= MyIsam
|
||||
master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE tmp2 LIKE tmp1
|
||||
master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE tmp3 engine= MyIsam SELECT * FROM tmp1
|
||||
master-bin.000001 # Query # # use `test`; DROP TEMPORARY TABLE IF EXISTS `tmp1` /* generated by server */
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; DROP TEMPORARY TABLE IF EXISTS `tmp2` /* generated by server */
|
||||
master-bin.000001 # Query # # use `test`; DROP TEMPORARY TABLE IF EXISTS `tmp3` /* generated by server */
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
SET BINLOG_FORMAT=STATEMENT;
|
||||
CREATE TEMPORARY TABLE tmp1(id int) engine= MyIsam;
|
||||
CREATE TEMPORARY TABLE tmp2 LIKE tmp1;
|
||||
CREATE TEMPORARY TABLE tmp3 engine= MyIsam SELECT * FROM tmp1;
|
||||
SET BINLOG_FORMAT=ROW;
|
||||
DROP TEMPORARY TABLE tmp1;
|
||||
BEGIN;
|
||||
INSERT INTO tmp2 VALUES(1);
|
||||
DROP TEMPORARY TABLE tmp2;
|
||||
INSERT INTO tmp3 VALUES(1);
|
||||
DROP TEMPORARY TABLE tmp3;
|
||||
ROLLBACK;
|
||||
Warnings:
|
||||
Warning 1196 Some non-transactional changed tables couldn't be rolled back
|
||||
show binlog events from <binlog_start>;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE tmp1(id int) engine= MyIsam
|
||||
master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE tmp2 LIKE tmp1
|
||||
master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE tmp3 engine= MyIsam SELECT * FROM tmp1
|
||||
master-bin.000001 # Query # # use `test`; DROP TEMPORARY TABLE IF EXISTS `tmp1` /* generated by server */
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; DROP TEMPORARY TABLE IF EXISTS `tmp2` /* generated by server */
|
||||
master-bin.000001 # Query # # use `test`; DROP TEMPORARY TABLE IF EXISTS `tmp3` /* generated by server */
|
||||
master-bin.000001 # Query # # ROLLBACK
|
||||
########################################################################
|
||||
# VERIFY ITEM 7
|
||||
########################################################################
|
||||
SET BINLOG_FORMAT=STATEMENT;
|
||||
CREATE TEMPORARY TABLE tmp1(id int) engine= MyIsam;
|
||||
CREATE TABLE t_myisam (f1 BIGINT) ENGINE = MyISAM;
|
||||
CREATE TABLE t_innodb (f1 BIGINT) ENGINE = Innodb;
|
||||
BEGIN;
|
||||
INSERT INTO t_myisam VALUES(CONNECTION_ID());
|
||||
INSERT INTO tmp1 VALUES(1);
|
||||
INSERT INTO t_myisam VALUES(1);
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
INSERT INTO t_innodb VALUES(1);
|
||||
INSERT INTO t_myisam VALUES(CONNECTION_ID());
|
||||
Warnings:
|
||||
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
|
||||
INSERT INTO t_innodb VALUES(1);
|
||||
COMMIT;
|
||||
show binlog events from <binlog_start>;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE tmp1(id int) engine= MyIsam
|
||||
master-bin.000001 # Query # # use `test`; CREATE TABLE t_myisam (f1 BIGINT) ENGINE = MyISAM
|
||||
master-bin.000001 # Query # # use `test`; CREATE TABLE t_innodb (f1 BIGINT) ENGINE = Innodb
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO t_myisam VALUES(CONNECTION_ID())
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO t_myisam VALUES(1)
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO t_myisam VALUES(CONNECTION_ID())
|
||||
master-bin.000001 # Query # # COMMIT
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO tmp1 VALUES(1)
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO t_innodb VALUES(1)
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO t_innodb VALUES(1)
|
||||
master-bin.000001 # Xid # # COMMIT /* XID */
|
||||
########################################################################
|
||||
# VERIFY ITEM 8
|
||||
########################################################################
|
||||
SET BINLOG_FORMAT=MIXED;
|
||||
BEGIN;
|
||||
CREATE TEMPORARY TABLE tmp2 SELECT * FROM t_innodb;
|
||||
INSERT INTO t_innodb VALUES(1);
|
||||
INSERT INTO t_innodb VALUES(1);
|
||||
ROLLBACK;
|
||||
Warnings:
|
||||
Warning 1196 Some non-transactional changed tables couldn't be rolled back
|
||||
show binlog events from <binlog_start>;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Query # # BEGIN
|
||||
master-bin.000001 # Query # # use `test`; CREATE TEMPORARY TABLE tmp2 SELECT * FROM t_innodb
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO t_innodb VALUES(1)
|
||||
master-bin.000001 # Query # # use `test`; INSERT INTO t_innodb VALUES(1)
|
||||
master-bin.000001 # Query # # ROLLBACK
|
||||
###################################################################################
|
||||
# CHECK CONSISTENCY
|
||||
###################################################################################
|
||||
###################################################################################
|
||||
# CLEAN UP
|
||||
###################################################################################
|
||||
DROP TABLE t_myisam;
|
||||
DROP TABLE t_innodb;
|
@ -66,4 +66,32 @@ START SLAVE;
|
||||
connection master;
|
||||
sync_slave_with_master;
|
||||
|
||||
|
||||
#
|
||||
# BUG#54842: DROP TEMPORARY TABLE not binlogged after manual switching binlog format to ROW
|
||||
#
|
||||
|
||||
-- connection master
|
||||
-- source include/master-slave-reset.inc
|
||||
-- connection master
|
||||
|
||||
CREATE TABLE t1 ( i INT );
|
||||
--sync_slave_with_master
|
||||
SHOW STATUS LIKE 'Slave_open_temp_tables';
|
||||
|
||||
--connect(con1,localhost,root,,)
|
||||
CREATE TEMPORARY TABLE ttmp1 ( i INT );
|
||||
SET SESSION binlog_format=ROW;
|
||||
--disconnect con1
|
||||
|
||||
-- connection master
|
||||
--let $wait_binlog_event= DROP
|
||||
--source include/wait_for_binlog_event.inc
|
||||
--sync_slave_with_master
|
||||
SHOW STATUS LIKE 'Slave_open_temp_tables';
|
||||
|
||||
--connection master
|
||||
--source include/show_binlog_events.inc
|
||||
DROP TABLE t1;
|
||||
|
||||
# End of 4.1 tests
|
||||
|
10
mysql-test/suite/rpl/t/rpl_mixed_drop_create_temp_table.test
Normal file
10
mysql-test/suite/rpl/t/rpl_mixed_drop_create_temp_table.test
Normal file
@ -0,0 +1,10 @@
|
||||
###################################################################################
|
||||
# This test cases evaluates the mixture of non-transactional and transcational
|
||||
# tables. Specifically when drop temporary tables and create temporary tables
|
||||
# are used.
|
||||
###################################################################################
|
||||
--source include/have_binlog_format_mixed.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/have_innodb.inc
|
||||
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.test
|
@ -11,5 +11,3 @@ SET SESSION binlog_direct_non_transactional_updates = OFF;
|
||||
--enable_query_log
|
||||
let $engine_type=Innodb;
|
||||
--source extra/rpl_tests/rpl_mixing_engines.test
|
||||
|
||||
--diff_files suite/rpl/r/rpl_non_direct_mixed_mixing_engines.result suite/rpl/r/rpl_mixed_mixing_engines.result
|
||||
|
10
mysql-test/suite/rpl/t/rpl_row_drop_create_temp_table.test
Normal file
10
mysql-test/suite/rpl/t/rpl_row_drop_create_temp_table.test
Normal file
@ -0,0 +1,10 @@
|
||||
###################################################################################
|
||||
# This test cases evaluates the mixture of non-transactional and transcational
|
||||
# tables. Specifically when drop temporary tables and create temporary tables
|
||||
# are used.
|
||||
###################################################################################
|
||||
--source include/have_binlog_format_row.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/have_innodb.inc
|
||||
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.test
|
10
mysql-test/suite/rpl/t/rpl_stm_drop_create_temp_table.test
Normal file
10
mysql-test/suite/rpl/t/rpl_stm_drop_create_temp_table.test
Normal file
@ -0,0 +1,10 @@
|
||||
###################################################################################
|
||||
# This test cases evaluates the mixture of non-transactional and transcational
|
||||
# tables. Specifically when drop temporary tables and create temporary tables
|
||||
# are used.
|
||||
###################################################################################
|
||||
--source include/have_binlog_format_statement.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/have_innodb.inc
|
||||
|
||||
--source extra/rpl_tests/rpl_drop_create_temp_table.test
|
@ -1 +0,0 @@
|
||||
--default-storage-engine=MyISAM
|
@ -1,228 +0,0 @@
|
||||
################################################################################
|
||||
# BUG#51894 Replication failure with SBR on DROP TEMPORARY TABLE inside a
|
||||
# transaction
|
||||
# BUG#52616 Temp table prevents switch binlog format from STATEMENT to ROW
|
||||
#
|
||||
# This test verifies what follows:
|
||||
#
|
||||
# 1 - If the following statements are classified as unsafe:
|
||||
# 1.1 - INSERT INTO t_myisam SELECT * FROM t_myisam_temp
|
||||
# 1.2 - INSERT INTO t_myisam_temp SELECT * FROM t_myisam
|
||||
#
|
||||
# 2 - If the following statements are classified as safe:
|
||||
# 1.7 - INSERT INTO t_innodb SELECT * FROM t_myisam_temp
|
||||
# 1.8 - INSERT INTO t_myisam_temp SELECT * FROM t_innodb
|
||||
#
|
||||
# 3 - If we can switch from statement to row format.
|
||||
#
|
||||
# 4 - If statements that can manipulate a temporary table and do not cause an
|
||||
# implicit commit are kept in the boundaries of an on-going transaction. For
|
||||
# instance:
|
||||
# 4.1 - CREATE TEMPORARY TABLE
|
||||
# 4.2 - CREATE TEMPORARY TABLE LIKE
|
||||
# 4.3 - CREATE TEMPORARY TABLE SELECT * FROM
|
||||
# 4.4 - INSERT/UPDATE/DELETE (Note that only inserts are verified)
|
||||
# 4.5 - INSERT INTO t_myisam SELECT * FROM t_myisam_temp
|
||||
# 4.6 - INSERT INTO t_myisam_temp SELECT * FROM t_myisam
|
||||
# 4.7 - INSERT INTO t_innodb SELECT * FROM t_myisam_temp
|
||||
# 4.8 - INSERT INTO t_myisam_temp SELECT * FROM t_innodb
|
||||
#
|
||||
# 5 - If transactions that have a DROP TEMPORARY are always written to the
|
||||
# binary log regardless of the mode and the outcome: commit or rollback.
|
||||
#
|
||||
# 6 - In particular, if the current statement logging format is set to row
|
||||
# the CREATE TEMPORARY is not logged and the DROP TEMPORARY is extended with
|
||||
# the IF EXISTS clause.
|
||||
#
|
||||
# 7 - It verifies if the CONNECTION_ID along with a non-transactional
|
||||
# table is written outside the transaction boundaries and is not classified
|
||||
# as unsafe. See BUG#53075.
|
||||
#
|
||||
# 8 - It verifies if OPTION_KEEP_LOG is set and thus forcing to write the
|
||||
# trx-cache to the binary log when an rollback is issued and only trx-tables
|
||||
# were updated. See BUG#53421.
|
||||
################################################################################
|
||||
|
||||
source include/master-slave.inc;
|
||||
source include/have_binlog_format_statement.inc;
|
||||
source include/have_innodb.inc;
|
||||
|
||||
CALL mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT");
|
||||
|
||||
--echo ########################################################################
|
||||
--echo # VERIFY ITEMS 1 and 2
|
||||
--echo ########################################################################
|
||||
|
||||
--echo #
|
||||
--echo # Create temporary tables to verify when statements involving temporary
|
||||
--echo # tables are classified as safe or unsafe by printing out the warning
|
||||
--echo # messages.
|
||||
--echo #
|
||||
connection master;
|
||||
CREATE TABLE t_myisam(id int) engine= MyIsam;
|
||||
INSERT INTO t_myisam VALUES(1);
|
||||
CREATE TABLE t_innodb(id int) engine= Innodb;
|
||||
INSERT INTO t_innodb VALUES(1);
|
||||
CREATE TEMPORARY TABLE t_myisam_temp(id int) engine= MyIsam;
|
||||
INSERT INTO t_myisam_temp VALUES(1);
|
||||
CREATE TEMPORARY TABLE t_innodb_temp(id int) engine= Innodb;
|
||||
INSERT INTO t_innodb_temp VALUES(1);
|
||||
|
||||
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||
BEGIN;
|
||||
INSERT INTO t_myisam SELECT * FROM t_myisam_temp;
|
||||
INSERT INTO t_innodb SELECT * FROM t_myisam_temp;
|
||||
INSERT INTO t_innodb SELECT * FROM t_innodb_temp;
|
||||
ROLLBACK;
|
||||
|
||||
BEGIN;
|
||||
INSERT INTO t_myisam SELECT * FROM t_innodb_temp;
|
||||
INSERT INTO t_innodb SELECT * FROM t_myisam_temp;
|
||||
INSERT INTO t_innodb SELECT * FROM t_innodb_temp;
|
||||
ROLLBACK;
|
||||
|
||||
--echo ########################################################################
|
||||
--echo # VERIFY ITEM 3
|
||||
--echo ########################################################################
|
||||
|
||||
--echo #
|
||||
--echo # When there is a temporary table we can switch between the mixed and
|
||||
--echo # row formats. However, we cannot switch to the statement format.
|
||||
--echo #
|
||||
SET BINLOG_FORMAT=MIXED;
|
||||
SET BINLOG_FORMAT=ROW;
|
||||
SET BINLOG_FORMAT=MIXED;
|
||||
--error ER_TEMP_TABLE_PREVENTS_SWITCH_OUT_OF_RBR
|
||||
SET BINLOG_FORMAT=STATEMENT;
|
||||
|
||||
--echo #
|
||||
--echo # When there is a temporary table we can switch between the mixed and
|
||||
--echo # row formats. However, we cannot swith to the statement format.
|
||||
--echo #
|
||||
SET BINLOG_FORMAT=MIXED;
|
||||
DROP TABLE t_myisam_temp, t_innodb_temp, t_myisam, t_innodb;
|
||||
source include/show_binlog_events.inc;
|
||||
|
||||
--echo ########################################################################
|
||||
--echo # VERIFY ITEMS 4 and 5
|
||||
--echo ########################################################################
|
||||
|
||||
--echo #
|
||||
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||
BEGIN;
|
||||
CREATE TEMPORARY TABLE tmp1(id int) engine= MyIsam;
|
||||
INSERT INTO tmp1 VALUES(1);
|
||||
CREATE TEMPORARY TABLE tmp2 LIKE tmp1;
|
||||
INSERT INTO tmp2 VALUES(1);
|
||||
CREATE TEMPORARY TABLE tmp3 engine= MyIsam SELECT * FROM tmp1;
|
||||
INSERT INTO tmp3 VALUES(1);
|
||||
DROP TEMPORARY TABLE tmp1;
|
||||
DROP TEMPORARY TABLE tmp2;
|
||||
DROP TEMPORARY TABLE tmp3;
|
||||
COMMIT;
|
||||
source include/show_binlog_events.inc;
|
||||
|
||||
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||
BEGIN;
|
||||
CREATE TEMPORARY TABLE tmp1(id int) engine= MyIsam;
|
||||
INSERT INTO tmp1 VALUES(1);
|
||||
CREATE TEMPORARY TABLE tmp2 LIKE tmp1;
|
||||
INSERT INTO tmp2 VALUES(1);
|
||||
CREATE TEMPORARY TABLE tmp3 engine= MyIsam SELECT * FROM tmp1;
|
||||
INSERT INTO tmp3 VALUES(1);
|
||||
DROP TEMPORARY TABLE tmp1;
|
||||
DROP TEMPORARY TABLE tmp2;
|
||||
DROP TEMPORARY TABLE tmp3;
|
||||
ROLLBACK;
|
||||
source include/show_binlog_events.inc;
|
||||
|
||||
--echo ########################################################################
|
||||
--echo # VERIFY ITEM 6
|
||||
--echo ########################################################################
|
||||
|
||||
SET BINLOG_FORMAT=STATEMENT;
|
||||
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||
CREATE TEMPORARY TABLE tmp1(id int) engine= MyIsam;
|
||||
CREATE TEMPORARY TABLE tmp2 LIKE tmp1;
|
||||
CREATE TEMPORARY TABLE tmp3 engine= MyIsam SELECT * FROM tmp1;
|
||||
SET BINLOG_FORMAT=ROW;
|
||||
DROP TEMPORARY TABLE tmp1;
|
||||
BEGIN;
|
||||
INSERT INTO tmp2 VALUES(1);
|
||||
DROP TEMPORARY TABLE tmp2;
|
||||
INSERT INTO tmp3 VALUES(1);
|
||||
DROP TEMPORARY TABLE tmp3;
|
||||
COMMIT;
|
||||
source include/show_binlog_events.inc;
|
||||
|
||||
SET BINLOG_FORMAT=STATEMENT;
|
||||
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||
CREATE TEMPORARY TABLE tmp1(id int) engine= MyIsam;
|
||||
CREATE TEMPORARY TABLE tmp2 LIKE tmp1;
|
||||
CREATE TEMPORARY TABLE tmp3 engine= MyIsam SELECT * FROM tmp1;
|
||||
SET BINLOG_FORMAT=ROW;
|
||||
DROP TEMPORARY TABLE tmp1;
|
||||
BEGIN;
|
||||
INSERT INTO tmp2 VALUES(1);
|
||||
DROP TEMPORARY TABLE tmp2;
|
||||
INSERT INTO tmp3 VALUES(1);
|
||||
DROP TEMPORARY TABLE tmp3;
|
||||
ROLLBACK;
|
||||
source include/show_binlog_events.inc;
|
||||
|
||||
--echo ########################################################################
|
||||
--echo # VERIFY ITEM 7
|
||||
--echo ########################################################################
|
||||
|
||||
SET BINLOG_FORMAT=STATEMENT;
|
||||
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||
|
||||
CREATE TEMPORARY TABLE tmp1(id int) engine= MyIsam;
|
||||
CREATE TABLE t_myisam (f1 BIGINT) ENGINE = MyISAM;
|
||||
CREATE TABLE t_innodb (f1 BIGINT) ENGINE = Innodb;
|
||||
|
||||
BEGIN;
|
||||
INSERT INTO t_myisam VALUES(CONNECTION_ID());
|
||||
INSERT INTO tmp1 VALUES(1);
|
||||
INSERT INTO t_myisam VALUES(1);
|
||||
INSERT INTO t_innodb VALUES(1);
|
||||
INSERT INTO t_myisam VALUES(CONNECTION_ID());
|
||||
INSERT INTO t_innodb VALUES(1);
|
||||
COMMIT;
|
||||
source include/show_binlog_events.inc;
|
||||
|
||||
--echo ########################################################################
|
||||
--echo # VERIFY ITEM 8
|
||||
--echo ########################################################################
|
||||
#
|
||||
# Before the patch for BUG#53421, nothing were written to the binary log on
|
||||
# behalf of the transaction presented below:
|
||||
#
|
||||
SET BINLOG_FORMAT=MIXED;
|
||||
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||
BEGIN;
|
||||
CREATE TEMPORARY TABLE tmp2 SELECT * FROM t_innodb;
|
||||
INSERT INTO t_innodb VALUES(1);
|
||||
INSERT INTO t_innodb VALUES(1);
|
||||
ROLLBACK;
|
||||
source include/show_binlog_events.inc;
|
||||
|
||||
--echo ###################################################################################
|
||||
--echo # CHECK CONSISTENCY
|
||||
--echo ###################################################################################
|
||||
sync_slave_with_master;
|
||||
connection master;
|
||||
|
||||
--exec $MYSQL_DUMP --compact --order-by-primary --skip-extended-insert --no-create-info test > $MYSQLTEST_VARDIR/tmp/test-nmt-master.sql
|
||||
--exec $MYSQL_DUMP_SLAVE --compact --order-by-primary --skip-extended-insert --no-create-info test > $MYSQLTEST_VARDIR/tmp/test-nmt-slave.sql
|
||||
--diff_files $MYSQLTEST_VARDIR/tmp/test-nmt-master.sql $MYSQLTEST_VARDIR/tmp/test-nmt-slave.sql
|
||||
|
||||
--echo ###################################################################################
|
||||
--echo # CLEAN UP
|
||||
--echo ###################################################################################
|
||||
connection master;
|
||||
|
||||
DROP TABLE t_myisam;
|
||||
DROP TABLE t_innodb;
|
||||
|
||||
sync_slave_with_master;
|
@ -10,5 +10,8 @@
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
rpl_ndb_stm_innodb : Bug#54850 2010-07-02 alik rpl_ndb.rpl_ndb_stm_innodb and rpl_ndb.rpl_ndb_2other fails
|
||||
rpl_ndb_2other : Bug#54850 2010-07-02 alik rpl_ndb.rpl_ndb_stm_innodb and rpl_ndb.rpl_ndb_2other fails
|
||||
|
||||
# the below testcase have been reworked to avoid the bug, test contains comment, keep bug open
|
||||
rpl_ndb_2ndb : Bug#45974: rpl_ndb_2ndb fails sporadically
|
||||
|
@ -1,20 +1,20 @@
|
||||
select @@global.large_files_support;
|
||||
@@global.large_files_support
|
||||
0
|
||||
1
|
||||
select @@session.large_files_support;
|
||||
ERROR HY000: Variable 'large_files_support' is a GLOBAL variable
|
||||
show global variables like 'large_files_support';
|
||||
Variable_name Value
|
||||
large_files_support OFF
|
||||
large_files_support ON
|
||||
show session variables like 'large_files_support';
|
||||
Variable_name Value
|
||||
large_files_support OFF
|
||||
large_files_support ON
|
||||
select * from information_schema.global_variables where variable_name='large_files_support';
|
||||
VARIABLE_NAME VARIABLE_VALUE
|
||||
LARGE_FILES_SUPPORT OFF
|
||||
LARGE_FILES_SUPPORT ON
|
||||
select * from information_schema.session_variables where variable_name='large_files_support';
|
||||
VARIABLE_NAME VARIABLE_VALUE
|
||||
LARGE_FILES_SUPPORT OFF
|
||||
LARGE_FILES_SUPPORT ON
|
||||
set global large_files_support=1;
|
||||
ERROR HY000: Variable 'large_files_support' is a read only variable
|
||||
set session large_files_support=1;
|
||||
|
@ -62,6 +62,16 @@ a b a b
|
||||
6 val6 6 val6
|
||||
affected rows: 2
|
||||
Expecting affected rows: 2
|
||||
SET SESSION sql_select_limit = 0;
|
||||
affected rows: 0
|
||||
SELECT * FROM t1;
|
||||
a b
|
||||
affected rows: 0
|
||||
Expecting affected rows: 0
|
||||
SELECT * FROM t1 INNER JOIN t2 ON t1.a = t2.a;
|
||||
a b a b
|
||||
affected rows: 0
|
||||
Expecting affected rows: 0
|
||||
'#-----------------------------FN_DYNVARS_165_03---------------#'
|
||||
SET SESSION sql_select_limit = 2;
|
||||
affected rows: 0
|
||||
|
@ -86,6 +86,14 @@ SELECT * FROM t1;
|
||||
SELECT * FROM t1 INNER JOIN t2 ON t1.a = t2.a;
|
||||
--echo Expecting affected rows: 2
|
||||
|
||||
SET SESSION sql_select_limit = 0;
|
||||
|
||||
SELECT * FROM t1;
|
||||
--echo Expecting affected rows: 0
|
||||
|
||||
SELECT * FROM t1 INNER JOIN t2 ON t1.a = t2.a;
|
||||
--echo Expecting affected rows: 0
|
||||
|
||||
--echo '#-----------------------------FN_DYNVARS_165_03---------------#'
|
||||
#
|
||||
# Small value with LIMIT Clause
|
||||
|
@ -1 +1 @@
|
||||
--loose-performance-schema=0 --skip-grant-tables --skip-name-resolve --loose-safemalloc-mem-limit=4000000
|
||||
--loose-performance-schema=0 --skip-grant-tables --skip-name-resolve
|
||||
|
@ -10,9 +10,10 @@
|
||||
#
|
||||
##############################################################################
|
||||
kill : Bug#37780 2008-12-03 HHunger need some changes to be robust enough for pushbuild.
|
||||
query_cache_28249 : Bug#43861 2009-03-25 main.query_cache_28249 fails sporadically
|
||||
sp_sync : Bug#48157 2010-02-06 5.5-m3 demands a differnt solution
|
||||
plugin_load : Bug#42144 2009-12-21 alik plugin_load fails
|
||||
partition_innodb_plugin : Bug#53307 2010-04-30 VasilDimov valgrind warnings
|
||||
lowercase_table3 : Bug#54845 2010-06-30 alik main.lowercase_table3 on Mac OSX
|
||||
mysqlhotcopy_myisam : bug#54129 2010-06-04 Horst
|
||||
mysqlhotcopy_archive : bug#54129 2010-06-04 Horst
|
||||
plugin_load : Bug#42144 2009-12-21 alik plugin_load fails
|
||||
partition_innodb_plugin : Bug#53307 2010-04-30 VasilDimov valgrind warnings
|
||||
query_cache_28249 : Bug#43861 2009-03-25 main.query_cache_28249 fails sporadically
|
||||
sp_sync : Bug#48157 2010-02-06 5.5-m3 demands a differnt solution
|
||||
|
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