diff --git a/client/client_priv.h b/client/client_priv.h index 3ad46cf4b9b..7a6fa8f3bc8 100644 --- a/client/client_priv.h +++ b/client/client_priv.h @@ -1,6 +1,6 @@ /* Copyright (c) 2001, 2012, Oracle and/or its affiliates. - Copyright (c) 2009, 2016, MariaDB + Copyright (c) 2009, 2020, MariaDB 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 @@ -99,6 +99,7 @@ enum options_client OPT_REPORT_PROGRESS, OPT_SKIP_ANNOTATE_ROWS_EVENTS, OPT_SSL_CRL, OPT_SSL_CRLPATH, + OPT_IGNORE_DATA, OPT_PRINT_ROW_COUNT, OPT_PRINT_ROW_EVENT_POSITIONS, OPT_SHUTDOWN_WAIT_FOR_SLAVES, OPT_MAX_CLIENT_OPTION /* should be always the last */ diff --git a/client/mysql_upgrade.c b/client/mysql_upgrade.c index 1bd408b3493..8c4a0f0a18e 100644 --- a/client/mysql_upgrade.c +++ b/client/mysql_upgrade.c @@ -498,7 +498,7 @@ static void find_tool(char *tool_executable_name, const char *tool_name, len= (int)(last_fn_libchar - self_name); - my_snprintf(tool_executable_name, FN_REFLEN, "%.*s%c%s", + my_snprintf(tool_executable_name, FN_REFLEN, "%.*b%c%s", len, self_name, FN_LIBCHAR, tool_name); } diff --git a/client/mysqldump.c b/client/mysqldump.c index c9e95dc74ee..09790ca6720 100644 --- a/client/mysqldump.c +++ b/client/mysqldump.c @@ -1,6 +1,6 @@ /* Copyright (c) 2000, 2013, Oracle and/or its affiliates. - Copyright (c) 2010, 2019, MariaDB Corporation. + Copyright (c) 2010, 2020, MariaDB Corporation. 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 @@ -90,6 +90,7 @@ /* Max length GTID position that we will output. */ #define MAX_GTID_LENGTH 1024 +static my_bool ignore_table_data(const uchar *hash_key, size_t len); static void add_load_option(DYNAMIC_STRING *str, const char *option, const char *option_value); static ulong find_set(TYPELIB *, const char *, size_t, char **, uint *); @@ -209,7 +210,7 @@ TYPELIB compatible_mode_typelib= {array_elements(compatible_mode_names) - 1, #define MED_ENGINES "MRG_MyISAM, MRG_ISAM, CONNECT, OQGRAPH, SPIDER, VP, FEDERATED" -static HASH ignore_table; +static HASH ignore_table, ignore_data; static HASH ignore_database; @@ -380,6 +381,12 @@ static struct my_option my_long_options[] = "use the directive multiple times, once for each database. Only takes effect " "when used together with --all-databases|-A", 0, 0, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, + {"ignore-table-data", OPT_IGNORE_DATA, + "Do not dump the specified table data. To specify more than one table " + "to ignore, use the directive multiple times, once for each table. " + "Each table must be specified with both database and table names, e.g., " + "--ignore-table-data=database.table.", + 0, 0, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, {"ignore-table", OPT_IGNORE_TABLE, "Do not dump the specified table. To specify more than one table to ignore, " "use the directive multiple times, once for each table. Each table must " @@ -904,6 +911,18 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)), if (my_hash_insert(&ignore_database, (uchar*) my_strdup(argument, MYF(0)))) exit(EX_EOM); break; + case (int) OPT_IGNORE_DATA: + { + if (!strchr(argument, '.')) + { + fprintf(stderr, + "Illegal use of option --ignore-table-data=.\n"); + exit(1); + } + if (my_hash_insert(&ignore_data, (uchar*)my_strdup(argument, MYF(0)))) + exit(EX_EOM); + break; + } case (int) OPT_IGNORE_TABLE: { if (!strchr(argument, '.')) @@ -1011,6 +1030,10 @@ static int get_options(int *argc, char ***argv) (uchar*) my_strdup("mysql.transaction_registry", MYF(MY_WME)))) return(EX_EOM); + if (my_hash_init(&ignore_data, charset_info, 16, 0, 0, + (my_hash_get_key) get_table_key, my_free, 0)) + return(EX_EOM); + if ((ho_error= handle_options(argc, argv, my_long_options, get_one_option))) return(ho_error); @@ -1667,6 +1690,8 @@ static void free_resources() my_hash_free(&ignore_database); if (my_hash_inited(&ignore_table)) my_hash_free(&ignore_table); + if (my_hash_inited(&ignore_data)) + my_hash_free(&ignore_data); dynstr_free(&extended_row); dynstr_free(&dynamic_where); dynstr_free(&insert_pat); @@ -3668,7 +3693,7 @@ static char *alloc_query_str(size_t size) */ -static void dump_table(char *table, char *db) +static void dump_table(char *table, char *db, const uchar *hash_key, size_t len) { char ignore_flag; char buf[200], table_buff[NAME_LEN+3]; @@ -3698,7 +3723,7 @@ static void dump_table(char *table, char *db) DBUG_VOID_RETURN; /* Check --no-data flag */ - if (opt_no_data) + if (opt_no_data || (hash_key && ignore_table_data(hash_key, len))) { verbose_msg("-- Skipping dump data for table '%s', --no-data was used\n", table); @@ -4643,10 +4668,14 @@ static int init_dumping(char *database, int init_func(char*)) /* Return 1 if we should copy the table */ -my_bool include_table(const uchar *hash_key, size_t len) +static my_bool include_table(const uchar *hash_key, size_t len) { return ! my_hash_search(&ignore_table, hash_key, len); } +static my_bool ignore_table_data(const uchar *hash_key, size_t len) +{ + return my_hash_search(&ignore_data, hash_key, len) != NULL; +} static int dump_all_tables_in_db(char *database) @@ -4712,7 +4741,7 @@ static int dump_all_tables_in_db(char *database) char *end= strmov(afterdot, table); if (include_table((uchar*) hash_key, end - hash_key)) { - dump_table(table,database); + dump_table(table, database, (uchar*) hash_key, end - hash_key); my_free(order_by); order_by= 0; if (opt_dump_triggers && mysql_get_server_version(mysql) >= 50009) @@ -5110,7 +5139,7 @@ static int dump_selected_tables(char *db, char **table_names, int tables) for (pos= dump_tables; pos < end; pos++) { DBUG_PRINT("info",("Dumping table %s", *pos)); - dump_table(*pos, db); + dump_table(*pos, db, NULL, 0); if (opt_dump_triggers && mysql_get_server_version(mysql) >= 50009) { diff --git a/client/mysqltest.cc b/client/mysqltest.cc index 4cda66ab087..35a61ed3686 100644 --- a/client/mysqltest.cc +++ b/client/mysqltest.cc @@ -588,8 +588,7 @@ static void cleanup_and_exit(int exit_code); ATTRIBUTE_NORETURN void really_die(const char *msg); -void report_or_die(const char *fmt, ...) ATTRIBUTE_FORMAT(printf, 1, 2); -ATTRIBUTE_NORETURN ATTRIBUTE_FORMAT(printf, 1, 2) +void report_or_die(const char *fmt, ...); void die(const char *fmt, ...); static void make_error_message(char *buf, size_t len, const char *fmt, va_list args); ATTRIBUTE_NORETURN ATTRIBUTE_FORMAT(printf, 1, 2) @@ -718,7 +717,7 @@ public: DBUG_ASSERT(ds->str); #ifdef EXTRA_DEBUG - DBUG_PRINT("extra", ("str: %*s", (int) ds->length, ds->str)); + DBUG_PRINT("extra", ("str: %*b", (int) ds->length, ds->str)); #endif if (fwrite(ds->str, 1, ds->length, m_file) != ds->length) @@ -1140,71 +1139,6 @@ void do_eval(DYNAMIC_STRING *query_eval, const char *query, } -/* - Run query and dump the result to stderr in vertical format - - NOTE! This function should be safe to call when an error - has occurred and thus any further errors will be ignored (although logged) - - SYNOPSIS - show_query - mysql - connection to use - query - query to run - -*/ - -static void show_query(MYSQL* mysql, const char* query) -{ - MYSQL_RES* res; - DBUG_ENTER("show_query"); - - if (!mysql) - DBUG_VOID_RETURN; - - if (mysql_query(mysql, query)) - { - log_msg("Error running query '%s': %d %s", - query, mysql_errno(mysql), mysql_error(mysql)); - DBUG_VOID_RETURN; - } - - if ((res= mysql_store_result(mysql)) == NULL) - { - /* No result set returned */ - DBUG_VOID_RETURN; - } - - { - MYSQL_ROW row; - unsigned int i; - unsigned int row_num= 0; - unsigned int num_fields= mysql_num_fields(res); - MYSQL_FIELD *fields= mysql_fetch_fields(res); - - fprintf(stderr, "=== %s ===\n", query); - while ((row= mysql_fetch_row(res))) - { - unsigned long *lengths= mysql_fetch_lengths(res); - row_num++; - - fprintf(stderr, "---- %d. ----\n", row_num); - for(i= 0; i < num_fields; i++) - { - fprintf(stderr, "%s\t%.*s\n", - fields[i].name, - (int)lengths[i], row[i] ? row[i] : "NULL"); - } - } - for (i= 0; i < strlen(query)+8; i++) - fprintf(stderr, "="); - fprintf(stderr, "\n\n"); - } - mysql_free_result(res); - - DBUG_VOID_RETURN; -} - - /* Show any warnings just before the error. Since the last error is added to the warning stack, only print @@warning_count-1 warnings. @@ -1363,7 +1297,7 @@ void check_command_args(struct st_command *command, /* Check required arg */ if (arg->ds->length == 0 && arg->required) - die("Missing required argument '%s' to command '%.*s'", arg->argname, + die("Missing required argument '%s' to command '%.*b'", arg->argname, command->first_word_len, command->query); } @@ -1372,7 +1306,7 @@ void check_command_args(struct st_command *command, while(ptr <= command->end && *ptr != '#') { if (*ptr && *ptr != ' ') - die("Extra argument '%s' passed to '%.*s'", + die("Extra argument '%s' passed to '%.*b'", ptr, command->first_word_len, command->query); ptr++; } @@ -1392,7 +1326,7 @@ void handle_command_error(struct st_command *command, uint error, if (command->abort_on_error) { - report_or_die("command \"%.*s\" failed with error: %u my_errno: %d " + report_or_die("command \"%.*b\" failed with error: %u my_errno: %d " "errno: %d", command->first_word_len, command->query, error, my_errno, sys_errno); @@ -1410,7 +1344,7 @@ void handle_command_error(struct st_command *command, uint error, DBUG_VOID_RETURN; } if (command->expected_errors.count > 0) - report_or_die("command \"%.*s\" failed with wrong error: %u " + report_or_die("command \"%.*b\" failed with wrong error: %u " "my_errno: %d errno: %d", command->first_word_len, command->query, error, my_errno, sys_errno); @@ -1419,7 +1353,7 @@ void handle_command_error(struct st_command *command, uint error, command->expected_errors.err[0].code.errnum != 0) { /* Error code we wanted was != 0, i.e. not an expected success */ - report_or_die("command \"%.*s\" succeeded - should have failed with " + report_or_die("command \"%.*b\" succeeded - should have failed with " "errno %d...", command->first_word_len, command->query, command->expected_errors.err[0].code.errnum); @@ -2372,7 +2306,7 @@ static int strip_surrounding(char* str, char c1, char c2) static void strip_parentheses(struct st_command *command) { if (strip_surrounding(command->first_argument, '(', ')')) - die("%.*s - argument list started with '%c' must be ended with '%c'", + die("%.*b - argument list started with '%c' must be ended with '%c'", command->first_word_len, command->query, '(', ')'); } @@ -3028,7 +2962,7 @@ void eval_expr(VAR *v, const char *p, const char **p_end, /* Make sure there was just a $variable and nothing else */ const char* end= *p_end + 1; if (end < expected_end && !open_end) - die("Found junk '%.*s' after $variable in expression", + die("Found junk '%.*b' after $variable in expression", (int)(expected_end - end - 1), end); DBUG_VOID_RETURN; @@ -3522,10 +3456,10 @@ int do_modify_var(struct st_command *command, const char *p= command->first_argument; VAR* v; if (!*p) - die("Missing argument to %.*s", command->first_word_len, + die("Missing argument to %.*b", command->first_word_len, command->query); if (*p != '$') - die("The argument to %.*s must be a variable (start with $)", + die("The argument to %.*b must be a variable (start with $)", command->first_word_len, command->query); v= var_get(p, &p, 1, 0); if (! v->is_int) @@ -4792,9 +4726,6 @@ void do_sync_with_master2(struct st_command *command, long offset, if (!result_str || result < 0) { /* master_pos_wait returned NULL or < 0 */ - show_query(mysql, "SHOW MASTER STATUS"); - show_query(mysql, "SHOW SLAVE STATUS"); - show_query(mysql, "SHOW PROCESSLIST"); fprintf(stderr, "analyze: sync_with_master\n"); if (!result_str) @@ -4805,18 +4736,18 @@ void do_sync_with_master2(struct st_command *command, long offset, information is not initialized, the arguments are incorrect, or an error has occurred */ - die("%.*s failed: '%s' returned NULL " \ + die("%.*b failed: '%s' returned NULL " \ "indicating slave SQL thread failure", command->first_word_len, command->query, query_buf); } if (result == -1) - die("%.*s failed: '%s' returned -1 " \ + die("%.*b failed: '%s' returned -1 " \ "indicating timeout after %d seconds", command->first_word_len, command->query, query_buf, timeout); else - die("%.*s failed: '%s' returned unknown result :%d", + die("%.*b failed: '%s' returned unknown result :%d", command->first_word_len, command->query, query_buf, result); } @@ -4981,17 +4912,17 @@ int do_sleep(struct st_command *command, my_bool real_sleep) while (my_isspace(charset_info, *p)) p++; if (!*p) - die("Missing argument to %.*s", command->first_word_len, + die("Missing argument to %.*b", command->first_word_len, command->query); sleep_start= p; /* Check that arg starts with a digit, not handled by my_strtod */ if (!my_isdigit(charset_info, *sleep_start)) - die("Invalid argument to %.*s \"%s\"", command->first_word_len, + die("Invalid argument to %.*b \"%s\"", command->first_word_len, command->query, sleep_start); sleep_val= my_strtod(sleep_start, &sleep_end, &error); check_eol_junk_line(sleep_end); if (error) - die("Invalid argument to %.*s \"%s\"", command->first_word_len, + die("Invalid argument to %.*b \"%s\"", command->first_word_len, command->query, command->first_argument); dynstr_free(&ds_sleep); @@ -6012,7 +5943,7 @@ void do_connect(struct st_command *command) csname= strdup(con_options + sizeof("CHARSET=") - 1); } else - die("Illegal option to connect: %.*s", + die("Illegal option to connect: %.*b", (int) (end - con_options), con_options); /* Process next option */ con_options= end; @@ -6321,7 +6252,7 @@ void do_block(enum block_cmd cmd, struct st_command* command) enum block_op operand= find_operand(curr_ptr); if (operand == ILLEG_OP) - die("Found junk '%.*s' after $variable in condition", + die("Found junk '%.*b' after $variable in condition", (int)(expr_end - curr_ptr), curr_ptr); /* We could silently allow this, but may be confusing */ @@ -9510,6 +9441,7 @@ int main(int argc, char **argv) case Q_LET: do_let(command); break; case Q_EVAL_RESULT: die("'eval_result' command is deprecated"); + break; // never called but keep compiler calm case Q_EVAL: case Q_EVALP: case Q_QUERY_VERTICAL: @@ -10232,6 +10164,7 @@ void append_replace_regex(char* expr, char *expr_end, struct st_replace_regex* r return; err: + my_free(res->regex_arr.buffer); my_free(res); die("Error parsing replace_regex \"%s\"", expr); } diff --git a/cmake/maintainer.cmake b/cmake/maintainer.cmake index 49ef80ed11c..ab70ef3aea1 100644 --- a/cmake/maintainer.cmake +++ b/cmake/maintainer.cmake @@ -1,4 +1,5 @@ # Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2020, MariaDB # # 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 @@ -33,11 +34,16 @@ SET(MY_WARNING_FLAGS -Wnon-virtual-dtor -Wvla -Wwrite-strings - -Werror ) +FOREACH(F ${MY_WARNING_FLAGS}) + MY_CHECK_AND_SET_COMPILER_FLAG(${F} DEBUG RELWITHDEBINFO) +ENDFOREACH() + +SET(MY_ERROR_FLAGS -Werror) + IF(CMAKE_COMPILER_IS_GNUCC AND CMAKE_C_COMPILER_VERSION VERSION_LESS "6.0.0") - SET(MY_WARNING_FLAGS ${MY_WARNING_FLAGS} -Wno-error=maybe-uninitialized) + SET(MY_ERROR_FLAGS ${MY_ERROR_FLAGS} -Wno-error=maybe-uninitialized) ENDIF() IF(MYSQL_MAINTAINER_MODE MATCHES "OFF") @@ -46,7 +52,7 @@ ELSEIF(MYSQL_MAINTAINER_MODE MATCHES "AUTO") SET(WHERE DEBUG) ENDIF() -FOREACH(F ${MY_WARNING_FLAGS}) +FOREACH(F ${MY_ERROR_FLAGS}) MY_CHECK_AND_SET_COMPILER_FLAG(${F} ${WHERE}) ENDFOREACH() diff --git a/extra/crc32-vpmsum/clang_workaround.h b/extra/crc32-vpmsum/clang_workaround.h index b5e7dae011c..915f7e5282f 100644 --- a/extra/crc32-vpmsum/clang_workaround.h +++ b/extra/crc32-vpmsum/clang_workaround.h @@ -39,7 +39,12 @@ __vector unsigned long long __builtin_pack_vector (unsigned long __a, return __v; } -#ifndef vec_xxpermdi +/* + * Clang 7 changed the behavior of vec_xxpermdi in order to provide the same + * behavior of GCC. That means code adapted to Clang >= 7 does not work on + * Clang <= 6. So, fallback to __builtin_unpack_vector() on Clang <= 6. + */ +#if !defined vec_xxpermdi || __clang_major__ <= 6 static inline unsigned long __builtin_unpack_vector (__vector unsigned long long __v, @@ -62,9 +67,9 @@ static inline unsigned long __builtin_unpack_vector_0 (__vector unsigned long long __v) { #if defined(__BIG_ENDIAN__) - return vec_xxpermdi(__v, __v, 0x0)[1]; - #else return vec_xxpermdi(__v, __v, 0x0)[0]; + #else + return vec_xxpermdi(__v, __v, 0x3)[0]; #endif } @@ -72,9 +77,9 @@ static inline unsigned long __builtin_unpack_vector_1 (__vector unsigned long long __v) { #if defined(__BIG_ENDIAN__) - return vec_xxpermdi(__v, __v, 0x3)[1]; - #else return vec_xxpermdi(__v, __v, 0x3)[0]; + #else + return vec_xxpermdi(__v, __v, 0x0)[0]; #endif } #endif /* vec_xxpermdi */ diff --git a/extra/mariabackup/xtrabackup.cc b/extra/mariabackup/xtrabackup.cc index 1b2f681dd8a..3db7d1c2dcd 100644 --- a/extra/mariabackup/xtrabackup.cc +++ b/extra/mariabackup/xtrabackup.cc @@ -4,7 +4,7 @@ MariaBackup: hot backup tool for InnoDB Originally Created 3/3/2009 Yasufumi Kinoshita Written by Alexey Kopytov, Aleksandr Kuzminsky, Stewart Smith, Vadim Tkachenko, Yasufumi Kinoshita, Ignacio Nin and Baron Schwartz. -(c) 2017, 2019, MariaDB Corporation. +(c) 2017, 2020, MariaDB Corporation. Portions written by Marko Mäkelä. This program is free software; you can redistribute it and/or modify @@ -72,6 +72,7 @@ Street, Fifth Floor, Boston, MA 02110-1335 USA #include #include "trx0sys.h" #include +#include "ha_innodb.h" #include #include @@ -120,6 +121,8 @@ my_bool xtrabackup_print_param; my_bool xtrabackup_export; +my_bool xtrabackup_rollback_xa; + longlong xtrabackup_use_memory; uint opt_protocol; @@ -735,11 +738,12 @@ typedef struct { enum options_xtrabackup { - OPT_XTRA_TARGET_DIR = 1000, /* make sure it is larger - than OPT_MAX_CLIENT_OPTION */ + OPT_XTRA_TARGET_DIR= 1000, /* make sure it is larger + than OPT_MAX_CLIENT_OPTION */ OPT_XTRA_BACKUP, OPT_XTRA_PREPARE, OPT_XTRA_EXPORT, + OPT_XTRA_ROLLBACK_XA, OPT_XTRA_PRINT_PARAM, OPT_XTRA_USE_MEMORY, OPT_XTRA_THROTTLE, @@ -832,359 +836,405 @@ enum options_xtrabackup OPT_XTRA_CHECK_PRIVILEGES }; +struct my_option xb_client_options[]= { + {"verbose", 'V', "display verbose output", (G_PTR *) &verbose, + (G_PTR *) &verbose, 0, GET_BOOL, NO_ARG, FALSE, 0, 0, 0, 0, 0}, + {"version", 'v', "print xtrabackup version information", + (G_PTR *) &xtrabackup_version, (G_PTR *) &xtrabackup_version, 0, GET_BOOL, + NO_ARG, 0, 0, 0, 0, 0, 0}, + {"target-dir", OPT_XTRA_TARGET_DIR, "destination directory", + (G_PTR *) &xtrabackup_target_dir, (G_PTR *) &xtrabackup_target_dir, 0, + GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, + {"backup", OPT_XTRA_BACKUP, "take backup to target-dir", + (G_PTR *) &xtrabackup_backup, (G_PTR *) &xtrabackup_backup, 0, GET_BOOL, + NO_ARG, 0, 0, 0, 0, 0, 0}, + {"prepare", OPT_XTRA_PREPARE, + "prepare a backup for starting mysql server on the backup.", + (G_PTR *) &xtrabackup_prepare, (G_PTR *) &xtrabackup_prepare, 0, GET_BOOL, + NO_ARG, 0, 0, 0, 0, 0, 0}, + {"export", OPT_XTRA_EXPORT, + "create files to import to another database when prepare.", + (G_PTR *) &xtrabackup_export, (G_PTR *) &xtrabackup_export, 0, GET_BOOL, + NO_ARG, 0, 0, 0, 0, 0, 0}, + {"rollback-xa", OPT_XTRA_ROLLBACK_XA, + "Rollback prepared XA's on --prepare. " + "After preparing target directory with this option " + "it can no longer be a base for incremental backup.", + (G_PTR *) &xtrabackup_rollback_xa, (G_PTR *) &xtrabackup_rollback_xa, 0, + GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, + {"print-param", OPT_XTRA_PRINT_PARAM, + "print parameter of mysqld needed for copyback.", + (G_PTR *) &xtrabackup_print_param, (G_PTR *) &xtrabackup_print_param, 0, + GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, + {"use-memory", OPT_XTRA_USE_MEMORY, + "The value is used instead of buffer_pool_size", + (G_PTR *) &xtrabackup_use_memory, (G_PTR *) &xtrabackup_use_memory, 0, + GET_LL, REQUIRED_ARG, 100 * 1024 * 1024L, 1024 * 1024L, LONGLONG_MAX, 0, + 1024 * 1024L, 0}, + {"throttle", OPT_XTRA_THROTTLE, + "limit count of IO operations (pairs of read&write) per second to IOS " + "values (for '--backup')", + (G_PTR *) &xtrabackup_throttle, (G_PTR *) &xtrabackup_throttle, 0, + GET_LONG, REQUIRED_ARG, 0, 0, LONG_MAX, 0, 1, 0}, + {"log", OPT_LOG, "Ignored option for MySQL option compatibility", + (G_PTR *) &log_ignored_opt, (G_PTR *) &log_ignored_opt, 0, GET_STR, + OPT_ARG, 0, 0, 0, 0, 0, 0}, + {"log-copy-interval", OPT_XTRA_LOG_COPY_INTERVAL, + "time interval between checks done by log copying thread in milliseconds " + "(default is 1 second).", + (G_PTR *) &xtrabackup_log_copy_interval, + (G_PTR *) &xtrabackup_log_copy_interval, 0, GET_LONG, REQUIRED_ARG, 1000, + 0, LONG_MAX, 0, 1, 0}, + {"extra-lsndir", OPT_XTRA_EXTRA_LSNDIR, + "(for --backup): save an extra copy of the xtrabackup_checkpoints file " + "in this directory.", + (G_PTR *) &xtrabackup_extra_lsndir, (G_PTR *) &xtrabackup_extra_lsndir, 0, + GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, + {"incremental-lsn", OPT_XTRA_INCREMENTAL, + "(for --backup): copy only .ibd pages newer than specified LSN " + "'high:low'. ##ATTENTION##: If a wrong LSN value is specified, it is " + "impossible to diagnose this, causing the backup to be unusable. Be " + "careful!", + (G_PTR *) &xtrabackup_incremental, (G_PTR *) &xtrabackup_incremental, 0, + GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, + {"incremental-basedir", OPT_XTRA_INCREMENTAL_BASEDIR, + "(for --backup): copy only .ibd pages newer than backup at specified " + "directory.", + (G_PTR *) &xtrabackup_incremental_basedir, + (G_PTR *) &xtrabackup_incremental_basedir, 0, GET_STR, REQUIRED_ARG, 0, 0, + 0, 0, 0, 0}, + {"incremental-dir", OPT_XTRA_INCREMENTAL_DIR, + "(for --prepare): apply .delta files and logfile in the specified " + "directory.", + (G_PTR *) &xtrabackup_incremental_dir, + (G_PTR *) &xtrabackup_incremental_dir, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, + 0, 0, 0}, + {"tables", OPT_XTRA_TABLES, "filtering by regexp for table names.", + (G_PTR *) &xtrabackup_tables, (G_PTR *) &xtrabackup_tables, 0, GET_STR, + REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, + {"tables_file", OPT_XTRA_TABLES_FILE, + "filtering by list of the exact database.table name in the file.", + (G_PTR *) &xtrabackup_tables_file, (G_PTR *) &xtrabackup_tables_file, 0, + GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, + {"databases", OPT_XTRA_DATABASES, "filtering by list of databases.", + (G_PTR *) &xtrabackup_databases, (G_PTR *) &xtrabackup_databases, 0, + GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, + {"databases_file", OPT_XTRA_DATABASES_FILE, + "filtering by list of databases in the file.", + (G_PTR *) &xtrabackup_databases_file, + (G_PTR *) &xtrabackup_databases_file, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, + 0, 0, 0}, + {"tables-exclude", OPT_XTRA_TABLES_EXCLUDE, + "filtering by regexp for table names. " + "Operates the same way as --tables, but matched names are excluded from " + "backup. " + "Note that this option has a higher priority than --tables.", + (G_PTR *) &xtrabackup_tables_exclude, + (G_PTR *) &xtrabackup_tables_exclude, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, + 0, 0, 0}, + {"databases-exclude", OPT_XTRA_DATABASES_EXCLUDE, + "Excluding databases based on name, " + "Operates the same way as --databases, but matched names are excluded " + "from backup. " + "Note that this option has a higher priority than --databases.", + (G_PTR *) &xtrabackup_databases_exclude, + (G_PTR *) &xtrabackup_databases_exclude, 0, GET_STR, REQUIRED_ARG, 0, 0, + 0, 0, 0, 0}, -struct my_option xb_client_options[] = -{ - {"verbose", 'V', "display verbose output", - (G_PTR*) &verbose, (G_PTR*) &verbose, 0, GET_BOOL, NO_ARG, - FALSE, 0, 0, 0, 0, 0}, - {"version", 'v', "print xtrabackup version information", - (G_PTR *) &xtrabackup_version, (G_PTR *) &xtrabackup_version, 0, GET_BOOL, - NO_ARG, 0, 0, 0, 0, 0, 0}, - {"target-dir", OPT_XTRA_TARGET_DIR, "destination directory", (G_PTR*) &xtrabackup_target_dir, - (G_PTR*) &xtrabackup_target_dir, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, - {"backup", OPT_XTRA_BACKUP, "take backup to target-dir", - (G_PTR*) &xtrabackup_backup, (G_PTR*) &xtrabackup_backup, - 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, - {"prepare", OPT_XTRA_PREPARE, "prepare a backup for starting mysql server on the backup.", - (G_PTR*) &xtrabackup_prepare, (G_PTR*) &xtrabackup_prepare, - 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, - {"export", OPT_XTRA_EXPORT, "create files to import to another database when prepare.", - (G_PTR*) &xtrabackup_export, (G_PTR*) &xtrabackup_export, - 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, - {"print-param", OPT_XTRA_PRINT_PARAM, "print parameter of mysqld needed for copyback.", - (G_PTR*) &xtrabackup_print_param, (G_PTR*) &xtrabackup_print_param, - 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, - {"use-memory", OPT_XTRA_USE_MEMORY, "The value is used instead of buffer_pool_size", - (G_PTR*) &xtrabackup_use_memory, (G_PTR*) &xtrabackup_use_memory, - 0, GET_LL, REQUIRED_ARG, 100*1024*1024L, 1024*1024L, LONGLONG_MAX, 0, - 1024*1024L, 0}, - {"throttle", OPT_XTRA_THROTTLE, "limit count of IO operations (pairs of read&write) per second to IOS values (for '--backup')", - (G_PTR*) &xtrabackup_throttle, (G_PTR*) &xtrabackup_throttle, - 0, GET_LONG, REQUIRED_ARG, 0, 0, LONG_MAX, 0, 1, 0}, - {"log", OPT_LOG, "Ignored option for MySQL option compatibility", - (G_PTR*) &log_ignored_opt, (G_PTR*) &log_ignored_opt, 0, - GET_STR, OPT_ARG, 0, 0, 0, 0, 0, 0}, - {"log-copy-interval", OPT_XTRA_LOG_COPY_INTERVAL, "time interval between checks done by log copying thread in milliseconds (default is 1 second).", - (G_PTR*) &xtrabackup_log_copy_interval, (G_PTR*) &xtrabackup_log_copy_interval, - 0, GET_LONG, REQUIRED_ARG, 1000, 0, LONG_MAX, 0, 1, 0}, - {"extra-lsndir", OPT_XTRA_EXTRA_LSNDIR, "(for --backup): save an extra copy of the xtrabackup_checkpoints file in this directory.", - (G_PTR*) &xtrabackup_extra_lsndir, (G_PTR*) &xtrabackup_extra_lsndir, - 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, - {"incremental-lsn", OPT_XTRA_INCREMENTAL, "(for --backup): copy only .ibd pages newer than specified LSN 'high:low'. ##ATTENTION##: If a wrong LSN value is specified, it is impossible to diagnose this, causing the backup to be unusable. Be careful!", - (G_PTR*) &xtrabackup_incremental, (G_PTR*) &xtrabackup_incremental, - 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, - {"incremental-basedir", OPT_XTRA_INCREMENTAL_BASEDIR, "(for --backup): copy only .ibd pages newer than backup at specified directory.", - (G_PTR*) &xtrabackup_incremental_basedir, (G_PTR*) &xtrabackup_incremental_basedir, - 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, - {"incremental-dir", OPT_XTRA_INCREMENTAL_DIR, "(for --prepare): apply .delta files and logfile in the specified directory.", - (G_PTR*) &xtrabackup_incremental_dir, (G_PTR*) &xtrabackup_incremental_dir, - 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, - {"tables", OPT_XTRA_TABLES, "filtering by regexp for table names.", - (G_PTR*) &xtrabackup_tables, (G_PTR*) &xtrabackup_tables, - 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, - {"tables_file", OPT_XTRA_TABLES_FILE, "filtering by list of the exact database.table name in the file.", - (G_PTR*) &xtrabackup_tables_file, (G_PTR*) &xtrabackup_tables_file, - 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, - {"databases", OPT_XTRA_DATABASES, "filtering by list of databases.", - (G_PTR*) &xtrabackup_databases, (G_PTR*) &xtrabackup_databases, - 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, - {"databases_file", OPT_XTRA_DATABASES_FILE, - "filtering by list of databases in the file.", - (G_PTR*) &xtrabackup_databases_file, (G_PTR*) &xtrabackup_databases_file, - 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, - {"tables-exclude", OPT_XTRA_TABLES_EXCLUDE, "filtering by regexp for table names. " - "Operates the same way as --tables, but matched names are excluded from backup. " - "Note that this option has a higher priority than --tables.", - (G_PTR*) &xtrabackup_tables_exclude, (G_PTR*) &xtrabackup_tables_exclude, - 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, - {"databases-exclude", OPT_XTRA_DATABASES_EXCLUDE, "Excluding databases based on name, " - "Operates the same way as --databases, but matched names are excluded from backup. " - "Note that this option has a higher priority than --databases.", - (G_PTR*) &xtrabackup_databases_exclude, (G_PTR*) &xtrabackup_databases_exclude, - 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, + {"stream", OPT_XTRA_STREAM, + "Stream all backup files to the standard output " + "in the specified format." + "Supported format is 'mbstream' or 'xbstream'.", + (G_PTR *) &xtrabackup_stream_str, (G_PTR *) &xtrabackup_stream_str, 0, + GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, - {"stream", OPT_XTRA_STREAM, "Stream all backup files to the standard output " - "in the specified format." - "Supported format is 'mbstream' or 'xbstream'." - , - (G_PTR*) &xtrabackup_stream_str, (G_PTR*) &xtrabackup_stream_str, 0, GET_STR, - REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, + {"compress", OPT_XTRA_COMPRESS, + "Compress individual backup files using the " + "specified compression algorithm. Currently the only supported algorithm " + "is 'quicklz'. It is also the default algorithm, i.e. the one used when " + "--compress is used without an argument.", + (G_PTR *) &xtrabackup_compress_alg, (G_PTR *) &xtrabackup_compress_alg, 0, + GET_STR, OPT_ARG, 0, 0, 0, 0, 0, 0}, - {"compress", OPT_XTRA_COMPRESS, "Compress individual backup files using the " - "specified compression algorithm. Currently the only supported algorithm " - "is 'quicklz'. It is also the default algorithm, i.e. the one used when " - "--compress is used without an argument.", - (G_PTR*) &xtrabackup_compress_alg, (G_PTR*) &xtrabackup_compress_alg, 0, - GET_STR, OPT_ARG, 0, 0, 0, 0, 0, 0}, + {"compress-threads", OPT_XTRA_COMPRESS_THREADS, + "Number of threads for parallel data compression. The default value is " + "1.", + (G_PTR *) &xtrabackup_compress_threads, + (G_PTR *) &xtrabackup_compress_threads, 0, GET_UINT, REQUIRED_ARG, 1, 1, + UINT_MAX, 0, 0, 0}, - {"compress-threads", OPT_XTRA_COMPRESS_THREADS, - "Number of threads for parallel data compression. The default value is 1.", - (G_PTR*) &xtrabackup_compress_threads, (G_PTR*) &xtrabackup_compress_threads, - 0, GET_UINT, REQUIRED_ARG, 1, 1, UINT_MAX, 0, 0, 0}, + {"compress-chunk-size", OPT_XTRA_COMPRESS_CHUNK_SIZE, + "Size of working buffer(s) for compression threads in bytes. The default " + "value is 64K.", + (G_PTR *) &xtrabackup_compress_chunk_size, + (G_PTR *) &xtrabackup_compress_chunk_size, 0, GET_ULL, REQUIRED_ARG, + (1 << 16), 1024, ULONGLONG_MAX, 0, 0, 0}, - {"compress-chunk-size", OPT_XTRA_COMPRESS_CHUNK_SIZE, - "Size of working buffer(s) for compression threads in bytes. The default value is 64K.", - (G_PTR*) &xtrabackup_compress_chunk_size, (G_PTR*) &xtrabackup_compress_chunk_size, - 0, GET_ULL, REQUIRED_ARG, (1 << 16), 1024, ULONGLONG_MAX, 0, 0, 0}, + {"incremental-force-scan", OPT_XTRA_INCREMENTAL_FORCE_SCAN, + "Perform a full-scan incremental backup even in the presence of changed " + "page bitmap data", + (G_PTR *) &xtrabackup_incremental_force_scan, + (G_PTR *) &xtrabackup_incremental_force_scan, 0, GET_BOOL, NO_ARG, 0, 0, + 0, 0, 0, 0}, - {"incremental-force-scan", OPT_XTRA_INCREMENTAL_FORCE_SCAN, - "Perform a full-scan incremental backup even in the presence of changed " - "page bitmap data", - (G_PTR*)&xtrabackup_incremental_force_scan, - (G_PTR*)&xtrabackup_incremental_force_scan, 0, GET_BOOL, NO_ARG, - 0, 0, 0, 0, 0, 0}, + {"close_files", OPT_CLOSE_FILES, + "do not keep files opened. Use at your own " + "risk.", + (G_PTR *) &xb_close_files, (G_PTR *) &xb_close_files, 0, GET_BOOL, NO_ARG, + 0, 0, 0, 0, 0, 0}, + {"core-file", OPT_CORE_FILE, "Write core on fatal signals", 0, 0, 0, + GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0}, - {"close_files", OPT_CLOSE_FILES, "do not keep files opened. Use at your own " - "risk.", (G_PTR*) &xb_close_files, (G_PTR*) &xb_close_files, 0, GET_BOOL, - NO_ARG, 0, 0, 0, 0, 0, 0}, + {"copy-back", OPT_COPY_BACK, + "Copy all the files in a previously made " + "backup from the backup directory to their original locations.", + (uchar *) &xtrabackup_copy_back, (uchar *) &xtrabackup_copy_back, 0, + GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, - {"core-file", OPT_CORE_FILE, "Write core on fatal signals", 0, 0, 0, - GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0}, + {"move-back", OPT_MOVE_BACK, + "Move all the files in a previously made " + "backup from the backup directory to the actual datadir location. " + "Use with caution, as it removes backup files.", + (uchar *) &xtrabackup_move_back, (uchar *) &xtrabackup_move_back, 0, + GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, + {"galera-info", OPT_GALERA_INFO, + "This options creates the " + "xtrabackup_galera_info file which contains the local node state at " + "the time of the backup. Option should be used when performing the " + "backup of MariaDB Galera Cluster. Has no effect when backup locks " + "are used to create the backup.", + (uchar *) &opt_galera_info, (uchar *) &opt_galera_info, 0, GET_BOOL, + NO_ARG, 0, 0, 0, 0, 0, 0}, - {"copy-back", OPT_COPY_BACK, "Copy all the files in a previously made " - "backup from the backup directory to their original locations.", - (uchar *) &xtrabackup_copy_back, (uchar *) &xtrabackup_copy_back, 0, - GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, + {"slave-info", OPT_SLAVE_INFO, + "This option is useful when backing " + "up a replication slave server. It prints the binary log position " + "and name of the master server. It also writes this information to " + "the \"xtrabackup_slave_info\" file as a \"CHANGE MASTER\" command. " + "A new slave for this master can be set up by starting a slave server " + "on this backup and issuing a \"CHANGE MASTER\" command with the " + "binary log position saved in the \"xtrabackup_slave_info\" file.", + (uchar *) &opt_slave_info, (uchar *) &opt_slave_info, 0, GET_BOOL, NO_ARG, + 0, 0, 0, 0, 0, 0}, - {"move-back", OPT_MOVE_BACK, "Move all the files in a previously made " - "backup from the backup directory to the actual datadir location. " - "Use with caution, as it removes backup files.", - (uchar *) &xtrabackup_move_back, (uchar *) &xtrabackup_move_back, 0, - GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, + {"no-lock", OPT_NO_LOCK, + "Use this option to disable table lock " + "with \"FLUSH TABLES WITH READ LOCK\". Use it only if ALL your " + "tables are InnoDB and you DO NOT CARE about the binary log " + "position of the backup. This option shouldn't be used if there " + "are any DDL statements being executed or if any updates are " + "happening on non-InnoDB tables (this includes the system MyISAM " + "tables in the mysql database), otherwise it could lead to an " + "inconsistent backup. If you are considering to use --no-lock " + "because your backups are failing to acquire the lock, this could " + "be because of incoming replication events preventing the lock " + "from succeeding. Please try using --safe-slave-backup to " + "momentarily stop the replication slave thread, this may help " + "the backup to succeed and you then don't need to resort to " + "using this option.", + (uchar *) &opt_no_lock, (uchar *) &opt_no_lock, 0, GET_BOOL, NO_ARG, 0, 0, + 0, 0, 0, 0}, - {"galera-info", OPT_GALERA_INFO, "This options creates the " - "xtrabackup_galera_info file which contains the local node state at " - "the time of the backup. Option should be used when performing the " - "backup of MariaDB Galera Cluster. Has no effect when backup locks " - "are used to create the backup.", - (uchar *) &opt_galera_info, (uchar *) &opt_galera_info, 0, - GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, + {"safe-slave-backup", OPT_SAFE_SLAVE_BACKUP, + "Stop slave SQL thread " + "and wait to start backup until Slave_open_temp_tables in " + "\"SHOW STATUS\" is zero. If there are no open temporary tables, " + "the backup will take place, otherwise the SQL thread will be " + "started and stopped until there are no open temporary tables. " + "The backup will fail if Slave_open_temp_tables does not become " + "zero after --safe-slave-backup-timeout seconds. The slave SQL " + "thread will be restarted when the backup finishes.", + (uchar *) &opt_safe_slave_backup, (uchar *) &opt_safe_slave_backup, 0, + GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, - {"slave-info", OPT_SLAVE_INFO, "This option is useful when backing " - "up a replication slave server. It prints the binary log position " - "and name of the master server. It also writes this information to " - "the \"xtrabackup_slave_info\" file as a \"CHANGE MASTER\" command. " - "A new slave for this master can be set up by starting a slave server " - "on this backup and issuing a \"CHANGE MASTER\" command with the " - "binary log position saved in the \"xtrabackup_slave_info\" file.", - (uchar *) &opt_slave_info, (uchar *) &opt_slave_info, 0, - GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, + {"rsync", OPT_RSYNC, + "Uses the rsync utility to optimize local file " + "transfers. When this option is specified, innobackupex uses rsync " + "to copy all non-InnoDB files instead of spawning a separate cp for " + "each file, which can be much faster for servers with a large number " + "of databases or tables. This option cannot be used together with " + "--stream.", + (uchar *) &opt_rsync, (uchar *) &opt_rsync, 0, GET_BOOL, NO_ARG, 0, 0, 0, + 0, 0, 0}, - {"no-lock", OPT_NO_LOCK, "Use this option to disable table lock " - "with \"FLUSH TABLES WITH READ LOCK\". Use it only if ALL your " - "tables are InnoDB and you DO NOT CARE about the binary log " - "position of the backup. This option shouldn't be used if there " - "are any DDL statements being executed or if any updates are " - "happening on non-InnoDB tables (this includes the system MyISAM " - "tables in the mysql database), otherwise it could lead to an " - "inconsistent backup. If you are considering to use --no-lock " - "because your backups are failing to acquire the lock, this could " - "be because of incoming replication events preventing the lock " - "from succeeding. Please try using --safe-slave-backup to " - "momentarily stop the replication slave thread, this may help " - "the backup to succeed and you then don't need to resort to " - "using this option.", - (uchar *) &opt_no_lock, (uchar *) &opt_no_lock, 0, - GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, + {"force-non-empty-directories", OPT_FORCE_NON_EMPTY_DIRS, + "This " + "option, when specified, makes --copy-back or --move-back transfer " + "files to non-empty directories. Note that no existing files will be " + "overwritten. If --copy-back or --nove-back has to copy a file from " + "the backup directory which already exists in the destination " + "directory, it will still fail with an error.", + (uchar *) &opt_force_non_empty_dirs, (uchar *) &opt_force_non_empty_dirs, + 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, - {"safe-slave-backup", OPT_SAFE_SLAVE_BACKUP, "Stop slave SQL thread " - "and wait to start backup until Slave_open_temp_tables in " - "\"SHOW STATUS\" is zero. If there are no open temporary tables, " - "the backup will take place, otherwise the SQL thread will be " - "started and stopped until there are no open temporary tables. " - "The backup will fail if Slave_open_temp_tables does not become " - "zero after --safe-slave-backup-timeout seconds. The slave SQL " - "thread will be restarted when the backup finishes.", - (uchar *) &opt_safe_slave_backup, - (uchar *) &opt_safe_slave_backup, - 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, + {"no-version-check", OPT_NO_VERSION_CHECK, + "This option disables the " + "version check which is enabled by the --version-check option.", + (uchar *) &opt_noversioncheck, (uchar *) &opt_noversioncheck, 0, GET_BOOL, + NO_ARG, 0, 0, 0, 0, 0, 0}, - {"rsync", OPT_RSYNC, "Uses the rsync utility to optimize local file " - "transfers. When this option is specified, innobackupex uses rsync " - "to copy all non-InnoDB files instead of spawning a separate cp for " - "each file, which can be much faster for servers with a large number " - "of databases or tables. This option cannot be used together with " - "--stream.", - (uchar *) &opt_rsync, (uchar *) &opt_rsync, - 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, + {"no-backup-locks", OPT_NO_BACKUP_LOCKS, + "This option controls if " + "backup locks should be used instead of FLUSH TABLES WITH READ LOCK " + "on the backup stage. The option has no effect when backup locks are " + "not supported by the server. This option is enabled by default, " + "disable with --no-backup-locks.", + (uchar *) &opt_no_backup_locks, (uchar *) &opt_no_backup_locks, 0, + GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, - {"force-non-empty-directories", OPT_FORCE_NON_EMPTY_DIRS, "This " - "option, when specified, makes --copy-back or --move-back transfer " - "files to non-empty directories. Note that no existing files will be " - "overwritten. If --copy-back or --nove-back has to copy a file from " - "the backup directory which already exists in the destination " - "directory, it will still fail with an error.", - (uchar *) &opt_force_non_empty_dirs, - (uchar *) &opt_force_non_empty_dirs, - 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, + {"decompress", OPT_DECOMPRESS, + "Decompresses all files with the .qp " + "extension in a backup previously made with the --compress option.", + (uchar *) &opt_decompress, (uchar *) &opt_decompress, 0, GET_BOOL, NO_ARG, + 0, 0, 0, 0, 0, 0}, - {"no-version-check", OPT_NO_VERSION_CHECK, "This option disables the " - "version check which is enabled by the --version-check option.", - (uchar *) &opt_noversioncheck, - (uchar *) &opt_noversioncheck, - 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, + {"user", 'u', + "This option specifies the MySQL username used " + "when connecting to the server, if that's not the current user. " + "The option accepts a string argument. See mysql --help for details.", + (uchar *) &opt_user, (uchar *) &opt_user, 0, GET_STR, REQUIRED_ARG, 0, 0, + 0, 0, 0, 0}, - {"no-backup-locks", OPT_NO_BACKUP_LOCKS, "This option controls if " - "backup locks should be used instead of FLUSH TABLES WITH READ LOCK " - "on the backup stage. The option has no effect when backup locks are " - "not supported by the server. This option is enabled by default, " - "disable with --no-backup-locks.", - (uchar *) &opt_no_backup_locks, - (uchar *) &opt_no_backup_locks, - 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, + {"host", 'H', + "This option specifies the host to use when " + "connecting to the database server with TCP/IP. The option accepts " + "a string argument. See mysql --help for details.", + (uchar *) &opt_host, (uchar *) &opt_host, 0, GET_STR, REQUIRED_ARG, 0, 0, + 0, 0, 0, 0}, - {"decompress", OPT_DECOMPRESS, "Decompresses all files with the .qp " - "extension in a backup previously made with the --compress option.", - (uchar *) &opt_decompress, - (uchar *) &opt_decompress, - 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, + {"port", 'P', + "This option specifies the port to use when " + "connecting to the database server with TCP/IP. The option accepts " + "a string argument. See mysql --help for details.", + &opt_port, &opt_port, 0, GET_UINT, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, - {"user", 'u', "This option specifies the MySQL username used " - "when connecting to the server, if that's not the current user. " - "The option accepts a string argument. See mysql --help for details.", - (uchar*) &opt_user, (uchar*) &opt_user, 0, GET_STR, - REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, + {"password", 'p', + "This option specifies the password to use " + "when connecting to the database. It accepts a string argument. " + "See mysql --help for details.", + 0, 0, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, - {"host", 'H', "This option specifies the host to use when " - "connecting to the database server with TCP/IP. The option accepts " - "a string argument. See mysql --help for details.", - (uchar*) &opt_host, (uchar*) &opt_host, 0, GET_STR, - REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, + {"protocol", OPT_PROTOCOL, + "The protocol to use for connection (tcp, socket, pipe, memory).", 0, 0, + 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, - {"port", 'P', "This option specifies the port to use when " - "connecting to the database server with TCP/IP. The option accepts " - "a string argument. See mysql --help for details.", - &opt_port, &opt_port, 0, GET_UINT, REQUIRED_ARG, - 0, 0, 0, 0, 0, 0}, + {"socket", 'S', + "This option specifies the socket to use when " + "connecting to the local database server with a UNIX domain socket. " + "The option accepts a string argument. See mysql --help for details.", + (uchar *) &opt_socket, (uchar *) &opt_socket, 0, GET_STR, REQUIRED_ARG, 0, + 0, 0, 0, 0, 0}, - {"password", 'p', "This option specifies the password to use " - "when connecting to the database. It accepts a string argument. " - "See mysql --help for details.", - 0, 0, 0, GET_STR, - REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, + {"incremental-history-name", OPT_INCREMENTAL_HISTORY_NAME, + "This option specifies the name of the backup series stored in the " + "PERCONA_SCHEMA.xtrabackup_history history record to base an " + "incremental backup on. Xtrabackup will search the history table " + "looking for the most recent (highest innodb_to_lsn), successful " + "backup in the series and take the to_lsn value to use as the " + "starting lsn for the incremental backup. This will be mutually " + "exclusive with --incremental-history-uuid, --incremental-basedir " + "and --incremental-lsn. If no valid lsn can be found (no series by " + "that name, no successful backups by that name) xtrabackup will " + "return with an error. It is used with the --incremental option.", + (uchar *) &opt_incremental_history_name, + (uchar *) &opt_incremental_history_name, 0, GET_STR, REQUIRED_ARG, 0, 0, + 0, 0, 0, 0}, - {"protocol", OPT_PROTOCOL, "The protocol to use for connection (tcp, socket, pipe, memory).", - 0, 0, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, + {"incremental-history-uuid", OPT_INCREMENTAL_HISTORY_UUID, + "This option specifies the UUID of the specific history record " + "stored in the PERCONA_SCHEMA.xtrabackup_history to base an " + "incremental backup on. --incremental-history-name, " + "--incremental-basedir and --incremental-lsn. If no valid lsn can be " + "found (no success record with that uuid) xtrabackup will return " + "with an error. It is used with the --incremental option.", + (uchar *) &opt_incremental_history_uuid, + (uchar *) &opt_incremental_history_uuid, 0, GET_STR, REQUIRED_ARG, 0, 0, + 0, 0, 0, 0}, - {"socket", 'S', "This option specifies the socket to use when " - "connecting to the local database server with a UNIX domain socket. " - "The option accepts a string argument. See mysql --help for details.", - (uchar*) &opt_socket, (uchar*) &opt_socket, 0, GET_STR, - REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, + {"remove-original", OPT_REMOVE_ORIGINAL, + "Remove .qp files after decompression.", (uchar *) &opt_remove_original, + (uchar *) &opt_remove_original, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, - {"incremental-history-name", OPT_INCREMENTAL_HISTORY_NAME, - "This option specifies the name of the backup series stored in the " - "PERCONA_SCHEMA.xtrabackup_history history record to base an " - "incremental backup on. Xtrabackup will search the history table " - "looking for the most recent (highest innodb_to_lsn), successful " - "backup in the series and take the to_lsn value to use as the " - "starting lsn for the incremental backup. This will be mutually " - "exclusive with --incremental-history-uuid, --incremental-basedir " - "and --incremental-lsn. If no valid lsn can be found (no series by " - "that name, no successful backups by that name) xtrabackup will " - "return with an error. It is used with the --incremental option.", - (uchar*) &opt_incremental_history_name, - (uchar*) &opt_incremental_history_name, 0, GET_STR, - REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, + {"ftwrl-wait-query-type", OPT_LOCK_WAIT_QUERY_TYPE, + "This option specifies which types of queries are allowed to complete " + "before innobackupex will issue the global lock. Default is all.", + (uchar *) &opt_lock_wait_query_type, (uchar *) &opt_lock_wait_query_type, + &query_type_typelib, GET_ENUM, REQUIRED_ARG, QUERY_TYPE_ALL, 0, 0, 0, 0, + 0}, - {"incremental-history-uuid", OPT_INCREMENTAL_HISTORY_UUID, - "This option specifies the UUID of the specific history record " - "stored in the PERCONA_SCHEMA.xtrabackup_history to base an " - "incremental backup on. --incremental-history-name, " - "--incremental-basedir and --incremental-lsn. If no valid lsn can be " - "found (no success record with that uuid) xtrabackup will return " - "with an error. It is used with the --incremental option.", - (uchar*) &opt_incremental_history_uuid, - (uchar*) &opt_incremental_history_uuid, 0, GET_STR, - REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, + {"kill-long-query-type", OPT_KILL_LONG_QUERY_TYPE, + "This option specifies which types of queries should be killed to " + "unblock the global lock. Default is \"all\".", + (uchar *) &opt_kill_long_query_type, (uchar *) &opt_kill_long_query_type, + &query_type_typelib, GET_ENUM, REQUIRED_ARG, QUERY_TYPE_SELECT, 0, 0, 0, + 0, 0}, - {"remove-original", OPT_REMOVE_ORIGINAL, "Remove .qp files after decompression.", - (uchar *) &opt_remove_original, - (uchar *) &opt_remove_original, - 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, + {"history", OPT_HISTORY, + "This option enables the tracking of backup history in the " + "PERCONA_SCHEMA.xtrabackup_history table. An optional history " + "series name may be specified that will be placed with the history " + "record for the current backup being taken.", + NULL, NULL, 0, GET_STR, OPT_ARG, 0, 0, 0, 0, 0, 0}, - {"ftwrl-wait-query-type", OPT_LOCK_WAIT_QUERY_TYPE, - "This option specifies which types of queries are allowed to complete " - "before innobackupex will issue the global lock. Default is all.", - (uchar*) &opt_lock_wait_query_type, - (uchar*) &opt_lock_wait_query_type, &query_type_typelib, - GET_ENUM, REQUIRED_ARG, QUERY_TYPE_ALL, 0, 0, 0, 0, 0}, + {"kill-long-queries-timeout", OPT_KILL_LONG_QUERIES_TIMEOUT, + "This option specifies the number of seconds innobackupex waits " + "between starting FLUSH TABLES WITH READ LOCK and killing those " + "queries that block it. Default is 0 seconds, which means " + "innobackupex will not attempt to kill any queries.", + (uchar *) &opt_kill_long_queries_timeout, + (uchar *) &opt_kill_long_queries_timeout, 0, GET_UINT, REQUIRED_ARG, 0, 0, + 0, 0, 0, 0}, - {"kill-long-query-type", OPT_KILL_LONG_QUERY_TYPE, - "This option specifies which types of queries should be killed to " - "unblock the global lock. Default is \"all\".", - (uchar*) &opt_kill_long_query_type, - (uchar*) &opt_kill_long_query_type, &query_type_typelib, - GET_ENUM, REQUIRED_ARG, QUERY_TYPE_SELECT, 0, 0, 0, 0, 0}, + {"ftwrl-wait-timeout", OPT_LOCK_WAIT_TIMEOUT, + "This option specifies time in seconds that innobackupex should wait " + "for queries that would block FTWRL before running it. If there are " + "still such queries when the timeout expires, innobackupex terminates " + "with an error. Default is 0, in which case innobackupex does not " + "wait for queries to complete and starts FTWRL immediately.", + (uchar *) &opt_lock_wait_timeout, (uchar *) &opt_lock_wait_timeout, 0, + GET_UINT, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, - {"history", OPT_HISTORY, - "This option enables the tracking of backup history in the " - "PERCONA_SCHEMA.xtrabackup_history table. An optional history " - "series name may be specified that will be placed with the history " - "record for the current backup being taken.", - NULL, NULL, 0, GET_STR, OPT_ARG, 0, 0, 0, 0, 0, 0}, + {"ftwrl-wait-threshold", OPT_LOCK_WAIT_THRESHOLD, + "This option specifies the query run time threshold which is used by " + "innobackupex to detect long-running queries with a non-zero value " + "of --ftwrl-wait-timeout. FTWRL is not started until such " + "long-running queries exist. This option has no effect if " + "--ftwrl-wait-timeout is 0. Default value is 60 seconds.", + (uchar *) &opt_lock_wait_threshold, (uchar *) &opt_lock_wait_threshold, 0, + GET_UINT, REQUIRED_ARG, 60, 0, 0, 0, 0, 0}, - {"kill-long-queries-timeout", OPT_KILL_LONG_QUERIES_TIMEOUT, - "This option specifies the number of seconds innobackupex waits " - "between starting FLUSH TABLES WITH READ LOCK and killing those " - "queries that block it. Default is 0 seconds, which means " - "innobackupex will not attempt to kill any queries.", - (uchar*) &opt_kill_long_queries_timeout, - (uchar*) &opt_kill_long_queries_timeout, 0, GET_UINT, - REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, + {"debug-sleep-before-unlock", OPT_DEBUG_SLEEP_BEFORE_UNLOCK, + "This is a debug-only option used by the XtraBackup test suite.", + (uchar *) &opt_debug_sleep_before_unlock, + (uchar *) &opt_debug_sleep_before_unlock, 0, GET_UINT, REQUIRED_ARG, 0, 0, + 0, 0, 0, 0}, - {"ftwrl-wait-timeout", OPT_LOCK_WAIT_TIMEOUT, - "This option specifies time in seconds that innobackupex should wait " - "for queries that would block FTWRL before running it. If there are " - "still such queries when the timeout expires, innobackupex terminates " - "with an error. Default is 0, in which case innobackupex does not " - "wait for queries to complete and starts FTWRL immediately.", - (uchar*) &opt_lock_wait_timeout, - (uchar*) &opt_lock_wait_timeout, 0, GET_UINT, - REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, + {"safe-slave-backup-timeout", OPT_SAFE_SLAVE_BACKUP_TIMEOUT, + "How many seconds --safe-slave-backup should wait for " + "Slave_open_temp_tables to become zero. (default 300)", + (uchar *) &opt_safe_slave_backup_timeout, + (uchar *) &opt_safe_slave_backup_timeout, 0, GET_UINT, REQUIRED_ARG, 300, + 0, 0, 0, 0, 0}, - {"ftwrl-wait-threshold", OPT_LOCK_WAIT_THRESHOLD, - "This option specifies the query run time threshold which is used by " - "innobackupex to detect long-running queries with a non-zero value " - "of --ftwrl-wait-timeout. FTWRL is not started until such " - "long-running queries exist. This option has no effect if " - "--ftwrl-wait-timeout is 0. Default value is 60 seconds.", - (uchar*) &opt_lock_wait_threshold, - (uchar*) &opt_lock_wait_threshold, 0, GET_UINT, - REQUIRED_ARG, 60, 0, 0, 0, 0, 0}, + {"binlog-info", OPT_BINLOG_INFO, + "This option controls how XtraBackup should retrieve server's binary log " + "coordinates corresponding to the backup. Possible values are OFF, ON, " + "LOCKLESS and AUTO. See the XtraBackup manual for more information", + &opt_binlog_info, &opt_binlog_info, &binlog_info_typelib, GET_ENUM, + OPT_ARG, BINLOG_INFO_AUTO, 0, 0, 0, 0, 0}, - {"debug-sleep-before-unlock", OPT_DEBUG_SLEEP_BEFORE_UNLOCK, - "This is a debug-only option used by the XtraBackup test suite.", - (uchar*) &opt_debug_sleep_before_unlock, - (uchar*) &opt_debug_sleep_before_unlock, 0, GET_UINT, - REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, - - {"safe-slave-backup-timeout", OPT_SAFE_SLAVE_BACKUP_TIMEOUT, - "How many seconds --safe-slave-backup should wait for " - "Slave_open_temp_tables to become zero. (default 300)", - (uchar*) &opt_safe_slave_backup_timeout, - (uchar*) &opt_safe_slave_backup_timeout, 0, GET_UINT, - REQUIRED_ARG, 300, 0, 0, 0, 0, 0}, - - {"binlog-info", OPT_BINLOG_INFO, - "This option controls how XtraBackup should retrieve server's binary log " - "coordinates corresponding to the backup. Possible values are OFF, ON, " - "LOCKLESS and AUTO. See the XtraBackup manual for more information", - &opt_binlog_info, &opt_binlog_info, - &binlog_info_typelib, GET_ENUM, OPT_ARG, BINLOG_INFO_AUTO, 0, 0, 0, 0, 0}, - - {"secure-auth", OPT_XB_SECURE_AUTH, "Refuse client connecting to server if it" - " uses old (pre-4.1.1) protocol.", &opt_secure_auth, - &opt_secure_auth, 0, GET_BOOL, NO_ARG, 1, 0, 0, 0, 0, 0}, + {"secure-auth", OPT_XB_SECURE_AUTH, + "Refuse client connecting to server if it" + " uses old (pre-4.1.1) protocol.", + &opt_secure_auth, &opt_secure_auth, 0, GET_BOOL, NO_ARG, 1, 0, 0, 0, 0, + 0}, #define MYSQL_CLIENT #include "sslopt-longopts.h" #undef MYSQL_CLIENT - { 0, 0, 0, 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0} -}; + {0, 0, 0, 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0}}; uint xb_client_options_count = array_elements(xb_client_options); @@ -5525,10 +5575,13 @@ static bool xtrabackup_prepare_func(char** argv) if (!ok) goto error_cleanup; } - srv_operation = xtrabackup_export - ? SRV_OPERATION_RESTORE_EXPORT : SRV_OPERATION_RESTORE; + srv_operation= + xtrabackup_export + ? SRV_OPERATION_RESTORE_EXPORT + : (xtrabackup_rollback_xa ? SRV_OPERATION_RESTORE_ROLLBACK_XA + : SRV_OPERATION_RESTORE); - if (innodb_init_param()) { + if (innodb_init_param()) { goto error_cleanup; } @@ -5549,10 +5602,50 @@ static bool xtrabackup_prepare_func(char** argv) srv_max_dirty_pages_pct_lwm = srv_max_buf_pool_modified_pct; } - if (innodb_init()) { + if (xtrabackup_rollback_xa) + srv_fast_shutdown= 0; + + if (innodb_init()) { goto error_cleanup; } + if (xtrabackup_rollback_xa) + { + /* Please do not merge MDEV-21168 fix in 10.5+ */ + compile_time_assert(MYSQL_VERSION_ID < 10 * 10000 + 5 * 100); + XID *xid_list= + (XID *) my_malloc(MAX_XID_LIST_SIZE * sizeof(XID), MYF(0)); + if (!xid_list) + { + msg("Can't allocate %i bytes for XID's list", MAX_XID_LIST_SIZE); + ok= false; + goto error_cleanup; + } + int got; + ut_ad(recv_no_log_write); + ut_d(recv_no_log_write= false); + while ((got= trx_recover_for_mysql(xid_list, MAX_XID_LIST_SIZE)) > 0) + { + for (int i= 0; i < got; i++) + { +#ifndef DBUG_OFF + int rc= +#endif // !DBUG_OFF + innobase_rollback_by_xid(NULL, xid_list + i); +#ifndef DBUG_OFF + if (rc == 0) + { + char buf[XIDDATASIZE * 4 + 6]; // see xid_to_str + DBUG_PRINT("info", + ("rollback xid %s", xid_to_str(buf, xid_list[i]))); + } +#endif // !DBUG_OFF + } + } + ut_d(recv_no_log_write= true); + my_free(xid_list); + } + if (ok) { msg("Last binlog file %s, position %lld", trx_sys.recovered_binlog_filename, @@ -5572,8 +5665,24 @@ static bool xtrabackup_prepare_func(char** argv) else if (ok) xb_write_galera_info(xtrabackup_incremental); #endif - innodb_shutdown(); - innodb_free_param(); + if (xtrabackup_rollback_xa) + { + // See innobase_end() and thd_destructor_proxy() + while (srv_fast_shutdown == 0 && + (trx_sys.any_active_transactions() || + static_cast(thread_count) > srv_n_purge_threads + 1)) + os_thread_sleep(1000); + + srv_shutdown_bg_undo_sources(); + srv_purge_shutdown(); + buf_flush_sync_all_buf_pools(); + innodb_shutdown(); + innobase_space_shutdown(); + } + else + innodb_shutdown(); + + innodb_free_param(); /* output to metadata file */ if (ok) { diff --git a/mysql-test/include/wait_for_line_count_in_file.inc b/mysql-test/include/wait_for_line_count_in_file.inc new file mode 100644 index 00000000000..838a3ff342b --- /dev/null +++ b/mysql-test/include/wait_for_line_count_in_file.inc @@ -0,0 +1,18 @@ +perl; + use strict; + use Time::HiRes qw(sleep); + my $search_count= $ENV{'SEARCH_COUNT'} or die "SEARCH_COUNT not set"; + my $search_file= $ENV{'SEARCH_FILE'} or die "SEARCH_FILE not set"; + my $wait_counter= 100; # 10 seconds + while (1) + { + my $cnt= 0; + open(FILE, $search_file) or die("Unable to open '$search_file': $!\n"); + $cnt++ while (); + close(FILE); + last if ($cnt == $search_count); + $wait_counter-- or + die "Timeout waiting for $search_count lines in $search_file\n"; + sleep(0.1); + } +EOF diff --git a/mysql-test/lib/My/Tee.pm b/mysql-test/lib/My/Tee.pm index 5985fe33739..8d6b4ddd52f 100644 --- a/mysql-test/lib/My/Tee.pm +++ b/mysql-test/lib/My/Tee.pm @@ -10,7 +10,7 @@ sub PUSHED open($copyfh, '>', "$::opt_vardir/log/stdout.log") or die "open(>$::opt_vardir/log/stdout.log): $!" unless $copyfh; - bless { }, shift; + bless { }, shift; } sub WRITE diff --git a/mysql-test/lib/mtr_report.pm b/mysql-test/lib/mtr_report.pm index 44074d0838d..17b847b3b5a 100644 --- a/mysql-test/lib/mtr_report.pm +++ b/mysql-test/lib/mtr_report.pm @@ -20,7 +20,9 @@ # same name. package mtr_report; + use strict; +use Sys::Hostname; use base qw(Exporter); our @EXPORT= qw(report_option mtr_print_line mtr_print_thick_line @@ -253,6 +255,7 @@ sub mtr_report_stats ($$$$) { # Find out how we where doing # ---------------------------------------------------------------------- + my $tot_disabled = 0; my $tot_skipped= 0; my $tot_skipdetect= 0; my $tot_passed= 0; @@ -273,6 +276,7 @@ sub mtr_report_stats ($$$$) { { # Test was skipped (disabled not counted) $tot_skipped++ unless $tinfo->{'disable'}; + $tot_disabled++ if $tinfo->{'disable'}; $tot_skipdetect++ if $tinfo->{'skip_detected_by_test'}; } elsif ( $tinfo->{'result'} eq 'MTR_RES_PASSED' ) @@ -402,6 +406,92 @@ sub mtr_report_stats ($$$$) { print "All $tot_tests tests were successful.\n\n"; } + if ($::opt_xml_report) { + my $xml_report = ""; + my @sorted_tests = sort {$a->{'name'} cmp $b->{'name'}} @$tests; + my $last_suite = ""; + my $current_suite = ""; + my $timest = isotime(time); + my %suite_totals; + my %suite_time; + my %suite_tests; + my %suite_failed; + my %suite_disabled; + my %suite_skipped; + my $host = hostname; + my $suiteNo = 0; + + # loop through test results to count totals + foreach my $test ( @sorted_tests ) { + $current_suite = $test->{'suite'}->{'name'}; + + if ($test->{'timer'} eq "") { + $test->{'timer'} = 0; + } + + $suite_time{$current_suite} = $suite_time{$current_suite} + $test->{'timer'}; + $suite_tests{$current_suite} = $suite_tests{$current_suite} + 1; + + if ($test->{'result'} eq "MTR_RES_FAILED") { + $suite_failed{$current_suite} = $suite_failed{$current_suite} + 1; + } elsif ($test->{'result'} eq "MTR_RES_SKIPPED" && $test->{'disable'}) { + $suite_disabled{$current_suite} = $suite_disabled{$current_suite} + 1; + } elsif ($test->{'result'} eq "MTR_RES_SKIPPED") { + $suite_skipped{$current_suite} = $suite_skipped{$current_suite} + 1; + } + + $suite_totals{"all_time"} = $suite_totals{"all_time"} + $test->{'timer'}; + } + + my $all_time = sprintf("%.3f", $suite_totals{"all_time"} / 1000); + my $suite_time = 0; + my $test_time = 0; + + # generate xml + $xml_report = "\n"; + $xml_report .= qq(\n); + + foreach my $test ( @sorted_tests ) { + $current_suite = $test->{'suite'}->{'name'}; + + if ($current_suite ne $last_suite) { + if ($last_suite ne "") { + $xml_report .= "\t\n"; + $suiteNo++; + } + + $suite_time = sprintf("%.3f", $suite_time{$current_suite} / 1000); + $xml_report .= qq(\t\n); + $last_suite = $current_suite; + } + + $test_time = sprintf("%.3f", $test->{timer} / 1000); + $xml_report .= qq(\t\t{'comment'}; + $comment =~ s/[\"]//g; + + if ($test->{'result'} eq "MTR_RES_FAILED") { + $xml_report .= qq(>\n\t\t\t\n{'logfile'}]]>\n\t\t\t\n\t\t\n); + } elsif ($test->{'result'} eq "MTR_RES_SKIPPED" && $test->{'disable'}) { + $xml_report .= qq(>\n\t\t\t\n\t\t\n); + } elsif ($test->{'result'} eq "MTR_RES_SKIPPED") { + $xml_report .= qq(>\n\t\t\t\n\t\t\n); + } else { + $xml_report .= " />\n"; + } + } + + $xml_report .= "\t\n\n"; + + # save to file + my $xml_file = $::opt_xml_report; + + open XML_FILE, ">", $xml_file or die "Cannot create file $xml_file: $!"; + print XML_FILE $xml_report; + close XML_FILE; + } + if (@$extra_warnings) { print < 0 && to != ((void *)0)' failed @@ -939,13 +939,13 @@ STDDEV_SAMP(EXPORT_SET(t1, -1379790335835635712, (i1 + 'o'), (MD5(d1)))) NULL Warnings: Warning 1292 Truncated incorrect DOUBLE value: 'o' -Warning 1292 Truncated incorrect DOUBLE value: '98e466c7ff40fe6b95cde24200f376303-13797903358356357128e466c7ff40fe6b95cde24200f376303-13797903358356357128e466c7ff40fe6b95cde242' +Warning 1292 Truncated incorrect DOUBLE value: '98e466c7ff40fe6b95cde24200f376303-13797903358356357128e466c7ff40fe6b95cde24200f376303-13797903358356357128e466c7ff40fe6b95cde...' Warning 1292 Truncated incorrect DOUBLE value: 'o' -Warning 1292 Truncated incorrect DOUBLE value: '-1379790335835635712e315457d879863c6ccf2ddee5562fc24-1379790335835635712e315457d879863c6ccf2ddee5562fc24-1379790335835635712e315' +Warning 1292 Truncated incorrect DOUBLE value: '-1379790335835635712e315457d879863c6ccf2ddee5562fc24-1379790335835635712e315457d879863c6ccf2ddee5562fc24-1379790335835635712e...' Warning 1292 Truncated incorrect DOUBLE value: 'o' -Warning 1292 Truncated incorrect DOUBLE value: '7b4dd517b633f1f6304b773523b5279747b4dd517b633f1f6304b773523b5279747b4dd517b633f1f6304b773523b527974-1379790335835635712b4dd517b6' +Warning 1292 Truncated incorrect DOUBLE value: '7b4dd517b633f1f6304b773523b5279747b4dd517b633f1f6304b773523b5279747b4dd517b633f1f6304b773523b527974-1379790335835635712b4dd51...' Warning 1292 Truncated incorrect DOUBLE value: 'o' -Warning 1292 Truncated incorrect DOUBLE value: '-1379790335835635712b0e107767ea830fd3318893e40412a43-1379790335835635712b0e107767ea830fd3318893e40412a43-1379790335835635712b0e1' +Warning 1292 Truncated incorrect DOUBLE value: '-1379790335835635712b0e107767ea830fd3318893e40412a43-1379790335835635712b0e107767ea830fd3318893e40412a43-1379790335835635712b...' DROP TABLE t1; CREATE TABLE t1 (a VARCHAR(128)); INSERT INTO t1 VALUES ('1e310'); diff --git a/mysql-test/main/func_misc.result b/mysql-test/main/func_misc.result index 52d20091899..483338c405a 100644 --- a/mysql-test/main/func_misc.result +++ b/mysql-test/main/func_misc.result @@ -815,13 +815,13 @@ select release_lock(repeat('a', 192)); release_lock(repeat('a', 192)) 1 select get_lock(repeat('a', 193), 0); -ERROR 42000: Identifier name 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' is too long +ERROR 42000: Identifier name 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...' is too long select is_used_lock(repeat('a', 193)); -ERROR 42000: Identifier name 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' is too long +ERROR 42000: Identifier name 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...' is too long select is_free_lock(repeat('a', 193)); -ERROR 42000: Identifier name 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' is too long +ERROR 42000: Identifier name 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...' is too long select release_lock(repeat('a', 193)); -ERROR 42000: Identifier name 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' is too long +ERROR 42000: Identifier name 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...' is too long # -- # -- WL#5787: IPv6-capable INET_ATON and INET_NTOA functions. diff --git a/mysql-test/main/grant.result b/mysql-test/main/grant.result index e62d55c8c69..5d4fdabfd41 100644 --- a/mysql-test/main/grant.result +++ b/mysql-test/main/grant.result @@ -1121,7 +1121,7 @@ USE test; connection default; disconnect master; create user longer_than_80_456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789; -ERROR HY000: String 'longer_than_80_4567890123456789012345678901234567890123456789012345678' is too long for user name (should be no longer than 80) +ERROR HY000: String 'longer_than_80_4567890123456789012345678901234567890123456789012345...' is too long for user name (should be no longer than 80) CREATE DATABASE mysqltest1; CREATE TABLE mysqltest1.t1 ( int_field INTEGER UNSIGNED NOT NULL, @@ -1207,27 +1207,27 @@ DROP USER mysqltest_1@localhost; DROP DATABASE mysqltest1; USE test; GRANT CREATE ON mysqltest.* TO longer_than_80_456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789@localhost; -ERROR HY000: String 'longer_than_80_4567890123456789012345678901234567890123456789012345678' is too long for user name (should be no longer than 80) +ERROR HY000: String 'longer_than_80_4567890123456789012345678901234567890123456789012345...' is too long for user name (should be no longer than 80) GRANT CREATE ON mysqltest.* TO some_user_name@1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY; ERROR HY000: String '1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY' is too long for host name (should be no longer than 60) REVOKE CREATE ON mysqltest.* FROM longer_than_80_456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789@localhost; -ERROR HY000: String 'longer_than_80_4567890123456789012345678901234567890123456789012345678' is too long for user name (should be no longer than 80) +ERROR HY000: String 'longer_than_80_4567890123456789012345678901234567890123456789012345...' is too long for user name (should be no longer than 80) REVOKE CREATE ON mysqltest.* FROM some_user_name@1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY; ERROR HY000: String '1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY' is too long for host name (should be no longer than 60) GRANT CREATE ON t1 TO longer_than_80_456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789@localhost; -ERROR HY000: String 'longer_than_80_4567890123456789012345678901234567890123456789012345678' is too long for user name (should be no longer than 80) +ERROR HY000: String 'longer_than_80_4567890123456789012345678901234567890123456789012345...' is too long for user name (should be no longer than 80) GRANT CREATE ON t1 TO some_user_name@1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY; ERROR HY000: String '1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY' is too long for host name (should be no longer than 60) REVOKE CREATE ON t1 FROM longer_than_80_456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789@localhost; -ERROR HY000: String 'longer_than_80_4567890123456789012345678901234567890123456789012345678' is too long for user name (should be no longer than 80) +ERROR HY000: String 'longer_than_80_4567890123456789012345678901234567890123456789012345...' is too long for user name (should be no longer than 80) REVOKE CREATE ON t1 FROM some_user_name@1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY; ERROR HY000: String '1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY' is too long for host name (should be no longer than 60) GRANT EXECUTE ON PROCEDURE p1 TO longer_than_80_456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789@localhost; -ERROR HY000: String 'longer_than_80_4567890123456789012345678901234567890123456789012345678' is too long for user name (should be no longer than 80) +ERROR HY000: String 'longer_than_80_4567890123456789012345678901234567890123456789012345...' is too long for user name (should be no longer than 80) GRANT EXECUTE ON PROCEDURE p1 TO some_user_name@1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY; ERROR HY000: String '1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY' is too long for host name (should be no longer than 60) REVOKE EXECUTE ON PROCEDURE p1 FROM longer_than_80_456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789@localhost; -ERROR HY000: String 'longer_than_80_4567890123456789012345678901234567890123456789012345678' is too long for user name (should be no longer than 80) +ERROR HY000: String 'longer_than_80_4567890123456789012345678901234567890123456789012345...' is too long for user name (should be no longer than 80) REVOKE EXECUTE ON PROCEDURE t1 FROM some_user_name@1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY; ERROR HY000: String '1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY' is too long for host name (should be no longer than 60) CREATE USER bug23556@localhost; @@ -1702,7 +1702,7 @@ drop database mysqltest1; End of 5.0 tests set names utf8; grant select on test.* to очень_длинный_юзер890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890@localhost; -ERROR HY000: String 'очень_длинный_юзер890123456789012345678901234567890123' is too long for user name (should be no longer than 80) +ERROR HY000: String 'очень_длинный_юзер890123456789012345678901234567890...' is too long for user name (should be no longer than 80) set names default; create database mysqltest; use mysqltest; diff --git a/mysql-test/main/grant_lowercase.result b/mysql-test/main/grant_lowercase.result index a87f74721bc..0686977f55f 100644 --- a/mysql-test/main/grant_lowercase.result +++ b/mysql-test/main/grant_lowercase.result @@ -4,7 +4,7 @@ grant select on `a%`.* to user1@localhost with grant option; connect conn1,localhost,user1,,; connection conn1; grant file on aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.* to 'user'@'%' identified by 'secret'; -ERROR 42000: Incorrect database name 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' +ERROR 42000: Incorrect database name 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...' connection default; disconnect conn1; drop user user1@localhost; diff --git a/mysql-test/main/index_merge_myisam.result b/mysql-test/main/index_merge_myisam.result index 3fb2af69e61..e9b327e037f 100644 --- a/mysql-test/main/index_merge_myisam.result +++ b/mysql-test/main/index_merge_myisam.result @@ -1693,41 +1693,8 @@ id select_type table type possible_keys key key_len ref rows Extra DROP TABLE t1; set optimizer_switch= @optimizer_switch_save; # -# MDEV-16695: Estimate for rows of derived tables is very high when we are using index_merge union +# MDEV-21932: ROR union with index_merge_sort_union=off # -create table t0 -( -key1 int not null, -INDEX i1(key1) -); -insert into t0 select * from seq_1_to_1024; -alter table t0 add key2 int not null, add index i2(key2); -alter table t0 add key3 int not null, add index i3(key3); -alter table t0 add key8 int not null, add index i8(key8); -update t0 set key2=key1,key3=key1,key8=1024-key1; -analyze table t0; -Table Op Msg_type Msg_text -test.t0 analyze status Engine-independent statistics collected -test.t0 analyze status OK -set @optimizer_switch_save=@@optimizer_switch; -set optimizer_switch='derived_merge=off,derived_with_keys=off'; -explain select * from (select * from t0 where key1 = 3 or key2 =3) as Z where Z.key8 > 5; -id select_type table type possible_keys key key_len ref rows Extra -1 PRIMARY ALL NULL NULL NULL NULL 2 Using where -2 DERIVED t0 index_merge i1,i2,i8 i1,i2 4,4 NULL 2 Using union(i1,i2); Using where -select * from (select * from t0 where key1 = 3 or key2 =3) as Z where Z.key8 > 5; -key1 key2 key3 key8 -3 3 3 1021 -set optimizer_use_condition_selectivity=2; -explain select * from (select * from t0 where key1 = 3 or key2 =3) as Z where Z.key8 > 5; -id select_type table type possible_keys key key_len ref rows Extra -1 PRIMARY ALL NULL NULL NULL NULL 2 Using where -2 DERIVED t0 index_merge i1,i2,i8 i1,i2 4,4 NULL 2 Using union(i1,i2); Using where -select * from (select * from t0 where key1 = 3 or key2 =3) as Z where Z.key8 > 5; -key1 key2 key3 key8 -3 3 3 1021 -set @@optimizer_switch= @optimizer_switch_save; -drop table t0; create table t0 (a int); insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9); insert into t0 select a+10 from t0; @@ -1779,3 +1746,40 @@ f1 f2 f3 f4 9 0 2 6 drop table t0,t1; set optimizer_switch= @optimizer_switch_save; +# +# MDEV-16695: Estimate for rows of derived tables is very high when we are using index_merge union +# +create table t0 +( +key1 int not null, +INDEX i1(key1) +); +insert into t0 select * from seq_1_to_1024; +alter table t0 add key2 int not null, add index i2(key2); +alter table t0 add key3 int not null, add index i3(key3); +alter table t0 add key8 int not null, add index i8(key8); +update t0 set key2=key1,key3=key1,key8=1024-key1; +analyze table t0; +Table Op Msg_type Msg_text +test.t0 analyze status Engine-independent statistics collected +test.t0 analyze status OK +set @optimizer_switch_save=@@optimizer_switch; +set optimizer_switch='derived_merge=off,derived_with_keys=off'; +explain select * from (select * from t0 where key1 = 3 or key2 =3) as Z where Z.key8 > 5; +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY ALL NULL NULL NULL NULL 2 Using where +2 DERIVED t0 index_merge i1,i2,i8 i1,i2 4,4 NULL 2 Using union(i1,i2); Using where +select * from (select * from t0 where key1 = 3 or key2 =3) as Z where Z.key8 > 5; +key1 key2 key3 key8 +3 3 3 1021 +set optimizer_use_condition_selectivity=2; +explain select * from (select * from t0 where key1 = 3 or key2 =3) as Z where Z.key8 > 5; +id select_type table type possible_keys key key_len ref rows Extra +1 PRIMARY ALL NULL NULL NULL NULL 2 Using where +2 DERIVED t0 index_merge i1,i2,i8 i1,i2 4,4 NULL 2 Using union(i1,i2); Using where +select * from (select * from t0 where key1 = 3 or key2 =3) as Z where Z.key8 > 5; +key1 key2 key3 key8 +3 3 3 1021 +set @@optimizer_switch= @optimizer_switch_save; +drop table t0; +# End of 10.1 tests diff --git a/mysql-test/main/index_merge_myisam.test b/mysql-test/main/index_merge_myisam.test index 329b817c0a6..0b0d8d60c15 100644 --- a/mysql-test/main/index_merge_myisam.test +++ b/mysql-test/main/index_merge_myisam.test @@ -244,6 +244,55 @@ DROP TABLE t1; set optimizer_switch= @optimizer_switch_save; +--echo # +--echo # MDEV-21932: ROR union with index_merge_sort_union=off +--echo # + +create table t0 (a int); +insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9); +insert into t0 select a+10 from t0; +insert into t0 select a+20 from t0; +insert into t0 select a+40 from t0; +insert into t0 select a+80 from t0; +insert into t0 select a+160 from t0; +delete from t0 where a > 300; + +create table t1 ( + f1 int, f2 int, f3 int, f4 int, + primary key (f1), key (f3), key(f4) +) engine=myisam; +insert into t1 select a+100, a+100, a+100, a+100 from t0; +insert into t1 VALUES (9,0,2,6), (9930,0,0,NULL); +analyze table t1; + +set optimizer_switch='index_merge_sort_union=off'; +set optimizer_switch='index_merge_union=on'; + +let $q1= +select * from t1 + where (( f3 = 1 or f1 = 7 ) and f1 < 10) or + (f3 between 2 and 2 and ( f3 = 1 or f4 < 7 )); +eval explain $q1; +eval $q1; + +insert into t1 values (52,0,1,0),(53,0,1,0); +insert into t1 values (50,0,1,0),(51,0,1,0); +insert into t1 values (48,0,1,0),(49,0,1,0); +insert into t1 values (46,0,1,0),(47,0,1,0); +insert into t1 values (44,0,1,0),(45,0,1,0); +analyze table t1; + +let $q2= +select * from t1 + where (( f3 = 1 or f1 = 7 ) and f1 < 10) or + (f3 between 2 and 2 and ( f3 = 1 or f4 < 7 )); +eval explain $q2; +eval $q2; + +drop table t0,t1; + +set optimizer_switch= @optimizer_switch_save; + --echo # --echo # MDEV-16695: Estimate for rows of derived tables is very high when we are using index_merge union --echo # @@ -272,43 +321,4 @@ select * from (select * from t0 where key1 = 3 or key2 =3) as Z where Z.key8 > 5 set @@optimizer_switch= @optimizer_switch_save; drop table t0; -# -# MDEV-21932: ROR union with index_merge_sort_union=off -# -create table t0 (a int); -insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9); -insert into t0 select a+10 from t0; -insert into t0 select a+20 from t0; -insert into t0 select a+40 from t0; -insert into t0 select a+80 from t0; -insert into t0 select a+160 from t0; -delete from t0 where a > 300; -create table t1 ( -f1 int, f2 int, f3 int, f4 int, -primary key (f1), key (f3), key(f4) -) engine=myisam; -insert into t1 select a+100, a+100, a+100, a+100 from t0; -insert into t1 VALUES (9,0,2,6), (9930,0,0,NULL); -analyze table t1; -set optimizer_switch='index_merge_sort_union=off'; -set optimizer_switch='index_merge_union=on'; -explain select * from t1 -where (( f3 = 1 or f1 = 7 ) and f1 < 10) or -(f3 between 2 and 2 and ( f3 = 1 or f4 < 7 )); -select * from t1 -where (( f3 = 1 or f1 = 7 ) and f1 < 10) or -(f3 between 2 and 2 and ( f3 = 1 or f4 < 7 )); -insert into t1 values (52,0,1,0),(53,0,1,0); -insert into t1 values (50,0,1,0),(51,0,1,0); -insert into t1 values (48,0,1,0),(49,0,1,0); -insert into t1 values (46,0,1,0),(47,0,1,0); -insert into t1 values (44,0,1,0),(45,0,1,0); -analyze table t1; -explain select * from t1 -where (( f3 = 1 or f1 = 7 ) and f1 < 10) or -(f3 between 2 and 2 and ( f3 = 1 or f4 < 7 )); -select * from t1 -where (( f3 = 1 or f1 = 7 ) and f1 < 10) or -(f3 between 2 and 2 and ( f3 = 1 or f4 < 7 )); -drop table t0,t1; -set optimizer_switch= @optimizer_switch_save; +--echo # End of 10.1 tests diff --git a/mysql-test/main/long_unique.result b/mysql-test/main/long_unique.result index a4955b3e7b5..efa0444fff5 100644 --- a/mysql-test/main/long_unique.result +++ b/mysql-test/main/long_unique.result @@ -122,7 +122,7 @@ maria sachin insert into t1 values(repeat('s',4000*10)),(repeat('s',4001*10)); insert into t1 values(repeat('m',4000*10)),(repeat('m',4000*10)); -ERROR 23000: Duplicate entry 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm' for key 'a' +ERROR 23000: Duplicate entry 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm...' for key 'a' insert into t1 values(repeat('m',4001)),(repeat('m',4002)); truncate table t1; insert into t1 values(1),(2),(3),(4),(5),(8),(7); @@ -431,7 +431,7 @@ insert into t1 values(repeat('s',4000*10),100,repeat('s',4000*10),repeat('s',400 repeat('s',400)),(repeat('s',4001*10),1000,repeat('s',4001*10),repeat('s',4001*10), repeat('s',2995)); insert into t1 values(repeat('m',4000*11),10,repeat('s',4000*11),repeat('s',4000*11),repeat('s',2995)); -ERROR 23000: Duplicate entry 'ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss' for key 'e' +ERROR 23000: Duplicate entry 'sssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss...' for key 'e' truncate table t1; insert into t1 values(1,2,3,4,5),(2,11,22,33,44),(3111,222,333,444,555),(5611,2222,3333,4444,5555); #now some alter commands; @@ -1258,10 +1258,10 @@ insert into t1 values(concat(repeat('sachin',10000000),'2'),concat(repeat('sachi concat(repeat('sachin',10000000),'1')); insert into t1 values(concat(repeat('sachin',10000000),'2'),concat(repeat('sachin',10000000),'2'), concat(repeat('sachin',10000000),'4')); -ERROR 23000: Duplicate entry 'sachinsachinsachinsachinsachinsachinsachinsachinsachinsachinsach' for key 'a' +ERROR 23000: Duplicate entry 'sachinsachinsachinsachinsachinsachinsachinsachinsachinsachins...' for key 'a' insert into t1 values(concat(repeat('sachin',10000000),'3'),concat(repeat('sachin',10000000),'1'), concat(repeat('sachin',10000000),'1')); -ERROR 23000: Duplicate entry 'sachinsachinsachinsachinsachinsachinsachinsachinsachinsachinsach' for key 'b' +ERROR 23000: Duplicate entry 'sachinsachinsachinsachinsachinsachinsachinsachinsachinsachins...' for key 'b' drop table t1; #long key unique with different key length create table t1(a blob, unique(a(3000))); @@ -1279,7 +1279,7 @@ t1 CREATE TABLE `t1` ( ) ENGINE=MyISAM DEFAULT CHARSET=latin1 insert into t1 value(concat(repeat('s',3000),'1')); insert into t1 value(concat(repeat('s',3000),'2')); -ERROR 23000: Duplicate entry 'ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss' for key 'a' +ERROR 23000: Duplicate entry 'sssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss...' for key 'a' insert into t1 value(concat(repeat('a',3000),'2')); drop table t1; create table t1(a varchar(4000), b longblob , c varchar(5000), d longblob, diff --git a/mysql-test/main/multi_update.result b/mysql-test/main/multi_update.result index 4ba5c360538..d792b2828b8 100644 --- a/mysql-test/main/multi_update.result +++ b/mysql-test/main/multi_update.result @@ -1081,3 +1081,20 @@ b c 2 0 drop view v1; drop table t0, t1,t2; +# +# MDEV-20515 multi-update tries to position updated table by null reference +# +create or replace table t1 (a int); +insert into t1 values (0), (2); +create or replace table t2 (b int); +insert into t2 values (1), (2); +select * from t1 left join t2 on a = b order by b; +a b +0 NULL +2 2 +update t1 left join t2 on a = b set b= 3 order by b; +select * from t2; +b +1 +3 +drop tables t1, t2; diff --git a/mysql-test/main/multi_update.test b/mysql-test/main/multi_update.test index b09d02cb5aa..8a32f626818 100644 --- a/mysql-test/main/multi_update.test +++ b/mysql-test/main/multi_update.test @@ -1019,3 +1019,18 @@ update v1,t0 set c=1 where b<3 and x=c order by x,b limit 1; select * from v1; drop view v1; drop table t0, t1,t2; + +--echo # +--echo # MDEV-20515 multi-update tries to position updated table by null reference +--echo # +create or replace table t1 (a int); +insert into t1 values (0), (2); + +create or replace table t2 (b int); +insert into t2 values (1), (2); + +select * from t1 left join t2 on a = b order by b; +update t1 left join t2 on a = b set b= 3 order by b; +select * from t2; + +drop tables t1, t2; diff --git a/mysql-test/main/mysql.result b/mysql-test/main/mysql.result index b9ffd25ec0b..ec2760ce8a7 100644 --- a/mysql-test/main/mysql.result +++ b/mysql-test/main/mysql.result @@ -177,7 +177,7 @@ ERROR 2005 (HY000) at line 1: Unknown MySQL server host 'invalid_hostname' (errn The commands reported in the bug report ERROR 2005 (HY000) at line 1: Unknown MySQL server host 'cyril has found a bug :)XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' (errno) Too long dbname -ERROR 1102 (42000) at line 1: Incorrect database name 'test_really_long_dbnamexxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' +ERROR 1102 (42000) at line 1: Incorrect database name 'test_really_long_dbnamexxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...' Too long hostname ERROR 2005 (HY000) at line 1: Unknown MySQL server host 'cyrils_superlonghostnameXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' (errno) 1 diff --git a/mysql-test/main/mysqld--help.result b/mysql-test/main/mysqld--help.result index f184b1b60ff..059818b2170 100644 --- a/mysql-test/main/mysqld--help.result +++ b/mysql-test/main/mysqld--help.result @@ -1314,10 +1314,10 @@ The following specify which files/extra groups are read (specified before remain application layer.If set to 0, system dependent default is used. (Automatically configured unless set explicitly) --tcp-keepalive-time=# - Timeout, in milliseconds, with no activity until the - first TCP keep-alive packet is sent.If set to 0, system - dependent default is used. (Automatically configured - unless set explicitly) + Timeout, in seconds, with no activity until the first TCP + keep-alive packet is sent.If set to 0, system dependent + default is used. (Automatically configured unless set + explicitly) --tcp-nodelay Set option TCP_NODELAY (disable Nagle's algorithm) on socket (Defaults to on; use --skip-tcp-nodelay to disable.) diff --git a/mysql-test/main/mysqldump.result b/mysql-test/main/mysqldump.result index 790a519e251..cf93ca41ccf 100644 --- a/mysql-test/main/mysqldump.result +++ b/mysql-test/main/mysqldump.result @@ -3760,7 +3760,7 @@ DROP TABLE t1; # CREATE TABLE t1(a int); INSERT INTO t1 VALUES (1), (2); -mysqldump: Input filename too long: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mysqldump: Input filename too long: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa... DROP TABLE t1; CREATE TABLE t2 (a INT) ENGINE=MyISAM; CREATE TABLE t3 (a INT) ENGINE=MyISAM; @@ -5659,9 +5659,27 @@ count(*) 2 drop tables t2, t1; # +# MDEV-22037: Add ability to skip content of some tables +# (work around for MDEV-20939) +# +use mysql; +# check that all tables we need are not empty +select count(*) >= 1 from mysql.proc; +count(*) >= 1 +1 +select count(*) >= 1 from mysql.db; +count(*) >= 1 +1 +# for proc we have CREATE and INSERT for all other only CREATE +FOUND 1 /INSERT INTO `proc`/ in MDEV-20939.sql +NOT FOUND /INSERT INTO `db`/ in MDEV-20939.sql +FOUND 1 /CREATE TABLE `db`/ in MDEV-20939.sql +FOUND 1 /CREATE TABLE `proc`/ in MDEV-20939.sql +use test; +# End of 10.1 tests +# # Test for --add-drop-trigger # -use test; CREATE TABLE t1 (a int, b int); CREATE TRIGGER tt1_t1 BEFORE INSERT ON t1 FOR EACH ROW SET NEW.b=NEW.a + 10; @@ -5707,6 +5725,7 @@ DELIMITER ; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; DROP TABLE t1; +# End of 10.2 tests # # Test for Invisible columns # @@ -5887,3 +5906,4 @@ invisible int(11) YES NULL a b c & $!@#$%^&*( ) int(11) YES 4 INVISIBLE ds=~!@ \# $% ^ & * ( ) _ - = + int(11) YES 5 INVISIBLE drop database d; +# End of 10.3 tests diff --git a/mysql-test/main/mysqldump.test b/mysql-test/main/mysqldump.test index 3b06bd0d923..3f8777b9d48 100644 --- a/mysql-test/main/mysqldump.test +++ b/mysql-test/main/mysqldump.test @@ -2700,10 +2700,45 @@ select count(*) from t2; --remove_file $MYSQLTEST_VARDIR/tmp/t2.txt drop tables t2, t1; + +--echo # +--echo # MDEV-22037: Add ability to skip content of some tables +--echo # (work around for MDEV-20939) +--echo # + +use mysql; + +--echo # check that all tables we need are not empty + +select count(*) >= 1 from mysql.proc; +select count(*) >= 1 from mysql.db; + + +--exec $MYSQL_DUMP mysql --ignore-table-data=mysql.db >$MYSQLTEST_VARDIR/tmp/MDEV-20939.sql + + +--echo # for proc we have CREATE and INSERT for all other only CREATE + +let SEARCH_RANGE=500000000; +let SEARCH_FILE=$MYSQLTEST_VARDIR/tmp/MDEV-20939.sql; +let SEARCH_PATTERN=INSERT INTO `proc`; +source include/search_pattern_in_file.inc; +let SEARCH_PATTERN=INSERT INTO `db`; +source include/search_pattern_in_file.inc; +let SEARCH_PATTERN=CREATE TABLE `db`; +source include/search_pattern_in_file.inc; +let SEARCH_PATTERN=CREATE TABLE `proc`; +source include/search_pattern_in_file.inc; + +--remove_file $MYSQLTEST_VARDIR/tmp/MDEV-20939.sql +use test; + +--echo # End of 10.1 tests + --echo # --echo # Test for --add-drop-trigger --echo # -use test; + CREATE TABLE t1 (a int, b int); CREATE TRIGGER tt1_t1 BEFORE INSERT ON t1 FOR EACH ROW SET NEW.b=NEW.a + 10; @@ -2711,6 +2746,9 @@ CREATE TRIGGER tt1_t1 BEFORE INSERT ON t1 FOR EACH ROW INSERT INTO t1 (a) VALUES (1),(2),(3); --exec $MYSQL_DUMP --default-character-set=utf8mb4 --triggers --no-data --no-create-info --add-drop-trigger --skip-comments --databases test DROP TABLE t1; + +--echo # End of 10.2 tests + --echo # --echo # Test for Invisible columns --echo # @@ -2754,3 +2792,5 @@ select * from t2; select * from t3; desc t3; drop database d; + +--echo # End of 10.3 tests diff --git a/mysql-test/main/partition_alter.result b/mysql-test/main/partition_alter.result index ca6359f94de..d946f2b8822 100644 --- a/mysql-test/main/partition_alter.result +++ b/mysql-test/main/partition_alter.result @@ -129,3 +129,26 @@ ERROR HY000: Duplicate partition name p1 alter table t1 add partition (partition p1); ERROR HY000: Duplicate partition name p1 drop table t1; +# +# MDEV-17091 Assertion `old_part_id == m_last_part' failed in +# ha_partition::update_row or `part_id == m_last_part' in +# ha_partition::delete_row upon UPDATE/DELETE after dropping versioning +# +create or replace table t1 (pk int, f int, primary key(pk, f)) engine=innodb +partition by key() partitions 2; +insert into t1 values (1,10),(2,11); +# expected to hit same partition +select * from t1 partition (p0); +pk f +1 10 +2 11 +alter table t1 drop primary key, drop f, add primary key(pk); +# 1 and 2 are expected to be in different partitions +select * from t1 partition(p0); +pk +1 +select * from t1 partition(p1); +pk +2 +delete from t1; +drop table t1; diff --git a/mysql-test/main/partition_alter.test b/mysql-test/main/partition_alter.test index 91ae67e2f7b..dbe7802b5fb 100644 --- a/mysql-test/main/partition_alter.test +++ b/mysql-test/main/partition_alter.test @@ -123,3 +123,22 @@ alter table t1 add partition (partition p1); --error ER_SAME_NAME_PARTITION alter table t1 add partition (partition p1); drop table t1; + +--echo # +--echo # MDEV-17091 Assertion `old_part_id == m_last_part' failed in +--echo # ha_partition::update_row or `part_id == m_last_part' in +--echo # ha_partition::delete_row upon UPDATE/DELETE after dropping versioning +--echo # +create or replace table t1 (pk int, f int, primary key(pk, f)) engine=innodb + partition by key() partitions 2; + +insert into t1 values (1,10),(2,11); +--echo # expected to hit same partition +select * from t1 partition (p0); + +alter table t1 drop primary key, drop f, add primary key(pk); +--echo # 1 and 2 are expected to be in different partitions +select * from t1 partition(p0); +select * from t1 partition(p1); +delete from t1; +drop table t1; diff --git a/mysql-test/main/partition_error.result b/mysql-test/main/partition_error.result index ee1d6e92c51..d99473d0718 100644 --- a/mysql-test/main/partition_error.result +++ b/mysql-test/main/partition_error.result @@ -851,7 +851,7 @@ partition x2 values in (3, 11, 5, 7) tablespace ts2, partition x3 values in (16, 8, 5+19, 70-43) tablespace ts3); ERROR 42000: Partitioning can not be used stand-alone in query near 'partition by list (a) partitions 3 -(partition x1 values in (1,2,9,4) tablespace ' at line 1 +(partition x1 values in (1,2,9,4) tablespa...' at line 1 CREATE TABLE t1 ( a int not null, b int not null, @@ -885,7 +885,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp partitions 3 (partition x1 tablespace ts1, partition x2 tablespace ts2, -part' at line 6 +p...' at line 6 CREATE TABLE t1 ( a int not null, b int not null, @@ -965,7 +965,7 @@ partitions 2 (partition x1 values less than (0), partition x2 values less than (2)); ERROR 42000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed near ') partitions 2 -(partition x1 values less than (0), partition x2 values less than' at line 6 +(partition x1 values less than (0), partition x2 values less t...' at line 6 CREATE TABLE t1 ( a int not null, b int not null, @@ -1114,7 +1114,7 @@ subpartition by key (a+b) partition x2 values less than (2) (subpartition x21, subpartition x22)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '+b) (partition x1 values less than (1) (subpartition x11, subpartition x12), -par' at line 7 +...' at line 7 CREATE TABLE t1 ( a int not null, b int not null, @@ -1284,7 +1284,7 @@ subpartition x22 nodegroup 1) ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near '), partition x2 values in (3,5,6) ( subpartition x21 nodegroup 0, -subpartition x' at line 11 +subpartitio...' at line 11 CREATE TABLE t1 ( a int not null, b int not null, @@ -1319,7 +1319,7 @@ subpartition x22 engine myisam) ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'list (a+b) ( partition x1 ( subpartition x11 engine myisam, -subpartition x12 eng' at line 7 +subpartition x12 ...' at line 7 CREATE TABLE t1 ( a int not null, b int not null, @@ -1337,7 +1337,7 @@ subpartition x22 engine myisam values in (1)) ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'list (a+b) ( partition x1 ( subpartition x11 engine myisam values in (0), -subpar' at line 7 +sub...' at line 7 CREATE TABLE t1 ( a int not null, b int not null, diff --git a/mysql-test/main/range.result b/mysql-test/main/range.result index 54ac0de0c0f..b708628b625 100644 --- a/mysql-test/main/range.result +++ b/mysql-test/main/range.result @@ -2177,6 +2177,26 @@ value1 1003560 12345 value1 1004807 12345 drop table t1; # +# MDEV-22191: Range access is not picked when index_merge_sort_union is turned off +# +set @save_optimizer_switch=@@optimizer_switch; +set @save_optimizer_switch="index_merge_sort_union=OFF"; +CREATE TABLE t1 (a INT, INDEX(a)); +INSERT INTO t1 VALUES (0),(1),(2),(3),(4),(5),(6),(7),(8),(9); +explain +SELECT * FROM t1 WHERE a > 5; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 range a a 5 NULL 4 Using where; Using index +SELECT * FROM t1 WHERE a > 5; +a +6 +7 +8 +9 +set @@optimizer_switch=@save_optimizer_switch; +drop table t1; +# End of 5.5 tests +# # BUG#13731380: RANGE OPTIMIZER CALLS RECORDS_IN_RANGE() FOR OPEN RANGE # CREATE TABLE t1 (pk INT PRIMARY KEY); diff --git a/mysql-test/main/range.test b/mysql-test/main/range.test index 93305e72b22..b5980a8f616 100644 --- a/mysql-test/main/range.test +++ b/mysql-test/main/range.test @@ -1717,6 +1717,22 @@ where (key1varchar='value1' AND (key2int <=1 OR key2int > 1)); select * from t1; drop table t1; +--echo # +--echo # MDEV-22191: Range access is not picked when index_merge_sort_union is turned off +--echo # + +set @save_optimizer_switch=@@optimizer_switch; +set @save_optimizer_switch="index_merge_sort_union=OFF"; +CREATE TABLE t1 (a INT, INDEX(a)); +INSERT INTO t1 VALUES (0),(1),(2),(3),(4),(5),(6),(7),(8),(9); +explain +SELECT * FROM t1 WHERE a > 5; +SELECT * FROM t1 WHERE a > 5; +set @@optimizer_switch=@save_optimizer_switch; +drop table t1; + +--echo # End of 5.5 tests + --echo # --echo # BUG#13731380: RANGE OPTIMIZER CALLS RECORDS_IN_RANGE() FOR OPEN RANGE --echo # diff --git a/mysql-test/main/range_innodb.result b/mysql-test/main/range_innodb.result index 44138bdb85e..66a1e6e6c87 100644 --- a/mysql-test/main/range_innodb.result +++ b/mysql-test/main/range_innodb.result @@ -38,6 +38,33 @@ id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t0 ALL NULL NULL NULL NULL 10 1 SIMPLE t2 range a,b b 5 NULL 201 Using where; Using join buffer (flat, BNL join) drop table t0,t1,t2; +# +# MDEV-10466: constructing an invalid SEL_ARG +# +create table t1 ( +pk int, a int, b int, +primary key (pk), index idx1(b), index idx2(b) +) engine=innodb; +Warnings: +Note 1831 Duplicate index `idx2`. This is deprecated and will be disallowed in a future release +insert into t1 values (1,6,0),(2,1,0),(3,5,2),(4,8,0); +create table t2 (c int) engine=innodb; +insert into t2 values (1),(2); +create table t3 (d int) engine=innodb; +insert into t3 values (3),(-1),(4); +set @save_optimizer_switch=@@optimizer_switch; +set optimizer_switch='extended_keys=on'; +explain +select pk, a, b from t1,t2,t3 where b >= d and pk < c and b = '0'; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t2 ALL NULL NULL NULL NULL 2 +1 SIMPLE t3 ALL NULL NULL NULL NULL 3 Using join buffer (flat, BNL join) +1 SIMPLE t1 ALL PRIMARY,idx1,idx2 NULL NULL NULL 4 Using where; Using join buffer (incremental, BNL join) +select pk, a, b from t1,t2,t3 where b >= d and pk < c and b = '0'; +pk a b +1 6 0 +set optimizer_switch=@save_optimizer_switch; +drop table t1,t2,t3; CREATE TABLE t1 ( pk INT PRIMARY KEY, f1 INT, f2 CHAR(1), f3 CHAR(1), KEY(f1), KEY(f2) @@ -81,6 +108,7 @@ ERROR HY000: Table definition has changed, please retry transaction DROP TABLE t0,t1; SET @@GLOBAL.debug_dbug = @saved_dbug; set @@optimizer_switch= @optimizer_switch_save; +# End of 10.1 tests # # MDEV-19634: Assertion `0' failed in row_sel_convert_mysql_key_to_innobase, # [Warning] InnoDB: Using a partial-field key prefix in search @@ -99,3 +127,4 @@ id select_type table type possible_keys key key_len ref rows Extra SELECT a FROM t1 WHERE pk < 0 AND a <= 'w' and b > 0; a drop table t1; +# End of 10.4 tests diff --git a/mysql-test/main/range_innodb.test b/mysql-test/main/range_innodb.test index 28fb1df13cb..f79104fde85 100644 --- a/mysql-test/main/range_innodb.test +++ b/mysql-test/main/range_innodb.test @@ -46,6 +46,32 @@ explain select * from t0 left join t2 on t2.a = d and pk < c and b = '0'; +select pk, a, b from t1,t2,t3 where b >= d and pk < c and b = '0'; + +set optimizer_switch=@save_optimizer_switch; + +drop table t1,t2,t3; + CREATE TABLE t1 ( pk INT PRIMARY KEY, f1 INT, f2 CHAR(1), f3 CHAR(1), KEY(f1), KEY(f2) @@ -89,6 +115,8 @@ DROP TABLE t0,t1; SET @@GLOBAL.debug_dbug = @saved_dbug; set @@optimizer_switch= @optimizer_switch_save; +--echo # End of 10.1 tests + --echo # --echo # MDEV-19634: Assertion `0' failed in row_sel_convert_mysql_key_to_innobase, --echo # [Warning] InnoDB: Using a partial-field key prefix in search @@ -107,3 +135,5 @@ INSERT INTO t1 VALUES (1,'a',1),(2,'b',2); explain SELECT a FROM t1 WHERE pk < 0 AND a <= 'w' and b > 0; SELECT a FROM t1 WHERE pk < 0 AND a <= 'w' and b > 0; drop table t1; + +-- echo # End of 10.4 tests diff --git a/mysql-test/main/range_mrr_icp.result b/mysql-test/main/range_mrr_icp.result index 5ca1b6603c9..04c3ad2780d 100644 --- a/mysql-test/main/range_mrr_icp.result +++ b/mysql-test/main/range_mrr_icp.result @@ -2180,6 +2180,26 @@ value1 1003560 12345 value1 1004807 12345 drop table t1; # +# MDEV-22191: Range access is not picked when index_merge_sort_union is turned off +# +set @save_optimizer_switch=@@optimizer_switch; +set @save_optimizer_switch="index_merge_sort_union=OFF"; +CREATE TABLE t1 (a INT, INDEX(a)); +INSERT INTO t1 VALUES (0),(1),(2),(3),(4),(5),(6),(7),(8),(9); +explain +SELECT * FROM t1 WHERE a > 5; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 range a a 5 NULL 4 Using where; Using index +SELECT * FROM t1 WHERE a > 5; +a +6 +7 +8 +9 +set @@optimizer_switch=@save_optimizer_switch; +drop table t1; +# End of 5.5 tests +# # BUG#13731380: RANGE OPTIMIZER CALLS RECORDS_IN_RANGE() FOR OPEN RANGE # CREATE TABLE t1 (pk INT PRIMARY KEY); diff --git a/mysql-test/main/signal.result b/mysql-test/main/signal.result index e329c58a47e..40b1609fc26 100644 --- a/mysql-test/main/signal.result +++ b/mysql-test/main/signal.result @@ -2358,21 +2358,21 @@ DECLARE céèçà foo CONDITION FOR SQLSTATE '12345'; SIGNAL céèçà SET MYSQL_ERRNO = 1000; end $$ ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'èçà foo CONDITION FOR SQLSTATE '12345'; -SIGNAL céèçà SET ' at line 3 +SIGNAL céèçà S...' at line 3 create procedure test_signal() begin DECLARE "céèçà" CONDITION FOR SQLSTATE '12345'; SIGNAL "céèçà" SET MYSQL_ERRNO = 1000; end $$ ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '"céèçà" CONDITION FOR SQLSTATE '12345'; -SIGNAL "céèçà" S' at line 3 +SIGNAL "céèçà...' at line 3 create procedure test_signal() begin DECLARE 'céèçà' CONDITION FOR SQLSTATE '12345'; SIGNAL 'céèçà' SET MYSQL_ERRNO = 1000; end $$ ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''céèçà' CONDITION FOR SQLSTATE '12345'; -SIGNAL 'céèçà' S' at line 3 +SIGNAL 'céèçà...' at line 3 create procedure test_signal() begin DECLARE `céèçà` CONDITION FOR SQLSTATE '12345'; diff --git a/mysql-test/main/sp-error.result b/mysql-test/main/sp-error.result index 3d4e7895fa4..b7d9a3a5cc8 100644 --- a/mysql-test/main/sp-error.result +++ b/mysql-test/main/sp-error.result @@ -1714,17 +1714,17 @@ DROP TABLE t1; # WITH OBSCURE QUERY # SELECT very_long_fn_name_1111111111111111111111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222225555555555555555555555555577777777777777777777777777777777777777777777777777777777777777777777777788888888999999999999999999999(); -ERROR 42000: Identifier name 'very_long_fn_name_1111111111111111111111111111111111111111111111111111111111111111111111111222222222' is too long +ERROR 42000: Identifier name 'very_long_fn_name_1111111111111111111111111111111111111111111111111111111111111111111111111222222...' is too long CALL very_long_pr_name_1111111111111111111111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222225555555555555555555555555577777777777777777777777777777777777777777777777777777777777777777777777788888888999999999999999999999(); -ERROR 42000: Identifier name 'very_long_pr_name_1111111111111111111111111111111111111111111111111111111111111111111111111222222222' is too long +ERROR 42000: Identifier name 'very_long_pr_name_1111111111111111111111111111111111111111111111111111111111111111111111111222222...' is too long SELECT very_long_db_name_1111111111111111111111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222225555555555555555555555555577777777777777777777777777777777777777777777777777777777777777777777777788888888999999999999999999999.simple_func(); -ERROR 42000: Incorrect database name 'very_long_db_name_1111111111111111111111111111111111111111111111111111111111111111111111111222222222' +ERROR 42000: Incorrect database name 'very_long_db_name_1111111111111111111111111111111111111111111111111111111111111111111111111222222...' CALL very_long_db_name_1111111111111111111111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222225555555555555555555555555577777777777777777777777777777777777777777777777777777777777777777777777788888888999999999999999999999.simple_proc(); -ERROR 42000: Incorrect database name 'very_long_db_name_1111111111111111111111111111111111111111111111111111111111111111111111111222222222' +ERROR 42000: Incorrect database name 'very_long_db_name_1111111111111111111111111111111111111111111111111111111111111111111111111222222...' SELECT db_name.very_long_fn_name_111111111111111111111111111111111111111111111111111111111111111111111111122222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999999999999999999(); -ERROR 42000: Identifier name 'very_long_fn_name_1111111111111111111111111111111111111111111111111111111111111111111111111222222222' is too long +ERROR 42000: Identifier name 'very_long_fn_name_1111111111111111111111111111111111111111111111111111111111111111111111111222222...' is too long CALL db_name.very_long_pr_name_111111111111111111111111111111111111111111111111111111111111111111111111122222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999999999999999999(); -ERROR 42000: Identifier name 'very_long_pr_name_1111111111111111111111111111111111111111111111111111111111111111111111111222222222' is too long +ERROR 42000: Identifier name 'very_long_pr_name_1111111111111111111111111111111111111111111111111111111111111111111111111222222...' is too long End of 5.1 tests # # Bug#23032: Handlers declared in a SP do not handle warnings generated in sub-SP diff --git a/mysql-test/main/sp.result b/mysql-test/main/sp.result index f994f6f7fd6..376f44e3b01 100644 --- a/mysql-test/main/sp.result +++ b/mysql-test/main/sp.result @@ -5279,7 +5279,7 @@ CREATE DEFINER=longer_than_80_45678901234567890123456789012345678901234567890123 BEGIN SET @a = 1; END| -ERROR HY000: String 'longer_than_80_4567890123456789012345678901234567890123456789012345678' is too long for user name (should be no longer than 80) +ERROR HY000: String 'longer_than_80_4567890123456789012345678901234567890123456789012345...' is too long for user name (should be no longer than 80) CREATE DEFINER=some_user_name@1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY FUNCTION bug16899_f1() RETURNS INT BEGIN diff --git a/mysql-test/main/trigger.result b/mysql-test/main/trigger.result index ab9dbc63888..339394a29c2 100644 --- a/mysql-test/main/trigger.result +++ b/mysql-test/main/trigger.result @@ -1187,7 +1187,7 @@ CREATE TABLE t1(c INT); CREATE TABLE t2(c INT); CREATE DEFINER=longer_than_80_456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789@localhost TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET @a = 1; -ERROR HY000: String 'longer_than_80_4567890123456789012345678901234567890123456789012345678' is too long for user name (should be no longer than 80) +ERROR HY000: String 'longer_than_80_4567890123456789012345678901234567890123456789012345...' is too long for user name (should be no longer than 80) CREATE DEFINER=some_user_name@1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY TRIGGER t2_bi BEFORE INSERT ON t2 FOR EACH ROW SET @a = 2; ERROR HY000: String '1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY' is too long for host name (should be no longer than 60) diff --git a/mysql-test/main/udf.result b/mysql-test/main/udf.result index 6655982a38f..4077a85c813 100644 --- a/mysql-test/main/udf.result +++ b/mysql-test/main/udf.result @@ -552,19 +552,19 @@ pk a sum price avg2(sum, price) over (partition by a order by pk ROWS BETWEEN 1 select pk, a, sum, price, tttttttt(sprice,sum) over (partition by a order by pk ROWS BETWEEN 1 PRECEDING AND 0 FOLLOWING) from t1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'over (partition by a order by pk ROWS BETWEEN 1 PRECEDING AND 0 FOLLOWING) -from ' at line 1 +fr...' at line 1 select pk, a, sum, price, myfunc_double(sum) over (partition by a order by pk ROWS BETWEEN 1 PRECEDING AND 0 FOLLOWING) from t1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'over (partition by a order by pk ROWS BETWEEN 1 PRECEDING AND 0 FOLLOWING) -from ' at line 1 +fr...' at line 1 select pk, a, sum, price, round(sprice,sum) over (partition by a order by pk ROWS BETWEEN 1 PRECEDING AND 0 FOLLOWING) from t1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'over (partition by a order by pk ROWS BETWEEN 1 PRECEDING AND 0 FOLLOWING) -from ' at line 1 +fr...' at line 1 select pk, a, sum, price, myfunc_double(sum) over (partition by a order by pk ROWS BETWEEN 1 PRECEDING AND 0 FOLLOWING) from t1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'over (partition by a order by pk ROWS BETWEEN 1 PRECEDING AND 0 FOLLOWING) -from ' at line 1 +fr...' at line 1 set @save_sql_mode = @@sql_mode; set sql_mode="oracle"; select pk, a, sum, price, avg2(sum, price) over (partition by a order by pk ROWS BETWEEN 1 PRECEDING AND 0 FOLLOWING) diff --git a/mysql-test/main/view.result b/mysql-test/main/view.result index 13f3761cdee..eafe62f2314 100644 --- a/mysql-test/main/view.result +++ b/mysql-test/main/view.result @@ -2903,7 +2903,7 @@ DROP VIEW IF EXISTS v2; CREATE TABLE t1(a INT, b INT); CREATE DEFINER=longer_than_80_456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789@localhost VIEW v1 AS SELECT a FROM t1; -ERROR HY000: String 'longer_than_80_4567890123456789012345678901234567890123456789012345678' is too long for user name (should be no longer than 80) +ERROR HY000: String 'longer_than_80_4567890123456789012345678901234567890123456789012345...' is too long for user name (should be no longer than 80) CREATE DEFINER=some_user_name@1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY VIEW v2 AS SELECT b FROM t1; ERROR HY000: String '1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY' is too long for host name (should be no longer than 60) diff --git a/mysql-test/main/xml.result b/mysql-test/main/xml.result index 2cd70c08a94..14abf503b18 100644 --- a/mysql-test/main/xml.result +++ b/mysql-test/main/xml.result @@ -1007,11 +1007,11 @@ Warning 1292 Truncated incorrect INTEGER value: 'string ' Warning 1292 Truncated incorrect INTEGER value: 'string ' DROP PROCEDURE spxml; select UpdateXML('a',repeat('a b ',1000),''); -ERROR HY000: XPATH syntax error: 'b a b a b a b a b a b a b a b a ' +ERROR HY000: XPATH syntax error: 'b a b a b a b a b a b a b a b...' select ExtractValue('a', '/a[@x=@y0123456789_0123456789_0123456789_0123456789]'); -ERROR HY000: XPATH error: comparison of two nodesets is not supported: '=@y0123456789_0123456789_0123456' +ERROR HY000: XPATH error: comparison of two nodesets is not supported: '=@y0123456789_0123456789_0123...' select ExtractValue('a', '/a[@x=$y0123456789_0123456789_0123456789_0123456789]'); -ERROR HY000: Unknown XPATH variable at: '$y0123456789_0123456789_01234567' +ERROR HY000: Unknown XPATH variable at: '$y0123456789_0123456789_01234...' select updatexml(NULL, 1, 1), updatexml(1, NULL, 1), updatexml(1, 1, NULL); updatexml(NULL, 1, 1) updatexml(1, NULL, 1) updatexml(1, 1, NULL) NULL NULL NULL @@ -1110,9 +1110,9 @@ NULL # Bug#57279 updatexml dies with: Assertion failed: str_arg[length] == 0 # SELECT UPDATEXML(NULL, (LPAD(0.1111E-15, '2011', 1)), 1); -ERROR 22007: Illegal double '111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111' value found during parsing +ERROR 22007: Illegal double '111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...' value found during parsing SELECT EXTRACTVALUE('', LPAD(0.1111E-15, '2011', 1)); -ERROR 22007: Illegal double '111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111' value found during parsing +ERROR 22007: Illegal double '111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...' value found during parsing # # Bug #44332 my_xml_scan reads behind the end of buffer # diff --git a/mysql-test/mysql-test-run.pl b/mysql-test/mysql-test-run.pl index e7cbbd761e5..52cfa7da577 100755 --- a/mysql-test/mysql-test-run.pl +++ b/mysql-test/mysql-test-run.pl @@ -129,6 +129,8 @@ our $path_testlog; our $default_vardir; our $opt_vardir; # Path to use for var/ dir our $plugindir; +our $opt_xml_report; # XML output + my $path_vardir_trace; # unix formatted opt_vardir for trace files my $opt_tmpdir; # Path to use for tmp/ dir my $opt_tmpdir_pid; @@ -622,11 +624,7 @@ sub main { else { my $sys_info= My::SysInfo->new(); - $opt_parallel= $sys_info->num_cpus() + - int($sys_info->min_bogomips()/500) - 4; - for my $limit (2000, 1500, 1000, 500){ - $opt_parallel-- if ($sys_info->min_bogomips() < $limit); - } + $opt_parallel= $sys_info->num_cpus()+int($sys_info->min_bogomips()/500)-4; } my $max_par= $ENV{MTR_MAX_PARALLEL} || 8; $opt_parallel= $max_par if ($opt_parallel > $max_par); @@ -742,7 +740,6 @@ sub main { mtr_print_line(); print_total_times($opt_parallel) if $opt_report_times; - mtr_report_stats($prefix, $fail, $completed, $extra_warnings); if ($opt_gcov) { @@ -1245,6 +1242,7 @@ sub print_global_resfile { resfile_global("warnings", $opt_warnings ? 1 : 0); resfile_global("max-connections", $opt_max_connections); resfile_global("product", "MySQL"); + resfile_global("xml-report", $opt_xml_report); # Somewhat hacky code to convert numeric version back to dot notation my $v1= int($mysql_version_id / 10000); my $v2= int(($mysql_version_id % 10000)/100); @@ -1411,7 +1409,8 @@ sub command_line_setup { 'help|h' => \$opt_usage, # list-options is internal, not listed in help 'list-options' => \$opt_list_options, - 'skip-test-list=s' => \@opt_skip_test_list + 'skip-test-list=s' => \@opt_skip_test_list, + 'xml-report=s' => \$opt_xml_report ); # fix options (that take an optional argument and *only* after = sign @@ -6643,6 +6642,7 @@ Misc options phases of test execution. stress=ARGS Run stress test, providing options to mysql-stress-test.pl. Options are separated by comma. + xml-report= Output jUnit xml file of the results. tail-lines=N Number of lines of the result to include in a failure report. diff --git a/mysql-test/suite/compat/oracle/r/sp-cursor-decl.result b/mysql-test/suite/compat/oracle/r/sp-cursor-decl.result index b75b5d5be9d..275e575620b 100644 --- a/mysql-test/suite/compat/oracle/r/sp-cursor-decl.result +++ b/mysql-test/suite/compat/oracle/r/sp-cursor-decl.result @@ -102,7 +102,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp BEGIN var1:=''; insert into t1 values (1); -SELE' at line 10 +S...' at line 10 drop table t1; # # Condition after handler declaration @@ -130,7 +130,7 @@ $$ ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'divide_by_zero CONDITION FOR SQLSTATE '22012'; BEGIN var1:=''; -insert into t1 va' at line 11 +insert into t1...' at line 11 drop table t1; # # Variable after handler declaration @@ -158,7 +158,7 @@ $$ ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'divide_by_zero CONDITION FOR SQLSTATE '22012'; BEGIN var1:=''; -insert into t1 va' at line 11 +insert into t1...' at line 11 drop table t1; # # Variable after cursor (inner block) diff --git a/mysql-test/suite/compat/oracle/r/sp-cursor.result b/mysql-test/suite/compat/oracle/r/sp-cursor.result index a09459ad7cd..2e0c43c8b87 100644 --- a/mysql-test/suite/compat/oracle/r/sp-cursor.result +++ b/mysql-test/suite/compat/oracle/r/sp-cursor.result @@ -776,7 +776,7 @@ FETCH c INTO a, b; EXIT WHEN c%NOTFOUND; SELECT a, b; END LOOP; -CLOSE ' at line 5 +CLO...' at line 5 DROP TABLE t1; # # MDEV-10577 sql_mode=ORACLE: %TYPE in variable declarations diff --git a/mysql-test/suite/funcs_1/r/innodb_func_view.result b/mysql-test/suite/funcs_1/r/innodb_func_view.result index e7e05016ecb..6004a478f56 100644 --- a/mysql-test/suite/funcs_1/r/innodb_func_view.result +++ b/mysql-test/suite/funcs_1/r/innodb_func_view.result @@ -2099,7 +2099,7 @@ IS NOT TRUE ---äÖüß@µ*$-- 4 IS TRUE -1 5 Warnings: Warning 1292 Truncated incorrect DOUBLE value: '' -Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect DOUBLE value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' SHOW CREATE VIEW v1; View Create View character_set_client collation_connection @@ -2115,7 +2115,7 @@ IS NOT TRUE ---äÖüß@µ*$-- 4 IS TRUE -1 5 Warnings: Warning 1292 Truncated incorrect DOUBLE value: '' -Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect DOUBLE value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' DROP VIEW v1; @@ -2169,7 +2169,7 @@ IS NOT TRUE ---äÖüß@µ*$-- 4 IS TRUE -1 5 Warnings: Warning 1292 Truncated incorrect DOUBLE value: '' -Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect DOUBLE value: ' ---äÖüß@µ*$-- ' SHOW CREATE VIEW v1; View Create View character_set_client collation_connection @@ -2185,7 +2185,7 @@ IS NOT TRUE ---äÖüß@µ*$-- 4 IS TRUE -1 5 Warnings: Warning 1292 Truncated incorrect DOUBLE value: '' -Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect DOUBLE value: ' ---äÖüß@µ*$-- ' DROP VIEW v1; @@ -2687,7 +2687,7 @@ NULL NULL 1 18446744073709551615 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Note 1105 Cast to unsigned converted negative integer to it's positive complement SHOW CREATE VIEW v1; @@ -2704,7 +2704,7 @@ NULL NULL 1 18446744073709551615 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Note 1105 Cast to unsigned converted negative integer to it's positive complement DROP VIEW v1; @@ -2761,7 +2761,7 @@ NULL NULL 1 18446744073709551615 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---äÖüß@µ*$-- ' Note 1105 Cast to unsigned converted negative integer to it's positive complement SHOW CREATE VIEW v1; @@ -2778,7 +2778,7 @@ NULL NULL 1 18446744073709551615 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---äÖüß@µ*$-- ' Note 1105 Cast to unsigned converted negative integer to it's positive complement DROP VIEW v1; @@ -3053,7 +3053,7 @@ NULL NULL 1 -1 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' SHOW CREATE VIEW v1; View Create View character_set_client collation_connection @@ -3069,7 +3069,7 @@ NULL NULL 1 -1 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' DROP VIEW v1; @@ -3123,7 +3123,7 @@ NULL NULL 1 -1 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---äÖüß@µ*$-- ' SHOW CREATE VIEW v1; View Create View character_set_client collation_connection @@ -3139,7 +3139,7 @@ NULL NULL 1 -1 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---äÖüß@µ*$-- ' DROP VIEW v1; @@ -3414,7 +3414,7 @@ Warnings: Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: '' Warning 1918 Encountered illegal value '' when converting to DECIMAL -Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' SHOW CREATE VIEW v1; @@ -3434,7 +3434,7 @@ Warnings: Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: '' Warning 1918 Encountered illegal value '' when converting to DECIMAL -Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' DROP VIEW v1; @@ -3502,7 +3502,7 @@ Warnings: Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: '' Warning 1918 Encountered illegal value '' when converting to DECIMAL -Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: ' ---äÖüß@µ*$-- ' SHOW CREATE VIEW v1; @@ -3522,7 +3522,7 @@ Warnings: Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: '' Warning 1918 Encountered illegal value '' when converting to DECIMAL -Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: ' ---äÖüß@µ*$-- ' DROP VIEW v1; @@ -3782,7 +3782,7 @@ NULL ---äÖüß@µ*$-- 4 41:58:00 1 17:58 23 Warnings: Warning 1292 Incorrect time value: '' -Warning 1292 Incorrect time value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect time value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect time value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' SHOW CREATE VIEW v1; View Create View character_set_client collation_connection @@ -3799,7 +3799,7 @@ NULL ---äÖüß@µ*$-- 4 41:58:00 1 17:58 23 Warnings: Warning 1292 Incorrect time value: '' -Warning 1292 Incorrect time value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect time value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect time value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' DROP VIEW v1; @@ -3858,7 +3858,7 @@ NULL ---äÖüß@µ*$-- 4 41:58:00 1 17:58 21 Warnings: Warning 1292 Incorrect time value: '' -Warning 1292 Incorrect time value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect time value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect time value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' SHOW CREATE VIEW v1; View Create View character_set_client collation_connection @@ -3875,7 +3875,7 @@ NULL ---äÖüß@µ*$-- 4 41:58:00 1 17:58 21 Warnings: Warning 1292 Incorrect time value: '' -Warning 1292 Incorrect time value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect time value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect time value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' DROP VIEW v1; @@ -4136,7 +4136,7 @@ NULL -1 5 2005-06-27 17:58:00 2005-06-27 17:58 17 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' SHOW CREATE VIEW v1; @@ -4154,7 +4154,7 @@ NULL -1 5 2005-06-27 17:58:00 2005-06-27 17:58 17 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' DROP VIEW v1; @@ -4214,7 +4214,7 @@ NULL -1 5 2005-06-27 17:58:00 2005-06-27 17:58 15 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' SHOW CREATE VIEW v1; @@ -4232,7 +4232,7 @@ NULL -1 5 2005-06-27 17:58:00 2005-06-27 17:58 15 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' DROP VIEW v1; @@ -4492,7 +4492,7 @@ NULL -1 5 2005-06-27 2005-06-27 11 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' SHOW CREATE VIEW v1; @@ -4510,7 +4510,7 @@ NULL -1 5 2005-06-27 2005-06-27 11 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' DROP VIEW v1; @@ -4570,7 +4570,7 @@ NULL -1 5 2005-06-27 2005-06-27 9 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' SHOW CREATE VIEW v1; @@ -4588,7 +4588,7 @@ NULL -1 5 2005-06-27 2005-06-27 9 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' DROP VIEW v1; diff --git a/mysql-test/suite/funcs_1/r/innodb_storedproc_02.result b/mysql-test/suite/funcs_1/r/innodb_storedproc_02.result index 6819e2356c3..33778d60ffc 100644 --- a/mysql-test/suite/funcs_1/r/innodb_storedproc_02.result +++ b/mysql-test/suite/funcs_1/r/innodb_storedproc_02.result @@ -488,8 +488,7 @@ DECLARE CONTINUE HANDLER FOR condname1 SET x1 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'CHECK SQLSTATE '23000'; END; -DECLARE CONTINUE HANDLER FOR condname1 SET x1 = 1; -' at line 5 +DECLARE CONTINUE HANDLER FOR condname1 SET x1 = ...' at line 5 CREATE PROCEDURE h1 () BEGIN DECLARE x1 INT DEFAULT 0; @@ -522,8 +521,7 @@ SELECT 'end of 1'; end;// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'undo handler for sqlexception select '1'; select * from tqq; -SELECT 'end of 1'; -' at line 3 +SELECT 'end of 1...' at line 3 create procedure p1 () begin declare exit handler for sqlexception select 'exit handler 1'; diff --git a/mysql-test/suite/funcs_1/r/innodb_views.result b/mysql-test/suite/funcs_1/r/innodb_views.result index b00d1a56c90..90d72b451b9 100644 --- a/mysql-test/suite/funcs_1/r/innodb_views.result +++ b/mysql-test/suite/funcs_1/r/innodb_views.result @@ -3569,7 +3569,7 @@ DROP VIEW v1; REPLACE OR CREATE VIEW v1 AS SELECT F59, F60 FROM test.tb2 my_table WITH CASCADED CHECK OPTION; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'OR CREATE VIEW v1 AS SELECT F59, F60 -FROM test.tb2 my_table WITH CASCADED CHECK ' at line 1 +FROM test.tb2 my_table WITH CASCADED CHE...' at line 1 CREATE OR REPLACE VIEW v1 SELECT AS F59, F60 FROM test.tb2 my_table WITH CASCADED CHECK OPTION; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'SELECT AS F59, F60 @@ -3598,7 +3598,7 @@ FROM test.tb2 my_table WITH CASCADED CHECK OPTION VIEW v1' at line 1 REPLACE OR CREATE VIEW v1 AS SELECT F59, F60 FROM test.tb2 my_table WITH LOCAL CHECK OPTION; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'OR CREATE VIEW v1 AS SELECT F59, F60 -FROM test.tb2 my_table WITH LOCAL CHECK OPT' at line 1 +FROM test.tb2 my_table WITH LOCAL CHECK ...' at line 1 CREATE OR REPLACE VIEW v1 SELECT AS F59, F60 FROM test.tb2 my_table WITH LOCAL CHECK OPTION; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'SELECT AS F59, F60 diff --git a/mysql-test/suite/funcs_1/r/memory_func_view.result b/mysql-test/suite/funcs_1/r/memory_func_view.result index fc8899375d9..906faee4234 100644 --- a/mysql-test/suite/funcs_1/r/memory_func_view.result +++ b/mysql-test/suite/funcs_1/r/memory_func_view.result @@ -2100,7 +2100,7 @@ IS NOT TRUE ---äÖüß@µ*$-- 4 IS TRUE -1 5 Warnings: Warning 1292 Truncated incorrect DOUBLE value: '' -Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect DOUBLE value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' SHOW CREATE VIEW v1; View Create View character_set_client collation_connection @@ -2116,7 +2116,7 @@ IS NOT TRUE ---äÖüß@µ*$-- 4 IS TRUE -1 5 Warnings: Warning 1292 Truncated incorrect DOUBLE value: '' -Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect DOUBLE value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' DROP VIEW v1; @@ -2170,7 +2170,7 @@ IS NOT TRUE ---äÖüß@µ*$-- 4 IS TRUE -1 5 Warnings: Warning 1292 Truncated incorrect DOUBLE value: '' -Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect DOUBLE value: ' ---äÖüß@µ*$-- ' SHOW CREATE VIEW v1; View Create View character_set_client collation_connection @@ -2186,7 +2186,7 @@ IS NOT TRUE ---äÖüß@µ*$-- 4 IS TRUE -1 5 Warnings: Warning 1292 Truncated incorrect DOUBLE value: '' -Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect DOUBLE value: ' ---äÖüß@µ*$-- ' DROP VIEW v1; @@ -2688,7 +2688,7 @@ NULL NULL 1 18446744073709551615 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Note 1105 Cast to unsigned converted negative integer to it's positive complement SHOW CREATE VIEW v1; @@ -2705,7 +2705,7 @@ NULL NULL 1 18446744073709551615 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Note 1105 Cast to unsigned converted negative integer to it's positive complement DROP VIEW v1; @@ -2762,7 +2762,7 @@ NULL NULL 1 18446744073709551615 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---äÖüß@µ*$-- ' Note 1105 Cast to unsigned converted negative integer to it's positive complement SHOW CREATE VIEW v1; @@ -2779,7 +2779,7 @@ NULL NULL 1 18446744073709551615 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---äÖüß@µ*$-- ' Note 1105 Cast to unsigned converted negative integer to it's positive complement DROP VIEW v1; @@ -3054,7 +3054,7 @@ NULL NULL 1 -1 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' SHOW CREATE VIEW v1; View Create View character_set_client collation_connection @@ -3070,7 +3070,7 @@ NULL NULL 1 -1 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' DROP VIEW v1; @@ -3124,7 +3124,7 @@ NULL NULL 1 -1 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---äÖüß@µ*$-- ' SHOW CREATE VIEW v1; View Create View character_set_client collation_connection @@ -3140,7 +3140,7 @@ NULL NULL 1 -1 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---äÖüß@µ*$-- ' DROP VIEW v1; @@ -3415,7 +3415,7 @@ Warnings: Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: '' Warning 1918 Encountered illegal value '' when converting to DECIMAL -Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' SHOW CREATE VIEW v1; @@ -3435,7 +3435,7 @@ Warnings: Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: '' Warning 1918 Encountered illegal value '' when converting to DECIMAL -Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' DROP VIEW v1; @@ -3503,7 +3503,7 @@ Warnings: Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: '' Warning 1918 Encountered illegal value '' when converting to DECIMAL -Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: ' ---äÖüß@µ*$-- ' SHOW CREATE VIEW v1; @@ -3523,7 +3523,7 @@ Warnings: Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: '' Warning 1918 Encountered illegal value '' when converting to DECIMAL -Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: ' ---äÖüß@µ*$-- ' DROP VIEW v1; @@ -3783,7 +3783,7 @@ NULL ---äÖüß@µ*$-- 4 41:58:00 1 17:58 23 Warnings: Warning 1292 Incorrect time value: '' -Warning 1292 Incorrect time value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect time value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect time value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' SHOW CREATE VIEW v1; View Create View character_set_client collation_connection @@ -3800,7 +3800,7 @@ NULL ---äÖüß@µ*$-- 4 41:58:00 1 17:58 23 Warnings: Warning 1292 Incorrect time value: '' -Warning 1292 Incorrect time value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect time value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect time value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' DROP VIEW v1; @@ -3859,7 +3859,7 @@ NULL ---äÖüß@µ*$-- 4 41:58:00 1 17:58 21 Warnings: Warning 1292 Incorrect time value: '' -Warning 1292 Incorrect time value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect time value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect time value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' SHOW CREATE VIEW v1; View Create View character_set_client collation_connection @@ -3876,7 +3876,7 @@ NULL ---äÖüß@µ*$-- 4 41:58:00 1 17:58 21 Warnings: Warning 1292 Incorrect time value: '' -Warning 1292 Incorrect time value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect time value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect time value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' DROP VIEW v1; @@ -4137,7 +4137,7 @@ NULL -1 5 2005-06-27 17:58:00 2005-06-27 17:58 17 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' SHOW CREATE VIEW v1; @@ -4155,7 +4155,7 @@ NULL -1 5 2005-06-27 17:58:00 2005-06-27 17:58 17 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' DROP VIEW v1; @@ -4215,7 +4215,7 @@ NULL -1 5 2005-06-27 17:58:00 2005-06-27 17:58 15 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' SHOW CREATE VIEW v1; @@ -4233,7 +4233,7 @@ NULL -1 5 2005-06-27 17:58:00 2005-06-27 17:58 15 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' DROP VIEW v1; @@ -4493,7 +4493,7 @@ NULL -1 5 2005-06-27 2005-06-27 11 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' SHOW CREATE VIEW v1; @@ -4511,7 +4511,7 @@ NULL -1 5 2005-06-27 2005-06-27 11 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' DROP VIEW v1; @@ -4571,7 +4571,7 @@ NULL -1 5 2005-06-27 2005-06-27 9 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' SHOW CREATE VIEW v1; @@ -4589,7 +4589,7 @@ NULL -1 5 2005-06-27 2005-06-27 9 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' DROP VIEW v1; diff --git a/mysql-test/suite/funcs_1/r/memory_storedproc_02.result b/mysql-test/suite/funcs_1/r/memory_storedproc_02.result index fe23f9de0c5..6e9615c284f 100644 --- a/mysql-test/suite/funcs_1/r/memory_storedproc_02.result +++ b/mysql-test/suite/funcs_1/r/memory_storedproc_02.result @@ -489,8 +489,7 @@ DECLARE CONTINUE HANDLER FOR condname1 SET x1 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'CHECK SQLSTATE '23000'; END; -DECLARE CONTINUE HANDLER FOR condname1 SET x1 = 1; -' at line 5 +DECLARE CONTINUE HANDLER FOR condname1 SET x1 = ...' at line 5 CREATE PROCEDURE h1 () BEGIN DECLARE x1 INT DEFAULT 0; @@ -523,8 +522,7 @@ SELECT 'end of 1'; end;// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'undo handler for sqlexception select '1'; select * from tqq; -SELECT 'end of 1'; -' at line 3 +SELECT 'end of 1...' at line 3 create procedure p1 () begin declare exit handler for sqlexception select 'exit handler 1'; diff --git a/mysql-test/suite/funcs_1/r/memory_views.result b/mysql-test/suite/funcs_1/r/memory_views.result index 5ac5c838fb5..417c0e85188 100644 --- a/mysql-test/suite/funcs_1/r/memory_views.result +++ b/mysql-test/suite/funcs_1/r/memory_views.result @@ -3570,7 +3570,7 @@ DROP VIEW v1; REPLACE OR CREATE VIEW v1 AS SELECT F59, F60 FROM test.tb2 my_table WITH CASCADED CHECK OPTION; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'OR CREATE VIEW v1 AS SELECT F59, F60 -FROM test.tb2 my_table WITH CASCADED CHECK ' at line 1 +FROM test.tb2 my_table WITH CASCADED CHE...' at line 1 CREATE OR REPLACE VIEW v1 SELECT AS F59, F60 FROM test.tb2 my_table WITH CASCADED CHECK OPTION; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'SELECT AS F59, F60 @@ -3599,7 +3599,7 @@ FROM test.tb2 my_table WITH CASCADED CHECK OPTION VIEW v1' at line 1 REPLACE OR CREATE VIEW v1 AS SELECT F59, F60 FROM test.tb2 my_table WITH LOCAL CHECK OPTION; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'OR CREATE VIEW v1 AS SELECT F59, F60 -FROM test.tb2 my_table WITH LOCAL CHECK OPT' at line 1 +FROM test.tb2 my_table WITH LOCAL CHECK ...' at line 1 CREATE OR REPLACE VIEW v1 SELECT AS F59, F60 FROM test.tb2 my_table WITH LOCAL CHECK OPTION; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'SELECT AS F59, F60 diff --git a/mysql-test/suite/funcs_1/r/myisam_func_view.result b/mysql-test/suite/funcs_1/r/myisam_func_view.result index fc8899375d9..906faee4234 100644 --- a/mysql-test/suite/funcs_1/r/myisam_func_view.result +++ b/mysql-test/suite/funcs_1/r/myisam_func_view.result @@ -2100,7 +2100,7 @@ IS NOT TRUE ---äÖüß@µ*$-- 4 IS TRUE -1 5 Warnings: Warning 1292 Truncated incorrect DOUBLE value: '' -Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect DOUBLE value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' SHOW CREATE VIEW v1; View Create View character_set_client collation_connection @@ -2116,7 +2116,7 @@ IS NOT TRUE ---äÖüß@µ*$-- 4 IS TRUE -1 5 Warnings: Warning 1292 Truncated incorrect DOUBLE value: '' -Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect DOUBLE value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' DROP VIEW v1; @@ -2170,7 +2170,7 @@ IS NOT TRUE ---äÖüß@µ*$-- 4 IS TRUE -1 5 Warnings: Warning 1292 Truncated incorrect DOUBLE value: '' -Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect DOUBLE value: ' ---äÖüß@µ*$-- ' SHOW CREATE VIEW v1; View Create View character_set_client collation_connection @@ -2186,7 +2186,7 @@ IS NOT TRUE ---äÖüß@µ*$-- 4 IS TRUE -1 5 Warnings: Warning 1292 Truncated incorrect DOUBLE value: '' -Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DOUBLE value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect DOUBLE value: ' ---äÖüß@µ*$-- ' DROP VIEW v1; @@ -2688,7 +2688,7 @@ NULL NULL 1 18446744073709551615 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Note 1105 Cast to unsigned converted negative integer to it's positive complement SHOW CREATE VIEW v1; @@ -2705,7 +2705,7 @@ NULL NULL 1 18446744073709551615 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Note 1105 Cast to unsigned converted negative integer to it's positive complement DROP VIEW v1; @@ -2762,7 +2762,7 @@ NULL NULL 1 18446744073709551615 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---äÖüß@µ*$-- ' Note 1105 Cast to unsigned converted negative integer to it's positive complement SHOW CREATE VIEW v1; @@ -2779,7 +2779,7 @@ NULL NULL 1 18446744073709551615 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---äÖüß@µ*$-- ' Note 1105 Cast to unsigned converted negative integer to it's positive complement DROP VIEW v1; @@ -3054,7 +3054,7 @@ NULL NULL 1 -1 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' SHOW CREATE VIEW v1; View Create View character_set_client collation_connection @@ -3070,7 +3070,7 @@ NULL NULL 1 -1 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' DROP VIEW v1; @@ -3124,7 +3124,7 @@ NULL NULL 1 -1 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---äÖüß@µ*$-- ' SHOW CREATE VIEW v1; View Create View character_set_client collation_connection @@ -3140,7 +3140,7 @@ NULL NULL 1 -1 -1 5 Warnings: Warning 1292 Truncated incorrect INTEGER value: '' -Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect INTEGER value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Truncated incorrect INTEGER value: ' ---äÖüß@µ*$-- ' DROP VIEW v1; @@ -3415,7 +3415,7 @@ Warnings: Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: '' Warning 1918 Encountered illegal value '' when converting to DECIMAL -Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' SHOW CREATE VIEW v1; @@ -3435,7 +3435,7 @@ Warnings: Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: '' Warning 1918 Encountered illegal value '' when converting to DECIMAL -Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' DROP VIEW v1; @@ -3503,7 +3503,7 @@ Warnings: Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: '' Warning 1918 Encountered illegal value '' when converting to DECIMAL -Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: ' ---äÖüß@µ*$-- ' SHOW CREATE VIEW v1; @@ -3523,7 +3523,7 @@ Warnings: Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: '' Warning 1918 Encountered illegal value '' when converting to DECIMAL -Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Truncated incorrect DECIMAL value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1918 Encountered illegal value '' when converting to DECIMAL Warning 1292 Truncated incorrect DECIMAL value: ' ---äÖüß@µ*$-- ' DROP VIEW v1; @@ -3783,7 +3783,7 @@ NULL ---äÖüß@µ*$-- 4 41:58:00 1 17:58 23 Warnings: Warning 1292 Incorrect time value: '' -Warning 1292 Incorrect time value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect time value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect time value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' SHOW CREATE VIEW v1; View Create View character_set_client collation_connection @@ -3800,7 +3800,7 @@ NULL ---äÖüß@µ*$-- 4 41:58:00 1 17:58 23 Warnings: Warning 1292 Incorrect time value: '' -Warning 1292 Incorrect time value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect time value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect time value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' DROP VIEW v1; @@ -3859,7 +3859,7 @@ NULL ---äÖüß@µ*$-- 4 41:58:00 1 17:58 21 Warnings: Warning 1292 Incorrect time value: '' -Warning 1292 Incorrect time value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect time value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect time value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' SHOW CREATE VIEW v1; View Create View character_set_client collation_connection @@ -3876,7 +3876,7 @@ NULL ---äÖüß@µ*$-- 4 41:58:00 1 17:58 21 Warnings: Warning 1292 Incorrect time value: '' -Warning 1292 Incorrect time value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect time value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect time value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' DROP VIEW v1; @@ -4137,7 +4137,7 @@ NULL -1 5 2005-06-27 17:58:00 2005-06-27 17:58 17 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' SHOW CREATE VIEW v1; @@ -4155,7 +4155,7 @@ NULL -1 5 2005-06-27 17:58:00 2005-06-27 17:58 17 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' DROP VIEW v1; @@ -4215,7 +4215,7 @@ NULL -1 5 2005-06-27 17:58:00 2005-06-27 17:58 15 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' SHOW CREATE VIEW v1; @@ -4233,7 +4233,7 @@ NULL -1 5 2005-06-27 17:58:00 2005-06-27 17:58 15 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' DROP VIEW v1; @@ -4493,7 +4493,7 @@ NULL -1 5 2005-06-27 2005-06-27 11 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' SHOW CREATE VIEW v1; @@ -4511,7 +4511,7 @@ NULL -1 5 2005-06-27 2005-06-27 11 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' DROP VIEW v1; @@ -4571,7 +4571,7 @@ NULL -1 5 2005-06-27 2005-06-27 9 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' SHOW CREATE VIEW v1; @@ -4589,7 +4589,7 @@ NULL -1 5 2005-06-27 2005-06-27 9 Warnings: Warning 1292 Incorrect datetime value: '' -Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------' +Warning 1292 Incorrect datetime value: '<---------1000 characters----------------------------------------------------------------------------------------------------...' Warning 1292 Incorrect datetime value: ' ---\xC3\xA4\xC3\x96\xC3\xBC\xC3\x9F@\xC2\xB5*$-- ' Warning 1292 Incorrect datetime value: '-1' DROP VIEW v1; diff --git a/mysql-test/suite/funcs_1/r/myisam_storedproc_02.result b/mysql-test/suite/funcs_1/r/myisam_storedproc_02.result index fe23f9de0c5..6e9615c284f 100644 --- a/mysql-test/suite/funcs_1/r/myisam_storedproc_02.result +++ b/mysql-test/suite/funcs_1/r/myisam_storedproc_02.result @@ -489,8 +489,7 @@ DECLARE CONTINUE HANDLER FOR condname1 SET x1 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'CHECK SQLSTATE '23000'; END; -DECLARE CONTINUE HANDLER FOR condname1 SET x1 = 1; -' at line 5 +DECLARE CONTINUE HANDLER FOR condname1 SET x1 = ...' at line 5 CREATE PROCEDURE h1 () BEGIN DECLARE x1 INT DEFAULT 0; @@ -523,8 +522,7 @@ SELECT 'end of 1'; end;// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'undo handler for sqlexception select '1'; select * from tqq; -SELECT 'end of 1'; -' at line 3 +SELECT 'end of 1...' at line 3 create procedure p1 () begin declare exit handler for sqlexception select 'exit handler 1'; diff --git a/mysql-test/suite/funcs_1/r/myisam_views-big.result b/mysql-test/suite/funcs_1/r/myisam_views-big.result index 5021cbd5324..efd5ee1c568 100644 --- a/mysql-test/suite/funcs_1/r/myisam_views-big.result +++ b/mysql-test/suite/funcs_1/r/myisam_views-big.result @@ -4072,7 +4072,7 @@ DROP VIEW v1; REPLACE OR CREATE VIEW v1 AS SELECT F59, F60 FROM test.tb2 my_table WITH CASCADED CHECK OPTION; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'OR CREATE VIEW v1 AS SELECT F59, F60 -FROM test.tb2 my_table WITH CASCADED CHECK ' at line 1 +FROM test.tb2 my_table WITH CASCADED CHE...' at line 1 CREATE OR REPLACE VIEW v1 SELECT AS F59, F60 FROM test.tb2 my_table WITH CASCADED CHECK OPTION; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'SELECT AS F59, F60 @@ -4101,7 +4101,7 @@ FROM test.tb2 my_table WITH CASCADED CHECK OPTION VIEW v1' at line 1 REPLACE OR CREATE VIEW v1 AS SELECT F59, F60 FROM test.tb2 my_table WITH LOCAL CHECK OPTION; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'OR CREATE VIEW v1 AS SELECT F59, F60 -FROM test.tb2 my_table WITH LOCAL CHECK OPT' at line 1 +FROM test.tb2 my_table WITH LOCAL CHECK ...' at line 1 CREATE OR REPLACE VIEW v1 SELECT AS F59, F60 FROM test.tb2 my_table WITH LOCAL CHECK OPTION; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'SELECT AS F59, F60 diff --git a/mysql-test/suite/funcs_1/r/storedproc.result b/mysql-test/suite/funcs_1/r/storedproc.result index 81ed8405b7d..d98e575b27c 100644 --- a/mysql-test/suite/funcs_1/r/storedproc.result +++ b/mysql-test/suite/funcs_1/r/storedproc.result @@ -2854,11 +2854,11 @@ return f1' at line 1 CREATE FUNCTION char binary not null(f1 char binary not null) returns char binary not null return f1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'char binary not null(f1 char binary not null) returns char binary not null -retur' at line 1 +re...' at line 1 CREATE FUNCTION char ascii not null(f1 char ascii not null) returns char ascii not null return f1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'char ascii not null(f1 char ascii not null) returns char ascii not null -return f' at line 1 +retur...' at line 1 CREATE FUNCTION tinytext(f1 tinytext) returns tinytext return f1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'tinytext(f1 tinytext) returns tinytext @@ -2885,7 +2885,7 @@ return f1' at line 1 CREATE FUNCTION mediumtext not null(f1 mediumtext not null) returns mediumtext not null return f1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'mediumtext not null(f1 mediumtext not null) returns mediumtext not null -return f' at line 1 +retur...' at line 1 CREATE FUNCTION longtext not null(f1 longtext not null) returns longtext not null return f1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'longtext not null(f1 longtext not null) returns longtext not null @@ -2917,7 +2917,7 @@ return f1' at line 1 CREATE FUNCTION mediumblob not null(f1 mediumblob not null) returns mediumblob not null return f1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'mediumblob not null(f1 mediumblob not null) returns mediumblob not null -return f' at line 1 +retur...' at line 1 CREATE FUNCTION longblob not null(f1 longblob not null) returns longblob not null return f1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'longblob not null(f1 longblob not null) returns longblob not null @@ -2944,7 +2944,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp return f1' at line 1 CREATE FUNCTION tinyint unsigned zerofill(f1 tinyint unsigned zerofill) returns tinyint unsigned zerofill return f1; -ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'tinyint unsigned zerofill(f1 tinyint unsigned zerofill) returns tinyint unsigned' at line 1 +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'tinyint unsigned zerofill(f1 tinyint unsigned zerofill) returns tinyint unsig...' at line 1 CREATE FUNCTION smallint(f1 smallint) returns smallint return f1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'smallint(f1 smallint) returns smallint @@ -2959,7 +2959,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp return f1' at line 1 CREATE FUNCTION smallint unsigned zerofill(f1 smallint unsigned zerofill) returns smallint unsigned zerofill return f1; -ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'smallint unsigned zerofill(f1 smallint unsigned zerofill) returns smallint unsig' at line 1 +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'smallint unsigned zerofill(f1 smallint unsigned zerofill) returns smallint un...' at line 1 CREATE FUNCTION mediumint(f1 mediumint) returns mediumint return f1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'mediumint(f1 mediumint) returns mediumint @@ -2974,7 +2974,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp return f1' at line 1 CREATE FUNCTION mediumint unsigned zerofill(f1 mediumint unsigned zerofill) returns mediumint unsigned zerofill return f1; -ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'mediumint unsigned zerofill(f1 mediumint unsigned zerofill) returns mediumint un' at line 1 +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'mediumint unsigned zerofill(f1 mediumint unsigned zerofill) returns mediumint...' at line 1 CREATE FUNCTION int(f1 int) returns int return f1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'int(f1 int) returns int @@ -3009,8 +3009,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp return f1' at line 1 CREATE FUNCTION int unsigned zerofill(f1 int unsigned zerofill) returns int unsigned zerofill return f1; -ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'int unsigned zerofill(f1 int unsigned zerofill) returns int unsigned zerofill -re' at line 1 +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'int unsigned zerofill(f1 int unsigned zerofill) returns int unsigned zerofill...' at line 1 CREATE FUNCTION bigint(f1 bigint) returns bigint return f1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'bigint(f1 bigint) returns bigint @@ -3025,7 +3024,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp return f1' at line 1 CREATE FUNCTION bigint unsigned zerofill(f1 bigint unsigned zerofill) returns bigint unsigned zerofill return f1; -ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'bigint unsigned zerofill(f1 bigint unsigned zerofill) returns bigint unsigned ze' at line 1 +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'bigint unsigned zerofill(f1 bigint unsigned zerofill) returns bigint unsigned...' at line 1 CREATE FUNCTION decimal(f1 decimal) returns decimal return f1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'decimal(f1 decimal) returns decimal @@ -3040,7 +3039,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp return f1' at line 1 CREATE FUNCTION decimal unsigned zerofill(f1 decimal unsigned zerofill) returns decimal unsigned zerofill return f1; -ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'decimal unsigned zerofill(f1 decimal unsigned zerofill) returns decimal unsigned' at line 1 +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'decimal unsigned zerofill(f1 decimal unsigned zerofill) returns decimal unsig...' at line 1 CREATE FUNCTION numeric(f1 numeric) returns numeric return f1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'numeric(f1 numeric) returns numeric @@ -3055,7 +3054,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp return f1' at line 1 CREATE FUNCTION numeric unsigned zerofill(f1 numeric unsigned zerofill) returns numeric unsigned zerofill return f1; -ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'numeric unsigned zerofill(f1 numeric unsigned zerofill) returns numeric unsigned' at line 1 +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'numeric unsigned zerofill(f1 numeric unsigned zerofill) returns numeric unsig...' at line 1 CREATE FUNCTION real(f1 real) returns real return f1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'real(f1 real) returns real @@ -3070,7 +3069,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp return f1' at line 1 CREATE FUNCTION real unsigned zerofill(f1 real unsigned zerofill) returns real unsigned zerofill return f1; -ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'real unsigned zerofill(f1 real unsigned zerofill) returns real unsigned zerofill' at line 1 +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'real unsigned zerofill(f1 real unsigned zerofill) returns real unsigned zerof...' at line 1 CREATE FUNCTION float(f1 float) returns float return f1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'float(f1 float) returns float @@ -3085,7 +3084,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp return f1' at line 1 CREATE FUNCTION float unsigned zerofill(f1 float unsigned zerofill) returns float unsigned zerofill return f1; -ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'float unsigned zerofill(f1 float unsigned zerofill) returns float unsigned zerof' at line 1 +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'float unsigned zerofill(f1 float unsigned zerofill) returns float unsigned ze...' at line 1 CREATE FUNCTION date(f1 date) returns date return f1; DROP FUNCTION date; @@ -3112,11 +3111,11 @@ return f1' at line 1 CREATE FUNCTION enum("1enum", "2enum")(f1 enum("1enum", "2enum")) returns enum("1enum", "2enum") return f1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '"1enum", "2enum")(f1 enum("1enum", "2enum")) returns enum("1enum", "2enum") -retu' at line 1 +r...' at line 1 CREATE FUNCTION set("1set", "2set")(f1 set("1set", "2set")) returns set("1set", "2set") return f1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'set("1set", "2set")(f1 set("1set", "2set")) returns set("1set", "2set") -return f' at line 1 +retur...' at line 1 DROP FUNCTION IF EXISTS fn1; Warnings: Note 1305 FUNCTION db_storedproc.fn1 does not exist @@ -3801,7 +3800,7 @@ END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '!_fn1( f1 char(20) ) returns int BEGIN SELECT * from t1 where f2 = f1; -return 1;' at line 1 +return...' at line 1 CREATE FUNCTION fn1( f1 char(20) ) return int BEGIN SELECT * from t1 where f2 = f1; @@ -5790,8 +5789,7 @@ END begin_label// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'BEGIN declare x char; declare y char; -SELECT f1, f2 into x, y from t2 limit 1; -E' at line 2 +SELECT f1, f2 into x, y from t2 limit 1...' at line 2 Testcase 4.2.11: ---------------- @@ -5905,7 +5903,7 @@ SELECT f1, f2 into x, y from t2 limit 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'char x, y1 integer default 0; declare char y; -SELECT f1, f2 into x, y from t2 li' at line 3 +SELECT f1, f2 into x, y from t2...' at line 3 DROP PROCEDURE IF EXISTS sp6; CREATE PROCEDURE sp6( ) BEGIN @@ -6305,7 +6303,7 @@ declare decimal unsigned zerofill not null x; SELECT f36 into x from tb1 limit 9998, 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'decimal unsigned zerofill not null x; -SELECT f36 into x from tb1 limit 9998, 1;' at line 3 +SELECT f36 into x from tb1 limit 9998,...' at line 3 DROP PROCEDURE IF EXISTS sp1; CREATE PROCEDURE sp1( ) BEGIN @@ -6367,7 +6365,7 @@ declare decimal (0) unsigned zerofill not null x; SELECT f43 into x from tb1 limit 9998, 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'decimal (0) unsigned zerofill not null x; -SELECT f43 into x from tb1 limit 9998' at line 3 +SELECT f43 into x from tb1 limit 9...' at line 3 DROP PROCEDURE IF EXISTS sp1; CREATE PROCEDURE sp1( ) BEGIN @@ -6375,7 +6373,7 @@ declare decimal (64) unsigned zerofill not null x; SELECT f44 into x from tb1 limit 9998, 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'decimal (64) unsigned zerofill not null x; -SELECT f44 into x from tb1 limit 999' at line 3 +SELECT f44 into x from tb1 limit ...' at line 3 DROP PROCEDURE IF EXISTS sp1; CREATE PROCEDURE sp1( ) BEGIN @@ -6410,7 +6408,7 @@ declare decimal (63, 30) unsigned not null x; SELECT f48 into x from tb1 limit 9998, 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'decimal (63, 30) unsigned not null x; -SELECT f48 into x from tb1 limit 9998, 1;' at line 3 +SELECT f48 into x from tb1 limit 9998,...' at line 3 DROP PROCEDURE IF EXISTS sp1; CREATE PROCEDURE sp1( ) BEGIN @@ -6427,7 +6425,7 @@ declare decimal (63, 30) zerofill not null x; SELECT f50 into x from tb1 limit 9998, 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'decimal (63, 30) zerofill not null x; -SELECT f50 into x from tb1 limit 9998, 1;' at line 3 +SELECT f50 into x from tb1 limit 9998,...' at line 3 DROP PROCEDURE IF EXISTS sp1; CREATE PROCEDURE sp1( ) BEGIN @@ -6435,7 +6433,7 @@ declare decimal (00) unsigned zerofill not null x; SELECT f51 into x from tb1 limit 9998, 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'decimal (00) unsigned zerofill not null x; -SELECT f51 into x from tb1 limit 999' at line 3 +SELECT f51 into x from tb1 limit ...' at line 3 DROP PROCEDURE IF EXISTS sp1; CREATE PROCEDURE sp1( ) BEGIN @@ -6443,7 +6441,7 @@ declare decimal (63, 30) unsigned zerofill not null x; SELECT f52 into x from tb1 limit 9998, 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'decimal (63, 30) unsigned zerofill not null x; -SELECT f52 into x from tb1 limit' at line 3 +SELECT f52 into x from tb1 li...' at line 3 DROP PROCEDURE IF EXISTS sp1; CREATE PROCEDURE sp1( ) BEGIN @@ -6478,7 +6476,7 @@ declare numeric unsigned zerofill not null x; SELECT f56 into x from tb1 limit 9998, 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'numeric unsigned zerofill not null x; -SELECT f56 into x from tb1 limit 9998, 1;' at line 3 +SELECT f56 into x from tb1 limit 9998,...' at line 3 DROP PROCEDURE IF EXISTS sp1; CREATE PROCEDURE sp1( ) BEGIN @@ -6621,7 +6619,7 @@ declare numeric (63, 30) unsigned zerofill x; SELECT f72 into x from tb2 limit 9998, 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'numeric (63, 30) unsigned zerofill x; -SELECT f72 into x from tb2 limit 9998, 1;' at line 3 +SELECT f72 into x from tb2 limit 9998,...' at line 3 DROP PROCEDURE IF EXISTS sp1; CREATE PROCEDURE sp1( ) BEGIN @@ -6728,8 +6726,7 @@ declare float unsigned zerofill not null x; SELECT f84 into x from tb2 limit 9998, 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'float unsigned zerofill not null x; -SELECT f84 into x from tb2 limit 9998, 1; -E' at line 3 +SELECT f84 into x from tb2 limit 9998, 1...' at line 3 DROP PROCEDURE IF EXISTS sp1; CREATE PROCEDURE sp1( ) BEGIN @@ -6791,7 +6788,7 @@ declare float(0) unsigned zerofill not null x; SELECT f91 into x from tb2 limit 9998, 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'float(0) unsigned zerofill not null x; -SELECT f91 into x from tb2 limit 9998, 1' at line 3 +SELECT f91 into x from tb2 limit 9998...' at line 3 DROP PROCEDURE IF EXISTS sp1; CREATE PROCEDURE sp1( ) BEGIN @@ -6799,7 +6796,7 @@ declare float(23) unsigned zerofill not null x; SELECT f92 into x from tb2 limit 9998, 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'float(23) unsigned zerofill not null x; -SELECT f92 into x from tb2 limit 9998, ' at line 3 +SELECT f92 into x from tb2 limit 999...' at line 3 DROP PROCEDURE IF EXISTS sp1; CREATE PROCEDURE sp1( ) BEGIN @@ -6861,7 +6858,7 @@ declare float(24) unsigned zerofill not null x; SELECT f99 into x from tb2 limit 9998, 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'float(24) unsigned zerofill not null x; -SELECT f99 into x from tb2 limit 9998, ' at line 3 +SELECT f99 into x from tb2 limit 999...' at line 3 DROP PROCEDURE IF EXISTS sp1; CREATE PROCEDURE sp1( ) BEGIN @@ -6869,7 +6866,7 @@ declare float(53) unsigned zerofill not null x; SELECT f100 into x from tb2 limit 9998, 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'float(53) unsigned zerofill not null x; -SELECT f100 into x from tb2 limit 9998,' at line 3 +SELECT f100 into x from tb2 limit 99...' at line 3 DROP PROCEDURE IF EXISTS sp1; CREATE PROCEDURE sp1( ) BEGIN @@ -9358,7 +9355,7 @@ declare accessible condition for sqlstate '02000'; declare exit handler for add set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'accessible condition for sqlstate '02000'; -declare exit handler for add set @var' at line 3 +declare exit handler for add set @...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9368,8 +9365,7 @@ declare add condition for sqlstate '02000'; declare exit handler for add set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'add condition for sqlstate '02000'; -declare exit handler for add set @var2 = 1; -' at line 3 +declare exit handler for add set @var2 = ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9379,8 +9375,7 @@ declare all condition for sqlstate '02000'; declare exit handler for all set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'all condition for sqlstate '02000'; -declare exit handler for all set @var2 = 1; -' at line 3 +declare exit handler for all set @var2 = ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9390,7 +9385,7 @@ declare alter condition for sqlstate '02000'; declare exit handler for alter set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'alter condition for sqlstate '02000'; -declare exit handler for alter set @var2 =' at line 3 +declare exit handler for alter set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9400,7 +9395,7 @@ declare analyze condition for sqlstate '02000'; declare exit handler for analyze set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'analyze condition for sqlstate '02000'; -declare exit handler for analyze set @va' at line 3 +declare exit handler for analyze set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9410,8 +9405,7 @@ declare and condition for sqlstate '02000'; declare exit handler for and set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'and condition for sqlstate '02000'; -declare exit handler for and set @var2 = 1; -' at line 3 +declare exit handler for and set @var2 = ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9421,8 +9415,7 @@ declare as condition for sqlstate '02000'; declare exit handler for as set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'as condition for sqlstate '02000'; -declare exit handler for as set @var2 = 1; -EN' at line 3 +declare exit handler for as set @var2 = 1;...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9432,8 +9425,7 @@ declare asc condition for sqlstate '02000'; declare exit handler for asc set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'asc condition for sqlstate '02000'; -declare exit handler for asc set @var2 = 1; -' at line 3 +declare exit handler for asc set @var2 = ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9443,7 +9435,7 @@ declare asensitive condition for sqlstate '02000'; declare exit handler for asensitive set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'asensitive condition for sqlstate '02000'; -declare exit handler for asensitive s' at line 3 +declare exit handler for asensitiv...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9453,7 +9445,7 @@ declare before condition for sqlstate '02000'; declare exit handler for before set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'before condition for sqlstate '02000'; -declare exit handler for before set @var2' at line 3 +declare exit handler for before set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9463,7 +9455,7 @@ declare between condition for sqlstate '02000'; declare exit handler for between set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'between condition for sqlstate '02000'; -declare exit handler for between set @va' at line 3 +declare exit handler for between set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9473,7 +9465,7 @@ declare bigint condition for sqlstate '02000'; declare exit handler for bigint set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'bigint condition for sqlstate '02000'; -declare exit handler for bigint set @var2' at line 3 +declare exit handler for bigint set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9483,7 +9475,7 @@ declare binary condition for sqlstate '02000'; declare exit handler for binary set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'binary condition for sqlstate '02000'; -declare exit handler for binary set @var2' at line 3 +declare exit handler for binary set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9493,7 +9485,7 @@ declare blob condition for sqlstate '02000'; declare exit handler for blob set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'blob condition for sqlstate '02000'; -declare exit handler for blob set @var2 = 1' at line 3 +declare exit handler for blob set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9503,7 +9495,7 @@ declare both condition for sqlstate '02000'; declare exit handler for both set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'both condition for sqlstate '02000'; -declare exit handler for both set @var2 = 1' at line 3 +declare exit handler for both set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9513,8 +9505,7 @@ declare by condition for sqlstate '02000'; declare exit handler for by set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'by condition for sqlstate '02000'; -declare exit handler for by set @var2 = 1; -EN' at line 3 +declare exit handler for by set @var2 = 1;...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9524,7 +9515,7 @@ declare call condition for sqlstate '02000'; declare exit handler for CALL set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'call condition for sqlstate '02000'; -declare exit handler for CALL set @var2 = 1' at line 3 +declare exit handler for CALL set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9534,7 +9525,7 @@ declare cascade condition for sqlstate '02000'; declare exit handler for cascade set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'cascade condition for sqlstate '02000'; -declare exit handler for cascade set @va' at line 3 +declare exit handler for cascade set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9544,7 +9535,7 @@ declare case condition for sqlstate '02000'; declare exit handler for case set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'case condition for sqlstate '02000'; -declare exit handler for case set @var2 = 1' at line 3 +declare exit handler for case set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9554,7 +9545,7 @@ declare change condition for sqlstate '02000'; declare exit handler for change set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'change condition for sqlstate '02000'; -declare exit handler for change set @var2' at line 3 +declare exit handler for change set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9564,7 +9555,7 @@ declare char condition for sqlstate '02000'; declare exit handler for char set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'char condition for sqlstate '02000'; -declare exit handler for char set @var2 = 1' at line 3 +declare exit handler for char set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9574,7 +9565,7 @@ declare character condition for sqlstate '02000'; declare exit handler for character set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'character condition for sqlstate '02000'; -declare exit handler for character set' at line 3 +declare exit handler for character ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9584,7 +9575,7 @@ declare check condition for sqlstate '02000'; declare exit handler for check set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'check condition for sqlstate '02000'; -declare exit handler for check set @var2 =' at line 3 +declare exit handler for check set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9594,7 +9585,7 @@ declare collate condition for sqlstate '02000'; declare exit handler for collate set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'collate condition for sqlstate '02000'; -declare exit handler for collate set @va' at line 3 +declare exit handler for collate set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9604,7 +9595,7 @@ declare column condition for sqlstate '02000'; declare exit handler for column set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'column condition for sqlstate '02000'; -declare exit handler for column set @var2' at line 3 +declare exit handler for column set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9614,7 +9605,7 @@ declare condition condition for sqlstate '02000'; declare exit handler for condition set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'condition condition for sqlstate '02000'; -declare exit handler for condition set' at line 3 +declare exit handler for condition ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9630,7 +9621,7 @@ declare constraint condition for sqlstate '02000'; declare exit handler for constraint set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'constraint condition for sqlstate '02000'; -declare exit handler for constraint s' at line 3 +declare exit handler for constrain...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9640,7 +9631,7 @@ declare continue condition for sqlstate '02000'; declare exit handler for continue set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'condition for sqlstate '02000'; -declare exit handler for continue set @var2 = 1;' at line 3 +declare exit handler for continue set @var2 =...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9650,7 +9641,7 @@ declare convert condition for sqlstate '02000'; declare exit handler for convert set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'convert condition for sqlstate '02000'; -declare exit handler for convert set @va' at line 3 +declare exit handler for convert set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9660,7 +9651,7 @@ declare create condition for sqlstate '02000'; declare exit handler for create set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'create condition for sqlstate '02000'; -declare exit handler for create set @var2' at line 3 +declare exit handler for create set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9670,7 +9661,7 @@ declare cross condition for sqlstate '02000'; declare exit handler for cross set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'cross condition for sqlstate '02000'; -declare exit handler for cross set @var2 =' at line 3 +declare exit handler for cross set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9680,7 +9671,7 @@ declare current_date condition for sqlstate '02000'; declare exit handler for current_date set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'current_date condition for sqlstate '02000'; -declare exit handler for current_da' at line 3 +declare exit handler for current...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9690,7 +9681,7 @@ declare current_time condition for sqlstate '02000'; declare exit handler for current_time set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'current_time condition for sqlstate '02000'; -declare exit handler for current_ti' at line 3 +declare exit handler for current...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9700,7 +9691,7 @@ declare current_timestamp condition for sqlstate '02000'; declare exit handler for current_timestamp set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'current_timestamp condition for sqlstate '02000'; -declare exit handler for curre' at line 3 +declare exit handler for cu...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9710,7 +9701,7 @@ declare current_user condition for sqlstate '02000'; declare exit handler for current_user set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'current_user condition for sqlstate '02000'; -declare exit handler for current_us' at line 3 +declare exit handler for current...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9720,7 +9711,7 @@ declare cursor condition for sqlstate '02000'; declare exit handler for cursor set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'cursor condition for sqlstate '02000'; -declare exit handler for cursor set @var2' at line 3 +declare exit handler for cursor set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9730,7 +9721,7 @@ declare database condition for sqlstate '02000'; declare exit handler for database set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'database condition for sqlstate '02000'; -declare exit handler for database set @' at line 3 +declare exit handler for database se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9740,7 +9731,7 @@ declare databases condition for sqlstate '02000'; declare exit handler for databases set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'databases condition for sqlstate '02000'; -declare exit handler for databases set' at line 3 +declare exit handler for databases ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9750,7 +9741,7 @@ declare day_hour condition for sqlstate '02000'; declare exit handler for day_hour set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'day_hour condition for sqlstate '02000'; -declare exit handler for day_hour set @' at line 3 +declare exit handler for day_hour se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9760,7 +9751,7 @@ declare day_microsecond condition for sqlstate '02000'; declare exit handler for day_microsecond set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'day_microsecond condition for sqlstate '02000'; -declare exit handler for day_mic' at line 3 +declare exit handler for day_...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9770,7 +9761,7 @@ declare day_minute condition for sqlstate '02000'; declare exit handler for day_minute set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'day_minute condition for sqlstate '02000'; -declare exit handler for day_minute s' at line 3 +declare exit handler for day_minut...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9780,7 +9771,7 @@ declare day_second condition for sqlstate '02000'; declare exit handler for day_second set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'day_second condition for sqlstate '02000'; -declare exit handler for day_second s' at line 3 +declare exit handler for day_secon...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9790,8 +9781,7 @@ declare dec condition for sqlstate '02000'; declare exit handler for dec set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'dec condition for sqlstate '02000'; -declare exit handler for dec set @var2 = 1; -' at line 3 +declare exit handler for dec set @var2 = ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9801,7 +9791,7 @@ declare decimal condition for sqlstate '02000'; declare exit handler for decimal set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'decimal condition for sqlstate '02000'; -declare exit handler for decimal set @va' at line 3 +declare exit handler for decimal set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9811,7 +9801,7 @@ declare declare condition for sqlstate '02000'; declare exit handler for declare set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'declare condition for sqlstate '02000'; -declare exit handler for declare set @va' at line 3 +declare exit handler for declare set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9821,7 +9811,7 @@ declare default condition for sqlstate '02000'; declare exit handler for default set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'default condition for sqlstate '02000'; -declare exit handler for default set @va' at line 3 +declare exit handler for default set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9831,7 +9821,7 @@ declare delayed condition for sqlstate '02000'; declare exit handler for delayed set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'delayed condition for sqlstate '02000'; -declare exit handler for delayed set @va' at line 3 +declare exit handler for delayed set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9841,7 +9831,7 @@ declare delete condition for sqlstate '02000'; declare exit handler for delete set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'delete condition for sqlstate '02000'; -declare exit handler for delete set @var2' at line 3 +declare exit handler for delete set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9851,7 +9841,7 @@ declare desc condition for sqlstate '02000'; declare exit handler for desc set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'desc condition for sqlstate '02000'; -declare exit handler for desc set @var2 = 1' at line 3 +declare exit handler for desc set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9861,7 +9851,7 @@ declare describe condition for sqlstate '02000'; declare exit handler for describe set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'describe condition for sqlstate '02000'; -declare exit handler for describe set @' at line 3 +declare exit handler for describe se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9871,7 +9861,7 @@ declare deterministic condition for sqlstate '02000'; declare exit handler for deterministic set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'deterministic condition for sqlstate '02000'; -declare exit handler for determini' at line 3 +declare exit handler for determ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9881,7 +9871,7 @@ declare distinct condition for sqlstate '02000'; declare exit handler for distinct set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'distinct condition for sqlstate '02000'; -declare exit handler for distinct set @' at line 3 +declare exit handler for distinct se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9891,7 +9881,7 @@ declare distinctrow condition for sqlstate '02000'; declare exit handler for distinctrow set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'distinctrow condition for sqlstate '02000'; -declare exit handler for distinctrow' at line 3 +declare exit handler for distinct...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9901,8 +9891,7 @@ declare div condition for sqlstate '02000'; declare exit handler for div set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'div condition for sqlstate '02000'; -declare exit handler for div set @var2 = 1; -' at line 3 +declare exit handler for div set @var2 = ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9912,7 +9901,7 @@ declare double condition for sqlstate '02000'; declare exit handler for double set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'double condition for sqlstate '02000'; -declare exit handler for double set @var2' at line 3 +declare exit handler for double set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9922,7 +9911,7 @@ declare drop condition for sqlstate '02000'; declare exit handler for drop set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'drop condition for sqlstate '02000'; -declare exit handler for drop set @var2 = 1' at line 3 +declare exit handler for drop set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9932,7 +9921,7 @@ declare dual condition for sqlstate '02000'; declare exit handler for dual set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'dual condition for sqlstate '02000'; -declare exit handler for dual set @var2 = 1' at line 3 +declare exit handler for dual set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9942,7 +9931,7 @@ declare each condition for sqlstate '02000'; declare exit handler for each set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'each condition for sqlstate '02000'; -declare exit handler for each set @var2 = 1' at line 3 +declare exit handler for each set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9952,7 +9941,7 @@ declare else condition for sqlstate '02000'; declare exit handler for else set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'else condition for sqlstate '02000'; -declare exit handler for else set @var2 = 1' at line 3 +declare exit handler for else set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9962,7 +9951,7 @@ declare elseif condition for sqlstate '02000'; declare exit handler for elseif set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'elseif condition for sqlstate '02000'; -declare exit handler for elseif set @var2' at line 3 +declare exit handler for elseif set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9972,7 +9961,7 @@ declare enclosed condition for sqlstate '02000'; declare exit handler for enclosed set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'enclosed condition for sqlstate '02000'; -declare exit handler for enclosed set @' at line 3 +declare exit handler for enclosed se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9982,7 +9971,7 @@ declare escaped condition for sqlstate '02000'; declare exit handler for escaped set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'escaped condition for sqlstate '02000'; -declare exit handler for escaped set @va' at line 3 +declare exit handler for escaped set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -9992,7 +9981,7 @@ declare exists condition for sqlstate '02000'; declare exit handler for exists set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'exists condition for sqlstate '02000'; -declare exit handler for exists set @var2' at line 3 +declare exit handler for exists set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10013,7 +10002,7 @@ declare explain condition for sqlstate '02000'; declare exit handler for explain set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'explain condition for sqlstate '02000'; -declare exit handler for explain set @va' at line 3 +declare exit handler for explain set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10023,7 +10012,7 @@ declare false condition for sqlstate '02000'; declare exit handler for false set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'false condition for sqlstate '02000'; -declare exit handler for false set @var2 =' at line 3 +declare exit handler for false set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10033,7 +10022,7 @@ declare fetch condition for sqlstate '02000'; declare exit handler for fetch set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'fetch condition for sqlstate '02000'; -declare exit handler for fetch set @var2 =' at line 3 +declare exit handler for fetch set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10043,7 +10032,7 @@ declare float condition for sqlstate '02000'; declare exit handler for float set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'float condition for sqlstate '02000'; -declare exit handler for float set @var2 =' at line 3 +declare exit handler for float set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10053,7 +10042,7 @@ declare float4 condition for sqlstate '02000'; declare exit handler for add set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'float4 condition for sqlstate '02000'; -declare exit handler for add set @var2 = ' at line 3 +declare exit handler for add set @var2...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10063,7 +10052,7 @@ declare float8 condition for sqlstate '02000'; declare exit handler for add set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'float8 condition for sqlstate '02000'; -declare exit handler for add set @var2 = ' at line 3 +declare exit handler for add set @var2...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10073,8 +10062,7 @@ declare for condition for sqlstate '02000'; declare exit handler for for set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'for condition for sqlstate '02000'; -declare exit handler for for set @var2 = 1; -' at line 3 +declare exit handler for for set @var2 = ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10084,7 +10072,7 @@ declare force condition for sqlstate '02000'; declare exit handler for force set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'force condition for sqlstate '02000'; -declare exit handler for force set @var2 =' at line 3 +declare exit handler for force set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10094,7 +10082,7 @@ declare foreign condition for sqlstate '02000'; declare exit handler for foreign set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'foreign condition for sqlstate '02000'; -declare exit handler for foreign set @va' at line 3 +declare exit handler for foreign set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10104,7 +10092,7 @@ declare from condition for sqlstate '02000'; declare exit handler for from set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'from condition for sqlstate '02000'; -declare exit handler for from set @var2 = 1' at line 3 +declare exit handler for from set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10114,7 +10102,7 @@ declare fulltext condition for sqlstate '02000'; declare exit handler for fulltext set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'fulltext condition for sqlstate '02000'; -declare exit handler for fulltext set @' at line 3 +declare exit handler for fulltext se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10124,7 +10112,7 @@ declare grant condition for sqlstate '02000'; declare exit handler for grant set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'grant condition for sqlstate '02000'; -declare exit handler for grant set @var2 =' at line 3 +declare exit handler for grant set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10134,7 +10122,7 @@ declare group condition for sqlstate '02000'; declare exit handler for group set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'group condition for sqlstate '02000'; -declare exit handler for group set @var2 =' at line 3 +declare exit handler for group set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10144,7 +10132,7 @@ declare having condition for sqlstate '02000'; declare exit handler for having set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'having condition for sqlstate '02000'; -declare exit handler for having set @var2' at line 3 +declare exit handler for having set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10154,7 +10142,7 @@ declare high_priority condition for sqlstate '02000'; declare exit handler for high_priority set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'high_priority condition for sqlstate '02000'; -declare exit handler for high_prio' at line 3 +declare exit handler for high_p...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10164,7 +10152,7 @@ declare hour_microsecond condition for sqlstate '02000'; declare exit handler for hour_microsecond set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'hour_microsecond condition for sqlstate '02000'; -declare exit handler for hour_m' at line 3 +declare exit handler for hou...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10174,7 +10162,7 @@ declare hour_minute condition for sqlstate '02000'; declare exit handler for hour_minute set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'hour_minute condition for sqlstate '02000'; -declare exit handler for hour_minute' at line 3 +declare exit handler for hour_min...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10184,7 +10172,7 @@ declare hour_second condition for sqlstate '02000'; declare exit handler for hour_second set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'hour_second condition for sqlstate '02000'; -declare exit handler for hour_second' at line 3 +declare exit handler for hour_sec...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10194,8 +10182,7 @@ declare if condition for sqlstate '02000'; declare exit handler for if set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'if condition for sqlstate '02000'; -declare exit handler for if set @var2 = 1; -EN' at line 3 +declare exit handler for if set @var2 = 1;...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10205,7 +10192,7 @@ declare ignore condition for sqlstate '02000'; declare exit handler for ignore set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'ignore condition for sqlstate '02000'; -declare exit handler for ignore set @var2' at line 3 +declare exit handler for ignore set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10215,8 +10202,7 @@ declare in condition for sqlstate '02000'; declare exit handler for in set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'in condition for sqlstate '02000'; -declare exit handler for in set @var2 = 1; -EN' at line 3 +declare exit handler for in set @var2 = 1;...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10226,7 +10212,7 @@ declare index condition for sqlstate '02000'; declare exit handler for index set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'index condition for sqlstate '02000'; -declare exit handler for index set @var2 =' at line 3 +declare exit handler for index set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10236,7 +10222,7 @@ declare infile condition for sqlstate '02000'; declare exit handler for infile set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'infile condition for sqlstate '02000'; -declare exit handler for infile set @var2' at line 3 +declare exit handler for infile set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10246,7 +10232,7 @@ declare inner condition for sqlstate '02000'; declare exit handler for inner set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'inner condition for sqlstate '02000'; -declare exit handler for inner set @var2 =' at line 3 +declare exit handler for inner set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10256,7 +10242,7 @@ declare inout condition for sqlstate '02000'; declare exit handler for inout set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'inout condition for sqlstate '02000'; -declare exit handler for inout set @var2 =' at line 3 +declare exit handler for inout set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10266,7 +10252,7 @@ declare insensitive condition for sqlstate '02000'; declare exit handler for insensitive set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'insensitive condition for sqlstate '02000'; -declare exit handler for insensitive' at line 3 +declare exit handler for insensit...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10276,7 +10262,7 @@ declare insert condition for sqlstate '02000'; declare exit handler for insert set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'insert condition for sqlstate '02000'; -declare exit handler for insert set @var2' at line 3 +declare exit handler for insert set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10286,8 +10272,7 @@ declare int condition for sqlstate '02000'; declare exit handler for int set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'int condition for sqlstate '02000'; -declare exit handler for int set @var2 = 1; -' at line 3 +declare exit handler for int set @var2 = ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10297,7 +10282,7 @@ declare int1 condition for sqlstate '02000'; declare exit handler for int set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'int1 condition for sqlstate '02000'; -declare exit handler for int set @var2 = 1;' at line 3 +declare exit handler for int set @var2 =...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10307,7 +10292,7 @@ declare int2 condition for sqlstate '02000'; declare exit handler for int set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'int2 condition for sqlstate '02000'; -declare exit handler for int set @var2 = 1;' at line 3 +declare exit handler for int set @var2 =...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10317,7 +10302,7 @@ declare int3 condition for sqlstate '02000'; declare exit handler for int set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'int3 condition for sqlstate '02000'; -declare exit handler for int set @var2 = 1;' at line 3 +declare exit handler for int set @var2 =...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10327,7 +10312,7 @@ declare int4 condition for sqlstate '02000'; declare exit handler for int set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'int4 condition for sqlstate '02000'; -declare exit handler for int set @var2 = 1;' at line 3 +declare exit handler for int set @var2 =...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10337,7 +10322,7 @@ declare int8 condition for sqlstate '02000'; declare exit handler for int set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'int8 condition for sqlstate '02000'; -declare exit handler for int set @var2 = 1;' at line 3 +declare exit handler for int set @var2 =...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10347,7 +10332,7 @@ declare integer condition for sqlstate '02000'; declare exit handler for integer set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'integer condition for sqlstate '02000'; -declare exit handler for integer set @va' at line 3 +declare exit handler for integer set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10357,7 +10342,7 @@ declare interval condition for sqlstate '02000'; declare exit handler for interval set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'interval condition for sqlstate '02000'; -declare exit handler for interval set @' at line 3 +declare exit handler for interval se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10367,7 +10352,7 @@ declare into condition for sqlstate '02000'; declare exit handler for into set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'into condition for sqlstate '02000'; -declare exit handler for into set @var2 = 1' at line 3 +declare exit handler for into set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10377,8 +10362,7 @@ declare is condition for sqlstate '02000'; declare exit handler for is set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'is condition for sqlstate '02000'; -declare exit handler for is set @var2 = 1; -EN' at line 3 +declare exit handler for is set @var2 = 1;...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10388,7 +10372,7 @@ declare iterate condition for sqlstate '02000'; declare exit handler for iterate set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'iterate condition for sqlstate '02000'; -declare exit handler for iterate set @va' at line 3 +declare exit handler for iterate set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10398,7 +10382,7 @@ declare join condition for sqlstate '02000'; declare exit handler for join set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'join condition for sqlstate '02000'; -declare exit handler for join set @var2 = 1' at line 3 +declare exit handler for join set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10408,8 +10392,7 @@ declare key condition for sqlstate '02000'; declare exit handler for key set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'key condition for sqlstate '02000'; -declare exit handler for key set @var2 = 1; -' at line 3 +declare exit handler for key set @var2 = ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10419,7 +10402,7 @@ declare keys condition for sqlstate '02000'; declare exit handler for keys set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'keys condition for sqlstate '02000'; -declare exit handler for keys set @var2 = 1' at line 3 +declare exit handler for keys set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10429,7 +10412,7 @@ declare kill condition for sqlstate '02000'; declare exit handler for kill set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'kill condition for sqlstate '02000'; -declare exit handler for kill set @var2 = 1' at line 3 +declare exit handler for kill set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10439,7 +10422,7 @@ declare leading condition for sqlstate '02000'; declare exit handler for leading set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'leading condition for sqlstate '02000'; -declare exit handler for leading set @va' at line 3 +declare exit handler for leading set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10449,7 +10432,7 @@ declare leave condition for sqlstate '02000'; declare exit handler for leave set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'leave condition for sqlstate '02000'; -declare exit handler for leave set @var2 =' at line 3 +declare exit handler for leave set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10459,7 +10442,7 @@ declare left condition for sqlstate '02000'; declare exit handler for left set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'left condition for sqlstate '02000'; -declare exit handler for left set @var2 = 1' at line 3 +declare exit handler for left set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10469,7 +10452,7 @@ declare like condition for sqlstate '02000'; declare exit handler for like set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'like condition for sqlstate '02000'; -declare exit handler for like set @var2 = 1' at line 3 +declare exit handler for like set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10479,7 +10462,7 @@ declare limit condition for sqlstate '02000'; declare exit handler for limit set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'limit condition for sqlstate '02000'; -declare exit handler for limit set @var2 =' at line 3 +declare exit handler for limit set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10489,7 +10472,7 @@ declare linear condition for sqlstate '02000'; declare exit handler for int set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'linear condition for sqlstate '02000'; -declare exit handler for int set @var2 = ' at line 3 +declare exit handler for int set @var2...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10499,7 +10482,7 @@ declare lines condition for sqlstate '02000'; declare exit handler for lines set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'lines condition for sqlstate '02000'; -declare exit handler for lines set @var2 =' at line 3 +declare exit handler for lines set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10509,7 +10492,7 @@ declare load condition for sqlstate '02000'; declare exit handler for load set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'load condition for sqlstate '02000'; -declare exit handler for load set @var2 = 1' at line 3 +declare exit handler for load set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10519,7 +10502,7 @@ declare localtime condition for sqlstate '02000'; declare exit handler for localtime set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'localtime condition for sqlstate '02000'; -declare exit handler for localtime set' at line 3 +declare exit handler for localtime ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10529,7 +10512,7 @@ declare localtimestamp condition for sqlstate '02000'; declare exit handler for localtimestamp set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'localtimestamp condition for sqlstate '02000'; -declare exit handler for localtim' at line 3 +declare exit handler for local...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10539,7 +10522,7 @@ declare lock condition for sqlstate '02000'; declare exit handler for lock set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'lock condition for sqlstate '02000'; -declare exit handler for lock set @var2 = 1' at line 3 +declare exit handler for lock set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10549,7 +10532,7 @@ declare long condition for sqlstate '02000'; declare exit handler for long set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'long condition for sqlstate '02000'; -declare exit handler for long set @var2 = 1' at line 3 +declare exit handler for long set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10559,7 +10542,7 @@ declare longblob condition for sqlstate '02000'; declare exit handler for longblob set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'longblob condition for sqlstate '02000'; -declare exit handler for longblob set @' at line 3 +declare exit handler for longblob se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10569,7 +10552,7 @@ declare longtext condition for sqlstate '02000'; declare exit handler for longtext set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'longtext condition for sqlstate '02000'; -declare exit handler for longtext set @' at line 3 +declare exit handler for longtext se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10579,7 +10562,7 @@ declare loop condition for sqlstate '02000'; declare exit handler for loop set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'loop condition for sqlstate '02000'; -declare exit handler for loop set @var2 = 1' at line 3 +declare exit handler for loop set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10589,7 +10572,7 @@ declare low_priority condition for sqlstate '02000'; declare exit handler for low_priority set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'low_priority condition for sqlstate '02000'; -declare exit handler for low_priori' at line 3 +declare exit handler for low_pri...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10599,7 +10582,7 @@ declare master_ssl_verify_server_cert condition for sqlstate '02000'; declare exit handler for int set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'master_ssl_verify_server_cert condition for sqlstate '02000'; -declare exit handl' at line 3 +declare exit ha...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10609,7 +10592,7 @@ declare match condition for sqlstate '02000'; declare exit handler for match set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'match condition for sqlstate '02000'; -declare exit handler for match set @var2 =' at line 3 +declare exit handler for match set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10619,7 +10602,7 @@ declare mediumblob condition for sqlstate '02000'; declare exit handler for mediumblob set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'mediumblob condition for sqlstate '02000'; -declare exit handler for mediumblob s' at line 3 +declare exit handler for mediumblo...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10629,7 +10612,7 @@ declare mediumint condition for sqlstate '02000'; declare exit handler for mediumint set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'mediumint condition for sqlstate '02000'; -declare exit handler for mediumint set' at line 3 +declare exit handler for mediumint ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10639,7 +10622,7 @@ declare mediumtext condition for sqlstate '02000'; declare exit handler for mediumtext set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'mediumtext condition for sqlstate '02000'; -declare exit handler for mediumtext s' at line 3 +declare exit handler for mediumtex...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10649,7 +10632,7 @@ declare middleint condition for sqlstate '02000'; declare exit handler for middleint set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'middleint condition for sqlstate '02000'; -declare exit handler for middleint set' at line 3 +declare exit handler for middleint ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10659,7 +10642,7 @@ declare minute_microsecond condition for sqlstate '02000'; declare exit handler for minute_microsecond set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'minute_microsecond condition for sqlstate '02000'; -declare exit handler for minu' at line 3 +declare exit handler for m...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10669,7 +10652,7 @@ declare minute_second condition for sqlstate '02000'; declare exit handler for minute_second set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'minute_second condition for sqlstate '02000'; -declare exit handler for minute_se' at line 3 +declare exit handler for minute...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10679,8 +10662,7 @@ declare mod condition for sqlstate '02000'; declare exit handler for mod set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'mod condition for sqlstate '02000'; -declare exit handler for mod set @var2 = 1; -' at line 3 +declare exit handler for mod set @var2 = ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10690,7 +10672,7 @@ declare modifies condition for sqlstate '02000'; declare exit handler for modifies set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'modifies condition for sqlstate '02000'; -declare exit handler for modifies set @' at line 3 +declare exit handler for modifies se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10700,7 +10682,7 @@ declare natural condition for sqlstate '02000'; declare exit handler for natural set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'natural condition for sqlstate '02000'; -declare exit handler for natural set @va' at line 3 +declare exit handler for natural set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10710,8 +10692,7 @@ declare not condition for sqlstate '02000'; declare exit handler for not set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'not condition for sqlstate '02000'; -declare exit handler for not set @var2 = 1; -' at line 3 +declare exit handler for not set @var2 = ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10721,7 +10702,7 @@ declare no_write_to_binlog condition for sqlstate '02000'; declare exit handler for no_write_to_binlog set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'no_write_to_binlog condition for sqlstate '02000'; -declare exit handler for no_w' at line 3 +declare exit handler for n...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10731,7 +10712,7 @@ declare null condition for sqlstate '02000'; declare exit handler for null set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'null condition for sqlstate '02000'; -declare exit handler for null set @var2 = 1' at line 3 +declare exit handler for null set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10741,7 +10722,7 @@ declare numeric condition for sqlstate '02000'; declare exit handler for numeric set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'numeric condition for sqlstate '02000'; -declare exit handler for numeric set @va' at line 3 +declare exit handler for numeric set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10751,8 +10732,7 @@ declare on condition for sqlstate '02000'; declare exit handler for on set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'on condition for sqlstate '02000'; -declare exit handler for on set @var2 = 1; -EN' at line 3 +declare exit handler for on set @var2 = 1;...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10762,7 +10742,7 @@ declare optimize condition for sqlstate '02000'; declare exit handler for optimize set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'optimize condition for sqlstate '02000'; -declare exit handler for optimize set @' at line 3 +declare exit handler for optimize se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10778,7 +10758,7 @@ declare optionally condition for sqlstate '02000'; declare exit handler for optionally set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'optionally condition for sqlstate '02000'; -declare exit handler for optionally s' at line 3 +declare exit handler for optionall...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10788,8 +10768,7 @@ declare or condition for sqlstate '02000'; declare exit handler for or set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'or condition for sqlstate '02000'; -declare exit handler for or set @var2 = 1; -EN' at line 3 +declare exit handler for or set @var2 = 1;...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10799,7 +10778,7 @@ declare order condition for sqlstate '02000'; declare exit handler for order set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'order condition for sqlstate '02000'; -declare exit handler for order set @var2 =' at line 3 +declare exit handler for order set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10809,8 +10788,7 @@ declare out condition for sqlstate '02000'; declare exit handler for out set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'out condition for sqlstate '02000'; -declare exit handler for out set @var2 = 1; -' at line 3 +declare exit handler for out set @var2 = ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10820,7 +10798,7 @@ declare outer condition for sqlstate '02000'; declare exit handler for outer set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'outer condition for sqlstate '02000'; -declare exit handler for outer set @var2 =' at line 3 +declare exit handler for outer set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10830,7 +10808,7 @@ declare outfile condition for sqlstate '02000'; declare exit handler for outfile set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'outfile condition for sqlstate '02000'; -declare exit handler for outfile set @va' at line 3 +declare exit handler for outfile set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10840,7 +10818,7 @@ declare precision condition for sqlstate '02000'; declare exit handler for precision set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'precision condition for sqlstate '02000'; -declare exit handler for precision set' at line 3 +declare exit handler for precision ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10850,7 +10828,7 @@ declare primary condition for sqlstate '02000'; declare exit handler for primary set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'primary condition for sqlstate '02000'; -declare exit handler for primary set @va' at line 3 +declare exit handler for primary set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10860,7 +10838,7 @@ declare procedure condition for sqlstate '02000'; declare exit handler for procedure set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'procedure condition for sqlstate '02000'; -declare exit handler for procedure set' at line 3 +declare exit handler for procedure ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10870,7 +10848,7 @@ declare purge condition for sqlstate '02000'; declare exit handler for purge set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'purge condition for sqlstate '02000'; -declare exit handler for purge set @var2 =' at line 3 +declare exit handler for purge set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10880,7 +10858,7 @@ declare range condition for sqlstate '02000'; declare exit handler for int set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'range condition for sqlstate '02000'; -declare exit handler for int set @var2 = 1' at line 3 +declare exit handler for int set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10890,7 +10868,7 @@ declare read condition for sqlstate '02000'; declare exit handler for read set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'read condition for sqlstate '02000'; -declare exit handler for read set @var2 = 1' at line 3 +declare exit handler for read set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10900,7 +10878,7 @@ declare reads condition for sqlstate '02000'; declare exit handler for reads set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'reads condition for sqlstate '02000'; -declare exit handler for reads set @var2 =' at line 3 +declare exit handler for reads set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10920,7 +10898,7 @@ declare read_write condition for sqlstate '02000'; declare exit handler for int set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'read_write condition for sqlstate '02000'; -declare exit handler for int set @var' at line 3 +declare exit handler for int set @...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10930,7 +10908,7 @@ declare real condition for sqlstate '02000'; declare exit handler for real set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'real condition for sqlstate '02000'; -declare exit handler for real set @var2 = 1' at line 3 +declare exit handler for real set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10940,7 +10918,7 @@ declare references condition for sqlstate '02000'; declare exit handler for references set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'references condition for sqlstate '02000'; -declare exit handler for references s' at line 3 +declare exit handler for reference...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10950,7 +10928,7 @@ declare regexp condition for sqlstate '02000'; declare exit handler for regexp set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'regexp condition for sqlstate '02000'; -declare exit handler for regexp set @var2' at line 3 +declare exit handler for regexp set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10960,7 +10938,7 @@ declare release condition for sqlstate '02000'; declare exit handler for int set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'release condition for sqlstate '02000'; -declare exit handler for int set @var2 =' at line 3 +declare exit handler for int set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10970,7 +10948,7 @@ declare rename condition for sqlstate '02000'; declare exit handler for rename set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'rename condition for sqlstate '02000'; -declare exit handler for rename set @var2' at line 3 +declare exit handler for rename set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10980,7 +10958,7 @@ declare repeat condition for sqlstate '02000'; declare exit handler for repeat set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'repeat condition for sqlstate '02000'; -declare exit handler for repeat set @var2' at line 3 +declare exit handler for repeat set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -10990,7 +10968,7 @@ declare replace condition for sqlstate '02000'; declare exit handler for replace set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'replace condition for sqlstate '02000'; -declare exit handler for replace set @va' at line 3 +declare exit handler for replace set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11000,7 +10978,7 @@ declare require condition for sqlstate '02000'; declare exit handler for require set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'require condition for sqlstate '02000'; -declare exit handler for require set @va' at line 3 +declare exit handler for require set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11010,7 +10988,7 @@ declare restrict condition for sqlstate '02000'; declare exit handler for restrict set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'restrict condition for sqlstate '02000'; -declare exit handler for restrict set @' at line 3 +declare exit handler for restrict se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11020,7 +10998,7 @@ declare return condition for sqlstate '02000'; declare exit handler for return set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'return condition for sqlstate '02000'; -declare exit handler for return set @var2' at line 3 +declare exit handler for return set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11030,7 +11008,7 @@ declare revoke condition for sqlstate '02000'; declare exit handler for revoke set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'revoke condition for sqlstate '02000'; -declare exit handler for revoke set @var2' at line 3 +declare exit handler for revoke set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11040,7 +11018,7 @@ declare right condition for sqlstate '02000'; declare exit handler for right set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'right condition for sqlstate '02000'; -declare exit handler for right set @var2 =' at line 3 +declare exit handler for right set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11050,7 +11028,7 @@ declare rlike condition for sqlstate '02000'; declare exit handler for rlike set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'rlike condition for sqlstate '02000'; -declare exit handler for rlike set @var2 =' at line 3 +declare exit handler for rlike set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11060,7 +11038,7 @@ declare schema condition for sqlstate '02000'; declare exit handler for schema set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'schema condition for sqlstate '02000'; -declare exit handler for schema set @var2' at line 3 +declare exit handler for schema set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11070,7 +11048,7 @@ declare schemas condition for sqlstate '02000'; declare exit handler for schemas set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'schemas condition for sqlstate '02000'; -declare exit handler for schemas set @va' at line 3 +declare exit handler for schemas set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11080,7 +11058,7 @@ declare second_microsecond condition for sqlstate '02000'; declare exit handler for second_microsecond set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'second_microsecond condition for sqlstate '02000'; -declare exit handler for seco' at line 3 +declare exit handler for s...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11090,7 +11068,7 @@ declare select condition for sqlstate '02000'; declare exit handler for SELECT set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'select condition for sqlstate '02000'; -declare exit handler for SELECT set @var2' at line 3 +declare exit handler for SELECT set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11100,7 +11078,7 @@ declare sensitive condition for sqlstate '02000'; declare exit handler for sensitive set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'sensitive condition for sqlstate '02000'; -declare exit handler for sensitive set' at line 3 +declare exit handler for sensitive ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11110,7 +11088,7 @@ declare separator condition for sqlstate '02000'; declare exit handler for separator set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'separator condition for sqlstate '02000'; -declare exit handler for separator set' at line 3 +declare exit handler for separator ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11120,8 +11098,7 @@ declare set condition for sqlstate '02000'; declare exit handler for set set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'set condition for sqlstate '02000'; -declare exit handler for set set @var2 = 1; -' at line 3 +declare exit handler for set set @var2 = ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11131,7 +11108,7 @@ declare show condition for sqlstate '02000'; declare exit handler for show set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'show condition for sqlstate '02000'; -declare exit handler for show set @var2 = 1' at line 3 +declare exit handler for show set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11141,7 +11118,7 @@ declare smallint condition for sqlstate '02000'; declare exit handler for smallint set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'smallint condition for sqlstate '02000'; -declare exit handler for smallint set @' at line 3 +declare exit handler for smallint se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11151,7 +11128,7 @@ declare spatial condition for sqlstate '02000'; declare exit handler for spatial set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'spatial condition for sqlstate '02000'; -declare exit handler for spatial set @va' at line 3 +declare exit handler for spatial set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11161,7 +11138,7 @@ declare specific condition for sqlstate '02000'; declare exit handler for specific set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'specific condition for sqlstate '02000'; -declare exit handler for specific set @' at line 3 +declare exit handler for specific se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11171,8 +11148,7 @@ declare sql condition for sqlstate '02000'; declare exit handler for sql set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'sql condition for sqlstate '02000'; -declare exit handler for sql set @var2 = 1; -' at line 3 +declare exit handler for sql set @var2 = ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11182,7 +11158,7 @@ declare sqlexception condition for sqlstate '02000'; declare exit handler for sqlexception set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'sqlexception condition for sqlstate '02000'; -declare exit handler for sqlexcepti' at line 3 +declare exit handler for sqlexce...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11192,7 +11168,7 @@ declare sqlstate condition for sqlstate '02000'; declare exit handler for sqlstate set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'sqlstate condition for sqlstate '02000'; -declare exit handler for sqlstate set @' at line 3 +declare exit handler for sqlstate se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11202,7 +11178,7 @@ declare sqlwarning condition for sqlstate '02000'; declare exit handler for sqlwarning set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'sqlwarning condition for sqlstate '02000'; -declare exit handler for sqlwarning s' at line 3 +declare exit handler for sqlwarnin...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11212,7 +11188,7 @@ declare sql_big_result condition for sqlstate '02000'; declare exit handler for sql_big_result set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'sql_big_result condition for sqlstate '02000'; -declare exit handler for sql_big_' at line 3 +declare exit handler for sql_b...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11222,7 +11198,7 @@ declare sql_calc_found_rows condition for sqlstate '02000'; declare exit handler for sql_calc_found_rows set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'sql_calc_found_rows condition for sqlstate '02000'; -declare exit handler for sql' at line 3 +declare exit handler for ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11232,7 +11208,7 @@ declare sql_small_result condition for sqlstate '02000'; declare exit handler for sql_small_result set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'sql_small_result condition for sqlstate '02000'; -declare exit handler for sql_sm' at line 3 +declare exit handler for sql...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11242,8 +11218,7 @@ declare ssl condition for sqlstate '02000'; declare exit handler for ssl set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'ssl condition for sqlstate '02000'; -declare exit handler for ssl set @var2 = 1; -' at line 3 +declare exit handler for ssl set @var2 = ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11253,7 +11228,7 @@ declare starting condition for sqlstate '02000'; declare exit handler for starting set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'starting condition for sqlstate '02000'; -declare exit handler for starting set @' at line 3 +declare exit handler for starting se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11263,7 +11238,7 @@ declare straight_join condition for sqlstate '02000'; declare exit handler for straight_join set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'straight_join condition for sqlstate '02000'; -declare exit handler for straight_' at line 3 +declare exit handler for straig...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11273,7 +11248,7 @@ declare table condition for sqlstate '02000'; declare exit handler for table set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'table condition for sqlstate '02000'; -declare exit handler for table set @var2 =' at line 3 +declare exit handler for table set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11283,7 +11258,7 @@ declare terminated condition for sqlstate '02000'; declare exit handler for terminated set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'terminated condition for sqlstate '02000'; -declare exit handler for terminated s' at line 3 +declare exit handler for terminate...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11293,7 +11268,7 @@ declare then condition for sqlstate '02000'; declare exit handler for then set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'then condition for sqlstate '02000'; -declare exit handler for then set @var2 = 1' at line 3 +declare exit handler for then set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11303,7 +11278,7 @@ declare tinyblob condition for sqlstate '02000'; declare exit handler for tinyblob set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'tinyblob condition for sqlstate '02000'; -declare exit handler for tinyblob set @' at line 3 +declare exit handler for tinyblob se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11313,7 +11288,7 @@ declare tinyint condition for sqlstate '02000'; declare exit handler for tinyint set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'tinyint condition for sqlstate '02000'; -declare exit handler for tinyint set @va' at line 3 +declare exit handler for tinyint set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11323,7 +11298,7 @@ declare tinytext condition for sqlstate '02000'; declare exit handler for tinytext set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'tinytext condition for sqlstate '02000'; -declare exit handler for tinytext set @' at line 3 +declare exit handler for tinytext se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11333,8 +11308,7 @@ declare to condition for sqlstate '02000'; declare exit handler for to set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'to condition for sqlstate '02000'; -declare exit handler for to set @var2 = 1; -EN' at line 3 +declare exit handler for to set @var2 = 1;...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11344,7 +11318,7 @@ declare trailing condition for sqlstate '02000'; declare exit handler for trailing set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'trailing condition for sqlstate '02000'; -declare exit handler for trailing set @' at line 3 +declare exit handler for trailing se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11354,7 +11328,7 @@ declare trigger condition for sqlstate '02000'; declare exit handler for trigger set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'trigger condition for sqlstate '02000'; -declare exit handler for trigger set @va' at line 3 +declare exit handler for trigger set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11364,7 +11338,7 @@ declare true condition for sqlstate '02000'; declare exit handler for true set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'true condition for sqlstate '02000'; -declare exit handler for true set @var2 = 1' at line 3 +declare exit handler for true set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11374,7 +11348,7 @@ declare undo condition for sqlstate '02000'; declare exit handler for undo set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'undo condition for sqlstate '02000'; -declare exit handler for undo set @var2 = 1' at line 3 +declare exit handler for undo set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11384,7 +11358,7 @@ declare union condition for sqlstate '02000'; declare exit handler for union set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'union condition for sqlstate '02000'; -declare exit handler for union set @var2 =' at line 3 +declare exit handler for union set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11394,7 +11368,7 @@ declare unique condition for sqlstate '02000'; declare exit handler for unique set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'unique condition for sqlstate '02000'; -declare exit handler for unique set @var2' at line 3 +declare exit handler for unique set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11404,7 +11378,7 @@ declare unlock condition for sqlstate '02000'; declare exit handler for unlock set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'unlock condition for sqlstate '02000'; -declare exit handler for unlock set @var2' at line 3 +declare exit handler for unlock set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11414,7 +11388,7 @@ declare unsigned condition for sqlstate '02000'; declare exit handler for unsigned set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'unsigned condition for sqlstate '02000'; -declare exit handler for unsigned set @' at line 3 +declare exit handler for unsigned se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11424,7 +11398,7 @@ declare update condition for sqlstate '02000'; declare exit handler for update set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'update condition for sqlstate '02000'; -declare exit handler for update set @var2' at line 3 +declare exit handler for update set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11434,7 +11408,7 @@ declare usage condition for sqlstate '02000'; declare exit handler for usage set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'usage condition for sqlstate '02000'; -declare exit handler for usage set @var2 =' at line 3 +declare exit handler for usage set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11444,8 +11418,7 @@ declare use condition for sqlstate '02000'; declare exit handler for USE set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'use condition for sqlstate '02000'; -declare exit handler for USE set @var2 = 1; -' at line 3 +declare exit handler for USE set @var2 = ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11455,7 +11428,7 @@ declare using condition for sqlstate '02000'; declare exit handler for using set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'using condition for sqlstate '02000'; -declare exit handler for using set @var2 =' at line 3 +declare exit handler for using set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11465,7 +11438,7 @@ declare utc_date condition for sqlstate '02000'; declare exit handler for utc_date set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'utc_date condition for sqlstate '02000'; -declare exit handler for utc_date set @' at line 3 +declare exit handler for utc_date se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11475,7 +11448,7 @@ declare utc_time condition for sqlstate '02000'; declare exit handler for utc_time set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'utc_time condition for sqlstate '02000'; -declare exit handler for utc_time set @' at line 3 +declare exit handler for utc_time se...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11485,7 +11458,7 @@ declare utc_timestamp condition for sqlstate '02000'; declare exit handler for utc_timestamp set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'utc_timestamp condition for sqlstate '02000'; -declare exit handler for utc_times' at line 3 +declare exit handler for utc_ti...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11495,7 +11468,7 @@ declare values condition for sqlstate '02000'; declare exit handler for values set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'values condition for sqlstate '02000'; -declare exit handler for values set @var2' at line 3 +declare exit handler for values set @v...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11505,7 +11478,7 @@ declare varbinary condition for sqlstate '02000'; declare exit handler for varbinary set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'varbinary condition for sqlstate '02000'; -declare exit handler for varbinary set' at line 3 +declare exit handler for varbinary ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11515,7 +11488,7 @@ declare varchar condition for sqlstate '02000'; declare exit handler for varchar set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'varchar condition for sqlstate '02000'; -declare exit handler for varchar set @va' at line 3 +declare exit handler for varchar set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11525,7 +11498,7 @@ declare varcharacter condition for sqlstate '02000'; declare exit handler for varcharacter set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'varcharacter condition for sqlstate '02000'; -declare exit handler for varcharact' at line 3 +declare exit handler for varchar...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11535,7 +11508,7 @@ declare varying condition for sqlstate '02000'; declare exit handler for varying set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'varying condition for sqlstate '02000'; -declare exit handler for varying set @va' at line 3 +declare exit handler for varying set ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11545,7 +11518,7 @@ declare when condition for sqlstate '02000'; declare exit handler for when set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'when condition for sqlstate '02000'; -declare exit handler for when set @var2 = 1' at line 3 +declare exit handler for when set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11555,7 +11528,7 @@ declare where condition for sqlstate '02000'; declare exit handler for where set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'where condition for sqlstate '02000'; -declare exit handler for where set @var2 =' at line 3 +declare exit handler for where set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11565,7 +11538,7 @@ declare while condition for sqlstate '02000'; declare exit handler for while set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'while condition for sqlstate '02000'; -declare exit handler for while set @var2 =' at line 3 +declare exit handler for while set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11575,7 +11548,7 @@ declare with condition for sqlstate '02000'; declare exit handler for with set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'with condition for sqlstate '02000'; -declare exit handler for with set @var2 = 1' at line 3 +declare exit handler for with set @var2 ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11585,7 +11558,7 @@ declare write condition for sqlstate '02000'; declare exit handler for write set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'write condition for sqlstate '02000'; -declare exit handler for write set @var2 =' at line 3 +declare exit handler for write set @var...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11595,8 +11568,7 @@ declare xor condition for sqlstate '02000'; declare exit handler for xor set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'xor condition for sqlstate '02000'; -declare exit handler for xor set @var2 = 1; -' at line 3 +declare exit handler for xor set @var2 = ...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11606,7 +11578,7 @@ declare year_month condition for sqlstate '02000'; declare exit handler for year_month set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'year_month condition for sqlstate '02000'; -declare exit handler for year_month s' at line 3 +declare exit handler for year_mont...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -11616,7 +11588,7 @@ declare zerofill condition for sqlstate '02000'; declare exit handler for zerofill set @var2 = 1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'zerofill condition for sqlstate '02000'; -declare exit handler for zerofill set @' at line 3 +declare exit handler for zerofill se...' at line 3 Testcase : ---------- @@ -11651,7 +11623,7 @@ set @x = 3; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'undo handler for sqlstate '23000' set @x2 = 1; set @x = 1; -insert into t values ' at line 3 +insert into t valu...' at line 3 DROP PROCEDURE IF EXISTS handler1; Warnings: Note 1305 PROCEDURE db_storedproc.handler1 does not exist @@ -11666,8 +11638,7 @@ set @x = 3; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'handler for sqlstate '2300' set @x2 = 1; set @x = 1; -insert into t values (1); -s' at line 3 +insert into t values (1)...' at line 3 DROP PROCEDURE IF EXISTS handler1; Warnings: Note 1305 PROCEDURE db_storedproc.handler1 does not exist @@ -11682,8 +11653,7 @@ set @x = 3; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'handler for sqlstate '2300' set @x2 = 1; set @x = 1; -insert into t values (1); -s' at line 3 +insert into t values (1)...' at line 3 DROP PROCEDURE IF EXISTS handler1; Warnings: Note 1305 PROCEDURE db_storedproc.handler1 does not exist @@ -11698,8 +11668,7 @@ set @x = 3; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'handler for sqlstate '2300' set @x2 = 1; set @x = 1; -insert into t values (1); -s' at line 3 +insert into t values (1)...' at line 3 DROP PROCEDURE IF EXISTS sp1; Warnings: Note 1305 PROCEDURE db_storedproc.sp1 does not exist @@ -14497,7 +14466,7 @@ insert into tnull values( 1); END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '1234567890; declare continue handler for cond1 set @var2 = 1; -insert into tnull ' at line 3 +insert into tnu...' at line 3 DROP PROCEDURE IF EXISTS sp1; CREATE PROCEDURE sp1() BEGIN @@ -15346,7 +15315,7 @@ END case label1; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'case when action = 'delete' then -delete from res_t3_itisalongname_1381742_itsav' at line 3 +delete from res_t3_itisalongname_1381742_it...' at line 3 DROP PROCEDURE IF EXISTS sp3; CREATE PROCEDURE sp3( action char(20) ) BEGIN @@ -15363,7 +15332,7 @@ END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'then delete from res_t3_itisalongname_1381742_itsaverylongname_1381742; else -set' at line 5 +...' at line 5 DROP PROCEDURE IF EXISTS sp3; CREATE PROCEDURE sp3( action char(20) ) BEGIN @@ -15378,7 +15347,7 @@ iterate label1; END case; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'then action = 'truncate' when -truncate from res_t3_itisalongname_1381742_itsave' at line 6 +truncate from res_t3_itisalongname_1381742_its...' at line 6 DROP PROCEDURE IF EXISTS sp3; CREATE PROCEDURE sp3( action char(20) ) BEGIN @@ -15395,7 +15364,7 @@ delete from res_t3_itisalongname_1381742_itsaverylongname_1381742; END case; END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'when 'delete' then -delete from res_t3_itisalongname_1381742_itsaverylongname_13' at line 11 +delete from res_t3_itisalongname_1381742_itsaverylongname...' at line 11 DROP PROCEDURE IF EXISTS sp3; CREATE PROCEDURE sp3( action char(20) ) BEGIN @@ -15458,8 +15427,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp leave label1; END if; iterate label1; -END loop label1; -EN' at line 9 +END loop label1;...' at line 9 DROP PROCEDURE IF EXISTS sp4; CREATE PROCEDURE sp4() BEGIN @@ -15479,7 +15447,7 @@ set count = count + 1; if count > 20 then leave label1; END if; -iterate lab' at line 6 +iterate ...' at line 6 DROP PROCEDURE IF EXISTS sp4; CREATE PROCEDURE sp4() BEGIN @@ -15499,7 +15467,7 @@ leave label1; else set count=count+1; END if; -iterate lab' at line 6 +iterate ...' at line 6 DROP PROCEDURE IF EXISTS sp4; CREATE PROCEDURE sp4() BEGIN @@ -15519,7 +15487,7 @@ if count > 20 then leave label1; else set count=count+1; -iterate label1;' at line 6 +iterate labe...' at line 6 DROP PROCEDURE IF EXISTS sp4; CREATE PROCEDURE sp4() BEGIN @@ -15541,8 +15509,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp set count = 1; label1: loop if count > 20 then -leave label1; -' at line 7 +leave label...' at line 7 DROP PROCEDURE IF EXISTS sp4; CREATE PROCEDURE sp4() BEGIN @@ -15602,7 +15569,7 @@ END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'when case count = 1 then set count = 10; when count = 2 then -set count = count' at line 3 +set count = co...' at line 3 DROP PROCEDURE IF EXISTS sp5; CREATE PROCEDURE sp5(count int) BEGIN @@ -15617,7 +15584,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp when count = 1 then set count = 10; when count = 2 then -set count = coun' at line 3 +set count = c...' at line 3 DROP PROCEDURE IF EXISTS sp5; CREATE PROCEDURE sp5(count int) BEGIN @@ -15630,7 +15597,7 @@ END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'when count = 1 then set count = 10; case when count = 2 then -set count = count' at line 3 +set count = co...' at line 3 Testcase 4.3.6: --------------- @@ -15662,7 +15629,7 @@ END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'until count1 > 5 repeat set count1 = count1 + 1; -if count1 > 5 then leave label1' at line 4 +if count1 > 5 then leave lab...' at line 4 DROP PROCEDURE IF EXISTS sp6; CREATE PROCEDURE sp6() BEGIN @@ -15676,7 +15643,7 @@ END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'END repeat set count1 = count1 + 1; if count1 > 5 then leave label1; END if; -unt' at line 4 +...' at line 4 DROP PROCEDURE IF EXISTS sp6; CREATE PROCEDURE sp6() BEGIN @@ -15747,7 +15714,7 @@ END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'END loop; set @dummystring = 'temp value'; if count > 10 then leave label1; -END ' at line 3 +E...' at line 3 DROP PROCEDURE IF EXISTS sp7; CREATE PROCEDURE sp7() BEGIN @@ -15761,7 +15728,7 @@ END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'iterate label1; loop set @dummystring = 'temp value'; -if count > 10 then leave l' at line 3 +if count > 10 then leav...' at line 3 Testcase 4.3.8: -------------------------------------------------------------------------------- @@ -15889,7 +15856,7 @@ END// ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'loop if count1 > 2 then leave lable1; END if; -insert into res_t3_itisalongname_1' at line 4 +insert into res_t3_itisalongnam...' at line 4 Testcase 4.3.16: ---------------- diff --git a/mysql-test/suite/heap/heap.result b/mysql-test/suite/heap/heap.result index e8d1341aa9b..6bd0582a384 100644 --- a/mysql-test/suite/heap/heap.result +++ b/mysql-test/suite/heap/heap.result @@ -697,7 +697,7 @@ ERROR 42000: Incorrect table definition; there can be only one auto column and i create table t1 (c char(255), primary key(c(90))); insert into t1 values ("abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz"); insert into t1 values ("abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz"); -ERROR 23000: Duplicate entry 'abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijkl' for key 'PRIMARY' +ERROR 23000: Duplicate entry 'abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghi...' for key 'PRIMARY' drop table t1; CREATE TABLE t1 (a int, key(a)) engine=heap; insert into t1 values (0); diff --git a/mysql-test/suite/innodb/r/foreign_key.result b/mysql-test/suite/innodb/r/foreign_key.result index dc88643fcf9..619bf1fa577 100644 --- a/mysql-test/suite/innodb/r/foreign_key.result +++ b/mysql-test/suite/innodb/r/foreign_key.result @@ -274,6 +274,13 @@ CREATE TABLE t2 (f INT, KEY(f)) ENGINE=InnoDB; ALTER TABLE t1 ADD FOREIGN KEY (f2) REFERENCES t2 (f); ALTER IGNORE TABLE t1 ADD FOREIGN KEY (f3) REFERENCES t1 (f1); DROP TABLE t1, t2; +CREATE TABLE t1 (a INT, b INT, KEY idx(a)) ENGINE=InnoDB; +SET FOREIGN_KEY_CHECKS= OFF; +ALTER TABLE t1 ADD FOREIGN KEY (a) REFERENCES tx(x); +ALTER TABLE t1 DROP KEY idx; +ALTER TABLE t1 CHANGE a c INT; +DROP TABLE t1; +SET FOREIGN_KEY_CHECKS=1; # Start of 10.2 tests # # MDEV-13246 Stale rows despite ON DELETE CASCADE constraint diff --git a/mysql-test/suite/innodb/r/innodb-alter.result b/mysql-test/suite/innodb/r/innodb-alter.result index f5cb95b7cf2..24cf44c90e0 100644 --- a/mysql-test/suite/innodb/r/innodb-alter.result +++ b/mysql-test/suite/innodb/r/innodb-alter.result @@ -198,11 +198,11 @@ t3 CREATE TABLE `t3` ( ALTER TABLE t3 CHANGE `1234567890123456789012345678901234567890123456789012345678901234` `倀倁倂倃倄倅倆倇倈倉倊個倌倍倎倏倐們倒倓倔倕倖倗倘候倚倛倜倝倞借倠倡倢倣値倥倦倧倨倩倪倫倬倭倮倯倰倱倲倳倴倵倶倷倸倹债倻值倽倾倿偀` INT; -ERROR 42000: Identifier name '倀倁倂倃倄倅倆倇倈倉倊個倌倍倎倏倐們倒倓倔倕倖倗倘候倚倛倜倝倞借倠' is too long +ERROR 42000: Identifier name '倀倁倂倃倄倅倆倇倈倉倊個倌倍倎倏倐們倒倓倔倕倖倗倘候倚倛倜倝倞借...' is too long ALTER TABLE t3 CHANGE `1234567890123456789012345678901234567890123456789012345678901234` `倀倁倂倃倄倅倆倇倈倉倊個倌倍倎倏倐們倒倓倔倕倖倗倘候倚倛倜倝倞借倠倡倢倣値倥倦倧倨倩倪倫倬倭倮倯倰倱倲倳倴倵倶倷倸倹债倻值倽倾倿ä` INT; -ERROR 42000: Identifier name '倀倁倂倃倄倅倆倇倈倉倊個倌倍倎倏倐們倒倓倔倕倖倗倘候倚倛倜倝倞借倠' is too long +ERROR 42000: Identifier name '倀倁倂倃倄倅倆倇倈倉倊個倌倍倎倏倐們倒倓倔倕倖倗倘候倚倛倜倝倞借...' is too long ALTER TABLE t3 CHANGE `1234567890123456789012345678901234567890123456789012345678901234` `倀倁倂倃倄倅倆倇倈倉倊個倌倍倎倏倐們倒倓倔倕倖倗倘候倚倛倜倝倞借倠倡倢倣値倥倦倧倨倩倪倫倬倭倮倯倰倱倲倳倴倵倶倷倸倹债倻值倽倾ä` INT; @@ -210,7 +210,7 @@ ALTER TABLE t3 CHANGE `倀倁倂倃倄倅倆倇倈倉倊個倌倍倎倏倐們倒倓倔倕倖倗倘候倚倛倜倝倞借倠倡倢倣値倥倦倧倨倩倪倫倬倭倮倯倰倱倲倳倴倵倶倷倸倹债倻值倽倾Ä` c3 INT; ALTER TABLE t3 CHANGE c3 𐌀𐌁𐌂𐌃𐌄𐌅𐌆𐌇𐌈𐌉𐌊𐌋𐌌𐌍𐌎𐌏𐌐𐌑𐌒𐌓𐌔𐌕𐌖𐌗𐌘𐌙𐌚𐌛𐌜 INT; -ERROR HY000: Invalid utf8mb4 character string: '\xF0\x90\x8C\x80\xF0\x90\x8C\x81\xF0\x90\x8C\x82\xF0\x90\x8C\x83' +ERROR HY000: Invalid utf8mb4 character string: '\xF0\x90\x8C\x80\xF0\x90\x8C\x81\xF0\x90\x8C\x82\xF0\x90\x8C\...' ALTER TABLE t3 CHANGE c3 😲 INT; ERROR HY000: Invalid utf8mb4 character string: '\xF0\x9F\x98\xB2' ALTER TABLE t3 RENAME TO t2; diff --git a/mysql-test/suite/innodb/r/innodb-wl5980-alter.result b/mysql-test/suite/innodb/r/innodb-wl5980-alter.result index 0855d6b5148..6af968313e5 100644 --- a/mysql-test/suite/innodb/r/innodb-wl5980-alter.result +++ b/mysql-test/suite/innodb/r/innodb-wl5980-alter.result @@ -323,11 +323,11 @@ t3 CREATE TABLE `t3` ( ALTER TABLE t3 CHANGE `1234567890123456789012345678901234567890123456789012345678901234` `倀倁倂倃倄倅倆倇倈倉倊個倌倍倎倏倐們倒倓倔倕倖倗倘候倚倛倜倝倞借倠倡倢倣値倥倦倧倨倩倪倫倬倭倮倯倰倱倲倳倴倵倶倷倸倹债倻值倽倾倿偀` INT; -ERROR 42000: Identifier name '倀倁倂倃倄倅倆倇倈倉倊個倌倍倎倏倐們倒倓倔倕倖倗倘候倚倛倜倝倞借倠' is too long +ERROR 42000: Identifier name '倀倁倂倃倄倅倆倇倈倉倊個倌倍倎倏倐們倒倓倔倕倖倗倘候倚倛倜倝倞借...' is too long ALTER TABLE t3 CHANGE `1234567890123456789012345678901234567890123456789012345678901234` `倀倁倂倃倄倅倆倇倈倉倊個倌倍倎倏倐們倒倓倔倕倖倗倘候倚倛倜倝倞借倠倡倢倣値倥倦倧倨倩倪倫倬倭倮倯倰倱倲倳倴倵倶倷倸倹债倻值倽倾倿ä` INT; -ERROR 42000: Identifier name '倀倁倂倃倄倅倆倇倈倉倊個倌倍倎倏倐們倒倓倔倕倖倗倘候倚倛倜倝倞借倠' is too long +ERROR 42000: Identifier name '倀倁倂倃倄倅倆倇倈倉倊個倌倍倎倏倐們倒倓倔倕倖倗倘候倚倛倜倝倞借...' is too long ALTER TABLE t3 CHANGE `1234567890123456789012345678901234567890123456789012345678901234` `倀倁倂倃倄倅倆倇倈倉倊個倌倍倎倏倐們倒倓倔倕倖倗倘候倚倛倜倝倞借倠倡倢倣値倥倦倧倨倩倪倫倬倭倮倯倰倱倲倳倴倵倶倷倸倹债倻值倽倾ä` INT; @@ -369,7 +369,7 @@ t3.isl t1c.ibd t3.ibd ALTER TABLE t3 CHANGE c3 𐌀𐌁𐌂𐌃𐌄𐌅𐌆𐌇𐌈𐌉𐌊𐌋𐌌𐌍𐌎𐌏𐌐𐌑𐌒𐌓𐌔𐌕𐌖𐌗𐌘𐌙𐌚𐌛𐌜 INT; -ERROR HY000: Invalid utf8mb4 character string: '\xF0\x90\x8C\x80\xF0\x90\x8C\x81\xF0\x90\x8C\x82\xF0\x90\x8C\x83' +ERROR HY000: Invalid utf8mb4 character string: '\xF0\x90\x8C\x80\xF0\x90\x8C\x81\xF0\x90\x8C\x82\xF0\x90\x8C\...' ALTER TABLE t3 CHANGE c3 😲 INT; ERROR HY000: Invalid utf8mb4 character string: '\xF0\x9F\x98\xB2' ALTER TABLE t3 RENAME TO t2; diff --git a/mysql-test/suite/innodb/r/xa_recovery_debug.result b/mysql-test/suite/innodb/r/xa_recovery_debug.result new file mode 100644 index 00000000000..d387bca29b1 --- /dev/null +++ b/mysql-test/suite/innodb/r/xa_recovery_debug.result @@ -0,0 +1,27 @@ +# +# Bug#20872655 XA ROLLBACK IS NOT CRASH-SAFE +# +CREATE TABLE t(a INT PRIMARY KEY, b INT UNIQUE) ENGINE=INNODB; +INSERT INTO t SET a=0; +connect con1,localhost,root; +XA START 'zombie'; +INSERT INTO t SET a=1; +UPDATE t SET b=1 WHERE a=1; +SELECT COUNT(*) FROM t; +COUNT(*) +2 +XA END 'zombie'; +XA PREPARE 'zombie'; +SET DEBUG_SYNC='trx_after_rollback_row SIGNAL s1 WAIT_FOR s2'; +XA ROLLBACK 'zombie'; +connection default; +SET DEBUG_SYNC='now WAIT_FOR s1'; +SET GLOBAL innodb_flush_log_at_trx_commit=1; +DELETE FROM t LIMIT 1; +# restart +disconnect con1; +XA COMMIT 'zombie'; +ERROR XAE04: XAER_NOTA: Unknown XID +SELECT * FROM t; +a b +DROP TABLE t; diff --git a/mysql-test/suite/innodb/t/foreign_key.test b/mysql-test/suite/innodb/t/foreign_key.test index 672539b9271..5ff2f9fb20d 100644 --- a/mysql-test/suite/innodb/t/foreign_key.test +++ b/mysql-test/suite/innodb/t/foreign_key.test @@ -257,6 +257,17 @@ ALTER TABLE t1 ADD FOREIGN KEY (f2) REFERENCES t2 (f); ALTER IGNORE TABLE t1 ADD FOREIGN KEY (f3) REFERENCES t1 (f1); DROP TABLE t1, t2; +# MDEV-19092 Server crash when renaming the column when +# FOREIGN_KEY_CHECKS is disabled +CREATE TABLE t1 (a INT, b INT, KEY idx(a)) ENGINE=InnoDB; +SET FOREIGN_KEY_CHECKS= OFF; +ALTER TABLE t1 ADD FOREIGN KEY (a) REFERENCES tx(x); +ALTER TABLE t1 DROP KEY idx; +ALTER TABLE t1 CHANGE a c INT; +# Cleanup +DROP TABLE t1; +SET FOREIGN_KEY_CHECKS=1; + --echo # Start of 10.2 tests --echo # diff --git a/mysql-test/suite/innodb/t/xa_recovery_debug.test b/mysql-test/suite/innodb/t/xa_recovery_debug.test new file mode 100644 index 00000000000..21a38854adb --- /dev/null +++ b/mysql-test/suite/innodb/t/xa_recovery_debug.test @@ -0,0 +1,39 @@ +--source include/have_innodb.inc +--source include/have_debug.inc +--source include/have_debug_sync.inc +# Embedded server does not support restarting +--source include/not_embedded.inc + +--echo # +--echo # Bug#20872655 XA ROLLBACK IS NOT CRASH-SAFE +--echo # + +CREATE TABLE t(a INT PRIMARY KEY, b INT UNIQUE) ENGINE=INNODB; +INSERT INTO t SET a=0; +connect (con1,localhost,root); +XA START 'zombie'; +INSERT INTO t SET a=1; +UPDATE t SET b=1 WHERE a=1; +SELECT COUNT(*) FROM t; +XA END 'zombie'; +XA PREPARE 'zombie'; +SET DEBUG_SYNC='trx_after_rollback_row SIGNAL s1 WAIT_FOR s2'; +--send XA ROLLBACK 'zombie' +connection default; +SET DEBUG_SYNC='now WAIT_FOR s1'; +# Ensure that the state change from XA PREPARE to ACTIVE gets flushed +# to the redo log. Without this, it could be that we will recover to +# a state that precedes the start of the XA ROLLBACK. +SET GLOBAL innodb_flush_log_at_trx_commit=1; +DELETE FROM t LIMIT 1; +let $shutdown_timeout=0; +--source include/restart_mysqld.inc +disconnect con1; +# If the trx_undo_set_state_at_prepare() is omitted at the start of +# XA ROLLBACK, then the XA COMMIT would succeed and the table would +# incorrectly show the result of the INSERT but not the UPDATE, +# because we would commit a partially rolled back transaction. +--error ER_XAER_NOTA +XA COMMIT 'zombie'; +SELECT * FROM t; +DROP TABLE t; diff --git a/mysql-test/suite/innodb_gis/r/alter_spatial_index.result b/mysql-test/suite/innodb_gis/r/alter_spatial_index.result index 241eee16223..0264d8cc9a8 100644 --- a/mysql-test/suite/innodb_gis/r/alter_spatial_index.result +++ b/mysql-test/suite/innodb_gis/r/alter_spatial_index.result @@ -269,7 +269,7 @@ c1 ST_Astext(c2) ST_Astext(c4) 9 POINT(120 120) POLYGON((4010 4010,4020 4020,4030 4030,4040 4030,4020 4010,4010 4010)) UPDATE tab SET c2 = ST_GeomFromText('POINT(4000 4000)') WHERE MBRIntersects(tab.c4, @g1); -ERROR 23000: Duplicate entry '\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00@\xAF@\x' for key 'PRIMARY' +ERROR 23000: Duplicate entry '\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00@\xAF...' for key 'PRIMARY' SELECT c1,ST_Astext(c2),ST_Astext(c4) FROM tab WHERE MBRIntersects(tab.c4, @g1) ORDER BY c1; c1 ST_Astext(c2) ST_Astext(c4) 7 POINT(60 70) POLYGON((3010 3010,3020 3020,3030 3030,3040 3030,3020 3010,3010 3010)) diff --git a/mysql-test/suite/innodb_zip/r/prefix_index_liftedlimit.result b/mysql-test/suite/innodb_zip/r/prefix_index_liftedlimit.result index 145f6a8a2e8..2c66133404c 100644 --- a/mysql-test/suite/innodb_zip/r/prefix_index_liftedlimit.result +++ b/mysql-test/suite/innodb_zip/r/prefix_index_liftedlimit.result @@ -1093,7 +1093,7 @@ col_1_varchar = REPEAT("c", 4000) ALTER TABLE worklog5743 ADD PRIMARY KEY (col_1_varchar(3072)); INSERT INTO worklog5743 VALUES(REPEAT("a", 4000),REPEAT("o", 4000)); INSERT INTO worklog5743 VALUES(REPEAT("a", 4000),REPEAT("o", 4000)); -ERROR 23000: Duplicate entry 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' for key 'PRIMARY' +ERROR 23000: Duplicate entry 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...' for key 'PRIMARY' DELETE FROM worklog5743 WHERE col_1_varchar = REPEAT("b", 4000); SELECT col_1_varchar = REPEAT("c", 4000) FROM worklog5743; col_1_varchar = REPEAT("c", 4000) @@ -1126,7 +1126,7 @@ ALTER TABLE worklog5743 ADD PRIMARY KEY (col_1_varchar(3072)); CREATE INDEX prefix_idx ON worklog5743(col_1_varchar (3072)); INSERT INTO worklog5743 VALUES(REPEAT("a", 4000),REPEAT("o", 4000)); INSERT INTO worklog5743 VALUES(REPEAT("a", 4000),REPEAT("o", 4000)); -ERROR 23000: Duplicate entry 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' for key 'PRIMARY' +ERROR 23000: Duplicate entry 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...' for key 'PRIMARY' DELETE FROM worklog5743 WHERE col_1_varchar = REPEAT("b", 4000); SELECT col_1_varchar = REPEAT("c", 4000) FROM worklog5743; col_1_varchar = REPEAT("c", 4000) @@ -1390,7 +1390,7 @@ REPEAT("o", 4000)); INSERT INTO worklog5743 VALUES(concat(REPEAT("a", 2000),REPEAT("b", 2000)), REPEAT("o", 4000)); ALTER TABLE worklog5743 ADD PRIMARY KEY `pk_idx` (col_1_varchar(3000)); -ERROR 23000: Duplicate entry 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' for key 'PRIMARY' +ERROR 23000: Duplicate entry 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...' for key 'PRIMARY' DROP TABLE worklog5743; set global innodb_large_prefix=0; ERROR HY000: Variable 'innodb_large_prefix' is a read only variable diff --git a/mysql-test/suite/mariabackup/innodb_xa_rollback.result b/mysql-test/suite/mariabackup/innodb_xa_rollback.result new file mode 100644 index 00000000000..1bf6a9a23d3 --- /dev/null +++ b/mysql-test/suite/mariabackup/innodb_xa_rollback.result @@ -0,0 +1,45 @@ +CALL mtr.add_suppression("Found 1 prepared XA transactions"); +RESET MASTER; +CREATE TABLE t1 (a INT) ENGINE=INNODB; +XA START 'test1'; +INSERT t1 VALUES (10); +XA END 'test1'; +XA PREPARE 'test1'; +XA RECOVER; +formatID gtrid_length bqual_length data +1 5 0 test1 +# xtrabackup backup +XA ROLLBACK 'test1'; +# xtrabackup prepare and rollback prepared XA +# shutdown server +# remove datadir +# xtrabackup move back +# restart +XA RECOVER; +formatID gtrid_length bqual_length data +# xtrabackup prepare and DO NOT rollback prepared XA +# shutdown server +# remove datadir +# xtrabackup move back +# restart +XA RECOVER; +formatID gtrid_length bqual_length data +1 5 0 test1 +XA ROLLBACK 'test1'; +# xtrabackup prepare for export and rollback prepared XA +# shutdown server +# remove datadir +# xtrabackup move back +# restart +XA RECOVER; +formatID gtrid_length bqual_length data +# xtrabackup prepare for export and DO NOT rollback prepared XA +# shutdown server +# remove datadir +# xtrabackup move back +# restart +XA RECOVER; +formatID gtrid_length bqual_length data +1 5 0 test1 +XA ROLLBACK 'test1'; +DROP TABLE t1; diff --git a/mysql-test/suite/mariabackup/innodb_xa_rollback.test b/mysql-test/suite/mariabackup/innodb_xa_rollback.test new file mode 100644 index 00000000000..f8ba5ea8cfa --- /dev/null +++ b/mysql-test/suite/mariabackup/innodb_xa_rollback.test @@ -0,0 +1,77 @@ +# +# Optionally rollback prepared XA when backup is prepared +# +--source include/have_innodb.inc +--source include/have_binlog_format_mixed.inc + +CALL mtr.add_suppression("Found 1 prepared XA transactions"); + +RESET MASTER; + +let targetdir1=$MYSQLTEST_VARDIR/tmp/backup1; +let targetdir2=$MYSQLTEST_VARDIR/tmp/backup2; +let targetdir3=$MYSQLTEST_VARDIR/tmp/backup3; +let targetdir4=$MYSQLTEST_VARDIR/tmp/backup4; + +CREATE TABLE t1 (a INT) ENGINE=INNODB; +XA START 'test1'; +INSERT t1 VALUES (10); +XA END 'test1'; +XA PREPARE 'test1'; +XA RECOVER; + +--echo # xtrabackup backup +--disable_result_log +exec $XTRABACKUP --defaults-file=$MYSQLTEST_VARDIR/my.cnf --backup --target-dir=$targetdir1; +--enable_result_log + +perl; +use lib "lib"; +use My::Handles { suppress_init_messages => 1 }; +use My::File::Path; +copytree($ENV{'targetdir1'}, $ENV{'targetdir2'}); +copytree($ENV{'targetdir1'}, $ENV{'targetdir3'}); +copytree($ENV{'targetdir1'}, $ENV{'targetdir4'}); +EOF + +XA ROLLBACK 'test1'; + +--echo # xtrabackup prepare and rollback prepared XA +--disable_result_log +exec $XTRABACKUP --prepare --rollback_xa --target-dir=$targetdir1; +--let $targetdir = $targetdir1 +--source include/restart_and_restore.inc +--enable_result_log +XA RECOVER; + +--echo # xtrabackup prepare and DO NOT rollback prepared XA +--disable_result_log +exec $XTRABACKUP --prepare --target-dir=$targetdir2; +--let $targetdir = $targetdir2 +--source include/restart_and_restore.inc +--enable_result_log +XA RECOVER; +XA ROLLBACK 'test1'; + +--echo # xtrabackup prepare for export and rollback prepared XA +--disable_result_log +exec $XTRABACKUP --prepare --rollback_xa --export --target-dir=$targetdir3; +--let $targetdir = $targetdir3 +--source include/restart_and_restore.inc +--enable_result_log +XA RECOVER; + +--echo # xtrabackup prepare for export and DO NOT rollback prepared XA +--disable_result_log +exec $XTRABACKUP --prepare --export --target-dir=$targetdir4; +--let $targetdir = $targetdir4 +--source include/restart_and_restore.inc +--enable_result_log +XA RECOVER; +XA ROLLBACK 'test1'; + +DROP TABLE t1; +rmdir $targetdir1; +rmdir $targetdir2; +rmdir $targetdir3; +rmdir $targetdir4; diff --git a/mysql-test/suite/parts/r/longname.result b/mysql-test/suite/parts/r/longname.result index c95e666625e..2d2802d8b38 100644 --- a/mysql-test/suite/parts/r/longname.result +++ b/mysql-test/suite/parts/r/longname.result @@ -24,5 +24,5 @@ SUBPARTITION BY HASH ( id2 ) SUBPARTITIONS 2 ( PARTITION çççççççççççççççççççççççççççççççççççççççççççççççççççççççççççç VALUES LESS THAN (1000) ENGINE = InnoDB, PARTITION pmax VALUES LESS THAN MAXVALUE ENGINE = InnoDB); -ERROR HY000: The path specified for @0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@ is too long +ERROR HY000: The path specified for @0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@0n@... is too long drop database mysqltest1; diff --git a/mysql-test/suite/parts/r/partition_syntax_innodb.result b/mysql-test/suite/parts/r/partition_syntax_innodb.result index a5d257f64e0..8171141127a 100644 --- a/mysql-test/suite/parts/r/partition_syntax_innodb.result +++ b/mysql-test/suite/parts/r/partition_syntax_innodb.result @@ -770,7 +770,7 @@ f_char2 CHAR(20), f_charbig VARCHAR(1000) ) PARTITION BY RANGE(f_int1) SUBPARTITION BY HASH(f_int1) (PARTITION part1 VALUES LESS THAN (10), PARTITION part2 VALUES LESS THAN (20) (SUBPARTITION subpart21 , SUBPARTITION subpart22 ), PARTITION part3 VALUES LESS THAN (2147483646)) ; -ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near 'SUBPARTITION subpart21 , SUBPARTITION subpart22 ), PARTITION part3 VALUES LESS T' at line 7 +ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near 'SUBPARTITION subpart21 , SUBPARTITION subpart22 ), PARTITION part3 VALUES LES...' at line 7 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, f_char1 CHAR(20), @@ -779,7 +779,7 @@ f_charbig VARCHAR(1000) ) PARTITION BY RANGE(f_int1) SUBPARTITION BY HASH(f_int1) (PARTITION part1 VALUES LESS THAN (10), PARTITION part2 VALUES LESS THAN (20) (SUBPARTITION subpart21 , SUBPARTITION subpart22 ), PARTITION part3 VALUES LESS THAN (2147483646) (SUBPARTITION subpart31 , SUBPARTITION subpart32 )) ; -ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near 'SUBPARTITION subpart21 , SUBPARTITION subpart22 ), PARTITION part3 VALUES LESS T' at line 7 +ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near 'SUBPARTITION subpart21 , SUBPARTITION subpart22 ), PARTITION part3 VALUES LES...' at line 7 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, f_char1 CHAR(20), @@ -797,7 +797,7 @@ PARTITION BY RANGE(f_int1) SUBPARTITION BY HASH(f_int1) (PARTITION part1 VALUES (SUBPARTITION subpart11 , SUBPARTITION subpart12 ), PARTITION part2 VALUES LESS THAN (20), PARTITION part3 VALUES LESS THAN (2147483646) (SUBPARTITION subpart31 , SUBPARTITION subpart32 )) ; ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near ' PARTITION part3 VALUES LESS THAN (2147483646) -(SUBPARTITION subpart31 , SUBPART' at line 7 +(SUBPARTITION subpart31 , SUBP...' at line 7 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, f_char1 CHAR(20), @@ -987,7 +987,7 @@ SUBPARTITIONS -1 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '-1 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (214' at line 9 +PARTITION part2 VALUES LESS THAN (...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1032,7 +1032,7 @@ SUBPARTITIONS 2.0 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '2.0 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (21' at line 9 +PARTITION part2 VALUES LESS THAN ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1055,7 +1055,7 @@ SUBPARTITIONS -2.0 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '-2.0 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (2' at line 9 +PARTITION part2 VALUES LESS THAN...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1078,7 +1078,7 @@ SUBPARTITIONS 0.0 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '0.0 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (21' at line 9 +PARTITION part2 VALUES LESS THAN ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1101,7 +1101,7 @@ SUBPARTITIONS 1.6 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '1.6 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (21' at line 9 +PARTITION part2 VALUES LESS THAN ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1123,7 +1123,7 @@ SUBPARTITIONS 999999999999999999999999999999.999999999999999999999999999999 (PARTITION part1 VALUES LESS THAN (10), PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '999999999999999999999999999999.999999999999999999999999999999 -(PARTITION part1 V' at line 9 +(PARTITION part...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1146,7 +1146,7 @@ SUBPARTITIONS 0.000000000000000000000000000001 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '0.000000000000000000000000000001 (PARTITION part1 VALUES LESS THAN (10), -PARTITI' at line 9 +PART...' at line 9 # 4.2.3 partition/subpartition numbers FLOAT notation CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, @@ -1170,7 +1170,7 @@ SUBPARTITIONS 2.0E+0 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '2.0E+0 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN ' at line 9 +PARTITION part2 VALUES LESS TH...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1193,7 +1193,7 @@ SUBPARTITIONS 0.2E+1 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '0.2E+1 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN ' at line 9 +PARTITION part2 VALUES LESS TH...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1216,7 +1216,7 @@ SUBPARTITIONS -2.0E+0 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '-2.0E+0 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN' at line 9 +PARTITION part2 VALUES LESS T...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1239,7 +1239,7 @@ SUBPARTITIONS 0.16E+1 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '0.16E+1 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN' at line 9 +PARTITION part2 VALUES LESS T...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1262,7 +1262,7 @@ SUBPARTITIONS 0.0E+300 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '0.0E+300 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THA' at line 9 +PARTITION part2 VALUES LESS ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1285,7 +1285,7 @@ SUBPARTITIONS 1E+300 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '1E+300 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN ' at line 9 +PARTITION part2 VALUES LESS TH...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1308,7 +1308,7 @@ SUBPARTITIONS 1E-300 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '1E-300 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN ' at line 9 +PARTITION part2 VALUES LESS TH...' at line 9 # 4.2.4 partition/subpartition numbers STRING notation CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, @@ -1332,7 +1332,7 @@ SUBPARTITIONS '2' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''2' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (21' at line 9 +PARTITION part2 VALUES LESS THAN ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1355,7 +1355,7 @@ SUBPARTITIONS '2.0' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''2.0' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (' at line 9 +PARTITION part2 VALUES LESS THA...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1378,7 +1378,7 @@ SUBPARTITIONS '0.2E+1' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''0.2E+1' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THA' at line 9 +PARTITION part2 VALUES LESS ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1401,7 +1401,7 @@ SUBPARTITIONS '2A' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''2A' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (2' at line 9 +PARTITION part2 VALUES LESS THAN...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1424,7 +1424,7 @@ SUBPARTITIONS 'A2' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''A2' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (2' at line 9 +PARTITION part2 VALUES LESS THAN...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1447,7 +1447,7 @@ SUBPARTITIONS '' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (214' at line 9 +PARTITION part2 VALUES LESS THAN (...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1470,7 +1470,7 @@ SUBPARTITIONS 'GARBAGE' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''GARBAGE' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS TH' at line 9 +PARTITION part2 VALUES LESS...' at line 9 # 4.2.5 partition/subpartition numbers other notations CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, @@ -1494,7 +1494,7 @@ SUBPARTITIONS 2A PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '2A (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (214' at line 9 +PARTITION part2 VALUES LESS THAN (...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1517,7 +1517,7 @@ SUBPARTITIONS A2 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'A2 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (214' at line 9 +PARTITION part2 VALUES LESS THAN (...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1540,7 +1540,7 @@ SUBPARTITIONS GARBAGE PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'GARBAGE (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN' at line 9 +PARTITION part2 VALUES LESS T...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1563,7 +1563,7 @@ SUBPARTITIONS "2" PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '"2" (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (21' at line 9 +PARTITION part2 VALUES LESS THAN ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1586,7 +1586,7 @@ SUBPARTITIONS "2A" PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '"2A" (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (2' at line 9 +PARTITION part2 VALUES LESS THAN...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1609,7 +1609,7 @@ SUBPARTITIONS "A2" PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '"A2" (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (2' at line 9 +PARTITION part2 VALUES LESS THAN...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1632,7 +1632,7 @@ SUBPARTITIONS "GARBAGE" PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '"GARBAGE" (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS TH' at line 9 +PARTITION part2 VALUES LESS...' at line 9 # 4.2.6 (negative) partition/subpartition numbers per @variables SET @aux = 5; CREATE TABLE t1 ( @@ -1657,7 +1657,7 @@ SUBPARTITIONS @aux = 5 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '@aux = 5 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THA' at line 9 +PARTITION part2 VALUES LESS ...' at line 9 #------------------------------------------------------------------------ # 4.3 Mixups of assigned partition/subpartition numbers and names #------------------------------------------------------------------------ @@ -1750,7 +1750,7 @@ PARTITION part2 VALUES LESS THAN (2147483646) ); ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near '), PARTITION part2 VALUES LESS THAN (2147483646) -(SUBPARTITION subpart21, SUBPAR' at line 11 +(SUBPARTITION subpart21, SUB...' at line 11 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1769,7 +1769,7 @@ PARTITION part3 VALUES LESS THAN (2147483646) ); ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near '), PARTITION part3 VALUES LESS THAN (2147483646) -(SUBPARTITION subpart31, SUBPAR' at line 13 +(SUBPARTITION subpart31, SUB...' at line 13 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1812,7 +1812,7 @@ PARTITION part2 VALUES LESS THAN (2147483646) ); ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near '), PARTITION part2 VALUES LESS THAN (2147483646) -(SUBPARTITION subpart21, SUBPAR' at line 11 +(SUBPARTITION subpart21, SUB...' at line 11 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1831,7 +1831,7 @@ PARTITION part3 VALUES LESS THAN (2147483646) ); ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near '), PARTITION part2 VALUES LESS THAN (2000) -(SUBPARTITION subpart21 ' at line 11 +(SUBPARTITION subpart21 ...' at line 11 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1848,7 +1848,7 @@ PARTITION part2 VALUES LESS THAN (2147483646) ); ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near '), PARTITION part2 VALUES LESS THAN (2147483646) -(SUBPARTITION subpart21, SUBPAR' at line 11 +(SUBPARTITION subpart21, SUB...' at line 11 #======================================================================== # 5. Checks of logical partition/subpartition name diff --git a/mysql-test/suite/parts/r/partition_syntax_myisam.result b/mysql-test/suite/parts/r/partition_syntax_myisam.result index 765280f35c6..16882b33176 100644 --- a/mysql-test/suite/parts/r/partition_syntax_myisam.result +++ b/mysql-test/suite/parts/r/partition_syntax_myisam.result @@ -802,7 +802,7 @@ f_char2 CHAR(20), f_charbig VARCHAR(1000) ) PARTITION BY RANGE(f_int1) SUBPARTITION BY HASH(f_int1) (PARTITION part1 VALUES LESS THAN (10), PARTITION part2 VALUES LESS THAN (20) (SUBPARTITION subpart21 , SUBPARTITION subpart22 ), PARTITION part3 VALUES LESS THAN (2147483646)) ; -ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near 'SUBPARTITION subpart21 , SUBPARTITION subpart22 ), PARTITION part3 VALUES LESS T' at line 7 +ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near 'SUBPARTITION subpart21 , SUBPARTITION subpart22 ), PARTITION part3 VALUES LES...' at line 7 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, f_char1 CHAR(20), @@ -811,7 +811,7 @@ f_charbig VARCHAR(1000) ) PARTITION BY RANGE(f_int1) SUBPARTITION BY HASH(f_int1) (PARTITION part1 VALUES LESS THAN (10), PARTITION part2 VALUES LESS THAN (20) (SUBPARTITION subpart21 , SUBPARTITION subpart22 ), PARTITION part3 VALUES LESS THAN (2147483646) (SUBPARTITION subpart31 , SUBPARTITION subpart32 )) ; -ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near 'SUBPARTITION subpart21 , SUBPARTITION subpart22 ), PARTITION part3 VALUES LESS T' at line 7 +ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near 'SUBPARTITION subpart21 , SUBPARTITION subpart22 ), PARTITION part3 VALUES LES...' at line 7 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, f_char1 CHAR(20), @@ -829,7 +829,7 @@ PARTITION BY RANGE(f_int1) SUBPARTITION BY HASH(f_int1) (PARTITION part1 VALUES (SUBPARTITION subpart11 , SUBPARTITION subpart12 ), PARTITION part2 VALUES LESS THAN (20), PARTITION part3 VALUES LESS THAN (2147483646) (SUBPARTITION subpart31 , SUBPARTITION subpart32 )) ; ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near ' PARTITION part3 VALUES LESS THAN (2147483646) -(SUBPARTITION subpart31 , SUBPART' at line 7 +(SUBPARTITION subpart31 , SUBP...' at line 7 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, f_char1 CHAR(20), @@ -1069,7 +1069,7 @@ SUBPARTITIONS -1 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '-1 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (214' at line 9 +PARTITION part2 VALUES LESS THAN (...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1114,7 +1114,7 @@ SUBPARTITIONS 2.0 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '2.0 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (21' at line 9 +PARTITION part2 VALUES LESS THAN ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1137,7 +1137,7 @@ SUBPARTITIONS -2.0 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '-2.0 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (2' at line 9 +PARTITION part2 VALUES LESS THAN...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1160,7 +1160,7 @@ SUBPARTITIONS 0.0 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '0.0 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (21' at line 9 +PARTITION part2 VALUES LESS THAN ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1183,7 +1183,7 @@ SUBPARTITIONS 1.6 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '1.6 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (21' at line 9 +PARTITION part2 VALUES LESS THAN ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1205,7 +1205,7 @@ SUBPARTITIONS 999999999999999999999999999999.999999999999999999999999999999 (PARTITION part1 VALUES LESS THAN (10), PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '999999999999999999999999999999.999999999999999999999999999999 -(PARTITION part1 V' at line 9 +(PARTITION part...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1228,7 +1228,7 @@ SUBPARTITIONS 0.000000000000000000000000000001 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '0.000000000000000000000000000001 (PARTITION part1 VALUES LESS THAN (10), -PARTITI' at line 9 +PART...' at line 9 # 4.2.3 partition/subpartition numbers FLOAT notation CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, @@ -1252,7 +1252,7 @@ SUBPARTITIONS 2.0E+0 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '2.0E+0 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN ' at line 9 +PARTITION part2 VALUES LESS TH...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1275,7 +1275,7 @@ SUBPARTITIONS 0.2E+1 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '0.2E+1 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN ' at line 9 +PARTITION part2 VALUES LESS TH...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1298,7 +1298,7 @@ SUBPARTITIONS -2.0E+0 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '-2.0E+0 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN' at line 9 +PARTITION part2 VALUES LESS T...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1321,7 +1321,7 @@ SUBPARTITIONS 0.16E+1 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '0.16E+1 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN' at line 9 +PARTITION part2 VALUES LESS T...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1344,7 +1344,7 @@ SUBPARTITIONS 0.0E+300 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '0.0E+300 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THA' at line 9 +PARTITION part2 VALUES LESS ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1367,7 +1367,7 @@ SUBPARTITIONS 1E+300 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '1E+300 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN ' at line 9 +PARTITION part2 VALUES LESS TH...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1390,7 +1390,7 @@ SUBPARTITIONS 1E-300 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '1E-300 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN ' at line 9 +PARTITION part2 VALUES LESS TH...' at line 9 # 4.2.4 partition/subpartition numbers STRING notation CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, @@ -1414,7 +1414,7 @@ SUBPARTITIONS '2' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''2' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (21' at line 9 +PARTITION part2 VALUES LESS THAN ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1437,7 +1437,7 @@ SUBPARTITIONS '2.0' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''2.0' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (' at line 9 +PARTITION part2 VALUES LESS THA...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1460,7 +1460,7 @@ SUBPARTITIONS '0.2E+1' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''0.2E+1' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THA' at line 9 +PARTITION part2 VALUES LESS ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1483,7 +1483,7 @@ SUBPARTITIONS '2A' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''2A' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (2' at line 9 +PARTITION part2 VALUES LESS THAN...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1506,7 +1506,7 @@ SUBPARTITIONS 'A2' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''A2' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (2' at line 9 +PARTITION part2 VALUES LESS THAN...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1529,7 +1529,7 @@ SUBPARTITIONS '' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (214' at line 9 +PARTITION part2 VALUES LESS THAN (...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1552,7 +1552,7 @@ SUBPARTITIONS 'GARBAGE' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''GARBAGE' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS TH' at line 9 +PARTITION part2 VALUES LESS...' at line 9 # 4.2.5 partition/subpartition numbers other notations CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, @@ -1576,7 +1576,7 @@ SUBPARTITIONS 2A PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '2A (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (214' at line 9 +PARTITION part2 VALUES LESS THAN (...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1599,7 +1599,7 @@ SUBPARTITIONS A2 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'A2 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (214' at line 9 +PARTITION part2 VALUES LESS THAN (...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1622,7 +1622,7 @@ SUBPARTITIONS GARBAGE PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'GARBAGE (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN' at line 9 +PARTITION part2 VALUES LESS T...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1645,7 +1645,7 @@ SUBPARTITIONS "2" PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '"2" (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (21' at line 9 +PARTITION part2 VALUES LESS THAN ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1668,7 +1668,7 @@ SUBPARTITIONS "2A" PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '"2A" (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (2' at line 9 +PARTITION part2 VALUES LESS THAN...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1691,7 +1691,7 @@ SUBPARTITIONS "A2" PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '"A2" (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (2' at line 9 +PARTITION part2 VALUES LESS THAN...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1714,7 +1714,7 @@ SUBPARTITIONS "GARBAGE" PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '"GARBAGE" (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS TH' at line 9 +PARTITION part2 VALUES LESS...' at line 9 # 4.2.6 (negative) partition/subpartition numbers per @variables SET @aux = 5; CREATE TABLE t1 ( @@ -1739,7 +1739,7 @@ SUBPARTITIONS @aux = 5 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '@aux = 5 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THA' at line 9 +PARTITION part2 VALUES LESS ...' at line 9 #------------------------------------------------------------------------ # 4.3 Mixups of assigned partition/subpartition numbers and names #------------------------------------------------------------------------ @@ -1852,7 +1852,7 @@ PARTITION part2 VALUES LESS THAN (2147483646) ); ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near '), PARTITION part2 VALUES LESS THAN (2147483646) -(SUBPARTITION subpart21, SUBPAR' at line 11 +(SUBPARTITION subpart21, SUB...' at line 11 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1871,7 +1871,7 @@ PARTITION part3 VALUES LESS THAN (2147483646) ); ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near '), PARTITION part3 VALUES LESS THAN (2147483646) -(SUBPARTITION subpart31, SUBPAR' at line 13 +(SUBPARTITION subpart31, SUB...' at line 13 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1914,7 +1914,7 @@ PARTITION part2 VALUES LESS THAN (2147483646) ); ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near '), PARTITION part2 VALUES LESS THAN (2147483646) -(SUBPARTITION subpart21, SUBPAR' at line 11 +(SUBPARTITION subpart21, SUB...' at line 11 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1933,7 +1933,7 @@ PARTITION part3 VALUES LESS THAN (2147483646) ); ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near '), PARTITION part2 VALUES LESS THAN (2000) -(SUBPARTITION subpart21 ' at line 11 +(SUBPARTITION subpart21 ...' at line 11 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1950,7 +1950,7 @@ PARTITION part2 VALUES LESS THAN (2147483646) ); ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near '), PARTITION part2 VALUES LESS THAN (2147483646) -(SUBPARTITION subpart21, SUBPAR' at line 11 +(SUBPARTITION subpart21, SUB...' at line 11 #======================================================================== # 5. Checks of logical partition/subpartition name diff --git a/mysql-test/suite/plugins/r/server_audit.result b/mysql-test/suite/plugins/r/server_audit.result index afbc29c57aa..82e16c9be25 100644 --- a/mysql-test/suite/plugins/r/server_audit.result +++ b/mysql-test/suite/plugins/r/server_audit.result @@ -22,17 +22,16 @@ set global server_audit_file_path='server_audit.log'; set global server_audit_output_type=file; set global server_audit_logging=on; set global server_audit_incl_users= repeat("'root',", 10000); -ERROR 42000: Variable 'server_audit_incl_users' can't be set to the value of ''root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','roo' +ERROR 42000: Variable 'server_audit_incl_users' can't be set to the value of ''root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','...' show variables like 'server_audit_incl_users'; Variable_name Value server_audit_incl_users set global server_audit_excl_users= repeat("'root',", 10000); -ERROR 42000: Variable 'server_audit_excl_users' can't be set to the value of ''root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','roo' +ERROR 42000: Variable 'server_audit_excl_users' can't be set to the value of ''root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','root','...' show variables like 'server_audit_excl_users'; Variable_name Value server_audit_excl_users connect con1,localhost,root,,mysql; -connection default; disconnect con1; connect(localhost,no_such_user,,mysql,MASTER_PORT,MASTER_SOCKET); connect con1,localhost,no_such_user,,mysql; @@ -99,7 +98,6 @@ set global server_audit_mode=1; set global server_audit_events=''; create database sa_db; connect con1,localhost,root,,test; -connection con1; create table t1 (id2 int); insert into t1 values (1), (2); select * from t1; @@ -112,8 +110,8 @@ create table sa_t1(id int); insert into sa_t1 values (1), (2); drop table sa_t1; drop database sa_db; -connection default; disconnect con1; +connection default; create database sa_db; use sa_db; CREATE USER u1 IDENTIFIED BY 'pwd-123'; @@ -219,7 +217,7 @@ grant all on sa_db.* to user1@localhost; connect cn1,localhost,user1,,sa_db; connection cn1; create table t1(id int) engine=myisam; -insert delayed into t1 values (1), (2); +insert delayed into t1 values (1); connection default; # Waiting until INSERT DELAYED thread does the insert. drop table t1; diff --git a/mysql-test/suite/plugins/t/server_audit.test b/mysql-test/suite/plugins/t/server_audit.test index 9833b972725..2a76c1eaadc 100644 --- a/mysql-test/suite/plugins/t/server_audit.test +++ b/mysql-test/suite/plugins/t/server_audit.test @@ -5,6 +5,13 @@ if (!$SERVER_AUDIT_SO) { skip No SERVER_AUDIT plugin; } +# An unfortunate wait for check-testcase.test to complete disconnect. +let count_sessions= 1; +source include/wait_until_count_sessions.inc; + +let $MYSQLD_DATADIR= `SELECT @@datadir`; +let SEARCH_FILE= $MYSQLD_DATADIR/server_audit.log; + install plugin server_audit soname 'server_audit'; show variables like 'server_audit%'; @@ -20,18 +27,21 @@ show variables like 'server_audit_incl_users'; --error ER_WRONG_VALUE_FOR_VAR set global server_audit_excl_users= repeat("'root',", 10000); show variables like 'server_audit_excl_users'; +let SEARCH_COUNT= 5; +source include/wait_for_line_count_in_file.inc; ---sleep 2 connect (con1,localhost,root,,mysql); -connection default; disconnect con1; ---sleep 2 ---sleep 2 +let SEARCH_COUNT= 7; +source include/wait_for_line_count_in_file.inc; + --replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT --error ER_ACCESS_DENIED_ERROR connect (con1,localhost,no_such_user,,mysql); +let SEARCH_COUNT= 9; +source include/wait_for_line_count_in_file.inc; + connection default; ---sleep 2 set global server_audit_incl_users='odin, dva, tri'; create table t1 (id int); set global server_audit_incl_users='odin, root, dva, tri'; @@ -61,11 +71,10 @@ show variables like 'server_audit%'; set global server_audit_mode=1; set global server_audit_events=''; create database sa_db; ---sleep 2 +let SEARCH_COUNT= 47; +source include/wait_for_line_count_in_file.inc; + connect (con1,localhost,root,,test); -connection con1; ---sleep 2 ---sleep 2 create table t1 (id2 int); insert into t1 values (1), (2); select * from t1; @@ -75,10 +84,11 @@ create table sa_t1(id int); insert into sa_t1 values (1), (2); drop table sa_t1; drop database sa_db; -connection default; disconnect con1; ---sleep 2 ---sleep 2 +let SEARCH_COUNT= 80; +source include/wait_for_line_count_in_file.inc; + +connection default; create database sa_db; use sa_db; CREATE USER u1 IDENTIFIED BY 'pwd-123'; @@ -146,10 +156,10 @@ connect (cn1,localhost,user1,,sa_db); connection cn1; create table t1(id int) engine=myisam; -insert delayed into t1 values (1), (2); +insert delayed into t1 values (1); connection default; --echo # Waiting until INSERT DELAYED thread does the insert. -let $wait_condition= SELECT COUNT(*) = 2 FROM t1; +let $wait_condition= SELECT COUNT(*) = 1 FROM t1; --source include/wait_condition.inc drop table t1; @@ -182,7 +192,6 @@ show status like 'server_audit_current_log'; show variables like 'server_audit%'; uninstall plugin server_audit; -let $MYSQLD_DATADIR= `SELECT @@datadir`; # replace the timestamp and the hostname with constant values --replace_regex /[0-9]* [0-9][0-9]:[0-9][0-9]:[0-9][0-9]\,[^,]*\,/TIME,HOSTNAME,/ /\,[1-9][0-9]*\,/,1,/ /\,[1-9][0-9]*/,ID/ cat_file $MYSQLD_DATADIR/server_audit.log; diff --git a/mysql-test/suite/rpl/r/rpl_current_user.result b/mysql-test/suite/rpl/r/rpl_current_user.result index efb036023e9..bddd25405e8 100644 --- a/mysql-test/suite/rpl/r/rpl_current_user.result +++ b/mysql-test/suite/rpl/r/rpl_current_user.result @@ -15,7 +15,7 @@ GRANT ALL PRIVILEGES ON *.* TO 'bug48321_1-01234'@'localhost' WITH GRANT OPTION; # Test the max lengths of user and host names # the user name is too long GRANT CREATE USER ON *.* TO '012345678901234567890123456789012345678901234567890123456789012345678901234567890'@'fakehost'; -ERROR HY000: String '0123456789012345678901234567890123456789012345678901234567890123456789' is too long for user name (should be no longer than 80) +ERROR HY000: String '0123456789012345678901234567890123456789012345678901234567890123456...' is too long for user name (should be no longer than 80) # the host name is too long GRANT CREATE USER ON *.* TO 'fakename'@'0123456789012345678901234567890123456789012345678901234567890'; ERROR HY000: String '0123456789012345678901234567890123456789012345678901234567890' is too long for host name (should be no longer than 60) diff --git a/mysql-test/suite/rpl/r/rpl_password_boundaries.result b/mysql-test/suite/rpl/r/rpl_password_boundaries.result index eeee4c9ad58..8370213ad0e 100644 --- a/mysql-test/suite/rpl/r/rpl_password_boundaries.result +++ b/mysql-test/suite/rpl/r/rpl_password_boundaries.result @@ -24,11 +24,11 @@ set sql_log_bin=1; connection slave; include/stop_slave.inc change master to master_user='rpl33',master_password='0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef!'; -ERROR HY000: String '0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef012345' is too long for MASTER_PASSWORD (should be no longer than 96) +ERROR HY000: String '0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef012...' is too long for MASTER_PASSWORD (should be no longer than 96) change master to master_user='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'; -ERROR HY000: String 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' is too long for MASTER_USER (should be no longer than 128) +ERROR HY000: String 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...' is too long for MASTER_USER (should be no longer than 128) change master to master_host='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc'; -ERROR HY000: String 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbb' is too long for MASTER_HOST (should be no longer than 60) +ERROR HY000: String 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbb...' is too long for MASTER_HOST (should be no longer than 60) connection master; set sql_log_bin=0; grant replication slave on *.* to rpl16cyr@127.0.0.1 identified by 'воттакойужпарольвоттакойужпарольвоттакойужпароль'; @@ -50,7 +50,7 @@ set sql_log_bin=1; connection slave; include/stop_slave.inc change master to master_user='rpl17mix',master_password='воттакойужпарольвоттакойужпарольвоттакойужпароль!'; -ERROR HY000: String 'воттакойужпарольвоттакойужпарольвот' is too long for MASTER_PASSWORD (should be no longer than 96) +ERROR HY000: String 'воттакойужпарольвоттакойужпарольв...' is too long for MASTER_PASSWORD (should be no longer than 96) connection master; set sql_log_bin=0; drop user rpl32@127.0.0.1, rpl33@127.0.0.1, rpl16cyr@127.0.0.1, rpl17mix@127.0.0.1; diff --git a/mysql-test/suite/rpl/r/rpl_row_create_select.result b/mysql-test/suite/rpl/r/rpl_row_create_select.result index b064d42982f..cbe84f20786 100644 --- a/mysql-test/suite/rpl/r/rpl_row_create_select.result +++ b/mysql-test/suite/rpl/r/rpl_row_create_select.result @@ -10,7 +10,7 @@ connection master; SET STATEMENT sql_mode = 'NO_ENGINE_SUBSTITUTION' FOR CREATE TABLE t1 AS SELECT REPEAT('A', 1000) DIV 1 AS a; Warnings: -Warning 1292 Truncated incorrect DECIMAL value: 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' +Warning 1292 Truncated incorrect DECIMAL value: 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...' SHOW CREATE TABLE t1; Table Create Table t1 CREATE TABLE `t1` ( @@ -19,7 +19,7 @@ t1 CREATE TABLE `t1` ( SET STATEMENT sql_mode = 'NO_ENGINE_SUBSTITUTION' FOR CREATE TABLE t2 AS SELECT CONVERT(REPEAT('A', 255) USING UCS2) DIV 1 AS a; Warnings: -Warning 1292 Truncated incorrect DECIMAL value: 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' +Warning 1292 Truncated incorrect DECIMAL value: 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...' SHOW CREATE TABLE t2; Table Create Table t2 CREATE TABLE `t2` ( diff --git a/mysql-test/suite/sql_sequence/replication.result b/mysql-test/suite/sql_sequence/replication.result index d5e5dcc75eb..7bf0eac8c47 100644 --- a/mysql-test/suite/sql_sequence/replication.result +++ b/mysql-test/suite/sql_sequence/replication.result @@ -87,7 +87,7 @@ CREATE SEQUENCE `s2` ( ) ENGINE=InnoDB sequence=1; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '( `next_not_cached_value` bigint(21) NOT NULL, -`minimum_value` bigint(21) NOT NU' at line 1 +`minimum_value` bigint(21) NOT...' at line 1 CREATE TABLE `s2` ( `next_not_cached_value` bigint(21) NOT NULL, `minimum_value` bigint(21) NOT NULL, diff --git a/mysql-test/suite/sys_vars/r/innodb_compression_failure_threshold_pct_basic.result b/mysql-test/suite/sys_vars/r/innodb_compression_failure_threshold_pct_basic.result index ae556ceedb2..3a5eb46df68 100644 --- a/mysql-test/suite/sys_vars/r/innodb_compression_failure_threshold_pct_basic.result +++ b/mysql-test/suite/sys_vars/r/innodb_compression_failure_threshold_pct_basic.result @@ -36,7 +36,7 @@ SELECT @@global.innodb_compression_failure_threshold_pct; '#--------------------FN_DYNVARS_046_04-------------------------#' SET @@global.innodb_compression_failure_threshold_pct = -1; Warnings: -Warning 1292 Truncated incorrect innodb_compression_failure_thres value: '-1' +Warning 1292 Truncated incorrect innodb_compression_failure_th... value: '-1' SELECT @@global.innodb_compression_failure_threshold_pct; @@global.innodb_compression_failure_threshold_pct 0 @@ -57,7 +57,7 @@ SELECT @@global.innodb_compression_failure_threshold_pct; 0 SET @@global.innodb_compression_failure_threshold_pct = 101; Warnings: -Warning 1292 Truncated incorrect innodb_compression_failure_thres value: '101' +Warning 1292 Truncated incorrect innodb_compression_failure_th... value: '101' SELECT @@global.innodb_compression_failure_threshold_pct; @@global.innodb_compression_failure_threshold_pct 100 diff --git a/mysql-test/suite/sys_vars/r/innodb_defragment_fill_factor_n_recs_basic.result b/mysql-test/suite/sys_vars/r/innodb_defragment_fill_factor_n_recs_basic.result index ffbeb39fe33..a8ca081d0f0 100644 --- a/mysql-test/suite/sys_vars/r/innodb_defragment_fill_factor_n_recs_basic.result +++ b/mysql-test/suite/sys_vars/r/innodb_defragment_fill_factor_n_recs_basic.result @@ -19,13 +19,13 @@ SELECT @@global.innodb_defragment_fill_factor_n_recs; 1 SET @@global.innodb_defragment_fill_factor_n_recs = -1; Warnings: -Warning 1292 Truncated incorrect innodb_defragment_fill_factor_n_ value: '-1' +Warning 1292 Truncated incorrect innodb_defragment_fill_factor... value: '-1' SELECT @@global.innodb_defragment_fill_factor_n_recs; @@global.innodb_defragment_fill_factor_n_recs 1 SET @@global.innodb_defragment_fill_factor_n_recs = 10000; Warnings: -Warning 1292 Truncated incorrect innodb_defragment_fill_factor_n_ value: '10000' +Warning 1292 Truncated incorrect innodb_defragment_fill_factor... value: '10000' SELECT @@global.innodb_defragment_fill_factor_n_recs; @@global.innodb_defragment_fill_factor_n_recs 100 diff --git a/mysql-test/suite/sys_vars/r/innodb_limit_optimistic_insert_debug_basic.result b/mysql-test/suite/sys_vars/r/innodb_limit_optimistic_insert_debug_basic.result index 3d4f401aad1..589de8fa5fc 100644 --- a/mysql-test/suite/sys_vars/r/innodb_limit_optimistic_insert_debug_basic.result +++ b/mysql-test/suite/sys_vars/r/innodb_limit_optimistic_insert_debug_basic.result @@ -49,7 +49,7 @@ set global innodb_limit_optimistic_insert_debug='foo'; ERROR 42000: Incorrect argument type to variable 'innodb_limit_optimistic_insert_debug' set global innodb_limit_optimistic_insert_debug=-2; Warnings: -Warning 1292 Truncated incorrect innodb_limit_optimistic_insert_d value: '-2' +Warning 1292 Truncated incorrect innodb_limit_optimistic_inser... value: '-2' set global innodb_limit_optimistic_insert_debug=1e1; ERROR 42000: Incorrect argument type to variable 'innodb_limit_optimistic_insert_debug' SET @@global.innodb_limit_optimistic_insert_debug = @start_global_value; diff --git a/mysql-test/suite/sys_vars/r/innodb_merge_threshold_set_all_debug_basic.result b/mysql-test/suite/sys_vars/r/innodb_merge_threshold_set_all_debug_basic.result index 6e325d0be38..c05432fe2b9 100644 --- a/mysql-test/suite/sys_vars/r/innodb_merge_threshold_set_all_debug_basic.result +++ b/mysql-test/suite/sys_vars/r/innodb_merge_threshold_set_all_debug_basic.result @@ -10,13 +10,13 @@ SELECT @@global.innodb_merge_threshold_set_all_debug; 1 set global innodb_merge_threshold_set_all_debug = 51; Warnings: -Warning 1292 Truncated incorrect innodb_merge_threshold_set_all_d value: '51' +Warning 1292 Truncated incorrect innodb_merge_threshold_set_al... value: '51' SELECT @@global.innodb_merge_threshold_set_all_debug; @@global.innodb_merge_threshold_set_all_debug 50 set global innodb_merge_threshold_set_all_debug = 0; Warnings: -Warning 1292 Truncated incorrect innodb_merge_threshold_set_all_d value: '0' +Warning 1292 Truncated incorrect innodb_merge_threshold_set_al... value: '0' SELECT @@global.innodb_merge_threshold_set_all_debug; @@global.innodb_merge_threshold_set_all_debug 1 diff --git a/mysql-test/suite/sys_vars/r/innodb_purge_rseg_truncate_frequency_basic.result b/mysql-test/suite/sys_vars/r/innodb_purge_rseg_truncate_frequency_basic.result index 79eb0743dfa..65387032dc6 100644 --- a/mysql-test/suite/sys_vars/r/innodb_purge_rseg_truncate_frequency_basic.result +++ b/mysql-test/suite/sys_vars/r/innodb_purge_rseg_truncate_frequency_basic.result @@ -36,13 +36,13 @@ SELECT @@global.innodb_purge_rseg_truncate_frequency; '#--------------------FN_DYNVARS_046_05-------------------------#' SET @@global.innodb_purge_rseg_truncate_frequency = -1; Warnings: -Warning 1292 Truncated incorrect innodb_purge_rseg_truncate_frequ value: '-1' +Warning 1292 Truncated incorrect innodb_purge_rseg_truncate_fr... value: '-1' SELECT @@global.innodb_purge_rseg_truncate_frequency; @@global.innodb_purge_rseg_truncate_frequency 1 SET @@global.innodb_purge_rseg_truncate_frequency = -1024; Warnings: -Warning 1292 Truncated incorrect innodb_purge_rseg_truncate_frequ value: '-1024' +Warning 1292 Truncated incorrect innodb_purge_rseg_truncate_fr... value: '-1024' SELECT @@global.innodb_purge_rseg_truncate_frequency; @@global.innodb_purge_rseg_truncate_frequency 1 @@ -103,7 +103,7 @@ SELECT @@global.innodb_purge_rseg_truncate_frequency; 1 SET @@global.innodb_purge_rseg_truncate_frequency = FALSE; Warnings: -Warning 1292 Truncated incorrect innodb_purge_rseg_truncate_frequ value: '0' +Warning 1292 Truncated incorrect innodb_purge_rseg_truncate_fr... value: '0' SELECT @@global.innodb_purge_rseg_truncate_frequency; @@global.innodb_purge_rseg_truncate_frequency 1 diff --git a/mysql-test/suite/sys_vars/r/innodb_stats_persistent_sample_pages_basic.result b/mysql-test/suite/sys_vars/r/innodb_stats_persistent_sample_pages_basic.result index ec211b693df..68ba8bbfb4a 100644 --- a/mysql-test/suite/sys_vars/r/innodb_stats_persistent_sample_pages_basic.result +++ b/mysql-test/suite/sys_vars/r/innodb_stats_persistent_sample_pages_basic.result @@ -45,7 +45,7 @@ select @@global.innodb_stats_persistent_sample_pages; 20 SET global innodb_stats_persistent_sample_pages=0; Warnings: -Warning 1292 Truncated incorrect innodb_stats_persistent_sample_p value: '0' +Warning 1292 Truncated incorrect innodb_stats_persistent_sampl... value: '0' SELECT @@global.innodb_stats_persistent_sample_pages; @@global.innodb_stats_persistent_sample_pages 1 @@ -71,7 +71,7 @@ SELECT @@global.innodb_stats_persistent_sample_pages; 10 SET global innodb_stats_persistent_sample_pages=-7; Warnings: -Warning 1292 Truncated incorrect innodb_stats_persistent_sample_p value: '-7' +Warning 1292 Truncated incorrect innodb_stats_persistent_sampl... value: '-7' SELECT @@global.innodb_stats_persistent_sample_pages; @@global.innodb_stats_persistent_sample_pages 1 diff --git a/mysql-test/suite/sys_vars/r/innodb_stats_transient_sample_pages_basic.result b/mysql-test/suite/sys_vars/r/innodb_stats_transient_sample_pages_basic.result index 1ea5ac3d3bc..4113b168f39 100644 --- a/mysql-test/suite/sys_vars/r/innodb_stats_transient_sample_pages_basic.result +++ b/mysql-test/suite/sys_vars/r/innodb_stats_transient_sample_pages_basic.result @@ -53,7 +53,7 @@ SET global innodb_stats_transient_sample_pages=' '; ERROR 42000: Incorrect argument type to variable 'innodb_stats_transient_sample_pages' SET global innodb_stats_transient_sample_pages=-7; Warnings: -Warning 1292 Truncated incorrect innodb_stats_transient_sample_pa value: '-7' +Warning 1292 Truncated incorrect innodb_stats_transient_sample... value: '-7' SELECT @@global.innodb_stats_transient_sample_pages; @@global.innodb_stats_transient_sample_pages 1 diff --git a/mysql-test/suite/sys_vars/r/innodb_tmpdir_basic.result b/mysql-test/suite/sys_vars/r/innodb_tmpdir_basic.result index be10c93b56b..0eebc758cf6 100644 --- a/mysql-test/suite/sys_vars/r/innodb_tmpdir_basic.result +++ b/mysql-test/suite/sys_vars/r/innodb_tmpdir_basic.result @@ -24,11 +24,11 @@ ERROR 42000: Incorrect argument type to variable 'innodb_tmpdir' set global innodb_tmpdir=1e1; ERROR 42000: Incorrect argument type to variable 'innodb_tmpdir' set global innodb_tmpdir=repeat('a',1000); -ERROR 42000: Variable 'innodb_tmpdir' can't be set to the value of 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' +ERROR 42000: Variable 'innodb_tmpdir' can't be set to the value of 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...' show warnings; Level Code Message Warning 1210 Path length should not exceed 512 bytes -Error 1231 Variable 'innodb_tmpdir' can't be set to the value of 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' +Error 1231 Variable 'innodb_tmpdir' can't be set to the value of 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...' SET @@global.innodb_tmpdir = @start_global_value; SELECT @@global.innodb_tmpdir; @@global.innodb_tmpdir diff --git a/mysql-test/suite/sys_vars/r/optimizer_selectivity_sampling_limit_basic.result b/mysql-test/suite/sys_vars/r/optimizer_selectivity_sampling_limit_basic.result index 4df024b9cec..54d5e796267 100644 --- a/mysql-test/suite/sys_vars/r/optimizer_selectivity_sampling_limit_basic.result +++ b/mysql-test/suite/sys_vars/r/optimizer_selectivity_sampling_limit_basic.result @@ -30,7 +30,7 @@ SELECT @@global.optimizer_selectivity_sampling_limit; 100 SET @@global.optimizer_selectivity_sampling_limit = 9; Warnings: -Warning 1292 Truncated incorrect optimizer_selectivity_sampling_l value: '9' +Warning 1292 Truncated incorrect optimizer_selectivity_samplin... value: '9' SELECT @@global.optimizer_selectivity_sampling_limit; @@global.optimizer_selectivity_sampling_limit 10 @@ -56,7 +56,7 @@ SELECT @@global.optimizer_selectivity_sampling_limit; 4294967295 SET @@global.optimizer_selectivity_sampling_limit = 4294967296; Warnings: -Warning 1292 Truncated incorrect optimizer_selectivity_sampling_l value: '4294967296' +Warning 1292 Truncated incorrect optimizer_selectivity_samplin... value: '4294967296' SELECT @@global.optimizer_selectivity_sampling_limit; @@global.optimizer_selectivity_sampling_limit 4294967295 @@ -66,7 +66,7 @@ SELECT @@session.optimizer_selectivity_sampling_limit; 100 SET @@session.optimizer_selectivity_sampling_limit = 9; Warnings: -Warning 1292 Truncated incorrect optimizer_selectivity_sampling_l value: '9' +Warning 1292 Truncated incorrect optimizer_selectivity_samplin... value: '9' SELECT @@session.optimizer_selectivity_sampling_limit; @@session.optimizer_selectivity_sampling_limit 10 @@ -92,7 +92,7 @@ SELECT @@session.optimizer_selectivity_sampling_limit; 4294967295 SET @@session.optimizer_selectivity_sampling_limit = 4294967296; Warnings: -Warning 1292 Truncated incorrect optimizer_selectivity_sampling_l value: '4294967296' +Warning 1292 Truncated incorrect optimizer_selectivity_samplin... value: '4294967296' SELECT @@session.optimizer_selectivity_sampling_limit; @@session.optimizer_selectivity_sampling_limit 4294967295 diff --git a/mysql-test/suite/sys_vars/r/optimizer_use_condition_selectivity_basic.result b/mysql-test/suite/sys_vars/r/optimizer_use_condition_selectivity_basic.result index 1e6d420a9d7..4b92a80be03 100644 --- a/mysql-test/suite/sys_vars/r/optimizer_use_condition_selectivity_basic.result +++ b/mysql-test/suite/sys_vars/r/optimizer_use_condition_selectivity_basic.result @@ -3,7 +3,7 @@ SET @start_session_value = @@session.optimizer_use_condition_selectivity; '#--------------------FN_DYNVARS_115_03-------------------------#' SET @@global.optimizer_use_condition_selectivity = 0; Warnings: -Warning 1292 Truncated incorrect optimizer_use_condition_selectiv value: '0' +Warning 1292 Truncated incorrect optimizer_use_condition_selec... value: '0' SELECT @@global.optimizer_use_condition_selectivity; @@global.optimizer_use_condition_selectivity 1 @@ -29,14 +29,14 @@ SELECT @@global.optimizer_use_condition_selectivity; 5 SET @@global.optimizer_use_condition_selectivity = 6; Warnings: -Warning 1292 Truncated incorrect optimizer_use_condition_selectiv value: '6' +Warning 1292 Truncated incorrect optimizer_use_condition_selec... value: '6' SELECT @@global.optimizer_use_condition_selectivity; @@global.optimizer_use_condition_selectivity 5 '#--------------------FN_DYNVARS_115_04-------------------------#' SET @@session.optimizer_use_condition_selectivity = 0; Warnings: -Warning 1292 Truncated incorrect optimizer_use_condition_selectiv value: '0' +Warning 1292 Truncated incorrect optimizer_use_condition_selec... value: '0' SELECT @@session.optimizer_use_condition_selectivity; @@session.optimizer_use_condition_selectivity 1 @@ -62,7 +62,7 @@ SELECT @@session.optimizer_use_condition_selectivity; 5 SET @@session.optimizer_use_condition_selectivity = 6; Warnings: -Warning 1292 Truncated incorrect optimizer_use_condition_selectiv value: '6' +Warning 1292 Truncated incorrect optimizer_use_condition_selec... value: '6' SELECT @@session.optimizer_use_condition_selectivity; @@session.optimizer_use_condition_selectivity 5 diff --git a/mysql-test/suite/sys_vars/r/sysvars_server_embedded.result b/mysql-test/suite/sys_vars/r/sysvars_server_embedded.result index 4ecf169b75e..e6a68346947 100644 --- a/mysql-test/suite/sys_vars/r/sysvars_server_embedded.result +++ b/mysql-test/suite/sys_vars/r/sysvars_server_embedded.result @@ -3405,7 +3405,7 @@ COMMAND_LINE_ARGUMENT REQUIRED VARIABLE_NAME TCP_KEEPALIVE_TIME VARIABLE_SCOPE GLOBAL VARIABLE_TYPE INT -VARIABLE_COMMENT Timeout, in milliseconds, with no activity until the first TCP keep-alive packet is sent.If set to 0, system dependent default is used. +VARIABLE_COMMENT Timeout, in seconds, with no activity until the first TCP keep-alive packet is sent.If set to 0, system dependent default is used. NUMERIC_MIN_VALUE 0 NUMERIC_MAX_VALUE 2147483 NUMERIC_BLOCK_SIZE 1 diff --git a/mysql-test/suite/sys_vars/r/sysvars_server_notembedded.result b/mysql-test/suite/sys_vars/r/sysvars_server_notembedded.result index 7d971bcdbad..d64f341f775 100644 --- a/mysql-test/suite/sys_vars/r/sysvars_server_notembedded.result +++ b/mysql-test/suite/sys_vars/r/sysvars_server_notembedded.result @@ -4095,7 +4095,7 @@ COMMAND_LINE_ARGUMENT REQUIRED VARIABLE_NAME TCP_KEEPALIVE_TIME VARIABLE_SCOPE GLOBAL VARIABLE_TYPE INT -VARIABLE_COMMENT Timeout, in milliseconds, with no activity until the first TCP keep-alive packet is sent.If set to 0, system dependent default is used. +VARIABLE_COMMENT Timeout, in seconds, with no activity until the first TCP keep-alive packet is sent.If set to 0, system dependent default is used. NUMERIC_MIN_VALUE 0 NUMERIC_MAX_VALUE 2147483 NUMERIC_BLOCK_SIZE 1 diff --git a/mysql-test/suite/versioning/r/alter.result b/mysql-test/suite/versioning/r/alter.result index 6563638c195..33c1d499088 100644 --- a/mysql-test/suite/versioning/r/alter.result +++ b/mysql-test/suite/versioning/r/alter.result @@ -54,7 +54,7 @@ add column trx_end timestamp(6) not null as row end invisible, add period for system_time(trx_start, trx_end), add system versioning; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'as row start invisible, -add column trx_end timestamp(6) not null as row end invi' at line 2 +add column trx_end timestamp(6) not null as row end i...' at line 2 alter table t add column trx_start timestamp(6) as row start invisible, add column trx_end timestamp(6) as row end invisible, @@ -687,3 +687,12 @@ add column c int without system versioning, change column c c int, change column b b int without system versioning; drop table t; +# +# MDEV-21688 Assertion or ER_WARN_DATA_OUT_OF_RANGE upon ALTER on previously versioned table +# +create or replace table t1 (a int) with system versioning; +insert into t1 values (128); +delete from t1; +set statement system_versioning_alter_history=keep for +alter table t1 drop system versioning, modify column a tinyint; +drop table t1; diff --git a/mysql-test/suite/versioning/r/partition.result b/mysql-test/suite/versioning/r/partition.result index 5c83731b88b..68512fbea6a 100644 --- a/mysql-test/suite/versioning/r/partition.result +++ b/mysql-test/suite/versioning/r/partition.result @@ -622,3 +622,42 @@ create table t2 (b int); insert into t2 values (1),(2); update t1, t2 set a = 1; drop table t1, t2; +# +# MDEV-20515 multi-update tries to position updated table by null reference +# +create or replace table t1 (a int); +insert into t1 values (0), (1); +create or replace table t2 (b int) with system versioning +partition by system_time +(partition p1 history, partition pn current); +insert into t2 values (0), (2); +update t1 left join t2 on a > b set b= 2 order by b; +drop table t1, t2; +# +# MDEV-17091 Assertion `old_part_id == m_last_part' failed in +# ha_partition::update_row or `part_id == m_last_part' in +# ha_partition::delete_row upon UPDATE/DELETE after dropping versioning +# +create or replace table t1 (pk int primary key, f int) engine=innodb +with system versioning +partition by key() partitions 2; +insert into t1 values (1,10),(2,20); +# expected to hit same partition +select * from t1 partition (p0); +pk f +1 10 +2 20 +alter table t1 drop system versioning; +# 1 and 2 are expected to be in different partitions +select * from t1 partition(p0); +pk f +1 10 +select * from t1 partition(p1); +pk f +2 20 +update t1 set f=pk; +delete from t1; +drop table t1; +# Test cleanup +drop database test; +create database test; diff --git a/mysql-test/suite/versioning/r/update.result b/mysql-test/suite/versioning/r/update.result index a2ec02a7ec1..f7901d11d2a 100644 --- a/mysql-test/suite/versioning/r/update.result +++ b/mysql-test/suite/versioning/r/update.result @@ -312,3 +312,10 @@ ERROR 42S22: Unknown column 'xx' in 'field list' drop procedure sp; drop view v1; drop table t1; +# +# MDEV-21342 Assertion in set_ok_status() upon spatial field error on system-versioned table +# +create or replace table t1 (f point, key(f)) with system versioning engine=myisam; +update t1 set f = null where f = 'foo'; +ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field +drop table t1; diff --git a/mysql-test/suite/versioning/t/alter.test b/mysql-test/suite/versioning/t/alter.test index 03c821a2254..83c3e911fad 100644 --- a/mysql-test/suite/versioning/t/alter.test +++ b/mysql-test/suite/versioning/t/alter.test @@ -581,3 +581,15 @@ alter table t change column b b int without system versioning; drop table t; + +--echo # +--echo # MDEV-21688 Assertion or ER_WARN_DATA_OUT_OF_RANGE upon ALTER on previously versioned table +--echo # +create or replace table t1 (a int) with system versioning; +insert into t1 values (128); +delete from t1; +set statement system_versioning_alter_history=keep for +alter table t1 drop system versioning, modify column a tinyint; + +# cleanup +drop table t1; diff --git a/mysql-test/suite/versioning/t/partition.test b/mysql-test/suite/versioning/t/partition.test index 98af71277c8..a03fb33108d 100644 --- a/mysql-test/suite/versioning/t/partition.test +++ b/mysql-test/suite/versioning/t/partition.test @@ -558,4 +558,44 @@ update t1, t2 set a = 1; # cleanup drop table t1, t2; +--echo # +--echo # MDEV-20515 multi-update tries to position updated table by null reference +--echo # +create or replace table t1 (a int); +insert into t1 values (0), (1); + +create or replace table t2 (b int) with system versioning +partition by system_time +(partition p1 history, partition pn current); + +insert into t2 values (0), (2); +update t1 left join t2 on a > b set b= 2 order by b; + +# cleanup +drop table t1, t2; + --source suite/versioning/common_finish.inc +--echo # +--echo # MDEV-17091 Assertion `old_part_id == m_last_part' failed in +--echo # ha_partition::update_row or `part_id == m_last_part' in +--echo # ha_partition::delete_row upon UPDATE/DELETE after dropping versioning +--echo # +create or replace table t1 (pk int primary key, f int) engine=innodb + with system versioning + partition by key() partitions 2; +insert into t1 values (1,10),(2,20); +--echo # expected to hit same partition +select * from t1 partition (p0); +alter table t1 drop system versioning; + +--echo # 1 and 2 are expected to be in different partitions +select * from t1 partition(p0); +select * from t1 partition(p1); + +update t1 set f=pk; +delete from t1; +drop table t1; + +--echo # Test cleanup +drop database test; +create database test; diff --git a/mysql-test/suite/versioning/t/update.test b/mysql-test/suite/versioning/t/update.test index 71e946e6c2b..5b0a9eb5c42 100644 --- a/mysql-test/suite/versioning/t/update.test +++ b/mysql-test/suite/versioning/t/update.test @@ -235,4 +235,14 @@ drop procedure sp; drop view v1; drop table t1; +--echo # +--echo # MDEV-21342 Assertion in set_ok_status() upon spatial field error on system-versioned table +--echo # +create or replace table t1 (f point, key(f)) with system versioning engine=myisam; +--error ER_CANT_CREATE_GEOMETRY_OBJECT +update t1 set f = null where f = 'foo'; + +# cleanup +drop table t1; + source suite/versioning/common_finish.inc; diff --git a/mysys/hash.c b/mysys/hash.c index bf2c176f9df..077895ed677 100644 --- a/mysys/hash.c +++ b/mysys/hash.c @@ -116,17 +116,23 @@ my_hash_init2(HASH *hash, uint growth_size, CHARSET_INFO *charset, static inline void my_hash_free_elements(HASH *hash) { uint records= hash->records; + if (records == 0) + return; + /* Set records to 0 early to guard against anyone looking at the structure during the free process */ hash->records= 0; + if (hash->free) { HASH_LINK *data=dynamic_element(&hash->array,0,HASH_LINK*); HASH_LINK *end= data + records; - while (data < end) + do + { (*hash->free)((data++)->data); + } while (data < end); } } diff --git a/mysys/my_getncpus.c b/mysys/my_getncpus.c index 6890de4f827..0d081b72d11 100644 --- a/mysys/my_getncpus.c +++ b/mysys/my_getncpus.c @@ -39,7 +39,11 @@ int my_getncpus(void) configured via core affinity. */ #if (defined(__linux__) || defined(__FreeBSD__)) && defined(HAVE_PTHREAD_GETAFFINITY_NP) +#ifdef __linux__ cpu_set_t set; +#else + cpuset_t set; +#endif if (pthread_getaffinity_np(pthread_self(), sizeof(set), &set) == 0) { #ifdef CPU_COUNT diff --git a/mysys/my_lib.c b/mysys/my_lib.c index 8715c4a3333..b61a02449bc 100644 --- a/mysys/my_lib.c +++ b/mysys/my_lib.c @@ -1,4 +1,5 @@ /* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. + Copyright (c) 2008, 2020, MariaDB Corporation. 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 @@ -109,7 +110,7 @@ static char *directory_file_name (char * dst, const char *src) MY_DIR *my_dir(const char *path, myf MyFlags) { - MY_DIR_HANDLE *dirh= 0; + MY_DIR_HANDLE *dirh; FILEINFO finfo; DIR *dirp; struct dirent *dp; @@ -122,10 +123,13 @@ MY_DIR *my_dir(const char *path, myf MyFlags) tmp_file= directory_file_name(tmp_path, path); if (!(dirp= opendir(tmp_path))) - goto error; + { + my_errno= errno; + goto err_open; + } if (!(dirh= my_malloc(sizeof(*dirh), MyFlags | MY_ZEROFILL))) - goto error; + goto err_alloc; if (my_init_dynamic_array(&dirh->array, sizeof(FILEINFO), ENTRIES_START_SIZE, ENTRIES_INCREMENT, @@ -179,11 +183,11 @@ MY_DIR *my_dir(const char *path, myf MyFlags) DBUG_RETURN(&dirh->dir); - error: - my_errno=errno; - if (dirp) - (void) closedir(dirp); +error: my_dirend(&dirh->dir); +err_alloc: + (void) closedir(dirp); +err_open: if (MyFlags & (MY_FAE | MY_WME)) my_error(EE_DIR, MYF(ME_BELL), path, my_errno); DBUG_RETURN(NULL); diff --git a/plugin/server_audit/server_audit.c b/plugin/server_audit/server_audit.c index b371cb0e706..b1ede4644e6 100644 --- a/plugin/server_audit/server_audit.c +++ b/plugin/server_audit/server_audit.c @@ -1,5 +1,5 @@ /* Copyright (C) 2013, 2015, Alexey Botchkov and SkySQL Ab - Copyright (c) 2019, MariaDB Corporation. + Copyright (c) 2019, 2020, MariaDB Corporation. 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 @@ -764,7 +764,7 @@ static int user_coll_fill(struct user_coll *c, char *users, if (cmp_user && take_over_cmp) { ADD_ATOMIC(internal_stop_logging, 1); - CLIENT_ERROR(1, "User '%.*s' was removed from the" + CLIENT_ERROR(1, "User '%.*b' was removed from the" " server_audit_excl_users.", MYF(ME_WARNING), (int) cmp_length, users); ADD_ATOMIC(internal_stop_logging, -1); @@ -774,7 +774,7 @@ static int user_coll_fill(struct user_coll *c, char *users, else if (cmp_user) { ADD_ATOMIC(internal_stop_logging, 1); - CLIENT_ERROR(1, "User '%.*s' is in the server_audit_incl_users, " + CLIENT_ERROR(1, "User '%.*b' is in the server_audit_incl_users, " "so wasn't added.", MYF(ME_WARNING), (int) cmp_length, users); ADD_ATOMIC(internal_stop_logging, -1); remove_user(users); diff --git a/sql/field_comp.cc b/sql/field_comp.cc index eb4ae42aa4d..ab97c8ccf08 100644 --- a/sql/field_comp.cc +++ b/sql/field_comp.cc @@ -67,10 +67,12 @@ static uint compress_zlib(THD *thd, char *to, const char *from, uint length) stream.zfree= 0; stream.opaque= 0; - if (deflateInit2(&stream, level, Z_DEFLATED, wbits, 8, strategy) == Z_OK && - deflate(&stream, Z_FINISH) == Z_STREAM_END && - deflateEnd(&stream) == Z_OK) - return (uint) (stream.next_out - (Bytef*) to); + if (deflateInit2(&stream, level, Z_DEFLATED, wbits, 8, strategy) == Z_OK) + { + int res= deflate(&stream, Z_FINISH); + if (deflateEnd(&stream) == Z_OK && res == Z_STREAM_END) + return (uint) (stream.next_out - (Bytef*) to); + } } return 0; } @@ -117,12 +119,14 @@ static int uncompress_zlib(String *to, const uchar *from, uint from_length, stream.zfree= 0; stream.opaque= 0; - if (inflateInit2(&stream, wbits) == Z_OK && - inflate(&stream, Z_FINISH) == Z_STREAM_END && - inflateEnd(&stream) == Z_OK) + if (inflateInit2(&stream, wbits) == Z_OK) { - to->length(stream.total_out); - return 0; + int res= inflate(&stream, Z_FINISH); + if (inflateEnd(&stream) == Z_OK && res == Z_STREAM_END) + { + to->length(stream.total_out); + return 0; + } } my_error(ER_ZLIB_Z_DATA_ERROR, MYF(0)); return 1; diff --git a/sql/handler.cc b/sql/handler.cc index 178830a87b1..2f64ff923e7 100644 --- a/sql/handler.cc +++ b/sql/handler.cc @@ -1,5 +1,5 @@ /* Copyright (c) 2000, 2016, Oracle and/or its affiliates. - Copyright (c) 2009, 2019, MariaDB Corporation. + Copyright (c) 2009, 2020, MariaDB Corporation. 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 @@ -1994,29 +1994,33 @@ int ha_commit_or_rollback_by_xid(XID *xid, bool commit) #ifndef DBUG_OFF -/** - @note - This does not need to be multi-byte safe or anything -*/ -static char* xid_to_str(char *buf, XID *xid) +/** Converts XID to string. + +@param[out] buf output buffer +@param[in] xid XID to convert + +@return pointer to converted string + +@note This does not need to be multi-byte safe or anything */ +char *xid_to_str(char *buf, const XID &xid) { int i; char *s=buf; *s++='\''; - for (i=0; i < xid->gtrid_length+xid->bqual_length; i++) + for (i= 0; i < xid.gtrid_length + xid.bqual_length; i++) { - uchar c=(uchar)xid->data[i]; + uchar c= (uchar) xid.data[i]; /* is_next_dig is set if next character is a number */ bool is_next_dig= FALSE; if (i < XIDDATASIZE) { - char ch= xid->data[i+1]; + char ch= xid.data[i + 1]; is_next_dig= (ch >= '0' && ch <='9'); } - if (i == xid->gtrid_length) + if (i == xid.gtrid_length) { *s++='\''; - if (xid->bqual_length) + if (xid.bqual_length) { *s++='.'; *s++='\''; @@ -2139,7 +2143,7 @@ static my_bool xarecover_handlerton(THD *unused, plugin_ref plugin, { DBUG_EXECUTE("info",{ char buf[XIDDATASIZE*4+6]; - _db_doprnt_("ignore xid %s", xid_to_str(buf, info->list+i)); + _db_doprnt_("ignore xid %s", xid_to_str(buf, info->list[i])); }); xid_cache_insert(info->list + i); info->found_foreign_xids++; @@ -2166,7 +2170,7 @@ static my_bool xarecover_handlerton(THD *unused, plugin_ref plugin, { DBUG_EXECUTE("info",{ char buf[XIDDATASIZE*4+6]; - _db_doprnt_("commit xid %s", xid_to_str(buf, info->list+i)); + _db_doprnt_("commit xid %s", xid_to_str(buf, info->list[i])); }); } } @@ -2177,7 +2181,7 @@ static my_bool xarecover_handlerton(THD *unused, plugin_ref plugin, { DBUG_EXECUTE("info",{ char buf[XIDDATASIZE*4+6]; - _db_doprnt_("rollback xid %s", xid_to_str(buf, info->list+i)); + _db_doprnt_("rollback xid %s", xid_to_str(buf, info->list[i])); }); } } diff --git a/sql/handler.h b/sql/handler.h index e9b52b16aa8..0c9d60b7c90 100644 --- a/sql/handler.h +++ b/sql/handler.h @@ -2,7 +2,7 @@ #define HANDLER_INCLUDED /* Copyright (c) 2000, 2019, Oracle and/or its affiliates. - Copyright (c) 2009, 2019, MariaDB + Copyright (c) 2009, 2020, MariaDB This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License @@ -5083,4 +5083,15 @@ void print_keydup_error(TABLE *table, KEY *key, myf errflag); int del_global_index_stat(THD *thd, TABLE* table, KEY* key_info); int del_global_table_stat(THD *thd, const LEX_CSTRING *db, const LEX_CSTRING *table); +#ifndef DBUG_OFF +/** Converts XID to string. + +@param[out] buf output buffer +@param[in] xid XID to convert + +@return pointer to converted string + +@note This does not need to be multi-byte safe or anything */ +char *xid_to_str(char *buf, const XID &xid); +#endif // !DBUG_OFF #endif /* HANDLER_INCLUDED */ diff --git a/sql/opt_range.cc b/sql/opt_range.cc index 0528dfcadc6..899d1fc9782 100644 --- a/sql/opt_range.cc +++ b/sql/opt_range.cc @@ -1,5 +1,5 @@ /* Copyright (c) 2000, 2015, Oracle and/or its affiliates. - Copyright (c) 2008, 2019, MariaDB + Copyright (c) 2008, 2020, MariaDB 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 @@ -357,7 +357,8 @@ QUICK_RANGE_SELECT *get_quick_select(PARAM *param,uint index, static TRP_RANGE *get_key_scans_params(PARAM *param, SEL_TREE *tree, bool index_read_must_be_used, bool update_tbl_stats, - double read_time); + double read_time, + bool ror_scans_required); static TRP_INDEX_INTERSECT *get_best_index_intersect(PARAM *param, SEL_TREE *tree, double read_time); @@ -2637,7 +2638,7 @@ static int fill_used_fields_bitmap(PARAM *param) force_quick_range is really needed. RETURN - -1 if impossible select (i.e. certainly no rows will be selected) + -1 if error or impossible select (i.e. certainly no rows will be selected) 0 if can't use quick_select 1 if found usable ranges and quick select has been successfully created. */ @@ -2737,7 +2738,7 @@ int SQL_SELECT::test_quick_select(THD *thd, key_map keys_to_use, { thd->no_errors=0; free_root(&alloc,MYF(0)); // Return memory & allocator - DBUG_RETURN(0); // Can't use range + DBUG_RETURN(-1); // Error } key_parts= param.key_parts; @@ -2805,7 +2806,7 @@ int SQL_SELECT::test_quick_select(THD *thd, key_map keys_to_use, { thd->no_errors=0; free_root(&alloc,MYF(0)); // Return memory & allocator - DBUG_RETURN(0); // Can't use range + DBUG_RETURN(-1); // Error } thd->mem_root= &alloc; @@ -2861,6 +2862,13 @@ int SQL_SELECT::test_quick_select(THD *thd, key_map keys_to_use, tree= NULL; } } + else if (thd->is_error()) + { + thd->no_errors=0; + thd->mem_root= param.old_root; + free_root(&alloc, MYF(0)); + DBUG_RETURN(-1); + } } /* @@ -2910,7 +2918,7 @@ int SQL_SELECT::test_quick_select(THD *thd, key_map keys_to_use, /* Get best 'range' plan and prepare data for making other plans */ if ((range_trp= get_key_scans_params(¶m, tree, only_single_index_range_scan, TRUE, - best_read_time))) + best_read_time, FALSE))) { best_trp= range_trp; best_read_time= best_trp->read_cost; @@ -5078,7 +5086,8 @@ TABLE_READ_PLAN *get_best_disjunct_quick(PARAM *param, SEL_IMERGE *imerge, DBUG_EXECUTE("info", print_sel_tree(param, *ptree, &(*ptree)->keys_map, "tree in SEL_IMERGE");); Json_writer_object trace_idx(thd); - if (!(*cur_child= get_key_scans_params(param, *ptree, TRUE, FALSE, read_time))) + if (!(*cur_child= get_key_scans_params(param, *ptree, TRUE, FALSE, + read_time, TRUE))) { /* One of index scans in this index_merge is more expensive than entire @@ -5440,7 +5449,7 @@ TABLE_READ_PLAN *merge_same_index_scans(PARAM *param, SEL_IMERGE *imerge, index merge retrievals are not well calibrated */ trp= get_key_scans_params(param, *imerge->trees, FALSE, TRUE, - read_time); + read_time, TRUE); } DBUG_RETURN(trp); @@ -7324,6 +7333,7 @@ TRP_ROR_INTERSECT *get_best_covering_ror_intersect(PARAM *param, index_read_must_be_used if TRUE, assume 'index only' option will be set (except for clustered PK indexes) read_time don't create read plans with cost > read_time. + ror_scans_required set to TRUE for index merge RETURN Best range read plan NULL if no plan found or error occurred @@ -7332,7 +7342,8 @@ TRP_ROR_INTERSECT *get_best_covering_ror_intersect(PARAM *param, static TRP_RANGE *get_key_scans_params(PARAM *param, SEL_TREE *tree, bool index_read_must_be_used, bool update_tbl_stats, - double read_time) + double read_time, + bool ror_scans_required) { uint idx, UNINIT_VAR(best_idx); SEL_ARG *key_to_read= NULL; @@ -7386,7 +7397,7 @@ static TRP_RANGE *get_key_scans_params(PARAM *param, SEL_TREE *tree, found_records= check_quick_select(param, idx, read_index_only, key, update_tbl_stats, &mrr_flags, &buf_size, &cost, &is_ror_scan); - if (!is_ror_scan && + if (ror_scans_required && !is_ror_scan && !optimizer_flag(param->thd, OPTIMIZER_SWITCH_INDEX_MERGE_SORT_UNION)) continue; @@ -9773,7 +9784,7 @@ key_and(RANGE_OPT_PARAM *param, SEL_ARG *key1, SEL_ARG *key2, uint clone_flag) if (key2->next_key_part) { key1->use_count--; // Incremented in and_all_keys - return and_all_keys(param, key1, key2, clone_flag); + return and_all_keys(param, key1, key2->next_key_part, clone_flag); } key2->use_count--; // Key2 doesn't have a tree } diff --git a/sql/sql_lex.cc b/sql/sql_lex.cc index 39e8f42b409..ebc73e54674 100644 --- a/sql/sql_lex.cc +++ b/sql/sql_lex.cc @@ -7460,7 +7460,8 @@ Item *LEX::create_item_limit(THD *thd, const Lex_ident_cli_st *ca) if (unlikely(!(item= new (thd->mem_root) Item_splocal(thd, rh, &sa, spv->offset, spv->type_handler(), - pos.pos(), pos.length())))) + clone_spec_offset ? 0 : pos.pos(), + clone_spec_offset ? 0 : pos.length())))) return NULL; #ifdef DBUG_ASSERT_EXISTS item->m_sp= sphead; @@ -7559,14 +7560,15 @@ Item *LEX::create_item_ident_sp(THD *thd, Lex_ident_sys_st *name, } Query_fragment pos(thd, sphead, start, end); + uint f_pos= clone_spec_offset ? 0 : pos.pos(); + uint f_length= clone_spec_offset ? 0 : pos.length(); Item_splocal *splocal= spv->field_def.is_column_type_ref() ? new (thd->mem_root) Item_splocal_with_delayed_data_type(thd, rh, name, spv->offset, - pos.pos(), - pos.length()) : + f_pos, f_length) : new (thd->mem_root) Item_splocal(thd, rh, name, spv->offset, spv->type_handler(), - pos.pos(), pos.length()); + f_pos, f_length); if (unlikely(splocal == NULL)) return NULL; #ifdef DBUG_ASSERT_EXISTS diff --git a/sql/sql_partition.cc b/sql/sql_partition.cc index 82a77d3638f..e4015baa40c 100644 --- a/sql/sql_partition.cc +++ b/sql/sql_partition.cc @@ -6012,6 +6012,24 @@ the generated partition syntax in a correct manner. *partition_changed= true; } } + + // In case of PARTITION BY KEY(), check if primary key has changed + // System versioning also implicitly adds/removes primary key parts + if (alter_info->partition_flags == 0 && part_info->list_of_part_fields + && part_info->part_field_list.elements == 0) + { + if (alter_info->flags & (ALTER_DROP_SYSTEM_VERSIONING | + ALTER_ADD_SYSTEM_VERSIONING)) + *partition_changed= true; + + List_iterator it(alter_info->key_list); + Key *key; + while((key= it++) && !*partition_changed) + { + if (key->type == Key::PRIMARY) + *partition_changed= true; + } + } /* Set up partition default_engine_type either from the create_info or from the previus table diff --git a/sql/sql_string.h b/sql/sql_string.h index 7d7d9f08748..3050a5ef464 100644 --- a/sql/sql_string.h +++ b/sql/sql_string.h @@ -79,7 +79,7 @@ public: Well_formed_prefix(CHARSET_INFO *cs, const char *str, size_t length) :Well_formed_prefix_status(cs, str, str + length, length), m_str(str) { } - Well_formed_prefix(CHARSET_INFO *cs, LEX_STRING str, size_t nchars) + Well_formed_prefix(CHARSET_INFO *cs, LEX_CSTRING str, size_t nchars) :Well_formed_prefix_status(cs, str.str, str.str + str.length, nchars), m_str(str.str) { } diff --git a/sql/sql_table.cc b/sql/sql_table.cc index 7c4a4956a93..695d8ee729c 100644 --- a/sql/sql_table.cc +++ b/sql/sql_table.cc @@ -4397,11 +4397,8 @@ bool validate_comment_length(THD *thd, LEX_CSTRING *comment, size_t max_len, if (comment->length == 0) DBUG_RETURN(false); - if (max_len > comment->length) - max_len= comment->length; - size_t tmp_len= - Well_formed_prefix(system_charset_info, comment->str, max_len).length(); + Well_formed_prefix(system_charset_info, *comment, max_len).length(); if (tmp_len < comment->length) { if (thd->is_strict_mode()) @@ -10586,7 +10583,6 @@ copy_data_between_tables(THD *thd, TABLE *from, TABLE *to, bool make_versioned= !from->versioned() && to->versioned(); bool make_unversioned= from->versioned() && !to->versioned(); bool keep_versioned= from->versioned() && to->versioned(); - bool drop_history= false; // XXX Field *to_row_start= NULL, *to_row_end= NULL, *from_row_end= NULL; MYSQL_TIME query_start; DBUG_ENTER("copy_data_between_tables"); @@ -10717,10 +10713,6 @@ copy_data_between_tables(THD *thd, TABLE *from, TABLE *to, { from_row_end= from->vers_end_field(); } - else if (keep_versioned && drop_history) - { - from_row_end= from->vers_end_field(); - } if (from_row_end) bitmap_set_bit(from->read_set, from_row_end->field_index); @@ -10757,6 +10749,13 @@ copy_data_between_tables(THD *thd, TABLE *from, TABLE *to, error= 1; break; } + + if (make_unversioned) + { + if (!from_row_end->is_max()) + continue; // Drop history rows. + } + if (unlikely(++thd->progress.counter >= time_to_report_progress)) { time_to_report_progress+= MY_HOW_OFTEN_TO_WRITE/10; @@ -10776,20 +10775,12 @@ copy_data_between_tables(THD *thd, TABLE *from, TABLE *to, copy_ptr->do_copy(copy_ptr); } - if (drop_history && from_row_end && !from_row_end->is_max()) - continue; - if (make_versioned) { to_row_start->set_notnull(); to_row_start->store_time(&query_start); to_row_end->set_max(); } - else if (make_unversioned) - { - if (!from_row_end->is_max()) - continue; // Drop history rows. - } prev_insert_id= to->file->next_insert_id; if (to->default_field) diff --git a/sql/sql_update.cc b/sql/sql_update.cc index 0d2860de19f..2095f99d1ac 100644 --- a/sql/sql_update.cc +++ b/sql/sql_update.cc @@ -1,5 +1,5 @@ /* Copyright (c) 2000, 2016, Oracle and/or its affiliates. - Copyright (c) 2011, 2016, MariaDB + Copyright (c) 2011, 2020, MariaDB 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 @@ -2589,6 +2589,9 @@ int multi_update::send_data(List ¬_used_values) TABLE *tmp_table= tmp_tables[offset]; if (copy_funcs(tmp_table_param[offset].items_to_copy, thd)) DBUG_RETURN(1); + /* rowid field is NULL if join tmp table has null row from outer join */ + if (tmp_table->field[0]->is_null()) + continue; /* Store regular updated fields in the row. */ DBUG_ASSERT(1 + unupdated_check_opt_tables.elements == tmp_table_param[offset].func_count); @@ -2786,6 +2789,7 @@ int multi_update::do_updates() uint field_num= 0; do { + DBUG_ASSERT(!tmp_table->field[field_num]->is_null()); String rowid; tmp_table->field[field_num]->val_str(&rowid); if (unlikely((local_error= tbl->file->ha_rnd_pos(tbl->record[0], diff --git a/sql/sys_vars.cc b/sql/sys_vars.cc index 1c47f652f4c..2eabec54b6e 100644 --- a/sql/sys_vars.cc +++ b/sql/sys_vars.cc @@ -5814,7 +5814,7 @@ vio_keepalive_opts opt_vio_keepalive; static Sys_var_int Sys_keepalive_time( "tcp_keepalive_time", - "Timeout, in milliseconds, with no activity until the first TCP keep-alive packet is sent." + "Timeout, in seconds, with no activity until the first TCP keep-alive packet is sent." "If set to 0, system dependent default is used.", AUTO_SET GLOBAL_VAR(opt_vio_keepalive.idle), CMD_LINE(REQUIRED_ARG), VALID_RANGE(0, INT_MAX32/1000), DEFAULT(0), diff --git a/storage/innobase/dict/dict0mem.cc b/storage/innobase/dict/dict0mem.cc index c36a15b80a8..4c5e8b1ed72 100644 --- a/storage/innobase/dict/dict0mem.cc +++ b/storage/innobase/dict/dict0mem.cc @@ -2,7 +2,7 @@ Copyright (c) 1996, 2018, Oracle and/or its affiliates. All Rights Reserved. Copyright (c) 2012, Facebook Inc. -Copyright (c) 2013, 2019, MariaDB Corporation. +Copyright (c) 2013, 2020, MariaDB Corporation. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software @@ -607,9 +607,10 @@ dict_mem_table_col_rename_low( foreign->foreign_col_names, foreign->n_fields, NULL, true, false, NULL, NULL, NULL); - /* There must be an equivalent index in this case. */ - ut_ad(new_index != NULL); + /* New index can be null if InnoDB already dropped + the foreign index when FOREIGN_KEY_CHECKS is + disabled */ foreign->foreign_index = new_index; } else { diff --git a/storage/innobase/fil/fil0fil.cc b/storage/innobase/fil/fil0fil.cc index b2fe9c01ca0..a41a95025fd 100644 --- a/storage/innobase/fil/fil0fil.cc +++ b/storage/innobase/fil/fil0fil.cc @@ -3612,6 +3612,7 @@ fil_ibd_discover( case SRV_OPERATION_RESTORE_DELTA: ut_ad(0); break; + case SRV_OPERATION_RESTORE_ROLLBACK_XA: case SRV_OPERATION_RESTORE_EXPORT: case SRV_OPERATION_RESTORE: break; @@ -3709,7 +3710,7 @@ fil_ibd_load( return(FIL_LOAD_OK); } - if (srv_operation == SRV_OPERATION_RESTORE) { + if (is_mariabackup_restore()) { /* Replace absolute DATA DIRECTORY file paths with short names relative to the backup directory. */ if (const char* name = strrchr(filename, OS_PATH_SEPARATOR)) { diff --git a/storage/innobase/handler/ha_innodb.cc b/storage/innobase/handler/ha_innodb.cc index c8c9b92f727..fd4ff0aeffa 100644 --- a/storage/innobase/handler/ha_innodb.cc +++ b/storage/innobase/handler/ha_innodb.cc @@ -1363,18 +1363,6 @@ innobase_commit_by_xid( handlerton* hton, /*!< in: InnoDB handlerton */ XID* xid); /*!< in: X/Open XA transaction identification */ -/*******************************************************************//** -This function is used to rollback one X/Open XA distributed transaction -which is in the prepared state -@return 0 or error number */ -static -int -innobase_rollback_by_xid( -/*=====================*/ - handlerton* hton, /*!< in: InnoDB handlerton */ - XID* xid); /*!< in: X/Open XA transaction - identification */ - /** Remove all tables in the named database inside InnoDB. @param[in] hton handlerton from InnoDB @param[in] path Database path; Inside InnoDB the name of the last @@ -3522,12 +3510,8 @@ ha_innobase::init_table_handle_for_HANDLER(void) reset_template(); } -/*********************************************************************//** -Free tablespace resources allocated. */ -static -void -innobase_space_shutdown() -/*=====================*/ +/** Free tablespace resources allocated. */ +void innobase_space_shutdown() { DBUG_ENTER("innobase_space_shutdown"); @@ -17101,17 +17085,14 @@ innobase_commit_by_xid( } } -/*******************************************************************//** -This function is used to rollback one X/Open XA distributed transaction +/** This function is used to rollback one X/Open XA distributed transaction which is in the prepared state + +@param[in] hton InnoDB handlerton +@param[in] xid X/Open XA transaction identification + @return 0 or error number */ -static -int -innobase_rollback_by_xid( -/*=====================*/ - handlerton* hton, /*!< in: InnoDB handlerton */ - XID* xid) /*!< in: X/Open XA transaction - identification */ +int innobase_rollback_by_xid(handlerton* hton, XID* xid) { DBUG_ASSERT(hton == innodb_hton_ptr); diff --git a/storage/innobase/handler/ha_innodb.h b/storage/innobase/handler/ha_innodb.h index 3e3dffbc7a9..c0054287cd4 100644 --- a/storage/innobase/handler/ha_innodb.h +++ b/storage/innobase/handler/ha_innodb.h @@ -970,3 +970,15 @@ ib_push_frm_error( @return true if index column length exceeds limit */ MY_ATTRIBUTE((warn_unused_result)) bool too_big_key_part_length(size_t max_field_len, const KEY& key); + +/** This function is used to rollback one X/Open XA distributed transaction +which is in the prepared state + +@param[in] hton InnoDB handlerton +@param[in] xid X/Open XA transaction identification + +@return 0 or error number */ +int innobase_rollback_by_xid(handlerton* hton, XID* xid); + +/** Free tablespace resources allocated. */ +void innobase_space_shutdown(); diff --git a/storage/innobase/include/srv0srv.h b/storage/innobase/include/srv0srv.h index 36d50c4a773..9456b5a1685 100644 --- a/storage/innobase/include/srv0srv.h +++ b/storage/innobase/include/srv0srv.h @@ -491,6 +491,8 @@ enum srv_operation_mode { SRV_OPERATION_BACKUP, /** Mariabackup restoring a backup for subsequent --copy-back */ SRV_OPERATION_RESTORE, + /** Mariabackup restoring a backup with rolling back prepared XA's*/ + SRV_OPERATION_RESTORE_ROLLBACK_XA, /** Mariabackup restoring the incremental part of a backup */ SRV_OPERATION_RESTORE_DELTA, /** Mariabackup restoring a backup for subsequent --export */ @@ -500,6 +502,21 @@ enum srv_operation_mode { /** Current mode of operation */ extern enum srv_operation_mode srv_operation; +inline bool is_mariabackup_restore() +{ + /* To rollback XA's trx_sys must be initialized, the rest is the same + as regular backup restore, that is why we join this two operations in + the most cases. */ + return srv_operation == SRV_OPERATION_RESTORE + || srv_operation == SRV_OPERATION_RESTORE_ROLLBACK_XA; +} + +inline bool is_mariabackup_restore_or_export() +{ + return is_mariabackup_restore() + || srv_operation == SRV_OPERATION_RESTORE_EXPORT; +} + extern my_bool srv_print_innodb_monitor; extern my_bool srv_print_innodb_lock_monitor; extern ibool srv_print_verbose_log; diff --git a/storage/innobase/log/log0recv.cc b/storage/innobase/log/log0recv.cc index 1c96a43715b..bf5c13c7a47 100644 --- a/storage/innobase/log/log0recv.cc +++ b/storage/innobase/log/log0recv.cc @@ -401,8 +401,7 @@ fil_name_process( } ut_ad(srv_operation == SRV_OPERATION_NORMAL - || srv_operation == SRV_OPERATION_RESTORE - || srv_operation == SRV_OPERATION_RESTORE_EXPORT); + || is_mariabackup_restore_or_export()); /* We will also insert space=NULL into the map, so that further checks can ensure that a MLOG_FILE_NAME record was @@ -2273,8 +2272,7 @@ buf_block_t* recv_recovery_create_page_low(const page_id_t page_id) void recv_apply_hashed_log_recs(bool last_batch) { ut_ad(srv_operation == SRV_OPERATION_NORMAL - || srv_operation == SRV_OPERATION_RESTORE - || srv_operation == SRV_OPERATION_RESTORE_EXPORT); + || is_mariabackup_restore_or_export()); mutex_enter(&recv_sys.mutex); @@ -2292,9 +2290,8 @@ void recv_apply_hashed_log_recs(bool last_batch) ut_ad(!last_batch == log_mutex_own()); - recv_no_ibuf_operations = !last_batch - || srv_operation == SRV_OPERATION_RESTORE - || srv_operation == SRV_OPERATION_RESTORE_EXPORT; + recv_no_ibuf_operations + = !last_batch || is_mariabackup_restore_or_export(); ut_d(recv_no_log_write = recv_no_ibuf_operations); @@ -3388,9 +3385,9 @@ static dberr_t recv_init_missing_space(dberr_t err, const recv_spaces_t::const_iterator& i) { - if (srv_operation == SRV_OPERATION_RESTORE - || srv_operation == SRV_OPERATION_RESTORE_EXPORT) { - if (i->second.name.find(TEMP_TABLE_PATH_PREFIX) != std::string::npos) { + if (is_mariabackup_restore_or_export()) { + if (i->second.name.find(TEMP_TABLE_PATH_PREFIX) + != std::string::npos) { ib::warn() << "Tablespace " << i->first << " was not" " found at " << i->second.name << " when" " restoring a (partial?) backup. All redo log" @@ -3567,8 +3564,7 @@ recv_recovery_from_checkpoint_start(lsn_t flush_lsn) dberr_t err = DB_SUCCESS; ut_ad(srv_operation == SRV_OPERATION_NORMAL - || srv_operation == SRV_OPERATION_RESTORE - || srv_operation == SRV_OPERATION_RESTORE_EXPORT); + || is_mariabackup_restore_or_export()); /* Initialize red-black tree for fast insertions into the flush_list during recovery process. */ diff --git a/storage/innobase/row/row0undo.cc b/storage/innobase/row/row0undo.cc index 1cabeb3542b..8188e178b58 100644 --- a/storage/innobase/row/row0undo.cc +++ b/storage/innobase/row/row0undo.cc @@ -1,7 +1,7 @@ /***************************************************************************** Copyright (c) 1997, 2016, Oracle and/or its affiliates. All Rights Reserved. -Copyright (c) 2017, 2019, MariaDB Corporation. +Copyright (c) 2017, 2020, MariaDB Corporation. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software @@ -498,6 +498,12 @@ row_undo_step( err = row_undo(node, thr); +#ifdef ENABLED_DEBUG_SYNC + if (trx->mysql_thd) { + DEBUG_SYNC_C("trx_after_rollback_row"); + } +#endif /* ENABLED_DEBUG_SYNC */ + trx->error_state = err; if (err != DB_SUCCESS) { diff --git a/storage/innobase/srv/srv0start.cc b/storage/innobase/srv/srv0start.cc index bd393ec2157..4bacc2b9768 100644 --- a/storage/innobase/srv/srv0start.cc +++ b/storage/innobase/srv/srv0start.cc @@ -870,6 +870,7 @@ srv_undo_tablespaces_init(bool create_new_db) prev_space_id = srv_undo_space_id_start - 1; break; case SRV_OPERATION_NORMAL: + case SRV_OPERATION_RESTORE_ROLLBACK_XA: case SRV_OPERATION_RESTORE: case SRV_OPERATION_RESTORE_EXPORT: break; @@ -1125,6 +1126,7 @@ srv_shutdown_all_bg_threads() case SRV_OPERATION_RESTORE_DELTA: break; case SRV_OPERATION_NORMAL: + case SRV_OPERATION_RESTORE_ROLLBACK_XA: case SRV_OPERATION_RESTORE: case SRV_OPERATION_RESTORE_EXPORT: if (!buf_page_cleaner_is_active @@ -1303,8 +1305,7 @@ dberr_t srv_start(bool create_new_db) unsigned i = 0; ut_ad(srv_operation == SRV_OPERATION_NORMAL - || srv_operation == SRV_OPERATION_RESTORE - || srv_operation == SRV_OPERATION_RESTORE_EXPORT); + || is_mariabackup_restore_or_export()); if (srv_force_recovery == SRV_FORCE_NO_LOG_REDO) { @@ -1643,14 +1644,9 @@ dberr_t srv_start(bool create_new_db) srv_read_only_mode); if (err == DB_NOT_FOUND) { - if (i == 0) { - if (srv_operation - == SRV_OPERATION_RESTORE - || srv_operation - == SRV_OPERATION_RESTORE_EXPORT) { - return(DB_SUCCESS); - } - } + if (i == 0 + && is_mariabackup_restore_or_export()) + return (DB_SUCCESS); /* opened all files */ break; @@ -1677,10 +1673,7 @@ dberr_t srv_start(bool create_new_db) if (i == 0) { if (size == 0 - && (srv_operation - == SRV_OPERATION_RESTORE - || srv_operation - == SRV_OPERATION_RESTORE_EXPORT)) { + && is_mariabackup_restore_or_export()) { /* Tolerate an empty ib_logfile0 from a previous run of mariabackup --prepare. */ @@ -1878,6 +1871,7 @@ files_checked: switch (srv_operation) { case SRV_OPERATION_NORMAL: + case SRV_OPERATION_RESTORE_ROLLBACK_XA: case SRV_OPERATION_RESTORE_EXPORT: /* Initialize the change buffer. */ err = dict_boot(); @@ -2001,8 +1995,7 @@ files_checked: recv_recovery_from_checkpoint_finish(); - if (srv_operation == SRV_OPERATION_RESTORE - || srv_operation == SRV_OPERATION_RESTORE_EXPORT) { + if (is_mariabackup_restore_or_export()) { /* After applying the redo log from SRV_OPERATION_BACKUP, flush the changes to the data files and truncate or delete the log. @@ -2016,8 +2009,7 @@ files_checked: ut_ad(!buf_pool_check_no_pending_io()); fil_close_log_files(true); if (err == DB_SUCCESS) { - bool trunc = srv_operation - == SRV_OPERATION_RESTORE; + bool trunc = is_mariabackup_restore(); /* Delete subsequent log files. */ delete_log_files(logfilename, dirnamelen, (uint)srv_n_log_files_found, trunc); @@ -2305,7 +2297,9 @@ skip_monitors: } } - if (!srv_read_only_mode && srv_operation == SRV_OPERATION_NORMAL + if (!srv_read_only_mode + && (srv_operation == SRV_OPERATION_NORMAL + || srv_operation == SRV_OPERATION_RESTORE_ROLLBACK_XA) && srv_force_recovery < SRV_FORCE_NO_BACKGROUND) { thread_handles[5 + SRV_MAX_N_IO_THREADS] = os_thread_create( @@ -2439,6 +2433,7 @@ void innodb_shutdown() case SRV_OPERATION_RESTORE: case SRV_OPERATION_RESTORE_DELTA: case SRV_OPERATION_RESTORE_EXPORT: + case SRV_OPERATION_RESTORE_ROLLBACK_XA: fil_close_all_files(); break; case SRV_OPERATION_NORMAL: diff --git a/storage/innobase/trx/trx0roll.cc b/storage/innobase/trx/trx0roll.cc index 73ac60c635e..a09339231d6 100644 --- a/storage/innobase/trx/trx0roll.cc +++ b/storage/innobase/trx/trx0roll.cc @@ -1,7 +1,7 @@ /***************************************************************************** Copyright (c) 1996, 2017, Oracle and/or its affiliates. All Rights Reserved. -Copyright (c) 2016, 2019, MariaDB Corporation. +Copyright (c) 2016, 2020, MariaDB Corporation. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software @@ -240,10 +240,21 @@ dberr_t trx_rollback_for_mysql(trx_t* trx) case TRX_STATE_PREPARED_RECOVERED: ut_ad(!trx_is_autocommit_non_locking(trx)); if (trx->rsegs.m_redo.undo || trx->rsegs.m_redo.old_insert) { - /* Change the undo log state back from - TRX_UNDO_PREPARED to TRX_UNDO_ACTIVE - so that if the system gets killed, - recovery will perform the rollback. */ + /* The XA ROLLBACK of a XA PREPARE transaction + will consist of multiple mini-transactions. + + As the very first step of XA ROLLBACK, we must + change the undo log state back from + TRX_UNDO_PREPARED to TRX_UNDO_ACTIVE, in order + to ensure that recovery will complete the + rollback. + + Failure to perform this step could cause a + situation where we would roll back part of + a XA PREPARE transaction, the server would be + killed, and finally, the transaction would be + recovered in XA PREPARE state, with some of + the actions already having been rolled back. */ ut_ad(!trx->rsegs.m_redo.undo || trx->rsegs.m_redo.undo->rseg == trx->rsegs.m_redo.rseg); @@ -262,29 +273,15 @@ dberr_t trx_rollback_for_mysql(trx_t* trx) &mtr); } mutex_exit(&trx->rsegs.m_redo.rseg->mutex); - /* Persist the XA ROLLBACK, so that crash - recovery will replay the rollback in case - the redo log gets applied past this point. */ + /* Write the redo log for the XA ROLLBACK + state change to the global buffer. It is + not necessary to flush the redo log. If + a durable log write of a later mini-transaction + takes place for whatever reason, then this state + change will be durable as well. */ mtr.commit(); ut_ad(mtr.commit_lsn() > 0); } -#ifdef ENABLED_DEBUG_SYNC - if (trx->mysql_thd == NULL) { - /* We could be executing XA ROLLBACK after - XA PREPARE and a server restart. */ - } else if (!trx->has_logged_persistent()) { - /* innobase_close_connection() may roll back a - transaction that did not generate any - persistent undo log. The DEBUG_SYNC - would cause an assertion failure for a - disconnected thread. - - NOTE: InnoDB will not know about the XID - if no persistent undo log was generated. */ - } else { - DEBUG_SYNC_C("trx_xa_rollback"); - } -#endif /* ENABLED_DEBUG_SYNC */ return(trx_rollback_for_mysql_low(trx)); case TRX_STATE_COMMITTED_IN_MEMORY: diff --git a/storage/innobase/trx/trx0trx.cc b/storage/innobase/trx/trx0trx.cc index 10c6af6dfeb..8077861ff81 100644 --- a/storage/innobase/trx/trx0trx.cc +++ b/storage/innobase/trx/trx0trx.cc @@ -1,7 +1,7 @@ /***************************************************************************** Copyright (c) 1996, 2016, Oracle and/or its affiliates. All Rights Reserved. -Copyright (c) 2015, 2019, MariaDB Corporation. +Copyright (c) 2015, 2020, MariaDB Corporation. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software @@ -516,9 +516,7 @@ trx_free_at_shutdown(trx_t *trx) ut_a(trx_state_eq(trx, TRX_STATE_PREPARED) || trx_state_eq(trx, TRX_STATE_PREPARED_RECOVERED) || (trx_state_eq(trx, TRX_STATE_ACTIVE) - && (!srv_was_started - || srv_operation == SRV_OPERATION_RESTORE - || srv_operation == SRV_OPERATION_RESTORE_EXPORT + && (!srv_was_started || is_mariabackup_restore_or_export() || srv_read_only_mode || srv_force_recovery >= SRV_FORCE_NO_TRX_UNDO || (!srv_is_being_started diff --git a/storage/mroonga/mysql-test/mroonga/storage/r/index_multiple_column_unique_decimal.result b/storage/mroonga/mysql-test/mroonga/storage/r/index_multiple_column_unique_decimal.result index 015afdb5cf6..cb8a1c61306 100644 --- a/storage/mroonga/mysql-test/mroonga/storage/r/index_multiple_column_unique_decimal.result +++ b/storage/mroonga/mysql-test/mroonga/storage/r/index_multiple_column_unique_decimal.result @@ -30,7 +30,7 @@ c2 c3 123.456000000000000000000000000000 0.000000000000000000000000000001 98765432109876543210987654321098765.432109876543210987654321098765 -123.456000000000000000000000000000 insert into t1 values(6,123.456,0.000000000000000000000000000001); -ERROR 23000: Duplicate entry '123.456000000000000000000000000000-0.000000000000000000000000000' for key 'uk1' +ERROR 23000: Duplicate entry '123.456000000000000000000000000000-0.000000000000000000000000...' for key 'uk1' delete from t1 where c1 = 1; insert into t1 values(1,123.456,0.000000000000000000000000000001); drop table t1; diff --git a/storage/rocksdb/build_rocksdb.cmake b/storage/rocksdb/build_rocksdb.cmake index 51d775ce06d..1a3b2076c82 100644 --- a/storage/rocksdb/build_rocksdb.cmake +++ b/storage/rocksdb/build_rocksdb.cmake @@ -35,7 +35,7 @@ endif() # Optional compression libraries. -foreach(compression_lib LZ4 BZIP2 zstd snappy) +foreach(compression_lib LZ4 BZip2 ZSTD snappy) FIND_PACKAGE(${compression_lib} QUIET) SET(WITH_ROCKSDB_${compression_lib} AUTO CACHE STRING @@ -54,20 +54,20 @@ if(LZ4_FOUND AND (NOT WITH_ROCKSDB_LZ4 STREQUAL "OFF")) list(APPEND THIRDPARTY_LIBS ${LZ4_LIBRARY}) endif() -if(BZIP2_FOUND AND (NOT WITH_ROCKSDB_BZIP2 STREQUAL "OFF")) +if(BZIP2_FOUND AND (NOT WITH_ROCKSDB_BZip2 STREQUAL "OFF")) add_definitions(-DBZIP2) include_directories(${BZIP2_INCLUDE_DIR}) list(APPEND THIRDPARTY_LIBS ${BZIP2_LIBRARIES}) endif() -if(snappy_FOUND AND (NOT WITH_ROCKSDB_SNAPPY STREQUAL "OFF")) +if(SNAPPY_FOUND AND (NOT WITH_ROCKSDB_snappy STREQUAL "OFF")) add_definitions(-DSNAPPY) include_directories(${snappy_INCLUDE_DIR}) list(APPEND THIRDPARTY_LIBS ${snappy_LIBRARIES}) endif() include(CheckFunctionExists) -if(ZSTD_FOUND AND (NOT WITH_ROCKSDB_ZSTD STREQUAL "OFF")) +if(ZSTD_FOUND AND (NOT WITH_ROCKSDB_zstd STREQUAL "OFF")) SET(CMAKE_REQUIRED_LIBRARIES zstd) CHECK_FUNCTION_EXISTS(ZDICT_trainFromBuffer ZSTD_VALID) UNSET(CMAKE_REQUIRED_LIBRARIES) diff --git a/storage/rocksdb/mysql-test/rocksdb_sys_vars/r/rocksdb_compaction_readahead_size_basic.result b/storage/rocksdb/mysql-test/rocksdb_sys_vars/r/rocksdb_compaction_readahead_size_basic.result index d971396f9e8..206cfa8188e 100644 --- a/storage/rocksdb/mysql-test/rocksdb_sys_vars/r/rocksdb_compaction_readahead_size_basic.result +++ b/storage/rocksdb/mysql-test/rocksdb_sys_vars/r/rocksdb_compaction_readahead_size_basic.result @@ -7,7 +7,7 @@ INSERT INTO invalid_values VALUES('\'aaa\''); INSERT INTO invalid_values VALUES('\'bbb\''); SET @@global.rocksdb_compaction_readahead_size = -1; Warnings: -Warning 1292 Truncated incorrect rocksdb_compaction_readahead_siz value: '-1' +Warning 1292 Truncated incorrect rocksdb_compaction_readahead_... value: '-1' SELECT @@global.rocksdb_compaction_readahead_size; @@global.rocksdb_compaction_readahead_size 0 diff --git a/storage/rocksdb/mysql-test/rocksdb_sys_vars/r/rocksdb_force_index_records_in_range_basic.result b/storage/rocksdb/mysql-test/rocksdb_sys_vars/r/rocksdb_force_index_records_in_range_basic.result index 1a7a21c3a9f..d4768cfde1e 100644 --- a/storage/rocksdb/mysql-test/rocksdb_sys_vars/r/rocksdb_force_index_records_in_range_basic.result +++ b/storage/rocksdb/mysql-test/rocksdb_sys_vars/r/rocksdb_force_index_records_in_range_basic.result @@ -7,7 +7,7 @@ INSERT INTO invalid_values VALUES('\'aaa\''); INSERT INTO invalid_values VALUES('\'bbb\''); SET @@session.rocksdb_force_index_records_in_range = -1; Warnings: -Warning 1292 Truncated incorrect rocksdb_force_index_records_in_r value: '-1' +Warning 1292 Truncated incorrect rocksdb_force_index_records_i... value: '-1' SELECT @@session.rocksdb_force_index_records_in_range; @@session.rocksdb_force_index_records_in_range 0 diff --git a/storage/rocksdb/mysql-test/rocksdb_sys_vars/r/rocksdb_rate_limiter_bytes_per_sec_basic.result b/storage/rocksdb/mysql-test/rocksdb_sys_vars/r/rocksdb_rate_limiter_bytes_per_sec_basic.result index 94eb9e34057..9d194ad718c 100644 --- a/storage/rocksdb/mysql-test/rocksdb_sys_vars/r/rocksdb_rate_limiter_bytes_per_sec_basic.result +++ b/storage/rocksdb/mysql-test/rocksdb_sys_vars/r/rocksdb_rate_limiter_bytes_per_sec_basic.result @@ -97,5 +97,5 @@ Warnings: Warning 1210 RocksDB: rocksdb_rate_limiter_bytes_per_sec cannot be dynamically changed to or from 0. Do a clean shutdown if you want to change it from or to 0. SET @@global.rocksdb_rate_limiter_bytes_per_sec = -1; Warnings: -Warning 1292 Truncated incorrect rocksdb_rate_limiter_bytes_per_s value: '-1' +Warning 1292 Truncated incorrect rocksdb_rate_limiter_bytes_pe... value: '-1' Warning 1210 RocksDB: rocksdb_rate_limiter_bytes_per_sec cannot be dynamically changed to or from 0. Do a clean shutdown if you want to change it from or to 0. diff --git a/storage/tokudb/mysql-test/tokudb_parts/r/partition_syntax_tokudb.result b/storage/tokudb/mysql-test/tokudb_parts/r/partition_syntax_tokudb.result index 1a4bf02cc7c..f1e4d4d5e53 100644 --- a/storage/tokudb/mysql-test/tokudb_parts/r/partition_syntax_tokudb.result +++ b/storage/tokudb/mysql-test/tokudb_parts/r/partition_syntax_tokudb.result @@ -770,7 +770,7 @@ f_char2 CHAR(20), f_charbig VARCHAR(1000) ) PARTITION BY RANGE(f_int1) SUBPARTITION BY HASH(f_int1) (PARTITION part1 VALUES LESS THAN (10), PARTITION part2 VALUES LESS THAN (20) (SUBPARTITION subpart21 , SUBPARTITION subpart22 ), PARTITION part3 VALUES LESS THAN (2147483646)) ; -ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near 'SUBPARTITION subpart21 , SUBPARTITION subpart22 ), PARTITION part3 VALUES LESS T' at line 7 +ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near 'SUBPARTITION subpart21 , SUBPARTITION subpart22 ), PARTITION part3 VALUES LES...' at line 7 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, f_char1 CHAR(20), @@ -779,7 +779,7 @@ f_charbig VARCHAR(1000) ) PARTITION BY RANGE(f_int1) SUBPARTITION BY HASH(f_int1) (PARTITION part1 VALUES LESS THAN (10), PARTITION part2 VALUES LESS THAN (20) (SUBPARTITION subpart21 , SUBPARTITION subpart22 ), PARTITION part3 VALUES LESS THAN (2147483646) (SUBPARTITION subpart31 , SUBPARTITION subpart32 )) ; -ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near 'SUBPARTITION subpart21 , SUBPARTITION subpart22 ), PARTITION part3 VALUES LESS T' at line 7 +ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near 'SUBPARTITION subpart21 , SUBPARTITION subpart22 ), PARTITION part3 VALUES LES...' at line 7 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, f_char1 CHAR(20), @@ -797,7 +797,7 @@ PARTITION BY RANGE(f_int1) SUBPARTITION BY HASH(f_int1) (PARTITION part1 VALUES (SUBPARTITION subpart11 , SUBPARTITION subpart12 ), PARTITION part2 VALUES LESS THAN (20), PARTITION part3 VALUES LESS THAN (2147483646) (SUBPARTITION subpart31 , SUBPARTITION subpart32 )) ; ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near ' PARTITION part3 VALUES LESS THAN (2147483646) -(SUBPARTITION subpart31 , SUBPART' at line 7 +(SUBPARTITION subpart31 , SUBP...' at line 7 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, f_char1 CHAR(20), @@ -987,7 +987,7 @@ SUBPARTITIONS -1 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '-1 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (214' at line 9 +PARTITION part2 VALUES LESS THAN (...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1032,7 +1032,7 @@ SUBPARTITIONS 2.0 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '2.0 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (21' at line 9 +PARTITION part2 VALUES LESS THAN ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1055,7 +1055,7 @@ SUBPARTITIONS -2.0 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '-2.0 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (2' at line 9 +PARTITION part2 VALUES LESS THAN...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1078,7 +1078,7 @@ SUBPARTITIONS 0.0 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '0.0 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (21' at line 9 +PARTITION part2 VALUES LESS THAN ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1101,7 +1101,7 @@ SUBPARTITIONS 1.6 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '1.6 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (21' at line 9 +PARTITION part2 VALUES LESS THAN ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1123,7 +1123,7 @@ SUBPARTITIONS 999999999999999999999999999999.999999999999999999999999999999 (PARTITION part1 VALUES LESS THAN (10), PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '999999999999999999999999999999.999999999999999999999999999999 -(PARTITION part1 V' at line 9 +(PARTITION part...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1146,7 +1146,7 @@ SUBPARTITIONS 0.000000000000000000000000000001 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '0.000000000000000000000000000001 (PARTITION part1 VALUES LESS THAN (10), -PARTITI' at line 9 +PART...' at line 9 # 4.2.3 partition/subpartition numbers FLOAT notation CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, @@ -1170,7 +1170,7 @@ SUBPARTITIONS 2.0E+0 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '2.0E+0 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN ' at line 9 +PARTITION part2 VALUES LESS TH...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1193,7 +1193,7 @@ SUBPARTITIONS 0.2E+1 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '0.2E+1 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN ' at line 9 +PARTITION part2 VALUES LESS TH...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1216,7 +1216,7 @@ SUBPARTITIONS -2.0E+0 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '-2.0E+0 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN' at line 9 +PARTITION part2 VALUES LESS T...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1239,7 +1239,7 @@ SUBPARTITIONS 0.16E+1 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '0.16E+1 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN' at line 9 +PARTITION part2 VALUES LESS T...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1262,7 +1262,7 @@ SUBPARTITIONS 0.0E+300 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '0.0E+300 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THA' at line 9 +PARTITION part2 VALUES LESS ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1285,7 +1285,7 @@ SUBPARTITIONS 1E+300 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '1E+300 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN ' at line 9 +PARTITION part2 VALUES LESS TH...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1308,7 +1308,7 @@ SUBPARTITIONS 1E-300 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: Only integers allowed as number here near '1E-300 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN ' at line 9 +PARTITION part2 VALUES LESS TH...' at line 9 # 4.2.4 partition/subpartition numbers STRING notation CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, @@ -1332,7 +1332,7 @@ SUBPARTITIONS '2' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''2' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (21' at line 9 +PARTITION part2 VALUES LESS THAN ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1355,7 +1355,7 @@ SUBPARTITIONS '2.0' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''2.0' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (' at line 9 +PARTITION part2 VALUES LESS THA...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1378,7 +1378,7 @@ SUBPARTITIONS '0.2E+1' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''0.2E+1' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THA' at line 9 +PARTITION part2 VALUES LESS ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1401,7 +1401,7 @@ SUBPARTITIONS '2A' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''2A' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (2' at line 9 +PARTITION part2 VALUES LESS THAN...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1424,7 +1424,7 @@ SUBPARTITIONS 'A2' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''A2' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (2' at line 9 +PARTITION part2 VALUES LESS THAN...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1447,7 +1447,7 @@ SUBPARTITIONS '' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (214' at line 9 +PARTITION part2 VALUES LESS THAN (...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1470,7 +1470,7 @@ SUBPARTITIONS 'GARBAGE' PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''GARBAGE' (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS TH' at line 9 +PARTITION part2 VALUES LESS...' at line 9 # 4.2.5 partition/subpartition numbers other notations CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, @@ -1494,7 +1494,7 @@ SUBPARTITIONS 2A PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '2A (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (214' at line 9 +PARTITION part2 VALUES LESS THAN (...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1517,7 +1517,7 @@ SUBPARTITIONS A2 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'A2 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (214' at line 9 +PARTITION part2 VALUES LESS THAN (...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1540,7 +1540,7 @@ SUBPARTITIONS GARBAGE PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'GARBAGE (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN' at line 9 +PARTITION part2 VALUES LESS T...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1563,7 +1563,7 @@ SUBPARTITIONS "2" PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '"2" (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (21' at line 9 +PARTITION part2 VALUES LESS THAN ...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1586,7 +1586,7 @@ SUBPARTITIONS "2A" PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '"2A" (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (2' at line 9 +PARTITION part2 VALUES LESS THAN...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1609,7 +1609,7 @@ SUBPARTITIONS "A2" PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '"A2" (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THAN (2' at line 9 +PARTITION part2 VALUES LESS THAN...' at line 9 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1632,7 +1632,7 @@ SUBPARTITIONS "GARBAGE" PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '"GARBAGE" (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS TH' at line 9 +PARTITION part2 VALUES LESS...' at line 9 # 4.2.6 (negative) partition/subpartition numbers per @variables SET @aux = 5; CREATE TABLE t1 ( @@ -1657,7 +1657,7 @@ SUBPARTITIONS @aux = 5 PARTITION part2 VALUES LESS THAN (2147483646)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '@aux = 5 (PARTITION part1 VALUES LESS THAN (10), -PARTITION part2 VALUES LESS THA' at line 9 +PARTITION part2 VALUES LESS ...' at line 9 #------------------------------------------------------------------------ # 4.3 Mixups of assigned partition/subpartition numbers and names #------------------------------------------------------------------------ @@ -1750,7 +1750,7 @@ PARTITION part2 VALUES LESS THAN (2147483646) ); ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near '), PARTITION part2 VALUES LESS THAN (2147483646) -(SUBPARTITION subpart21, SUBPAR' at line 11 +(SUBPARTITION subpart21, SUB...' at line 11 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1769,7 +1769,7 @@ PARTITION part3 VALUES LESS THAN (2147483646) ); ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near '), PARTITION part3 VALUES LESS THAN (2147483646) -(SUBPARTITION subpart31, SUBPAR' at line 13 +(SUBPARTITION subpart31, SUB...' at line 13 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1812,7 +1812,7 @@ PARTITION part2 VALUES LESS THAN (2147483646) ); ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near '), PARTITION part2 VALUES LESS THAN (2147483646) -(SUBPARTITION subpart21, SUBPAR' at line 11 +(SUBPARTITION subpart21, SUB...' at line 11 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1831,7 +1831,7 @@ PARTITION part3 VALUES LESS THAN (2147483646) ); ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near '), PARTITION part2 VALUES LESS THAN (2000) -(SUBPARTITION subpart21 ' at line 11 +(SUBPARTITION subpart21 ...' at line 11 CREATE TABLE t1 ( f_int1 INTEGER DEFAULT 0, f_int2 INTEGER DEFAULT 0, @@ -1848,7 +1848,7 @@ PARTITION part2 VALUES LESS THAN (2147483646) ); ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near '), PARTITION part2 VALUES LESS THAN (2147483646) -(SUBPARTITION subpart21, SUBPAR' at line 11 +(SUBPARTITION subpart21, SUB...' at line 11 #======================================================================== # 5. Checks of logical partition/subpartition name diff --git a/strings/my_vsnprintf.c b/strings/my_vsnprintf.c index 5a161612bc5..e93cfbd46de 100644 --- a/strings/my_vsnprintf.c +++ b/strings/my_vsnprintf.c @@ -153,12 +153,15 @@ static const char *check_longlong(const char *fmt, uint *have_longlong) */ static char *backtick_string(CHARSET_INFO *cs, char *to, const char *end, - char *par, size_t par_len, char quote_char) + char *par, size_t par_len, char quote_char, + my_bool cut) { + char *last[3]= {0,0,0}; uint char_len; char *start= to; char *par_end= par + par_len; size_t buff_length= (size_t) (end - to); + uint index= 0; if (buff_length <= par_len) goto err; @@ -167,6 +170,11 @@ static char *backtick_string(CHARSET_INFO *cs, char *to, const char *end, for ( ; par < par_end; par+= char_len) { uchar c= *(uchar *) par; + if (cut) + { + last[index]= start; + index= (index + 1) % 3; + } char_len= my_charlen_fix(cs, par, par_end); if (char_len == 1 && c == (uchar) quote_char ) { @@ -178,9 +186,30 @@ static char *backtick_string(CHARSET_INFO *cs, char *to, const char *end, goto err; start= strnmov(start, par, char_len); } - + if (start + 1 >= end) goto err; + + if (cut) + { + uint dots= 0; + start= NULL; + for (; dots < 3; dots++) + { + if (index == 0) + index= 2; + else + index--; + if (!last[index]) + break; + start= last[index]; + } + if (start == NULL) + goto err; // there was no characters at all + for (; dots; dots--) + *start++= '.'; + + } *start++= quote_char; return start; @@ -198,18 +227,45 @@ static char *process_str_arg(CHARSET_INFO *cs, char *to, const char *end, size_t width, char *par, uint print_type) { int well_formed_error; - size_t plen, left_len= (size_t) (end - to) + 1; + uint dots= 0; + size_t plen, left_len= (size_t) (end - to) + 1, slen=0; if (!par) par = (char*) "(null)"; - plen= strnlen(par, width); + plen= slen= strnlen(par, width + 1); + if (plen > width) + plen= width; if (left_len <= plen) plen = left_len - 1; + if ((slen > plen)) + { + if (plen < 3) + { + dots= (uint) plen; + plen= 0; + } + else + { + dots= 3; + plen-= 3; + } + } + plen= my_well_formed_length(cs, par, par + plen, width, &well_formed_error); if (print_type & ESCAPED_ARG) - to= backtick_string(cs, to, end, par, plen, '`'); + { + to= backtick_string(cs, to, end, par, plen + dots, '`', MY_TEST(dots)); + dots= 0; + } else to= strnmov(to,par,plen); + + if (dots) + { + for (; dots; dots--) + *(to++)= '.'; + *(to)= 0; + } return to; } diff --git a/support-files/mariadb.service.in b/support-files/mariadb.service.in index dca7a4c13a7..04f62829003 100644 --- a/support-files/mariadb.service.in +++ b/support-files/mariadb.service.in @@ -80,7 +80,7 @@ PermissionsStartOnly=true # Do not panic if galera_recovery script is not available. (MDEV-10538) ExecStartPre=/bin/sh -c "systemctl unset-environment _WSREP_START_POSITION" ExecStartPre=/bin/sh -c "[ ! -e @bindir@/galera_recovery ] && VAR= || \ - VAR=`@bindir@/galera_recovery`; [ $? -eq 0 ] \ + VAR=`cd @bindir@/..; @bindir@/galera_recovery`; [ $? -eq 0 ] \ && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1" # Needed to create system tables etc. diff --git a/support-files/rpm/my.cnf b/support-files/rpm/my.cnf index 913b88f8328..8c6a7139de5 100644 --- a/support-files/rpm/my.cnf +++ b/support-files/rpm/my.cnf @@ -5,7 +5,7 @@ [client-server] # -# include all files from the config directory +# include *.cnf from the config directory # !includedir /etc/my.cnf.d diff --git a/unittest/mysys/my_vsnprintf-t.c b/unittest/mysys/my_vsnprintf-t.c index 6ba0a42cf7e..872e88ddd7e 100644 --- a/unittest/mysys/my_vsnprintf-t.c +++ b/unittest/mysys/my_vsnprintf-t.c @@ -61,7 +61,7 @@ static void test_many(const char **res, const char *fmt, ...) int main(void) { - plan(39); + plan(43); test1("Constant string", "Constant string"); @@ -99,12 +99,28 @@ int main(void) test1("Width is ignored for strings ", "Width is ignored for strings <%04s> <%5s>", "x", "y"); - test1("Precision works for strings ", + test1("Precision works for strings ", "Precision works for strings <%.5s>", "abcdef!"); - test1("Flag '`' (backtick) works: `abcd` `op``q` (mysql extension)", - "Flag '`' (backtick) works: %`s %`.4s (mysql extension)", - "abcd", "op`qrst"); + test1("Flag '`' (backtick) works: `abcd` `op``q...` (mysql extension)", + "Flag '`' (backtick) works: %`s %`.7s (mysql extension)", + "abcd", "op`qrstuuuuuuuuu"); + + test1("Flag '`' (backtick) works: `abcd` `.` (mysql extension)", + "Flag '`' (backtick) works: %`s %`.1s (mysql extension)", + "abcd", "op`qrstuuuuuuuuu"); + + test1("Flag '`' (backtick) works: `abcd` `...` (mysql extension)", + "Flag '`' (backtick) works: %`s %`.3s (mysql extension)", + "abcd", "op`qrstuuuuuuuuu"); + + test1("Flag '`' (backtick) works: `abcd` `op...` (mysql extension)", + "Flag '`' (backtick) works: %`s %`.5s (mysql extension)", + "abcd", "op`qrstuuuuuuuuu"); + + test1("Flag '`' (backtick) works: `abcd` `op``...` (mysql extension)", + "Flag '`' (backtick) works: %`s %`.6s (mysql extension)", + "abcd", "op`qrstuuuuuuuuu"); test1("Length modifiers work: 1 * -1 * 2 * 3", "Length modifiers work: %d * %ld * %lld * %zd", 1, -1L, 2LL, (size_t)3); @@ -125,13 +141,13 @@ int main(void) test1("Asterisk '*' as a width works: < 4>", "Asterisk '*' as a width works: <%*d>", 5, 4); - test1("Asterisk '*' as a precision works: ", + test1("Asterisk '*' as a precision works: ", "Asterisk '*' as a precision works: <%.*s>", 6, "qwertyuiop"); test1("Positional arguments for a width: < 4>", "Positional arguments for a width: <%1$*2$d>", 4, 5); - test1("Positional arguments for a precision: ", + test1("Positional arguments for a precision: ", "Positional arguments for a precision: <%1$.*2$s>", "qwertyuiop", 6); test1("Positional arguments and a width: <0000ab>", @@ -168,14 +184,14 @@ int main(void) test1("M with positional: 0 \"Internal error/check (Not system error)\"", "M with positional: %1$M", 0); - test1("M with width: 0 \"Internal error/ch", + test1("M with width: 0 \"Internal error...", "M with width: %.20M", 0); - test1("M with width positional: 0 \"Internal error/ch", + test1("M with width positional: 0 \"Internal error...", "M with width positional: %2$.*1$M", 20, 0); - test_w_len("M small buf: 0 \"In", + test_w_len("M small buf: 0 \"..", 19, "M small buf: %M", 0); - test_w_len("M small buf positional: 0 \"In", + test_w_len("M small buf positional: 0 \"..", 30, "M small buf positional: %1$M", 0); return exit_status(); diff --git a/win/packaging/heidisql.cmake b/win/packaging/heidisql.cmake index 9fee823b75b..1d66c812ec0 100644 --- a/win/packaging/heidisql.cmake +++ b/win/packaging/heidisql.cmake @@ -1,4 +1,4 @@ -SET(HEIDISQL_BASE_NAME "HeidiSQL_10.2_32_Portable") +SET(HEIDISQL_BASE_NAME "HeidiSQL_11.0_32_Portable") SET(HEIDISQL_ZIP "${HEIDISQL_BASE_NAME}.zip") SET(HEIDISQL_URL "http://www.heidisql.com/downloads/releases/${HEIDISQL_ZIP}") SET(HEIDISQL_DOWNLOAD_DIR ${THIRD_PARTY_DOWNLOAD_LOCATION}/${HEIDISQL_BASE_NAME}) diff --git a/win/packaging/heidisql.wxi.in b/win/packaging/heidisql.wxi.in index 4244b47d0d8..58d95210783 100644 --- a/win/packaging/heidisql.wxi.in +++ b/win/packaging/heidisql.wxi.in @@ -33,20 +33,25 @@ + + + + + - - + + - - + + - - + + @@ -54,6 +59,9 @@ + + + @@ -76,11 +84,13 @@ - - - + + + + +