Merge tag 'mariadb-10.0.20' into 10.1
This commit is contained in:
commit
658992699b
6
.gitattributes
vendored
6
.gitattributes
vendored
@ -12,12 +12,16 @@
|
||||
|
||||
# These files should be checked out as is
|
||||
*.result -text -whitespace
|
||||
*.dat -text -whitespace
|
||||
|
||||
storage/connect/mysql-test/connect/std_data/*.txt -text
|
||||
storage/connect/mysql-test/connect/std_data/*.dat -text
|
||||
|
||||
# Denote all files that are truly binary and should not be modified.
|
||||
*.png binary
|
||||
*.jpg binary
|
||||
*.frm binary
|
||||
*.MYD binary
|
||||
*.MYI binary
|
||||
|
||||
*.c diff=cpp
|
||||
*.h diff=cpp
|
||||
|
6
.gitignore
vendored
6
.gitignore
vendored
@ -175,7 +175,6 @@ storage/tokudb/ft-index/ft/log_print.cc
|
||||
storage/tokudb/ft-index/ft/logformat
|
||||
storage/tokudb/ft-index/ft/ftverify
|
||||
storage/tokudb/ft-index/ft/tdb-recover
|
||||
storage/tokudb/ft-index/ft/tdb_logprint
|
||||
storage/tokudb/ft-index/ft/tokuftdump
|
||||
storage/tokudb/ft-index/portability/merge_archives_tokuportability_static.cmake
|
||||
storage/tokudb/ft-index/portability/toku_config.h
|
||||
@ -186,11 +185,11 @@ storage/tokudb/ft-index/toku_include/toku_config.h
|
||||
storage/tokudb/ft-index/tools/ba_replay
|
||||
storage/tokudb/ft-index/tools/ftverify
|
||||
storage/tokudb/ft-index/tools/tdb-recover
|
||||
storage/tokudb/ft-index/tools/tdb_logprint
|
||||
storage/tokudb/ft-index/tools/tokudb_dump
|
||||
storage/tokudb/ft-index/tools/tokudb_gen
|
||||
storage/tokudb/ft-index/tools/tokudb_load
|
||||
storage/tokudb/ft-index/tools/tokuftdump
|
||||
storage/tokudb/ft-index/tools/tokuft_logprint
|
||||
storage/tokudb/ft-index/xz/
|
||||
support-files/MySQL-shared-compat.spec
|
||||
support-files/binary-configure
|
||||
@ -234,6 +233,9 @@ storage/mroonga/mysql-test/mroonga/storage/r/variable_version.result
|
||||
*.ko
|
||||
*.obj
|
||||
*.elf
|
||||
*.exp
|
||||
*.dep
|
||||
*.idb
|
||||
|
||||
# Precompiled Headers
|
||||
*.gch
|
||||
|
@ -54,6 +54,7 @@ static char *opt_plugin_dir= 0, *opt_default_auth= 0;
|
||||
static int first_error = 0;
|
||||
static char *opt_skip_database;
|
||||
DYNAMIC_ARRAY tables4repair, tables4rebuild, alter_table_cmds;
|
||||
DYNAMIC_ARRAY views4repair;
|
||||
static char *shared_memory_base_name=0;
|
||||
static uint opt_protocol=0;
|
||||
|
||||
@ -878,11 +879,19 @@ static int handle_request_for_tables(char *tables, size_t length, my_bool view)
|
||||
switch (what_to_do) {
|
||||
case DO_CHECK:
|
||||
op = "CHECK";
|
||||
if (opt_quick) end = strmov(end, " QUICK");
|
||||
if (opt_fast) end = strmov(end, " FAST");
|
||||
if (opt_medium_check) end = strmov(end, " MEDIUM"); /* Default */
|
||||
if (opt_extended) end = strmov(end, " EXTENDED");
|
||||
if (opt_check_only_changed) end = strmov(end, " CHANGED");
|
||||
if (view)
|
||||
{
|
||||
if (opt_fast || opt_check_only_changed)
|
||||
DBUG_RETURN(0);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (opt_quick) end = strmov(end, " QUICK");
|
||||
if (opt_fast) end = strmov(end, " FAST");
|
||||
if (opt_extended) end = strmov(end, " EXTENDED");
|
||||
if (opt_medium_check) end = strmov(end, " MEDIUM"); /* Default */
|
||||
if (opt_check_only_changed) end = strmov(end, " CHANGED");
|
||||
}
|
||||
if (opt_upgrade) end = strmov(end, " FOR UPGRADE");
|
||||
break;
|
||||
case DO_REPAIR:
|
||||
@ -967,6 +976,7 @@ static void print_result()
|
||||
uint length_of_db;
|
||||
uint i;
|
||||
my_bool found_error=0, table_rebuild=0;
|
||||
DYNAMIC_ARRAY *array4repair= &tables4repair;
|
||||
DBUG_ENTER("print_result");
|
||||
|
||||
res = mysql_use_result(sock);
|
||||
@ -1003,9 +1013,10 @@ static void print_result()
|
||||
else
|
||||
{
|
||||
char *table_name= prev + (length_of_db+1);
|
||||
insert_dynamic(&tables4repair, table_name);
|
||||
insert_dynamic(array4repair, table_name);
|
||||
}
|
||||
}
|
||||
array4repair= &tables4repair;
|
||||
found_error=0;
|
||||
table_rebuild=0;
|
||||
prev_alter[0]= 0;
|
||||
@ -1021,8 +1032,11 @@ static void print_result()
|
||||
we have to run upgrade on it. In this case we write a nicer message
|
||||
than "Please do "REPAIR TABLE""...
|
||||
*/
|
||||
if (!strcmp(row[2],"error") && strstr(row[3],"REPAIR TABLE"))
|
||||
if (!strcmp(row[2],"error") && strstr(row[3],"REPAIR "))
|
||||
{
|
||||
printf("%-50s %s", row[0], "Needs upgrade");
|
||||
array4repair= strstr(row[3], "VIEW") ? &views4repair : &tables4repair;
|
||||
}
|
||||
else
|
||||
printf("%s\n%-9s: %s", row[0], row[2], row[3]);
|
||||
if (opt_auto_repair && strcmp(row[2],"note"))
|
||||
@ -1053,7 +1067,7 @@ static void print_result()
|
||||
else
|
||||
{
|
||||
char *table_name= prev + (length_of_db+1);
|
||||
insert_dynamic(&tables4repair, table_name);
|
||||
insert_dynamic(array4repair, table_name);
|
||||
}
|
||||
}
|
||||
mysql_free_result(res);
|
||||
@ -1173,6 +1187,8 @@ int main(int argc, char **argv)
|
||||
if (opt_auto_repair &&
|
||||
(my_init_dynamic_array(&tables4repair, sizeof(char)*(NAME_LEN*2+2),16,
|
||||
64, MYF(0)) ||
|
||||
my_init_dynamic_array(&views4repair, sizeof(char)*(NAME_LEN*2+2),16,
|
||||
64, MYF(0)) ||
|
||||
my_init_dynamic_array(&tables4rebuild, sizeof(char)*(NAME_LEN*2+2),16,
|
||||
64, MYF(0)) ||
|
||||
my_init_dynamic_array(&alter_table_cmds, MAX_ALTER_STR_SIZE, 0, 1,
|
||||
@ -1203,6 +1219,13 @@ int main(int argc, char **argv)
|
||||
rebuild_table((char*) dynamic_array_ptr(&tables4rebuild, i));
|
||||
for (i = 0; i < alter_table_cmds.elements ; i++)
|
||||
run_query((char*) dynamic_array_ptr(&alter_table_cmds, i), 1);
|
||||
if (!opt_silent && views4repair.elements)
|
||||
puts("\nRepairing views");
|
||||
for (i = 0; i < views4repair.elements ; i++)
|
||||
{
|
||||
char *name= (char*) dynamic_array_ptr(&views4repair, i);
|
||||
handle_request_for_tables(name, fixed_name_length(name), TRUE);
|
||||
}
|
||||
}
|
||||
ret= MY_TEST(first_error);
|
||||
|
||||
@ -1210,8 +1233,10 @@ int main(int argc, char **argv)
|
||||
dbDisconnect(current_host);
|
||||
if (opt_auto_repair)
|
||||
{
|
||||
delete_dynamic(&views4repair);
|
||||
delete_dynamic(&tables4repair);
|
||||
delete_dynamic(&tables4rebuild);
|
||||
delete_dynamic(&alter_table_cmds);
|
||||
}
|
||||
end1:
|
||||
my_free(opt_password);
|
||||
|
@ -97,7 +97,7 @@ static ulong find_set(TYPELIB *lib, const char *x, uint length,
|
||||
static char *alloc_query_str(ulong size);
|
||||
|
||||
static void field_escape(DYNAMIC_STRING* in, const char *from);
|
||||
static my_bool verbose= 0, opt_no_create_info= 0, opt_no_data= 0,
|
||||
static my_bool verbose= 0, opt_no_create_info= 0, opt_no_data= 0, opt_no_data_med= 1,
|
||||
quick= 1, extended_insert= 1,
|
||||
lock_tables=1,ignore_errors=0,flush_logs=0,flush_privileges=0,
|
||||
opt_drop=1,opt_keywords=0,opt_lock=1,opt_compress=0,
|
||||
@ -203,6 +203,8 @@ const char *compatible_mode_names[]=
|
||||
TYPELIB compatible_mode_typelib= {array_elements(compatible_mode_names) - 1,
|
||||
"", compatible_mode_names, NULL};
|
||||
|
||||
#define MED_ENGINES "MRG_MyISAM, MRG_ISAM, CONNECT, OQGRAPH, SPIDER, VP, FEDERATED"
|
||||
|
||||
HASH ignore_table;
|
||||
|
||||
static struct my_option my_long_options[] =
|
||||
@ -431,6 +433,9 @@ static struct my_option my_long_options[] =
|
||||
NO_ARG, 0, 0, 0, 0, 0, 0},
|
||||
{"no-data", 'd', "No row information.", &opt_no_data,
|
||||
&opt_no_data, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
|
||||
{"no-data-med", 0, "No row information for engines that "
|
||||
"Manage External Data (" MED_ENGINES ").", &opt_no_data_med,
|
||||
&opt_no_data_med, 0, GET_BOOL, NO_ARG, 1, 0, 0, 0, 0, 0},
|
||||
{"no-set-names", 'N', "Same as --skip-set-charset.",
|
||||
0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0},
|
||||
{"opt", OPT_OPTIMIZE,
|
||||
@ -5506,12 +5511,12 @@ char check_if_ignore_table(const char *table_name, char *table_type)
|
||||
/*
|
||||
If these two types, we do want to skip dumping the table
|
||||
*/
|
||||
if (!opt_no_data &&
|
||||
(!my_strcasecmp(&my_charset_latin1, table_type, "MRG_MyISAM") ||
|
||||
!strcmp(table_type,"MRG_ISAM") ||
|
||||
!strcmp(table_type,"CONNECT") ||
|
||||
!strcmp(table_type,"FEDERATED")))
|
||||
result= IGNORE_DATA;
|
||||
if (!opt_no_data && opt_no_data_med)
|
||||
{
|
||||
const char *found= strstr(" " MED_ENGINES ",", table_type);
|
||||
if (found && found[-1] == ' ' && found[strlen(table_type)] == ',')
|
||||
result= IGNORE_DATA;
|
||||
}
|
||||
}
|
||||
mysql_free_result(res);
|
||||
DBUG_RETURN(result);
|
||||
|
@ -839,6 +839,7 @@ static void handle_no_active_connection(struct st_command* command,
|
||||
#define EMB_END_CONNECTION 3
|
||||
#define EMB_PREPARE_STMT 4
|
||||
#define EMB_EXECUTE_STMT 5
|
||||
#define EMB_CLOSE_STMT 6
|
||||
|
||||
/* workaround for MySQL BUG#57491 */
|
||||
#undef MY_WME
|
||||
@ -887,6 +888,9 @@ pthread_handler_t connection_thread(void *arg)
|
||||
case EMB_EXECUTE_STMT:
|
||||
cn->result= mysql_stmt_execute(cn->stmt);
|
||||
break;
|
||||
case EMB_CLOSE_STMT:
|
||||
cn->result= mysql_stmt_close(cn->stmt);
|
||||
break;
|
||||
default:
|
||||
DBUG_ASSERT(0);
|
||||
}
|
||||
@ -984,6 +988,17 @@ static int do_stmt_execute(struct st_connection *cn)
|
||||
}
|
||||
|
||||
|
||||
static int do_stmt_close(struct st_connection *cn)
|
||||
{
|
||||
/* The cn->stmt is already set. */
|
||||
if (!cn->has_thread)
|
||||
return mysql_stmt_close(cn->stmt);
|
||||
signal_connection_thd(cn, EMB_CLOSE_STMT);
|
||||
wait_query_thread_done(cn);
|
||||
return cn->result;
|
||||
}
|
||||
|
||||
|
||||
static void emb_close_connection(struct st_connection *cn)
|
||||
{
|
||||
if (!cn->has_thread)
|
||||
@ -1019,6 +1034,7 @@ static void init_connection_thd(struct st_connection *cn)
|
||||
#define do_read_query_result(cn) mysql_read_query_result(cn->mysql)
|
||||
#define do_stmt_prepare(cn, q, q_len) mysql_stmt_prepare(cn->stmt, q, q_len)
|
||||
#define do_stmt_execute(cn) mysql_stmt_execute(cn->stmt)
|
||||
#define do_stmt_close(cn) mysql_stmt_close(cn->stmt)
|
||||
|
||||
#endif /*EMBEDDED_LIBRARY*/
|
||||
|
||||
@ -1378,11 +1394,11 @@ void close_connections()
|
||||
DBUG_ENTER("close_connections");
|
||||
for (--next_con; next_con >= connections; --next_con)
|
||||
{
|
||||
if (next_con->stmt)
|
||||
do_stmt_close(next_con);
|
||||
#ifdef EMBEDDED_LIBRARY
|
||||
emb_close_connection(next_con);
|
||||
#endif
|
||||
if (next_con->stmt)
|
||||
mysql_stmt_close(next_con->stmt);
|
||||
next_con->stmt= 0;
|
||||
mysql_close(next_con->mysql);
|
||||
next_con->mysql= 0;
|
||||
@ -5491,7 +5507,11 @@ void do_close_connection(struct st_command *command)
|
||||
con->mysql->net.vio = 0;
|
||||
}
|
||||
}
|
||||
#else
|
||||
#endif /*!EMBEDDED_LIBRARY*/
|
||||
if (con->stmt)
|
||||
do_stmt_close(con);
|
||||
con->stmt= 0;
|
||||
#ifdef EMBEDDED_LIBRARY
|
||||
/*
|
||||
As query could be still executed in a separate theread
|
||||
we need to check if the query's thread was finished and probably wait
|
||||
@ -5499,9 +5519,6 @@ void do_close_connection(struct st_command *command)
|
||||
*/
|
||||
emb_close_connection(con);
|
||||
#endif /*EMBEDDED_LIBRARY*/
|
||||
if (con->stmt)
|
||||
mysql_stmt_close(con->stmt);
|
||||
con->stmt= 0;
|
||||
|
||||
mysql_close(con->mysql);
|
||||
con->mysql= 0;
|
||||
|
@ -28,7 +28,7 @@ ELSE()
|
||||
SET(RUN_ABI_CHECK 0)
|
||||
ENDIF()
|
||||
|
||||
IF(CMAKE_COMPILER_IS_GNUCC AND RUN_ABI_CHECK)
|
||||
IF(CMAKE_C_COMPILER_ID MATCHES "GNU|Clang" AND RUN_ABI_CHECK)
|
||||
IF(CMAKE_C_COMPILER MATCHES "ccache$")
|
||||
SET(COMPILER ${CMAKE_C_COMPILER_ARG1})
|
||||
STRING(REGEX REPLACE "^ " "" COMPILER ${COMPILER})
|
||||
|
@ -21,11 +21,12 @@ SET(CPACK_COMPONENT_MANPAGESCLIENT_GROUP "client")
|
||||
SET(CPACK_COMPONENT_README_GROUP "server")
|
||||
SET(CPACK_COMPONENT_SHAREDLIBRARIES_GROUP "shared")
|
||||
SET(CPACK_COMPONENT_COMMON_GROUP "common")
|
||||
SET(CPACK_COMPONENT_CLIENTPLUGINS_GROUP "common")
|
||||
SET(CPACK_COMPONENT_COMPAT_GROUP "compat")
|
||||
SET(CPACK_COMPONENTS_ALL Server ManPagesServer IniFiles Server_Scripts
|
||||
SupportFiles Development ManPagesDevelopment
|
||||
ManPagesTest Readme ManPagesClient Test
|
||||
Common Client SharedLibraries)
|
||||
Common Client SharedLibraries ClientPlugins)
|
||||
|
||||
SET(CPACK_RPM_PACKAGE_NAME ${CPACK_PACKAGE_NAME})
|
||||
SET(CPACK_PACKAGE_FILE_NAME "${CPACK_RPM_PACKAGE_NAME}-${VERSION}-${RPM}-${CMAKE_SYSTEM_PROCESSOR}")
|
||||
|
@ -58,7 +58,7 @@ FOREACH(file ${ABI_HEADERS})
|
||||
|
||||
EXECUTE_PROCESS(
|
||||
COMMAND ${COMPILER}
|
||||
-E -nostdinc -dI -DMYSQL_ABI_CHECK -I${SOURCE_DIR}/include
|
||||
-E -nostdinc -DMYSQL_ABI_CHECK -I${SOURCE_DIR}/include
|
||||
-I${BINARY_DIR}/include -I${SOURCE_DIR}/include/mysql -I${SOURCE_DIR}/sql
|
||||
${file}
|
||||
ERROR_QUIET OUTPUT_FILE ${tmpfile})
|
||||
|
@ -308,17 +308,15 @@ INCLUDE(CheckCCompilerFlag)
|
||||
|
||||
SET(VISIBILITY_HIDDEN_FLAG)
|
||||
|
||||
IF(CMAKE_COMPILER_IS_GNUCXX AND UNIX)
|
||||
IF(CMAKE_C_COMPILER_ID MATCHES "SunPro")
|
||||
SET(VISIBILITY_HIDDEN_FLAG "-xldscope=hidden")
|
||||
ELSEIF(UNIX)
|
||||
CHECK_C_COMPILER_FLAG("-fvisibility=hidden" HAVE_VISIBILITY_HIDDEN)
|
||||
IF(HAVE_VISIBILITY_HIDDEN)
|
||||
SET(VISIBILITY_HIDDEN_FLAG "-fvisibility=hidden")
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
IF(CMAKE_C_COMPILER_ID MATCHES "SunPro")
|
||||
SET(VISIBILITY_HIDDEN_FLAG "-xldscope=hidden")
|
||||
ENDIF()
|
||||
|
||||
# We try to hide the symbols in yassl/zlib to avoid name clashes with
|
||||
# other libraries like openssl.
|
||||
FUNCTION(RESTRICT_SYMBOL_EXPORTS target)
|
||||
|
@ -41,11 +41,11 @@ IF(MYSQL_MAINTAINER_MODE MATCHES "ERR")
|
||||
ENDIF()
|
||||
|
||||
# Set warning flags for GCC/Clang
|
||||
IF(CMAKE_COMPILER_IS_GNUCC OR CMAKE_C_COMPILER_ID MATCHES "Clang")
|
||||
IF(CMAKE_C_COMPILER_ID MATCHES "GNU|Clang")
|
||||
SET(MY_MAINTAINER_C_WARNINGS "${MY_C_WARNING_FLAGS}")
|
||||
ENDIF()
|
||||
# Set warning flags for G++/Clang++
|
||||
IF(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
||||
IF(CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang")
|
||||
SET(MY_MAINTAINER_CXX_WARNINGS "${MY_CXX_WARNING_FLAGS}")
|
||||
ENDIF()
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||
# Copyright (c) 2009, 2015, Oracle and/or its affiliates.
|
||||
#
|
||||
# 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
|
||||
@ -60,9 +60,9 @@ IF(NOT GIT_EXECUTABLE)
|
||||
|
||||
# Save bison output first.
|
||||
CONFIGURE_FILE(${CMAKE_BINARY_DIR}/sql/sql_yacc.cc
|
||||
${CMAKE_BINARY_DIR}/sql_yacc.cc COPY_ONLY)
|
||||
${CMAKE_BINARY_DIR}/sql_yacc.cc COPYONLY)
|
||||
CONFIGURE_FILE(${CMAKE_BINARY_DIR}/sql/sql_yacc.h
|
||||
${CMAKE_BINARY_DIR}/sql_yacc.h COPY_ONLY)
|
||||
${CMAKE_BINARY_DIR}/sql_yacc.h COPYONLY)
|
||||
|
||||
IF(CMAKE_GENERATOR MATCHES "Makefiles")
|
||||
# make clean
|
||||
@ -74,9 +74,9 @@ IF(NOT GIT_EXECUTABLE)
|
||||
|
||||
# Restore bison output
|
||||
CONFIGURE_FILE(${CMAKE_BINARY_DIR}/sql_yacc.cc
|
||||
${CMAKE_BINARY_DIR}/sql/sql_yacc.cc COPY_ONLY)
|
||||
${CMAKE_BINARY_DIR}/sql/sql_yacc.cc COPYONLY)
|
||||
CONFIGURE_FILE(${CMAKE_BINARY_DIR}/sql_yacc.h
|
||||
${CMAKE_BINARY_DIR}/sql/sql_yacc.h COPY_ONLY)
|
||||
${CMAKE_BINARY_DIR}/sql/sql_yacc.h COPYONLY)
|
||||
FILE(REMOVE ${CMAKE_BINARY_DIR}/sql_yacc.cc)
|
||||
FILE(REMOVE ${CMAKE_BINARY_DIR}/sql_yacc.h)
|
||||
ENDIF()
|
||||
|
@ -352,7 +352,6 @@ SET(C_HAS___inline 1 CACHE INTERNAL "")
|
||||
SET(FIONREAD_IN_SYS_IOCTL CACHE INTERNAL "")
|
||||
SET(FIONREAD_IN_SYS_FILIO CACHE INTERNAL "")
|
||||
SET(GWINSZ_IN_SYS_IOCTL CACHE INTERNAL "")
|
||||
SET(HAVE_CXXABI_H CACHE INTERNAL "")
|
||||
SET(HAVE_NDIR_H CACHE INTERNAL "")
|
||||
SET(HAVE_SYS_NDIR_H CACHE INTERNAL "")
|
||||
SET(HAVE_SYS_NDIR_H CACHE INTERNAL "")
|
||||
@ -371,4 +370,8 @@ SET(HAVE_SYS_UTSNAME_H CACHE INTERNAL "")
|
||||
SET(HAVE_PTHREAD_ATTR_GETGUARDSIZE CACHE INTERNAL "")
|
||||
SET(HAVE_UCONTEXT_H CACHE INTERNAL "")
|
||||
SET(HAVE_SOCKPEERCRED CACHE INTERNAL "")
|
||||
SET(HAVE_ABI_CXA_DEMANGLE CACHE INTERNAL "")
|
||||
SET(HAVE_GCC_ATOMIC_BUILTINS CACHE INTERNAL "")
|
||||
SET(HAVE_GCC_C11_ATOMICS CACHE INTERNAL "")
|
||||
SET(HAVE_VISIBILITY_HIDDEN CACHE INTERNAL "")
|
||||
ENDIF(MSVC)
|
||||
|
@ -27,7 +27,6 @@
|
||||
#cmakedefine HAVE_BSEARCH 1
|
||||
#cmakedefine HAVE_CRYPT_H 1
|
||||
#cmakedefine HAVE_CURSES_H 1
|
||||
#cmakedefine HAVE_CXXABI_H 1
|
||||
#cmakedefine HAVE_BFD_H 1
|
||||
#cmakedefine HAVE_NCURSES_H 1
|
||||
#cmakedefine HAVE_NDIR_H 1
|
||||
@ -205,7 +204,7 @@
|
||||
#cmakedefine HAVE_MADVISE 1
|
||||
#cmakedefine HAVE_DECL_MADVISE 1
|
||||
#cmakedefine HAVE_DECL_TGOTO 1
|
||||
#cmakedefine HAVE_DECL_MHA_MAPSIZE_VA
|
||||
#cmakedefine HAVE_DECL_MHA_MAPSIZE_VA 1
|
||||
#cmakedefine HAVE_MALLINFO 1
|
||||
#cmakedefine HAVE_MEMCPY 1
|
||||
#cmakedefine HAVE_MEMMOVE 1
|
||||
@ -400,7 +399,7 @@
|
||||
|
||||
#cmakedefine SOCKET_SIZE_TYPE @SOCKET_SIZE_TYPE@
|
||||
|
||||
#cmakedefine HAVE_MBSTATE_T
|
||||
#cmakedefine HAVE_MBSTATE_T 1
|
||||
|
||||
#define MAX_INDEXES 64
|
||||
|
||||
@ -435,15 +434,15 @@
|
||||
#cmakedefine HAVE_WCTYPE_H 1
|
||||
#cmakedefine HAVE_WCHAR_H 1
|
||||
#cmakedefine HAVE_LANGINFO_H 1
|
||||
#cmakedefine HAVE_MBRLEN
|
||||
#cmakedefine HAVE_MBSCMP
|
||||
#cmakedefine HAVE_MBSRTOWCS
|
||||
#cmakedefine HAVE_WCRTOMB
|
||||
#cmakedefine HAVE_MBRTOWC
|
||||
#cmakedefine HAVE_WCSCOLL
|
||||
#cmakedefine HAVE_WCSDUP
|
||||
#cmakedefine HAVE_WCWIDTH
|
||||
#cmakedefine HAVE_WCTYPE
|
||||
#cmakedefine HAVE_MBRLEN 1
|
||||
#cmakedefine HAVE_MBSCMP 1
|
||||
#cmakedefine HAVE_MBSRTOWCS 1
|
||||
#cmakedefine HAVE_WCRTOMB 1
|
||||
#cmakedefine HAVE_MBRTOWC 1
|
||||
#cmakedefine HAVE_WCSCOLL 1
|
||||
#cmakedefine HAVE_WCSDUP 1
|
||||
#cmakedefine HAVE_WCWIDTH 1
|
||||
#cmakedefine HAVE_WCTYPE 1
|
||||
#cmakedefine HAVE_ISWLOWER 1
|
||||
#cmakedefine HAVE_ISWUPPER 1
|
||||
#cmakedefine HAVE_TOWLOWER 1
|
||||
@ -457,7 +456,7 @@
|
||||
#cmakedefine HAVE_STRCASECMP 1
|
||||
#cmakedefine HAVE_STRNCASECMP 1
|
||||
#cmakedefine HAVE_STRDUP 1
|
||||
#cmakedefine HAVE_LANGINFO_CODESET
|
||||
#cmakedefine HAVE_LANGINFO_CODESET 1
|
||||
#cmakedefine HAVE_TCGETATTR 1
|
||||
#cmakedefine HAVE_FLOCKFILE 1
|
||||
|
||||
@ -475,6 +474,7 @@
|
||||
|
||||
#cmakedefine MY_ATOMIC_MODE_DUMMY 1
|
||||
#cmakedefine HAVE_GCC_ATOMIC_BUILTINS 1
|
||||
#cmakedefine HAVE_GCC_C11_ATOMICS 1
|
||||
#cmakedefine HAVE_SOLARIS_ATOMIC 1
|
||||
#cmakedefine HAVE_DECL_SHM_HUGETLB 1
|
||||
#cmakedefine HAVE_LARGE_PAGES 1
|
||||
|
@ -52,7 +52,7 @@ IF(NOT SYSTEM_TYPE)
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
IF(CMAKE_COMPILER_IS_GNUCXX)
|
||||
IF(CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang")
|
||||
# MySQL "canonical" GCC flags. At least -fno-rtti flag affects
|
||||
# ABI and cannot be simply removed.
|
||||
SET(CMAKE_CXX_FLAGS
|
||||
@ -175,7 +175,6 @@ CHECK_INCLUDE_FILES (alloca.h HAVE_ALLOCA_H)
|
||||
CHECK_INCLUDE_FILES (aio.h HAVE_AIO_H)
|
||||
CHECK_INCLUDE_FILES (arpa/inet.h HAVE_ARPA_INET_H)
|
||||
CHECK_INCLUDE_FILES (crypt.h HAVE_CRYPT_H)
|
||||
CHECK_INCLUDE_FILE_CXX (cxxabi.h HAVE_CXXABI_H)
|
||||
CHECK_INCLUDE_FILES (dirent.h HAVE_DIRENT_H)
|
||||
CHECK_INCLUDE_FILES (dlfcn.h HAVE_DLFCN_H)
|
||||
CHECK_INCLUDE_FILES (execinfo.h HAVE_EXECINFO_H)
|
||||
@ -880,7 +879,7 @@ ENDIF(NOT HAVE_POSIX_SIGNALS)
|
||||
# Assume regular sprintf
|
||||
SET(SPRINTFS_RETURNS_INT 1)
|
||||
|
||||
IF(CMAKE_COMPILER_IS_GNUCXX AND HAVE_CXXABI_H)
|
||||
IF(CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang")
|
||||
CHECK_CXX_SOURCE_COMPILES("
|
||||
#include <cxxabi.h>
|
||||
int main(int argc, char **argv)
|
||||
@ -952,7 +951,6 @@ SET(SIGNAL_WITH_VIO_CLOSE 1)
|
||||
MARK_AS_ADVANCED(NO_ALARM)
|
||||
|
||||
|
||||
IF(CMAKE_COMPILER_IS_GNUCXX)
|
||||
IF(WITH_ATOMIC_OPS STREQUAL "up")
|
||||
SET(MY_ATOMIC_MODE_DUMMY 1 CACHE BOOL "Assume single-CPU mode, no concurrency")
|
||||
ELSEIF(WITH_ATOMIC_OPS STREQUAL "smp")
|
||||
@ -981,10 +979,17 @@ ELSEIF(NOT WITH_ATOMIC_OPS)
|
||||
return 0;
|
||||
}"
|
||||
HAVE_GCC_ATOMIC_BUILTINS)
|
||||
CHECK_CXX_SOURCE_COMPILES("
|
||||
int main()
|
||||
{
|
||||
long long int var= 1;
|
||||
long long int *ptr= &var;
|
||||
return (int)__atomic_load_n(ptr, __ATOMIC_SEQ_CST);
|
||||
}"
|
||||
HAVE_GCC_C11_ATOMICS)
|
||||
ELSE()
|
||||
MESSAGE(FATAL_ERROR "${WITH_ATOMIC_OPS} is not a valid value for WITH_ATOMIC_OPS!")
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
SET(WITH_ATOMIC_OPS "${WITH_ATOMIC_OPS}" CACHE STRING "Implement atomic operations using atomic CPU instructions for multi-processor (smp) or uniprocessor (up) configuration. By default gcc built-in sync functions are used, if available and 'smp' configuration otherwise.")
|
||||
MARK_AS_ADVANCED(WITH_ATOMIC_OPS MY_ATOMIC_MODE_DUMMY)
|
||||
|
67
debian/dist/Debian/control
vendored
67
debian/dist/Debian/control
vendored
@ -4,7 +4,13 @@ Priority: optional
|
||||
Maintainer: MariaDB Developers <maria-developers@lists.launchpad.net>
|
||||
XSBC-Original-Maintainer: Maria Developers <maria-developers@lists.launchpad.net>
|
||||
Uploaders: MariaDB Developers <maria-developers@lists.launchpad.net>
|
||||
Build-Depends: libtool (>= 1.4.2-7), procps | hurd, debhelper, file (>= 3.28), libncurses5-dev (>= 5.0-6), perl (>= 5.6.0), libwrap0-dev (>= 7.6-8.3), zlib1g-dev (>= 1:1.1.3-5), ${LIBREADLINE_DEV}, libssl-dev, libpam0g-dev, psmisc, po-debconf, chrpath, automake1.9, doxygen, texlive-latex-base, ghostscript | gs-gpl, dpatch, gawk, bison, lsb-release, hardening-wrapper, cmake (>= 2.7), libaio-dev, ${MAYBE_LIBCRACK} libjemalloc-dev (>= 3.0.0)
|
||||
Build-Depends: procps | hurd, debhelper, libncurses5-dev (>= 5.0-6),
|
||||
perl (>= 5.6.0), libwrap0-dev (>= 7.6-8.3),
|
||||
zlib1g-dev (>= 1:1.1.3-5), ${LIBREADLINE_DEV}, libssl-dev,
|
||||
libpam0g-dev, psmisc, po-debconf, chrpath,
|
||||
dpatch, gawk, bison, lsb-release, hardening-wrapper,
|
||||
cmake (>= 2.7), libaio-dev, ${MAYBE_LIBCRACK}
|
||||
libjemalloc-dev (>= 3.0.0)
|
||||
Standards-Version: 3.8.3
|
||||
Homepage: http://mariadb.org/
|
||||
Vcs-Browser: https://github.com/MariaDB/server/tree/10.1/
|
||||
@ -16,7 +22,9 @@ Architecture: any
|
||||
Depends: mariadb-common, libmysqlclient18 (= ${source:Version}), ${shlibs:Depends}, ${misc:Depends}
|
||||
Conflicts: mariadb-server-10.0 (<< 10.0.5), mariadb-galera-server-10.0 (<< 10.0.5),
|
||||
mariadb-server-5.5 (<< 5.5.33), mariadb-galera-server-5.5 (<< 5.5.33),
|
||||
mariadb-server-5.1, mariadb-server-5.2, mariadb-server-5.3
|
||||
mariadb-server-5.1,
|
||||
mariadb-server-5.2,
|
||||
mariadb-server-5.3
|
||||
Description: MariaDB database client library
|
||||
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
|
||||
server. SQL (Structured Query Language) is the most popular database query
|
||||
@ -105,13 +113,15 @@ Conflicts: mysql-client (<< 5.0.51), mysql-client-5.0,
|
||||
mysql-client-core-5.1, mysql-client-core-5.5,
|
||||
mariadb-client-5.1, mariadb-client-core-5.1,
|
||||
mariadb-client-5.2, mariadb-client-core-5.2,
|
||||
mariadb-client-5.3, mariadb-client-core-5.3
|
||||
mariadb-client-5.3, mariadb-client-core-5.3,
|
||||
mariadb-client-5.5, mariadb-client-core-5.5
|
||||
Replaces: mysql-client (<< 5.0.51), mysql-client-5.0,
|
||||
mysql-client-5.1, mysql-client-5.5,
|
||||
mysql-client-core-5.1, mysql-client-core-5.5,
|
||||
mariadb-client-5.1, mariadb-client-core-5.1,
|
||||
mariadb-client-5.2, mariadb-client-core-5.2,
|
||||
mariadb-client-5.3, mariadb-client-core-5.3
|
||||
mariadb-client-5.3, mariadb-client-core-5.3,
|
||||
mariadb-client-5.5, mariadb-client-core-5.5
|
||||
Description: MariaDB database core client binaries
|
||||
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
|
||||
server. SQL (Structured Query Language) is the most popular database query
|
||||
@ -131,11 +141,16 @@ Provides: virtual-mysql-client, mysql-client,
|
||||
mysql-client-4.1, mysql-client-5.1, mysql-client-5.5
|
||||
Conflicts: mysql-client (<< 5.0.51), mysql-client-5.0, mysql-client-5.1,
|
||||
mariadb-client (<< ${source:Version}),
|
||||
mariadb-client-5.1, mariadb-client-5.2, mariadb-client-5.3, mysql-client-5.5
|
||||
mariadb-client-5.1,
|
||||
mariadb-client-5.2,
|
||||
mariadb-client-5.3,
|
||||
mariadb-client-5.5, mysql-client-5.5
|
||||
Replaces: mysql-client (<< 5.0.51), mysql-client-5.0, mysql-client-5.1,
|
||||
mysql-client-5.5,
|
||||
mariadb-client (<< ${source:Version}),
|
||||
mariadb-client-5.1, mariadb-client-5.2, mariadb-client-5.3
|
||||
mariadb-client-5.1,
|
||||
mariadb-client-5.2,
|
||||
mariadb-client-5.3,
|
||||
mariadb-client-5.5, mysql-client-5.5
|
||||
Description: MariaDB database client binaries
|
||||
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
|
||||
server. SQL (Structured Query Language) is the most popular database query
|
||||
@ -149,18 +164,16 @@ Package: mariadb-server-core-10.1
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, libmariadbclient18 (>= ${binary:Version})
|
||||
Provides: mysql-server-core, mysql-server-core-5.1, mysql-server-core-5.5
|
||||
Conflicts: mariadb-server-5.1 (<< 5.1.60),
|
||||
mariadb-server-5.2 (<< 5.2.10),
|
||||
mariadb-server-5.3 (<< 5.3.3),
|
||||
mysql-server-5.0,
|
||||
mysql-server-core-5.0, mysql-server-core-5.1, mysql-server-core-5.5,
|
||||
mariadb-server-core-5.1, mariadb-server-core-5.2, mariadb-server-core-5.5
|
||||
Replaces: mariadb-server-5.1 (<< 5.1.60),
|
||||
mariadb-server-5.2 (<< 5.2.10),
|
||||
mariadb-server-5.3 (<< 5.3.3),
|
||||
mysql-server-5.0,
|
||||
mysql-server-core-5.0, mysql-server-core-5.1, mysql-server-core-5.5,
|
||||
mariadb-server-core-5.1, mariadb-server-core-5.2, mariadb-server-core-5.5
|
||||
Conflicts: mysql-server-5.0, mysql-server-core-5.0,
|
||||
mariadb-server-core-5.1, mysql-server-core-5.1,
|
||||
mariadb-server-core-5.2,
|
||||
mariadb-server-core-5.3,
|
||||
mariadb-server-core-5.5, mysql-server-core-5.5
|
||||
Replaces: mysql-server-5.0, mysql-server-core-5.0,
|
||||
mariadb-server-core-5.1, mysql-server-core-5.1,
|
||||
mariadb-server-core-5.2,
|
||||
mariadb-server-core-5.3,
|
||||
mariadb-server-core-5.5, mysql-server-core-5.5
|
||||
Description: MariaDB database core server files
|
||||
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
|
||||
server. SQL (Structured Query Language) is the most popular database query
|
||||
@ -173,10 +186,10 @@ Package: mariadb-test-10.1
|
||||
Section: database
|
||||
Architecture: any
|
||||
Depends: mariadb-server-10.1 (= ${source:Version}), mariadb-client-10.1 (= ${source:Version})
|
||||
Suggests: patch
|
||||
Conflicts: mariadb-test (<< ${source:Version}),
|
||||
mariadb-test-5.1, mariadb-test-5.2, mariadb-test-5.3,
|
||||
mariadb-server-5.5 (<< 5.5.33), mariadb-galera-server-5.5 (<< 5.5.33)
|
||||
Suggests: patch
|
||||
Replaces: mariadb-test (<< ${source:Version}),
|
||||
mariadb-test-5.1, mariadb-test-5.2, mariadb-test-5.3
|
||||
Description: MariaDB database regression test suite
|
||||
@ -199,12 +212,18 @@ Depends: mariadb-client-10.1 (>= ${source:Version}), libdbi-perl,
|
||||
coreutils, bsdutils, findutils, tar
|
||||
Provides: mariadb-server, mysql-server, virtual-mysql-server
|
||||
Conflicts: mariadb-server (<< ${source:Version}), mysql-server (<< ${source:Version}),
|
||||
mysql-server-4.1, mysql-server-5.0, mysql-server-5.1, mysql-server-5.5,
|
||||
mariadb-server-5.1, mariadb-server-5.2, mariadb-server-5.3,
|
||||
mysql-server-4.1, mysql-server-5.0,
|
||||
mariadb-server-5.1, mysql-server-5.1,
|
||||
mariadb-server-5.2,
|
||||
mariadb-server-5.3,
|
||||
mariadb-server-5.5, mysql-server-5.5,
|
||||
mariadb-tokudb-engine-5.5, mariadb-tokudb-engine-10.0
|
||||
Replaces: mariadb-server (<< ${source:Version}), mysql-server (<< ${source:Version}),
|
||||
mysql-server-4.1, mysql-server-5.0, mysql-server-5.1, mysql-server-5.5,
|
||||
mariadb-server-5.1, mariadb-server-5.2, mariadb-server-5.3,
|
||||
mysql-server-4.1, mysql-server-5.0,
|
||||
mariadb-server-5.1, mysql-server-5.1,
|
||||
mariadb-server-5.2,
|
||||
mariadb-server-5.3,
|
||||
mariadb-server-5.5, mysql-server-5.5,
|
||||
libmariadbclient16 (<< 5.3.4), libmariadbclient-dev (<< 5.5.0),
|
||||
mariadb-tokudb-engine-5.5, mariadb-tokudb-engine-10.0
|
||||
Description: MariaDB database server binaries
|
||||
|
59
debian/dist/Ubuntu/control
vendored
59
debian/dist/Ubuntu/control
vendored
@ -4,7 +4,13 @@ Priority: optional
|
||||
Maintainer: MariaDB Developers <maria-developers@lists.launchpad.net>
|
||||
XSBC-Original-Maintainer: Maria Developers <maria-developers@lists.launchpad.net>
|
||||
Uploaders: MariaDB Developers <maria-developers@lists.launchpad.net>
|
||||
Build-Depends: libtool (>= 1.4.2-7), procps | hurd, debhelper, file (>= 3.28), libncurses5-dev (>= 5.0-6), perl (>= 5.6.0), libwrap0-dev (>= 7.6-8.3), zlib1g-dev (>= 1:1.1.3-5), ${LIBREADLINE_DEV}, libssl-dev, libpam0g-dev, psmisc, po-debconf, chrpath, automake1.9, doxygen, texlive-latex-base, ghostscript | gs-gpl, dpatch, gawk, bison, lsb-release, hardening-wrapper, cmake (>= 2.7), libaio-dev, ${MAYBE_LIBCRACK} libjemalloc-dev (>= 3.0.0)
|
||||
Build-Depends: procps | hurd, debhelper, libncurses5-dev (>= 5.0-6),
|
||||
perl (>= 5.6.0), libwrap0-dev (>= 7.6-8.3),
|
||||
zlib1g-dev (>= 1:1.1.3-5), ${LIBREADLINE_DEV}, libssl-dev,
|
||||
libpam0g-dev, psmisc, po-debconf, chrpath,
|
||||
dpatch, gawk, bison, lsb-release, hardening-wrapper,
|
||||
cmake (>= 2.7), libaio-dev, ${MAYBE_LIBCRACK}
|
||||
libjemalloc-dev (>= 3.0.0)
|
||||
Standards-Version: 3.8.2
|
||||
Homepage: http://mariadb.org/
|
||||
Vcs-Browser: http://bazaar.launchpad.net/~maria-captains/maria/10.1/files
|
||||
@ -16,7 +22,9 @@ Architecture: any
|
||||
Depends: mariadb-common, libmysqlclient18 (= ${source:Version}), ${shlibs:Depends}, ${misc:Depends}
|
||||
Conflicts: mariadb-server-10.0 (<< 10.0.5), mariadb-galera-server-10.0 (<< 10.0.5),
|
||||
mariadb-server-5.5 (<< 5.5.33), mariadb-galera-server-5.5 (<< 5.5.33),
|
||||
mariadb-server-5.1, mariadb-server-5.2, mariadb-server-5.3
|
||||
mariadb-server-5.1,
|
||||
mariadb-server-5.2,
|
||||
mariadb-server-5.3
|
||||
Description: MariaDB database client library
|
||||
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
|
||||
server. SQL (Structured Query Language) is the most popular database query
|
||||
@ -105,13 +113,15 @@ Conflicts: mysql-client (<< 5.0.51), mysql-client-5.0,
|
||||
mysql-client-core-5.1, mysql-client-core-5.5,
|
||||
mariadb-client-5.1, mariadb-client-core-5.1,
|
||||
mariadb-client-5.2, mariadb-client-core-5.2,
|
||||
mariadb-client-5.3, mariadb-client-core-5.3
|
||||
mariadb-client-5.3, mariadb-client-core-5.3,
|
||||
mariadb-client-5.5, mariadb-client-core-5.5
|
||||
Replaces: mysql-client (<< 5.0.51), mysql-client-5.0,
|
||||
mysql-client-5.1, mysql-client-5.5,
|
||||
mysql-client-core-5.1, mysql-client-core-5.5,
|
||||
mariadb-client-5.1, mariadb-client-core-5.1,
|
||||
mariadb-client-5.2, mariadb-client-core-5.2,
|
||||
mariadb-client-5.3, mariadb-client-core-5.3
|
||||
mariadb-client-5.3, mariadb-client-core-5.3,
|
||||
mariadb-client-5.5, mariadb-client-core-5.5
|
||||
Description: MariaDB database core client binaries
|
||||
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
|
||||
server. SQL (Structured Query Language) is the most popular database query
|
||||
@ -131,11 +141,16 @@ Provides: virtual-mysql-client, mysql-client,
|
||||
mysql-client-4.1, mysql-client-5.1, mysql-client-5.5
|
||||
Conflicts: mysql-client (<< 5.0.51), mysql-client-5.0, mysql-client-5.1,
|
||||
mariadb-client (<< ${source:Version}),
|
||||
mariadb-client-5.1, mariadb-client-5.2, mariadb-client-5.3, mysql-client-5.5
|
||||
mariadb-client-5.1,
|
||||
mariadb-client-5.2,
|
||||
mariadb-client-5.3,
|
||||
mariadb-client-5.5, mysql-client-5.5
|
||||
Replaces: mysql-client (<< 5.0.51), mysql-client-5.0, mysql-client-5.1,
|
||||
mysql-client-5.5,
|
||||
mariadb-client (<< ${source:Version}),
|
||||
mariadb-client-5.1, mariadb-client-5.2, mariadb-client-5.3
|
||||
mariadb-client-5.1,
|
||||
mariadb-client-5.2,
|
||||
mariadb-client-5.3,
|
||||
mariadb-client-5.5, mysql-client-5.5
|
||||
Description: MariaDB database client binaries
|
||||
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
|
||||
server. SQL (Structured Query Language) is the most popular database query
|
||||
@ -149,12 +164,16 @@ Package: mariadb-server-core-10.1
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, libmariadbclient18 (>= ${binary:Version})
|
||||
Provides: mysql-server-core, mysql-server-core-5.1, mysql-server-core-5.5
|
||||
Conflicts: mysql-server-5.0,
|
||||
mysql-server-core-5.0, mysql-server-core-5.1, mysql-server-core-5.5,
|
||||
mariadb-server-core-5.1, mariadb-server-core-5.2, mariadb-server-core-5.5
|
||||
Replaces: mysql-server-5.0,
|
||||
mysql-server-core-5.0, mysql-server-core-5.1, mysql-server-core-5.5,
|
||||
mariadb-server-core-5.1, mariadb-server-core-5.2, mariadb-server-core-5.5
|
||||
Conflicts: mysql-server-5.0, mysql-server-core-5.0,
|
||||
mariadb-server-core-5.1, mysql-server-core-5.1,
|
||||
mariadb-server-core-5.2,
|
||||
mariadb-server-core-5.3,
|
||||
mariadb-server-core-5.5, mysql-server-core-5.5
|
||||
Replaces: mysql-server-5.0, mysql-server-core-5.0,
|
||||
mariadb-server-core-5.1, mysql-server-core-5.1,
|
||||
mariadb-server-core-5.2,
|
||||
mariadb-server-core-5.3,
|
||||
mariadb-server-core-5.5, mysql-server-core-5.5
|
||||
Description: MariaDB database core server files
|
||||
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
|
||||
server. SQL (Structured Query Language) is the most popular database query
|
||||
@ -193,12 +212,18 @@ Depends: mariadb-client-10.1 (>= ${source:Version}), libdbi-perl,
|
||||
coreutils, bsdutils, findutils, tar
|
||||
Provides: mariadb-server, mysql-server, virtual-mysql-server
|
||||
Conflicts: mariadb-server (<< ${source:Version}), mysql-server (<< ${source:Version}),
|
||||
mysql-server-4.1, mysql-server-5.0, mysql-server-5.1, mysql-server-5.5,
|
||||
mariadb-server-5.1, mariadb-server-5.2, mariadb-server-5.3,
|
||||
mysql-server-4.1, mysql-server-5.0,
|
||||
mariadb-server-5.1, mysql-server-5.1,
|
||||
mariadb-server-5.2,
|
||||
mariadb-server-5.3,
|
||||
mariadb-server-5.5, mysql-server-5.5,
|
||||
mariadb-tokudb-engine-5.5, mariadb-tokudb-engine-10.0
|
||||
Replaces: mariadb-server (<< ${source:Version}), mysql-server (<< ${source:Version}),
|
||||
mysql-server-4.1, mysql-server-5.0, mysql-server-5.1, mysql-server-5.5,
|
||||
mariadb-server-5.1, mariadb-server-5.2, mariadb-server-5.3,
|
||||
mysql-server-4.1, mysql-server-5.0,
|
||||
mariadb-server-5.1, mysql-server-5.1,
|
||||
mariadb-server-5.2,
|
||||
mariadb-server-5.3,
|
||||
mariadb-server-5.5, mysql-server-5.5,
|
||||
libmariadbclient16 (<< 5.3.4), libmariadbclient-dev (<< 5.5.0),
|
||||
mariadb-tokudb-engine-5.5, mariadb-tokudb-engine-10.0
|
||||
Description: MariaDB database server binaries
|
||||
|
@ -20,12 +20,9 @@ INCLUDE_DIRECTORIES(
|
||||
${CMAKE_SOURCE_DIR}/extra/yassl/taocrypt/mySTL)
|
||||
|
||||
ADD_DEFINITIONS(${SSL_DEFINES})
|
||||
IF(CMAKE_COMPILER_IS_GNUXX)
|
||||
#Remove -fno-implicit-templates
|
||||
#(yassl sources cannot be compiled with it)
|
||||
STRING(REPLACE "-fno-implicit-templates" "" CMAKE_CXX_FLAGS
|
||||
${CMAKE_CXX_FLAGS})
|
||||
ENDIF()
|
||||
#Remove -fno-implicit-templates
|
||||
#(yassl sources cannot be compiled with it)
|
||||
STRING(REPLACE "-fno-implicit-templates" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
|
||||
SET(YASSL_SOURCES src/buffer.cpp src/cert_wrapper.cpp src/crypto_wrapper.cpp src/handshake.cpp src/lock.cpp
|
||||
src/log.cpp src/socket_wrapper.cpp src/ssl.cpp src/timer.cpp src/yassl_error.cpp
|
||||
src/yassl_imp.cpp src/yassl_int.cpp)
|
||||
|
@ -31,8 +31,8 @@
|
||||
#define make_atomic_store_body(S) *a= v
|
||||
#define MY_ATOMIC_MODE "gcc-builtins-up"
|
||||
|
||||
#elif defined(__ATOMIC_SEQ_CST)
|
||||
#define MY_ATOMIC_MODE "gcc-builtins-smp"
|
||||
#elif defined(HAVE_GCC_C11_ATOMICS)
|
||||
#define MY_ATOMIC_MODE "gcc-atomics-smp"
|
||||
#define make_atomic_load_body(S) \
|
||||
ret= __atomic_load_n(a, __ATOMIC_SEQ_CST)
|
||||
#define make_atomic_store_body(S) \
|
||||
|
@ -35,8 +35,7 @@
|
||||
|
||||
#define HAVE_WRITE_CORE
|
||||
|
||||
#if HAVE_BACKTRACE && HAVE_BACKTRACE_SYMBOLS && \
|
||||
HAVE_CXXABI_H && HAVE_ABI_CXA_DEMANGLE && \
|
||||
#if HAVE_BACKTRACE && HAVE_BACKTRACE_SYMBOLS && HAVE_ABI_CXA_DEMANGLE && \
|
||||
HAVE_WEAK_SYMBOL
|
||||
#define BACKTRACE_DEMANGLE 1
|
||||
#endif
|
||||
|
@ -1,7 +1,5 @@
|
||||
typedef char my_bool;
|
||||
typedef int my_socket;
|
||||
#include "mysql_version.h"
|
||||
#include "mysql_com.h"
|
||||
enum enum_server_command
|
||||
{
|
||||
COM_SLEEP, COM_QUIT, COM_INIT_DB, COM_QUERY, COM_FIELD_LIST,
|
||||
@ -143,7 +141,6 @@ void get_tty_password_buff(const char *opt_message, char *to, size_t length);
|
||||
const char *mysql_errno_to_sqlstate(unsigned int mysql_errno);
|
||||
my_bool my_thread_init(void);
|
||||
void my_thread_end(void);
|
||||
#include "mysql_time.h"
|
||||
typedef long my_time_t;
|
||||
enum enum_mysql_timestamp_type
|
||||
{
|
||||
@ -157,7 +154,6 @@ typedef struct st_mysql_time
|
||||
my_bool neg;
|
||||
enum enum_mysql_timestamp_type time_type;
|
||||
} MYSQL_TIME;
|
||||
#include "my_list.h"
|
||||
typedef struct st_list {
|
||||
struct st_list *prev,*next;
|
||||
void *data;
|
||||
@ -199,8 +195,6 @@ typedef struct st_mysql_field {
|
||||
typedef char **MYSQL_ROW;
|
||||
typedef unsigned int MYSQL_FIELD_OFFSET;
|
||||
typedef unsigned long long my_ulonglong;
|
||||
#include "typelib.h"
|
||||
#include "my_alloc.h"
|
||||
typedef struct st_used_mem
|
||||
{
|
||||
struct st_used_mem *next;
|
||||
@ -244,7 +238,6 @@ typedef struct st_mysql_rows {
|
||||
unsigned long length;
|
||||
} MYSQL_ROWS;
|
||||
typedef MYSQL_ROWS *MYSQL_ROW_OFFSET;
|
||||
#include "my_alloc.h"
|
||||
typedef struct embedded_query_result EMBEDDED_QUERY_RESULT;
|
||||
typedef struct st_mysql_data {
|
||||
MYSQL_ROWS *data;
|
||||
|
@ -3,7 +3,6 @@ struct st_mysql_client_plugin
|
||||
int type; unsigned int interface_version; const char *name; const char *author; const char *desc; unsigned int version[3]; const char *license; void *mysql_api; int (*init)(char *, size_t, int, va_list); int (*deinit)(); int (*options)(const char *option, const void *);
|
||||
};
|
||||
struct st_mysql;
|
||||
#include <mysql/plugin_auth_common.h>
|
||||
typedef struct st_plugin_vio_info
|
||||
{
|
||||
enum { MYSQL_VIO_INVALID, MYSQL_VIO_TCP, MYSQL_VIO_SOCKET,
|
||||
@ -24,7 +23,6 @@ struct st_mysql_client_plugin_AUTHENTICATION
|
||||
int type; unsigned int interface_version; const char *name; const char *author; const char *desc; unsigned int version[3]; const char *license; void *mysql_api; int (*init)(char *, size_t, int, va_list); int (*deinit)(); int (*options)(const char *option, const void *);
|
||||
int (*authenticate_user)(MYSQL_PLUGIN_VIO *vio, struct st_mysql *mysql);
|
||||
};
|
||||
#include <mysql/auth_dialog_client.h>
|
||||
struct st_mysql;
|
||||
typedef char *(*mysql_authentication_dialog_ask_t)(struct st_mysql *mysql,
|
||||
int type, const char *prompt, char *buf, int buf_len);
|
||||
|
@ -1,15 +1,11 @@
|
||||
#include "plugin.h"
|
||||
typedef char my_bool;
|
||||
typedef void * MYSQL_PLUGIN;
|
||||
#include <mysql/services.h>
|
||||
#include <mysql/service_my_snprintf.h>
|
||||
extern struct my_snprintf_service_st {
|
||||
size_t (*my_snprintf_type)(char*, size_t, const char*, ...);
|
||||
size_t (*my_vsnprintf_type)(char *, size_t, const char*, va_list);
|
||||
} *my_snprintf_service;
|
||||
size_t my_snprintf(char* to, size_t n, const char* fmt, ...);
|
||||
size_t my_vsnprintf(char *to, size_t n, const char* fmt, va_list ap);
|
||||
#include <mysql/service_thd_alloc.h>
|
||||
struct st_mysql_lex_string
|
||||
{
|
||||
char *str;
|
||||
@ -33,7 +29,6 @@ void *thd_memdup(void* thd, const void* str, unsigned int size);
|
||||
MYSQL_LEX_STRING *thd_make_lex_string(void* thd, MYSQL_LEX_STRING *lex_str,
|
||||
const char *str, unsigned int size,
|
||||
int allocate_lex_string);
|
||||
#include <mysql/service_thd_wait.h>
|
||||
typedef enum _thd_wait_type_e {
|
||||
THD_WAIT_SLEEP= 1,
|
||||
THD_WAIT_DISKIO= 2,
|
||||
@ -54,7 +49,6 @@ extern struct thd_wait_service_st {
|
||||
} *thd_wait_service;
|
||||
void thd_wait_begin(void* thd, int wait_type);
|
||||
void thd_wait_end(void* thd);
|
||||
#include <mysql/service_progress_report.h>
|
||||
extern struct progress_report_service_st {
|
||||
void (*thd_progress_init_func)(void* thd, unsigned int max_stage);
|
||||
void (*thd_progress_report_func)(void* thd,
|
||||
@ -75,9 +69,7 @@ void thd_progress_next_stage(void* thd);
|
||||
void thd_progress_end(void* thd);
|
||||
const char *set_thd_proc_info(void*, const char * info, const char *func,
|
||||
const char *file, unsigned int line);
|
||||
#include <mysql/service_debug_sync.h>
|
||||
extern void (*debug_sync_C_callback_ptr)(void*, const char *, size_t);
|
||||
#include <mysql/service_kill_statement.h>
|
||||
enum thd_kill_levels {
|
||||
THD_IS_NOT_KILLED=0,
|
||||
THD_ABORT_SOFTLY=50,
|
||||
@ -87,8 +79,6 @@ extern struct kill_statement_service_st {
|
||||
enum thd_kill_levels (*thd_kill_level_func)(const void*);
|
||||
} *thd_kill_statement_service;
|
||||
enum thd_kill_levels thd_kill_level(const void*);
|
||||
#include <mysql/service_thd_timezone.h>
|
||||
#include "mysql_time.h"
|
||||
typedef long my_time_t;
|
||||
enum enum_mysql_timestamp_type
|
||||
{
|
||||
@ -108,7 +98,6 @@ extern struct thd_timezone_service_st {
|
||||
} *thd_timezone_service;
|
||||
my_time_t thd_TIME_to_gmt_sec(void* thd, const MYSQL_TIME *ltime, unsigned int *errcode);
|
||||
void thd_gmt_sec_to_TIME(void* thd, MYSQL_TIME *ltime, my_time_t t);
|
||||
#include <mysql/service_sha1.h>
|
||||
extern struct my_sha1_service_st {
|
||||
void (*my_sha1_type)(unsigned char*, const char*, size_t);
|
||||
void (*my_sha1_multi_type)(unsigned char*, ...);
|
||||
@ -123,7 +112,6 @@ size_t my_sha1_context_size();
|
||||
void my_sha1_init(void *context);
|
||||
void my_sha1_input(void *context, const unsigned char *buf, size_t len);
|
||||
void my_sha1_result(void *context, unsigned char *digest);
|
||||
#include <mysql/service_md5.h>
|
||||
extern struct my_md5_service_st {
|
||||
void (*my_md5_type)(unsigned char*, const char*, size_t);
|
||||
void (*my_md5_multi_type)(unsigned char*, ...);
|
||||
@ -138,7 +126,6 @@ size_t my_md5_context_size();
|
||||
void my_md5_init(void *context);
|
||||
void my_md5_input(void *context, const unsigned char *buf, size_t len);
|
||||
void my_md5_result(void *context, unsigned char *digest);
|
||||
#include <mysql/service_logger.h>
|
||||
typedef struct logger_handle_st LOGGER_HANDLE;
|
||||
extern struct logger_service_st {
|
||||
void (*logger_init_mutexes)();
|
||||
@ -160,14 +147,12 @@ extern struct logger_service_st {
|
||||
int logger_printf(LOGGER_HANDLE *log, const char *fmt, ...);
|
||||
int logger_write(LOGGER_HANDLE *log, const char *buffer, size_t size);
|
||||
int logger_rotate(LOGGER_HANDLE *log);
|
||||
#include <mysql/service_thd_autoinc.h>
|
||||
extern struct thd_autoinc_service_st {
|
||||
void (*thd_get_autoinc_func)(const void* thd,
|
||||
unsigned long* off, unsigned long* inc);
|
||||
} *thd_autoinc_service;
|
||||
void thd_get_autoinc(const void* thd,
|
||||
unsigned long* off, unsigned long* inc);
|
||||
#include <mysql/service_thd_error_context.h>
|
||||
extern struct thd_error_context_service_st {
|
||||
const char *(*thd_get_error_message_func)(const void* thd);
|
||||
unsigned int (*thd_get_error_number_func)(const void* thd);
|
||||
@ -185,7 +170,6 @@ void thd_inc_error_row(void* thd);
|
||||
char *thd_get_error_context_description(void* thd,
|
||||
char *buffer, unsigned int length,
|
||||
unsigned int max_query_length);
|
||||
#include <mysql/service_thd_specifics.h>
|
||||
typedef int MYSQL_THD_KEY_T;
|
||||
extern struct thd_specifics_service_st {
|
||||
int (*thd_key_create_func)(MYSQL_THD_KEY_T *key);
|
||||
@ -197,7 +181,6 @@ int thd_key_create(MYSQL_THD_KEY_T *key);
|
||||
void thd_key_delete(MYSQL_THD_KEY_T *key);
|
||||
void* thd_getspecific(void* thd, MYSQL_THD_KEY_T key);
|
||||
int thd_setspecific(void* thd, MYSQL_THD_KEY_T key, void *value);
|
||||
#include <mysql/service_encryption.h>
|
||||
typedef int (*encrypt_decrypt_func)(const unsigned char* src, unsigned int slen,
|
||||
unsigned char* dst, unsigned int* dlen,
|
||||
const unsigned char* key, unsigned int klen,
|
||||
@ -213,7 +196,6 @@ struct encryption_service_st {
|
||||
encrypt_decrypt_func encryption_decrypt_func;
|
||||
};
|
||||
extern struct encryption_service_st encryption_handler;
|
||||
#include <mysql/service_encryption_scheme.h>
|
||||
struct st_encryption_scheme_key {
|
||||
unsigned int version;
|
||||
unsigned char key[16];
|
||||
@ -315,8 +297,6 @@ struct st_maria_plugin
|
||||
const char *version_info;
|
||||
unsigned int maturity;
|
||||
};
|
||||
#include "plugin_ftparser.h"
|
||||
#include "plugin.h"
|
||||
enum enum_ftparser_mode
|
||||
{
|
||||
MYSQL_FTPARSER_SIMPLE_MODE= 0,
|
||||
|
@ -1,15 +1,11 @@
|
||||
#include <mysql/plugin.h>
|
||||
typedef char my_bool;
|
||||
typedef void * MYSQL_PLUGIN;
|
||||
#include <mysql/services.h>
|
||||
#include <mysql/service_my_snprintf.h>
|
||||
extern struct my_snprintf_service_st {
|
||||
size_t (*my_snprintf_type)(char*, size_t, const char*, ...);
|
||||
size_t (*my_vsnprintf_type)(char *, size_t, const char*, va_list);
|
||||
} *my_snprintf_service;
|
||||
size_t my_snprintf(char* to, size_t n, const char* fmt, ...);
|
||||
size_t my_vsnprintf(char *to, size_t n, const char* fmt, va_list ap);
|
||||
#include <mysql/service_thd_alloc.h>
|
||||
struct st_mysql_lex_string
|
||||
{
|
||||
char *str;
|
||||
@ -33,7 +29,6 @@ void *thd_memdup(void* thd, const void* str, unsigned int size);
|
||||
MYSQL_LEX_STRING *thd_make_lex_string(void* thd, MYSQL_LEX_STRING *lex_str,
|
||||
const char *str, unsigned int size,
|
||||
int allocate_lex_string);
|
||||
#include <mysql/service_thd_wait.h>
|
||||
typedef enum _thd_wait_type_e {
|
||||
THD_WAIT_SLEEP= 1,
|
||||
THD_WAIT_DISKIO= 2,
|
||||
@ -54,7 +49,6 @@ extern struct thd_wait_service_st {
|
||||
} *thd_wait_service;
|
||||
void thd_wait_begin(void* thd, int wait_type);
|
||||
void thd_wait_end(void* thd);
|
||||
#include <mysql/service_progress_report.h>
|
||||
extern struct progress_report_service_st {
|
||||
void (*thd_progress_init_func)(void* thd, unsigned int max_stage);
|
||||
void (*thd_progress_report_func)(void* thd,
|
||||
@ -75,9 +69,7 @@ void thd_progress_next_stage(void* thd);
|
||||
void thd_progress_end(void* thd);
|
||||
const char *set_thd_proc_info(void*, const char * info, const char *func,
|
||||
const char *file, unsigned int line);
|
||||
#include <mysql/service_debug_sync.h>
|
||||
extern void (*debug_sync_C_callback_ptr)(void*, const char *, size_t);
|
||||
#include <mysql/service_kill_statement.h>
|
||||
enum thd_kill_levels {
|
||||
THD_IS_NOT_KILLED=0,
|
||||
THD_ABORT_SOFTLY=50,
|
||||
@ -87,8 +79,6 @@ extern struct kill_statement_service_st {
|
||||
enum thd_kill_levels (*thd_kill_level_func)(const void*);
|
||||
} *thd_kill_statement_service;
|
||||
enum thd_kill_levels thd_kill_level(const void*);
|
||||
#include <mysql/service_thd_timezone.h>
|
||||
#include "mysql_time.h"
|
||||
typedef long my_time_t;
|
||||
enum enum_mysql_timestamp_type
|
||||
{
|
||||
@ -108,7 +98,6 @@ extern struct thd_timezone_service_st {
|
||||
} *thd_timezone_service;
|
||||
my_time_t thd_TIME_to_gmt_sec(void* thd, const MYSQL_TIME *ltime, unsigned int *errcode);
|
||||
void thd_gmt_sec_to_TIME(void* thd, MYSQL_TIME *ltime, my_time_t t);
|
||||
#include <mysql/service_sha1.h>
|
||||
extern struct my_sha1_service_st {
|
||||
void (*my_sha1_type)(unsigned char*, const char*, size_t);
|
||||
void (*my_sha1_multi_type)(unsigned char*, ...);
|
||||
@ -123,7 +112,6 @@ size_t my_sha1_context_size();
|
||||
void my_sha1_init(void *context);
|
||||
void my_sha1_input(void *context, const unsigned char *buf, size_t len);
|
||||
void my_sha1_result(void *context, unsigned char *digest);
|
||||
#include <mysql/service_md5.h>
|
||||
extern struct my_md5_service_st {
|
||||
void (*my_md5_type)(unsigned char*, const char*, size_t);
|
||||
void (*my_md5_multi_type)(unsigned char*, ...);
|
||||
@ -138,7 +126,6 @@ size_t my_md5_context_size();
|
||||
void my_md5_init(void *context);
|
||||
void my_md5_input(void *context, const unsigned char *buf, size_t len);
|
||||
void my_md5_result(void *context, unsigned char *digest);
|
||||
#include <mysql/service_logger.h>
|
||||
typedef struct logger_handle_st LOGGER_HANDLE;
|
||||
extern struct logger_service_st {
|
||||
void (*logger_init_mutexes)();
|
||||
@ -160,14 +147,12 @@ extern struct logger_service_st {
|
||||
int logger_printf(LOGGER_HANDLE *log, const char *fmt, ...);
|
||||
int logger_write(LOGGER_HANDLE *log, const char *buffer, size_t size);
|
||||
int logger_rotate(LOGGER_HANDLE *log);
|
||||
#include <mysql/service_thd_autoinc.h>
|
||||
extern struct thd_autoinc_service_st {
|
||||
void (*thd_get_autoinc_func)(const void* thd,
|
||||
unsigned long* off, unsigned long* inc);
|
||||
} *thd_autoinc_service;
|
||||
void thd_get_autoinc(const void* thd,
|
||||
unsigned long* off, unsigned long* inc);
|
||||
#include <mysql/service_thd_error_context.h>
|
||||
extern struct thd_error_context_service_st {
|
||||
const char *(*thd_get_error_message_func)(const void* thd);
|
||||
unsigned int (*thd_get_error_number_func)(const void* thd);
|
||||
@ -185,7 +170,6 @@ void thd_inc_error_row(void* thd);
|
||||
char *thd_get_error_context_description(void* thd,
|
||||
char *buffer, unsigned int length,
|
||||
unsigned int max_query_length);
|
||||
#include <mysql/service_thd_specifics.h>
|
||||
typedef int MYSQL_THD_KEY_T;
|
||||
extern struct thd_specifics_service_st {
|
||||
int (*thd_key_create_func)(MYSQL_THD_KEY_T *key);
|
||||
@ -197,7 +181,6 @@ int thd_key_create(MYSQL_THD_KEY_T *key);
|
||||
void thd_key_delete(MYSQL_THD_KEY_T *key);
|
||||
void* thd_getspecific(void* thd, MYSQL_THD_KEY_T key);
|
||||
int thd_setspecific(void* thd, MYSQL_THD_KEY_T key, void *value);
|
||||
#include <mysql/service_encryption.h>
|
||||
typedef int (*encrypt_decrypt_func)(const unsigned char* src, unsigned int slen,
|
||||
unsigned char* dst, unsigned int* dlen,
|
||||
const unsigned char* key, unsigned int klen,
|
||||
@ -213,7 +196,6 @@ struct encryption_service_st {
|
||||
encrypt_decrypt_func encryption_decrypt_func;
|
||||
};
|
||||
extern struct encryption_service_st encryption_handler;
|
||||
#include <mysql/service_encryption_scheme.h>
|
||||
struct st_encryption_scheme_key {
|
||||
unsigned int version;
|
||||
unsigned char key[16];
|
||||
@ -315,8 +297,6 @@ struct st_maria_plugin
|
||||
const char *version_info;
|
||||
unsigned int maturity;
|
||||
};
|
||||
#include "plugin_ftparser.h"
|
||||
#include "plugin.h"
|
||||
enum enum_ftparser_mode
|
||||
{
|
||||
MYSQL_FTPARSER_SIMPLE_MODE= 0,
|
||||
@ -406,7 +386,6 @@ void *thd_get_ha_data(const void* thd, const struct handlerton *hton);
|
||||
void thd_set_ha_data(void* thd, const struct handlerton *hton,
|
||||
const void *ha_data);
|
||||
void thd_wakeup_subsequent_commits(void* thd, int wakeup_error);
|
||||
#include <mysql/plugin_auth_common.h>
|
||||
typedef struct st_plugin_vio_info
|
||||
{
|
||||
enum { MYSQL_VIO_INVALID, MYSQL_VIO_TCP, MYSQL_VIO_SOCKET,
|
||||
|
@ -1,15 +1,11 @@
|
||||
#include <mysql/plugin.h>
|
||||
typedef char my_bool;
|
||||
typedef void * MYSQL_PLUGIN;
|
||||
#include <mysql/services.h>
|
||||
#include <mysql/service_my_snprintf.h>
|
||||
extern struct my_snprintf_service_st {
|
||||
size_t (*my_snprintf_type)(char*, size_t, const char*, ...);
|
||||
size_t (*my_vsnprintf_type)(char *, size_t, const char*, va_list);
|
||||
} *my_snprintf_service;
|
||||
size_t my_snprintf(char* to, size_t n, const char* fmt, ...);
|
||||
size_t my_vsnprintf(char *to, size_t n, const char* fmt, va_list ap);
|
||||
#include <mysql/service_thd_alloc.h>
|
||||
struct st_mysql_lex_string
|
||||
{
|
||||
char *str;
|
||||
@ -33,7 +29,6 @@ void *thd_memdup(void* thd, const void* str, unsigned int size);
|
||||
MYSQL_LEX_STRING *thd_make_lex_string(void* thd, MYSQL_LEX_STRING *lex_str,
|
||||
const char *str, unsigned int size,
|
||||
int allocate_lex_string);
|
||||
#include <mysql/service_thd_wait.h>
|
||||
typedef enum _thd_wait_type_e {
|
||||
THD_WAIT_SLEEP= 1,
|
||||
THD_WAIT_DISKIO= 2,
|
||||
@ -54,7 +49,6 @@ extern struct thd_wait_service_st {
|
||||
} *thd_wait_service;
|
||||
void thd_wait_begin(void* thd, int wait_type);
|
||||
void thd_wait_end(void* thd);
|
||||
#include <mysql/service_progress_report.h>
|
||||
extern struct progress_report_service_st {
|
||||
void (*thd_progress_init_func)(void* thd, unsigned int max_stage);
|
||||
void (*thd_progress_report_func)(void* thd,
|
||||
@ -75,9 +69,7 @@ void thd_progress_next_stage(void* thd);
|
||||
void thd_progress_end(void* thd);
|
||||
const char *set_thd_proc_info(void*, const char * info, const char *func,
|
||||
const char *file, unsigned int line);
|
||||
#include <mysql/service_debug_sync.h>
|
||||
extern void (*debug_sync_C_callback_ptr)(void*, const char *, size_t);
|
||||
#include <mysql/service_kill_statement.h>
|
||||
enum thd_kill_levels {
|
||||
THD_IS_NOT_KILLED=0,
|
||||
THD_ABORT_SOFTLY=50,
|
||||
@ -87,8 +79,6 @@ extern struct kill_statement_service_st {
|
||||
enum thd_kill_levels (*thd_kill_level_func)(const void*);
|
||||
} *thd_kill_statement_service;
|
||||
enum thd_kill_levels thd_kill_level(const void*);
|
||||
#include <mysql/service_thd_timezone.h>
|
||||
#include "mysql_time.h"
|
||||
typedef long my_time_t;
|
||||
enum enum_mysql_timestamp_type
|
||||
{
|
||||
@ -108,7 +98,6 @@ extern struct thd_timezone_service_st {
|
||||
} *thd_timezone_service;
|
||||
my_time_t thd_TIME_to_gmt_sec(void* thd, const MYSQL_TIME *ltime, unsigned int *errcode);
|
||||
void thd_gmt_sec_to_TIME(void* thd, MYSQL_TIME *ltime, my_time_t t);
|
||||
#include <mysql/service_sha1.h>
|
||||
extern struct my_sha1_service_st {
|
||||
void (*my_sha1_type)(unsigned char*, const char*, size_t);
|
||||
void (*my_sha1_multi_type)(unsigned char*, ...);
|
||||
@ -123,7 +112,6 @@ size_t my_sha1_context_size();
|
||||
void my_sha1_init(void *context);
|
||||
void my_sha1_input(void *context, const unsigned char *buf, size_t len);
|
||||
void my_sha1_result(void *context, unsigned char *digest);
|
||||
#include <mysql/service_md5.h>
|
||||
extern struct my_md5_service_st {
|
||||
void (*my_md5_type)(unsigned char*, const char*, size_t);
|
||||
void (*my_md5_multi_type)(unsigned char*, ...);
|
||||
@ -138,7 +126,6 @@ size_t my_md5_context_size();
|
||||
void my_md5_init(void *context);
|
||||
void my_md5_input(void *context, const unsigned char *buf, size_t len);
|
||||
void my_md5_result(void *context, unsigned char *digest);
|
||||
#include <mysql/service_logger.h>
|
||||
typedef struct logger_handle_st LOGGER_HANDLE;
|
||||
extern struct logger_service_st {
|
||||
void (*logger_init_mutexes)();
|
||||
@ -160,14 +147,12 @@ extern struct logger_service_st {
|
||||
int logger_printf(LOGGER_HANDLE *log, const char *fmt, ...);
|
||||
int logger_write(LOGGER_HANDLE *log, const char *buffer, size_t size);
|
||||
int logger_rotate(LOGGER_HANDLE *log);
|
||||
#include <mysql/service_thd_autoinc.h>
|
||||
extern struct thd_autoinc_service_st {
|
||||
void (*thd_get_autoinc_func)(const void* thd,
|
||||
unsigned long* off, unsigned long* inc);
|
||||
} *thd_autoinc_service;
|
||||
void thd_get_autoinc(const void* thd,
|
||||
unsigned long* off, unsigned long* inc);
|
||||
#include <mysql/service_thd_error_context.h>
|
||||
extern struct thd_error_context_service_st {
|
||||
const char *(*thd_get_error_message_func)(const void* thd);
|
||||
unsigned int (*thd_get_error_number_func)(const void* thd);
|
||||
@ -185,7 +170,6 @@ void thd_inc_error_row(void* thd);
|
||||
char *thd_get_error_context_description(void* thd,
|
||||
char *buffer, unsigned int length,
|
||||
unsigned int max_query_length);
|
||||
#include <mysql/service_thd_specifics.h>
|
||||
typedef int MYSQL_THD_KEY_T;
|
||||
extern struct thd_specifics_service_st {
|
||||
int (*thd_key_create_func)(MYSQL_THD_KEY_T *key);
|
||||
@ -197,7 +181,6 @@ int thd_key_create(MYSQL_THD_KEY_T *key);
|
||||
void thd_key_delete(MYSQL_THD_KEY_T *key);
|
||||
void* thd_getspecific(void* thd, MYSQL_THD_KEY_T key);
|
||||
int thd_setspecific(void* thd, MYSQL_THD_KEY_T key, void *value);
|
||||
#include <mysql/service_encryption.h>
|
||||
typedef int (*encrypt_decrypt_func)(const unsigned char* src, unsigned int slen,
|
||||
unsigned char* dst, unsigned int* dlen,
|
||||
const unsigned char* key, unsigned int klen,
|
||||
@ -213,7 +196,6 @@ struct encryption_service_st {
|
||||
encrypt_decrypt_func encryption_decrypt_func;
|
||||
};
|
||||
extern struct encryption_service_st encryption_handler;
|
||||
#include <mysql/service_encryption_scheme.h>
|
||||
struct st_encryption_scheme_key {
|
||||
unsigned int version;
|
||||
unsigned char key[16];
|
||||
@ -315,8 +297,6 @@ struct st_maria_plugin
|
||||
const char *version_info;
|
||||
unsigned int maturity;
|
||||
};
|
||||
#include "plugin_ftparser.h"
|
||||
#include "plugin.h"
|
||||
enum enum_ftparser_mode
|
||||
{
|
||||
MYSQL_FTPARSER_SIMPLE_MODE= 0,
|
||||
|
@ -1,15 +1,11 @@
|
||||
#include "plugin.h"
|
||||
typedef char my_bool;
|
||||
typedef void * MYSQL_PLUGIN;
|
||||
#include <mysql/services.h>
|
||||
#include <mysql/service_my_snprintf.h>
|
||||
extern struct my_snprintf_service_st {
|
||||
size_t (*my_snprintf_type)(char*, size_t, const char*, ...);
|
||||
size_t (*my_vsnprintf_type)(char *, size_t, const char*, va_list);
|
||||
} *my_snprintf_service;
|
||||
size_t my_snprintf(char* to, size_t n, const char* fmt, ...);
|
||||
size_t my_vsnprintf(char *to, size_t n, const char* fmt, va_list ap);
|
||||
#include <mysql/service_thd_alloc.h>
|
||||
struct st_mysql_lex_string
|
||||
{
|
||||
char *str;
|
||||
@ -33,7 +29,6 @@ void *thd_memdup(void* thd, const void* str, unsigned int size);
|
||||
MYSQL_LEX_STRING *thd_make_lex_string(void* thd, MYSQL_LEX_STRING *lex_str,
|
||||
const char *str, unsigned int size,
|
||||
int allocate_lex_string);
|
||||
#include <mysql/service_thd_wait.h>
|
||||
typedef enum _thd_wait_type_e {
|
||||
THD_WAIT_SLEEP= 1,
|
||||
THD_WAIT_DISKIO= 2,
|
||||
@ -54,7 +49,6 @@ extern struct thd_wait_service_st {
|
||||
} *thd_wait_service;
|
||||
void thd_wait_begin(void* thd, int wait_type);
|
||||
void thd_wait_end(void* thd);
|
||||
#include <mysql/service_progress_report.h>
|
||||
extern struct progress_report_service_st {
|
||||
void (*thd_progress_init_func)(void* thd, unsigned int max_stage);
|
||||
void (*thd_progress_report_func)(void* thd,
|
||||
@ -75,9 +69,7 @@ void thd_progress_next_stage(void* thd);
|
||||
void thd_progress_end(void* thd);
|
||||
const char *set_thd_proc_info(void*, const char * info, const char *func,
|
||||
const char *file, unsigned int line);
|
||||
#include <mysql/service_debug_sync.h>
|
||||
extern void (*debug_sync_C_callback_ptr)(void*, const char *, size_t);
|
||||
#include <mysql/service_kill_statement.h>
|
||||
enum thd_kill_levels {
|
||||
THD_IS_NOT_KILLED=0,
|
||||
THD_ABORT_SOFTLY=50,
|
||||
@ -87,8 +79,6 @@ extern struct kill_statement_service_st {
|
||||
enum thd_kill_levels (*thd_kill_level_func)(const void*);
|
||||
} *thd_kill_statement_service;
|
||||
enum thd_kill_levels thd_kill_level(const void*);
|
||||
#include <mysql/service_thd_timezone.h>
|
||||
#include "mysql_time.h"
|
||||
typedef long my_time_t;
|
||||
enum enum_mysql_timestamp_type
|
||||
{
|
||||
@ -108,7 +98,6 @@ extern struct thd_timezone_service_st {
|
||||
} *thd_timezone_service;
|
||||
my_time_t thd_TIME_to_gmt_sec(void* thd, const MYSQL_TIME *ltime, unsigned int *errcode);
|
||||
void thd_gmt_sec_to_TIME(void* thd, MYSQL_TIME *ltime, my_time_t t);
|
||||
#include <mysql/service_sha1.h>
|
||||
extern struct my_sha1_service_st {
|
||||
void (*my_sha1_type)(unsigned char*, const char*, size_t);
|
||||
void (*my_sha1_multi_type)(unsigned char*, ...);
|
||||
@ -123,7 +112,6 @@ size_t my_sha1_context_size();
|
||||
void my_sha1_init(void *context);
|
||||
void my_sha1_input(void *context, const unsigned char *buf, size_t len);
|
||||
void my_sha1_result(void *context, unsigned char *digest);
|
||||
#include <mysql/service_md5.h>
|
||||
extern struct my_md5_service_st {
|
||||
void (*my_md5_type)(unsigned char*, const char*, size_t);
|
||||
void (*my_md5_multi_type)(unsigned char*, ...);
|
||||
@ -138,7 +126,6 @@ size_t my_md5_context_size();
|
||||
void my_md5_init(void *context);
|
||||
void my_md5_input(void *context, const unsigned char *buf, size_t len);
|
||||
void my_md5_result(void *context, unsigned char *digest);
|
||||
#include <mysql/service_logger.h>
|
||||
typedef struct logger_handle_st LOGGER_HANDLE;
|
||||
extern struct logger_service_st {
|
||||
void (*logger_init_mutexes)();
|
||||
@ -160,14 +147,12 @@ extern struct logger_service_st {
|
||||
int logger_printf(LOGGER_HANDLE *log, const char *fmt, ...);
|
||||
int logger_write(LOGGER_HANDLE *log, const char *buffer, size_t size);
|
||||
int logger_rotate(LOGGER_HANDLE *log);
|
||||
#include <mysql/service_thd_autoinc.h>
|
||||
extern struct thd_autoinc_service_st {
|
||||
void (*thd_get_autoinc_func)(const void* thd,
|
||||
unsigned long* off, unsigned long* inc);
|
||||
} *thd_autoinc_service;
|
||||
void thd_get_autoinc(const void* thd,
|
||||
unsigned long* off, unsigned long* inc);
|
||||
#include <mysql/service_thd_error_context.h>
|
||||
extern struct thd_error_context_service_st {
|
||||
const char *(*thd_get_error_message_func)(const void* thd);
|
||||
unsigned int (*thd_get_error_number_func)(const void* thd);
|
||||
@ -185,7 +170,6 @@ void thd_inc_error_row(void* thd);
|
||||
char *thd_get_error_context_description(void* thd,
|
||||
char *buffer, unsigned int length,
|
||||
unsigned int max_query_length);
|
||||
#include <mysql/service_thd_specifics.h>
|
||||
typedef int MYSQL_THD_KEY_T;
|
||||
extern struct thd_specifics_service_st {
|
||||
int (*thd_key_create_func)(MYSQL_THD_KEY_T *key);
|
||||
@ -197,7 +181,6 @@ int thd_key_create(MYSQL_THD_KEY_T *key);
|
||||
void thd_key_delete(MYSQL_THD_KEY_T *key);
|
||||
void* thd_getspecific(void* thd, MYSQL_THD_KEY_T key);
|
||||
int thd_setspecific(void* thd, MYSQL_THD_KEY_T key, void *value);
|
||||
#include <mysql/service_encryption.h>
|
||||
typedef int (*encrypt_decrypt_func)(const unsigned char* src, unsigned int slen,
|
||||
unsigned char* dst, unsigned int* dlen,
|
||||
const unsigned char* key, unsigned int klen,
|
||||
@ -213,7 +196,6 @@ struct encryption_service_st {
|
||||
encrypt_decrypt_func encryption_decrypt_func;
|
||||
};
|
||||
extern struct encryption_service_st encryption_handler;
|
||||
#include <mysql/service_encryption_scheme.h>
|
||||
struct st_encryption_scheme_key {
|
||||
unsigned int version;
|
||||
unsigned char key[16];
|
||||
@ -315,7 +297,6 @@ struct st_maria_plugin
|
||||
const char *version_info;
|
||||
unsigned int maturity;
|
||||
};
|
||||
#include "plugin_ftparser.h"
|
||||
struct st_mysql_daemon
|
||||
{
|
||||
int interface_version;
|
||||
|
@ -1,15 +1,11 @@
|
||||
#include <mysql/plugin.h>
|
||||
typedef char my_bool;
|
||||
typedef void * MYSQL_PLUGIN;
|
||||
#include <mysql/services.h>
|
||||
#include <mysql/service_my_snprintf.h>
|
||||
extern struct my_snprintf_service_st {
|
||||
size_t (*my_snprintf_type)(char*, size_t, const char*, ...);
|
||||
size_t (*my_vsnprintf_type)(char *, size_t, const char*, va_list);
|
||||
} *my_snprintf_service;
|
||||
size_t my_snprintf(char* to, size_t n, const char* fmt, ...);
|
||||
size_t my_vsnprintf(char *to, size_t n, const char* fmt, va_list ap);
|
||||
#include <mysql/service_thd_alloc.h>
|
||||
struct st_mysql_lex_string
|
||||
{
|
||||
char *str;
|
||||
@ -33,7 +29,6 @@ void *thd_memdup(void* thd, const void* str, unsigned int size);
|
||||
MYSQL_LEX_STRING *thd_make_lex_string(void* thd, MYSQL_LEX_STRING *lex_str,
|
||||
const char *str, unsigned int size,
|
||||
int allocate_lex_string);
|
||||
#include <mysql/service_thd_wait.h>
|
||||
typedef enum _thd_wait_type_e {
|
||||
THD_WAIT_SLEEP= 1,
|
||||
THD_WAIT_DISKIO= 2,
|
||||
@ -54,7 +49,6 @@ extern struct thd_wait_service_st {
|
||||
} *thd_wait_service;
|
||||
void thd_wait_begin(void* thd, int wait_type);
|
||||
void thd_wait_end(void* thd);
|
||||
#include <mysql/service_progress_report.h>
|
||||
extern struct progress_report_service_st {
|
||||
void (*thd_progress_init_func)(void* thd, unsigned int max_stage);
|
||||
void (*thd_progress_report_func)(void* thd,
|
||||
@ -75,9 +69,7 @@ void thd_progress_next_stage(void* thd);
|
||||
void thd_progress_end(void* thd);
|
||||
const char *set_thd_proc_info(void*, const char * info, const char *func,
|
||||
const char *file, unsigned int line);
|
||||
#include <mysql/service_debug_sync.h>
|
||||
extern void (*debug_sync_C_callback_ptr)(void*, const char *, size_t);
|
||||
#include <mysql/service_kill_statement.h>
|
||||
enum thd_kill_levels {
|
||||
THD_IS_NOT_KILLED=0,
|
||||
THD_ABORT_SOFTLY=50,
|
||||
@ -87,8 +79,6 @@ extern struct kill_statement_service_st {
|
||||
enum thd_kill_levels (*thd_kill_level_func)(const void*);
|
||||
} *thd_kill_statement_service;
|
||||
enum thd_kill_levels thd_kill_level(const void*);
|
||||
#include <mysql/service_thd_timezone.h>
|
||||
#include "mysql_time.h"
|
||||
typedef long my_time_t;
|
||||
enum enum_mysql_timestamp_type
|
||||
{
|
||||
@ -108,7 +98,6 @@ extern struct thd_timezone_service_st {
|
||||
} *thd_timezone_service;
|
||||
my_time_t thd_TIME_to_gmt_sec(void* thd, const MYSQL_TIME *ltime, unsigned int *errcode);
|
||||
void thd_gmt_sec_to_TIME(void* thd, MYSQL_TIME *ltime, my_time_t t);
|
||||
#include <mysql/service_sha1.h>
|
||||
extern struct my_sha1_service_st {
|
||||
void (*my_sha1_type)(unsigned char*, const char*, size_t);
|
||||
void (*my_sha1_multi_type)(unsigned char*, ...);
|
||||
@ -123,7 +112,6 @@ size_t my_sha1_context_size();
|
||||
void my_sha1_init(void *context);
|
||||
void my_sha1_input(void *context, const unsigned char *buf, size_t len);
|
||||
void my_sha1_result(void *context, unsigned char *digest);
|
||||
#include <mysql/service_md5.h>
|
||||
extern struct my_md5_service_st {
|
||||
void (*my_md5_type)(unsigned char*, const char*, size_t);
|
||||
void (*my_md5_multi_type)(unsigned char*, ...);
|
||||
@ -138,7 +126,6 @@ size_t my_md5_context_size();
|
||||
void my_md5_init(void *context);
|
||||
void my_md5_input(void *context, const unsigned char *buf, size_t len);
|
||||
void my_md5_result(void *context, unsigned char *digest);
|
||||
#include <mysql/service_logger.h>
|
||||
typedef struct logger_handle_st LOGGER_HANDLE;
|
||||
extern struct logger_service_st {
|
||||
void (*logger_init_mutexes)();
|
||||
@ -160,14 +147,12 @@ extern struct logger_service_st {
|
||||
int logger_printf(LOGGER_HANDLE *log, const char *fmt, ...);
|
||||
int logger_write(LOGGER_HANDLE *log, const char *buffer, size_t size);
|
||||
int logger_rotate(LOGGER_HANDLE *log);
|
||||
#include <mysql/service_thd_autoinc.h>
|
||||
extern struct thd_autoinc_service_st {
|
||||
void (*thd_get_autoinc_func)(const void* thd,
|
||||
unsigned long* off, unsigned long* inc);
|
||||
} *thd_autoinc_service;
|
||||
void thd_get_autoinc(const void* thd,
|
||||
unsigned long* off, unsigned long* inc);
|
||||
#include <mysql/service_thd_error_context.h>
|
||||
extern struct thd_error_context_service_st {
|
||||
const char *(*thd_get_error_message_func)(const void* thd);
|
||||
unsigned int (*thd_get_error_number_func)(const void* thd);
|
||||
@ -185,7 +170,6 @@ void thd_inc_error_row(void* thd);
|
||||
char *thd_get_error_context_description(void* thd,
|
||||
char *buffer, unsigned int length,
|
||||
unsigned int max_query_length);
|
||||
#include <mysql/service_thd_specifics.h>
|
||||
typedef int MYSQL_THD_KEY_T;
|
||||
extern struct thd_specifics_service_st {
|
||||
int (*thd_key_create_func)(MYSQL_THD_KEY_T *key);
|
||||
@ -197,7 +181,6 @@ int thd_key_create(MYSQL_THD_KEY_T *key);
|
||||
void thd_key_delete(MYSQL_THD_KEY_T *key);
|
||||
void* thd_getspecific(void* thd, MYSQL_THD_KEY_T key);
|
||||
int thd_setspecific(void* thd, MYSQL_THD_KEY_T key, void *value);
|
||||
#include <mysql/service_encryption.h>
|
||||
typedef int (*encrypt_decrypt_func)(const unsigned char* src, unsigned int slen,
|
||||
unsigned char* dst, unsigned int* dlen,
|
||||
const unsigned char* key, unsigned int klen,
|
||||
@ -213,7 +196,6 @@ struct encryption_service_st {
|
||||
encrypt_decrypt_func encryption_decrypt_func;
|
||||
};
|
||||
extern struct encryption_service_st encryption_handler;
|
||||
#include <mysql/service_encryption_scheme.h>
|
||||
struct st_encryption_scheme_key {
|
||||
unsigned int version;
|
||||
unsigned char key[16];
|
||||
@ -315,8 +297,6 @@ struct st_maria_plugin
|
||||
const char *version_info;
|
||||
unsigned int maturity;
|
||||
};
|
||||
#include "plugin_ftparser.h"
|
||||
#include "plugin.h"
|
||||
enum enum_ftparser_mode
|
||||
{
|
||||
MYSQL_FTPARSER_SIMPLE_MODE= 0,
|
||||
|
@ -1,4 +1,3 @@
|
||||
#include "mysql/psi/psi.h"
|
||||
C_MODE_START
|
||||
struct TABLE_SHARE;
|
||||
struct sql_digest_storage;
|
||||
|
@ -1,4 +1,3 @@
|
||||
#include "mysql/psi/psi.h"
|
||||
C_MODE_START
|
||||
struct TABLE_SHARE;
|
||||
struct sql_digest_storage;
|
||||
|
@ -381,7 +381,7 @@ IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||
CONFIGURE_FILE(
|
||||
${VERSION_SCRIPT_TEMPLATE}
|
||||
${CMAKE_CURRENT_BINARY_DIR}/libmysql_versions.ld
|
||||
@ONLY@
|
||||
@ONLY
|
||||
)
|
||||
SET(VERSION_SCRIPT_LINK_FLAGS
|
||||
"-Wl,${CMAKE_CURRENT_BINARY_DIR}/libmysql_versions.ld")
|
||||
|
@ -1507,6 +1507,12 @@ my_bool cli_read_prepare_result(MYSQL *mysql, MYSQL_STMT *stmt)
|
||||
memory
|
||||
*/
|
||||
|
||||
#ifdef EMBEDDED_LIBRARY
|
||||
#define STMT_INIT_PREALLOC(S) 0
|
||||
#else
|
||||
#define STMT_INIT_PREALLOC(S) S
|
||||
#endif /*EMBEDDED_LIBRARY*/
|
||||
|
||||
MYSQL_STMT * STDCALL
|
||||
mysql_stmt_init(MYSQL *mysql)
|
||||
{
|
||||
@ -1525,8 +1531,10 @@ mysql_stmt_init(MYSQL *mysql)
|
||||
DBUG_RETURN(NULL);
|
||||
}
|
||||
|
||||
init_alloc_root(&stmt->mem_root, 2048, 2048, MYF(MY_THREAD_SPECIFIC));
|
||||
init_alloc_root(&stmt->result.alloc, 4096, 4096, MYF(MY_THREAD_SPECIFIC));
|
||||
init_alloc_root(&stmt->mem_root, 2048, STMT_INIT_PREALLOC(2048),
|
||||
MYF(MY_THREAD_SPECIFIC));
|
||||
init_alloc_root(&stmt->result.alloc, 4096, STMT_INIT_PREALLOC(4096),
|
||||
MYF(MY_THREAD_SPECIFIC));
|
||||
stmt->result.alloc.min_malloc= sizeof(MYSQL_ROWS);
|
||||
mysql->stmts= list_add(mysql->stmts, &stmt->list);
|
||||
stmt->list.data= stmt;
|
||||
@ -1543,6 +1551,8 @@ mysql_stmt_init(MYSQL *mysql)
|
||||
DBUG_RETURN(stmt);
|
||||
}
|
||||
|
||||
#undef STMT_INIT_PREALLOC
|
||||
|
||||
|
||||
/*
|
||||
Prepare server side statement with query.
|
||||
|
@ -33,6 +33,7 @@ debug-no-sync
|
||||
|
||||
# Retry bind as this may fail on busy server
|
||||
port-open-timeout=10
|
||||
bind-address=127.0.0.1
|
||||
|
||||
log-bin-trust-function-creators=1
|
||||
key_buffer_size= 1M
|
||||
|
@ -1,20 +0,0 @@
|
||||
# Check if ipv6 is available.
|
||||
#
|
||||
--disable_query_log
|
||||
--disable_result_log
|
||||
--disable_abort_on_error
|
||||
connect (checkcon123456789,::1,root,,test);
|
||||
if($mysql_errno)
|
||||
{
|
||||
skip No IPv6 support;
|
||||
}
|
||||
connection default;
|
||||
if(!$mysql_errno)
|
||||
{
|
||||
disconnect checkcon123456789;
|
||||
}
|
||||
--enable_abort_on_error
|
||||
--enable_result_log
|
||||
--enable_query_log
|
||||
# end check
|
||||
|
@ -1,5 +1,3 @@
|
||||
# Tests for the performance schema
|
||||
|
||||
# The file with expected results fits only to a run without
|
||||
# ps-protocol/sp-protocol/cursor-protocol/view-protocol.
|
||||
if (`SELECT $PS_PROTOCOL + $SP_PROTOCOL + $CURSOR_PROTOCOL
|
@ -1488,6 +1488,17 @@ t2 CREATE TABLE `t2` (
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
DROP TABLE t2;
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (
|
||||
`transaction_id` int(11) NOT NULL DEFAULT '0',
|
||||
KEY `transaction_id` (`transaction_id`));
|
||||
ALTER TABLE t1 DROP KEY IF EXISTS transaction_id, ADD PRIMARY KEY IF NOT EXISTS (transaction_id);
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`transaction_id` int(11) NOT NULL DEFAULT '0',
|
||||
PRIMARY KEY (`transaction_id`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
DROP TABLE t1;
|
||||
# Bug#11748057 (formerly known as 34972): ALTER TABLE statement doesn't
|
||||
# identify correct column name.
|
||||
#
|
||||
|
@ -6040,6 +6040,21 @@ DROP TABLE t1;
|
||||
# End of ctype_utf8_ilseq.inc
|
||||
#
|
||||
#
|
||||
# MDEV-8067 correct fix for MySQL Bug # 19699237: UNINITIALIZED VARIABLE IN ITEM_FIELD::STR_RESULT
|
||||
#
|
||||
CREATE TABLE t1 (a VARCHAR(10) CHARACTER SET utf8);
|
||||
CREATE TABLE t2 (a VARCHAR(10) CHARACTER SET latin1);
|
||||
INSERT INTO t1 VALUES ('aaa');
|
||||
INSERT INTO t2 VALUES ('aaa');
|
||||
SELECT (SELECT CONCAT(a),1 FROM t1) <=> (SELECT CONCAT(a),1 FROM t2);
|
||||
(SELECT CONCAT(a),1 FROM t1) <=> (SELECT CONCAT(a),1 FROM t2)
|
||||
1
|
||||
INSERT INTO t1 VALUES ('aaa');
|
||||
INSERT INTO t2 VALUES ('aaa');
|
||||
SELECT (SELECT CONCAT(a),1 FROM t1) <=> (SELECT CONCAT(a),1 FROM t2);
|
||||
ERROR 21000: Subquery returns more than 1 row
|
||||
DROP TABLE t1, t2;
|
||||
#
|
||||
# End of 5.5 tests
|
||||
#
|
||||
#
|
||||
|
@ -1455,6 +1455,12 @@ Warnings:
|
||||
Warning 1918 Encountered illegal value '18446744073709552001' when converting to INT
|
||||
Note 1105 Cast to signed converted positive out-of-range integer to it's negative complement
|
||||
#
|
||||
# MDEV-7505 - Too large scale in DECIMAL dynamic column getter crashes
|
||||
# mysqld
|
||||
#
|
||||
SELECT COLUMN_GET(`x`, 'y' AS DECIMAL(5,34));
|
||||
ERROR 42000: Too big scale 34 specified for ''y''. Maximum is 30.
|
||||
#
|
||||
# test of symbolic names
|
||||
#
|
||||
# creation test (names)
|
||||
|
1
mysql-test/r/empty_server_name-8224.result
Normal file
1
mysql-test/r/empty_server_name-8224.result
Normal file
@ -0,0 +1 @@
|
||||
create server '' foreign data wrapper w2 options (host '127.0.0.1');
|
@ -845,3 +845,32 @@ SET default_regex_flags=DEFAULT;
|
||||
SELECT REGEXP_REPLACE('1 foo and bar', '(\\d+) foo and (\\d+ )?bar', '\\1 this and \\2that');
|
||||
REGEXP_REPLACE('1 foo and bar', '(\\d+) foo and (\\d+ )?bar', '\\1 this and \\2that')
|
||||
1 this and that
|
||||
#
|
||||
# MDEV-8102 REGEXP function fails to match hex values when expression is stored as a variable
|
||||
#
|
||||
# Testing a warning
|
||||
SET NAMES latin1;
|
||||
SET @regCheck= '\\xE0\\x01';
|
||||
SELECT 0xE001 REGEXP @regCheck;
|
||||
0xE001 REGEXP @regCheck
|
||||
0
|
||||
Warnings:
|
||||
Warning 1139 Got error 'pcre_exec: Invalid utf8 byte sequence in the subject string' from regexp
|
||||
# Testing workaround N1: This makes the pattern to be a binary string:
|
||||
SET NAMES latin1;
|
||||
SET @regCheck= X'E001';
|
||||
SELECT 0xE001 REGEXP @regCheck;
|
||||
0xE001 REGEXP @regCheck
|
||||
1
|
||||
# Testing workaround N2: This also makes the pattern to be a binary string, using a different syntax:
|
||||
SET NAMES latin1;
|
||||
SET @regCheck= _binary '\\xE0\\x01';
|
||||
SELECT 0xE001 REGEXP @regCheck;
|
||||
0xE001 REGEXP @regCheck
|
||||
1
|
||||
# Testing workarond N3: This makes derivation of the subject string stronger (IMLICIT instead of COERCIBLE)
|
||||
SET NAMES latin1;
|
||||
SET @regCheck= '\\xE0\\x01';
|
||||
SELECT CAST(0xE001 AS BINARY) REGEXP @regCheck;
|
||||
CAST(0xE001 AS BINARY) REGEXP @regCheck
|
||||
1
|
||||
|
10
mysql-test/r/func_regexp_pcre_debug.result
Normal file
10
mysql-test/r/func_regexp_pcre_debug.result
Normal file
@ -0,0 +1,10 @@
|
||||
SET debug_dbug='+d,pcre_exec_error_123';
|
||||
SELECT 'a' RLIKE 'a';
|
||||
'a' RLIKE 'a'
|
||||
0
|
||||
Warnings:
|
||||
Warning 1139 Got error 'pcre_exec: Internal error (-123)' from regexp
|
||||
SET debug_dbug='';
|
||||
SELECT 'a' RLIKE 'a';
|
||||
'a' RLIKE 'a'
|
||||
1
|
@ -2701,3 +2701,45 @@ id date1 date2 DATE_ADD(a.date1,INTERVAL -10 DAY) TO_DAYS(a.date1)-10
|
||||
17 NULL NULL NULL NULL
|
||||
18 2010-10-13 2010-10-03 2010-10-03 734413
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# Start of 10.0 tests
|
||||
#
|
||||
#
|
||||
# MDEV-8205 timediff returns null when comparing decimal time to time string value
|
||||
#
|
||||
SELECT
|
||||
TIMEDIFF('2014-01-01 00:00:00' , '2014-01-01 01:00:00' ) AS str_str,
|
||||
TIMEDIFF('2014-01-01 00:00:00' , 20140101010000.000 ) AS str_dec,
|
||||
TIMEDIFF(20140101000000.000 , 20140101010000.000 ) AS dec_dec,
|
||||
TIMEDIFF(20140101000000.000 , '2014-01-01 01:00:00' ) AS dec_str;
|
||||
str_str str_dec dec_dec dec_str
|
||||
-01:00:00 -01:00:00.000 -01:00:00.000 -01:00:00.000
|
||||
SELECT
|
||||
TIMEDIFF('2014-01-01 00:00:00' , '2014-01-02 01:00:00' ) AS str_str,
|
||||
TIMEDIFF('2014-01-01 00:00:00' , 20140102010000.000 ) AS str_dec,
|
||||
TIMEDIFF(20140101000000.000 , 20140102010000.000 ) AS dec_dec,
|
||||
TIMEDIFF(20140101000000.000 , '2014-01-02 01:00:00' ) AS dec_str;
|
||||
str_str str_dec dec_dec dec_str
|
||||
-25:00:00 -25:00:00.000 -25:00:00.000 -25:00:00.000
|
||||
SELECT
|
||||
TIMEDIFF('2014-01-01 00:00:00' , '2014-02-02 01:00:00' ) AS str_str,
|
||||
TIMEDIFF('2014-01-01 00:00:00' , 20140202010000.000 ) AS str_dec,
|
||||
TIMEDIFF(20140101000000.000 , 20140202010000.000 ) AS dec_dec,
|
||||
TIMEDIFF(20140101000000.000 , '2014-02-02 01:00:00' ) AS dec_str;
|
||||
str_str str_dec dec_dec dec_str
|
||||
-769:00:00 -769:00:00.000 -769:00:00.000 -769:00:00.000
|
||||
SELECT
|
||||
TIMEDIFF('2014-01-01 00:00:00' , '2014-03-02 01:00:00' ) AS str_str,
|
||||
TIMEDIFF('2014-01-01 00:00:00' , 20140302010000.000 ) AS str_dec,
|
||||
TIMEDIFF(20140101000000.000 , 20140302010000.000 ) AS dec_dec,
|
||||
TIMEDIFF(20140101000000.000 , '2014-03-02 01:00:00' ) AS dec_str;
|
||||
str_str str_dec dec_dec dec_str
|
||||
-838:59:59 -838:59:59.999 -838:59:59.999 -838:59:59.999
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect time value: '-1441:00:00'
|
||||
Warning 1292 Truncated incorrect time value: '-1441:00:00'
|
||||
Warning 1292 Truncated incorrect time value: '-1441:00:00'
|
||||
Warning 1292 Truncated incorrect time value: '-1441:00:00'
|
||||
#
|
||||
# End of 10.0 tests
|
||||
#
|
||||
|
@ -2342,7 +2342,7 @@ DROP TABLE t1;
|
||||
create table t1 (a int, b int);
|
||||
insert into t1 values (1,11), (1,12), (2,22),(2,23), (4,44),(4,45);
|
||||
create table t2 (c int, d int);
|
||||
insert into t2 values (1,11), (1,12), (2,22),(2,23), (4,44),(4,45);
|
||||
insert into t2 values (1,11), (2,22), (4,44);
|
||||
select distinct a,sum(b), (select d from t2 where c=a order by max(b) limit 1) from t1 group by a order by max(b);
|
||||
a sum(b) (select d from t2 where c=a order by max(b) limit 1)
|
||||
1 23 11
|
||||
|
@ -6,3 +6,15 @@ select variable_name from information_schema.session_variables where variable_na
|
||||
(select variable_name from information_schema.session_variables where variable_name = 'basedir');
|
||||
variable_name
|
||||
BASEDIR
|
||||
create table t1 (a char);
|
||||
insert t1 values ('a'),('t'),('z');
|
||||
flush status;
|
||||
select a, exists (select 1 from information_schema.columns where table_schema=concat('tes',a)) from t1;
|
||||
a exists (select 1 from information_schema.columns where table_schema=concat('tes',a))
|
||||
a 0
|
||||
t 1
|
||||
z 0
|
||||
show status like 'created_tmp_tables';
|
||||
Variable_name Value
|
||||
Created_tmp_tables 43
|
||||
drop table t1;
|
||||
|
@ -2527,6 +2527,17 @@ test.t1 check error Size of indexfile is: 1024 Should be: 2048
|
||||
test.t1 check warning Size of datafile is: 14 Should be: 7
|
||||
test.t1 check error Corrupt
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# MDEV-3870 - Valgrind warnings on OPTIMIZE MyISAM or Aria TABLE with
|
||||
# disabled keys
|
||||
#
|
||||
CREATE TABLE t1 (a INT, KEY(a)) ENGINE=MyISAM;
|
||||
INSERT INTO t1 VALUES (4),(3),(1),(0);
|
||||
ALTER TABLE t1 DISABLE KEYS;
|
||||
OPTIMIZE TABLE t1;
|
||||
Table Op Msg_type Msg_text
|
||||
test.t1 optimize status OK
|
||||
DROP TABLE t1;
|
||||
show variables like 'myisam_block_size';
|
||||
Variable_name Value
|
||||
myisam_block_size 1024
|
||||
|
@ -76,3 +76,16 @@ set @toggle=1; execute set_wsrep_myisam using @toggle;
|
||||
TRUNCATE TABLE time_zone_leap_second;
|
||||
ALTER TABLE time_zone_leap_second ORDER BY Transition_time;
|
||||
set @toggle=0; execute set_wsrep_myisam using @toggle;
|
||||
#
|
||||
# MDEV-6236 - [PATCH] mysql_tzinfo_to_sql may produce invalid SQL
|
||||
#
|
||||
set @prep=if((select count(*) from information_schema.global_variables where variable_name='wsrep_on'), 'SET GLOBAL wsrep_replicate_myisam=?', 'do ?');
|
||||
prepare set_wsrep_myisam from @prep;
|
||||
set @toggle=1; execute set_wsrep_myisam using @toggle;
|
||||
TRUNCATE TABLE time_zone;
|
||||
TRUNCATE TABLE time_zone_name;
|
||||
TRUNCATE TABLE time_zone_transition;
|
||||
TRUNCATE TABLE time_zone_transition_type;
|
||||
ALTER TABLE time_zone_transition ORDER BY Time_zone_id, Transition_time;
|
||||
ALTER TABLE time_zone_transition_type ORDER BY Time_zone_id, Transition_type_id;
|
||||
set @toggle=0; execute set_wsrep_myisam using @toggle;
|
||||
|
@ -3,6 +3,41 @@ drop table if exists t1,v1,v2,v3,v4,v1badcheck;
|
||||
drop view if exists t1,v1,v2,v3,v4,v1badcheck;
|
||||
create table t1(a int);
|
||||
create table kv(k varchar(30) NOT NULL PRIMARY KEY,v varchar(50));
|
||||
create view v1 as select 1;
|
||||
repair table t1 quick;
|
||||
Table Op Msg_type Msg_text
|
||||
test.t1 repair status OK
|
||||
repair table t1 extended;
|
||||
Table Op Msg_type Msg_text
|
||||
test.t1 repair status OK
|
||||
repair table t1 use_frm;
|
||||
Table Op Msg_type Msg_text
|
||||
test.t1 repair status OK
|
||||
repair table t1 from mysql;
|
||||
ERROR 42000: You 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 mysql' at line 1
|
||||
repair view v1 quick;
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'quick' at line 1
|
||||
repair view v1 extended;
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'extended' at line 1
|
||||
repair view v1 use_frm;
|
||||
ERROR 42000: You 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_frm' at line 1
|
||||
repair view v1 from mysql;
|
||||
Table Op Msg_type Msg_text
|
||||
test.v1 repair status OK
|
||||
check view v1 quick;
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'quick' at line 1
|
||||
check view v1 fast;
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'fast' at line 1
|
||||
check view v1 medium;
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'medium' at line 1
|
||||
check view v1 extended;
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'extended' at line 1
|
||||
check view v1 changed;
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'changed' at line 1
|
||||
check view v1 for upgrade;
|
||||
Table Op Msg_type Msg_text
|
||||
test.v1 check status OK
|
||||
drop view v1;
|
||||
flush tables;
|
||||
check view v1;
|
||||
Table Op Msg_type Msg_text
|
||||
|
@ -347,3 +347,26 @@ CREATE TABLE test.`t.1` (id int);
|
||||
mysqlcheck test t.1
|
||||
test.t.1 OK
|
||||
drop table test.`t.1`;
|
||||
create view v1 as select 1;
|
||||
mysqlcheck --process-views test
|
||||
test.v1 OK
|
||||
mysqlcheck --process-views --extended test
|
||||
test.v1 OK
|
||||
mysqlcheck --process-views --fast test
|
||||
mysqlcheck --process-views --quick test
|
||||
test.v1 OK
|
||||
mysqlcheck --process-views --check-only-changed test
|
||||
mysqlcheck --process-views --medium-check test
|
||||
test.v1 OK
|
||||
mysqlcheck --process-views --check-upgrade test
|
||||
test.v1 OK
|
||||
drop view v1;
|
||||
create table t1(a int);
|
||||
mysqlcheck --process-views --check-upgrade --auto-repair test
|
||||
test.t1 OK
|
||||
test.v1 Needs upgrade
|
||||
|
||||
Repairing views
|
||||
test.v1 OK
|
||||
drop view v1;
|
||||
drop table t1;
|
||||
|
@ -380,33 +380,33 @@ DROP TABLE t1;
|
||||
create table t1 (a int) engine=innodb partition by hash(a) ;
|
||||
show table status like 't1';
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t1 InnoDB 10 Compact 2 8192 16384 0 0 # NULL NULL NULL NULL latin1_swedish_ci NULL partitioned
|
||||
t1 InnoDB 10 Compact 2 8192 16384 0 0 # NULL # NULL NULL latin1_swedish_ci NULL partitioned
|
||||
drop table t1;
|
||||
create table t1 (a int)
|
||||
engine = innodb
|
||||
partition by key (a);
|
||||
show table status;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t1 InnoDB 10 Compact 2 8192 16384 0 0 # NULL NULL NULL NULL latin1_swedish_ci NULL partitioned
|
||||
t1 InnoDB 10 Compact 2 8192 16384 0 0 # NULL # NULL NULL latin1_swedish_ci NULL partitioned
|
||||
insert into t1 values (0), (1), (2), (3);
|
||||
show table status;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t1 InnoDB 10 Compact 4 4096 16384 0 0 # NULL NULL NULL NULL latin1_swedish_ci NULL partitioned
|
||||
t1 InnoDB 10 Compact 4 4096 16384 0 0 # NULL # NULL NULL latin1_swedish_ci NULL partitioned
|
||||
drop table t1;
|
||||
create table t1 (a int auto_increment primary key)
|
||||
engine = innodb
|
||||
partition by key (a);
|
||||
show table status;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t1 InnoDB 10 Compact 2 8192 16384 0 0 # 1 NULL NULL NULL latin1_swedish_ci NULL partitioned
|
||||
t1 InnoDB 10 Compact 2 8192 16384 0 0 # 1 # NULL NULL latin1_swedish_ci NULL partitioned
|
||||
insert into t1 values (NULL), (NULL), (NULL), (NULL);
|
||||
show table status;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t1 InnoDB 10 Compact 4 4096 16384 0 0 # 5 NULL NULL NULL latin1_swedish_ci NULL partitioned
|
||||
t1 InnoDB 10 Compact 4 4096 16384 0 0 # 5 # NULL NULL latin1_swedish_ci NULL partitioned
|
||||
insert into t1 values (NULL), (NULL), (NULL), (NULL);
|
||||
show table status;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t1 InnoDB 10 Compact 8 2048 16384 0 0 # 9 NULL NULL NULL latin1_swedish_ci NULL partitioned
|
||||
t1 InnoDB 10 Compact 8 2048 16384 0 0 # 9 # NULL NULL latin1_swedish_ci NULL partitioned
|
||||
drop table t1;
|
||||
create table t1 (a int)
|
||||
partition by key (a)
|
||||
@ -588,6 +588,17 @@ a b
|
||||
0 1
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# Bug #17299181 CREATE_TIME AND UPDATE_TIME ARE
|
||||
# WRONG FOR PARTITIONED TABLES
|
||||
#
|
||||
CREATE TABLE t1 (a int, PRIMARY KEY (a)) ENGINE=InnoDB
|
||||
PARTITION BY HASH (a) PARTITIONS 2;
|
||||
SELECT COUNT(*) FROM INFORMATION_SCHEMA.TABLES WHERE
|
||||
CREATE_TIME IS NOT NULL AND TABLE_NAME='t1';
|
||||
COUNT(*)
|
||||
1
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# BUG#12912171 - ASSERTION FAILED: QUICK->HEAD->READ_SET ==
|
||||
# SAVE_READ_SET
|
||||
#
|
||||
|
@ -90,7 +90,7 @@ ERROR HY000: Failed to read from the .par file
|
||||
# Note that it is currently impossible to drop a partitioned table
|
||||
# without the .par file
|
||||
DROP TABLE t1;
|
||||
ERROR 42S02: Unknown table 'test.t1'
|
||||
ERROR HY000: Got error 1 "Operation not permitted" from storage engine partition
|
||||
#
|
||||
# Bug#50392: insert_id is not reset for partitioned tables
|
||||
# auto_increment on duplicate entry
|
||||
|
@ -11,6 +11,6 @@ t1
|
||||
SHOW CREATE TABLE t1;
|
||||
ERROR HY000: Failed to read from the .par file
|
||||
DROP TABLE t1;
|
||||
ERROR 42S02: Unknown table 'test.t1'
|
||||
ERROR HY000: Got error 1 "Operation not permitted" from storage engine partition
|
||||
t1.frm
|
||||
t1.par
|
||||
|
@ -321,3 +321,16 @@ UNUSABLE
|
||||
uninstall soname 'ha_example';
|
||||
select plugin_name from information_schema.plugins where plugin_library like 'ha_example%';
|
||||
plugin_name
|
||||
#
|
||||
# MDEV-5309 - RENAME TABLE does not check for existence of the table's
|
||||
# engine
|
||||
#
|
||||
INSTALL PLUGIN example SONAME 'ha_example';
|
||||
CREATE TABLE t1(a INT) ENGINE=EXAMPLE;
|
||||
SELECT * FROM t1;
|
||||
a
|
||||
FLUSH TABLES;
|
||||
UNINSTALL PLUGIN example;
|
||||
RENAME TABLE t1 TO t2;
|
||||
ERROR 42S02: Table 'test.t1' doesn't exist
|
||||
DROP TABLE t1;
|
||||
|
39
mysql-test/r/range_innodb.result
Normal file
39
mysql-test/r/range_innodb.result
Normal file
@ -0,0 +1,39 @@
|
||||
#
|
||||
# Range optimizer (and related) tests that need InnoDB.
|
||||
#
|
||||
drop table if exists t0, t1, t2;
|
||||
#
|
||||
# MDEV-6735: Range checked for each record used with key
|
||||
#
|
||||
create table t0(a int);
|
||||
insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
|
||||
create table t1(a int);
|
||||
insert into t1 select A.a + B.a* 10 + C.a * 100 + D.a * 1000
|
||||
from t0 A, t0 B, t0 C, t0 D;
|
||||
create table t2 (
|
||||
a int,
|
||||
b int,
|
||||
filler1 char(100),
|
||||
filler2 char(100),
|
||||
filler3 char(100),
|
||||
filler4 char(100),
|
||||
key(a),
|
||||
key(b)
|
||||
) engine=innodb;
|
||||
insert into t2
|
||||
select
|
||||
a,a,
|
||||
repeat('0123456789', 10),
|
||||
repeat('0123456789', 10),
|
||||
repeat('0123456789', 10),
|
||||
repeat('0123456789', 10)
|
||||
from t1;
|
||||
analyze table t2;
|
||||
Table Op Msg_type Msg_text
|
||||
test.t2 analyze status OK
|
||||
# The following must not use "Range checked for each record":
|
||||
explain select * from t0 left join t2 on t2.a <t0.a and t2.b between 50 and 250;
|
||||
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;
|
15
mysql-test/r/ssl_7937,nossl.result
Normal file
15
mysql-test/r/ssl_7937,nossl.result
Normal file
@ -0,0 +1,15 @@
|
||||
create procedure have_ssl()
|
||||
select if(variable_value > '','yes','no') as 'have_ssl'
|
||||
from information_schema.session_status
|
||||
where variable_name='ssl_cipher';
|
||||
mysql --ssl-ca=cacert.pem -e "call test.have_ssl()"
|
||||
have_ssl
|
||||
no
|
||||
mysql --ssl -e "call test.have_ssl()"
|
||||
have_ssl
|
||||
no
|
||||
mysql --ssl-ca=cacert.pem --ssl-verify-server-cert -e "call test.have_ssl()"
|
||||
ERROR 2026 (HY000): SSL connection error: SSL is required, but the server does not support it
|
||||
mysql --ssl --ssl-verify-server-cert -e "call test.have_ssl()"
|
||||
ERROR 2026 (HY000): SSL connection error: SSL is required, but the server does not support it
|
||||
drop procedure have_ssl;
|
16
mysql-test/r/ssl_7937.result
Normal file
16
mysql-test/r/ssl_7937.result
Normal file
@ -0,0 +1,16 @@
|
||||
create procedure have_ssl()
|
||||
select if(variable_value > '','yes','no') as 'have_ssl'
|
||||
from information_schema.session_status
|
||||
where variable_name='ssl_cipher';
|
||||
mysql --ssl-ca=cacert.pem -e "call test.have_ssl()"
|
||||
have_ssl
|
||||
yes
|
||||
mysql --ssl -e "call test.have_ssl()"
|
||||
have_ssl
|
||||
yes
|
||||
mysql --ssl-ca=cacert.pem --ssl-verify-server-cert -e "call test.have_ssl()"
|
||||
have_ssl
|
||||
yes
|
||||
mysql --ssl --ssl-verify-server-cert -e "call test.have_ssl()"
|
||||
ERROR 2026 (HY000): SSL connection error: Failed to verify the server certificate
|
||||
drop procedure have_ssl;
|
33
mysql-test/r/truncate-stale-6500.result
Normal file
33
mysql-test/r/truncate-stale-6500.result
Normal file
@ -0,0 +1,33 @@
|
||||
SET GLOBAL query_cache_size=1024*1024*8;
|
||||
CREATE TABLE `test` (
|
||||
`uniqueId` INT NOT NULL,
|
||||
`partitionId` INT NOT NULL,
|
||||
PRIMARY KEY (`uniqueId`,`partitionId`)
|
||||
) ENGINE=InnoDB PARTITION BY LIST (partitionId) (
|
||||
PARTITION p01 VALUES IN (1),
|
||||
PARTITION p02 VALUES IN (2)
|
||||
);
|
||||
INSERT INTO `test`(`uniqueId`,`partitionId`) VALUES(407237055, 2);
|
||||
SELECT * FROM `test`;
|
||||
uniqueId partitionId
|
||||
407237055 2
|
||||
#Confirms 1 row in partition 'p02'
|
||||
SELECT TABLE_NAME, PARTITION_NAME, TABLE_ROWS FROM information_schema.PARTITIONS where TABLE_NAME = 'test';
|
||||
TABLE_NAME PARTITION_NAME TABLE_ROWS
|
||||
test p01 0
|
||||
test p02 1
|
||||
ALTER TABLE `test` TRUNCATE PARTITION `p02`;
|
||||
#Confirms no more rows in partition 'p02'
|
||||
SELECT TABLE_NAME, PARTITION_NAME, TABLE_ROWS FROM information_schema.PARTITIONS where TABLE_NAME = 'test';
|
||||
TABLE_NAME PARTITION_NAME TABLE_ROWS
|
||||
test p01 0
|
||||
test p02 0
|
||||
#Before the patch, this returned the previously existing values.
|
||||
SELECT * FROM `test`;
|
||||
uniqueId partitionId
|
||||
SELECT SQL_CACHE * FROM `test`;
|
||||
uniqueId partitionId
|
||||
SELECT SQL_NO_CACHE * FROM `test`;
|
||||
uniqueId partitionId
|
||||
DROP TABLE test;
|
||||
SET GLOBAL query_cache_size=DEFAULT;
|
@ -994,3 +994,24 @@ GROUP BY t2.col0
|
||||
WHERE CONCAT(t1.col1, CAST(subq.col0 AS DECIMAL));
|
||||
1
|
||||
DROP TABLE t1, t2;
|
||||
#
|
||||
# Start of 5.5 tests
|
||||
#
|
||||
#
|
||||
# MDEV-8267 Add /*old*/ comment into I_S.COLUMN_TYPE for old DECIMAL
|
||||
#
|
||||
SHOW CREATE TABLE t1dec102;
|
||||
Table Create Table
|
||||
t1dec102 CREATE TABLE `t1dec102` (
|
||||
`a` decimal(10,2)/*old*/ DEFAULT NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
SHOW COLUMNS FROM t1dec102;
|
||||
Field Type Null Key Default Extra
|
||||
a decimal(10,2)/*old*/ YES NULL
|
||||
SELECT COLUMN_NAME, DATA_TYPE, COLUMN_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='t1dec102';
|
||||
COLUMN_NAME DATA_TYPE COLUMN_TYPE
|
||||
a decimal decimal(10,2)/*old*/
|
||||
DROP TABLE t1dec102;
|
||||
#
|
||||
# End of 5.5 tests
|
||||
#
|
||||
|
@ -115,7 +115,6 @@ NULL
|
||||
delete from t1 where a < 20110101;
|
||||
select * from t1;
|
||||
a
|
||||
01:02:13.3332
|
||||
NULL
|
||||
create table t2 select * from t1;
|
||||
create table t3 like t1;
|
||||
@ -135,12 +134,11 @@ Warnings:
|
||||
Note 1265 Data truncated for column 'a' at row 1
|
||||
select a, a+0, a-1, a*1, a/2 from t1;
|
||||
a a+0 a-1 a*1 a/2
|
||||
01:02:13.3332 10213.3332 10212.3332 10213.3332 5106.66660000
|
||||
NULL NULL NULL NULL NULL
|
||||
14:15:16.2222 141516.2222 141515.2222 141516.2222 70758.11110000
|
||||
select max(a), min(a), sum(a), avg(a) from t1;
|
||||
max(a) min(a) sum(a) avg(a)
|
||||
14:15:16.2222 01:02:13.3332 151729.5554 75864.77770000
|
||||
14:15:16.2222 14:15:16.2222 141516.2222 141516.22220000
|
||||
create table t2 select a, a+0, a-1, a*1, a/2 from t1;
|
||||
create table t3 select max(a), min(a), sum(a), avg(a) from t1;
|
||||
show create table t2;
|
||||
|
31
mysql-test/r/update_innodb.result
Normal file
31
mysql-test/r/update_innodb.result
Normal file
@ -0,0 +1,31 @@
|
||||
CREATE TABLE `t1` (
|
||||
`c1` int(11) NOT NULL,
|
||||
`c2` datetime DEFAULT NULL,
|
||||
PRIMARY KEY (`c1`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||||
CREATE TABLE `t2` (
|
||||
`c0` varchar(10) NOT NULL,
|
||||
`c1` int(11) NOT NULL,
|
||||
`c2` int(11) NOT NULL,
|
||||
PRIMARY KEY (`c0`,`c1`),
|
||||
KEY `c1` (`c1`),
|
||||
KEY `c2` (`c2`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||||
CREATE TABLE `t3` (
|
||||
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`c1` datetime NOT NULL,
|
||||
`c2` bigint(20) NOT NULL,
|
||||
`c3` int(4) unsigned NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `c2` (`c2`),
|
||||
KEY `c3` (`c3`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||||
CREATE TABLE `t4` (
|
||||
`c1` int(11) NOT NULL,
|
||||
`c2` bigint(20) DEFAULT NULL,
|
||||
`c3` int(11) NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||||
CREATE ALGORITHM=UNDEFINED VIEW `v1` AS select `t4`.`c1` AS `c1`,`t4`.`c2` AS `c2`,`t4`.`c3` AS `c3` from `t4`;
|
||||
UPDATE t1 a JOIN t2 b ON a.c1 = b.c1 JOIN v1 vw ON b.c2 = vw.c1 JOIN t3 del ON vw.c2 = del.c2 SET a.c2 = ( SELECT max(t.c1) FROM t3 t, v1 i WHERE del.c2 = t.c2 AND vw.c3 = i.c3 AND t.c3 = 4 ) WHERE a.c2 IS NULL OR a.c2 < '2011-05-01';
|
||||
drop view v1;
|
||||
drop table t1,t2,t3,t4;
|
@ -5410,6 +5410,24 @@ create view v2 as select t2.* from (t2 left join v1 using (id));
|
||||
update t3 left join v2 using (id) set flag=flag+1;
|
||||
drop view v2, v1;
|
||||
drop table t1, t2, t3;
|
||||
#
|
||||
# MDEV-7207 - ALTER VIEW does not change ALGORITM
|
||||
#
|
||||
create table t1 (a int, b int);
|
||||
create algorithm=temptable view v2 (c) as select b+1 from t1;
|
||||
show create view v2;
|
||||
View Create View character_set_client collation_connection
|
||||
v2 CREATE ALGORITHM=TEMPTABLE DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select (`t1`.`b` + 1) AS `c` from `t1` latin1 latin1_swedish_ci
|
||||
alter algorithm=undefined view v2 (c) as select b+1 from t1;
|
||||
show create view v2;
|
||||
View Create View character_set_client collation_connection
|
||||
v2 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select (`t1`.`b` + 1) AS `c` from `t1` latin1 latin1_swedish_ci
|
||||
alter algorithm=merge view v2 (c) as select b+1 from t1;
|
||||
show create view v2;
|
||||
View Create View character_set_client collation_connection
|
||||
v2 CREATE ALGORITHM=MERGE DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select (`t1`.`b` + 1) AS `c` from `t1` latin1 latin1_swedish_ci
|
||||
drop view v2;
|
||||
drop table t1;
|
||||
# -----------------------------------------------------------------
|
||||
# -- End of 5.5 tests.
|
||||
# -----------------------------------------------------------------
|
||||
|
1
mysql-test/std_data/old_decimal/t1dec102.MYD
Normal file
1
mysql-test/std_data/old_decimal/t1dec102.MYD
Normal file
@ -0,0 +1 @@
|
||||
<EFBFBD> 123.45<EFBFBD> 123.46<EFBFBD> 123.47
|
BIN
mysql-test/std_data/old_decimal/t1dec102.MYI
Normal file
BIN
mysql-test/std_data/old_decimal/t1dec102.MYI
Normal file
Binary file not shown.
BIN
mysql-test/std_data/old_decimal/t1dec102.frm
Normal file
BIN
mysql-test/std_data/old_decimal/t1dec102.frm
Normal file
Binary file not shown.
@ -327,6 +327,18 @@ INSERT INTO t2 SET a=1;
|
||||
INSERT INTO t2 SET b=1;
|
||||
UPDATE t1, t2 SET t1.a=10, t2.a=20;
|
||||
DROP TABLE t1,t2;
|
||||
INSERT INTO t1dec102 VALUES (-999.99);
|
||||
INSERT INTO t1dec102 VALUES (0);
|
||||
INSERT INTO t1dec102 VALUES (999.99);
|
||||
SELECT * FROM t1dec102 ORDER BY a;
|
||||
a
|
||||
-999.99
|
||||
0.00
|
||||
123.45
|
||||
123.46
|
||||
123.47
|
||||
999.99
|
||||
DROP TABLE t1dec102;
|
||||
flush logs;
|
||||
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
@ -4555,6 +4567,62 @@ SET TIMESTAMP=1000000000/*!*/;
|
||||
DROP TABLE `t1`,`t2` /* generated by server */
|
||||
/*!*/;
|
||||
# at #
|
||||
#010909 4:46:40 server id 1 end_log_pos # GTID 0-1-317
|
||||
/*!100001 SET @@session.gtid_seq_no=317*//*!*/;
|
||||
BEGIN
|
||||
/*!*/;
|
||||
# at #
|
||||
# at #
|
||||
#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1dec102` mapped to number #
|
||||
#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
|
||||
### INSERT INTO `test`.`t1dec102`
|
||||
### SET
|
||||
### @1=!! Old DECIMAL (mysql-4.1 or earlier). Not enough metadata to display the value. # at #
|
||||
#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
|
||||
SET TIMESTAMP=1000000000/*!*/;
|
||||
COMMIT
|
||||
/*!*/;
|
||||
# at #
|
||||
#010909 4:46:40 server id 1 end_log_pos # GTID 0-1-318
|
||||
/*!100001 SET @@session.gtid_seq_no=318*//*!*/;
|
||||
BEGIN
|
||||
/*!*/;
|
||||
# at #
|
||||
# at #
|
||||
#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1dec102` mapped to number #
|
||||
#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
|
||||
### INSERT INTO `test`.`t1dec102`
|
||||
### SET
|
||||
### @1=!! Old DECIMAL (mysql-4.1 or earlier). Not enough metadata to display the value. # at #
|
||||
#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
|
||||
SET TIMESTAMP=1000000000/*!*/;
|
||||
COMMIT
|
||||
/*!*/;
|
||||
# at #
|
||||
#010909 4:46:40 server id 1 end_log_pos # GTID 0-1-319
|
||||
/*!100001 SET @@session.gtid_seq_no=319*//*!*/;
|
||||
BEGIN
|
||||
/*!*/;
|
||||
# at #
|
||||
# at #
|
||||
#010909 4:46:40 server id 1 end_log_pos # Table_map: `test`.`t1dec102` mapped to number #
|
||||
#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F
|
||||
### INSERT INTO `test`.`t1dec102`
|
||||
### SET
|
||||
### @1=!! Old DECIMAL (mysql-4.1 or earlier). Not enough metadata to display the value. # at #
|
||||
#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
|
||||
SET TIMESTAMP=1000000000/*!*/;
|
||||
COMMIT
|
||||
/*!*/;
|
||||
# at #
|
||||
#010909 4:46:40 server id 1 end_log_pos # GTID 0-1-320 ddl
|
||||
/*!100001 SET @@session.gtid_seq_no=320*//*!*/;
|
||||
# at #
|
||||
#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0
|
||||
SET TIMESTAMP=1000000000/*!*/;
|
||||
DROP TABLE `t1dec102` /* generated by server */
|
||||
/*!*/;
|
||||
# at #
|
||||
#010909 4:46:40 server id 1 end_log_pos # Rotate to master-bin.000002 pos: 4
|
||||
DELIMITER ;
|
||||
# End of log file
|
||||
|
@ -438,9 +438,20 @@ INSERT INTO t2 SET b=1;
|
||||
UPDATE t1, t2 SET t1.a=10, t2.a=20;
|
||||
DROP TABLE t1,t2;
|
||||
|
||||
let $MYSQLD_DATADIR= `select @@datadir`;
|
||||
|
||||
--copy_file std_data/old_decimal/t1dec102.frm $MYSQLD_DATADIR/test/t1dec102.frm
|
||||
--copy_file std_data/old_decimal/t1dec102.MYD $MYSQLD_DATADIR/test/t1dec102.MYD
|
||||
--copy_file std_data/old_decimal/t1dec102.MYI $MYSQLD_DATADIR/test/t1dec102.MYI
|
||||
|
||||
INSERT INTO t1dec102 VALUES (-999.99);
|
||||
INSERT INTO t1dec102 VALUES (0);
|
||||
INSERT INTO t1dec102 VALUES (999.99);
|
||||
SELECT * FROM t1dec102 ORDER BY a;
|
||||
DROP TABLE t1dec102;
|
||||
|
||||
flush logs;
|
||||
|
||||
let $MYSQLD_DATADIR= `select @@datadir`;
|
||||
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
|
||||
--replace_regex /SQL_LOAD_MB-[0-9]-[0-9]/SQL_LOAD_MB-#-#/ /exec_time=[0-9]*/exec_time=#/ /end_log_pos [0-9]*/end_log_pos #/ /# at [0-9]*/# at #/ /thread_id=[0-9]*/thread_id=#/ /table id [0-9]*/table id #/ /mapped to number [0-9]*/mapped to number #/ /server v [^ ]*/server v #.##.##/ /(@[0-9]*=[0-9]*[.][0-9]{1,3})[0-9e+-]*[^ ]*(.*(FLOAT|DOUBLE).*[*].)/\1...\2/
|
||||
--exec $MYSQL_BINLOG --base64-output=decode-rows -v -v $MYSQLD_DATADIR/master-bin.000001
|
||||
|
@ -25,10 +25,6 @@ let $fixed_bug_30395= 0;
|
||||
|
||||
# The file with expected results fits only to a run without
|
||||
# ps-protocol/sp-protocol/cursor-protocol/view-protocol.
|
||||
if (`SELECT $PS_PROTOCOL + $SP_PROTOCOL + $CURSOR_PROTOCOL
|
||||
+ $VIEW_PROTOCOL > 0`)
|
||||
{
|
||||
--skip Test requires: ps-protocol/sp-protocol/cursor-protocol/view-protocol disabled
|
||||
}
|
||||
--source include/no_protocol.inc
|
||||
|
||||
--source suite/funcs_1/datadict/processlist_priv.inc
|
||||
|
@ -20,10 +20,6 @@
|
||||
|
||||
# The file with expected results fits only to a run without
|
||||
# ps-protocol/sp-protocol/cursor-protocol/view-protocol.
|
||||
if (`SELECT $PS_PROTOCOL + $SP_PROTOCOL + $CURSOR_PROTOCOL
|
||||
+ $VIEW_PROTOCOL > 0`)
|
||||
{
|
||||
--skip Test requires: ps-protocol/sp-protocol/cursor-protocol/view-protocol disabled
|
||||
}
|
||||
--source include/no_protocol.inc
|
||||
|
||||
--source suite/funcs_1/datadict/processlist_val.inc
|
||||
|
@ -0,0 +1,23 @@
|
||||
call mtr.add_suppression("InnoDB: The total blob data length");
|
||||
SET GLOBAL max_allowed_packet = 100*1024*1024;
|
||||
# Connection big_packets:
|
||||
CREATE TABLE t1 (a BIGINT PRIMARY KEY, b LONGBLOB) ENGINE=InnoDB;
|
||||
INSERT INTO t1 (a, b) VALUES (1, '1');
|
||||
INSERT INTO t1 (a, b) VALUES (2, '2');
|
||||
INSERT INTO t1 (a, b) VALUES (3, '3');
|
||||
INSERT INTO t1 (a, b) VALUES (4, '4');
|
||||
INSERT INTO t1 (a, b) VALUES (5, '5');
|
||||
start transaction;
|
||||
INSERT INTO t1 (a, b) VALUES (6, REPEAT('a', 20*1024*1024));
|
||||
ERROR 42000: The size of BLOB/TEXT data inserted in one transaction is greater than 10% of redo log size. Increase the redo log size using innodb_log_file_size.
|
||||
# Connection default:
|
||||
# Quick shutdown and restart server
|
||||
# Connection default:
|
||||
SELECT a FROM t1;
|
||||
a
|
||||
1
|
||||
2
|
||||
3
|
||||
4
|
||||
5
|
||||
DROP TABLE t1;
|
17
mysql-test/suite/innodb/r/xa_recovery.result
Normal file
17
mysql-test/suite/innodb/r/xa_recovery.result
Normal file
@ -0,0 +1,17 @@
|
||||
CREATE TABLE t1 (a INT) ENGINE=InnoDB;
|
||||
INSERT INTO t1 VALUES (1);
|
||||
XA START 'x';
|
||||
UPDATE t1 set a=2;
|
||||
XA END 'x';
|
||||
XA PREPARE 'x';
|
||||
call mtr.add_suppression("Found 1 prepared XA transactions");
|
||||
SELECT * FROM t1 LOCK IN SHARE MODE;
|
||||
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
|
||||
SELECT * FROM t1;
|
||||
a
|
||||
2
|
||||
XA ROLLBACK 'x';
|
||||
SELECT * FROM t1;
|
||||
a
|
||||
1
|
||||
DROP TABLE t1;
|
@ -1,11 +1,6 @@
|
||||
--source include/have_innodb.inc
|
||||
--source include/have_debug.inc
|
||||
|
||||
if (`select plugin_auth_version <= "5.5.39-MariaDB-36.0" from information_schema.plugins where plugin_name='innodb'`)
|
||||
{
|
||||
--skip Not fixed in XtraDB as of 5.5.39-MariaDB-36.0 or earlier
|
||||
}
|
||||
|
||||
--echo #
|
||||
--echo # Bug #19471516 SERVER CRASHES WHEN EXECUTING ALTER TABLE
|
||||
--echo # ADD FOREIGN KEY
|
||||
|
@ -1,8 +1,3 @@
|
||||
if (`select plugin_auth_version <= "5.5.37-MariaDB-34.0" from information_schema.plugins where plugin_name='innodb'`)
|
||||
{
|
||||
--skip Not fixed in XtraDB as of 5.5.37-MariaDB-34.0 or earlier
|
||||
}
|
||||
|
||||
--source include/have_innodb.inc
|
||||
# embedded server ignores 'delayed', so skip this
|
||||
-- source include/not_embedded.inc
|
||||
|
@ -0,0 +1,55 @@
|
||||
--source include/not_embedded.inc
|
||||
--source include/not_crashrep.inc
|
||||
--source include/have_innodb.inc
|
||||
|
||||
call mtr.add_suppression("InnoDB: The total blob data length");
|
||||
|
||||
let $old_max_allowed_packet = `select @@max_allowed_packet`;
|
||||
SET GLOBAL max_allowed_packet = 100*1024*1024;
|
||||
|
||||
--echo # Connection big_packets:
|
||||
connect(big_packets,localhost,root,,);
|
||||
connection big_packets;
|
||||
|
||||
CREATE TABLE t1 (a BIGINT PRIMARY KEY, b LONGBLOB) ENGINE=InnoDB;
|
||||
|
||||
# Insert a few rows (it doesn't really matter how many). These transactions
|
||||
# are committed once they are acked, so they should not be lost.
|
||||
INSERT INTO t1 (a, b) VALUES (1, '1');
|
||||
INSERT INTO t1 (a, b) VALUES (2, '2');
|
||||
INSERT INTO t1 (a, b) VALUES (3, '3');
|
||||
INSERT INTO t1 (a, b) VALUES (4, '4');
|
||||
INSERT INTO t1 (a, b) VALUES (5, '5');
|
||||
|
||||
# The BLOB insert will fail, and should disappear. However all data committed
|
||||
# up to this point should not be lost.
|
||||
start transaction;
|
||||
--replace_regex /\(> [0-9]*\)/(> ####)/
|
||||
--error ER_TOO_BIG_ROWSIZE
|
||||
INSERT INTO t1 (a, b) VALUES (6, REPEAT('a', 20*1024*1024));
|
||||
|
||||
--echo # Connection default:
|
||||
connection default;
|
||||
|
||||
# We expect a restart.
|
||||
--exec echo "restart" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
|
||||
|
||||
--echo # Quick shutdown and restart server
|
||||
--shutdown_server 0
|
||||
|
||||
# Wait for the server to come back up, and reconnect.
|
||||
--enable_reconnect
|
||||
--source include/wait_until_connected_again.inc
|
||||
|
||||
--echo # Connection default:
|
||||
connection default;
|
||||
|
||||
# We should see (1,2,3,4,5) here.
|
||||
SELECT a FROM t1;
|
||||
|
||||
# Clean up.
|
||||
DROP TABLE t1;
|
||||
|
||||
--disable_query_log
|
||||
eval set global max_allowed_packet = $old_max_allowed_packet;
|
||||
--enable_query_log
|
@ -2,11 +2,6 @@
|
||||
--source include/have_debug.inc
|
||||
--source include/have_partition.inc
|
||||
|
||||
if (`select plugin_auth_version < "5.6.22" from information_schema.plugins where plugin_name='innodb'`)
|
||||
{
|
||||
--skip Not fixed in InnoDB/XtraDB as of 5.6.21 or earlier
|
||||
}
|
||||
|
||||
--echo #
|
||||
--echo # Bug#19904003 INNODB_LIMIT_OPTIMISTIC_INSERT_DEBUG=1
|
||||
--echo # CAUSES INFINITE PAGE SPLIT
|
||||
|
@ -1,11 +1,6 @@
|
||||
--source include/have_innodb.inc
|
||||
--source include/big_test.inc
|
||||
|
||||
if (`select plugin_auth_version < "5.6.22" from information_schema.plugins where plugin_name='innodb'`)
|
||||
{
|
||||
--skip Not fixed in InnoDB/XtraDB as of 5.6.21 or earlier
|
||||
}
|
||||
|
||||
--echo #
|
||||
--echo # Bug #19306524 FAILING ASSERTION WITH TEMP TABLE FOR A PROCEDURE
|
||||
--echo # CALLED FROM A FUNCTION
|
||||
|
@ -1,10 +1,5 @@
|
||||
--source include/have_innodb.inc
|
||||
|
||||
if (`select plugin_auth_version <= "5.5.40-MariaDB-36.1" from information_schema.plugins where plugin_name='innodb'`)
|
||||
{
|
||||
--skip Not fixed in XtraDB as of 5.5.40-MariaDB-36.1 or earlier
|
||||
}
|
||||
|
||||
--echo #
|
||||
--echo # Bug #17852083 PRINT A WARNING WHEN DDL HAS AN ERROR IN
|
||||
--echo # INNODB_STRICT_MODE = 1
|
||||
|
47
mysql-test/suite/innodb/t/xa_recovery.test
Normal file
47
mysql-test/suite/innodb/t/xa_recovery.test
Normal file
@ -0,0 +1,47 @@
|
||||
if (`select plugin_auth_version <= "5.6.24" from information_schema.plugins where plugin_name='innodb'`)
|
||||
{
|
||||
--skip Not fixed in InnoDB as of 5.6.24 or earlier
|
||||
}
|
||||
--source include/have_innodb.inc
|
||||
# Embedded server does not support restarting.
|
||||
--source include/not_embedded.inc
|
||||
|
||||
CREATE TABLE t1 (a INT) ENGINE=InnoDB;
|
||||
INSERT INTO t1 VALUES (1);
|
||||
connect (con1,localhost,root);
|
||||
XA START 'x'; UPDATE t1 set a=2; XA END 'x'; XA PREPARE 'x';
|
||||
connection default;
|
||||
|
||||
call mtr.add_suppression("Found 1 prepared XA transactions");
|
||||
|
||||
# Kill and restart the server.
|
||||
-- exec echo "wait" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
|
||||
-- shutdown_server 0
|
||||
-- source include/wait_until_disconnected.inc
|
||||
|
||||
-- exec echo "restart" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
|
||||
-- enable_reconnect
|
||||
-- source include/wait_until_connected_again.inc
|
||||
-- disable_reconnect
|
||||
|
||||
disconnect con1;
|
||||
connect (con1,localhost,root);
|
||||
--send SELECT * FROM t1 LOCK IN SHARE MODE
|
||||
|
||||
connection default;
|
||||
let $wait_condition=
|
||||
select count(*) = 1 from information_schema.processlist
|
||||
where state = 'Sending data' and
|
||||
info = 'SELECT * FROM t1 LOCK IN SHARE MODE';
|
||||
--source include/wait_condition.inc
|
||||
|
||||
--source include/restart_mysqld.inc
|
||||
|
||||
disconnect con1;
|
||||
|
||||
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
|
||||
SELECT * FROM t1;
|
||||
XA ROLLBACK 'x';
|
||||
SELECT * FROM t1;
|
||||
|
||||
DROP TABLE t1;
|
@ -6,3 +6,14 @@ OPTIMIZE TABLE t1;
|
||||
Table Op Msg_type Msg_text
|
||||
test.t1 optimize status OK
|
||||
drop table t1;
|
||||
#
|
||||
# MDEV-3870 - Valgrind warnings on OPTIMIZE MyISAM or Aria TABLE with
|
||||
# disabled keys
|
||||
#
|
||||
CREATE TABLE t1 (a INT, KEY(a)) ENGINE=Aria;
|
||||
INSERT INTO t1 VALUES (4),(3),(1),(0);
|
||||
ALTER TABLE t1 DISABLE KEYS;
|
||||
OPTIMIZE TABLE t1;
|
||||
Table Op Msg_type Msg_text
|
||||
test.t1 optimize status OK
|
||||
DROP TABLE t1;
|
||||
|
@ -160,3 +160,13 @@ INSERT /*! IGNORE */ INTO t1 VALUES ('urxjxqvwabikpugvexxbxdpxjkeqiuhhuadbcuhoz
|
||||
check table t1;
|
||||
OPTIMIZE TABLE t1;
|
||||
drop table t1;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-3870 - Valgrind warnings on OPTIMIZE MyISAM or Aria TABLE with
|
||||
--echo # disabled keys
|
||||
--echo #
|
||||
CREATE TABLE t1 (a INT, KEY(a)) ENGINE=Aria;
|
||||
INSERT INTO t1 VALUES (4),(3),(1),(0);
|
||||
ALTER TABLE t1 DISABLE KEYS;
|
||||
OPTIMIZE TABLE t1;
|
||||
DROP TABLE t1;
|
||||
|
@ -58,7 +58,10 @@ t1.frm
|
||||
t1.par
|
||||
SET DEBUG_SYNC='before_open_in_get_all_tables SIGNAL parked WAIT_FOR open';
|
||||
SET DEBUG_SYNC='partition_open_error SIGNAL alter WAIT_FOR finish';
|
||||
SELECT * FROM INFORMATION_SCHEMA.PARTITIONS WHERE TABLE_NAME = 't1' AND TABLE_SCHEMA = 'test';
|
||||
SELECT TABLE_SCHEMA, TABLE_NAME, PARTITION_NAME, PARTITION_ORDINAL_POSITION,
|
||||
PARTITION_DESCRIPTION, TABLE_ROWS
|
||||
FROM INFORMATION_SCHEMA.PARTITIONS
|
||||
WHERE TABLE_NAME = 't1' AND TABLE_SCHEMA = 'test';
|
||||
SET DEBUG_SYNC = 'now WAIT_FOR parked';
|
||||
# When waiting for the name lock in get_all_tables in sql_show.cc
|
||||
# this will not be concurrent any more, thus the TIMEOUT
|
||||
@ -70,9 +73,9 @@ ALTER TABLE t1 REORGANIZE PARTITION p0 INTO
|
||||
PARTITION p10 VALUES LESS THAN MAXVALUE);
|
||||
Warnings:
|
||||
Warning 1639 debug sync point wait timed out
|
||||
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PARTITION_NAME SUBPARTITION_NAME PARTITION_ORDINAL_POSITION SUBPARTITION_ORDINAL_POSITION PARTITION_METHOD SUBPARTITION_METHOD PARTITION_EXPRESSION SUBPARTITION_EXPRESSION PARTITION_DESCRIPTION TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE CREATE_TIME UPDATE_TIME CHECK_TIME CHECKSUM PARTITION_COMMENT NODEGROUP TABLESPACE_NAME
|
||||
def test t1 p0 NULL 1 NULL RANGE NULL a NULL 10 1 16384 16384 NULL 0 0 NULL NULL NULL NULL default NULL
|
||||
def test t1 p10 NULL 2 NULL RANGE NULL a NULL MAXVALUE 3 5461 16384 NULL 0 0 NULL NULL NULL NULL default NULL
|
||||
TABLE_SCHEMA TABLE_NAME PARTITION_NAME PARTITION_ORDINAL_POSITION PARTITION_DESCRIPTION TABLE_ROWS
|
||||
test t1 p0 1 10 1
|
||||
test t1 p10 2 MAXVALUE 3
|
||||
t1#P#p0.ibd
|
||||
t1#P#p10.ibd
|
||||
t1.frm
|
||||
|
@ -62,7 +62,10 @@ SHOW CREATE TABLE t1;
|
||||
SET DEBUG_SYNC='before_open_in_get_all_tables SIGNAL parked WAIT_FOR open';
|
||||
SET DEBUG_SYNC='partition_open_error SIGNAL alter WAIT_FOR finish';
|
||||
send
|
||||
SELECT * FROM INFORMATION_SCHEMA.PARTITIONS WHERE TABLE_NAME = 't1' AND TABLE_SCHEMA = 'test';
|
||||
SELECT TABLE_SCHEMA, TABLE_NAME, PARTITION_NAME, PARTITION_ORDINAL_POSITION,
|
||||
PARTITION_DESCRIPTION, TABLE_ROWS
|
||||
FROM INFORMATION_SCHEMA.PARTITIONS
|
||||
WHERE TABLE_NAME = 't1' AND TABLE_SCHEMA = 'test';
|
||||
|
||||
connect (con1, localhost, root,,);
|
||||
SET DEBUG_SYNC = 'now WAIT_FOR parked';
|
||||
|
@ -45,7 +45,7 @@ BEGIN;
|
||||
CREATE TABLE t2 (a INT) ENGINE=InnoDB;
|
||||
ERROR HY000: Can't create table `test`.`t2` (errno: 131 "Command not supported by database")
|
||||
DROP TABLE t1;
|
||||
ERROR 42S02: Unknown table 'test.t1'
|
||||
ERROR HY000: Storage engine InnoDB of the table `test`.`t1` doesn't have this option
|
||||
TRUNCATE TABLE t1;
|
||||
ERROR HY000: Got error 131 "Command not supported by database" during COMMIT
|
||||
ALTER TABLE t1 ENGINE=MyISAM;
|
||||
|
@ -38,7 +38,7 @@ SET innodb_fake_changes=1;
|
||||
BEGIN;
|
||||
--error 1005
|
||||
CREATE TABLE t2 (a INT) ENGINE=InnoDB;
|
||||
--error 1051
|
||||
--error 1031
|
||||
DROP TABLE t1;
|
||||
--error 1180
|
||||
TRUNCATE TABLE t1;
|
||||
|
@ -48,7 +48,7 @@
|
||||
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_perfschema.inc
|
||||
--source ../include/no_protocol.inc
|
||||
--source include/no_protocol.inc
|
||||
--source ../include/wait_for_pfs_thread_count.inc
|
||||
|
||||
--disable_query_log
|
||||
|
@ -1,5 +1,5 @@
|
||||
# Making sure not to run when ps-protocol is set.
|
||||
--source ../include/no_protocol.inc
|
||||
--source include/no_protocol.inc
|
||||
|
||||
--echo ####################################
|
||||
--echo # SETUP
|
||||
|
@ -62,7 +62,7 @@
|
||||
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_perfschema.inc
|
||||
--source ../include/no_protocol.inc
|
||||
--source include/no_protocol.inc
|
||||
--source ../include/wait_for_pfs_thread_count.inc
|
||||
|
||||
--disable_query_log
|
||||
|
@ -24,7 +24,7 @@
|
||||
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_perfschema.inc
|
||||
--source ../include/no_protocol.inc
|
||||
--source include/no_protocol.inc
|
||||
|
||||
--disable_query_log
|
||||
|
||||
|
@ -67,7 +67,7 @@
|
||||
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_perfschema.inc
|
||||
--source ../include/no_protocol.inc
|
||||
--source include/no_protocol.inc
|
||||
--source ../include/wait_for_pfs_thread_count.inc
|
||||
|
||||
--disable_query_log
|
||||
|
@ -13,7 +13,7 @@ processlist_user NULL
|
||||
processlist_host NULL
|
||||
processlist_db NULL
|
||||
processlist_command NULL
|
||||
processlist_info INTERNAL DDL LOG RECOVER IN PROGRESS
|
||||
processlist_info NULL
|
||||
unified_parent_thread_id NULL
|
||||
role NULL
|
||||
instrumented YES
|
||||
|
@ -7,7 +7,7 @@
|
||||
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_perfschema.inc
|
||||
--source ../include/no_protocol.inc
|
||||
--source include/no_protocol.inc
|
||||
|
||||
TRUNCATE TABLE performance_schema.events_statements_summary_by_digest;
|
||||
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_debug.inc
|
||||
--source include/have_ipv6.inc
|
||||
--source include/check_ipv6.inc
|
||||
--source include/have_perfschema.inc
|
||||
|
||||
# [Warning] Host name 'santa.claus.ipv6.example.com' could not be resolved:
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_debug.inc
|
||||
--source include/have_ipv6.inc
|
||||
--source include/check_ipv6.inc
|
||||
--source include/have_perfschema.inc
|
||||
|
||||
# [Warning] Host name 'santa.claus.ipv6.example.com' could not be resolved:
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_debug.inc
|
||||
--source include/have_ipv6.inc
|
||||
--source include/check_ipv6.inc
|
||||
--source include/have_perfschema.inc
|
||||
|
||||
# [Warning] Hostname 'santa.claus.ipv6.example.com' does not resolve to '2001:db8::6:6'.
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_debug.inc
|
||||
--source include/have_ipv6.inc
|
||||
--source include/check_ipv6.inc
|
||||
--source include/have_perfschema.inc
|
||||
|
||||
# [Warning] Hostname 'santa.claus.ipv6.example.com' does not resolve to '2001:db8::6:6'.
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_debug.inc
|
||||
--source include/have_ipv6.inc
|
||||
--source include/check_ipv6.inc
|
||||
--source include/have_perfschema.inc
|
||||
|
||||
# [Warning] IP address '192.0.2.4' could not be resolved:
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_debug.inc
|
||||
--source include/have_ipv6.inc
|
||||
--source include/check_ipv6.inc
|
||||
--source include/have_perfschema.inc
|
||||
|
||||
# Enforce a clean state
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_debug.inc
|
||||
--source include/have_ipv6.inc
|
||||
--source include/check_ipv6.inc
|
||||
--source include/have_perfschema.inc
|
||||
|
||||
# [Warning] Host name 'santa.claus.ipv6.example.com' could not be resolved:
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_debug.inc
|
||||
--source include/have_ipv6.inc
|
||||
--source include/check_ipv6.inc
|
||||
--source include/have_perfschema.inc
|
||||
|
||||
# [Warning] Host name 'santa.claus.ipv6.example.com' could not be resolved:
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_debug.inc
|
||||
--source include/have_ipv6.inc
|
||||
--source include/check_ipv6.inc
|
||||
--source include/have_perfschema.inc
|
||||
--source include/have_plugin_auth.inc
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_debug.inc
|
||||
--source include/have_ipv6.inc
|
||||
--source include/check_ipv6.inc
|
||||
--source include/have_perfschema.inc
|
||||
|
||||
# Enforce a clean state
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_debug.inc
|
||||
--source include/have_ipv6.inc
|
||||
--source include/check_ipv6.inc
|
||||
--source include/have_perfschema.inc
|
||||
|
||||
# Enforce a clean state
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_debug.inc
|
||||
--source include/have_ipv6.inc
|
||||
--source include/check_ipv6.inc
|
||||
--source include/have_perfschema.inc
|
||||
|
||||
# [Warning] IP address '2001:db8::6:6' could not be resolved:
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_debug.inc
|
||||
--source include/have_ipv6.inc
|
||||
--source include/check_ipv6.inc
|
||||
--source include/have_perfschema.inc
|
||||
|
||||
# [Warning] IP address '2001:db8::6:6' could not be resolved:
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user