mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
Merge 10.8 into 10.9
This commit is contained in:
2
CREDITS
2
CREDITS
@ -4,9 +4,11 @@ organization registered in the USA.
|
||||
The current main sponsors of the MariaDB Foundation are:
|
||||
|
||||
Alibaba Cloud https://www.alibabacloud.com/ (2017)
|
||||
Intel https://www.intel.com (2022)
|
||||
MariaDB Corporation https://www.mariadb.com (2013)
|
||||
Microsoft https://microsoft.com/ (2017)
|
||||
ServiceNow https://servicenow.com (2019)
|
||||
SIT https://sit.org (2022)
|
||||
Tencent Cloud https://cloud.tencent.com (2017)
|
||||
Development Bank of Singapore https://dbs.com (2016)
|
||||
IBM https://www.ibm.com (2017)
|
||||
|
@ -2893,6 +2893,7 @@ static Exit_status handle_event_raw_mode(PRINT_EVENT_INFO *print_event_info,
|
||||
error("Could not write into log file '%s'", out_file_name);
|
||||
DBUG_RETURN(ERROR_STOP);
|
||||
}
|
||||
fflush(result_file);
|
||||
|
||||
DBUG_RETURN(OK_CONTINUE);
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* Copyright (c) 2000, 2013, Oracle and/or its affiliates.
|
||||
Copyright (c) 2009, 2021, MariaDB
|
||||
Copyright (c) 2009, 2022, MariaDB
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
@ -319,6 +319,7 @@ struct st_connection
|
||||
char *name;
|
||||
size_t name_len;
|
||||
MYSQL_STMT* stmt;
|
||||
MYSQL_BIND *ps_params;
|
||||
/* Set after send to disallow other queries before reap */
|
||||
my_bool pending;
|
||||
|
||||
@ -393,6 +394,10 @@ enum enum_commands {
|
||||
Q_ENABLE_PREPARE_WARNINGS, Q_DISABLE_PREPARE_WARNINGS,
|
||||
Q_RESET_CONNECTION,
|
||||
Q_OPTIMIZER_TRACE,
|
||||
Q_PS_PREPARE,
|
||||
Q_PS_BIND,
|
||||
Q_PS_EXECUTE,
|
||||
Q_PS_CLOSE,
|
||||
Q_UNKNOWN, /* Unknown command. */
|
||||
Q_COMMENT, /* Comments, ignored. */
|
||||
Q_COMMENT_WITH_COMMAND,
|
||||
@ -506,6 +511,10 @@ const char *command_names[]=
|
||||
"disable_prepare_warnings",
|
||||
"reset_connection",
|
||||
"optimizer_trace",
|
||||
"PS_prepare",
|
||||
"PS_bind",
|
||||
"PS_execute",
|
||||
"PS_close",
|
||||
0
|
||||
};
|
||||
|
||||
@ -7958,6 +7967,15 @@ static void handle_no_active_connection(struct st_command *command,
|
||||
var_set_errno(2006);
|
||||
}
|
||||
|
||||
/* handler functions to execute prepared statement calls in client C API */
|
||||
void run_prepare_stmt(struct st_connection *cn, struct st_command *command, const char *query,
|
||||
size_t query_len, DYNAMIC_STRING *ds, DYNAMIC_STRING *ds_warnings);
|
||||
void run_bind_stmt(struct st_connection *cn, struct st_command *command, const char *query,
|
||||
size_t query_len, DYNAMIC_STRING *ds, DYNAMIC_STRING *ds_warnings);
|
||||
void run_execute_stmt(struct st_connection *cn, struct st_command *command, const char *query,
|
||||
size_t query_len, DYNAMIC_STRING *ds, DYNAMIC_STRING *ds_warnings);
|
||||
void run_close_stmt(struct st_connection *cn, struct st_command *command, const char *query,
|
||||
size_t query_len, DYNAMIC_STRING *ds, DYNAMIC_STRING *ds_warnings);
|
||||
|
||||
/*
|
||||
Run query using MySQL C API
|
||||
@ -7989,6 +8007,32 @@ void run_query_normal(struct st_connection *cn, struct st_command *command,
|
||||
DBUG_VOID_RETURN;
|
||||
}
|
||||
|
||||
/* handle prepared statement commands */
|
||||
switch (command->type) {
|
||||
case Q_PS_PREPARE:
|
||||
run_prepare_stmt(cn, command, query, query_len, ds, ds_warnings);
|
||||
flags &= ~QUERY_SEND_FLAG;
|
||||
goto end;
|
||||
break;
|
||||
case Q_PS_BIND:
|
||||
run_bind_stmt(cn, command, query, query_len, ds, ds_warnings);
|
||||
flags &= ~QUERY_SEND_FLAG;
|
||||
goto end;
|
||||
break;
|
||||
case Q_PS_EXECUTE:
|
||||
run_execute_stmt(cn, command, query, query_len, ds, ds_warnings);
|
||||
flags &= ~QUERY_SEND_FLAG;
|
||||
goto end;
|
||||
break;
|
||||
case Q_PS_CLOSE:
|
||||
run_close_stmt(cn, command, query, query_len, ds, ds_warnings);
|
||||
flags &= ~QUERY_SEND_FLAG;
|
||||
goto end;
|
||||
break;
|
||||
default: /* not a prepared statement command */
|
||||
break;
|
||||
}
|
||||
|
||||
if (flags & QUERY_SEND_FLAG)
|
||||
{
|
||||
/*
|
||||
@ -8562,6 +8606,411 @@ end:
|
||||
DBUG_VOID_RETURN;
|
||||
}
|
||||
|
||||
/*
|
||||
prepare query using prepared statement C API
|
||||
|
||||
SYNPOSIS
|
||||
run_prepare_stmt
|
||||
mysql - mysql handle
|
||||
command - current command pointer
|
||||
query - query string to execute
|
||||
query_len - length query string to execute
|
||||
ds - output buffer where to store result form query
|
||||
|
||||
RETURN VALUE
|
||||
error - function will not return
|
||||
*/
|
||||
|
||||
void run_prepare_stmt(struct st_connection *cn, struct st_command *command, const char *query, size_t query_len, DYNAMIC_STRING *ds, DYNAMIC_STRING *ds_warnings)
|
||||
{
|
||||
|
||||
MYSQL *mysql= cn->mysql;
|
||||
MYSQL_STMT *stmt;
|
||||
DYNAMIC_STRING ds_prepare_warnings;
|
||||
DBUG_ENTER("run_prepare_stmt");
|
||||
DBUG_PRINT("query", ("'%-.60s'", query));
|
||||
|
||||
/*
|
||||
Init a new stmt if it's not already one created for this connection
|
||||
*/
|
||||
if(!(stmt= cn->stmt))
|
||||
{
|
||||
if (!(stmt= mysql_stmt_init(mysql)))
|
||||
die("unable to init stmt structure");
|
||||
cn->stmt= stmt;
|
||||
}
|
||||
|
||||
/* Init dynamic strings for warnings */
|
||||
if (!disable_warnings)
|
||||
{
|
||||
init_dynamic_string(&ds_prepare_warnings, NULL, 0, 256);
|
||||
}
|
||||
|
||||
/*
|
||||
Prepare the query
|
||||
*/
|
||||
char* PS_query= command->first_argument;
|
||||
size_t PS_query_len= command->end - command->first_argument;
|
||||
if (do_stmt_prepare(cn, PS_query, PS_query_len))
|
||||
{
|
||||
handle_error(command, mysql_stmt_errno(stmt),
|
||||
mysql_stmt_error(stmt), mysql_stmt_sqlstate(stmt), ds);
|
||||
goto end;
|
||||
}
|
||||
|
||||
/*
|
||||
Get the warnings from mysql_stmt_prepare and keep them in a
|
||||
separate string
|
||||
*/
|
||||
if (!disable_warnings)
|
||||
append_warnings(&ds_prepare_warnings, mysql);
|
||||
end:
|
||||
DBUG_VOID_RETURN;
|
||||
}
|
||||
|
||||
/*
|
||||
bind parameters for a prepared statement C API
|
||||
|
||||
SYNPOSIS
|
||||
run_bind_stmt
|
||||
mysql - mysql handle
|
||||
command - current command pointer
|
||||
query - query string to execute
|
||||
query_len - length query string to execute
|
||||
ds - output buffer where to store result form query
|
||||
|
||||
RETURN VALUE
|
||||
error - function will not return
|
||||
*/
|
||||
|
||||
void run_bind_stmt(struct st_connection *cn, struct st_command *command,
|
||||
const char *query, size_t query_len, DYNAMIC_STRING *ds,
|
||||
DYNAMIC_STRING *ds_warnings
|
||||
)
|
||||
{
|
||||
MYSQL_STMT *stmt= cn->stmt;
|
||||
DBUG_ENTER("run_bind_stmt");
|
||||
DBUG_PRINT("query", ("'%-.60s'", query));
|
||||
MYSQL_BIND *ps_params= cn->ps_params;
|
||||
if (ps_params)
|
||||
{
|
||||
for (size_t i=0; i<stmt->param_count; i++)
|
||||
{
|
||||
my_free(ps_params[i].buffer);
|
||||
ps_params[i].buffer= NULL;
|
||||
}
|
||||
my_free(ps_params);
|
||||
ps_params= NULL;
|
||||
}
|
||||
|
||||
/* Init PS-parameters. */
|
||||
cn->ps_params= ps_params = (MYSQL_BIND*)my_malloc(PSI_NOT_INSTRUMENTED,
|
||||
sizeof(MYSQL_BIND) *
|
||||
stmt->param_count,
|
||||
MYF(MY_WME));
|
||||
bzero((char *) ps_params, sizeof(MYSQL_BIND) * stmt->param_count);
|
||||
|
||||
int i=0;
|
||||
char *c;
|
||||
long *l;
|
||||
double *d;
|
||||
|
||||
char *p= strtok((char*)command->first_argument, " ");
|
||||
while (p != nullptr)
|
||||
{
|
||||
(void)strtol(p, &c, 10);
|
||||
if (!*c)
|
||||
{
|
||||
ps_params[i].buffer_type= MYSQL_TYPE_LONG;
|
||||
l= (long*)my_malloc(PSI_NOT_INSTRUMENTED, sizeof(long), MYF(MY_WME));
|
||||
*l= strtol(p, &c, 10);
|
||||
ps_params[i].buffer= (void*)l;
|
||||
ps_params[i].buffer_length= 8;
|
||||
}
|
||||
else
|
||||
{
|
||||
(void)strtod(p, &c);
|
||||
if (!*c)
|
||||
{
|
||||
ps_params[i].buffer_type= MYSQL_TYPE_DECIMAL;
|
||||
d= (double*)my_malloc(PSI_NOT_INSTRUMENTED, sizeof(double),
|
||||
MYF(MY_WME));
|
||||
*d= strtod(p, &c);
|
||||
ps_params[i].buffer= (void*)d;
|
||||
ps_params[i].buffer_length= 8;
|
||||
}
|
||||
else
|
||||
{
|
||||
ps_params[i].buffer_type= MYSQL_TYPE_STRING;
|
||||
ps_params[i].buffer= strdup(p);
|
||||
ps_params[i].buffer_length= (unsigned long)strlen(p);
|
||||
}
|
||||
}
|
||||
|
||||
p= strtok(nullptr, " ");
|
||||
i++;
|
||||
}
|
||||
|
||||
int rc= mysql_stmt_bind_param(stmt, ps_params);
|
||||
if (rc)
|
||||
{
|
||||
die("mysql_stmt_bind_param() failed': %d %s",
|
||||
mysql_stmt_errno(stmt), mysql_stmt_error(stmt));
|
||||
}
|
||||
|
||||
DBUG_VOID_RETURN;
|
||||
}
|
||||
|
||||
/*
|
||||
execute query using prepared statement C API
|
||||
|
||||
SYNPOSIS
|
||||
run_axecute_stmt
|
||||
mysql - mysql handle
|
||||
command - current command pointer
|
||||
query - query string to execute
|
||||
query_len - length query string to execute
|
||||
ds - output buffer where to store result form query
|
||||
|
||||
RETURN VALUE
|
||||
error - function will not return
|
||||
*/
|
||||
|
||||
void run_execute_stmt(struct st_connection *cn, struct st_command *command,
|
||||
const char *query, size_t query_len, DYNAMIC_STRING *ds,
|
||||
DYNAMIC_STRING *ds_warnings
|
||||
)
|
||||
{
|
||||
MYSQL_RES *res= NULL; /* Note that here 'res' is meta data result set */
|
||||
MYSQL *mysql= cn->mysql;
|
||||
MYSQL_STMT *stmt= cn->stmt;
|
||||
DYNAMIC_STRING ds_execute_warnings;
|
||||
DBUG_ENTER("run_execute_stmt");
|
||||
DBUG_PRINT("query", ("'%-.60s'", query));
|
||||
|
||||
/* Init dynamic strings for warnings */
|
||||
if (!disable_warnings)
|
||||
{
|
||||
init_dynamic_string(&ds_execute_warnings, NULL, 0, 256);
|
||||
}
|
||||
|
||||
#if MYSQL_VERSION_ID >= 50000
|
||||
if (cursor_protocol_enabled)
|
||||
{
|
||||
/*
|
||||
Use cursor when retrieving result
|
||||
*/
|
||||
ulong type= CURSOR_TYPE_READ_ONLY;
|
||||
if (mysql_stmt_attr_set(stmt, STMT_ATTR_CURSOR_TYPE, (void*) &type))
|
||||
die("mysql_stmt_attr_set(STMT_ATTR_CURSOR_TYPE) failed': %d %s",
|
||||
mysql_stmt_errno(stmt), mysql_stmt_error(stmt));
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
Execute the query
|
||||
*/
|
||||
if (do_stmt_execute(cn))
|
||||
{
|
||||
handle_error(command, mysql_stmt_errno(stmt),
|
||||
mysql_stmt_error(stmt), mysql_stmt_sqlstate(stmt), ds);
|
||||
goto end;
|
||||
}
|
||||
|
||||
/*
|
||||
When running in cursor_protocol get the warnings from execute here
|
||||
and keep them in a separate string for later.
|
||||
*/
|
||||
if (cursor_protocol_enabled && !disable_warnings)
|
||||
append_warnings(&ds_execute_warnings, mysql);
|
||||
|
||||
/*
|
||||
We instruct that we want to update the "max_length" field in
|
||||
mysql_stmt_store_result(), this is our only way to know how much
|
||||
buffer to allocate for result data
|
||||
*/
|
||||
{
|
||||
my_bool one= 1;
|
||||
if (mysql_stmt_attr_set(stmt, STMT_ATTR_UPDATE_MAX_LENGTH, (void*) &one))
|
||||
die("mysql_stmt_attr_set(STMT_ATTR_UPDATE_MAX_LENGTH) failed': %d %s",
|
||||
mysql_stmt_errno(stmt), mysql_stmt_error(stmt));
|
||||
}
|
||||
|
||||
/*
|
||||
If we got here the statement succeeded and was expected to do so,
|
||||
get data. Note that this can still give errors found during execution!
|
||||
Store the result of the query if if will return any fields
|
||||
*/
|
||||
if (mysql_stmt_field_count(stmt) && mysql_stmt_store_result(stmt))
|
||||
{
|
||||
handle_error(command, mysql_stmt_errno(stmt),
|
||||
mysql_stmt_error(stmt), mysql_stmt_sqlstate(stmt), ds);
|
||||
goto end;
|
||||
}
|
||||
|
||||
/* If we got here the statement was both executed and read successfully */
|
||||
handle_no_error(command);
|
||||
if (!disable_result_log)
|
||||
{
|
||||
/*
|
||||
Not all statements creates a result set. If there is one we can
|
||||
now create another normal result set that contains the meta
|
||||
data. This set can be handled almost like any other non prepared
|
||||
statement result set.
|
||||
*/
|
||||
if ((res= mysql_stmt_result_metadata(stmt)) != NULL)
|
||||
{
|
||||
/* Take the column count from meta info */
|
||||
MYSQL_FIELD *fields= mysql_fetch_fields(res);
|
||||
uint num_fields= mysql_num_fields(res);
|
||||
|
||||
if (display_metadata)
|
||||
append_metadata(ds, fields, num_fields);
|
||||
|
||||
if (!display_result_vertically)
|
||||
append_table_headings(ds, fields, num_fields);
|
||||
|
||||
append_stmt_result(ds, stmt, fields, num_fields);
|
||||
|
||||
mysql_free_result(res); /* Free normal result set with meta data */
|
||||
|
||||
/*
|
||||
Normally, if there is a result set, we do not show warnings from the
|
||||
prepare phase. This is because some warnings are generated both during
|
||||
prepare and execute; this would generate different warning output
|
||||
between normal and ps-protocol test runs.
|
||||
|
||||
The --enable_prepare_warnings command can be used to change this so
|
||||
that warnings from both the prepare and execute phase are shown.
|
||||
*/
|
||||
}
|
||||
else
|
||||
{
|
||||
/*
|
||||
This is a query without resultset
|
||||
*/
|
||||
}
|
||||
|
||||
/*
|
||||
Fetch info before fetching warnings, since it will be reset
|
||||
otherwise.
|
||||
*/
|
||||
if (!disable_info)
|
||||
append_info(ds, mysql_stmt_affected_rows(stmt), mysql_info(mysql));
|
||||
|
||||
if (display_session_track_info)
|
||||
append_session_track_info(ds, mysql);
|
||||
|
||||
|
||||
if (!disable_warnings)
|
||||
{
|
||||
/* Get the warnings from execute */
|
||||
|
||||
/* Append warnings to ds - if there are any */
|
||||
if (append_warnings(&ds_execute_warnings, mysql) ||
|
||||
ds_execute_warnings.length ||
|
||||
ds_warnings->length)
|
||||
{
|
||||
dynstr_append_mem(ds, "Warnings:\n", 10);
|
||||
if (ds_warnings->length)
|
||||
dynstr_append_mem(ds, ds_warnings->str,
|
||||
ds_warnings->length);
|
||||
if (ds_execute_warnings.length)
|
||||
dynstr_append_mem(ds, ds_execute_warnings.str,
|
||||
ds_execute_warnings.length);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
end:
|
||||
if (!disable_warnings)
|
||||
{
|
||||
dynstr_free(&ds_execute_warnings);
|
||||
}
|
||||
|
||||
/*
|
||||
We save the return code (mysql_stmt_errno(stmt)) from the last call sent
|
||||
to the server into the mysqltest builtin variable $mysql_errno. This
|
||||
variable then can be used from the test case itself.
|
||||
*/
|
||||
|
||||
var_set_errno(mysql_stmt_errno(stmt));
|
||||
|
||||
revert_properties();
|
||||
|
||||
/* Close the statement if reconnect, need new prepare */
|
||||
{
|
||||
#ifndef EMBEDDED_LIBRARY
|
||||
my_bool reconnect;
|
||||
mysql_get_option(mysql, MYSQL_OPT_RECONNECT, &reconnect);
|
||||
if (reconnect)
|
||||
#else
|
||||
if (mysql->reconnect)
|
||||
#endif
|
||||
{
|
||||
if (cn->ps_params)
|
||||
{
|
||||
for (size_t i=0; i<stmt->param_count; i++)
|
||||
{
|
||||
my_free(cn->ps_params[i].buffer);
|
||||
cn->ps_params[i].buffer= NULL;
|
||||
}
|
||||
my_free(cn->ps_params);
|
||||
}
|
||||
mysql_stmt_close(stmt);
|
||||
cn->stmt= NULL;
|
||||
cn->ps_params= NULL;
|
||||
}
|
||||
}
|
||||
DBUG_VOID_RETURN;
|
||||
}
|
||||
|
||||
/*
|
||||
close a prepared statement C API
|
||||
|
||||
SYNPOSIS
|
||||
run_close_stmt
|
||||
mysql - mysql handle
|
||||
command - current command pointer
|
||||
query - query string to execute
|
||||
query_len - length query string to execute
|
||||
ds - output buffer where to store result form query
|
||||
|
||||
RETURN VALUE
|
||||
error - function will not return
|
||||
*/
|
||||
|
||||
void run_close_stmt(struct st_connection *cn, struct st_command *command,
|
||||
const char *query, size_t query_len, DYNAMIC_STRING *ds,
|
||||
DYNAMIC_STRING *ds_warnings
|
||||
)
|
||||
{
|
||||
MYSQL_STMT *stmt= cn->stmt;
|
||||
DBUG_ENTER("run_close_stmt");
|
||||
DBUG_PRINT("query", ("'%-.60s'", query));
|
||||
|
||||
if (cn->ps_params)
|
||||
{
|
||||
|
||||
for (size_t i=0; i<stmt->param_count; i++)
|
||||
{
|
||||
my_free(cn->ps_params[i].buffer);
|
||||
cn->ps_params[i].buffer= NULL;
|
||||
}
|
||||
my_free(cn->ps_params);
|
||||
}
|
||||
|
||||
/* Close the statement */
|
||||
if (stmt)
|
||||
{
|
||||
mysql_stmt_close(stmt);
|
||||
cn->stmt= NULL;
|
||||
}
|
||||
cn->ps_params= NULL;
|
||||
|
||||
DBUG_VOID_RETURN;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*
|
||||
@ -9622,6 +10071,10 @@ int main(int argc, char **argv)
|
||||
/* fall through */
|
||||
case Q_QUERY:
|
||||
case Q_REAP:
|
||||
case Q_PS_PREPARE:
|
||||
case Q_PS_BIND:
|
||||
case Q_PS_EXECUTE:
|
||||
case Q_PS_CLOSE:
|
||||
{
|
||||
my_bool old_display_result_vertically= display_result_vertically;
|
||||
/* Default is full query, both reap and send */
|
||||
|
@ -17,22 +17,31 @@ IF(GIT_EXECUTABLE AND EXISTS "${CMAKE_SOURCE_DIR}/.git")
|
||||
${GIT_EXECUTABLE} config cmake.update-submodules yes")
|
||||
ELSEIF(git_config_get_result EQUAL 128)
|
||||
SET(update_result 0)
|
||||
ELSEIF (cmake_update_submodules MATCHES force)
|
||||
ELSE()
|
||||
SET(UPDATE_SUBMODULES_COMMAND
|
||||
"${GIT_EXECUTABLE}" submodule update --init --recursive)
|
||||
# Old Git may not work with "--depth 1".
|
||||
# See also: https://github.com/git/git/commit/fb43e31f2b43076e7a30c9cd00d0241cb8cf97eb
|
||||
IF(NOT GIT_VERSION_STRING VERSION_LESS "2.8.0")
|
||||
SET(UPDATE_SUBMODULES_COMMAND ${UPDATE_SUBMODULES_COMMAND} --depth 1)
|
||||
ENDIF()
|
||||
IF(cmake_update_submodules MATCHES force)
|
||||
MESSAGE(STATUS "Updating submodules (forced)")
|
||||
EXECUTE_PROCESS(COMMAND "${GIT_EXECUTABLE}" submodule update --init --force --recursive --depth=1
|
||||
EXECUTE_PROCESS(COMMAND ${UPDATE_SUBMODULES_COMMAND} --force
|
||||
WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
|
||||
RESULT_VARIABLE update_result)
|
||||
ELSEIF(cmake_update_submodules MATCHES yes)
|
||||
EXECUTE_PROCESS(COMMAND "${GIT_EXECUTABLE}" submodule update --init --recursive --depth=1
|
||||
EXECUTE_PROCESS(COMMAND ${UPDATE_SUBMODULES_COMMAND}
|
||||
WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
|
||||
RESULT_VARIABLE update_result)
|
||||
ELSE()
|
||||
MESSAGE(STATUS "Updating submodules")
|
||||
EXECUTE_PROCESS(COMMAND "${GIT_EXECUTABLE}" submodule update --init --recursive --depth=1
|
||||
EXECUTE_PROCESS(COMMAND ${UPDATE_SUBMODULES_COMMAND}
|
||||
WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
|
||||
RESULT_VARIABLE update_result)
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
IF(update_result OR NOT EXISTS ${CMAKE_SOURCE_DIR}/libmariadb/CMakeLists.txt)
|
||||
MESSAGE(FATAL_ERROR "No MariaDB Connector/C! Run
|
||||
|
169
debian/autobake-deb.sh
vendored
169
debian/autobake-deb.sh
vendored
@ -11,26 +11,17 @@
|
||||
# Exit immediately on any error
|
||||
set -e
|
||||
|
||||
source ./VERSION
|
||||
|
||||
CODENAME="$(lsb_release -sc)"
|
||||
case "${CODENAME}" in
|
||||
stretch)
|
||||
# MDEV-28022 libzstd-dev-1.1.3 minimum version
|
||||
sed -i -e '/libzstd-dev/d' debian/control
|
||||
;;
|
||||
esac
|
||||
|
||||
# This file is invoked from Buildbot and Travis-CI to build deb packages.
|
||||
# As both of those CI systems have many parallel jobs that include different
|
||||
# parts of the test suite, we don't need to run the mysql-test-run at all when
|
||||
# building the deb packages here.
|
||||
# On Buildbot, don't run the mysql-test-run test suite as part of build.
|
||||
# It takes a lot of time, and we will do a better test anyway in
|
||||
# Buildbot, running the test suite from installed .debs on a clean VM.
|
||||
export DEB_BUILD_OPTIONS="nocheck $DEB_BUILD_OPTIONS"
|
||||
|
||||
source ./VERSION
|
||||
|
||||
# General CI optimizations to keep build output smaller
|
||||
if [[ $TRAVIS ]] || [[ $GITLAB_CI ]]
|
||||
if [[ $GITLAB_CI ]]
|
||||
then
|
||||
# On both Travis and Gitlab the output log must stay under 4MB so make the
|
||||
# On Gitlab the output log must stay under 4MB so make the
|
||||
# build less verbose
|
||||
sed '/Add support for verbose builds/,/^$/d' -i debian/rules
|
||||
elif [ -d storage/columnstore/columnstore/debian ]
|
||||
@ -45,67 +36,106 @@ then
|
||||
sed "s/10.6/${MYSQL_VERSION_MAJOR}.${MYSQL_VERSION_MINOR}/" <storage/columnstore/columnstore/debian/control >> debian/control
|
||||
fi
|
||||
|
||||
# Don't build or try to put files in a package for selected plugins and components on Travis-CI
|
||||
# in order to keep build small (in both duration and disk space)
|
||||
if [[ $TRAVIS ]]
|
||||
then
|
||||
# Test suite package not relevant on Travis-CI
|
||||
sed 's|DINSTALL_MYSQLTESTDIR=share/mysql/mysql-test|DINSTALL_MYSQLTESTDIR=false|' -i debian/rules
|
||||
sed '/Package: mariadb-test-data/,/^$/d' -i debian/control
|
||||
sed '/Package: mariadb-test$/,/^$/d' -i debian/control
|
||||
# Look up distro-version specific stuff
|
||||
#
|
||||
# Always keep the actual packaging as up-to-date as possible following the latest
|
||||
# Debian policy and targeting Debian Sid. Then case-by-case run in autobake-deb.sh
|
||||
# tests for backwards compatibility and strip away parts on older builders.
|
||||
|
||||
# Extra plugins such as Mroonga, Spider, OQgraph, Sphinx and the embedded build can safely be skipped
|
||||
sed 's|-DDEB|-DPLUGIN_MROONGA=NO -DPLUGIN_ROCKSDB=NO -DPLUGIN_SPIDER=NO -DPLUGIN_OQGRAPH=NO -DPLUGIN_PERFSCHEMA=NO -DPLUGIN_SPHINX=NO -DWITH_EMBEDDED_SERVER=OFF -DDEB|' -i debian/rules
|
||||
sed "/Package: mariadb-plugin-mroonga/,/^$/d" -i debian/control
|
||||
sed "/Package: mariadb-plugin-rocksdb/,/^$/d" -i debian/control
|
||||
sed "/Package: mariadb-plugin-spider/,/^$/d" -i debian/control
|
||||
sed "/Package: mariadb-plugin-oqgraph/,/^$/d" -i debian/control
|
||||
sed "/ha_sphinx.so/d" -i debian/mariadb-server-${MYSQL_VERSION_MAJOR}.${MYSQL_VERSION_MINOR}.install
|
||||
sed "/Package: libmariadbd19/,/^$/d" -i debian/control
|
||||
sed "/Package: libmariadbd-dev/,/^$/d" -i debian/control
|
||||
fi
|
||||
|
||||
# If rocksdb-tools is not available (before Debian Buster and Ubuntu Disco)
|
||||
# remove the dependency from the RocksDB plugin so it can install properly
|
||||
# and instead ship the one built from MariaDB sources
|
||||
if ! apt-cache madison rocksdb-tools | grep 'rocksdb-tools' >/dev/null 2>&1
|
||||
then
|
||||
remove_rocksdb_tools()
|
||||
{
|
||||
sed '/rocksdb-tools/d' -i debian/control
|
||||
sed '/sst_dump/d' -i debian/not-installed
|
||||
if ! grep -q sst_dump debian/mariadb-plugin-rocksdb.install
|
||||
then
|
||||
echo "usr/bin/sst_dump" >> debian/mariadb-plugin-rocksdb.install
|
||||
fi
|
||||
}
|
||||
|
||||
# If libcurl4 is not available (before Debian Buster and Ubuntu Bionic)
|
||||
# use older libcurl3 instead
|
||||
if ! apt-cache madison libcurl4 | grep 'libcurl4' >/dev/null 2>&1
|
||||
then
|
||||
sed 's/libcurl4/libcurl3/g' -i debian/control
|
||||
fi
|
||||
|
||||
# From Debian Bullseye/Ubuntu Groovy, liburing replaces libaio
|
||||
if ! apt-cache madison liburing-dev | grep 'liburing-dev' >/dev/null 2>&1
|
||||
then
|
||||
replace_uring_with_aio()
|
||||
{
|
||||
sed 's/liburing-dev/libaio-dev/g' -i debian/control
|
||||
sed '/-DIGNORE_AIO_CHECK=YES/d' -i debian/rules
|
||||
sed '/-DWITH_URING=yes/d' -i debian/rules
|
||||
fi
|
||||
sed -e '/-DIGNORE_AIO_CHECK=YES/d' \
|
||||
-e '/-DWITH_URING=yes/d' -i debian/rules
|
||||
}
|
||||
|
||||
# From Debian Buster/Ubuntu Focal onwards libpmem-dev is available
|
||||
# Don't reference it when built in distro releases that lack it
|
||||
if ! apt-cache madison libpmem-dev | grep 'libpmem-dev' >/dev/null 2>&1
|
||||
then
|
||||
disable_pmem()
|
||||
{
|
||||
sed '/libpmem-dev/d' -i debian/control
|
||||
sed '/-DWITH_PMEM=yes/d' -i debian/rules
|
||||
fi
|
||||
}
|
||||
|
||||
# Debian stretch doesn't support the zstd version 1.1.3 required
|
||||
# for RocksDB. zstd isn't enabled in Mroonga even though code exists
|
||||
# for it. If someone happens to have a non-default zstd installed
|
||||
# (not 1.1.2), assume its a backport and build with it.
|
||||
if [ "$(lsb_release -sc)" = stretch ] && [ "$(apt-cache madison 'libzstd-dev' | grep -v 1.1.2)" = '' ]
|
||||
disable_libfmt()
|
||||
{
|
||||
# 0.7+ required
|
||||
sed '/libfmt-dev/d' -i debian/control
|
||||
}
|
||||
|
||||
architecture=$(dpkg-architecture -q DEB_BUILD_ARCH)
|
||||
|
||||
CODENAME="$(lsb_release -sc)"
|
||||
case "${CODENAME}" in
|
||||
stretch)
|
||||
# MDEV-16525 libzstd-dev-1.1.3 minimum version
|
||||
sed -e '/libzstd-dev/d' \
|
||||
-e 's/libcurl4/libcurl3/g' -i debian/control
|
||||
remove_rocksdb_tools
|
||||
disable_pmem
|
||||
;&
|
||||
buster)
|
||||
disable_libfmt
|
||||
replace_uring_with_aio
|
||||
if [ ! "$architecture" = amd64 ]
|
||||
then
|
||||
sed '/libzstd-dev/d' -i debian/control
|
||||
disable_pmem
|
||||
fi
|
||||
;&
|
||||
bullseye|bookworm)
|
||||
# mariadb-plugin-rocksdb in control is 4 arches covered by the distro rocksdb-tools
|
||||
# so no removal is necessary.
|
||||
if [[ ! "$architecture" =~ amd64|arm64|ppc64el ]]
|
||||
then
|
||||
disable_pmem
|
||||
fi
|
||||
if [[ ! "$architecture" =~ amd64|arm64|armel|armhf|i386|mips64el|mipsel|ppc64el|s390x ]]
|
||||
then
|
||||
replace_uring_with_aio
|
||||
fi
|
||||
;&
|
||||
sid)
|
||||
# should always be empty here.
|
||||
# need to match here to avoid the default Error however
|
||||
;;
|
||||
# UBUNTU
|
||||
bionic)
|
||||
remove_rocksdb_tools
|
||||
[ "$architecture" != amd64 ] && disable_pmem
|
||||
;&
|
||||
focal)
|
||||
replace_uring_with_aio
|
||||
disable_libfmt
|
||||
;&
|
||||
impish|jammy)
|
||||
# mariadb-plugin-rocksdb s390x not supported by us (yet)
|
||||
# ubuntu doesn't support mips64el yet, so keep this just
|
||||
# in case something changes.
|
||||
if [[ ! "$architecture" =~ amd64|arm64|ppc64el|s390x ]]
|
||||
then
|
||||
remove_rocksdb_tools
|
||||
fi
|
||||
if [[ ! "$architecture" =~ amd64|arm64|ppc64el ]]
|
||||
then
|
||||
disable_pmem
|
||||
fi
|
||||
if [[ ! "$architecture" =~ amd64|arm64|armhf|ppc64el|s390x ]]
|
||||
then
|
||||
replace_uring_with_aio
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
echo "Error - unknown release codename $CODENAME" >&2
|
||||
exit 1
|
||||
esac
|
||||
|
||||
# Adjust changelog, add new version
|
||||
echo "Incrementing changelog and starting build scripts"
|
||||
@ -121,13 +151,6 @@ dch -b -D "${CODENAME}" -v "${VERSION}" "Automatic build with ${LOGSTRING}." --c
|
||||
|
||||
echo "Creating package version ${VERSION} ... "
|
||||
|
||||
# On Travis CI and Gitlab-CI, use -b to build binary only packages as there is
|
||||
# no need to waste time on generating the source package.
|
||||
if [[ $TRAVIS ]]
|
||||
then
|
||||
BUILDPACKAGE_FLAGS="-b"
|
||||
fi
|
||||
|
||||
# Use eatmydata is available to build faster with less I/O, skipping fsync()
|
||||
# during the entire build process (safe because a build can always be restarted)
|
||||
if which eatmydata > /dev/null
|
||||
@ -143,8 +166,8 @@ fakeroot $BUILDPACKAGE_PREPEND dpkg-buildpackage -us -uc -I $BUILDPACKAGE_FLAGS
|
||||
# If the step above fails due to missing dependencies, you can manually run
|
||||
# sudo mk-build-deps debian/control -r -i
|
||||
|
||||
# Don't log package contents on Travis-CI or Gitlab-CI to save time and log size
|
||||
if [[ ! $TRAVIS ]] && [[ ! $GITLAB_CI ]]
|
||||
# Don't log package contents on Gitlab-CI to save time and log size
|
||||
if [[ ! $GITLAB_CI ]]
|
||||
then
|
||||
echo "List package contents ..."
|
||||
cd ..
|
||||
|
43
debian/control
vendored
43
debian/control
vendored
@ -5,7 +5,7 @@ Maintainer: MariaDB Developers <maria-developers@lists.launchpad.net>
|
||||
Build-Depends: bison,
|
||||
cmake,
|
||||
cracklib-runtime <!nocheck>,
|
||||
debhelper (>= 9.20160709~),
|
||||
debhelper (>= 10),
|
||||
dh-exec,
|
||||
flex [amd64],
|
||||
gdb <!nocheck>,
|
||||
@ -23,6 +23,7 @@ Build-Depends: bison,
|
||||
libcurl4-openssl-dev | libcurl4-dev,
|
||||
libedit-dev,
|
||||
libedit-dev:native,
|
||||
libfmt-dev (>= 7.0.0),
|
||||
libjemalloc-dev [linux-any],
|
||||
libjudy-dev,
|
||||
libkrb5-dev,
|
||||
@ -34,7 +35,7 @@ Build-Depends: bison,
|
||||
libnuma-dev [linux-any],
|
||||
libpam0g-dev,
|
||||
libpcre2-dev,
|
||||
libpmem-dev [amd64 arm64 ppc64el],
|
||||
libpmem-dev [amd64 arm64 ppc64el riscv64],
|
||||
libsnappy-dev,
|
||||
libssl-dev,
|
||||
libssl-dev:native,
|
||||
@ -559,6 +560,7 @@ Conflicts: mariadb-server-core-10.0,
|
||||
mariadb-server-core-10.3,
|
||||
mariadb-server-core-10.4,
|
||||
mariadb-server-core-10.5,
|
||||
mariadb-server-core-10.6,
|
||||
mariadb-server-core-5.1,
|
||||
mariadb-server-core-5.2,
|
||||
mariadb-server-core-5.3,
|
||||
@ -687,6 +689,7 @@ Conflicts: mariadb-server (<< ${source:Version}),
|
||||
mariadb-server-10.3,
|
||||
mariadb-server-10.4,
|
||||
mariadb-server-10.5,
|
||||
mariadb-server-10.6,
|
||||
mariadb-server-5.1,
|
||||
mariadb-server-5.2,
|
||||
mariadb-server-5.3,
|
||||
@ -728,6 +731,7 @@ Replaces: handlersocket-mysql-5.5,
|
||||
mariadb-server-10.3,
|
||||
mariadb-server-10.4,
|
||||
mariadb-server-10.5,
|
||||
mariadb-server-10.6,
|
||||
mariadb-server-5.1,
|
||||
mariadb-server-5.2,
|
||||
mariadb-server-5.3,
|
||||
@ -977,6 +981,13 @@ Depends: mariadb-server-10.9,
|
||||
${misc:Depends},
|
||||
${shlibs:Depends}
|
||||
Description: BZip2 compression support in the server and storage engines
|
||||
The various MariaDB storage engines, such as InnoDB, RocksDB, Mroonga,
|
||||
can use different compression libraries.
|
||||
.
|
||||
Plugin provides BZip2 (https://sourceware.org/bzip2/) compression
|
||||
.
|
||||
Note that these affect InnoDB and Mroonga only;
|
||||
RocksDB still uses the compression algorithms from its own library
|
||||
|
||||
Package: mariadb-plugin-provider-lz4
|
||||
Architecture: any
|
||||
@ -984,6 +995,13 @@ Depends: mariadb-server-10.9,
|
||||
${misc:Depends},
|
||||
${shlibs:Depends}
|
||||
Description: LZ4 compression support in the server and storage engines
|
||||
The various MariaDB storage engines, such as InnoDB, RocksDB, Mroonga,
|
||||
can use different compression libraries.
|
||||
.
|
||||
Plugin provides LZ4 (http://lz4.github.io/lz4/) compression
|
||||
.
|
||||
Note that these affect InnoDB and Mroonga only;
|
||||
RocksDB still uses the compression algorithms from its own library
|
||||
|
||||
Package: mariadb-plugin-provider-lzma
|
||||
Architecture: any
|
||||
@ -991,6 +1009,13 @@ Depends: mariadb-server-10.9,
|
||||
${misc:Depends},
|
||||
${shlibs:Depends}
|
||||
Description: LZMA compression support in the server and storage engines
|
||||
The various MariaDB storage engines, such as InnoDB, RocksDB, Mroonga,
|
||||
can use different compression libraries.
|
||||
.
|
||||
Plugin provides LZMA (https://tukaani.org/lzma/) compression
|
||||
.
|
||||
Note that these affect InnoDB and Mroonga only;
|
||||
RocksDB still uses the compression algorithms from its own library
|
||||
|
||||
Package: mariadb-plugin-provider-lzo
|
||||
Architecture: any
|
||||
@ -998,6 +1023,13 @@ Depends: mariadb-server-10.9,
|
||||
${misc:Depends},
|
||||
${shlibs:Depends}
|
||||
Description: LZO compression support in the server and storage engines
|
||||
The various MariaDB storage engines, such as InnoDB, RocksDB, Mroonga,
|
||||
can use different compression libraries.
|
||||
.
|
||||
Plugin provides LZO (http://www.oberhumer.com/opensource/lzo/) compression
|
||||
.
|
||||
Note that these affect InnoDB and Mroonga only;
|
||||
RocksDB still uses the compression algorithms from its own library
|
||||
|
||||
Package: mariadb-plugin-provider-snappy
|
||||
Architecture: any
|
||||
@ -1005,6 +1037,13 @@ Depends: mariadb-server-10.9,
|
||||
${misc:Depends},
|
||||
${shlibs:Depends}
|
||||
Description: Snappy compression support in the server and storage engines
|
||||
The various MariaDB storage engines, such as InnoDB, RocksDB, Mroonga,
|
||||
can use different compression libraries.
|
||||
.
|
||||
Plugin provides Snappy (https://github.com/google/snappy) compression
|
||||
.
|
||||
Note that these affect InnoDB and Mroonga only;
|
||||
RocksDB still uses the compression algorithms from its own library
|
||||
|
||||
Package: mariadb-test
|
||||
Architecture: any
|
||||
|
3
debian/mariadb-plugin-provider-bzip2.lintian-overrides
vendored
Normal file
3
debian/mariadb-plugin-provider-bzip2.lintian-overrides
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
# It's intentional that bzip2 compression plugin doesn't have symbols from libc
|
||||
# More info https://jira.mariadb.org/browse/MDEV-28120
|
||||
library-not-linked-against-libc usr/lib/mysql/plugin/provider_bzip2.so
|
3
debian/mariadb-plugin-provider-lz4.lintian-overrides
vendored
Normal file
3
debian/mariadb-plugin-provider-lz4.lintian-overrides
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
# It's intentional that LZ4 compression plugin doesn't have symbols from libc
|
||||
# More info https://jira.mariadb.org/browse/MDEV-28120
|
||||
library-not-linked-against-libc usr/lib/mysql/plugin/provider_lz4.so
|
3
debian/mariadb-plugin-provider-lzma.lintian-overrides
vendored
Normal file
3
debian/mariadb-plugin-provider-lzma.lintian-overrides
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
# It's intentional that LZMA compression plugin doesn't have symbols from libc
|
||||
# More info https://jira.mariadb.org/browse/MDEV-28120
|
||||
library-not-linked-against-libc usr/lib/mysql/plugin/provider_lzma.so
|
3
debian/mariadb-plugin-provider-lzo.lintian-overrides
vendored
Normal file
3
debian/mariadb-plugin-provider-lzo.lintian-overrides
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
# It's intentional that LZO compression plugin doesn't have symbols from libc
|
||||
# More info https://jira.mariadb.org/browse/MDEV-28120
|
||||
library-not-linked-against-libc usr/lib/mysql/plugin/provider_lzo.so
|
3
debian/mariadb-plugin-provider-snappy.lintian-overrides
vendored
Normal file
3
debian/mariadb-plugin-provider-snappy.lintian-overrides
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
# It's intentional that Snappy compression plugin doesn't have symbols from libc
|
||||
# More info https://jira.mariadb.org/browse/MDEV-28120
|
||||
library-not-linked-against-libc usr/lib/mysql/plugin/provider_snappy.so
|
2
debian/rules
vendored
2
debian/rules
vendored
@ -60,7 +60,7 @@ endif
|
||||
|
||||
# Only attempt to build with PMEM on archs that have package libpmem-dev available
|
||||
# See https://packages.debian.org/search?searchon=names&keywords=libpmem-dev
|
||||
ifneq (,$(filter $(DEB_HOST_ARCH_CPU),amd64 arm64 ppc64el))
|
||||
ifneq (,$(filter $(DEB_HOST_ARCH_CPU),amd64 arm64 ppc64el riscv64))
|
||||
CMAKEFLAGS += -DWITH_PMEM=yes
|
||||
endif
|
||||
|
||||
|
4
debian/source/lintian-overrides
vendored
4
debian/source/lintian-overrides
vendored
@ -23,8 +23,10 @@ version-substvar-for-external-package libmariadbd-dev -> libmariadbclient-dev
|
||||
# ColumnStore not used in Debian, safe to ignore. Reported upstream in https://jira.mariadb.org/browse/MDEV-24124
|
||||
source-is-missing storage/columnstore/columnstore/utils/jemalloc/libjemalloc.so.2
|
||||
# Must be fixed upstream
|
||||
source-is-missing storage/mroonga/vendor/groonga/examples/dictionary/html/js/jquery-ui-1.8.18.custom.js line 58 is 273 characters long (>256)
|
||||
source-is-missing storage/mroonga/vendor/groonga/examples/dictionary/html/js/jquery-ui-1.8.18.custom.js *
|
||||
# Intentional control relationships
|
||||
version-substvar-for-external-package Replaces (line 216) ${source:Version} libmariadbd-dev -> libmariadbclient-dev
|
||||
version-substvar-for-external-package Replaces (line 66) ${source:Version} libmariadb-dev -> libmysqlclient-dev
|
||||
version-substvar-for-external-package Replaces (line 66) ${source:Version} libmariadb-dev -> libmysqld-dev
|
||||
# We can't change build dependencies on a stable branch (10.5..10.8) so just override this
|
||||
missing-build-dependency-for-dh-addon systemd *
|
||||
|
@ -1188,6 +1188,8 @@ static struct my_option innochecksum_options[] = {
|
||||
{"allow-mismatches", 'a', "Maximum checksum mismatch allowed.",
|
||||
&allow_mismatches, &allow_mismatches, 0,
|
||||
GET_ULL, REQUIRED_ARG, 0, 0, ULLONG_MAX, 0, 1, 0},
|
||||
{"write", 'w', "Rewrite the checksum.",
|
||||
&do_write, &do_write, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
|
||||
{"page-type-summary", 'S', "Display a count of each page type "
|
||||
"in a tablespace.", &page_type_summary, &page_type_summary, 0,
|
||||
GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
|
||||
|
@ -2,7 +2,7 @@
|
||||
#define MY_ATOMIC_INCLUDED
|
||||
|
||||
/* Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2018, 2020, MariaDB
|
||||
Copyright (c) 2018, 2022, MariaDB
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
@ -115,22 +115,6 @@
|
||||
#include "atomic/gcc_builtins.h"
|
||||
#endif
|
||||
|
||||
#if SIZEOF_LONG == 4
|
||||
#define my_atomic_addlong(A,B) my_atomic_add32((int32*) (A), (B))
|
||||
#define my_atomic_loadlong(A) my_atomic_load32((int32*) (A))
|
||||
#define my_atomic_loadlong_explicit(A,O) my_atomic_load32_explicit((int32*) (A), (O))
|
||||
#define my_atomic_storelong(A,B) my_atomic_store32((int32*) (A), (B))
|
||||
#define my_atomic_faslong(A,B) my_atomic_fas32((int32*) (A), (B))
|
||||
#define my_atomic_caslong(A,B,C) my_atomic_cas32((int32*) (A), (int32*) (B), (C))
|
||||
#else
|
||||
#define my_atomic_addlong(A,B) my_atomic_add64((int64*) (A), (B))
|
||||
#define my_atomic_loadlong(A) my_atomic_load64((int64*) (A))
|
||||
#define my_atomic_loadlong_explicit(A,O) my_atomic_load64_explicit((int64*) (A), (O))
|
||||
#define my_atomic_storelong(A,B) my_atomic_store64((int64*) (A), (B))
|
||||
#define my_atomic_faslong(A,B) my_atomic_fas64((int64*) (A), (B))
|
||||
#define my_atomic_caslong(A,B,C) my_atomic_cas64((int64*) (A), (int64*) (B), (C))
|
||||
#endif
|
||||
|
||||
#ifndef MY_MEMORY_ORDER_SEQ_CST
|
||||
#define MY_MEMORY_ORDER_RELAXED
|
||||
#define MY_MEMORY_ORDER_CONSUME
|
||||
|
@ -2,3 +2,15 @@
|
||||
# suite.pm will make sure that all tests including this file
|
||||
# will be skipped unless innodb is enabled
|
||||
#
|
||||
--disable_query_log
|
||||
if (`select count(*) from information_schema.system_variables where variable_name='have_sanitizer' and global_value like "MSAN%"`)
|
||||
{
|
||||
SET STATEMENT sql_log_bin=0 FOR
|
||||
call mtr.add_suppression("InnoDB: Trying to delete tablespace.*pending operations");
|
||||
}
|
||||
if ($VALGRIND_TEST)
|
||||
{
|
||||
SET STATEMENT sql_log_bin=0 FOR
|
||||
call mtr.add_suppression("InnoDB: Trying to delete tablespace.*pending operations");
|
||||
}
|
||||
--enable_query_log
|
||||
|
@ -5,6 +5,8 @@ Tencent Cloud https://cloud.tencent.com Platinum Sponsor of the MariaDB Foundati
|
||||
Microsoft https://microsoft.com/ Platinum Sponsor of the MariaDB Foundation
|
||||
MariaDB Corporation https://mariadb.com Founding member, Platinum Sponsor of the MariaDB Foundation
|
||||
ServiceNow https://servicenow.com Platinum Sponsor of the MariaDB Foundation
|
||||
Intel https://www.intel.com Platinum Sponsor of the MariaDB Foundation
|
||||
SIT https://sit.org Platinum Sponsor of the MariaDB Foundation
|
||||
Visma https://visma.com Gold Sponsor of the MariaDB Foundation
|
||||
DBS https://dbs.com Gold Sponsor of the MariaDB Foundation
|
||||
IBM https://www.ibm.com Gold Sponsor of the MariaDB Foundation
|
||||
|
@ -1,3 +1,5 @@
|
||||
SET @save_persistent=@@GLOBAL.innodb_stats_persistent;
|
||||
SET GLOBAL innodb_stats_persistent=OFF;
|
||||
CREATE TABLE t2 (a int);
|
||||
INSERT INTO t2 VALUES(1),(2),(3);
|
||||
#
|
||||
@ -258,8 +260,7 @@ Note 1051 Unknown table 'test.t1,mysqltest2.t2'
|
||||
create table test.t1 (i int) engine=myisam;
|
||||
create table mysqltest2.t2 like test.t1;
|
||||
lock table test.t1 write, mysqltest2.t2 write;
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
THREAD_ID LOCK_MODE LOCK_DURATION LOCK_TYPE TABLE_SCHEMA TABLE_NAME
|
||||
# MDL_BACKUP_DDL NULL Backup lock
|
||||
# MDL_BACKUP_DML NULL Backup lock
|
||||
@ -272,8 +273,7 @@ ERROR 42000: A table must have at least 1 column
|
||||
show tables;
|
||||
Tables_in_test
|
||||
t2
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
THREAD_ID LOCK_MODE LOCK_DURATION LOCK_TYPE TABLE_SCHEMA TABLE_NAME
|
||||
# MDL_BACKUP_DDL NULL Backup lock
|
||||
# MDL_BACKUP_DML NULL Backup lock
|
||||
@ -282,16 +282,14 @@ THREAD_ID LOCK_MODE LOCK_DURATION LOCK_TYPE TABLE_SCHEMA TABLE_NAME
|
||||
# MDL_SHARED_NO_READ_WRITE NULL Table metadata lock mysqltest2 t2
|
||||
create or replace table mysqltest2.t2;
|
||||
ERROR 42000: A table must have at least 1 column
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
THREAD_ID LOCK_MODE LOCK_DURATION LOCK_TYPE TABLE_SCHEMA TABLE_NAME
|
||||
create table t1 (i int);
|
||||
drop table t1;
|
||||
create table test.t1 (i int);
|
||||
create table mysqltest2.t2 like test.t1;
|
||||
lock table test.t1 write, mysqltest2.t2 write;
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
THREAD_ID LOCK_MODE LOCK_DURATION LOCK_TYPE TABLE_SCHEMA TABLE_NAME
|
||||
# MDL_BACKUP_DDL NULL Backup lock
|
||||
# MDL_BACKUP_DML NULL Backup lock
|
||||
@ -304,8 +302,7 @@ ERROR 42S21: Duplicate column name 'a'
|
||||
show tables;
|
||||
Tables_in_test
|
||||
t2
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
THREAD_ID LOCK_MODE LOCK_DURATION LOCK_TYPE TABLE_SCHEMA TABLE_NAME
|
||||
# MDL_BACKUP_DDL NULL Backup lock
|
||||
# MDL_BACKUP_DML NULL Backup lock
|
||||
@ -314,16 +311,14 @@ THREAD_ID LOCK_MODE LOCK_DURATION LOCK_TYPE TABLE_SCHEMA TABLE_NAME
|
||||
# MDL_SHARED_NO_READ_WRITE NULL Table metadata lock mysqltest2 t2
|
||||
create or replace table mysqltest2.t2 (a int) select 1 as 'a', 2 as 'a';
|
||||
ERROR 42S21: Duplicate column name 'a'
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
THREAD_ID LOCK_MODE LOCK_DURATION LOCK_TYPE TABLE_SCHEMA TABLE_NAME
|
||||
create table t1 (i int);
|
||||
drop table t1;
|
||||
create table test.t1 (i int) engine=innodb;
|
||||
create table mysqltest2.t2 like test.t1;
|
||||
lock table test.t1 write, mysqltest2.t2 write;
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
THREAD_ID LOCK_MODE LOCK_DURATION LOCK_TYPE TABLE_SCHEMA TABLE_NAME
|
||||
# MDL_BACKUP_DDL NULL Backup lock
|
||||
# MDL_INTENTION_EXCLUSIVE NULL Schema metadata lock mysqltest2
|
||||
@ -335,8 +330,7 @@ drop table test.t1,mysqltest2.t2;
|
||||
create table test.t1 (i int) engine=aria transactional=1 checksum=1;
|
||||
create table mysqltest2.t2 like test.t1;
|
||||
lock table test.t1 write, mysqltest2.t2 write;
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
THREAD_ID LOCK_MODE LOCK_DURATION LOCK_TYPE TABLE_SCHEMA TABLE_NAME
|
||||
# MDL_BACKUP_DDL NULL Backup lock
|
||||
# MDL_INTENTION_EXCLUSIVE NULL Schema metadata lock mysqltest2
|
||||
@ -353,8 +347,7 @@ drop table test.t1;
|
||||
#
|
||||
create table t1 (i int);
|
||||
lock table t1 write;
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_schema!='mysql' or table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
THREAD_ID LOCK_MODE LOCK_DURATION LOCK_TYPE TABLE_SCHEMA TABLE_NAME
|
||||
# MDL_BACKUP_DDL NULL Backup lock
|
||||
# MDL_BACKUP_DML NULL Backup lock
|
||||
@ -365,8 +358,7 @@ ERROR 22001: Data too long for column 'a' at row 1
|
||||
show tables;
|
||||
Tables_in_test
|
||||
t2
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_schema!='mysql' or table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
THREAD_ID LOCK_MODE LOCK_DURATION LOCK_TYPE TABLE_SCHEMA TABLE_NAME
|
||||
create table t1 (i int);
|
||||
drop table t1;
|
||||
@ -454,8 +446,7 @@ drop view t1;
|
||||
#
|
||||
create table t1 (a int);
|
||||
lock table t1 write, t2 read;
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
THREAD_ID LOCK_MODE LOCK_DURATION LOCK_TYPE TABLE_SCHEMA TABLE_NAME
|
||||
# MDL_BACKUP_DDL NULL Backup lock
|
||||
# MDL_BACKUP_DML NULL Backup lock
|
||||
@ -463,8 +454,7 @@ THREAD_ID LOCK_MODE LOCK_DURATION LOCK_TYPE TABLE_SCHEMA TABLE_NAME
|
||||
# MDL_SHARED_NO_READ_WRITE NULL Table metadata lock test t1
|
||||
# MDL_SHARED_READ NULL Table metadata lock test t2
|
||||
create or replace table t1 (i int);
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
THREAD_ID LOCK_MODE LOCK_DURATION LOCK_TYPE TABLE_SCHEMA TABLE_NAME
|
||||
# MDL_BACKUP_DDL NULL Backup lock
|
||||
# MDL_BACKUP_DML NULL Backup lock
|
||||
@ -472,8 +462,7 @@ THREAD_ID LOCK_MODE LOCK_DURATION LOCK_TYPE TABLE_SCHEMA TABLE_NAME
|
||||
# MDL_SHARED_NO_READ_WRITE NULL Table metadata lock test t1
|
||||
# MDL_SHARED_READ NULL Table metadata lock test t2
|
||||
create or replace table t1 like t2;
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
THREAD_ID LOCK_MODE LOCK_DURATION LOCK_TYPE TABLE_SCHEMA TABLE_NAME
|
||||
# MDL_BACKUP_DDL NULL Backup lock
|
||||
# MDL_BACKUP_DML NULL Backup lock
|
||||
@ -481,8 +470,7 @@ THREAD_ID LOCK_MODE LOCK_DURATION LOCK_TYPE TABLE_SCHEMA TABLE_NAME
|
||||
# MDL_SHARED_NO_READ_WRITE NULL Table metadata lock test t1
|
||||
# MDL_SHARED_READ NULL Table metadata lock test t2
|
||||
create or replace table t1 select 1 as f1;
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
THREAD_ID LOCK_MODE LOCK_DURATION LOCK_TYPE TABLE_SCHEMA TABLE_NAME
|
||||
# MDL_BACKUP_DDL NULL Backup lock
|
||||
# MDL_BACKUP_DML NULL Backup lock
|
||||
@ -580,3 +568,4 @@ ERROR HY000: Table 't3' was not locked with LOCK TABLES
|
||||
UNLOCK TABLES;
|
||||
DROP TABLE t3;
|
||||
# End of 10.4 tests
|
||||
SET GLOBAL innodb_stats_persistent=@save_persistent;
|
||||
|
@ -5,6 +5,9 @@
|
||||
--source include/have_innodb.inc
|
||||
--source include/have_metadata_lock_info.inc
|
||||
|
||||
SET @save_persistent=@@GLOBAL.innodb_stats_persistent;
|
||||
SET GLOBAL innodb_stats_persistent=OFF;
|
||||
|
||||
#
|
||||
# Create help table
|
||||
#
|
||||
@ -212,21 +215,18 @@ create table mysqltest2.t2 like test.t1;
|
||||
lock table test.t1 write, mysqltest2.t2 write;
|
||||
--replace_column 1 #
|
||||
--sorted_result
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
--error ER_TABLE_MUST_HAVE_COLUMNS
|
||||
create or replace table test.t1;
|
||||
show tables;
|
||||
--replace_column 1 #
|
||||
--sorted_result
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
--error ER_TABLE_MUST_HAVE_COLUMNS
|
||||
create or replace table mysqltest2.t2;
|
||||
--replace_column 1 #
|
||||
--sorted_result
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
create table t1 (i int);
|
||||
drop table t1;
|
||||
|
||||
@ -235,21 +235,18 @@ create table mysqltest2.t2 like test.t1;
|
||||
lock table test.t1 write, mysqltest2.t2 write;
|
||||
--replace_column 1 #
|
||||
--sorted_result
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
--error ER_DUP_FIELDNAME
|
||||
create or replace table test.t1 (a int) select 1 as 'a', 2 as 'a';
|
||||
show tables;
|
||||
--replace_column 1 #
|
||||
--sorted_result
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
--error ER_DUP_FIELDNAME
|
||||
create or replace table mysqltest2.t2 (a int) select 1 as 'a', 2 as 'a';
|
||||
--replace_column 1 #
|
||||
--sorted_result
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
create table t1 (i int);
|
||||
drop table t1;
|
||||
|
||||
@ -258,8 +255,7 @@ create table mysqltest2.t2 like test.t1;
|
||||
lock table test.t1 write, mysqltest2.t2 write;
|
||||
--replace_column 1 #
|
||||
--sorted_result
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
unlock tables;
|
||||
drop table test.t1,mysqltest2.t2;
|
||||
|
||||
@ -268,8 +264,7 @@ create table mysqltest2.t2 like test.t1;
|
||||
lock table test.t1 write, mysqltest2.t2 write;
|
||||
--replace_column 1 #
|
||||
--sorted_result
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
unlock tables;
|
||||
drop table t1;
|
||||
|
||||
@ -285,15 +280,13 @@ create table t1 (i int);
|
||||
lock table t1 write;
|
||||
--replace_column 1 #
|
||||
--sorted_result
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_schema!='mysql' or table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
--error ER_DATA_TOO_LONG
|
||||
create or replace table t1 (a char(1)) engine=Innodb select 'foo' as a;
|
||||
show tables;
|
||||
--replace_column 1 #
|
||||
--sorted_result
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_schema!='mysql' or table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
create table t1 (i int);
|
||||
drop table t1;
|
||||
|
||||
@ -371,24 +364,20 @@ create table t1 (a int);
|
||||
lock table t1 write, t2 read;
|
||||
--replace_column 1 #
|
||||
--sorted_result
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
|
||||
create or replace table t1 (i int);
|
||||
--replace_column 1 #
|
||||
--sorted_result
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
create or replace table t1 like t2;
|
||||
--replace_column 1 #
|
||||
--sorted_result
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
create or replace table t1 select 1 as f1;
|
||||
--replace_column 1 #
|
||||
--sorted_result
|
||||
select * from information_schema.metadata_lock_info
|
||||
where table_name not like 'innodb_%_stats';
|
||||
select * from information_schema.metadata_lock_info;
|
||||
drop table t1;
|
||||
unlock tables;
|
||||
|
||||
@ -520,3 +509,5 @@ UNLOCK TABLES;
|
||||
DROP TABLE t3;
|
||||
|
||||
--echo # End of 10.4 tests
|
||||
|
||||
SET GLOBAL innodb_stats_persistent=@save_persistent;
|
||||
|
@ -2890,5 +2890,53 @@ HEX(c1)
|
||||
0000006100000063
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# MDEV-23210 Assertion `(length % 4) == 0' failed in my_lengthsp_utf32 on ALTER TABLE, SELECT and INSERT
|
||||
#
|
||||
CREATE TABLE t1 (a CHAR(1));
|
||||
SET COLLATION_CONNECTION=utf32_general_ci, CHARACTER_SET_CLIENT=binary;
|
||||
ALTER TABLE t1 CHANGE a a ENUM('a','a') CHARACTER SET utf32;
|
||||
ERROR HY000: Column 'a' has duplicated value 'a' in ENUM
|
||||
ALTER TABLE t1 CHANGE a a ENUM('aaa') CHARACTER SET utf32;
|
||||
ERROR HY000: Invalid utf32 character string: '\x00aaa'
|
||||
ALTER TABLE t1 CHANGE a a ENUM('aa') CHARACTER SET utf32;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` enum('慡') CHARACTER SET utf32 DEFAULT NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
ALTER TABLE t1 CHANGE a a ENUM('a','b') CHARACTER SET utf32;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` enum('a','b') CHARACTER SET utf32 DEFAULT NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
DROP TABLE t1;
|
||||
SET NAMES utf8;
|
||||
#
|
||||
# MDEV-28078 Garbage on multiple equal ENUMs with tricky character sets
|
||||
#
|
||||
CREATE TABLE t1 (
|
||||
c1 ENUM ('a','b') CHARACTER SET utf32 DEFAULT 'a',
|
||||
c2 ENUM ('a','b') CHARACTER SET utf32 DEFAULT 'a'
|
||||
);
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`c1` enum('a','b') CHARACTER SET utf32 DEFAULT 'a',
|
||||
`c2` enum('a','b') CHARACTER SET utf32 DEFAULT 'a'
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (
|
||||
c1 ENUM ('00000061','00000062') DEFAULT '00000061' COLLATE latin1_bin,
|
||||
c2 ENUM ('a','b') DEFAULT 'a' COLLATE utf32_general_ci
|
||||
);
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`c1` enum('00000061','00000062') CHARACTER SET latin1 COLLATE latin1_bin DEFAULT '00000061',
|
||||
`c2` enum('a','b') CHARACTER SET utf32 DEFAULT 'a'
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# End of 10.2 tests
|
||||
#
|
||||
|
@ -1048,6 +1048,44 @@ INSERT INTO t1 (c1) VALUES (1),(2),(3);
|
||||
SELECT HEX(c1) FROM t1 ORDER BY c1;
|
||||
DROP TABLE t1;
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-23210 Assertion `(length % 4) == 0' failed in my_lengthsp_utf32 on ALTER TABLE, SELECT and INSERT
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (a CHAR(1));
|
||||
SET COLLATION_CONNECTION=utf32_general_ci, CHARACTER_SET_CLIENT=binary;
|
||||
--error ER_DUPLICATED_VALUE_IN_TYPE
|
||||
ALTER TABLE t1 CHANGE a a ENUM('a','a') CHARACTER SET utf32;
|
||||
--error ER_INVALID_CHARACTER_STRING
|
||||
ALTER TABLE t1 CHANGE a a ENUM('aaa') CHARACTER SET utf32;
|
||||
ALTER TABLE t1 CHANGE a a ENUM('aa') CHARACTER SET utf32;
|
||||
SHOW CREATE TABLE t1;
|
||||
ALTER TABLE t1 CHANGE a a ENUM('a','b') CHARACTER SET utf32;
|
||||
SHOW CREATE TABLE t1;
|
||||
DROP TABLE t1;
|
||||
SET NAMES utf8;
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-28078 Garbage on multiple equal ENUMs with tricky character sets
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (
|
||||
c1 ENUM ('a','b') CHARACTER SET utf32 DEFAULT 'a',
|
||||
c2 ENUM ('a','b') CHARACTER SET utf32 DEFAULT 'a'
|
||||
);
|
||||
SHOW CREATE TABLE t1;
|
||||
DROP TABLE t1;
|
||||
|
||||
CREATE TABLE t1 (
|
||||
c1 ENUM ('00000061','00000062') DEFAULT '00000061' COLLATE latin1_bin,
|
||||
c2 ENUM ('a','b') DEFAULT 'a' COLLATE utf32_general_ci
|
||||
);
|
||||
SHOW CREATE TABLE t1;
|
||||
DROP TABLE t1;
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # End of 10.2 tests
|
||||
--echo #
|
||||
|
@ -7941,6 +7941,21 @@ EXECUTE s;
|
||||
DEALLOCATE PREPARE s;
|
||||
SET NAMES utf8;
|
||||
#
|
||||
# MDEV-23210 Assertion `(length % 4) == 0' failed in my_lengthsp_utf32 on ALTER TABLE, SELECT and INSERT
|
||||
#
|
||||
CREATE TABLE t1 (a CHAR(1));
|
||||
SET COLLATION_CONNECTION=utf32_myanmar_ci, CHARACTER_SET_CLIENT=binary;
|
||||
ALTER TABLE t1 CHANGE a a ENUM('a','a') CHARACTER SET utf32;
|
||||
ERROR HY000: Column 'a' has duplicated value 'a' in ENUM
|
||||
ALTER TABLE t1 CHANGE a a ENUM('a','b') CHARACTER SET utf32;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` enum('a','b') CHARACTER SET utf32 DEFAULT NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
DROP TABLE t1;
|
||||
SET NAMES utf8;
|
||||
#
|
||||
# End of 10.2 tests
|
||||
#
|
||||
#
|
||||
|
@ -290,6 +290,19 @@ EXECUTE s;
|
||||
DEALLOCATE PREPARE s;
|
||||
SET NAMES utf8;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-23210 Assertion `(length % 4) == 0' failed in my_lengthsp_utf32 on ALTER TABLE, SELECT and INSERT
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (a CHAR(1));
|
||||
SET COLLATION_CONNECTION=utf32_myanmar_ci, CHARACTER_SET_CLIENT=binary;
|
||||
--error ER_DUPLICATED_VALUE_IN_TYPE
|
||||
ALTER TABLE t1 CHANGE a a ENUM('a','a') CHARACTER SET utf32;
|
||||
ALTER TABLE t1 CHANGE a a ENUM('a','b') CHARACTER SET utf32;
|
||||
SHOW CREATE TABLE t1;
|
||||
DROP TABLE t1;
|
||||
SET NAMES utf8;
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # End of 10.2 tests
|
||||
|
@ -3,34 +3,50 @@ SET debug_dbug='+d,unstable_db_type';
|
||||
install soname 'ha_archive';
|
||||
create table t1 (a int) engine=archive;
|
||||
insert t1 values (1),(2),(3);
|
||||
create table t2 (a int) engine=archive partition by hash(a) partitions 3;
|
||||
flush tables;
|
||||
uninstall soname 'ha_archive';
|
||||
select table_schema, table_name from information_schema.tables where table_name like 't1';
|
||||
table_schema test
|
||||
table_name t1
|
||||
select table_schema, table_name, engine, version from information_schema.tables where table_name like 't1';
|
||||
table_schema test
|
||||
table_name t1
|
||||
engine ARCHIVE
|
||||
version NULL
|
||||
select table_schema, table_name from information_schema.tables where table_name like 't_' order by 1,2;
|
||||
table_schema table_name
|
||||
test t1
|
||||
test t2
|
||||
select table_schema, table_name, engine, version from information_schema.tables where table_name like 't_' order by 1,2;
|
||||
table_schema table_name engine version
|
||||
test t1 ARCHIVE NULL
|
||||
test t2 NULL NULL
|
||||
Warnings:
|
||||
Level Warning
|
||||
Code 1286
|
||||
Message Unknown storage engine 'ARCHIVE'
|
||||
select table_schema, table_name, engine, row_format from information_schema.tables where table_name like 't1';
|
||||
table_schema test
|
||||
table_name t1
|
||||
engine ARCHIVE
|
||||
row_format NULL
|
||||
Warning 1033 Incorrect information in file: './test/t2.frm'
|
||||
Warning 1286 Unknown storage engine 'ARCHIVE'
|
||||
select table_schema, table_name, engine, row_format from information_schema.tables where table_name like 't_' order by 1,2;
|
||||
table_schema table_name engine row_format
|
||||
test t1 ARCHIVE NULL
|
||||
test t2 NULL NULL
|
||||
Warnings:
|
||||
Level Warning
|
||||
Code 1286
|
||||
Message Unknown storage engine 'ARCHIVE'
|
||||
Warning 1033 Incorrect information in file: './test/t2.frm'
|
||||
Warning 1286 Unknown storage engine 'ARCHIVE'
|
||||
install soname 'ha_archive';
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=ARCHIVE DEFAULT CHARSET=latin1
|
||||
show create table t2;
|
||||
Table Create Table
|
||||
t2 CREATE TABLE `t2` (
|
||||
`a` int(11) DEFAULT NULL
|
||||
) ENGINE=ARCHIVE DEFAULT CHARSET=latin1
|
||||
PARTITION BY HASH (`a`)
|
||||
PARTITIONS 3
|
||||
db.opt
|
||||
t1.ARZ
|
||||
t1.frm
|
||||
t2#P#p0.ARZ
|
||||
t2#P#p1.ARZ
|
||||
t2#P#p2.ARZ
|
||||
t2.frm
|
||||
t2.par
|
||||
drop table t1;
|
||||
drop table t2;
|
||||
db.opt
|
||||
uninstall soname 'ha_archive';
|
||||
SET debug_dbug=@saved_dbug;
|
||||
|
@ -1,4 +1,4 @@
|
||||
|
||||
--source include/have_partition.inc
|
||||
--source include/have_debug.inc
|
||||
|
||||
if (!$HA_ARCHIVE_SO) {
|
||||
@ -13,18 +13,25 @@ SET debug_dbug='+d,unstable_db_type';
|
||||
install soname 'ha_archive';
|
||||
create table t1 (a int) engine=archive;
|
||||
insert t1 values (1),(2),(3);
|
||||
|
||||
create table t2 (a int) engine=archive partition by hash(a) partitions 3;
|
||||
|
||||
flush tables;
|
||||
uninstall soname 'ha_archive';
|
||||
|
||||
--vertical_results
|
||||
select table_schema, table_name from information_schema.tables where table_name like 't1';
|
||||
select table_schema, table_name, engine, version from information_schema.tables where table_name like 't1';
|
||||
select table_schema, table_name, engine, row_format from information_schema.tables where table_name like 't1';
|
||||
--horizontal_results
|
||||
select table_schema, table_name from information_schema.tables where table_name like 't_' order by 1,2;
|
||||
--replace_result $mysqld_datadir ./
|
||||
select table_schema, table_name, engine, version from information_schema.tables where table_name like 't_' order by 1,2;
|
||||
--replace_result $mysqld_datadir ./
|
||||
select table_schema, table_name, engine, row_format from information_schema.tables where table_name like 't_' order by 1,2;
|
||||
|
||||
install soname 'ha_archive';
|
||||
show create table t1;
|
||||
show create table t2;
|
||||
|
||||
--list_files $mysqld_datadir/test
|
||||
drop table t1;
|
||||
drop table t2;
|
||||
--list_files $mysqld_datadir/test
|
||||
uninstall soname 'ha_archive';
|
||||
|
||||
|
@ -128,3 +128,13 @@ SELECT f1(1);
|
||||
Got one of the listed errors
|
||||
DROP FUNCTION f1;
|
||||
SET debug_dbug= @saved_dbug;
|
||||
#
|
||||
# MDEV-27978 wrong option name in error when exceeding max_session_mem_used
|
||||
#
|
||||
SET SESSION max_session_mem_used = 8192;
|
||||
SELECT * FROM information_schema.processlist;
|
||||
ERROR HY000: The MariaDB server is running with the --max-session-mem-used=8192 option so it cannot execute this statement
|
||||
SET SESSION max_session_mem_used = DEFAULT;
|
||||
#
|
||||
# End of 10.2 tests
|
||||
#
|
||||
|
@ -158,3 +158,16 @@ SET SESSION debug_dbug="+d,simulate_create_virtual_tmp_table_out_of_memory";
|
||||
SELECT f1(1);
|
||||
DROP FUNCTION f1;
|
||||
SET debug_dbug= @saved_dbug;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-27978 wrong option name in error when exceeding max_session_mem_used
|
||||
--echo #
|
||||
SET SESSION max_session_mem_used = 8192;
|
||||
--error ER_OPTION_PREVENTS_STATEMENT
|
||||
SELECT * FROM information_schema.processlist;
|
||||
SET SESSION max_session_mem_used = DEFAULT;
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # End of 10.2 tests
|
||||
--echo #
|
||||
|
@ -12,6 +12,10 @@
|
||||
--echo # Save the initial number of concurrent sessions
|
||||
--source include/count_sessions.inc
|
||||
|
||||
--disable_query_log
|
||||
# This may be triggered on a slow system or one that lacks native AIO.
|
||||
call mtr.add_suppression("InnoDB: Trying to delete tablespace.*pending operations");
|
||||
--enable_query_log
|
||||
|
||||
connect (con1,localhost,root,,);
|
||||
connect (con2,localhost,root,,);
|
||||
|
@ -4,11 +4,11 @@ connect u,localhost,root;
|
||||
# MDEV-24909 JSON functions don't respect KILL QUERY / max_statement_time limit
|
||||
#
|
||||
set group_concat_max_len= 4294967295;
|
||||
set @obj=concat_ws('','{', repeat('"a":"b",', 125000000/2), '"c":"d"}');
|
||||
set @arr=concat_ws('','[', repeat('1234567,', 125000000/2), '2345678]');
|
||||
set @obj=concat_ws('','{', repeat('"a":"b",', 1250000/2), '"c":"d"}');
|
||||
set @arr=concat_ws('','[', repeat('1234567,', 1250000/2), '2345678]');
|
||||
select length(@obj), length(@arr);
|
||||
length(@obj) length(@arr)
|
||||
500000009 500000009
|
||||
5000009 5000009
|
||||
set max_statement_time=0.0001;
|
||||
select json_array_append(@arr, '$[0]', 1);
|
||||
ERROR 70100: Query execution was interrupted (max_statement_time exceeded)
|
||||
|
@ -9,8 +9,8 @@ connect u,localhost,root;
|
||||
--echo #
|
||||
set group_concat_max_len= 4294967295;
|
||||
|
||||
set @obj=concat_ws('','{', repeat('"a":"b",', 125000000/2), '"c":"d"}');
|
||||
set @arr=concat_ws('','[', repeat('1234567,', 125000000/2), '2345678]');
|
||||
set @obj=concat_ws('','{', repeat('"a":"b",', 1250000/2), '"c":"d"}');
|
||||
set @arr=concat_ws('','[', repeat('1234567,', 1250000/2), '2345678]');
|
||||
select length(@obj), length(@arr);
|
||||
|
||||
set max_statement_time=0.0001;
|
||||
|
@ -207,4 +207,19 @@ ERROR 23000: Duplicate entry '0000-00-00 00:00:00' for key 'f2k'
|
||||
DROP VIEW v1;
|
||||
DROP TABLE t3,t4;
|
||||
SET @@sql_mode=@save_sql_mode;
|
||||
#
|
||||
# End of 10.2 tests
|
||||
#
|
||||
#
|
||||
# MDEV-28095 crash in multi-update and implicit grouping
|
||||
#
|
||||
CREATE TABLE t1 (a int) engine=innodb;
|
||||
INSERT INTO t1 VALUES (1),(2);
|
||||
CREATE TABLE t2 (b int);
|
||||
INSERT INTO t2 VALUES (1),(2);
|
||||
UPDATE t1 NATURAL JOIN t2 SET a = 1 ORDER BY AVG (a) ;
|
||||
ERROR HY000: Invalid use of group function
|
||||
DROP TABLE t1, t2;
|
||||
#
|
||||
# End of 10.3 tests
|
||||
#
|
||||
|
@ -243,4 +243,23 @@ DROP VIEW v1;
|
||||
DROP TABLE t3,t4;
|
||||
SET @@sql_mode=@save_sql_mode;
|
||||
|
||||
--echo #
|
||||
--echo # End of 10.2 tests
|
||||
--echo #
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-28095 crash in multi-update and implicit grouping
|
||||
--echo #
|
||||
CREATE TABLE t1 (a int) engine=innodb;
|
||||
INSERT INTO t1 VALUES (1),(2);
|
||||
CREATE TABLE t2 (b int);
|
||||
INSERT INTO t2 VALUES (1),(2);
|
||||
--error ER_INVALID_GROUP_FUNC_USE
|
||||
UPDATE t1 NATURAL JOIN t2 SET a = 1 ORDER BY AVG (a) ;
|
||||
DROP TABLE t1, t2;
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # End of 10.3 tests
|
||||
--echo #
|
||||
|
||||
|
@ -732,3 +732,30 @@ a b
|
||||
4 4
|
||||
drop table t1;
|
||||
SET @@in_predicate_conversion_threshold= default;
|
||||
#
|
||||
# MDEV-27937: Prepared statement with ? in the list if IN predicate
|
||||
#
|
||||
set in_predicate_conversion_threshold=2;
|
||||
create table t1 (id int, a int, b int);
|
||||
insert into t1 values (1,3,30), (2,7,70), (3,1,10);
|
||||
prepare stmt from "
|
||||
select * from t1 where a in (7, ?, 5, 1);
|
||||
";
|
||||
execute stmt using 3;
|
||||
id a b
|
||||
1 3 30
|
||||
2 7 70
|
||||
3 1 10
|
||||
deallocate prepare stmt;
|
||||
prepare stmt from "
|
||||
select * from t1 where (a,b) in ((7,70), (3,?), (5,50), (1,10));
|
||||
";
|
||||
execute stmt using 30;
|
||||
id a b
|
||||
1 3 30
|
||||
2 7 70
|
||||
3 1 10
|
||||
deallocate prepare stmt;
|
||||
drop table t1;
|
||||
set in_predicate_conversion_threshold=default;
|
||||
# End of 10.3 tests
|
||||
|
@ -428,3 +428,29 @@ eval $query;
|
||||
drop table t1;
|
||||
SET @@in_predicate_conversion_threshold= default;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-27937: Prepared statement with ? in the list if IN predicate
|
||||
--echo #
|
||||
|
||||
set in_predicate_conversion_threshold=2;
|
||||
|
||||
create table t1 (id int, a int, b int);
|
||||
insert into t1 values (1,3,30), (2,7,70), (3,1,10);
|
||||
|
||||
prepare stmt from "
|
||||
select * from t1 where a in (7, ?, 5, 1);
|
||||
";
|
||||
execute stmt using 3;
|
||||
deallocate prepare stmt;
|
||||
|
||||
prepare stmt from "
|
||||
select * from t1 where (a,b) in ((7,70), (3,?), (5,50), (1,10));
|
||||
";
|
||||
execute stmt using 30;
|
||||
deallocate prepare stmt;
|
||||
|
||||
drop table t1;
|
||||
|
||||
set in_predicate_conversion_threshold=default;
|
||||
|
||||
--echo # End of 10.3 tests
|
||||
|
@ -9,7 +9,7 @@ SHOW TABLES;
|
||||
Tables_in_test
|
||||
t1
|
||||
SHOW CREATE TABLE t1;
|
||||
ERROR HY000: Failed to read from the .par file
|
||||
ERROR HY000: Incorrect information in file: './test/t1.frm'
|
||||
DROP TABLE t1;
|
||||
ERROR HY000: Got error 175 "File too short; Expected more data in file" from storage engine partition
|
||||
t1.frm
|
||||
|
@ -17,7 +17,7 @@ let $MYSQLD_DATADIR= `SELECT @@datadir`;
|
||||
--copy_file std_data/parts/t1_blackhole.par $MYSQLD_DATADIR/test/t1.par
|
||||
SHOW TABLES;
|
||||
--replace_result $MYSQLD_DATADIR ./
|
||||
--error ER_FAILED_READ_FROM_PAR_FILE
|
||||
--error ER_NOT_FORM_FILE
|
||||
SHOW CREATE TABLE t1;
|
||||
|
||||
# The replace is needed for Solaris
|
||||
|
@ -40,3 +40,23 @@ utf8mb4_string xxx😎yyy
|
||||
#
|
||||
# End of 10.1 tests
|
||||
#
|
||||
#
|
||||
# Start of 10.3 tests
|
||||
#
|
||||
#
|
||||
# MDEV-28131 Unexpected warning while selecting from information_schema.processlist
|
||||
#
|
||||
connect conn1, localhost, root,,;
|
||||
connection conn1;
|
||||
SELECT SLEEP(1000);
|
||||
connection default;
|
||||
SELECT progress FROM information_schema.processlist WHERE info='SELECT SLEEP(1000)';
|
||||
progress
|
||||
0.000
|
||||
connection conn1;
|
||||
Got one of the listed errors
|
||||
connection default;
|
||||
disconnect conn1;
|
||||
#
|
||||
# End of 10.3 tests
|
||||
#
|
||||
|
@ -70,3 +70,38 @@ SELECT INFO, INFO_BINARY, 'xxx😎yyy' AS utf8mb4_string FROM INFORMATION_SCHEMA
|
||||
--echo #
|
||||
--echo # End of 10.1 tests
|
||||
--echo #
|
||||
|
||||
--echo #
|
||||
--echo # Start of 10.3 tests
|
||||
--echo #
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-28131 Unexpected warning while selecting from information_schema.processlist
|
||||
--echo #
|
||||
|
||||
connect (conn1, localhost, root,,);
|
||||
connection conn1;
|
||||
let $ID= `select connection_id()`;
|
||||
send SELECT SLEEP(1000);
|
||||
connection default;
|
||||
let $wait_timeout= 10;
|
||||
let $wait_condition=select count(*)=1 from information_schema.processlist
|
||||
where state='User sleep' and info='SELECT SLEEP(1000)';
|
||||
--source include/wait_condition.inc
|
||||
SELECT progress FROM information_schema.processlist WHERE info='SELECT SLEEP(1000)';
|
||||
disable_query_log;
|
||||
eval kill $ID;
|
||||
enable_query_log;
|
||||
let $wait_timeout= 10;
|
||||
let $wait_condition=select count(*)=0 from information_schema.processlist
|
||||
where state='User sleep' and info='SELECT SLEEP(1000)';
|
||||
--source include/wait_condition.inc
|
||||
connection conn1;
|
||||
--error 2013,ER_CONNECTION_KILLED
|
||||
reap;
|
||||
connection default;
|
||||
disconnect conn1;
|
||||
|
||||
--echo #
|
||||
--echo # End of 10.3 tests
|
||||
--echo #
|
||||
|
@ -738,6 +738,69 @@ c
|
||||
DROP PROCEDURE p1;
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# MDEV-26009: Server crash when calling twice procedure using FOR-loop
|
||||
#
|
||||
CREATE TABLE t1 ( id int, name varchar(24));
|
||||
INSERT INTO t1 values (1, 'x'), (2, 'y'), (3, 'z');
|
||||
create function get_name(_id int) returns varchar(24)
|
||||
return (select name from t1 where id = _id);
|
||||
select get_name(id) from t1;
|
||||
get_name(id)
|
||||
x
|
||||
y
|
||||
z
|
||||
create procedure test_proc()
|
||||
begin
|
||||
declare _cur cursor for select get_name(id) from t1;
|
||||
for row in _cur do select 1; end for;
|
||||
end;
|
||||
^^
|
||||
call test_proc();
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
call test_proc();
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
drop procedure test_proc;
|
||||
drop function get_name;
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (id int, name varchar(24));
|
||||
INSERT INTO t1 (id, name) VALUES (1, 'x'),(2, 'y'),(3, 'z');
|
||||
create function get_name(_id int) returns varchar(24)
|
||||
return (select name from t1 where id = _id);
|
||||
create view v1 as select get_name(id) from t1;
|
||||
create procedure test_proc()
|
||||
begin
|
||||
declare _cur cursor for select 1 from v1;
|
||||
for row in _cur do select 1; end for;
|
||||
end$$
|
||||
call test_proc();
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
call test_proc();
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
drop procedure test_proc;
|
||||
drop view v1;
|
||||
drop function get_name;
|
||||
drop table t1;
|
||||
#
|
||||
# Start of 10.8 tests
|
||||
#
|
||||
#
|
||||
|
@ -746,6 +746,62 @@ DROP PROCEDURE p1;
|
||||
DROP TABLE t1;
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-26009: Server crash when calling twice procedure using FOR-loop
|
||||
--echo #
|
||||
|
||||
|
||||
CREATE TABLE t1 ( id int, name varchar(24));
|
||||
INSERT INTO t1 values (1, 'x'), (2, 'y'), (3, 'z');
|
||||
|
||||
create function get_name(_id int) returns varchar(24)
|
||||
return (select name from t1 where id = _id);
|
||||
|
||||
select get_name(id) from t1;
|
||||
|
||||
delimiter ^^;
|
||||
|
||||
create procedure test_proc()
|
||||
begin
|
||||
declare _cur cursor for select get_name(id) from t1;
|
||||
for row in _cur do select 1; end for;
|
||||
end;
|
||||
^^
|
||||
delimiter ;^^
|
||||
|
||||
call test_proc();
|
||||
call test_proc();
|
||||
|
||||
drop procedure test_proc;
|
||||
drop function get_name;
|
||||
drop table t1;
|
||||
|
||||
|
||||
CREATE TABLE t1 (id int, name varchar(24));
|
||||
INSERT INTO t1 (id, name) VALUES (1, 'x'),(2, 'y'),(3, 'z');
|
||||
|
||||
create function get_name(_id int) returns varchar(24)
|
||||
return (select name from t1 where id = _id);
|
||||
|
||||
create view v1 as select get_name(id) from t1;
|
||||
|
||||
delimiter $$;
|
||||
create procedure test_proc()
|
||||
begin
|
||||
declare _cur cursor for select 1 from v1;
|
||||
for row in _cur do select 1; end for;
|
||||
end$$
|
||||
delimiter ;$$
|
||||
|
||||
call test_proc();
|
||||
call test_proc();
|
||||
|
||||
drop procedure test_proc;
|
||||
drop view v1;
|
||||
drop function get_name;
|
||||
drop table t1;
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # Start of 10.8 tests
|
||||
--echo #
|
||||
|
@ -13,7 +13,7 @@ a
|
||||
UNLOCK TABLES;
|
||||
connection con1;
|
||||
TRUNCATE TABLE t1;
|
||||
ERROR HY000: The MariaDB server is running with the --max-thread-mem-used=8192 option so it cannot execute this statement
|
||||
ERROR HY000: The MariaDB server is running with the --max-session-mem-used=8192 option so it cannot execute this statement
|
||||
disconnect con1;
|
||||
connection default;
|
||||
DROP TABLE t1;
|
||||
|
@ -6846,6 +6846,34 @@ id bar
|
||||
Drop View v1;
|
||||
Drop table t1;
|
||||
#
|
||||
# MDEV-24281: Execution of PREPARE from CREATE VIEW statement
|
||||
#
|
||||
create table t1 (s1 int);
|
||||
insert into t1 values (3), (7), (1);
|
||||
prepare stmt from "
|
||||
create view v1 as select 's1', s1, 1 as My_exp_s1 from t1;
|
||||
";
|
||||
execute stmt;
|
||||
deallocate prepare stmt;
|
||||
show create view v1;
|
||||
View Create View character_set_client collation_connection
|
||||
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select 's1' AS `My_exp_1_s1`,`t1`.`s1` AS `s1`,1 AS `My_exp_s1` from `t1` latin1 latin1_swedish_ci
|
||||
select * from v1;
|
||||
My_exp_1_s1 s1 My_exp_s1
|
||||
s1 3 1
|
||||
s1 7 1
|
||||
s1 1 1
|
||||
drop view v1;
|
||||
prepare stmt from "
|
||||
create view v1 as select 's1', s1, 1 as My_exp_s1 from t1;
|
||||
";
|
||||
execute stmt;
|
||||
execute stmt;
|
||||
ERROR 42S01: Table 'v1' already exists
|
||||
deallocate prepare stmt;
|
||||
drop view v1;
|
||||
drop table t1;
|
||||
#
|
||||
# End of 10.3 tests
|
||||
#
|
||||
#
|
||||
|
@ -6576,6 +6576,32 @@ SELECT v.id, v.foo AS bar FROM v1 v
|
||||
Drop View v1;
|
||||
Drop table t1;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-24281: Execution of PREPARE from CREATE VIEW statement
|
||||
--echo #
|
||||
|
||||
create table t1 (s1 int);
|
||||
insert into t1 values (3), (7), (1);
|
||||
|
||||
prepare stmt from "
|
||||
create view v1 as select 's1', s1, 1 as My_exp_s1 from t1;
|
||||
";
|
||||
execute stmt;
|
||||
deallocate prepare stmt;
|
||||
show create view v1;
|
||||
select * from v1;
|
||||
drop view v1;
|
||||
|
||||
prepare stmt from "
|
||||
create view v1 as select 's1', s1, 1 as My_exp_s1 from t1;
|
||||
";
|
||||
execute stmt;
|
||||
--error ER_TABLE_EXISTS_ERROR
|
||||
execute stmt;
|
||||
deallocate prepare stmt;
|
||||
drop view v1;
|
||||
drop table t1;
|
||||
|
||||
--echo #
|
||||
--echo # End of 10.3 tests
|
||||
--echo #
|
||||
|
@ -0,0 +1,6 @@
|
||||
ALTER TABLE mysql.gtid_slave_pos ENGINE=innodb;
|
||||
# Restart the server so mysqld reads the gtid_slave_pos using innodb
|
||||
# Set gtid_slave_pos should not hang
|
||||
SET GLOBAL gtid_slave_pos=@@gtid_binlog_pos;
|
||||
COMMIT;
|
||||
RESET MASTER;
|
@ -0,0 +1,7 @@
|
||||
CREATE TABLE t1 (a int);
|
||||
FLUSH LOGS;
|
||||
INSERT INTO t1 VALUES (1);
|
||||
# timeout TIMEOUT MYSQL_BINLOG --raw --read-from-remote-server --user=root --host=127.0.0.1 --port=MASTER_MYPORT --stop-never --result-file=MYSQLTEST_VARDIR/tmp/ master-bin.000001
|
||||
# MYSQL_BINLOG MYSQLTEST_VARDIR/tmp/master-bin.000002 > MYSQLTEST_VARDIR/tmp/local-bin.000002.out
|
||||
FOUND 1 /GTID 0-1-2/ in local-bin.000002.out
|
||||
DROP TABLE t1;
|
@ -0,0 +1 @@
|
||||
--autocommit=0
|
45
mysql-test/suite/binlog/t/binlog_autocommit_off_no_hang.test
Normal file
45
mysql-test/suite/binlog/t/binlog_autocommit_off_no_hang.test
Normal file
@ -0,0 +1,45 @@
|
||||
#
|
||||
# Purpose:
|
||||
# When the mysql.gtid_slave_pos table uses the InnoDB engine, and mysqld
|
||||
# starts, it reads the table and begins a transaction. After mysqld reads the
|
||||
# value, it should end the transaction and release all associated locks.
|
||||
# The bug reported in DBAAS-7828 shows that when autocommit is off, the locks
|
||||
# are not released, resulting in indefinite hangs on future attempts to change
|
||||
# gtid_slave_pos. This test ensures its fix such that the locks are properly
|
||||
# released.
|
||||
#
|
||||
# References:
|
||||
# DBAAS-7828: Primary/replica: configuration change of "autocommit=0" can
|
||||
# not be applied
|
||||
#
|
||||
|
||||
--source include/have_innodb.inc
|
||||
--source include/have_log_bin.inc
|
||||
|
||||
# Reading gtid_slave_pos table is format independent so just use one for
|
||||
# reduced test time
|
||||
--source include/have_binlog_format_row.inc
|
||||
|
||||
--let old_slave_pos_engine= query_get_value(SHOW TABLE STATUS FROM mysql LIKE 'gtid_slave_pos', Engine, 1)
|
||||
|
||||
# Use a transactional engine
|
||||
ALTER TABLE mysql.gtid_slave_pos ENGINE=innodb;
|
||||
|
||||
--echo # Restart the server so mysqld reads the gtid_slave_pos using innodb
|
||||
--exec echo "wait" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
|
||||
--shutdown_server
|
||||
--source include/wait_until_disconnected.inc
|
||||
--exec echo "restart" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
|
||||
--enable_reconnect
|
||||
--source include/wait_until_connected_again.inc
|
||||
|
||||
--echo # Set gtid_slave_pos should not hang
|
||||
SET GLOBAL gtid_slave_pos=@@gtid_binlog_pos;
|
||||
COMMIT;
|
||||
|
||||
# Revert table type
|
||||
--disable_query_log
|
||||
--eval ALTER TABLE mysql.gtid_slave_pos ENGINE=$old_slave_pos_engine
|
||||
--enable_query_log
|
||||
|
||||
RESET MASTER;
|
45
mysql-test/suite/binlog/t/binlog_mysqlbinlog_raw_flush.test
Normal file
45
mysql-test/suite/binlog/t/binlog_mysqlbinlog_raw_flush.test
Normal file
@ -0,0 +1,45 @@
|
||||
#
|
||||
# Purpose:
|
||||
# When using mariadb-binlog with options for --raw and --stop-never, events
|
||||
# from the master's currently active log file should be written to their
|
||||
# respective log file specified by --result-file, and shown on-disk. This test
|
||||
# ensures that the log files on disk, created by mariadb-binlog, have the most
|
||||
# up-to-date events from the master.
|
||||
#
|
||||
# Methodology:
|
||||
# On the master, rotate to a newly active binlog file and write an event to
|
||||
# it. Read the master's binlog using mariadb-binlog with --raw and --stop-never
|
||||
# and write the data to an intermediary binlog file (a timeout is used on this
|
||||
# command to ensure it exits). Read the local intermediary binlog file to ensure
|
||||
# that the master's most recent event exists in the local file.
|
||||
#
|
||||
# References:
|
||||
# MDEV-14608: mysqlbinlog lastest backupfile size is 0
|
||||
#
|
||||
|
||||
--source include/linux.inc
|
||||
--source include/have_log_bin.inc
|
||||
|
||||
# Create newly active log
|
||||
CREATE TABLE t1 (a int);
|
||||
FLUSH LOGS;
|
||||
INSERT INTO t1 VALUES (1);
|
||||
|
||||
# Read binlog data from master to intermediary result file
|
||||
--let TIMEOUT=1
|
||||
--echo # timeout TIMEOUT MYSQL_BINLOG --raw --read-from-remote-server --user=root --host=127.0.0.1 --port=MASTER_MYPORT --stop-never --result-file=MYSQLTEST_VARDIR/tmp/ master-bin.000001
|
||||
--error 124 # Error 124 means timeout was reached
|
||||
--exec timeout $TIMEOUT $MYSQL_BINLOG --raw --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT --stop-never --result-file=$MYSQLTEST_VARDIR/tmp/ master-bin.000001
|
||||
|
||||
# Ensure the binlog output has the most recent events from the master
|
||||
--echo # MYSQL_BINLOG MYSQLTEST_VARDIR/tmp/master-bin.000002 > MYSQLTEST_VARDIR/tmp/local-bin.000002.out
|
||||
--exec $MYSQL_BINLOG $MYSQLTEST_VARDIR/tmp/master-bin.000002 > $MYSQLTEST_VARDIR/tmp/local-bin.000002.out
|
||||
--let SEARCH_PATTERN= GTID 0-1-2
|
||||
--let SEARCH_FILE= $MYSQLTEST_VARDIR/tmp/local-bin.000002.out
|
||||
--source include/search_pattern_in_file.inc
|
||||
|
||||
# Cleanup
|
||||
DROP TABLE t1;
|
||||
--remove_file $MYSQLTEST_VARDIR/tmp/master-bin.000001
|
||||
--remove_file $MYSQLTEST_VARDIR/tmp/master-bin.000002
|
||||
--remove_file $MYSQLTEST_VARDIR/tmp/local-bin.000002.out
|
@ -2960,3 +2960,311 @@ END $$
|
||||
CALL xyz.xyz123(17,18,@R);
|
||||
DROP PACKAGE xyz;
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# MDEV-28166 sql_mode=ORACLE: fully qualified package function calls do not work: db.pkg.func()
|
||||
#
|
||||
SELECT `db `.pkg.func();
|
||||
ERROR 42000: Incorrect database name 'db '
|
||||
SELECT db.`pkg `.func();
|
||||
ERROR 42000: Incorrect routine name 'pkg '
|
||||
SELECT db.pkg.`func `();
|
||||
ERROR 42000: Incorrect routine name 'func '
|
||||
CREATE DATABASE db1;
|
||||
USE db1;
|
||||
CREATE PACKAGE pkg1 AS
|
||||
FUNCTION f1 RETURN TEXT;
|
||||
FUNCTION f2_db1_pkg1_f1 RETURN TEXT;
|
||||
FUNCTION f2_pkg1_f1 RETURN TEXT;
|
||||
FUNCTION f2_f1 RETURN TEXT;
|
||||
END;
|
||||
$$
|
||||
CREATE PACKAGE BODY pkg1
|
||||
AS
|
||||
FUNCTION f1 RETURN TEXT IS
|
||||
BEGIN
|
||||
RETURN 'This is db1.pkg1.f1';
|
||||
END;
|
||||
FUNCTION f2_db1_pkg1_f1 RETURN TEXT IS
|
||||
BEGIN
|
||||
RETURN db1.pkg1.f1();
|
||||
END;
|
||||
FUNCTION f2_pkg1_f1 RETURN TEXT IS
|
||||
BEGIN
|
||||
RETURN pkg1.f1();
|
||||
END;
|
||||
FUNCTION f2_f1 RETURN TEXT IS
|
||||
BEGIN
|
||||
RETURN f1();
|
||||
END;
|
||||
END;
|
||||
$$
|
||||
USE db1;
|
||||
SELECT pkg1.f2_db1_pkg1_f1();
|
||||
pkg1.f2_db1_pkg1_f1()
|
||||
This is db1.pkg1.f1
|
||||
SELECT pkg1.f2_pkg1_f1();
|
||||
pkg1.f2_pkg1_f1()
|
||||
This is db1.pkg1.f1
|
||||
SELECT pkg1.f2_f1();
|
||||
pkg1.f2_f1()
|
||||
This is db1.pkg1.f1
|
||||
SELECT db1.pkg1.f2_db1_pkg1_f1();
|
||||
db1.pkg1.f2_db1_pkg1_f1()
|
||||
This is db1.pkg1.f1
|
||||
SELECT db1.pkg1.f2_pkg1_f1();
|
||||
db1.pkg1.f2_pkg1_f1()
|
||||
This is db1.pkg1.f1
|
||||
SELECT db1.pkg1.f2_f1();
|
||||
db1.pkg1.f2_f1()
|
||||
This is db1.pkg1.f1
|
||||
USE test;
|
||||
SELECT db1.pkg1.f2_db1_pkg1_f1();
|
||||
db1.pkg1.f2_db1_pkg1_f1()
|
||||
This is db1.pkg1.f1
|
||||
SELECT db1.pkg1.f2_pkg1_f1();
|
||||
db1.pkg1.f2_pkg1_f1()
|
||||
This is db1.pkg1.f1
|
||||
SELECT db1.pkg1.f2_f1();
|
||||
db1.pkg1.f2_f1()
|
||||
This is db1.pkg1.f1
|
||||
DROP DATABASE db1;
|
||||
CREATE DATABASE db1;
|
||||
CREATE DATABASE db2;
|
||||
CREATE PACKAGE db1.pkg1 AS
|
||||
FUNCTION f1 RETURN TEXT;
|
||||
END;
|
||||
$$
|
||||
CREATE PACKAGE BODY db1.pkg1 AS
|
||||
FUNCTION f1 RETURN TEXT AS
|
||||
BEGIN
|
||||
RETURN 'This is db1.pkg1.f1';
|
||||
END;
|
||||
END;
|
||||
$$
|
||||
CREATE PACKAGE db2.pkg1 AS
|
||||
FUNCTION f1 RETURN TEXT;
|
||||
FUNCTION var1 RETURN TEXT;
|
||||
FUNCTION var2 RETURN TEXT;
|
||||
END;
|
||||
$$
|
||||
CREATE PACKAGE BODY db2.pkg1 AS
|
||||
m_var1 TEXT;
|
||||
m_var2 TEXT;
|
||||
FUNCTION f1 RETURN TEXT AS
|
||||
BEGIN
|
||||
RETURN 'This is db2.pkg1.f1';
|
||||
END;
|
||||
FUNCTION var1 RETURN TEXT AS
|
||||
BEGIN
|
||||
RETURN m_var1;
|
||||
END;
|
||||
FUNCTION var2 RETURN TEXT AS
|
||||
BEGIN
|
||||
RETURN m_var2;
|
||||
END;
|
||||
BEGIN
|
||||
m_var1:= db1.pkg1.f1();
|
||||
m_var2:= db2.pkg1.f1();
|
||||
END;
|
||||
$$
|
||||
SELECT db2.pkg1.var1(), db2.pkg1.var2();
|
||||
db2.pkg1.var1() db2.pkg1.var2()
|
||||
This is db1.pkg1.f1 This is db2.pkg1.f1
|
||||
DROP DATABASE db1;
|
||||
DROP DATABASE db2;
|
||||
CREATE PACKAGE pkg1 AS
|
||||
FUNCTION f1(a TEXT) RETURN TEXT;
|
||||
END;
|
||||
$$
|
||||
CREATE PACKAGE BODY pkg1 AS
|
||||
FUNCTION f1(a TEXT) RETURN TEXT AS
|
||||
BEGIN
|
||||
RETURN a;
|
||||
END;
|
||||
END;
|
||||
$$
|
||||
SELECT test.pkg1.f1('xxx');
|
||||
test.pkg1.f1('xxx')
|
||||
xxx
|
||||
SELECT test.pkg1.f1('xxx' AS a);
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'AS a)' at line 1
|
||||
DROP PACKAGE pkg1;
|
||||
#
|
||||
# MDEV-19328 sql_mode=ORACLE: Package function in VIEW
|
||||
#
|
||||
SET sql_mode=ORACLE;
|
||||
CREATE PACKAGE test1 AS
|
||||
FUNCTION f_test RETURN number;
|
||||
END test1;
|
||||
$$
|
||||
CREATE PACKAGE BODY test1
|
||||
AS
|
||||
FUNCTION f_test RETURN NUMBER IS
|
||||
BEGIN
|
||||
RETURN 1;
|
||||
END;
|
||||
END test1;
|
||||
$$
|
||||
SET sql_mode=ORACLE;
|
||||
CREATE VIEW v_test AS SELECT 1 AS c1 FROM DUAL WHERE 1=test1.f_test();
|
||||
SELECT * FROM v_test;
|
||||
c1
|
||||
1
|
||||
SHOW CREATE VIEW v_test;
|
||||
View v_test
|
||||
Create View CREATE VIEW "v_test" AS select 1 AS "c1" from DUAL where 1 = "test"."test1"."f_test"()
|
||||
character_set_client latin1
|
||||
collation_connection latin1_swedish_ci
|
||||
SET sql_mode=DEFAULT;
|
||||
SELECT * FROM v_test;
|
||||
c1
|
||||
1
|
||||
SHOW CREATE VIEW v_test;
|
||||
View v_test
|
||||
Create View CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v_test` AS select 1 AS `c1` from DUAL where 1 = `test`.`test1`.`f_test`()
|
||||
character_set_client latin1
|
||||
collation_connection latin1_swedish_ci
|
||||
DROP VIEW v_test;
|
||||
SET sql_mode=DEFAULT;
|
||||
CREATE VIEW v_test AS SELECT 1 AS c1 FROM DUAL WHERE 1=test1.f_test();
|
||||
ERROR 42000: FUNCTION test1.f_test does not exist
|
||||
SET sql_mode=ORACLE;
|
||||
CREATE VIEW v_test AS SELECT 1 AS c1 FROM DUAL WHERE 1=test.test1.f_test();
|
||||
SELECT * FROM v_test;
|
||||
c1
|
||||
1
|
||||
SHOW CREATE VIEW v_test;
|
||||
View v_test
|
||||
Create View CREATE VIEW "v_test" AS select 1 AS "c1" from DUAL where 1 = "test"."test1"."f_test"()
|
||||
character_set_client latin1
|
||||
collation_connection latin1_swedish_ci
|
||||
SET sql_mode=DEFAULT;
|
||||
SELECT * FROM v_test;
|
||||
c1
|
||||
1
|
||||
SHOW CREATE VIEW v_test;
|
||||
View v_test
|
||||
Create View CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v_test` AS select 1 AS `c1` from DUAL where 1 = `test`.`test1`.`f_test`()
|
||||
character_set_client latin1
|
||||
collation_connection latin1_swedish_ci
|
||||
DROP VIEW v_test;
|
||||
SET sql_mode=DEFAULT;
|
||||
CREATE VIEW v_test AS SELECT 1 AS c1 FROM DUAL WHERE 1=test.test1.f_test();
|
||||
SELECT * FROM v_test;
|
||||
c1
|
||||
1
|
||||
SHOW CREATE VIEW v_test;
|
||||
View v_test
|
||||
Create View CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v_test` AS select 1 AS `c1` from DUAL where 1 = `test`.`test1`.`f_test`()
|
||||
character_set_client latin1
|
||||
collation_connection latin1_swedish_ci
|
||||
SET sql_mode=ORACLE;
|
||||
SELECT * FROM v_test;
|
||||
c1
|
||||
1
|
||||
SHOW CREATE VIEW v_test;
|
||||
View v_test
|
||||
Create View CREATE VIEW "v_test" AS select 1 AS "c1" from DUAL where 1 = "test"."test1"."f_test"()
|
||||
character_set_client latin1
|
||||
collation_connection latin1_swedish_ci
|
||||
DROP VIEW v_test;
|
||||
SET sql_mode=ORACLE;
|
||||
DROP PACKAGE test1;
|
||||
#
|
||||
# MDEV-19804 sql_mode=ORACLE: call procedure in packages
|
||||
#
|
||||
CALL `db1 `.pkg.p;
|
||||
ERROR 42000: Incorrect database name 'db1 '
|
||||
CALL db1.`pkg `.p;
|
||||
ERROR 42000: Incorrect routine name 'pkg '
|
||||
CALL db1.pkg.`p `;
|
||||
ERROR 42000: Incorrect routine name 'p '
|
||||
SET sql_mode=ORACLE;
|
||||
CREATE PACKAGE pkg1 as
|
||||
PROCEDURE p1();
|
||||
END;
|
||||
$$
|
||||
CREATE PACKAGE BODY pkg1 as
|
||||
PROCEDURE p1() as
|
||||
BEGIN
|
||||
SELECT 'test-function' AS c1;
|
||||
END;
|
||||
END;
|
||||
$$
|
||||
CALL pkg1.p1;
|
||||
c1
|
||||
test-function
|
||||
CALL test.pkg1.p1;
|
||||
c1
|
||||
test-function
|
||||
SET sql_mode=DEFAULT;
|
||||
CALL test.pkg1.p1;
|
||||
c1
|
||||
test-function
|
||||
SET sql_mode=ORACLE;
|
||||
BEGIN
|
||||
CALL pkg1.p1;
|
||||
CALL test.pkg1.p1;
|
||||
END
|
||||
$$
|
||||
c1
|
||||
test-function
|
||||
c1
|
||||
test-function
|
||||
BEGIN
|
||||
pkg1.p1;
|
||||
test.pkg1.p1;
|
||||
END
|
||||
$$
|
||||
c1
|
||||
test-function
|
||||
c1
|
||||
test-function
|
||||
DROP PACKAGE pkg1;
|
||||
CREATE DATABASE db1;
|
||||
CREATE PACKAGE db1.pkg1 AS
|
||||
PROCEDURE p1(a OUT TEXT);
|
||||
END;
|
||||
$$
|
||||
CREATE PACKAGE BODY db1.pkg1 AS
|
||||
PROCEDURE p1(a OUT TEXT) AS
|
||||
BEGIN
|
||||
a:= 'This is db1.pkg1.p1';
|
||||
END;
|
||||
END;
|
||||
$$
|
||||
CREATE DATABASE db2;
|
||||
CREATE PACKAGE db2.pkg1 AS
|
||||
FUNCTION var1 RETURN TEXT;
|
||||
PROCEDURE p1(a OUT TEXT);
|
||||
PROCEDURE p2_db1_pkg1_p1;
|
||||
END;
|
||||
$$
|
||||
CREATE PACKAGE BODY db2.pkg1 AS
|
||||
m_var1 TEXT;
|
||||
FUNCTION var1 RETURN TEXT AS
|
||||
BEGIN
|
||||
RETURN m_var1;
|
||||
END;
|
||||
PROCEDURE p1(a OUT TEXT) AS
|
||||
BEGIN
|
||||
a:= 'This is db2.pkg1.p1';
|
||||
END;
|
||||
PROCEDURE p2_db1_pkg1_p1 AS
|
||||
a TEXT;
|
||||
BEGIN
|
||||
db1.pkg1.p1(a);
|
||||
SELECT a;
|
||||
END;
|
||||
BEGIN
|
||||
db1.pkg1.p1(m_var1);
|
||||
END;
|
||||
$$
|
||||
SELECT db2.pkg1.var1();
|
||||
db2.pkg1.var1()
|
||||
This is db1.pkg1.p1
|
||||
CALL db2.pkg1.p2_db1_pkg1_p1;
|
||||
a
|
||||
This is db1.pkg1.p1
|
||||
DROP DATABASE db1;
|
||||
DROP DATABASE db2;
|
||||
|
@ -2689,3 +2689,330 @@ CALL xyz.xyz123(17,18,@R);
|
||||
DROP PACKAGE xyz;
|
||||
DROP TABLE t1;
|
||||
--disable_prepare_warnings
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-28166 sql_mode=ORACLE: fully qualified package function calls do not work: db.pkg.func()
|
||||
--echo #
|
||||
|
||||
--error ER_WRONG_DB_NAME
|
||||
SELECT `db `.pkg.func();
|
||||
--error ER_SP_WRONG_NAME
|
||||
SELECT db.`pkg `.func();
|
||||
--error ER_SP_WRONG_NAME
|
||||
SELECT db.pkg.`func `();
|
||||
|
||||
|
||||
CREATE DATABASE db1;
|
||||
USE db1;
|
||||
|
||||
DELIMITER $$;
|
||||
CREATE PACKAGE pkg1 AS
|
||||
FUNCTION f1 RETURN TEXT;
|
||||
FUNCTION f2_db1_pkg1_f1 RETURN TEXT;
|
||||
FUNCTION f2_pkg1_f1 RETURN TEXT;
|
||||
FUNCTION f2_f1 RETURN TEXT;
|
||||
END;
|
||||
$$
|
||||
CREATE PACKAGE BODY pkg1
|
||||
AS
|
||||
FUNCTION f1 RETURN TEXT IS
|
||||
BEGIN
|
||||
RETURN 'This is db1.pkg1.f1';
|
||||
END;
|
||||
FUNCTION f2_db1_pkg1_f1 RETURN TEXT IS
|
||||
BEGIN
|
||||
RETURN db1.pkg1.f1();
|
||||
END;
|
||||
FUNCTION f2_pkg1_f1 RETURN TEXT IS
|
||||
BEGIN
|
||||
RETURN pkg1.f1();
|
||||
END;
|
||||
FUNCTION f2_f1 RETURN TEXT IS
|
||||
BEGIN
|
||||
RETURN f1();
|
||||
END;
|
||||
END;
|
||||
$$
|
||||
DELIMITER ;$$
|
||||
|
||||
USE db1;
|
||||
SELECT pkg1.f2_db1_pkg1_f1();
|
||||
SELECT pkg1.f2_pkg1_f1();
|
||||
SELECT pkg1.f2_f1();
|
||||
|
||||
SELECT db1.pkg1.f2_db1_pkg1_f1();
|
||||
SELECT db1.pkg1.f2_pkg1_f1();
|
||||
SELECT db1.pkg1.f2_f1();
|
||||
|
||||
USE test;
|
||||
SELECT db1.pkg1.f2_db1_pkg1_f1();
|
||||
SELECT db1.pkg1.f2_pkg1_f1();
|
||||
SELECT db1.pkg1.f2_f1();
|
||||
|
||||
DROP DATABASE db1;
|
||||
|
||||
|
||||
#
|
||||
# Testing db.pkg.func() in the package initialization section
|
||||
#
|
||||
|
||||
CREATE DATABASE db1;
|
||||
CREATE DATABASE db2;
|
||||
|
||||
DELIMITER $$;
|
||||
CREATE PACKAGE db1.pkg1 AS
|
||||
FUNCTION f1 RETURN TEXT;
|
||||
END;
|
||||
$$
|
||||
CREATE PACKAGE BODY db1.pkg1 AS
|
||||
FUNCTION f1 RETURN TEXT AS
|
||||
BEGIN
|
||||
RETURN 'This is db1.pkg1.f1';
|
||||
END;
|
||||
END;
|
||||
$$
|
||||
DELIMITER ;$$
|
||||
|
||||
|
||||
DELIMITER $$;
|
||||
CREATE PACKAGE db2.pkg1 AS
|
||||
FUNCTION f1 RETURN TEXT;
|
||||
FUNCTION var1 RETURN TEXT;
|
||||
FUNCTION var2 RETURN TEXT;
|
||||
END;
|
||||
$$
|
||||
CREATE PACKAGE BODY db2.pkg1 AS
|
||||
m_var1 TEXT;
|
||||
m_var2 TEXT;
|
||||
FUNCTION f1 RETURN TEXT AS
|
||||
BEGIN
|
||||
RETURN 'This is db2.pkg1.f1';
|
||||
END;
|
||||
FUNCTION var1 RETURN TEXT AS
|
||||
BEGIN
|
||||
RETURN m_var1;
|
||||
END;
|
||||
FUNCTION var2 RETURN TEXT AS
|
||||
BEGIN
|
||||
RETURN m_var2;
|
||||
END;
|
||||
BEGIN
|
||||
m_var1:= db1.pkg1.f1();
|
||||
m_var2:= db2.pkg1.f1();
|
||||
END;
|
||||
$$
|
||||
DELIMITER ;$$
|
||||
|
||||
SELECT db2.pkg1.var1(), db2.pkg1.var2();
|
||||
|
||||
DROP DATABASE db1;
|
||||
DROP DATABASE db2;
|
||||
|
||||
#
|
||||
# Make sure fully qualified package function call does not support AS syntax:
|
||||
# SELECT db.pkg.func(10 AS a);
|
||||
#
|
||||
|
||||
DELIMITER $$;
|
||||
CREATE PACKAGE pkg1 AS
|
||||
FUNCTION f1(a TEXT) RETURN TEXT;
|
||||
END;
|
||||
$$
|
||||
CREATE PACKAGE BODY pkg1 AS
|
||||
FUNCTION f1(a TEXT) RETURN TEXT AS
|
||||
BEGIN
|
||||
RETURN a;
|
||||
END;
|
||||
END;
|
||||
$$
|
||||
DELIMITER ;$$
|
||||
SELECT test.pkg1.f1('xxx');
|
||||
--error ER_PARSE_ERROR
|
||||
SELECT test.pkg1.f1('xxx' AS a);
|
||||
DROP PACKAGE pkg1;
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-19328 sql_mode=ORACLE: Package function in VIEW
|
||||
--echo #
|
||||
|
||||
SET sql_mode=ORACLE;
|
||||
DELIMITER $$;
|
||||
CREATE PACKAGE test1 AS
|
||||
FUNCTION f_test RETURN number;
|
||||
END test1;
|
||||
$$
|
||||
CREATE PACKAGE BODY test1
|
||||
AS
|
||||
FUNCTION f_test RETURN NUMBER IS
|
||||
BEGIN
|
||||
RETURN 1;
|
||||
END;
|
||||
END test1;
|
||||
$$
|
||||
DELIMITER ;$$
|
||||
|
||||
|
||||
SET sql_mode=ORACLE;
|
||||
CREATE VIEW v_test AS SELECT 1 AS c1 FROM DUAL WHERE 1=test1.f_test();
|
||||
SELECT * FROM v_test;
|
||||
--vertical_results
|
||||
SHOW CREATE VIEW v_test;
|
||||
--horizontal_results
|
||||
SET sql_mode=DEFAULT;
|
||||
SELECT * FROM v_test;
|
||||
--vertical_results
|
||||
SHOW CREATE VIEW v_test;
|
||||
--horizontal_results
|
||||
DROP VIEW v_test;
|
||||
|
||||
|
||||
SET sql_mode=DEFAULT;
|
||||
--error ER_SP_DOES_NOT_EXIST
|
||||
CREATE VIEW v_test AS SELECT 1 AS c1 FROM DUAL WHERE 1=test1.f_test();
|
||||
|
||||
|
||||
SET sql_mode=ORACLE;
|
||||
CREATE VIEW v_test AS SELECT 1 AS c1 FROM DUAL WHERE 1=test.test1.f_test();
|
||||
SELECT * FROM v_test;
|
||||
--vertical_results
|
||||
SHOW CREATE VIEW v_test;
|
||||
--horizontal_results
|
||||
SET sql_mode=DEFAULT;
|
||||
SELECT * FROM v_test;
|
||||
--vertical_results
|
||||
SHOW CREATE VIEW v_test;
|
||||
--horizontal_results
|
||||
DROP VIEW v_test;
|
||||
|
||||
|
||||
SET sql_mode=DEFAULT;
|
||||
CREATE VIEW v_test AS SELECT 1 AS c1 FROM DUAL WHERE 1=test.test1.f_test();
|
||||
SELECT * FROM v_test;
|
||||
--vertical_results
|
||||
SHOW CREATE VIEW v_test;
|
||||
--horizontal_results
|
||||
SET sql_mode=ORACLE;
|
||||
SELECT * FROM v_test;
|
||||
--vertical_results
|
||||
SHOW CREATE VIEW v_test;
|
||||
--horizontal_results
|
||||
DROP VIEW v_test;
|
||||
|
||||
SET sql_mode=ORACLE;
|
||||
DROP PACKAGE test1;
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-19804 sql_mode=ORACLE: call procedure in packages
|
||||
--echo #
|
||||
|
||||
--error ER_WRONG_DB_NAME
|
||||
CALL `db1 `.pkg.p;
|
||||
--error ER_SP_WRONG_NAME
|
||||
CALL db1.`pkg `.p;
|
||||
--error ER_SP_WRONG_NAME
|
||||
CALL db1.pkg.`p `;
|
||||
|
||||
|
||||
SET sql_mode=ORACLE;
|
||||
DELIMITER $$;
|
||||
CREATE PACKAGE pkg1 as
|
||||
PROCEDURE p1();
|
||||
END;
|
||||
$$
|
||||
CREATE PACKAGE BODY pkg1 as
|
||||
PROCEDURE p1() as
|
||||
BEGIN
|
||||
SELECT 'test-function' AS c1;
|
||||
END;
|
||||
END;
|
||||
$$
|
||||
DELIMITER ;$$
|
||||
|
||||
CALL pkg1.p1;
|
||||
CALL test.pkg1.p1;
|
||||
|
||||
# In sql_mode=DEFAULT we support fully qualified package function names
|
||||
# (this is needed for VIEWs). Let's make sure we also support fully
|
||||
# qualified package procedure names, for symmetry
|
||||
|
||||
SET sql_mode=DEFAULT;
|
||||
CALL test.pkg1.p1;
|
||||
SET sql_mode=ORACLE;
|
||||
|
||||
DELIMITER $$;
|
||||
BEGIN
|
||||
CALL pkg1.p1;
|
||||
CALL test.pkg1.p1;
|
||||
END
|
||||
$$
|
||||
DELIMITER ;$$
|
||||
|
||||
DELIMITER $$;
|
||||
BEGIN
|
||||
pkg1.p1;
|
||||
test.pkg1.p1;
|
||||
END
|
||||
$$
|
||||
DELIMITER ;$$
|
||||
|
||||
DROP PACKAGE pkg1;
|
||||
|
||||
|
||||
#
|
||||
# Testing packages in different databases calling each other
|
||||
# in routines and in the initialization section.
|
||||
#
|
||||
|
||||
CREATE DATABASE db1;
|
||||
DELIMITER $$;
|
||||
CREATE PACKAGE db1.pkg1 AS
|
||||
PROCEDURE p1(a OUT TEXT);
|
||||
END;
|
||||
$$
|
||||
CREATE PACKAGE BODY db1.pkg1 AS
|
||||
PROCEDURE p1(a OUT TEXT) AS
|
||||
BEGIN
|
||||
a:= 'This is db1.pkg1.p1';
|
||||
END;
|
||||
END;
|
||||
$$
|
||||
DELIMITER ;$$
|
||||
|
||||
CREATE DATABASE db2;
|
||||
DELIMITER $$;
|
||||
CREATE PACKAGE db2.pkg1 AS
|
||||
FUNCTION var1 RETURN TEXT;
|
||||
PROCEDURE p1(a OUT TEXT);
|
||||
PROCEDURE p2_db1_pkg1_p1;
|
||||
END;
|
||||
$$
|
||||
CREATE PACKAGE BODY db2.pkg1 AS
|
||||
m_var1 TEXT;
|
||||
FUNCTION var1 RETURN TEXT AS
|
||||
BEGIN
|
||||
RETURN m_var1;
|
||||
END;
|
||||
PROCEDURE p1(a OUT TEXT) AS
|
||||
BEGIN
|
||||
a:= 'This is db2.pkg1.p1';
|
||||
END;
|
||||
PROCEDURE p2_db1_pkg1_p1 AS
|
||||
a TEXT;
|
||||
BEGIN
|
||||
db1.pkg1.p1(a);
|
||||
SELECT a;
|
||||
END;
|
||||
BEGIN
|
||||
db1.pkg1.p1(m_var1);
|
||||
END;
|
||||
$$
|
||||
DELIMITER ;$$
|
||||
|
||||
SELECT db2.pkg1.var1();
|
||||
CALL db2.pkg1.p2_db1_pkg1_p1;
|
||||
|
||||
DROP DATABASE db1;
|
||||
DROP DATABASE db2;
|
||||
|
@ -15,6 +15,11 @@ if (!$INNOCHECKSUM) {
|
||||
--die Need innochecksum binary
|
||||
}
|
||||
|
||||
--disable_query_log
|
||||
# This may be triggered on a slow system or one that lacks native AIO.
|
||||
call mtr.add_suppression("InnoDB: Trying to delete tablespace.*pending operations");
|
||||
--enable_query_log
|
||||
|
||||
let $checksum_algorithm = `SELECT @@innodb_checksum_algorithm`;
|
||||
SET GLOBAL innodb_file_per_table = ON;
|
||||
# zlib
|
||||
|
@ -38,7 +38,7 @@ if (`SELECT COUNT(*) <> 36 FROM information_schema.character_sets
|
||||
'hp8' , 'keybcs2', 'koi8r' , 'koi8u' , 'latin1',
|
||||
'latin2' , 'latin5' , 'latin7' , 'macce' , 'macroman',
|
||||
'sjis' , 'swe7' , 'tis620' , 'ucs2' , 'ujis',
|
||||
'utf8'
|
||||
'utf8mb3'
|
||||
)`)
|
||||
{
|
||||
--skip Not all character sets required for this test are present
|
||||
@ -72,12 +72,12 @@ WHERE collation_name IN (
|
||||
'ucs2_latvian_ci', 'ucs2_lithuanian_ci', 'ucs2_persian_ci', 'ucs2_polish_ci',
|
||||
'ucs2_roman_ci', 'ucs2_romanian_ci', 'ucs2_slovak_ci', 'ucs2_slovenian_ci',
|
||||
'ucs2_spanish2_ci', 'ucs2_spanish_ci', 'ucs2_swedish_ci', 'ucs2_turkish_ci',
|
||||
'ucs2_unicode_ci', 'ujis_bin', 'ujis_japanese_ci', 'utf8_bin',
|
||||
'utf8_czech_ci', 'utf8_danish_ci', 'utf8_estonian_ci', 'utf8_general_ci',
|
||||
'utf8_hungarian_ci', 'utf8_icelandic_ci', 'utf8_latvian_ci', 'utf8_lithuanian_ci',
|
||||
'utf8_persian_ci', 'utf8_polish_ci', 'utf8_roman_ci', 'utf8_romanian_ci',
|
||||
'utf8_slovak_ci', 'utf8_slovenian_ci', 'utf8_spanish2_ci', 'utf8_spanish_ci',
|
||||
'utf8_swedish_ci', 'utf8_turkish_ci', 'utf8_unicode_ci'
|
||||
'ucs2_unicode_ci', 'ujis_bin', 'ujis_japanese_ci', 'utf8mb3_bin',
|
||||
'utf8mb3_czech_ci', 'utf8mb3_danish_ci', 'utf8mb3_estonian_ci', 'utf8mb3_general_ci',
|
||||
'utf8mb3_hungarian_ci', 'utf8mb3_icelandic_ci', 'utf8mb3_latvian_ci', 'utf8mb3_lithuanian_ci',
|
||||
'utf8mb3_persian_ci', 'utf8mb3_polish_ci', 'utf8mb3_roman_ci', 'utf8mb3_romanian_ci',
|
||||
'utf8mb3_slovak_ci', 'utf8mb3_slovenian_ci', 'utf8mb3_spanish2_ci', 'utf8mb3_spanish_ci',
|
||||
'utf8mb3_swedish_ci', 'utf8mb3_turkish_ci', 'utf8mb3_unicode_ci'
|
||||
)`)
|
||||
{
|
||||
--skip Not all collations required for this test are present
|
||||
@ -86,7 +86,7 @@ WHERE collation_name IN (
|
||||
################################
|
||||
let $check_std_csets= 1;
|
||||
let $check_ucs2_csets= 1;
|
||||
let $check_utf8_csets= 1;
|
||||
let $check_utf8mb3_csets= 1;
|
||||
|
||||
# Bug#32784: Timeout in test "innodb_charset": InnoDB much slower
|
||||
# than other handlers
|
||||
@ -104,7 +104,7 @@ SET autocommit=0;
|
||||
################################
|
||||
let $check_std_csets= 1;
|
||||
let $check_ucs2_csets= 1;
|
||||
let $check_utf8_csets= 1;
|
||||
let $check_utf8mb3_csets= 1;
|
||||
|
||||
#
|
||||
# Check all charsets/collation combinations
|
||||
@ -610,7 +610,7 @@ let $coll= ucs2_unicode_ci;
|
||||
|
||||
}
|
||||
|
||||
if ($check_utf8_csets)
|
||||
if ($check_utf8mb3_csets)
|
||||
{
|
||||
|
||||
# utf8
|
||||
|
@ -17563,7 +17563,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=InnoDB CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_bin;
|
||||
@ -20104,7 +20104,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=InnoDB CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_czech_ci;
|
||||
@ -22645,7 +22645,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=InnoDB CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_danish_ci;
|
||||
@ -25186,7 +25186,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=InnoDB CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_estonian_ci;
|
||||
@ -27727,7 +27727,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=InnoDB CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_general_ci;
|
||||
@ -30268,7 +30268,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=InnoDB CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_hungarian_ci;
|
||||
@ -32809,7 +32809,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=InnoDB CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_icelandic_ci;
|
||||
@ -35350,7 +35350,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=InnoDB CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_latvian_ci;
|
||||
@ -37891,7 +37891,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=InnoDB CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_lithuanian_ci;
|
||||
@ -40432,7 +40432,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=InnoDB CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_persian_ci;
|
||||
@ -42973,7 +42973,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=InnoDB CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_polish_ci;
|
||||
@ -45514,7 +45514,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=InnoDB CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_roman_ci;
|
||||
@ -48055,7 +48055,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=InnoDB CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_romanian_ci;
|
||||
@ -50596,7 +50596,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=InnoDB CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_slovak_ci;
|
||||
@ -53137,7 +53137,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=InnoDB CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_slovenian_ci;
|
||||
@ -55678,7 +55678,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=InnoDB CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_spanish2_ci;
|
||||
@ -58219,7 +58219,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=InnoDB CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_spanish_ci;
|
||||
@ -60760,7 +60760,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=InnoDB CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_swedish_ci;
|
||||
@ -63301,7 +63301,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=InnoDB CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_turkish_ci;
|
||||
@ -65842,7 +65842,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=InnoDB CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_unicode_ci;
|
||||
@ -68382,7 +68382,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_bin) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_bin # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_bin # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -70921,7 +70921,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_czech_ci) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_czech_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_czech_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_czech_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -73460,7 +73460,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_danish_ci) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_danish_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_danish_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_danish_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -75999,7 +75999,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_estonian_ci) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_estonian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_estonian_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_estonian_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -78538,7 +78538,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_general_ci) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -81077,7 +81077,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_hungarian_ci) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_hungarian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_hungarian_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_hungarian_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -83616,7 +83616,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_icelandic_ci) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_icelandic_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_icelandic_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_icelandic_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -86155,7 +86155,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_latvian_ci) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_latvian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_latvian_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_latvian_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -88694,7 +88694,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_lithuanian_ci) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_lithuanian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_lithuanian_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_lithuanian_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -91233,7 +91233,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_persian_ci) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_persian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_persian_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_persian_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -93772,7 +93772,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_polish_ci) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_polish_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_polish_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_polish_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -96311,7 +96311,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_roman_ci) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_roman_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_roman_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_roman_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -98850,7 +98850,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_romanian_ci) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_romanian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_romanian_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_romanian_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -101389,7 +101389,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_slovak_ci) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_slovak_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_slovak_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_slovak_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -103928,7 +103928,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_slovenian_ci) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_slovenian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_slovenian_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_slovenian_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -106467,7 +106467,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_spanish2_ci) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_spanish2_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_spanish2_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_spanish2_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -109006,7 +109006,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_spanish_ci) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_spanish_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_spanish_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_spanish_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -111545,7 +111545,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_swedish_ci) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_swedish_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_swedish_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_swedish_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -114084,7 +114084,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_turkish_ci) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_turkish_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_turkish_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_turkish_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -116623,7 +116623,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_unicode_ci) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_unicode_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 InnoDB # # # # # # # # # # # # utf8_unicode_ci # # # 0 N
|
||||
t1 InnoDB # # # # # # # # # # # # utf8mb3_unicode_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
|
@ -17563,7 +17563,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=Memory CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_bin;
|
||||
@ -20104,7 +20104,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=Memory CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_czech_ci;
|
||||
@ -22645,7 +22645,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=Memory CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_danish_ci;
|
||||
@ -25186,7 +25186,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=Memory CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_estonian_ci;
|
||||
@ -27727,7 +27727,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=Memory CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_general_ci;
|
||||
@ -30268,7 +30268,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=Memory CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_hungarian_ci;
|
||||
@ -32809,7 +32809,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=Memory CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_icelandic_ci;
|
||||
@ -35350,7 +35350,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=Memory CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_latvian_ci;
|
||||
@ -37891,7 +37891,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=Memory CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_lithuanian_ci;
|
||||
@ -40432,7 +40432,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=Memory CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_persian_ci;
|
||||
@ -42973,7 +42973,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=Memory CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_polish_ci;
|
||||
@ -45514,7 +45514,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=Memory CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_roman_ci;
|
||||
@ -48055,7 +48055,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=Memory CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_romanian_ci;
|
||||
@ -50596,7 +50596,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=Memory CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_slovak_ci;
|
||||
@ -53137,7 +53137,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=Memory CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_slovenian_ci;
|
||||
@ -55678,7 +55678,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=Memory CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_spanish2_ci;
|
||||
@ -58219,7 +58219,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=Memory CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_spanish_ci;
|
||||
@ -60760,7 +60760,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=Memory CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_swedish_ci;
|
||||
@ -63301,7 +63301,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=Memory CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_turkish_ci;
|
||||
@ -65842,7 +65842,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=Memory CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_unicode_ci;
|
||||
@ -68382,7 +68382,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_bin) ENGINE=Memory CHARACTER SET utf8 COLLATE utf8_bin;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_bin # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_bin # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -70921,7 +70921,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_czech_ci) ENGINE=Memory CHARACTER SET utf8 COLLATE utf8_czech_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_czech_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_czech_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -73460,7 +73460,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_danish_ci) ENGINE=Memory CHARACTER SET utf8 COLLATE utf8_danish_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_danish_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_danish_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -75999,7 +75999,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_estonian_ci) ENGINE=Memory CHARACTER SET utf8 COLLATE utf8_estonian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_estonian_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_estonian_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -78538,7 +78538,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_general_ci) ENGINE=Memory CHARACTER SET utf8 COLLATE utf8_general_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_general_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_general_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -81077,7 +81077,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_hungarian_ci) ENGINE=Memory CHARACTER SET utf8 COLLATE utf8_hungarian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_hungarian_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_hungarian_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -83616,7 +83616,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_icelandic_ci) ENGINE=Memory CHARACTER SET utf8 COLLATE utf8_icelandic_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_icelandic_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_icelandic_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -86155,7 +86155,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_latvian_ci) ENGINE=Memory CHARACTER SET utf8 COLLATE utf8_latvian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_latvian_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_latvian_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -88694,7 +88694,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_lithuanian_ci) ENGINE=Memory CHARACTER SET utf8 COLLATE utf8_lithuanian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_lithuanian_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_lithuanian_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -91233,7 +91233,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_persian_ci) ENGINE=Memory CHARACTER SET utf8 COLLATE utf8_persian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_persian_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_persian_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -93772,7 +93772,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_polish_ci) ENGINE=Memory CHARACTER SET utf8 COLLATE utf8_polish_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_polish_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_polish_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -96311,7 +96311,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_roman_ci) ENGINE=Memory CHARACTER SET utf8 COLLATE utf8_roman_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_roman_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_roman_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -98850,7 +98850,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_romanian_ci) ENGINE=Memory CHARACTER SET utf8 COLLATE utf8_romanian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_romanian_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_romanian_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -101389,7 +101389,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_slovak_ci) ENGINE=Memory CHARACTER SET utf8 COLLATE utf8_slovak_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_slovak_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_slovak_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -103928,7 +103928,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_slovenian_ci) ENGINE=Memory CHARACTER SET utf8 COLLATE utf8_slovenian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_slovenian_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_slovenian_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -106467,7 +106467,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_spanish2_ci) ENGINE=Memory CHARACTER SET utf8 COLLATE utf8_spanish2_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_spanish2_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_spanish2_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -109006,7 +109006,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_spanish_ci) ENGINE=Memory CHARACTER SET utf8 COLLATE utf8_spanish_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_spanish_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_spanish_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -111545,7 +111545,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_swedish_ci) ENGINE=Memory CHARACTER SET utf8 COLLATE utf8_swedish_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_swedish_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_swedish_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -114084,7 +114084,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_turkish_ci) ENGINE=Memory CHARACTER SET utf8 COLLATE utf8_turkish_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_turkish_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_turkish_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -116623,7 +116623,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_unicode_ci) ENGINE=Memory CHARACTER SET utf8 COLLATE utf8_unicode_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MEMORY # # # # # # # # # # # # utf8_unicode_ci # # # 0 N
|
||||
t1 MEMORY # # # # # # # # # # # # utf8mb3_unicode_ci # # # 0 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
|
@ -17563,7 +17563,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_bin;
|
||||
@ -20104,7 +20104,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_czech_ci;
|
||||
@ -22645,7 +22645,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_danish_ci;
|
||||
@ -25186,7 +25186,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_estonian_ci;
|
||||
@ -27727,7 +27727,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_general_ci;
|
||||
@ -30268,7 +30268,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_hungarian_ci;
|
||||
@ -32809,7 +32809,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_icelandic_ci;
|
||||
@ -35350,7 +35350,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_latvian_ci;
|
||||
@ -37891,7 +37891,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_lithuanian_ci;
|
||||
@ -40432,7 +40432,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_persian_ci;
|
||||
@ -42973,7 +42973,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_polish_ci;
|
||||
@ -45514,7 +45514,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_roman_ci;
|
||||
@ -48055,7 +48055,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_romanian_ci;
|
||||
@ -50596,7 +50596,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_slovak_ci;
|
||||
@ -53137,7 +53137,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_slovenian_ci;
|
||||
@ -55678,7 +55678,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_spanish2_ci;
|
||||
@ -58219,7 +58219,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_spanish_ci;
|
||||
@ -60760,7 +60760,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_swedish_ci;
|
||||
@ -63301,7 +63301,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_turkish_ci;
|
||||
@ -65842,7 +65842,7 @@ SET NAMES utf8;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET ucs2 COLLATE ucs2_unicode_ci;
|
||||
@ -68382,7 +68382,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_bin) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_bin # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_bin # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -70921,7 +70921,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_czech_ci) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_czech_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_czech_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_czech_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -73460,7 +73460,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_danish_ci) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_danish_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_danish_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_danish_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -75999,7 +75999,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_estonian_ci) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_estonian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_estonian_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_estonian_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -78538,7 +78538,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_general_ci) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_general_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_general_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_general_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -81077,7 +81077,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_hungarian_ci) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_hungarian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_hungarian_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_hungarian_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -83616,7 +83616,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_icelandic_ci) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_icelandic_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_icelandic_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_icelandic_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -86155,7 +86155,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_latvian_ci) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_latvian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_latvian_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_latvian_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -88694,7 +88694,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_lithuanian_ci) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_lithuanian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_lithuanian_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_lithuanian_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -91233,7 +91233,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_persian_ci) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_persian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_persian_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_persian_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -93772,7 +93772,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_polish_ci) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_polish_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_polish_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_polish_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -96311,7 +96311,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_roman_ci) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_roman_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_roman_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_roman_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -98850,7 +98850,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_romanian_ci) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_romanian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_romanian_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_romanian_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -101389,7 +101389,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_slovak_ci) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_slovak_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_slovak_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_slovak_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -103928,7 +103928,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_slovenian_ci) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_slovenian_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_slovenian_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_slovenian_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -106467,7 +106467,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_spanish2_ci) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_spanish2_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_spanish2_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_spanish2_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -109006,7 +109006,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_spanish_ci) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_spanish_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_spanish_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_spanish_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -111545,7 +111545,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_swedish_ci) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_swedish_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_swedish_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_swedish_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -114084,7 +114084,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_turkish_ci) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_turkish_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_turkish_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_turkish_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
@ -116623,7 +116623,7 @@ USE test;
|
||||
CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8 COLLATE utf8_unicode_ci) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_unicode_ci;
|
||||
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 Max_index_length Temporary
|
||||
t1 MyISAM # # # # # # # # # # # # utf8_unicode_ci # # # 17179868160 N
|
||||
t1 MyISAM # # # # # # # # # # # # utf8mb3_unicode_ci # # # 17179868160 N
|
||||
LOAD DATA INFILE
|
||||
'MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
|
||||
DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
|
||||
|
@ -44,3 +44,4 @@ pxc-421: wsrep_provider is read-only for security reasons
|
||||
query_cache: MDEV-15805 Test failure on galera.query_cache
|
||||
versioning_trx_id: MDEV-18590: galera.versioning_trx_id: Test failure: mysqltest: Result content mismatch
|
||||
galera_bf_abort_at_after_statement : Unstable
|
||||
galera_bf_abort_ps_bind : MDEV-28193 Galera test failure on galera_bf_abort_ps_bind
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
if (!$kill_signal)
|
||||
{
|
||||
--let $kill_signal = 9
|
||||
--let $kill_signal = KILL
|
||||
}
|
||||
|
||||
# Write file to make mysql-test-run.pl expect the crash, but don't start it
|
||||
|
23
mysql-test/suite/galera/r/MDEV-24143.result
Normal file
23
mysql-test/suite/galera/r/MDEV-24143.result
Normal file
@ -0,0 +1,23 @@
|
||||
connection node_2;
|
||||
connection node_1;
|
||||
CREATE TABLE t1 (c1 BIGINT NOT NULL PRIMARY KEY, c2 BINARY (10), c3 DATETIME);
|
||||
SELECT get_lock ('test2', 0);
|
||||
get_lock ('test2', 0)
|
||||
1
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (c1 SMALLINT NOT NULL AUTO_INCREMENT PRIMARY KEY);
|
||||
INSERT INTO t1 VALUES (1);
|
||||
SET SESSION wsrep_trx_fragment_size=10;
|
||||
SET SESSION autocommit=0;
|
||||
SELECT * FROM t1 WHERE c1 <=0 ORDER BY c1 DESC;
|
||||
c1
|
||||
INSERT INTO t1 VALUES (4),(3),(1),(2);
|
||||
ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
|
||||
CREATE TABLE t1 (pk INT PRIMARY KEY, b INT) ENGINE=SEQUENCE;
|
||||
ERROR 42S01: Table 't1' already exists
|
||||
ALTER TABLE t1 DROP COLUMN c2;
|
||||
ERROR 42000: Can't DROP COLUMN `c2`; check that it exists
|
||||
SELECT get_lock ('test', 1.5);
|
||||
get_lock ('test', 1.5)
|
||||
1
|
||||
DROP TABLE t1;
|
46
mysql-test/suite/galera/r/MDEV-27713.result
Normal file
46
mysql-test/suite/galera/r/MDEV-27713.result
Normal file
@ -0,0 +1,46 @@
|
||||
connection node_2;
|
||||
connection node_1;
|
||||
CREATE TABLE t1 (
|
||||
f1 INT,
|
||||
f2 VARCHAR(255) PRIMARY KEY
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||
INSERT INTO t1 VALUES(1, 'abc');
|
||||
connection node_1;
|
||||
SET AUTOCOMMIT=OFF;
|
||||
START TRANSACTION;
|
||||
INSERT INTO t1 VALUES (2,'def');
|
||||
connection node_2;
|
||||
SET GLOBAL event_scheduler=ON;
|
||||
CREATE PROCEDURE update_table()
|
||||
BEGIN
|
||||
SET AUTOCOMMIT=OFF;
|
||||
DO GET_LOCK('local_lock', 0);
|
||||
SET DEBUG_SYNC = 'innodb_row_update_for_mysql_begin SIGNAL blocked WAIT_FOR continue';
|
||||
UPDATE t1 SET f2 = 'jkl' WHERE f1 != 2;
|
||||
DO RELEASE_LOCK('local_lock');
|
||||
END|
|
||||
CREATE DEFINER=current_user
|
||||
EVENT event
|
||||
ON SCHEDULE AT CURRENT_TIMESTAMP
|
||||
ON COMPLETION PRESERVE
|
||||
ENABLE
|
||||
DO CALL update_table();
|
||||
connect node_2a, 127.0.0.1, root, , test, $NODE_MYPORT_2;
|
||||
SET DEBUG_SYNC = 'now WAIT_FOR blocked';
|
||||
connect node_2b, 127.0.0.1, root, , test, $NODE_MYPORT_2;
|
||||
SET GLOBAL debug_dbug = "+d,sync.wsrep_apply_cb";
|
||||
connection node_1;
|
||||
COMMIT;
|
||||
connection node_2b;
|
||||
SET DEBUG_SYNC = "now WAIT_FOR sync.wsrep_apply_cb_reached";
|
||||
SET DEBUG_SYNC = "now SIGNAL signal.wsrep_apply_cb";
|
||||
connection node_2a;
|
||||
SET DEBUG_SYNC = 'now SIGNAL continue';
|
||||
connection node_2;
|
||||
SET GLOBAL event_scheduler=default;
|
||||
DROP PROCEDURE update_table;
|
||||
DROP EVENT event;
|
||||
SET DEBUG_SYNC='reset';
|
||||
SET GLOBAL debug_dbug = DEFAULT;
|
||||
connection node_1;
|
||||
DROP TABLE t1;
|
37
mysql-test/suite/galera/r/galera_bf_abort_ps_bind.result
Normal file
37
mysql-test/suite/galera/r/galera_bf_abort_ps_bind.result
Normal file
@ -0,0 +1,37 @@
|
||||
connection node_2;
|
||||
connection node_1;
|
||||
CREATE TABLE t (i int primary key auto_increment, j varchar(20) character set utf8);
|
||||
connect node_1a, 127.0.0.1, root, , test, $NODE_MYPORT_1;
|
||||
connection node_1a;
|
||||
SET SESSION wsrep_sync_wait = 0;
|
||||
connection node_1;
|
||||
insert into t values (1, 'first');
|
||||
PS_prepare INSERT INTO t(j) VALUES (?);;
|
||||
PS_bind node1;
|
||||
PS_execute;
|
||||
PS_execute;
|
||||
select * from t;
|
||||
i j
|
||||
1 first
|
||||
3 node1
|
||||
5 node1
|
||||
PS_close;
|
||||
PS_prepare INSERT INTO t(j) VALUES (?);;
|
||||
PS_bind node1;
|
||||
begin;
|
||||
update t set j='node1' where i=1;
|
||||
connection node_2;
|
||||
update t set j='node2' where i=1;
|
||||
connection node_1a;
|
||||
connection node_1;
|
||||
PS_execute;
|
||||
ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
|
||||
PS_execute;
|
||||
commit;
|
||||
select * from t;
|
||||
i j
|
||||
1 node2
|
||||
3 node1
|
||||
5 node1
|
||||
7 node1
|
||||
drop table t;
|
@ -18,6 +18,7 @@ SET SESSION wsrep_on=ON;
|
||||
connection node_1;
|
||||
UPDATE t1 SET f2 = 'd' WHERE f1 > 3;
|
||||
connection node_2;
|
||||
Killing server ...
|
||||
connection node_1;
|
||||
UPDATE t1 SET f2 = 'e' WHERE f1 > 4;
|
||||
connection node_2;
|
||||
|
@ -5,9 +5,13 @@ SELECT @@wsrep_slave_threads;
|
||||
@@wsrep_slave_threads
|
||||
1
|
||||
SET GLOBAL wsrep_slave_threads=2;
|
||||
KILL ID;
|
||||
Got one of the listed errors
|
||||
KILL QUERY ID;
|
||||
Got one of the listed errors
|
||||
KILL ID;
|
||||
Got one of the listed errors
|
||||
KILL QUERY ID;
|
||||
Got one of the listed errors
|
||||
SET GLOBAL wsrep_slave_threads=DEFAULT;
|
||||
connection node_1;
|
||||
|
20
mysql-test/suite/galera/t/MDEV-24143.test
Normal file
20
mysql-test/suite/galera/t/MDEV-24143.test
Normal file
@ -0,0 +1,20 @@
|
||||
--source include/galera_cluster.inc
|
||||
--source include/have_sequence.inc
|
||||
|
||||
CREATE TABLE t1 (c1 BIGINT NOT NULL PRIMARY KEY, c2 BINARY (10), c3 DATETIME);
|
||||
SELECT get_lock ('test2', 0);
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (c1 SMALLINT NOT NULL AUTO_INCREMENT PRIMARY KEY);
|
||||
INSERT INTO t1 VALUES (1);
|
||||
SET SESSION wsrep_trx_fragment_size=10;
|
||||
SET SESSION autocommit=0;
|
||||
SELECT * FROM t1 WHERE c1 <=0 ORDER BY c1 DESC;
|
||||
--error ER_LOCK_DEADLOCK
|
||||
INSERT INTO t1 VALUES (4),(3),(1),(2);
|
||||
--error ER_TABLE_EXISTS_ERROR
|
||||
CREATE TABLE t1 (pk INT PRIMARY KEY, b INT) ENGINE=SEQUENCE;
|
||||
--error ER_CANT_DROP_FIELD_OR_KEY
|
||||
ALTER TABLE t1 DROP COLUMN c2;
|
||||
SELECT get_lock ('test', 1.5);
|
||||
DROP TABLE t1;
|
||||
|
67
mysql-test/suite/galera/t/MDEV-27713.test
Normal file
67
mysql-test/suite/galera/t/MDEV-27713.test
Normal file
@ -0,0 +1,67 @@
|
||||
--source include/galera_cluster.inc
|
||||
--source include/have_innodb.inc
|
||||
--source include/have_debug.inc
|
||||
--source include/have_debug_sync.inc
|
||||
--source include/big_test.inc
|
||||
|
||||
CREATE TABLE t1 (
|
||||
f1 INT,
|
||||
f2 VARCHAR(255) PRIMARY KEY
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||
|
||||
INSERT INTO t1 VALUES(1, 'abc');
|
||||
|
||||
--connection node_1
|
||||
SET AUTOCOMMIT=OFF;
|
||||
START TRANSACTION;
|
||||
INSERT INTO t1 VALUES (2,'def');
|
||||
|
||||
--connection node_2
|
||||
|
||||
SET GLOBAL event_scheduler=ON;
|
||||
|
||||
DELIMITER |;
|
||||
CREATE PROCEDURE update_table()
|
||||
BEGIN
|
||||
SET AUTOCOMMIT=OFF;
|
||||
DO GET_LOCK('local_lock', 0);
|
||||
SET DEBUG_SYNC = 'innodb_row_update_for_mysql_begin SIGNAL blocked WAIT_FOR continue';
|
||||
UPDATE t1 SET f2 = 'jkl' WHERE f1 != 2;
|
||||
DO RELEASE_LOCK('local_lock');
|
||||
END|
|
||||
DELIMITER ;|
|
||||
|
||||
CREATE DEFINER=current_user
|
||||
EVENT event
|
||||
ON SCHEDULE AT CURRENT_TIMESTAMP
|
||||
ON COMPLETION PRESERVE
|
||||
ENABLE
|
||||
DO CALL update_table();
|
||||
|
||||
--connect node_2a, 127.0.0.1, root, , test, $NODE_MYPORT_2
|
||||
SET DEBUG_SYNC = 'now WAIT_FOR blocked';
|
||||
|
||||
# Applier control thread
|
||||
--connect node_2b, 127.0.0.1, root, , test, $NODE_MYPORT_2
|
||||
SET GLOBAL debug_dbug = "+d,sync.wsrep_apply_cb";
|
||||
|
||||
--connection node_1
|
||||
COMMIT;
|
||||
|
||||
# Applier control thread
|
||||
--connection node_2b
|
||||
SET DEBUG_SYNC = "now WAIT_FOR sync.wsrep_apply_cb_reached";
|
||||
SET DEBUG_SYNC = "now SIGNAL signal.wsrep_apply_cb";
|
||||
|
||||
--connection node_2a
|
||||
SET DEBUG_SYNC = 'now SIGNAL continue';
|
||||
|
||||
--connection node_2
|
||||
SET GLOBAL event_scheduler=default;
|
||||
DROP PROCEDURE update_table;
|
||||
DROP EVENT event;
|
||||
SET DEBUG_SYNC='reset';
|
||||
SET GLOBAL debug_dbug = DEFAULT;
|
||||
|
||||
--connection node_1
|
||||
DROP TABLE t1;
|
@ -19,7 +19,11 @@ SET SESSION wsrep_osu_method=RSU;
|
||||
ALTER TABLE t1 ADD COLUMN f2 INTEGER;
|
||||
SET SESSION wsrep_osu_method=TOI;
|
||||
|
||||
--let $wait_condition = SELECT COUNT(*) = 2 FROM mysql.general_log WHERE argument LIKE "CREATE%" OR argument LIKE "ALTER%"
|
||||
--let $wait_condition = SELECT COUNT(*) = 1 FROM mysql.general_log WHERE argument LIKE "CREATE%" AND command_type != 'Prepare'
|
||||
--let $wait_condition_on_error_output = SELECT * FROM mysql.general_log
|
||||
--source include/wait_condition_with_debug.inc
|
||||
|
||||
--let $wait_condition = SELECT COUNT(*) = 1 FROM mysql.general_log WHERE argument LIKE "ALTER%" AND command_type != 'Prepare'
|
||||
--let $wait_condition_on_error_output = SELECT * FROM mysql.general_log
|
||||
--source include/wait_condition_with_debug.inc
|
||||
|
||||
|
7
mysql-test/suite/galera/t/galera_bf_abort_ps_bind.cnf
Normal file
7
mysql-test/suite/galera/t/galera_bf_abort_ps_bind.cnf
Normal file
@ -0,0 +1,7 @@
|
||||
!include ../galera_2nodes.cnf
|
||||
|
||||
[mysqld.1]
|
||||
wsrep-debug=1
|
||||
|
||||
[mysqld.2]
|
||||
wsrep-debug=1
|
58
mysql-test/suite/galera/t/galera_bf_abort_ps_bind.test
Normal file
58
mysql-test/suite/galera/t/galera_bf_abort_ps_bind.test
Normal file
@ -0,0 +1,58 @@
|
||||
--source include/galera_cluster.inc
|
||||
--source include/have_innodb.inc
|
||||
|
||||
CREATE TABLE t (i int primary key auto_increment, j varchar(20) character set utf8);
|
||||
|
||||
--connect node_1a, 127.0.0.1, root, , test, $NODE_MYPORT_1
|
||||
--connection node_1a
|
||||
SET SESSION wsrep_sync_wait = 0;
|
||||
|
||||
--connection node_1
|
||||
insert into t values (1, 'first');
|
||||
|
||||
# prepare a statement for inserting rows into table t
|
||||
--PS_prepare INSERT INTO t(j) VALUES (?);
|
||||
|
||||
# bind parameter, to insert with column j having value 'node1'
|
||||
--PS_bind node1
|
||||
|
||||
# insert two rows with the PS
|
||||
# this is for showing that two execute commands can follow a bind command
|
||||
--PS_execute
|
||||
--PS_execute
|
||||
select * from t;
|
||||
|
||||
# close the prepared statement, and prepare a new PS,
|
||||
# this happens to be same as the first PS
|
||||
# also bind parameter for the PS
|
||||
--PS_close
|
||||
--PS_prepare INSERT INTO t(j) VALUES (?);
|
||||
--PS_bind node1
|
||||
|
||||
# start a transaction and make one update
|
||||
# leaving the transaction open
|
||||
begin;
|
||||
update t set j='node1' where i=1;
|
||||
|
||||
# replicate a transaction from node2, which BF aborts the open
|
||||
# transaction in node1
|
||||
--connection node_2
|
||||
update t set j='node2' where i=1;
|
||||
|
||||
# wait until the BF has completed, and update from node_2 has committed
|
||||
--connection node_1a
|
||||
--let $wait_condition = SELECT COUNT(*) = 1 FROM t WHERE j='node2'
|
||||
--source include/wait_condition.inc
|
||||
|
||||
# continue the open transaction, trying to insert third row, deadlock is now observed
|
||||
--connection node_1
|
||||
--error ER_LOCK_DEADLOCK
|
||||
--PS_execute
|
||||
|
||||
# try to insert one more row
|
||||
--PS_execute
|
||||
commit;
|
||||
|
||||
select * from t;
|
||||
|
||||
drop table t;
|
@ -61,19 +61,7 @@ UPDATE t1 SET f2 = 'd' WHERE f1 > 3;
|
||||
|
||||
# Kill node #2 while IST is in progress
|
||||
--connection node_2
|
||||
|
||||
# Kill the connected server
|
||||
--disable_reconnect
|
||||
|
||||
--perl
|
||||
my $pid_filename = $ENV{'KILL_NODE_PIDFILE'};
|
||||
my $mysqld_pid = `cat $pid_filename`;
|
||||
chomp($mysqld_pid);
|
||||
system("kill -9 $mysqld_pid");
|
||||
exit(0);
|
||||
EOF
|
||||
|
||||
--source include/wait_until_disconnected.inc
|
||||
--source include/kill_galera.inc
|
||||
|
||||
--connection node_1
|
||||
--source include/wait_until_connected_again.inc
|
||||
|
@ -16,21 +16,23 @@ SET GLOBAL wsrep_slave_threads=2;
|
||||
|
||||
--let $applier_thread = `SELECT ID FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle' LIMIT 1`
|
||||
|
||||
--disable_query_log
|
||||
--replace_result $applier_thread ID
|
||||
--error ER_KILL_DENIED_ERROR,ER_KILL_DENIED_ERROR
|
||||
--eval KILL $applier_thread
|
||||
|
||||
--replace_result $applier_thread ID
|
||||
--error ER_KILL_DENIED_ERROR,ER_KILL_DENIED_ERROR
|
||||
--eval KILL QUERY $applier_thread
|
||||
|
||||
--let $aborter_thread = `SELECT ID FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep aborter idle' LIMIT 1`
|
||||
|
||||
--replace_result $aborter_thread ID
|
||||
--error ER_KILL_DENIED_ERROR,ER_KILL_DENIED_ERROR
|
||||
--eval KILL $aborter_thread
|
||||
|
||||
--replace_result $aborter_thread ID
|
||||
--error ER_KILL_DENIED_ERROR,ER_KILL_DENIED_ERROR
|
||||
--eval KILL QUERY $aborter_thread
|
||||
--enable_query_log
|
||||
|
||||
SET GLOBAL wsrep_slave_threads=DEFAULT;
|
||||
|
||||
|
41
mysql-test/suite/galera_3nodes/r/galera_garbd_backup.result
Normal file
41
mysql-test/suite/galera_3nodes/r/galera_garbd_backup.result
Normal file
@ -0,0 +1,41 @@
|
||||
connection node_1;
|
||||
connection node_1;
|
||||
connection node_2;
|
||||
connection node_3;
|
||||
connection node_1;
|
||||
SET GLOBAL innodb_max_dirty_pages_pct=99;
|
||||
SET GLOBAL innodb_max_dirty_pages_pct_lwm=99;
|
||||
connection node_1;
|
||||
CREATE TABLE t1 (f1 INTEGER, f2 varchar(1024)) Engine=InnoDB;
|
||||
CREATE TABLE ten (f1 INTEGER) ENGINE=InnoDB;
|
||||
INSERT INTO ten VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
|
||||
INSERT INTO t1 (f2) SELECT REPEAT('x', 1024) FROM ten AS a1, ten AS a2, ten AS a3, ten AS a4;
|
||||
connection node_2;
|
||||
Killing node #3 to free ports for garbd ...
|
||||
connection node_3;
|
||||
connection node_1;
|
||||
SET GLOBAL debug_dbug = "+d,sync.wsrep_donor_state";
|
||||
Starting garbd ...
|
||||
SET SESSION debug_sync = "now WAIT_FOR sync.wsrep_donor_state_reached";
|
||||
SET GLOBAL innodb_max_dirty_pages_pct_lwm=0;
|
||||
SET GLOBAL innodb_max_dirty_pages_pct=0;
|
||||
SET SESSION debug_sync = "now SIGNAL signal.wsrep_donor_state";
|
||||
SET GLOBAL debug_dbug = "";
|
||||
SET debug_sync='RESET';
|
||||
connection node_2;
|
||||
Killing garbd ...
|
||||
connection node_1;
|
||||
connection node_2;
|
||||
DROP TABLE t1;
|
||||
DROP TABLE ten;
|
||||
Restarting node #3 to satisfy MTR's end-of-test checks
|
||||
connection node_3;
|
||||
connection node_1;
|
||||
SET GLOBAL innodb_max_dirty_pages_pct = 75.000000;
|
||||
SET GLOBAL innodb_max_dirty_pages_pct_lwm = 0.000000;
|
||||
connection node_1;
|
||||
CALL mtr.add_suppression("WSREP: Protocol violation\. JOIN message sender 1\.0 \(.*\) is not in state transfer \(SYNCED\)");
|
||||
connection node_2;
|
||||
CALL mtr.add_suppression("WSREP: Protocol violation\. JOIN message sender 1\.0 \(.*\) is not in state transfer \(SYNCED\)");
|
||||
connection node_3;
|
||||
CALL mtr.add_suppression("WSREP: Protocol violation\. JOIN message sender 1\.0 \(.*\) is not in state transfer \(SYNCED\)");
|
13
mysql-test/suite/galera_3nodes/t/galera_garbd_backup.cnf
Normal file
13
mysql-test/suite/galera_3nodes/t/galera_garbd_backup.cnf
Normal file
@ -0,0 +1,13 @@
|
||||
!include ../galera_3nodes.cnf
|
||||
|
||||
[mysqld]
|
||||
wsrep_sst_method=rsync
|
||||
|
||||
[mysqld.1]
|
||||
wsrep_node_name=node1
|
||||
|
||||
[mysqld.2]
|
||||
wsrep_node_name=node2
|
||||
|
||||
[mysqld.3]
|
||||
wsrep_node_name=node3
|
134
mysql-test/suite/galera_3nodes/t/galera_garbd_backup.test
Normal file
134
mysql-test/suite/galera_3nodes/t/galera_garbd_backup.test
Normal file
@ -0,0 +1,134 @@
|
||||
#
|
||||
# A very basic test for the galera arbitrator. We shut down node #3 and use its port allocation to start garbd.
|
||||
# As MTR does not allow multiple servers to be down at the same time, we are limited as to what we can test.
|
||||
#
|
||||
|
||||
--source include/galera_cluster.inc
|
||||
--source include/have_innodb.inc
|
||||
--source include/have_garbd.inc
|
||||
--source include/big_test.inc
|
||||
--source include/have_debug.inc
|
||||
--source include/have_debug_sync.inc
|
||||
|
||||
--connection node_1
|
||||
# Save original auto_increment_offset values.
|
||||
--let $node_1=node_1
|
||||
--let $node_2=node_2
|
||||
--let $node_3=node_3
|
||||
|
||||
--let $galera_connection_name = node_3
|
||||
--let $galera_server_number = 3
|
||||
--source include/galera_connect.inc
|
||||
--source suite/galera/include/galera_base_port.inc
|
||||
--let $NODE_GALERAPORT_3 = $_NODE_GALERAPORT
|
||||
|
||||
--source ../galera/include/auto_increment_offset_save.inc
|
||||
|
||||
# Save galera ports
|
||||
--connection node_1
|
||||
--source suite/galera/include/galera_base_port.inc
|
||||
--let $NODE_GALERAPORT_1 = $_NODE_GALERAPORT
|
||||
--let $datadir= `SELECT @@datadir`
|
||||
|
||||
--let $innodb_max_dirty_pages_pct = `SELECT @@innodb_max_dirty_pages_pct`
|
||||
--let $innodb_max_dirty_pages_pct_lwm = `SELECT @@innodb_max_dirty_pages_pct_lwm`
|
||||
|
||||
SET GLOBAL innodb_max_dirty_pages_pct=99;
|
||||
SET GLOBAL innodb_max_dirty_pages_pct_lwm=99;
|
||||
|
||||
--connection node_1
|
||||
CREATE TABLE t1 (f1 INTEGER, f2 varchar(1024)) Engine=InnoDB;
|
||||
CREATE TABLE ten (f1 INTEGER) ENGINE=InnoDB;
|
||||
INSERT INTO ten VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
|
||||
INSERT INTO t1 (f2) SELECT REPEAT('x', 1024) FROM ten AS a1, ten AS a2, ten AS a3, ten AS a4;
|
||||
|
||||
--connection node_2
|
||||
--source suite/galera/include/galera_base_port.inc
|
||||
--let $NODE_GALERAPORT_2 = $_NODE_GALERAPORT
|
||||
|
||||
--echo Killing node #3 to free ports for garbd ...
|
||||
--connection node_3
|
||||
--source include/shutdown_mysqld.inc
|
||||
|
||||
--connection node_1
|
||||
--let $wait_condition = SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'
|
||||
--source include/wait_condition.inc
|
||||
|
||||
# stop SST donor thread when node is in donor state
|
||||
SET GLOBAL debug_dbug = "+d,sync.wsrep_donor_state";
|
||||
|
||||
--echo Starting garbd ...
|
||||
--exec $MTR_GARBD_EXE --address "gcomm://127.0.0.1:$NODE_GALERAPORT_1" --group my_wsrep_cluster --donor node1 --sst backup --options 'base_port=$NODE_GALERAPORT_3' > $MYSQL_TMP_DIR/garbd.log 2>&1 &
|
||||
|
||||
SET SESSION debug_sync = "now WAIT_FOR sync.wsrep_donor_state_reached";
|
||||
|
||||
#
|
||||
# get hash of data directory contents before BP dirty page flushing
|
||||
#
|
||||
--exec find $datadir -type f ! -name tables_flushed ! -name backup_sst_complete -exec md5sum {} \; | md5sum >$MYSQLTEST_VARDIR/tmp/innodb_before
|
||||
|
||||
# this should force buffer pool flushing, if not already done by donor state change transfer
|
||||
SET GLOBAL innodb_max_dirty_pages_pct_lwm=0;
|
||||
SET GLOBAL innodb_max_dirty_pages_pct=0;
|
||||
|
||||
--disable_query_log
|
||||
--disable_result_log
|
||||
select f1 from t1;
|
||||
select * from ten;
|
||||
--enable_result_log
|
||||
--enable_query_log
|
||||
|
||||
#
|
||||
#
|
||||
# record the hash of data directory contents after BP dirty page flushing
|
||||
#
|
||||
--exec find $datadir -type f ! -name tables_flushed ! -name backup_sst_complete -exec md5sum {} \; | md5sum >$MYSQLTEST_VARDIR/tmp/innodb_after
|
||||
|
||||
# there should be no disk writes
|
||||
--diff_files $MYSQLTEST_VARDIR/tmp/innodb_before $MYSQLTEST_VARDIR/tmp/innodb_after
|
||||
|
||||
SET SESSION debug_sync = "now SIGNAL signal.wsrep_donor_state";
|
||||
SET GLOBAL debug_dbug = "";
|
||||
SET debug_sync='RESET';
|
||||
|
||||
--connection node_2
|
||||
|
||||
#
|
||||
# garbd will die automatically, because of the backup SST script
|
||||
# but just to be sure, sending explicit kill here, as well
|
||||
#
|
||||
--echo Killing garbd ...
|
||||
# FreeBSD's /bin/pkill only supports short versions of the options:
|
||||
# -o Select only the oldest (least recently started)
|
||||
# -f Match against full argument lists
|
||||
--error 0,1
|
||||
--exec pkill -o -f garbd.*$NODE_GALERAPORT_3
|
||||
|
||||
--connection node_1
|
||||
--let $wait_condition = SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'
|
||||
--source include/wait_condition.inc
|
||||
|
||||
--connection node_2
|
||||
|
||||
DROP TABLE t1;
|
||||
DROP TABLE ten;
|
||||
|
||||
--echo Restarting node #3 to satisfy MTR's end-of-test checks
|
||||
--connection node_3
|
||||
let $restart_noprint=2;
|
||||
--source include/start_mysqld.inc
|
||||
|
||||
--connection node_1
|
||||
--eval SET GLOBAL innodb_max_dirty_pages_pct = $innodb_max_dirty_pages_pct
|
||||
--eval SET GLOBAL innodb_max_dirty_pages_pct_lwm = $innodb_max_dirty_pages_pct_lwm
|
||||
|
||||
--source ../galera/include/auto_increment_offset_restore.inc
|
||||
|
||||
--connection node_1
|
||||
CALL mtr.add_suppression("WSREP: Protocol violation\. JOIN message sender 1\.0 \(.*\) is not in state transfer \(SYNCED\)");
|
||||
|
||||
--connection node_2
|
||||
CALL mtr.add_suppression("WSREP: Protocol violation\. JOIN message sender 1\.0 \(.*\) is not in state transfer \(SYNCED\)");
|
||||
|
||||
--connection node_3
|
||||
CALL mtr.add_suppression("WSREP: Protocol violation\. JOIN message sender 1\.0 \(.*\) is not in state transfer \(SYNCED\)");
|
@ -14,4 +14,5 @@ GCF-1018B : MDEV-18534 wsrep::transaction::adopt(): Assertion `transaction.is_st
|
||||
GCF-1060 : MDEV-20848 galera_sr.GCF_1060
|
||||
GCF-585 : MDEV-24698 galera_sr.GCF-585 MTR failed with SIGABRT: no such a transition REPLICATING -> APPLYING
|
||||
galera-features#56 : MDEV-24896
|
||||
GCF-1060 : MDEV-26528 wrong usage of mutex LOCK_thd_kill and LOCK_thd_kill
|
||||
galera_sr_shutdown_master : MDEV-23612: galera_sr.galera_sr_shutdown_master MTR failed: WSREP_SST: [ERROR] Possible timeout in receving first data from donor in gtid stage
|
||||
|
@ -1,23 +1,36 @@
|
||||
connection node_2;
|
||||
connection node_1;
|
||||
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY);
|
||||
connection node_1;
|
||||
connection node_2;
|
||||
connect node_2a, 127.0.0.1, root, , test, $NODE_MYPORT_2;
|
||||
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY);
|
||||
connection node_2;
|
||||
SET SESSION wsrep_trx_fragment_size=1;
|
||||
START TRANSACTION;
|
||||
INSERT INTO t1 VALUES (1);
|
||||
SET @@global.debug_dbug="+d,ha_index_init_fail";
|
||||
ROLLBACK;
|
||||
connection node_2;
|
||||
SELECT COUNT(*) `Expect 0` FROM mysql.wsrep_streaming_log;
|
||||
Expect 0
|
||||
0
|
||||
connection node_1;
|
||||
SET @@global.debug_dbug="";
|
||||
SELECT COUNT(*) `Expect 1` FROM mysql.wsrep_streaming_log;
|
||||
Expect 1
|
||||
1
|
||||
SET SESSION wsrep_on=OFF;
|
||||
DELETE FROM mysql.wsrep_streaming_log;
|
||||
SET SESSION wsrep_on=ON;
|
||||
SET @@global.debug_dbug="+d,ha_index_init_fail";
|
||||
ROLLBACK;
|
||||
connection node_1;
|
||||
SET SESSION wsrep_sync_wait = 0;
|
||||
SELECT COUNT(*) `Expect 0` FROM mysql.wsrep_streaming_log;
|
||||
Expect 0
|
||||
0
|
||||
connection node_2;
|
||||
SET @@global.debug_dbug="";
|
||||
SET SESSION wsrep_sync_wait = 0;
|
||||
SELECT COUNT(*) `Expect 1` FROM mysql.wsrep_streaming_log;
|
||||
Expect 1
|
||||
1
|
||||
connection node_2;
|
||||
SET GLOBAL wsrep_on=OFF;
|
||||
# restart
|
||||
SELECT COUNT(*) `Expect 0` FROM mysql.wsrep_streaming_log;
|
||||
Expect 0
|
||||
0
|
||||
DROP TABLE t1;
|
||||
CALL mtr.add_suppression("WSREP: Failed to init table for index scan");
|
||||
CALL mtr.add_suppression("WSREP: Failed to apply write set");
|
||||
CALL mtr.add_suppression("Failed to report last committed");
|
||||
|
@ -5,29 +5,76 @@
|
||||
--source include/galera_cluster.inc
|
||||
--source include/have_debug.inc
|
||||
|
||||
--let $node_1=node_1
|
||||
--let $node_2=node_2
|
||||
--source suite/galera/include/auto_increment_offset_save.inc
|
||||
|
||||
--connect node_2a, 127.0.0.1, root, , test, $NODE_MYPORT_2
|
||||
|
||||
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY);
|
||||
|
||||
--connection node_1
|
||||
--let $wsrep_cluster_address_orig = `SELECT @@wsrep_cluster_address`
|
||||
--connection node_2
|
||||
SET SESSION wsrep_trx_fragment_size=1;
|
||||
START TRANSACTION;
|
||||
INSERT INTO t1 VALUES (1);
|
||||
# This will result in failure to remove fragments
|
||||
# from streaming log, in the following ROLLBACK.
|
||||
SELECT COUNT(*) `Expect 1` FROM mysql.wsrep_streaming_log;
|
||||
|
||||
#
|
||||
# Issue ROLLBACK and make sure it fails to clean up
|
||||
# the streaming log. Failure to remove fragments
|
||||
# results in apply failure of the rollback fragment.
|
||||
# The node should disconnect from the cluster.
|
||||
#
|
||||
SET @@global.debug_dbug="+d,ha_index_init_fail";
|
||||
ROLLBACK;
|
||||
|
||||
--connection node_2
|
||||
|
||||
#
|
||||
# Expect the cluster to shrink
|
||||
#
|
||||
--connection node_1
|
||||
SET SESSION wsrep_sync_wait = 0;
|
||||
--let $wait_condition = SELECT VARIABLE_VALUE = 1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'
|
||||
--source include/wait_condition.inc
|
||||
|
||||
#
|
||||
# ROLLBACK should clean up the streaming log just fine in node 1
|
||||
#
|
||||
SELECT COUNT(*) `Expect 0` FROM mysql.wsrep_streaming_log;
|
||||
|
||||
|
||||
--connection node_1
|
||||
#
|
||||
# Expect the failure on ROLLBACK to leave a entry in streaming log
|
||||
#
|
||||
--connection node_2
|
||||
SET @@global.debug_dbug="";
|
||||
SET SESSION wsrep_sync_wait = 0;
|
||||
# Expect node to be disconnected
|
||||
--let wait_condition = SELECT VARIABLE_VALUE = 'Disconnected' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status';
|
||||
--source include/wait_condition.inc
|
||||
|
||||
SELECT COUNT(*) `Expect 1` FROM mysql.wsrep_streaming_log;
|
||||
|
||||
SET SESSION wsrep_on=OFF;
|
||||
DELETE FROM mysql.wsrep_streaming_log;
|
||||
SET SESSION wsrep_on=ON;
|
||||
|
||||
#
|
||||
# Restart node 2, so that it joins the cluster back
|
||||
#
|
||||
--connection node_2
|
||||
SET GLOBAL wsrep_on=OFF;
|
||||
--source include/restart_mysqld.inc
|
||||
|
||||
#
|
||||
# After restart, the streaming log is empty in node 2
|
||||
#
|
||||
SELECT COUNT(*) `Expect 0` FROM mysql.wsrep_streaming_log;
|
||||
|
||||
#
|
||||
# Cleanup
|
||||
#
|
||||
DROP TABLE t1;
|
||||
|
||||
CALL mtr.add_suppression("WSREP: Failed to init table for index scan");
|
||||
CALL mtr.add_suppression("WSREP: Failed to apply write set");
|
||||
CALL mtr.add_suppression("Failed to report last committed");
|
||||
|
||||
--source suite/galera/include/auto_increment_offset_restore.inc
|
||||
|
@ -12,6 +12,9 @@
|
||||
# Change Date: #
|
||||
# Change: #
|
||||
################################################################################
|
||||
|
||||
--source include/have_des.inc
|
||||
|
||||
set time_zone="+03:00";
|
||||
--echo #
|
||||
--echo # NUMERIC FUNCTIONS
|
||||
|
@ -1,5 +1,9 @@
|
||||
# This test is slow on buildbot.
|
||||
--source include/big_test.inc
|
||||
--disable_query_log
|
||||
# This may be triggered on a slow system or one that lacks native AIO.
|
||||
call mtr.add_suppression("InnoDB: Trying to delete tablespace.*pending operations");
|
||||
--enable_query_log
|
||||
create table innodb_normal (c1 int not null auto_increment primary key, b char(200)) engine=innodb;
|
||||
create table innodb_page_compressed1 (c1 int not null auto_increment primary key, b char(200)) engine=innodb page_compressed=1 page_compression_level=1;
|
||||
create table innodb_page_compressed2 (c1 int not null auto_increment primary key, b char(200)) engine=innodb page_compressed=1 page_compression_level=2;
|
||||
|
@ -240,3 +240,13 @@ SELECT length(f1) FROM t1;
|
||||
length(f1)
|
||||
8459264
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# MDEV-27858 Assertion `page_dir_get_n_heap(new_page) == 2U' failed in PageBulk::init
|
||||
#
|
||||
CREATE TABLE t1 (c INT) ENGINE=InnoDB;
|
||||
CREATE TABLE t2 (c INT) ENGINE=InnoDB;
|
||||
INSERT INTO t2 VALUES (1);
|
||||
LOCK TABLES t1 WRITE,t2 WRITE;
|
||||
INSERT INTO t1 VALUES (1);
|
||||
INSERT INTO t2 VALUES (1);
|
||||
DROP TABLE t2, t1;
|
||||
|
@ -1,3 +1,4 @@
|
||||
SET GLOBAL innodb_fast_shutdown=0;
|
||||
# restart: --innodb-data-home-dir=MYSQLTEST_VARDIR/tmp/row_format_redundant --innodb-log-group-home-dir=MYSQLTEST_VARDIR/tmp/row_format_redundant --innodb-data-file-path=ibdata1:1M:autoextend --innodb-undo-tablespaces=0 --innodb-stats-persistent=0
|
||||
SET GLOBAL innodb_file_per_table=1;
|
||||
#
|
||||
@ -8,25 +9,17 @@ SET GLOBAL innodb_file_per_table=ON;
|
||||
create table t1 (a int not null, d varchar(15) not null, b
|
||||
varchar(198) not null, c char(156)) engine=InnoDB
|
||||
row_format=redundant;
|
||||
insert into t1 values(123, 'abcdef', 'jghikl', 'mnop');
|
||||
insert into t1 values(456, 'abcdef', 'jghikl', 'mnop');
|
||||
insert into t1 values(789, 'abcdef', 'jghikl', 'mnop');
|
||||
insert into t1 values(134, 'kasdfsdsadf', 'adfjlasdkfjasd', 'adfsadflkasdasdfljasdf');
|
||||
insert into t1 select * from t1;
|
||||
insert into t1 select * from t1;
|
||||
insert into t1 select * from t1;
|
||||
insert into t1 select * from t1;
|
||||
insert into t1 select * from t1;
|
||||
insert into t1 select * from t1;
|
||||
insert into t1 select * from t1;
|
||||
insert into t1 select * from t1;
|
||||
insert into t1 select * from t1;
|
||||
insert into t1 select * from t1;
|
||||
create temporary table t like t1;
|
||||
insert into t values(123, 'abcdef', 'jghikl', 'mnop');
|
||||
insert into t values(456, 'abcdef', 'jghikl', 'mnop');
|
||||
insert into t values(789, 'abcdef', 'jghikl', 'mnop');
|
||||
insert into t values(134, 'kasdfsdsadf', 'adfjlasdkfjasd', 'adfsadflkasdasdfljasdf');
|
||||
insert into t1 select a,d,b,c from t, seq_1_to_1024;
|
||||
SET GLOBAL innodb_file_per_table=OFF;
|
||||
create table t2 (a int not null, d varchar(15) not null, b
|
||||
varchar(198) not null, c char(156), fulltext ftsic(c)) engine=InnoDB
|
||||
row_format=redundant;
|
||||
insert into t2 select * from t1;
|
||||
insert into t2 select a,d,b,c from t, seq_1_to_1024;
|
||||
create table t3 (a int not null, d varchar(15) not null, b varchar(198),
|
||||
c varchar(150), index k1(c(99), b(56)), index k2(b(5), c(10))) engine=InnoDB
|
||||
row_format=redundant;
|
||||
|
26
mysql-test/suite/innodb/t/alter_crash_rebuild.test
Normal file
26
mysql-test/suite/innodb/t/alter_crash_rebuild.test
Normal file
@ -0,0 +1,26 @@
|
||||
--source include/have_innodb.inc
|
||||
--source include/have_debug.inc
|
||||
--source include/have_debug_sync.inc
|
||||
|
||||
CREATE TABLE t1 (a INT NOT NULL) ENGINE=InnoDB STATS_PERSISTENT=0;
|
||||
|
||||
connect ddl,localhost,root;
|
||||
SET DEBUG_SYNC='after_trx_committed_in_memory SIGNAL stuck WAIT_FOR ever EXECUTE 2';
|
||||
send ALTER TABLE t1 ADD PRIMARY KEY(a);
|
||||
|
||||
connection default;
|
||||
SET DEBUG_SYNC='now WAIT_FOR stuck';
|
||||
SET DEBUG_SYNC='now SIGNAL ever';
|
||||
SET DEBUG_SYNC='now WAIT_FOR stuck';
|
||||
|
||||
SET GLOBAL innodb_log_checkpoint_now=ON;
|
||||
|
||||
--let $shutdown_timeout=0
|
||||
--source include/restart_mysqld.inc
|
||||
|
||||
disconnect ddl;
|
||||
|
||||
SHOW CREATE TABLE t1;
|
||||
SELECT * FROM t1;
|
||||
DROP TABLE t1;
|
||||
--source include/wait_all_purged.inc
|
@ -2,6 +2,11 @@
|
||||
-- source include/have_innodb_bzip2.inc
|
||||
-- source include/not_embedded.inc
|
||||
|
||||
--disable_query_log
|
||||
# This may be triggered on a slow system or one that lacks native AIO.
|
||||
call mtr.add_suppression("InnoDB: Trying to delete tablespace.*pending operations");
|
||||
--enable_query_log
|
||||
|
||||
# bzip2
|
||||
set global innodb_compression_algorithm = 5;
|
||||
|
||||
|
@ -4,6 +4,11 @@
|
||||
# The test can take very long time with valgrind
|
||||
--source include/not_valgrind.inc
|
||||
|
||||
--disable_query_log
|
||||
# This may be triggered on a slow system or one that lacks native AIO.
|
||||
call mtr.add_suppression("InnoDB: Trying to delete tablespace.*pending operations");
|
||||
--enable_query_log
|
||||
|
||||
# lz4
|
||||
set global innodb_compression_algorithm = 2;
|
||||
|
||||
|
@ -2,6 +2,11 @@
|
||||
-- source include/have_innodb_lzma.inc
|
||||
-- source include/not_embedded.inc
|
||||
|
||||
--disable_query_log
|
||||
# This may be triggered on a slow system or one that lacks native AIO.
|
||||
call mtr.add_suppression("InnoDB: Trying to delete tablespace.*pending operations");
|
||||
--enable_query_log
|
||||
|
||||
# lzma
|
||||
set global innodb_compression_algorithm = 4;
|
||||
|
||||
|
@ -2,6 +2,11 @@
|
||||
-- source include/have_innodb_lzo.inc
|
||||
-- source include/not_embedded.inc
|
||||
|
||||
--disable_query_log
|
||||
# This may be triggered on a slow system or one that lacks native AIO.
|
||||
call mtr.add_suppression("InnoDB: Trying to delete tablespace.*pending operations");
|
||||
--enable_query_log
|
||||
|
||||
# lzo
|
||||
set global innodb_compression_algorithm = 3;
|
||||
|
||||
|
@ -2,6 +2,10 @@
|
||||
--source include/not_embedded.inc
|
||||
|
||||
let $innodb_compression_algorithm_orig=`SELECT @@innodb_compression_algorithm`;
|
||||
--disable_query_log
|
||||
# This may be triggered on a slow system or one that lacks native AIO.
|
||||
call mtr.add_suppression("InnoDB: Trying to delete tablespace.*pending operations");
|
||||
--enable_query_log
|
||||
|
||||
# zlib
|
||||
set global innodb_compression_algorithm = 1;
|
||||
|
@ -3,6 +3,11 @@
|
||||
# This test is slow on buildbot.
|
||||
--source include/big_test.inc
|
||||
|
||||
--disable_query_log
|
||||
# This may be triggered on a slow system or one that lacks native AIO.
|
||||
call mtr.add_suppression("InnoDB: Trying to delete tablespace.*pending operations");
|
||||
--enable_query_log
|
||||
|
||||
# zlib
|
||||
set global innodb_compression_algorithm = 1;
|
||||
|
||||
|
@ -250,3 +250,14 @@ CREATE TABLE t1(f1 MEDIUMTEXT)ENGINE=InnoDB;
|
||||
INSERT INTO t1 VALUES(REPEAT(1, 8459264));
|
||||
SELECT length(f1) FROM t1;
|
||||
DROP TABLE t1;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-27858 Assertion `page_dir_get_n_heap(new_page) == 2U' failed in PageBulk::init
|
||||
--echo #
|
||||
CREATE TABLE t1 (c INT) ENGINE=InnoDB;
|
||||
CREATE TABLE t2 (c INT) ENGINE=InnoDB;
|
||||
INSERT INTO t2 VALUES (1);
|
||||
LOCK TABLES t1 WRITE,t2 WRITE;
|
||||
INSERT INTO t1 VALUES (1);
|
||||
INSERT INTO t2 VALUES (1);
|
||||
DROP TABLE t2, t1;
|
||||
|
@ -1,6 +1,7 @@
|
||||
--source include/have_innodb.inc
|
||||
# Embedded mode doesn't allow restarting
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_sequence.inc
|
||||
|
||||
--disable_query_log
|
||||
call mtr.add_suppression("InnoDB: Table `mysql`\\.`innodb_table_stats` not found");
|
||||
@ -21,6 +22,8 @@ let bugdir= $MYSQLTEST_VARDIR/tmp/row_format_redundant;
|
||||
--let $d=$d --innodb-data-file-path=ibdata1:1M:autoextend
|
||||
--let $d=$d --innodb-undo-tablespaces=0 --innodb-stats-persistent=0
|
||||
--let $restart_parameters= $d
|
||||
# Ensure that any DDL records from previous tests have been purged.
|
||||
SET GLOBAL innodb_fast_shutdown=0;
|
||||
--source include/restart_mysqld.inc
|
||||
|
||||
SET GLOBAL innodb_file_per_table=1;
|
||||
@ -35,27 +38,21 @@ create table t1 (a int not null, d varchar(15) not null, b
|
||||
varchar(198) not null, c char(156)) engine=InnoDB
|
||||
row_format=redundant;
|
||||
|
||||
insert into t1 values(123, 'abcdef', 'jghikl', 'mnop');
|
||||
insert into t1 values(456, 'abcdef', 'jghikl', 'mnop');
|
||||
insert into t1 values(789, 'abcdef', 'jghikl', 'mnop');
|
||||
insert into t1 values(134, 'kasdfsdsadf', 'adfjlasdkfjasd', 'adfsadflkasdasdfljasdf');
|
||||
insert into t1 select * from t1;
|
||||
insert into t1 select * from t1;
|
||||
insert into t1 select * from t1;
|
||||
insert into t1 select * from t1;
|
||||
insert into t1 select * from t1;
|
||||
insert into t1 select * from t1;
|
||||
insert into t1 select * from t1;
|
||||
insert into t1 select * from t1;
|
||||
insert into t1 select * from t1;
|
||||
insert into t1 select * from t1;
|
||||
create temporary table t like t1;
|
||||
|
||||
insert into t values(123, 'abcdef', 'jghikl', 'mnop');
|
||||
insert into t values(456, 'abcdef', 'jghikl', 'mnop');
|
||||
insert into t values(789, 'abcdef', 'jghikl', 'mnop');
|
||||
insert into t values(134, 'kasdfsdsadf', 'adfjlasdkfjasd', 'adfsadflkasdasdfljasdf');
|
||||
|
||||
insert into t1 select a,d,b,c from t, seq_1_to_1024;
|
||||
|
||||
SET GLOBAL innodb_file_per_table=OFF;
|
||||
create table t2 (a int not null, d varchar(15) not null, b
|
||||
varchar(198) not null, c char(156), fulltext ftsic(c)) engine=InnoDB
|
||||
row_format=redundant;
|
||||
|
||||
insert into t2 select * from t1;
|
||||
insert into t2 select a,d,b,c from t, seq_1_to_1024;
|
||||
|
||||
create table t3 (a int not null, d varchar(15) not null, b varchar(198),
|
||||
c varchar(150), index k1(c(99), b(56)), index k2(b(5), c(10))) engine=InnoDB
|
||||
|
@ -6,6 +6,9 @@
|
||||
|
||||
--disable_query_log
|
||||
call mtr.add_suppression("InnoDB: Difficult to find free blocks in the buffer pool");
|
||||
--disable_query_log
|
||||
# This may be triggered on a slow system.
|
||||
call mtr.add_suppression("InnoDB: Trying to delete tablespace.*pending operations");
|
||||
--enable_query_log
|
||||
|
||||
SET GLOBAL innodb_undo_log_truncate = 0;
|
||||
|
@ -14,7 +14,8 @@ FOUND 1 /Error: --no-check must be associated with --write option./ in my_restar
|
||||
FOUND 1 /unknown variable 'strict-check=innodb'/ in my_restart.err
|
||||
[7]: check the innochecksum with short form strict-check & no-check , an error is expected
|
||||
FOUND 1 /unknown option '-C'/ in my_restart.err
|
||||
FOUND 1 /unknown variable 'write=crc32'/ in my_restart.err
|
||||
FOUND 1 /ignoring option '--write' due to invalid value 'crc32'/ in my_restart.err
|
||||
FOUND 1 /Error: --no-check must be associated with --write option/ in my_restart.err
|
||||
# restart
|
||||
SELECT * FROM tab1;
|
||||
c1 c2
|
||||
|
@ -27,6 +27,7 @@ end-page 0
|
||||
page 0
|
||||
no-check FALSE
|
||||
allow-mismatches 0
|
||||
write FALSE
|
||||
page-type-summary FALSE
|
||||
page-type-dump MYSQLTEST_VARDIR/tmp/dump.txt
|
||||
per-page-details FALSE
|
||||
@ -54,6 +55,7 @@ See https://mariadb.com/kb/en/library/innochecksum/ for usage hints.
|
||||
-n, --no-check Ignore the checksum verification.
|
||||
-a, --allow-mismatches=#
|
||||
Maximum checksum mismatch allowed.
|
||||
-w, --write Rewrite the checksum.
|
||||
-S, --page-type-summary
|
||||
Display a count of each page type in a tablespace.
|
||||
-D, --page-type-dump=name
|
||||
@ -75,6 +77,7 @@ end-page 0
|
||||
page 0
|
||||
no-check FALSE
|
||||
allow-mismatches 0
|
||||
write FALSE
|
||||
page-type-summary FALSE
|
||||
page-type-dump (No default value)
|
||||
per-page-details FALSE
|
||||
|
@ -133,6 +133,7 @@ end-page 0
|
||||
page 0
|
||||
no-check FALSE
|
||||
allow-mismatches 0
|
||||
write FALSE
|
||||
page-type-summary FALSE
|
||||
page-type-dump MYSQLTEST_VARDIR/tmp/dump.txt
|
||||
per-page-details FALSE
|
||||
|
@ -57,9 +57,15 @@ let SEARCH_PATTERN= unknown option '-C';
|
||||
|
||||
--error 1
|
||||
--exec $INNOCHECKSUM --no-check --write=crc32 $MYSQLD_DATADIR/test/tab1.ibd 2> $SEARCH_FILE
|
||||
let SEARCH_PATTERN= unknown variable 'write=crc32';
|
||||
--let SEARCH_PATTERN= ignoring option '--write' due to invalid value 'crc32'
|
||||
--source include/search_pattern_in_file.inc
|
||||
|
||||
--error 1
|
||||
--exec $INNOCHECKSUM --no-check $MYSQLD_DATADIR/test/tab1.ibd 2> $SEARCH_FILE
|
||||
--let SEARCH_PATTERN= Error: --no-check must be associated with --write option
|
||||
--source include/search_pattern_in_file.inc
|
||||
|
||||
--exec $INNOCHECKSUM --no-check --write $MYSQLD_DATADIR/test/tab1.ibd
|
||||
--source include/start_mysqld.inc
|
||||
|
||||
SELECT * FROM tab1;
|
||||
|
@ -48,3 +48,11 @@ alter table t1 add partition (partition p0 values less than (20));
|
||||
ERROR HY000: Duplicate partition name p0
|
||||
alter table t1 add partition (partition p1 values less than (20)) /* comment */;
|
||||
drop table t1;
|
||||
#
|
||||
# MDEV-28079 Shutdown hangs after altering innodb partition fts table
|
||||
#
|
||||
CREATE TABLE t1(f1 INT, f2 CHAR(100))ENGINE=InnoDB PARTITION BY HASH(f1) PARTITIONS 2;
|
||||
ALTER TABLE t1 ADD FULLTEXT(f2);
|
||||
InnoDB 0 transactions not purged
|
||||
DROP TABLE t1;
|
||||
# End of 10.6 tests
|
||||
|
@ -9,3 +9,11 @@ SET GLOBAL innodb_read_only_compressed=OFF;
|
||||
--disable_query_log
|
||||
SET GLOBAL innodb_read_only_compressed=@save_innodb_read_only_compressed;
|
||||
--enable_query_log
|
||||
--echo #
|
||||
--echo # MDEV-28079 Shutdown hangs after altering innodb partition fts table
|
||||
--echo #
|
||||
CREATE TABLE t1(f1 INT, f2 CHAR(100))ENGINE=InnoDB PARTITION BY HASH(f1) PARTITIONS 2;
|
||||
ALTER TABLE t1 ADD FULLTEXT(f2);
|
||||
--source ../innodb/include/wait_all_purged.inc
|
||||
DROP TABLE t1;
|
||||
--echo # End of 10.6 tests
|
||||
|
@ -3,7 +3,6 @@
|
||||
#
|
||||
|
||||
--source include/no_protocol.inc
|
||||
--source include/have_innodb.inc
|
||||
|
||||
--echo # SET-UP
|
||||
CREATE DATABASE nested_sp;
|
||||
@ -17,7 +16,7 @@ CREATE TABLE t1(
|
||||
CREATE TABLE t2(
|
||||
n INT UNSIGNED NOT NULL,
|
||||
f BIGINT UNSIGNED
|
||||
) engine=innodb;
|
||||
);
|
||||
|
||||
--echo ############################
|
||||
--echo # Creating Stored Programs #
|
||||
|
@ -167,7 +167,7 @@ data INT NOT NULL
|
||||
CREATE TABLE t2(
|
||||
n INT UNSIGNED NOT NULL,
|
||||
f BIGINT UNSIGNED
|
||||
) engine=innodb;
|
||||
);
|
||||
############################
|
||||
# Creating Stored Programs #
|
||||
############################
|
||||
|
@ -167,7 +167,7 @@ data INT NOT NULL
|
||||
CREATE TABLE t2(
|
||||
n INT UNSIGNED NOT NULL,
|
||||
f BIGINT UNSIGNED
|
||||
) engine=innodb;
|
||||
);
|
||||
############################
|
||||
# Creating Stored Programs #
|
||||
############################
|
||||
|
@ -13,7 +13,7 @@ data INT NOT NULL
|
||||
CREATE TABLE t2(
|
||||
n INT UNSIGNED NOT NULL,
|
||||
f BIGINT UNSIGNED
|
||||
) engine=innodb;
|
||||
);
|
||||
############################
|
||||
# Creating Stored Programs #
|
||||
############################
|
||||
@ -67,6 +67,7 @@ END WHILE;
|
||||
END|
|
||||
CREATE TRIGGER trg AFTER INSERT ON t1 FOR EACH ROW
|
||||
CALL ifac(10)|
|
||||
ALTER TABLE t2 ENGINE=InnoDB;
|
||||
#####################
|
||||
# Executing queries #
|
||||
#####################
|
||||
@ -1199,7 +1200,7 @@ data INT NOT NULL
|
||||
CREATE TABLE t2(
|
||||
n INT UNSIGNED NOT NULL,
|
||||
f BIGINT UNSIGNED
|
||||
) engine=innodb;
|
||||
);
|
||||
############################
|
||||
# Creating Stored Programs #
|
||||
############################
|
||||
|
@ -101,6 +101,7 @@ CREATE TRIGGER trg4 BEFORE DELETE ON t1 FOR EACH ROW
|
||||
SET @del:= @del + 1|
|
||||
CREATE TRIGGER trg5 AFTER DELETE ON t1 FOR EACH ROW
|
||||
SET @del:= @del + 8 + old.j|
|
||||
ALTER TABLE t2 ENGINE=InnoDB;
|
||||
#####################
|
||||
# Executing queries #
|
||||
#####################
|
||||
@ -159,6 +160,7 @@ WHERE CURRENT_SCHEMA='stored_programs' AND
|
||||
ORDER BY OBJECT_NAME,NESTING_EVENT_LEVEL,SQL_TEXT;
|
||||
EVENT_NAME SQL_TEXT OBJECT_NAME NESTING_EVENT_TYPE NESTING_EVENT_LEVEL
|
||||
statement/scheduler/event NULL NULL NULL 0
|
||||
statement/sql/alter_table ALTER TABLE t2 ENGINE=InnoDB NULL NULL 0
|
||||
statement/sql/call_procedure CALL SampleProc1(30,40,50) NULL NULL 0
|
||||
statement/sql/call_procedure CALL SampleProc2("Jwalamukhi",34) NULL NULL 0
|
||||
statement/sql/call_procedure CALL SampleProc3() NULL NULL 0
|
||||
@ -375,7 +377,7 @@ data INT NOT NULL
|
||||
CREATE TABLE t2(
|
||||
n INT UNSIGNED NOT NULL,
|
||||
f BIGINT UNSIGNED
|
||||
) engine=innodb;
|
||||
);
|
||||
############################
|
||||
# Creating Stored Programs #
|
||||
############################
|
||||
@ -429,6 +431,7 @@ END WHILE;
|
||||
END|
|
||||
CREATE TRIGGER trg AFTER INSERT ON t1 FOR EACH ROW
|
||||
CALL ifac(10)|
|
||||
ALTER TABLE t2 ENGINE=InnoDB;
|
||||
#####################
|
||||
# Executing queries #
|
||||
#####################
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user