Automatic merge with 5.1
This commit is contained in:
commit
056cebe61a
@ -1,25 +1,20 @@
|
||||
MariaDB and MySQL have identical install methods. In this document we
|
||||
describe how to install MariaDB; However all documentation at www.mysql.com
|
||||
also applies.
|
||||
|
||||
2.9. Installing MySQL from tar.gz Packages on Other Unix-Like Systems
|
||||
|
||||
This section covers the installation of MySQL binary distributions
|
||||
2.9. Installing MariaDB from tar.gz Packages on Other Unix-Like Systems
|
||||
|
||||
This section covers the installation of MariaDB binary distributions
|
||||
that are provided for various platforms in the form of compressed
|
||||
tar files (files with a .tar.gz extension). See Section 2.1.2.4,
|
||||
"MySQL Binaries Compiled by Sun Microsystems, Inc.," for a
|
||||
detailed list.
|
||||
tar files (files with a .tar.gz extension).
|
||||
|
||||
To obtain MySQL, see Section 2.1.3, "How to Get MySQL."
|
||||
|
||||
MySQL tar file binary distributions have names of the form
|
||||
mysql-VERSION-OS.tar.gz, where VERSION is a number (for example,
|
||||
MariaDB tar file binary distributions have names of the form
|
||||
mariadb-VERSION-OS.tar.gz, where VERSION is a number (for example,
|
||||
5.1.39), and OS indicates the type of operating system for which
|
||||
the distribution is intended (for example, pc-linux-i686).
|
||||
|
||||
In addition to these generic packages, we also offer binaries in
|
||||
platform-specific package formats for selected platforms. See
|
||||
Section 2.2, "Standard MySQL Installation Using a Binary
|
||||
Distribution," for more information on how to install these.
|
||||
|
||||
You need the following tools to install a MySQL tar file binary
|
||||
You need the following tools to install a MariaDB tar file binary
|
||||
distribution:
|
||||
|
||||
* GNU gunzip to uncompress the distribution.
|
||||
@ -33,11 +28,14 @@
|
||||
program. On other systems with a deficient tar, you should
|
||||
install GNU tar first.
|
||||
|
||||
If you run into problems and need to file a bug report, please use
|
||||
the instructions in Section 1.6, "How to Report Bugs or Problems."
|
||||
If you run into problems and need to file a bug report,
|
||||
please report them to: http://bugs.launchpad.net/maria
|
||||
|
||||
See the instructions in Section 1.6, "How to Report Bugs or Problems."
|
||||
|
||||
The basic commands that you must execute to install and use a
|
||||
MySQL binary distribution are:
|
||||
MariaDB binary distribution are:
|
||||
|
||||
shell> groupadd mysql
|
||||
shell> useradd -g mysql mysql
|
||||
shell> cd /usr/local
|
||||
@ -53,7 +51,7 @@ shell> bin/mysqld_safe --user=mysql &
|
||||
|
||||
Note
|
||||
|
||||
This procedure does not set up any passwords for MySQL accounts.
|
||||
This procedure does not set up any passwords for MariaDB accounts.
|
||||
After following the procedure, proceed to Section 2.11,
|
||||
"Post-Installation Setup and Testing."
|
||||
|
||||
@ -80,8 +78,8 @@ shell> useradd -g mysql mysql
|
||||
shell> cd /usr/local
|
||||
|
||||
3. Obtain a distribution file using the instructions in Section
|
||||
2.1.3, "How to Get MySQL." For a given release, binary
|
||||
distributions for all platforms are built from the same MySQL
|
||||
2.1.3, "How to Get MariaDB." For a given release, binary
|
||||
distributions for all platforms are built from the same MariaDB
|
||||
source distribution.
|
||||
|
||||
4. Unpack the distribution, which creates the installation
|
||||
@ -106,7 +104,7 @@ shell> cd mysql
|
||||
+ The bin directory contains client programs and the
|
||||
server. You should add the full path name of this
|
||||
directory to your PATH environment variable so that your
|
||||
shell finds the MySQL programs properly. See Section
|
||||
shell finds the MariaDB programs properly. See Section
|
||||
2.14, "Environment Variables."
|
||||
|
||||
+ The scripts directory contains the mysql_install_db
|
||||
@ -126,8 +124,8 @@ shell> chgrp -R mysql .
|
||||
the mysql user. The second changes the group attribute to the
|
||||
mysql group.
|
||||
|
||||
7. If you have not installed MySQL before, you must create the
|
||||
MySQL data directory and initialize the grant tables:
|
||||
7. If you have not installed MariaDB before, you must create the
|
||||
MariaDB data directory and initialize the grant tables:
|
||||
shell> scripts/mysql_install_db --user=mysql
|
||||
If you run the command as root, include the --user option as
|
||||
shown. If you run the command while logged in as that user,
|
||||
@ -137,25 +135,26 @@ shell> scripts/mysql_install_db --user=mysql
|
||||
After creating or updating the grant tables, you need to
|
||||
restart the server manually.
|
||||
|
||||
8. Most of the MySQL installation can be owned by root if you
|
||||
8. Most of the MariaDB installation can be owned by root if you
|
||||
like. The exception is that the data directory must be owned
|
||||
by mysql. To accomplish this, run the following commands as
|
||||
root in the installation directory:
|
||||
|
||||
shell> chown -R root .
|
||||
shell> chown -R mysql data
|
||||
|
||||
9. If you want MySQL to start automatically when you boot your
|
||||
9. If you want MariaDB to start automatically when you boot your
|
||||
machine, you can copy support-files/mysql.server to the
|
||||
location where your system has its startup files. More
|
||||
information can be found in the support-files/mysql.server
|
||||
script itself and in Section 2.11.2.2, "Starting and Stopping
|
||||
MySQL Automatically."
|
||||
MariaDB Automatically."
|
||||
10. You can set up new accounts using the bin/mysql_setpermission
|
||||
script if you install the DBI and DBD::mysql Perl modules. See
|
||||
Section 4.6.14, "mysql_setpermission --- Interactively Set
|
||||
Permissions in Grant Tables." For Perl module installation
|
||||
instructions, see Section 2.15, "Perl Installation Notes."
|
||||
11. If you would like to use mysqlaccess and have the MySQL
|
||||
11. If you would like to use mysqlaccess and have the MariaDB
|
||||
distribution in some nonstandard location, you must change the
|
||||
location where mysqlaccess expects to find the mysql client.
|
||||
Edit the bin/mysqlaccess script at approximately line 18.
|
||||
@ -166,7 +165,7 @@ $MYSQL = '/usr/local/bin/mysql'; # path to mysql executable
|
||||
error will occur when you run mysqlaccess.
|
||||
|
||||
After everything has been unpacked and installed, you should test
|
||||
your distribution. To start the MySQL server, use the following
|
||||
your distribution. To start the MariaDB server, use the following
|
||||
command:
|
||||
shell> bin/mysqld_safe --user=mysql &
|
||||
|
||||
@ -185,7 +184,7 @@ shell> bin/mysqld_safe --user=mysql &
|
||||
|
||||
Note
|
||||
|
||||
The accounts that are listed in the MySQL grant tables initially
|
||||
The accounts that are listed in the MariaDB grant tables initially
|
||||
have no passwords. After starting the server, you should set up
|
||||
passwords for them using the instructions in Section 2.11,
|
||||
"Post-Installation Setup and Testing."
|
||||
|
@ -868,7 +868,7 @@ Space compression makes the index file smaller if the string column has a lot of
|
||||
Prefix compression helps if there are many strings with an identical prefix.
|
||||
|
||||
In memory table characteristics
|
||||
HEAP tables only exists in memory so they are lost if `mysqld' is taken down or crashes. But since they are *very* fast they are usefull as anyway.
|
||||
HEAP tables only exists in memory so they are lost if `mysqld' is taken down or crashes. But since they are *very* fast they are useful as anyway.
|
||||
|
||||
The *MySQL* internal HEAP tables uses 100% dynamic hashing without overflow areas and don't have problems with delete.
|
||||
|
||||
|
@ -1,3 +1,10 @@
|
||||
MariaDB is in most aspects identical to MySQL.
|
||||
|
||||
Differences between MySQL and MariaDB can be found at:
|
||||
http://askmonty.org/wiki/index.php/MariaDB_versus_MySQL
|
||||
|
||||
The MariaDB references manual can be found at:
|
||||
http://askmonty.org/wiki/index.php/Manual
|
||||
|
||||
The MySQL Reference Manual is available in various formats on
|
||||
http://dev.mysql.com/doc; if you're interested in the DocBook XML
|
||||
|
1
README
1
README
@ -1,5 +1,4 @@
|
||||
This is a release of MariaDB, a branch of MySQL.
|
||||
MySQL is brought to you by the MySQL team at Sun Microsystems, Inc.
|
||||
|
||||
MariaDB is a drop-in replacement of MySQL, with more features, less
|
||||
bugs and better performance.
|
||||
|
@ -3812,8 +3812,9 @@ static int
|
||||
com_edit(String *buffer,char *line __attribute__((unused)))
|
||||
{
|
||||
char filename[FN_REFLEN],buff[160];
|
||||
int fd,tmp;
|
||||
int fd,tmp,error;
|
||||
const char *editor;
|
||||
MY_STAT stat_arg;
|
||||
|
||||
if ((fd=create_temp_file(filename,NullS,"sql", O_CREAT | O_WRONLY,
|
||||
MYF(MY_WME))) < 0)
|
||||
@ -3829,9 +3830,13 @@ com_edit(String *buffer,char *line __attribute__((unused)))
|
||||
!(editor = (char *)getenv("VISUAL")))
|
||||
editor = "vi";
|
||||
strxmov(buff,editor," ",filename,NullS);
|
||||
(void) system(buff);
|
||||
if ((error= system(buff)))
|
||||
{
|
||||
char errmsg[100];
|
||||
sprintf(errmsg, "Command '%.40s' failed", buff);
|
||||
put_info(errmsg, INFO_ERROR, 0, NullS);
|
||||
}
|
||||
|
||||
MY_STAT stat_arg;
|
||||
if (!my_stat(filename,&stat_arg,MYF(MY_WME)))
|
||||
goto err;
|
||||
if ((fd = my_open(filename,O_RDONLY, MYF(MY_WME))) < 0)
|
||||
|
@ -559,12 +559,11 @@ static int upgrade_already_done(void)
|
||||
if (!(in= my_fopen(upgrade_info_file, O_RDONLY, MYF(0))))
|
||||
return 0; /* Could not open file => not sure */
|
||||
|
||||
/*
|
||||
Read from file, don't care if it fails since it
|
||||
will be detected by the strncmp
|
||||
*/
|
||||
bzero(buf, sizeof(buf));
|
||||
fgets(buf, sizeof(buf), in);
|
||||
if (!fgets(buf, sizeof(buf), in))
|
||||
{
|
||||
/* Ignore, will be detected by strncmp() below */
|
||||
}
|
||||
|
||||
my_fclose(in, MYF(0));
|
||||
|
||||
|
@ -1136,8 +1136,8 @@ static int drop_db(MYSQL *mysql, const char *db)
|
||||
puts("Any data stored in the database will be destroyed.\n");
|
||||
printf("Do you really want to drop the '%s' database [y/N] ",db);
|
||||
fflush(stdout);
|
||||
VOID(fgets(buf,sizeof(buf)-1,stdin));
|
||||
if ((*buf != 'y') && (*buf != 'Y'))
|
||||
if (fgets(buf,sizeof(buf)-1,stdin) == 0 ||
|
||||
(*buf != 'y') && (*buf != 'Y'))
|
||||
{
|
||||
puts("\nOK, aborting database drop!");
|
||||
return -1;
|
||||
|
@ -472,7 +472,7 @@ void concurrency_loop(MYSQL *mysql, uint current, option_string *eptr)
|
||||
run_query(mysql, "SET AUTOCOMMIT=0", strlen("SET AUTOCOMMIT=0"));
|
||||
|
||||
if (pre_system)
|
||||
system(pre_system);
|
||||
if (system(pre_system)) { /* Ignore for now */ }
|
||||
|
||||
/*
|
||||
Pre statements are always run after all other logic so they can
|
||||
@ -487,7 +487,7 @@ void concurrency_loop(MYSQL *mysql, uint current, option_string *eptr)
|
||||
run_statements(mysql, post_statements);
|
||||
|
||||
if (post_system)
|
||||
system(post_system);
|
||||
if (system(post_system)) { /* Ignore for now */ }
|
||||
|
||||
/* We are finished with this run */
|
||||
if (auto_generate_sql_autoincrement || auto_generate_sql_guid_primary)
|
||||
|
14
configure.in
14
configure.in
@ -15,7 +15,7 @@ AC_CANONICAL_SYSTEM
|
||||
# MySQL version number.
|
||||
#
|
||||
# Note: the following line must be parseable by win/configure.js:GetVersion()
|
||||
AM_INIT_AUTOMAKE(mysql, 5.2.0-alpha)
|
||||
AM_INIT_AUTOMAKE(mysql, 5.2.0-MariaDB-alpha)
|
||||
AM_CONFIG_HEADER([include/config.h:config.h.in])
|
||||
|
||||
PROTOCOL_VERSION=10
|
||||
@ -2858,7 +2858,7 @@ do
|
||||
done
|
||||
AC_SUBST(sql_union_dirs)
|
||||
|
||||
# Some usefull subst
|
||||
# Some useful subst
|
||||
AC_SUBST(CC)
|
||||
AC_SUBST(GXX)
|
||||
|
||||
@ -2908,13 +2908,11 @@ AC_CONFIG_COMMANDS_POST(ac_configure_args="$ac_configure_args CFLAGS='$CFLAGS' C
|
||||
AC_OUTPUT
|
||||
|
||||
echo
|
||||
echo "MySQL has a Web site at http://www.mysql.com/ which carries details on the"
|
||||
echo "latest release, upcoming features, and other information to make your"
|
||||
echo "work or play with MySQL more productive. There you can also find"
|
||||
echo "information about mailing lists for MySQL discussion."
|
||||
echo "You can find information about MariaDB at"
|
||||
echo http://askmonty.org/wiki/index.php/MariaDB
|
||||
echo
|
||||
echo "Remember to check the platform specific part of the reference manual for"
|
||||
echo "hints about installing MySQL on your platform. Also have a look at the"
|
||||
echo "hints about installing MariaDB on your platform. Also have a look at the"
|
||||
echo "files in the Docs directory."
|
||||
echo
|
||||
|
||||
@ -2933,5 +2931,5 @@ echo "---"
|
||||
|
||||
# The following text is checked in ./Do-compile to verify that configure
|
||||
# ended sucessfully - don't remove it.
|
||||
echo "Thank you for choosing MySQL!"
|
||||
echo "Thank you for choosing MariaDB!"
|
||||
echo
|
||||
|
@ -953,7 +953,11 @@ x509* PemToDer(FILE* file, CertType type, EncryptedInfo* info)
|
||||
info->set = true;
|
||||
}
|
||||
}
|
||||
fgets(line,sizeof(line), file); // get blank line
|
||||
// get blank line
|
||||
if (fgets(line,sizeof(line), file) == 0)
|
||||
{
|
||||
/* Impossible case */
|
||||
}
|
||||
begin = ftell(file);
|
||||
}
|
||||
|
||||
|
@ -52,6 +52,7 @@ void AES::Process(byte* out, const byte* in, word32 sz)
|
||||
in += BLOCK_SIZE;
|
||||
}
|
||||
else if (mode_ == CBC)
|
||||
{
|
||||
if (dir_ == ENCRYPTION)
|
||||
while (blocks--) {
|
||||
r_[0] ^= *(word32*)in;
|
||||
@ -78,6 +79,7 @@ void AES::Process(byte* out, const byte* in, word32 sz)
|
||||
out += BLOCK_SIZE;
|
||||
in += BLOCK_SIZE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif // DO_AES_ASM
|
||||
|
@ -54,6 +54,7 @@ void Blowfish::Process(byte* out, const byte* in, word32 sz)
|
||||
in += BLOCK_SIZE;
|
||||
}
|
||||
else if (mode_ == CBC)
|
||||
{
|
||||
if (dir_ == ENCRYPTION)
|
||||
while (blocks--) {
|
||||
r_[0] ^= *(word32*)in;
|
||||
@ -78,6 +79,7 @@ void Blowfish::Process(byte* out, const byte* in, word32 sz)
|
||||
out += BLOCK_SIZE;
|
||||
in += BLOCK_SIZE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif // DO_BLOWFISH_ASM
|
||||
|
@ -166,6 +166,7 @@ word Crop(word value, unsigned int size)
|
||||
|
||||
#ifdef TAOCRYPT_X86ASM_AVAILABLE
|
||||
|
||||
#ifdef NOT_USED
|
||||
#ifndef _MSC_VER
|
||||
static jmp_buf s_env;
|
||||
static void SigIllHandler(int)
|
||||
@ -173,6 +174,7 @@ word Crop(word value, unsigned int size)
|
||||
longjmp(s_env, 1);
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
bool HaveCpuId()
|
||||
|
@ -63,7 +63,8 @@ extern const char * NEAR globerrs[]; /* my_error_messages is here */
|
||||
#define EE_FILENOTFOUND 29
|
||||
#define EE_FILE_NOT_CLOSED 30
|
||||
#define EE_CANT_CHMOD 31
|
||||
#define EE_ERROR_LAST 31 /* Copy last error nr */
|
||||
#define EE_CANT_COPY_OWNERSHIP 32
|
||||
#define EE_ERROR_LAST 32 /* Copy last error nr */
|
||||
/* Add error numbers before EE_ERROR_LAST and change it accordingly. */
|
||||
|
||||
/* exit codes for all MySQL programs */
|
||||
|
@ -1432,7 +1432,8 @@ mysql_get_server_info(MYSQL *mysql)
|
||||
|
||||
my_bool STDCALL mariadb_connection(MYSQL *mysql)
|
||||
{
|
||||
return strinstr(mysql->server_version, "MariaDB") != 0;
|
||||
return (strinstr(mysql->server_version, "MariaDB") != 0 ||
|
||||
strinstr(mysql->server_version, "-maria-") != 0);
|
||||
}
|
||||
|
||||
const char * STDCALL
|
||||
|
@ -1100,7 +1100,7 @@ mysql-stress-test.pl --stress-basedir=<dir> --stress-suite-basedir=<dir> --serve
|
||||
they specified in the list file.
|
||||
|
||||
--sleep-time=<time in seconds>
|
||||
Delay between test execution. Could be usefull in continued testsing
|
||||
Delay between test execution. Could be useful in continued testsing
|
||||
when one of instance of stress script perform periodical cleanup or
|
||||
recreating of some database objects
|
||||
|
||||
@ -1109,7 +1109,7 @@ mysql-stress-test.pl --stress-basedir=<dir> --stress-suite-basedir=<dir> --serve
|
||||
|
||||
--check-tests-file
|
||||
Check file with list of tests. If file was modified it will force to
|
||||
reread list of tests. Could be usefull in continued testing for
|
||||
reread list of tests. Could be useful in continued testing for
|
||||
adding/removing tests without script interruption
|
||||
|
||||
--mysqltest=/path/to/mysqltest binary
|
||||
|
@ -2402,7 +2402,7 @@ sub check_ndbcluster_support ($) {
|
||||
|
||||
if ( ! $mysqld_variables{'ndb-connectstring'} )
|
||||
{
|
||||
mtr_report(" - skipping ndbcluster, mysqld not compiled with ndbcluster");
|
||||
#mtr_report(" - skipping ndbcluster, mysqld not compiled with ndbcluster");
|
||||
$opt_skip_ndbcluster= 2;
|
||||
return;
|
||||
}
|
||||
|
1921
mysql-test/suite/funcs_1/r/is_tables_is_embedded.result
Normal file
1921
mysql-test/suite/funcs_1/r/is_tables_is_embedded.result
Normal file
File diff suppressed because it is too large
Load Diff
@ -22,9 +22,9 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA test1
|
||||
TABLE_NAME t1
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Dynamic
|
||||
ROW_FORMAT DYNAMIC_OR_PAGE
|
||||
TABLE_ROWS #TBLR#
|
||||
AVG_ROW_LENGTH #ARL#
|
||||
DATA_LENGTH #DL#
|
||||
@ -45,9 +45,9 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA test1
|
||||
TABLE_NAME t2
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Dynamic
|
||||
ROW_FORMAT DYNAMIC_OR_PAGE
|
||||
TABLE_ROWS #TBLR#
|
||||
AVG_ROW_LENGTH #ARL#
|
||||
DATA_LENGTH #DL#
|
||||
@ -68,9 +68,9 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA test2
|
||||
TABLE_NAME t1
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Dynamic
|
||||
ROW_FORMAT DYNAMIC_OR_PAGE
|
||||
TABLE_ROWS #TBLR#
|
||||
AVG_ROW_LENGTH #ARL#
|
||||
DATA_LENGTH #DL#
|
||||
@ -114,9 +114,9 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA test1
|
||||
TABLE_NAME t1
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Dynamic
|
||||
ROW_FORMAT DYNAMIC_OR_PAGE
|
||||
TABLE_ROWS #TBLR#
|
||||
AVG_ROW_LENGTH #ARL#
|
||||
DATA_LENGTH #DL#
|
||||
@ -137,9 +137,9 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA test1
|
||||
TABLE_NAME t2
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Dynamic
|
||||
ROW_FORMAT DYNAMIC_OR_PAGE
|
||||
TABLE_ROWS #TBLR#
|
||||
AVG_ROW_LENGTH #ARL#
|
||||
DATA_LENGTH #DL#
|
||||
@ -160,9 +160,9 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA test2
|
||||
TABLE_NAME t1
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Dynamic
|
||||
ROW_FORMAT DYNAMIC_OR_PAGE
|
||||
TABLE_ROWS #TBLR#
|
||||
AVG_ROW_LENGTH #ARL#
|
||||
DATA_LENGTH #DL#
|
||||
|
@ -16,7 +16,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME columns_priv
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -39,7 +39,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME db
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -62,9 +62,9 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME event
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Dynamic
|
||||
ROW_FORMAT DYNAMIC_OR_PAGE
|
||||
TABLE_ROWS #TBLR#
|
||||
AVG_ROW_LENGTH #ARL#
|
||||
DATA_LENGTH #DL#
|
||||
@ -85,7 +85,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME func
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -110,7 +110,7 @@ TABLE_NAME general_log
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE CSV
|
||||
VERSION 10
|
||||
ROW_FORMAT Dynamic
|
||||
ROW_FORMAT DYNAMIC_OR_PAGE
|
||||
TABLE_ROWS #TBLR#
|
||||
AVG_ROW_LENGTH #ARL#
|
||||
DATA_LENGTH #DL#
|
||||
@ -131,7 +131,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME help_category
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -154,7 +154,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME help_keyword
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -177,7 +177,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME help_relation
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -200,9 +200,9 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME help_topic
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Dynamic
|
||||
ROW_FORMAT DYNAMIC_OR_PAGE
|
||||
TABLE_ROWS #TBLR#
|
||||
AVG_ROW_LENGTH #ARL#
|
||||
DATA_LENGTH #DL#
|
||||
@ -223,7 +223,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME host
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -246,9 +246,9 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME ndb_binlog_index
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Dynamic
|
||||
ROW_FORMAT DYNAMIC_OR_PAGE
|
||||
TABLE_ROWS #TBLR#
|
||||
AVG_ROW_LENGTH #ARL#
|
||||
DATA_LENGTH #DL#
|
||||
@ -269,7 +269,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME plugin
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -292,9 +292,9 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME proc
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Dynamic
|
||||
ROW_FORMAT DYNAMIC_OR_PAGE
|
||||
TABLE_ROWS #TBLR#
|
||||
AVG_ROW_LENGTH #ARL#
|
||||
DATA_LENGTH #DL#
|
||||
@ -315,7 +315,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME procs_priv
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -338,7 +338,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME servers
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -363,7 +363,7 @@ TABLE_NAME slow_log
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE CSV
|
||||
VERSION 10
|
||||
ROW_FORMAT Dynamic
|
||||
ROW_FORMAT DYNAMIC_OR_PAGE
|
||||
TABLE_ROWS #TBLR#
|
||||
AVG_ROW_LENGTH #ARL#
|
||||
DATA_LENGTH #DL#
|
||||
@ -384,7 +384,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME tables_priv
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -407,7 +407,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME time_zone
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -430,7 +430,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME time_zone_leap_second
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -453,7 +453,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME time_zone_name
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -476,7 +476,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME time_zone_transition
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -499,7 +499,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME time_zone_transition_type
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -522,9 +522,9 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME user
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Dynamic
|
||||
ROW_FORMAT DYNAMIC_OR_PAGE
|
||||
TABLE_ROWS #TBLR#
|
||||
AVG_ROW_LENGTH #ARL#
|
||||
DATA_LENGTH #DL#
|
||||
@ -561,7 +561,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME columns_priv
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -584,7 +584,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME db
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -607,9 +607,9 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME event
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Dynamic
|
||||
ROW_FORMAT DYNAMIC_OR_PAGE
|
||||
TABLE_ROWS #TBLR#
|
||||
AVG_ROW_LENGTH #ARL#
|
||||
DATA_LENGTH #DL#
|
||||
@ -630,7 +630,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME func
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -655,7 +655,7 @@ TABLE_NAME general_log
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE CSV
|
||||
VERSION 10
|
||||
ROW_FORMAT Dynamic
|
||||
ROW_FORMAT DYNAMIC_OR_PAGE
|
||||
TABLE_ROWS #TBLR#
|
||||
AVG_ROW_LENGTH #ARL#
|
||||
DATA_LENGTH #DL#
|
||||
@ -676,7 +676,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME help_category
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -699,7 +699,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME help_keyword
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -722,7 +722,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME help_relation
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -745,9 +745,9 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME help_topic
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Dynamic
|
||||
ROW_FORMAT DYNAMIC_OR_PAGE
|
||||
TABLE_ROWS #TBLR#
|
||||
AVG_ROW_LENGTH #ARL#
|
||||
DATA_LENGTH #DL#
|
||||
@ -768,7 +768,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME host
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -791,9 +791,9 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME ndb_binlog_index
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Dynamic
|
||||
ROW_FORMAT DYNAMIC_OR_PAGE
|
||||
TABLE_ROWS #TBLR#
|
||||
AVG_ROW_LENGTH #ARL#
|
||||
DATA_LENGTH #DL#
|
||||
@ -814,7 +814,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME plugin
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -837,9 +837,9 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME proc
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Dynamic
|
||||
ROW_FORMAT DYNAMIC_OR_PAGE
|
||||
TABLE_ROWS #TBLR#
|
||||
AVG_ROW_LENGTH #ARL#
|
||||
DATA_LENGTH #DL#
|
||||
@ -860,7 +860,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME procs_priv
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -883,7 +883,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME servers
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -908,7 +908,7 @@ TABLE_NAME slow_log
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE CSV
|
||||
VERSION 10
|
||||
ROW_FORMAT Dynamic
|
||||
ROW_FORMAT DYNAMIC_OR_PAGE
|
||||
TABLE_ROWS #TBLR#
|
||||
AVG_ROW_LENGTH #ARL#
|
||||
DATA_LENGTH #DL#
|
||||
@ -929,7 +929,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME tables_priv
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -952,7 +952,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME time_zone
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -975,7 +975,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME time_zone_leap_second
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -998,7 +998,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME time_zone_name
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -1021,7 +1021,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME time_zone_transition
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -1044,7 +1044,7 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME time_zone_transition_type
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Fixed
|
||||
TABLE_ROWS #TBLR#
|
||||
@ -1067,9 +1067,9 @@ TABLE_CATALOG NULL
|
||||
TABLE_SCHEMA mysql
|
||||
TABLE_NAME user
|
||||
TABLE_TYPE BASE TABLE
|
||||
ENGINE MyISAM
|
||||
ENGINE MYISAM_OR_MARIA
|
||||
VERSION 10
|
||||
ROW_FORMAT Dynamic
|
||||
ROW_FORMAT DYNAMIC_OR_PAGE
|
||||
TABLE_ROWS #TBLR#
|
||||
AVG_ROW_LENGTH #ARL#
|
||||
DATA_LENGTH #DL#
|
||||
|
22
mysql-test/suite/funcs_1/t/is_tables_is_embedded.test
Normal file
22
mysql-test/suite/funcs_1/t/is_tables_is_embedded.test
Normal file
@ -0,0 +1,22 @@
|
||||
# suite/funcs_1/t/is_tables_is_embedded.test
|
||||
#
|
||||
# Check the layout of information_schema.tables and the impact of
|
||||
# CREATE/ALTER/DROP TABLE/VIEW/SCHEMA ... on it.
|
||||
# Variant for the embedded server
|
||||
# The expected results must equal is_tables except that all users
|
||||
# have all privileges (affects some result sets).
|
||||
#
|
||||
# There is detailed information about this test within
|
||||
# suite/funcs_1/datadict/is_tables.inc
|
||||
#
|
||||
# Author:
|
||||
# 2008-06-06 mleich Create this this variant for the embedded server.
|
||||
#
|
||||
|
||||
if (`SELECT VERSION() NOT LIKE '%embedded%'`)
|
||||
{
|
||||
--skip Test requires: embedded server
|
||||
}
|
||||
let $my_where = WHERE table_schema = 'information_schema'
|
||||
AND table_name <> 'profiling';
|
||||
--source suite/funcs_1/datadict/tables1.inc
|
9
mysql-test/suite/pbxt/my.cnf
Normal file
9
mysql-test/suite/pbxt/my.cnf
Normal file
@ -0,0 +1,9 @@
|
||||
# Use default setting for mysqld processes
|
||||
!include include/default_mysqld.cnf
|
||||
|
||||
[mysqld.1]
|
||||
default-storage-engine=pbxt
|
||||
|
||||
[ENV]
|
||||
MASTER_MYSOCK= @mysqld.1.socket
|
||||
MASTER_MYPORT= @mysqld.1.port
|
@ -11,6 +11,7 @@ CREATE TABLE t1 (id INTEGER, grp TINYINT, id_rev INTEGER);
|
||||
|
||||
--disable_query_log
|
||||
SET @rnd_max= 2147483647;
|
||||
begin;
|
||||
let $1 = 1000;
|
||||
while ($1)
|
||||
{
|
||||
@ -21,6 +22,7 @@ while ($1)
|
||||
INSERT INTO t1 (id, grp, id_rev) VALUES (@id, @grp, @id_rev);
|
||||
dec $1;
|
||||
}
|
||||
commit;
|
||||
set @@read_buffer_size=2*1024*1024;
|
||||
CREATE TABLE t2 SELECT * FROM t1;
|
||||
INSERT INTO t1 (id, grp, id_rev) SELECT id, grp, id_rev FROM t2;
|
||||
|
@ -20,6 +20,7 @@ create table t1(id1 int not null auto_increment primary key, t char(12));
|
||||
create table t2(id2 int not null, t char(12));
|
||||
create table t3(id3 int not null, t char(12), index(id3));
|
||||
disable_query_log;
|
||||
begin;
|
||||
let $1 = 100;
|
||||
while ($1)
|
||||
{
|
||||
@ -38,6 +39,7 @@ while ($1)
|
||||
}
|
||||
dec $1;
|
||||
}
|
||||
commit;
|
||||
enable_query_log;
|
||||
|
||||
select count(*) from t1 where id1 > 95;
|
||||
@ -75,6 +77,7 @@ drop table t1,t2,t3;
|
||||
create table t1(id1 int not null primary key, t varchar(100)) pack_keys = 1;
|
||||
create table t2(id2 int not null, t varchar(100), index(id2)) pack_keys = 1;
|
||||
disable_query_log;
|
||||
begin;
|
||||
let $1 = 1000;
|
||||
while ($1)
|
||||
{
|
||||
@ -87,6 +90,7 @@ while ($1)
|
||||
}
|
||||
dec $1;
|
||||
}
|
||||
commit;
|
||||
enable_query_log;
|
||||
delete t1 from t1,t2 where t1.id1 = t2.id2 and t1.id1 > 500;
|
||||
drop table t1,t2;
|
||||
@ -328,6 +332,7 @@ drop table t1,t2;
|
||||
|
||||
create table t1 ( a int not null, b int not null) ;
|
||||
--disable_query_log
|
||||
begin;
|
||||
insert into t1 values (1,1),(2,2),(3,3),(4,4);
|
||||
let $1=19;
|
||||
set @d=4;
|
||||
@ -337,7 +342,7 @@ while ($1)
|
||||
eval set @d=@d*2;
|
||||
dec $1;
|
||||
}
|
||||
|
||||
commit;
|
||||
--enable_query_log
|
||||
alter table t1 add index i1(a);
|
||||
delete from t1 where a > 2000000;
|
||||
|
@ -814,12 +814,14 @@ create table t3 (a int, b int, index a (a));
|
||||
insert into t1 values (1,10), (2,20), (3,30), (4,40);
|
||||
disable_query_log;
|
||||
# making table large enough
|
||||
begin;
|
||||
let $1 = 10000;
|
||||
while ($1)
|
||||
{
|
||||
eval insert into t1 values (rand()*100000+200,rand()*100000);
|
||||
dec $1;
|
||||
}
|
||||
commit;
|
||||
enable_query_log;
|
||||
insert into t2 values (2), (3), (4), (5);
|
||||
insert into t3 values (10,3), (20,4), (30,5);
|
||||
@ -2557,6 +2559,7 @@ CREATE TABLE t2 (x int auto_increment, y int, z int,
|
||||
PRIMARY KEY (x), FOREIGN KEY (y) REFERENCES t1 (b));
|
||||
|
||||
disable_query_log;
|
||||
begin;
|
||||
let $1=3000;
|
||||
while ($1)
|
||||
{
|
||||
@ -2570,6 +2573,7 @@ while ($1)
|
||||
}
|
||||
dec $1;
|
||||
}
|
||||
commit;
|
||||
enable_query_log;
|
||||
|
||||
SET SESSION sort_buffer_size = 32 * 1024;
|
||||
@ -3156,11 +3160,13 @@ insert into t1 values(1,1),(2,2), (3, 3);
|
||||
let $i=10000;
|
||||
--disable_query_log
|
||||
--disable_warnings
|
||||
begin;
|
||||
while ($i)
|
||||
{
|
||||
eval insert into t2 values (-1 , $i/5000 + 1, '$i');
|
||||
dec $i;
|
||||
}
|
||||
commit;
|
||||
--enable_warnings
|
||||
--enable_query_log
|
||||
set session sort_buffer_size= 33*1024;
|
||||
|
@ -50,7 +50,8 @@ const char * NEAR globerrs[GLOBERRS]=
|
||||
"Collation '%s' is not a compiled collation and is not specified in the '%s' file",
|
||||
"File '%s' not found (Errcode: %d)",
|
||||
"File '%s' (fileno: %d) was not closed",
|
||||
"Can't change mode for file '%s' to 0x%lx (Error: %d)"
|
||||
"Can't change mode for file '%s' to 0x%lx (Error: %d)",
|
||||
"Warning: Can't copy ownership for file '%s' (Error: %d)"
|
||||
};
|
||||
|
||||
void init_glob_errs(void)
|
||||
@ -92,6 +93,7 @@ void init_glob_errs()
|
||||
EE(EE_FILENOTFOUND) = "File '%s' not found (Errcode: %d)";
|
||||
EE(EE_FILE_NOT_CLOSED) = "File '%s' (fileno: %d) was not closed";
|
||||
EE(EE_CANT_CHMOD) = "Can't change mode for file '%s' to 0x%lx (Error: %d)";
|
||||
EE(EE_CANT_COPY_OWNERSHIP)= "Warning: Can't copy ownership for file '%s' (Error: %d)";
|
||||
}
|
||||
#endif
|
||||
|
||||
|
@ -14,6 +14,7 @@
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
|
||||
|
||||
#include "mysys_priv.h"
|
||||
#include "mysys_err.h"
|
||||
#include <my_dir.h> /* for stat */
|
||||
#include <m_string.h>
|
||||
#if defined(HAVE_UTIME_H)
|
||||
@ -96,7 +97,10 @@ int my_copy(const char *from, const char *to, myf MyFlags)
|
||||
DBUG_RETURN(0); /* File copyed but not stat */
|
||||
VOID(chmod(to, stat_buff.st_mode & 07777)); /* Copy modes */
|
||||
#if !defined(__WIN__) && !defined(__NETWARE__)
|
||||
VOID(chown(to, stat_buff.st_uid,stat_buff.st_gid)); /* Copy ownership */
|
||||
if (chown(to, stat_buff.st_uid,stat_buff.st_gid))
|
||||
{
|
||||
my_error(EE_CANT_COPY_OWNERSHIP, MYF(ME_JUST_WARNING), to);
|
||||
}
|
||||
#endif
|
||||
#if !defined(VMS) && !defined(__ZTC__)
|
||||
if (MyFlags & MY_COPYTIME)
|
||||
|
@ -42,7 +42,8 @@ static void netware_init();
|
||||
|
||||
my_bool my_init_done= 0;
|
||||
uint mysys_usage_id= 0; /* Incremented for each my_init() */
|
||||
ulong my_thread_stack_size= 65536;
|
||||
|
||||
ulong my_thread_stack_size= (sizeof(void*) <= 4)? 65536: ((256-16)*1024);
|
||||
|
||||
static ulong atoi_octal(const char *str)
|
||||
{
|
||||
|
@ -14,6 +14,7 @@
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
|
||||
|
||||
#include "mysys_priv.h"
|
||||
#include "mysys_err.h"
|
||||
#include <my_dir.h>
|
||||
#include <m_string.h>
|
||||
#include "mysys_err.h"
|
||||
@ -94,7 +95,10 @@ int my_copystat(const char *from, const char *to, int MyFlags)
|
||||
if (MyFlags & MY_LINK_WARNING)
|
||||
my_error(EE_LINK_WARNING,MYF(ME_BELL+ME_WAITTANG),from,statbuf.st_nlink);
|
||||
}
|
||||
VOID(chown(to, statbuf.st_uid, statbuf.st_gid)); /* Copy ownership */
|
||||
if (chown(to, statbuf.st_uid, statbuf.st_gid))
|
||||
{
|
||||
my_error(EE_CANT_COPY_OWNERSHIP, MYF(ME_JUST_WARNING), to);
|
||||
}
|
||||
#endif /* !__WIN__ && !__NETWARE__ */
|
||||
|
||||
#ifndef VMS
|
||||
|
@ -158,7 +158,7 @@ void *_mymalloc(size_t size, const char *filename, uint lineno, myf MyFlags)
|
||||
my_message(EE_OUTOFMEMORY, buff, MYF(ME_BELL+ME_WAITTANG+ME_NOREFRESH));
|
||||
}
|
||||
DBUG_PRINT("error",("Out of memory, in use: %ld at line %d, '%s'",
|
||||
sf_malloc_max_memory,lineno, filename));
|
||||
(ulong) sf_malloc_max_memory,lineno, filename));
|
||||
if (MyFlags & MY_FAE)
|
||||
exit(1);
|
||||
DBUG_RETURN ((void*) 0);
|
||||
@ -436,7 +436,7 @@ void TERMINATE(FILE *file, uint flag)
|
||||
/*
|
||||
Report where a piece of memory was allocated
|
||||
|
||||
This is usefull to call from withing a debugger
|
||||
This is useful to call from withing a debugger
|
||||
*/
|
||||
|
||||
void sf_malloc_report_allocated(void *memory)
|
||||
|
@ -171,9 +171,9 @@ case $VERSION_NAME in
|
||||
*-ndb-* ) VERSION_NAME=`echo $VERSION_NAME | sed -e 's/[.0-9]*-ndb-//'` ;;
|
||||
esac
|
||||
if [ x"$SHORT_PRODUCT_TAG" != x"" ] ; then
|
||||
NEW_NAME=mysql-$SHORT_PRODUCT_TAG-$VERSION_NAME-$PLATFORM$SUFFIX
|
||||
NEW_NAME=mariadb-$SHORT_PRODUCT_TAG-$VERSION_NAME-$PLATFORM$SUFFIX
|
||||
else
|
||||
NEW_NAME=mysql@MYSQL_SERVER_SUFFIX@-$VERSION_NAME-$PLATFORM$SUFFIX
|
||||
NEW_NAME=mariadb@MYSQL_SERVER_SUFFIX@-$VERSION_NAME-$PLATFORM$SUFFIX
|
||||
fi
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
@ -239,8 +239,8 @@ if [ x"$BASE_SYSTEM" != x"netware" ] ; then
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
cd scripts
|
||||
rm -f mysql_install_db
|
||||
@MAKE@ mysql_install_db \
|
||||
rm -f mysql_install_db mysqld_safe mysql_fix_privilege_tables
|
||||
@MAKE@ mysql_install_db mysqld_safe mysql_fix_privilege_tables \
|
||||
prefix=. \
|
||||
bindir=./bin \
|
||||
sbindir=./bin \
|
||||
@ -257,7 +257,7 @@ if [ x"$BASE_SYSTEM" != x"netware" ] ; then
|
||||
sbindir=./bin \
|
||||
scriptdir=./bin \
|
||||
libexecdir=./bin \
|
||||
pkgdatadir=@pkgdatadir@
|
||||
pkgdatadir=./share
|
||||
cd ..
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
@ -320,6 +320,33 @@ if [ x"$BASE_SYSTEM" != x"netware" ] ; then
|
||||
mkdir $DEST/data $DEST/data/mysql $DEST/data/test
|
||||
chmod o-rwx $DEST/data $DEST/data/mysql $DEST/data/test
|
||||
|
||||
# Remove not needed files
|
||||
rm $DEST/share/mysql/errmsg.txt
|
||||
|
||||
# Remove NDB files
|
||||
rm -f $DEST/share/mysql/ndb-config-2-node.ini \
|
||||
$DEST/share/mysql/config*
|
||||
|
||||
#
|
||||
# Move things to make them easier to find in tar installation
|
||||
#
|
||||
mv $DEST/libexec/* $DEST/bin
|
||||
mv $DEST/share/man $DEST
|
||||
mv $DEST/share/mysql/binary-configure $DEST/configure
|
||||
mv $DEST/share/mysql/*.sql $DEST/share
|
||||
mv $DEST/share/mysql/*.cnf $DEST/share/mysql/*.server $DEST/share/mysql/mysql-log-rotate $DEST/support-files
|
||||
rmdir $DEST/libexec
|
||||
|
||||
#
|
||||
# Move some scripts that are only run once to 'scripts' directory
|
||||
# but add symbolic links instead to old place for compatibility
|
||||
#
|
||||
for i in mysql_secure_installation mysql_fix_extensions mysql_fix_privilege_tables
|
||||
do
|
||||
mv $DEST/bin/$i $DEST/scripts
|
||||
ln -s "../scripts/$i" $DEST/bin/$i
|
||||
done
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Create the result tar file
|
||||
# ----------------------------------------------------------------------
|
||||
@ -389,6 +416,9 @@ BIN_FILES="extra/comp_err$BS extra/replace$BS extra/perror$BS \
|
||||
extra/resolve_stack_dump$BS extra/mysql_waitpid$BS \
|
||||
storage/myisam/myisamchk$BS storage/myisam/myisampack$BS \
|
||||
storage/myisam/myisamlog$BS storage/myisam/myisam_ftdump$BS \
|
||||
storage/maria/maria_chk$BS storage/maria/maria_pack$BS \
|
||||
storage/maria/maria_ftdump$BS storage/maria/maria_read_log$BS \
|
||||
storage/maria/maria_dump_log$BS \
|
||||
sql/mysqld$BS sql/mysqld-debug$BS \
|
||||
sql/mysql_tzinfo_to_sql$BS \
|
||||
server-tools/instance-manager/mysqlmanager$BS \
|
||||
@ -493,12 +523,21 @@ rm -f $BASE/bin/Makefile* $BASE/bin/*.in $BASE/bin/*.sh \
|
||||
$BASE/bin/mysql_install_db $BASE/bin/make_binary_distribution \
|
||||
$BASE/bin/make_win_* \
|
||||
$BASE/bin/setsomevars $BASE/support-files/Makefile* \
|
||||
$BASE/support-files/*.sh
|
||||
$BASE/support-files/*.sh \
|
||||
$BASE/share/mysql/errmsg.txt
|
||||
|
||||
# Remove NDB files
|
||||
rm -f $BASE/share/ndb-config-2-node.ini \
|
||||
$BASE/share/mysql/config*
|
||||
|
||||
#
|
||||
# Copy system dependent files
|
||||
# Move things to make things easier to find in tar installation
|
||||
#
|
||||
./scripts/fill_help_tables < ./Docs/manual.texi >> ./netware/init_db.sql
|
||||
|
||||
mv $BASE/share/man $BASE
|
||||
mv $BASE/share/mysql/binary-configure $BASE/configure
|
||||
mv $BASE/share/mysql/*.sql $BASE/share
|
||||
mv $BASE/share/mysql/*.cnf $BASE/share/mysql/*.server $BASE/share/mysql/mysql-log-rotate $BASE/support-files
|
||||
|
||||
#
|
||||
# Remove system dependent files
|
||||
@ -512,12 +551,6 @@ rm -f $BASE/support-files/magic \
|
||||
$BASE/support-files/MySQL-shared-compat.spec \
|
||||
$BASE/INSTALL-BINARY
|
||||
|
||||
# Clean up if we did this from a bk tree
|
||||
if [ -d $BASE/sql-bench/SCCS ] ; then
|
||||
find $BASE/share -name SCCS -print | xargs rm -rf
|
||||
find $BASE/sql-bench -name SCCS -print | xargs rm -rf
|
||||
fi
|
||||
|
||||
BASE2=$TMP/$NEW_NAME
|
||||
rm -rf $BASE2
|
||||
mv $BASE $BASE2
|
||||
|
@ -23,6 +23,157 @@ trap "interrupt" 2
|
||||
rootpass=""
|
||||
echo_n=
|
||||
echo_c=
|
||||
basedir=
|
||||
bindir=
|
||||
|
||||
parse_arg()
|
||||
{
|
||||
echo "$1" | sed -e 's/^[^=]*=//'
|
||||
}
|
||||
|
||||
parse_arguments()
|
||||
{
|
||||
# We only need to pass arguments through to the server if we don't
|
||||
# handle them here. So, we collect unrecognized options (passed on
|
||||
# the command line) into the args variable.
|
||||
pick_args=
|
||||
if test "$1" = PICK-ARGS-FROM-ARGV
|
||||
then
|
||||
pick_args=1
|
||||
shift
|
||||
fi
|
||||
|
||||
for arg
|
||||
do
|
||||
case "$arg" in
|
||||
--basedir=*) basedir=`parse_arg "$arg"` ;;
|
||||
--no-defaults|--defaults-file=*|--defaults-extra-file=*)
|
||||
defaults="$arg" ;;
|
||||
*)
|
||||
if test -n "$pick_args"
|
||||
then
|
||||
# This sed command makes sure that any special chars are quoted,
|
||||
# so the arg gets passed exactly to the server.
|
||||
# XXX: This is broken; true fix requires using eval and proper
|
||||
# quoting of every single arg ($basedir, $ldata, etc.)
|
||||
#args="$args "`echo "$arg" | sed -e 's,\([^a-zA-Z0-9_.-]\),\\\\\1,g'`
|
||||
args="$args $arg"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
# Try to find a specific file within --basedir which can either be a binary
|
||||
# release or installed source directory and return the path.
|
||||
find_in_basedir()
|
||||
{
|
||||
return_dir=
|
||||
case "$1" in
|
||||
--dir)
|
||||
return_dir=1; shift
|
||||
;;
|
||||
esac
|
||||
|
||||
file=$1; shift
|
||||
|
||||
for dir in "$@"
|
||||
do
|
||||
if test -f "$basedir/$dir/$file"
|
||||
then
|
||||
if test -n "$return_dir"
|
||||
then
|
||||
echo "$basedir/$dir"
|
||||
else
|
||||
echo "$basedir/$dir/$file"
|
||||
fi
|
||||
break
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
cannot_find_file()
|
||||
{
|
||||
echo
|
||||
echo "FATAL ERROR: Could not find $1"
|
||||
|
||||
shift
|
||||
if test $# -ne 0
|
||||
then
|
||||
echo
|
||||
echo "The following directories were searched:"
|
||||
echo
|
||||
for dir in "$@"
|
||||
do
|
||||
echo " $dir"
|
||||
done
|
||||
fi
|
||||
|
||||
echo
|
||||
echo "If you compiled from source, you need to run 'make install' to"
|
||||
echo "copy the software into the correct location ready for operation."
|
||||
echo
|
||||
echo "If you are using a binary release, you must either be at the top"
|
||||
echo "level of the extracted archive, or pass the --basedir option"
|
||||
echo "pointing to that location."
|
||||
echo
|
||||
}
|
||||
|
||||
# Ok, let's go. We first need to parse arguments which are required by
|
||||
# my_print_defaults so that we can execute it first, then later re-parse
|
||||
# the command line to add any extra bits that we need.
|
||||
parse_arguments PICK-ARGS-FROM-ARGV "$@"
|
||||
|
||||
#
|
||||
# We can now find my_print_defaults. This script supports:
|
||||
#
|
||||
# --srcdir=path pointing to compiled source tree
|
||||
# --basedir=path pointing to installed binary location
|
||||
#
|
||||
# or default to compiled-in locations.
|
||||
#
|
||||
|
||||
if test -n "$basedir"
|
||||
then
|
||||
print_defaults=`find_in_basedir my_print_defaults bin extra`
|
||||
echo "print: $print_defaults"
|
||||
if test -z "$print_defaults"
|
||||
then
|
||||
cannot_find_file my_print_defaults $basedir/bin $basedir/extra
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
print_defaults="@bindir@/my_print_defaults"
|
||||
fi
|
||||
|
||||
if test ! -x "$print_defaults"
|
||||
then
|
||||
cannot_find_file "$print_defaults"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Now we can get arguments from the group [client]
|
||||
# in the my.cfg file, then re-run to merge with command line arguments.
|
||||
parse_arguments `$print_defaults $defaults client`
|
||||
parse_arguments PICK-ARGS-FROM-ARGV "$@"
|
||||
|
||||
# Configure paths to support files
|
||||
if test -n "$basedir"
|
||||
then
|
||||
bindir="$basedir/bin"
|
||||
elif test -f "./bin/mysql"
|
||||
then
|
||||
bindir="./bin"
|
||||
else
|
||||
bindir="@bindir@"
|
||||
fi
|
||||
|
||||
mysql_command=`find_in_basedir mysql $bindir`
|
||||
if test -z "$print_defaults"
|
||||
then
|
||||
cannot_find_file mysql $bindir
|
||||
exit 1
|
||||
fi
|
||||
|
||||
set_echo_compat() {
|
||||
case `echo "testing\c"`,`echo -n testing` in
|
||||
@ -39,7 +190,7 @@ prepare() {
|
||||
|
||||
do_query() {
|
||||
echo $1 >$command
|
||||
mysql --defaults-file=$config <$command
|
||||
$bindir/mysql --defaults-file=$config <$command
|
||||
return $?
|
||||
}
|
||||
|
||||
@ -184,15 +335,10 @@ cleanup() {
|
||||
prepare
|
||||
set_echo_compat
|
||||
|
||||
echo
|
||||
echo
|
||||
echo
|
||||
echo
|
||||
echo "NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL"
|
||||
echo " SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!"
|
||||
echo
|
||||
echo
|
||||
|
||||
echo "In order to log into MySQL to secure it, we'll need the current"
|
||||
echo "password for the root user. If you've just installed MySQL, and"
|
||||
echo "you haven't set the root password yet, the password will be blank,"
|
||||
@ -309,14 +455,9 @@ echo
|
||||
|
||||
cleanup
|
||||
|
||||
echo
|
||||
echo
|
||||
echo
|
||||
echo "All done! If you've completed all of the above steps, your MySQL"
|
||||
echo "installation should now be secure."
|
||||
echo
|
||||
echo "Thanks for using MySQL!"
|
||||
echo
|
||||
echo
|
||||
|
||||
|
||||
|
@ -999,7 +999,7 @@ static bool print_admin_msg(THD* thd, const char* msg_type,
|
||||
|
||||
if (!thd->vio_ok())
|
||||
{
|
||||
sql_print_error(msgbuf);
|
||||
sql_print_error(fmt, args);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
@ -4868,7 +4868,8 @@ bool flush_error_log()
|
||||
size_t bytes;
|
||||
uchar buf[IO_SIZE];
|
||||
|
||||
freopen(err_temp,"a+",stderr);
|
||||
if (!freopen(err_temp,"a+",stderr))
|
||||
sql_print_error("Couldn't reopen stderr");
|
||||
setbuf(stderr, NULL);
|
||||
(void) my_delete(err_renamed, MYF(0));
|
||||
my_rename(log_error_file,err_renamed,MYF(0));
|
||||
|
@ -2131,8 +2131,8 @@ void win_install_sigabrt_handler(void)
|
||||
#ifdef DEBUG_UNHANDLED_EXCEPTION_FILTER
|
||||
#define DEBUGGER_ATTACH_TIMEOUT 120
|
||||
/*
|
||||
Wait for debugger to attach and break into debugger. If debugger is not attached,
|
||||
resume after timeout.
|
||||
Wait for debugger to attach and break into debugger. If debugger is
|
||||
not attached, resume after timeout.
|
||||
*/
|
||||
static void wait_for_debugger(int timeout_sec)
|
||||
{
|
||||
@ -3879,7 +3879,8 @@ static int init_server_components()
|
||||
if (freopen(log_error_file, "a+", stdout))
|
||||
#endif
|
||||
{
|
||||
freopen(log_error_file, "a+", stderr);
|
||||
if (!(freopen(log_error_file, "a+", stderr)))
|
||||
sql_print_warning("Couldn't reopen stderr");
|
||||
setbuf(stderr, NULL);
|
||||
}
|
||||
}
|
||||
@ -4518,8 +4519,11 @@ we force server id to 2, but this MySQL server will not act as a slave.");
|
||||
#ifdef __WIN__
|
||||
if (!opt_console)
|
||||
{
|
||||
freopen(log_error_file,"a+",stdout);
|
||||
freopen(log_error_file,"a+",stderr);
|
||||
if (!freopen(log_error_file,"a+",stdout) ||
|
||||
!freopen(log_error_file,"a+",stderr))
|
||||
{
|
||||
sql_print_warning("Couldn't reopen stdout or stderr");
|
||||
}
|
||||
setbuf(stderr, NULL);
|
||||
FreeConsole(); // Remove window
|
||||
}
|
||||
@ -4589,7 +4593,13 @@ we force server id to 2, but this MySQL server will not act as a slave.");
|
||||
{
|
||||
select_thread_in_use= 0; // Allow 'kill' to work
|
||||
bootstrap(stdin);
|
||||
unireg_abort(bootstrap_error ? 1 : 0);
|
||||
if (!kill_in_progress)
|
||||
unireg_abort(bootstrap_error ? 1 : 0);
|
||||
else
|
||||
{
|
||||
sleep(2); // Wait for kill
|
||||
exit(0);
|
||||
}
|
||||
}
|
||||
if (opt_init_file)
|
||||
{
|
||||
@ -4741,7 +4751,7 @@ default_service_handling(char **argv,
|
||||
if (opt_delim= strchr(extra_opt, '='))
|
||||
{
|
||||
size_t length= ++opt_delim - extra_opt;
|
||||
strnmov(pos, extra_opt, length);
|
||||
pos= strnmov(pos, extra_opt, length);
|
||||
}
|
||||
else
|
||||
opt_delim= extra_opt;
|
||||
@ -5772,7 +5782,7 @@ enum options_mysqld
|
||||
OPT_RECORD_RND_BUFFER, OPT_DIV_PRECINCREMENT, OPT_RELAY_LOG_SPACE_LIMIT,
|
||||
OPT_RELAY_LOG_PURGE,
|
||||
OPT_SLAVE_NET_TIMEOUT, OPT_SLAVE_COMPRESSED_PROTOCOL, OPT_SLOW_LAUNCH_TIME,
|
||||
OPT_SLAVE_TRANS_RETRIES, OPT_READONLY, OPT_DEBUGGING,
|
||||
OPT_SLAVE_TRANS_RETRIES, OPT_READONLY, OPT_DEBUGGING, OPT_DEBUG_FLUSH,
|
||||
OPT_SORT_BUFFER, OPT_TABLE_OPEN_CACHE, OPT_TABLE_DEF_CACHE,
|
||||
OPT_THREAD_CONCURRENCY, OPT_THREAD_CACHE_SIZE,
|
||||
OPT_TMP_TABLE_SIZE, OPT_THREAD_STACK,
|
||||
@ -5993,6 +6003,8 @@ struct my_option my_long_options[] =
|
||||
"Call my_debug_put_break_here() if crc matches this number (for debug).",
|
||||
(uchar**) &opt_my_crc_dbug_check, (uchar**) &opt_my_crc_dbug_check,
|
||||
0, GET_ULONG, REQUIRED_ARG, 0, 0, ~(ulong) 0L, 0, 0, 0},
|
||||
{"debug-flush", OPT_DEBUG_FLUSH, "Default debug log with flush after write",
|
||||
(uchar**) 0, (uchar**) 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0},
|
||||
#endif
|
||||
{"default-character-set", 'C', "Set the default character set (deprecated option, use --character-set-server instead).",
|
||||
(uchar**) &default_character_set_name, (uchar**) &default_character_set_name,
|
||||
@ -6661,7 +6673,7 @@ log and this option does nothing anymore.",
|
||||
0, 0, 0, 0, 0},
|
||||
|
||||
{"test-ignore-wrong-options", OPT_TEST_IGNORE_WRONG_OPTIONS,
|
||||
"Ignore wrong enums values in command line arguments. Usefull only for test scripts",
|
||||
"Ignore wrong enums values in command line arguments. Useful only for test scripts",
|
||||
(uchar**) &opt_ignore_wrong_options, (uchar**) &opt_ignore_wrong_options,
|
||||
0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
|
||||
{"timed_mutexes", OPT_TIMED_MUTEXES,
|
||||
@ -7201,7 +7213,7 @@ The minimum value for this variable is 4096.",
|
||||
{"thread_stack", OPT_THREAD_STACK,
|
||||
"The stack size for each thread.", (uchar**) &my_thread_stack_size,
|
||||
(uchar**) &my_thread_stack_size, 0, GET_ULONG, REQUIRED_ARG,DEFAULT_THREAD_STACK,
|
||||
1024L*128L, (longlong) ULONG_MAX, 0, 1024, 0},
|
||||
(sizeof(void*)<=4)?1024L*128L: ((256-16)*1024L), (longlong) ULONG_MAX, 0, 1024, 0},
|
||||
{ "time_format", OPT_TIME_FORMAT,
|
||||
"The TIME format (for future).",
|
||||
(uchar**) &opt_date_time_formats[MYSQL_TIMESTAMP_TIME],
|
||||
@ -8111,6 +8123,9 @@ mysqld_get_one_option(int optid,
|
||||
|
||||
switch(optid) {
|
||||
#ifndef DBUG_OFF
|
||||
case OPT_DEBUG_FLUSH:
|
||||
argument= IF_WIN(default_dbug_option, (char*) "d:t:i:O,/tmp/mysqld.trace");
|
||||
/* fall through */
|
||||
case '#':
|
||||
if (!argument)
|
||||
argument= (char*) default_dbug_option;
|
||||
|
@ -295,7 +295,7 @@ Failed to open the existing relay log info file '%s' (errno %d)",
|
||||
DBUG_RETURN(error);
|
||||
|
||||
err:
|
||||
sql_print_error(msg);
|
||||
sql_print_error("%s", msg);
|
||||
end_io_cache(&rli->info_file);
|
||||
if (info_fd >= 0)
|
||||
my_close(info_fd, MYF(0));
|
||||
|
@ -4296,9 +4296,13 @@ uchar *sys_var_thd_dbug::value_ptr(THD *thd, enum_var_type type, LEX_STRING *b)
|
||||
{
|
||||
char buf[256];
|
||||
if (type == OPT_GLOBAL)
|
||||
{
|
||||
DBUG_EXPLAIN_INITIAL(buf, sizeof(buf));
|
||||
}
|
||||
else
|
||||
{
|
||||
DBUG_EXPLAIN(buf, sizeof(buf));
|
||||
}
|
||||
return (uchar*) thd->strdup(buf);
|
||||
}
|
||||
|
||||
|
10
sql/slave.cc
10
sql/slave.cc
@ -1145,7 +1145,7 @@ err:
|
||||
if (master_res)
|
||||
mysql_free_result(master_res);
|
||||
DBUG_ASSERT(err_code != 0);
|
||||
mi->report(ERROR_LEVEL, err_code, err_buff);
|
||||
mi->report(ERROR_LEVEL, err_code, "%s", err_buff);
|
||||
DBUG_RETURN(1);
|
||||
}
|
||||
|
||||
@ -2340,7 +2340,7 @@ static bool check_io_slave_killed(THD *thd, Master_info *mi, const char *info)
|
||||
if (io_slave_killed(thd, mi))
|
||||
{
|
||||
if (info && global_system_variables.log_warnings)
|
||||
sql_print_information(info);
|
||||
sql_print_information("%s", info);
|
||||
return TRUE;
|
||||
}
|
||||
return FALSE;
|
||||
@ -2410,13 +2410,13 @@ static int try_to_reconnect(THD *thd, MYSQL *mysql, Master_info *mi,
|
||||
}
|
||||
else
|
||||
{
|
||||
sql_print_information(buf);
|
||||
sql_print_information("%s", buf);
|
||||
}
|
||||
}
|
||||
if (safe_reconnect(thd, mysql, mi, 1) || io_slave_killed(thd, mi))
|
||||
{
|
||||
if (global_system_variables.log_warnings)
|
||||
sql_print_information(messages[SLAVE_RECON_MSG_KILLED_AFTER]);
|
||||
sql_print_information("%s", messages[SLAVE_RECON_MSG_KILLED_AFTER]);
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
@ -2998,7 +2998,7 @@ log '%s' at position %s, relay log '%s' position: %s", RPL_LOG_NAME,
|
||||
This function is reporting an error which was not reported
|
||||
while executing exec_relay_log_event().
|
||||
*/
|
||||
rli->report(ERROR_LEVEL, thd->main_da.sql_errno(), errmsg);
|
||||
rli->report(ERROR_LEVEL, thd->main_da.sql_errno(), "%s", errmsg);
|
||||
}
|
||||
else if (last_errno != thd->main_da.sql_errno())
|
||||
{
|
||||
|
@ -383,7 +383,7 @@ static void debug_wait_for_kill(const char *info)
|
||||
thd= current_thd;
|
||||
prev_info= thd->proc_info;
|
||||
thd->proc_info= info;
|
||||
sql_print_information(info);
|
||||
sql_print_information("%s", info);
|
||||
while(!thd->killed)
|
||||
my_sleep(1000);
|
||||
thd->killed= THD::NOT_KILLED;
|
||||
|
@ -485,7 +485,11 @@ pthread_handler_t handle_bootstrap(void *arg)
|
||||
break;
|
||||
}
|
||||
buff= (char*) thd->net.buff;
|
||||
fgets(buff + length, thd->net.max_packet - length, file);
|
||||
if (!fgets(buff + length, thd->net.max_packet - length, file))
|
||||
{
|
||||
bootstrap_error= 1;
|
||||
break;
|
||||
}
|
||||
length+= (ulong) strlen(buff + length);
|
||||
/* purecov: end */
|
||||
}
|
||||
|
@ -367,8 +367,8 @@ static st_plugin_dl *plugin_dl_add(const LEX_STRING *dl, int report)
|
||||
{
|
||||
if (report & REPORT_TO_USER)
|
||||
my_error(ER_UDF_NO_PATHS, MYF(0));
|
||||
if (report & REPORT_TO_LOG)
|
||||
sql_print_error(ER(ER_UDF_NO_PATHS));
|
||||
if ((report & (REPORT_TO_LOG | REPORT_TO_USER)) == REPORT_TO_LOG)
|
||||
sql_print_error("%s", ER(ER_UDF_NO_PATHS));
|
||||
DBUG_RETURN(0);
|
||||
}
|
||||
/* If this dll is already loaded just increase ref_count. */
|
||||
|
@ -9819,7 +9819,7 @@ create_tmp_table(THD *thd,TMP_TABLE_PARAM *param,List<Item> &fields,
|
||||
bool using_unique_constraint= 0;
|
||||
bool use_packed_rows= 0;
|
||||
bool not_all_columns= !(select_options & TMP_TABLE_ALL_COLUMNS);
|
||||
char *tmpname,path[FN_REFLEN];
|
||||
char *tmpname,path[FN_REFLEN], tmp_table_name[50];
|
||||
uchar *pos, *group_buff, *bitmaps;
|
||||
uchar *null_flags;
|
||||
Field **reg_field, **from_field, **default_field;
|
||||
@ -9846,12 +9846,12 @@ create_tmp_table(THD *thd,TMP_TABLE_PARAM *param,List<Item> &fields,
|
||||
temp_pool_slot = bitmap_lock_set_next(&temp_pool);
|
||||
|
||||
if (temp_pool_slot != MY_BIT_NONE) // we got a slot
|
||||
sprintf(path, "%s_%lx_%i", tmp_file_prefix,
|
||||
sprintf(tmp_table_name, "%s_%lx_%i", tmp_file_prefix,
|
||||
current_pid, temp_pool_slot);
|
||||
else
|
||||
{
|
||||
/* if we run out of slots or we are not using tempool */
|
||||
sprintf(path,"%s%lx_%lx_%x", tmp_file_prefix,current_pid,
|
||||
sprintf(tmp_table_name, "%s%lx_%lx_%x", tmp_file_prefix,current_pid,
|
||||
thd->thread_id, thd->tmp_table++);
|
||||
}
|
||||
|
||||
@ -9859,7 +9859,8 @@ create_tmp_table(THD *thd,TMP_TABLE_PARAM *param,List<Item> &fields,
|
||||
No need to change table name to lower case as we are only creating
|
||||
MyISAM, Maria or HEAP tables here
|
||||
*/
|
||||
fn_format(path, path, mysql_tmpdir, "", MY_REPLACE_EXT|MY_UNPACK_FILENAME);
|
||||
fn_format(path, tmp_table_name, mysql_tmpdir, "",
|
||||
MY_REPLACE_EXT|MY_UNPACK_FILENAME);
|
||||
|
||||
if (group)
|
||||
{
|
||||
@ -9905,7 +9906,7 @@ create_tmp_table(THD *thd,TMP_TABLE_PARAM *param,List<Item> &fields,
|
||||
sizeof(*key_part_info)*(param->group_parts+1),
|
||||
¶m->start_recinfo,
|
||||
sizeof(*param->recinfo)*(field_count*2+4),
|
||||
&tmpname, (uint) strlen(path)+1,
|
||||
&tmpname, (uint) strlen(tmp_table_name)+1,
|
||||
&group_buff, (group && ! using_unique_constraint ?
|
||||
param->group_length : 0),
|
||||
&bitmaps, bitmap_buffer_size(field_count)*2,
|
||||
@ -9924,7 +9925,7 @@ create_tmp_table(THD *thd,TMP_TABLE_PARAM *param,List<Item> &fields,
|
||||
DBUG_RETURN(NULL); /* purecov: inspected */
|
||||
}
|
||||
param->items_to_copy= copy_func;
|
||||
strmov(tmpname,path);
|
||||
strmov(tmpname, tmp_table_name);
|
||||
/* make table according to fields */
|
||||
|
||||
bzero((char*) table,sizeof(*table));
|
||||
@ -11813,7 +11814,7 @@ join_read_const_table(JOIN_TAB *tab, POSITION *pos)
|
||||
{
|
||||
#if !defined(DBUG_OFF) && defined(NOT_USING_ITEM_EQUAL)
|
||||
/*
|
||||
This test could be very usefull to find bugs in the optimizer
|
||||
This test could be very useful to find bugs in the optimizer
|
||||
where we would call this function with an expression that can't be
|
||||
evaluated yet. We can't have this enabled by default as long as
|
||||
have items like Item_equal, that doesn't report they are const but
|
||||
|
@ -139,7 +139,9 @@ typedef long long longlong;
|
||||
#include <mysql.h>
|
||||
#include <ctype.h>
|
||||
|
||||
#if !defined(HAVE_GETHOSTBYADDR_R) || !defined(HAVE_SOLARIS_STYLE_GETHOST)
|
||||
static pthread_mutex_t LOCK_hostname;
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_DLOPEN
|
||||
|
||||
@ -205,7 +207,7 @@ char *is_const(UDF_INIT *initid, UDF_ARGS *args, char *result, unsigned long
|
||||
** try to keep the error message less than 80 bytes long!
|
||||
**
|
||||
** This function should return 1 if something goes wrong. In this case
|
||||
** message should contain something usefull!
|
||||
** message should contain something useful!
|
||||
**************************************************************************/
|
||||
|
||||
#define MAXMETAPH 8
|
||||
|
@ -32,7 +32,7 @@ SUBDIRS = . unittest
|
||||
|
||||
EXTRA_DIST = ma_test_all.sh ma_test_all.res ma_test_big.sh \
|
||||
ma_ft_stem.c CMakeLists.txt plug.in ma_test_recovery
|
||||
pkgdata_DATA = ma_test_all ma_test_all.res ma_test_recovery
|
||||
pkgdata_DATA =
|
||||
pkglib_LIBRARIES = libmaria.a
|
||||
bin_PROGRAMS = maria_chk maria_pack maria_ftdump maria_read_log \
|
||||
maria_dump_log
|
||||
|
@ -266,7 +266,7 @@ static void _ma_check_print_msg(HA_CHECK *param, const char *msg_type,
|
||||
|
||||
if (!thd->vio_ok())
|
||||
{
|
||||
sql_print_error(msgbuf);
|
||||
sql_print_error(fmt, args);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -1619,7 +1619,7 @@ int ha_maria::preload_keys(THD * thd, HA_CHECK_OPT *check_opt)
|
||||
param.db_name= table->s->db.str;
|
||||
param.table_name= table->s->table_name.str;
|
||||
param.testflag= 0;
|
||||
_ma_check_print_error(¶m, errmsg);
|
||||
_ma_check_print_error(¶m, "%s", errmsg);
|
||||
DBUG_RETURN(HA_ADMIN_FAILED);
|
||||
}
|
||||
DBUG_RETURN(HA_ADMIN_OK);
|
||||
|
@ -199,13 +199,17 @@ int maria_recovery_from_log(void)
|
||||
int res= 1;
|
||||
FILE *trace_file;
|
||||
uint warnings_count;
|
||||
#ifdef EXTRA_DEBUG
|
||||
char name_buff[FN_REFLEN];
|
||||
#endif
|
||||
DBUG_ENTER("maria_recovery_from_log");
|
||||
|
||||
DBUG_ASSERT(!maria_in_recovery);
|
||||
maria_in_recovery= TRUE;
|
||||
|
||||
#ifdef EXTRA_DEBUG
|
||||
trace_file= fopen("maria_recovery.trace", "a+");
|
||||
fn_format(name_buff, "maria_recovery.trace", maria_data_root, "", MYF(0));
|
||||
trace_file= my_fopen(name_buff, O_WRONLY|O_APPEND|O_CREAT, MYF(MY_WME));
|
||||
#else
|
||||
trace_file= NULL; /* no trace file for being fast */
|
||||
#endif
|
||||
@ -222,7 +226,7 @@ int maria_recovery_from_log(void)
|
||||
warnings_count);
|
||||
}
|
||||
if (trace_file)
|
||||
fclose(trace_file);
|
||||
my_fclose(trace_file, MYF(0));
|
||||
maria_in_recovery= FALSE;
|
||||
DBUG_RETURN(res);
|
||||
}
|
||||
|
@ -113,10 +113,8 @@ static my_bool check_content(uchar *ptr, ulong length)
|
||||
|
||||
void read_ok(TRANSLOG_HEADER_BUFFER *rec)
|
||||
{
|
||||
char buff[80];
|
||||
my_snprintf(buff, sizeof(buff), "read record type: %u LSN: (%lu,0x%lx)",
|
||||
rec->type, LSN_IN_PARTS(rec->lsn));
|
||||
ok(1, buff);
|
||||
ok(1, "read record type: %u LSN: (%lu,0x%lx)",
|
||||
rec->type, LSN_IN_PARTS(rec->lsn));
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -28,7 +28,7 @@ LDADD =
|
||||
DEFS = @DEFS@
|
||||
|
||||
EXTRA_DIST = mi_test_all.sh mi_test_all.res ft_stem.c CMakeLists.txt plug.in
|
||||
pkgdata_DATA = mi_test_all mi_test_all.res
|
||||
pkgdata_DATA =
|
||||
|
||||
pkglib_LIBRARIES = libmyisam.a
|
||||
bin_PROGRAMS = myisamchk myisamlog myisampack myisam_ftdump
|
||||
|
@ -21,10 +21,8 @@
|
||||
* H&G2JCtL
|
||||
*/
|
||||
|
||||
#include "mysql_priv.h"
|
||||
#include "xt_config.h"
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <ctype.h>
|
||||
|
||||
#include "strutil_xt.h"
|
||||
@ -109,6 +107,14 @@ xtPublic void xt_2nd_last_name_of_path(size_t size, char *dest, c_char *path)
|
||||
*dest = 0;
|
||||
return;
|
||||
}
|
||||
/* If temporary file */
|
||||
if (!is_prefix(path, mysql_data_home) &&
|
||||
!is_prefix(path, mysql_real_data_home))
|
||||
{
|
||||
*dest= 0;
|
||||
return;
|
||||
}
|
||||
|
||||
ptr = path + len - 1;
|
||||
while (ptr != path && !XT_IS_DIR_CHAR(*ptr))
|
||||
ptr--;
|
||||
|
@ -53,7 +53,9 @@ pkgsupp_DATA = my-small.cnf \
|
||||
ndb-config-2-node.ini
|
||||
|
||||
pkgsupp_SCRIPTS = mysql.server \
|
||||
mysqld_multi.server
|
||||
mysqld_multi.server \
|
||||
binary-configure \
|
||||
mysql-log-rotate
|
||||
|
||||
aclocaldir = $(datadir)/aclocal
|
||||
aclocal_DATA = mysql.m4
|
||||
|
0
support-files/config.huge.ini.sh
Executable file → Normal file
0
support-files/config.huge.ini.sh
Executable file → Normal file
0
support-files/config.medium.ini.sh
Executable file → Normal file
0
support-files/config.medium.ini.sh
Executable file → Normal file
0
support-files/config.small.ini.sh
Executable file → Normal file
0
support-files/config.small.ini.sh
Executable file → Normal file
@ -174,7 +174,7 @@ default-storage-engine = MYISAM
|
||||
# memory, while if you use your own stack hungry UDF functions or your
|
||||
# OS requires more stack for some operations, you might need to set this
|
||||
# to a higher value.
|
||||
thread_stack = 192K
|
||||
thread_stack = 240K
|
||||
|
||||
# Set the default transaction isolation level. Levels available are:
|
||||
# READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ, SERIALIZABLE
|
||||
|
@ -34,7 +34,7 @@ sort_buffer_size = 64K
|
||||
read_buffer_size = 256K
|
||||
read_rnd_buffer_size = 256K
|
||||
net_buffer_length = 2K
|
||||
thread_stack = 128K
|
||||
thread_stack = 240K
|
||||
|
||||
# Don't listen on a TCP/IP port at all. This can be a security enhancement,
|
||||
# if all processes that need to connect to mysqld run on the same host.
|
||||
|
@ -77,7 +77,12 @@ else
|
||||
datadir="$basedir/data"
|
||||
fi
|
||||
sbindir="$basedir/sbin"
|
||||
libexecdir="$basedir/libexec"
|
||||
if test -f "$basedir/bin/mysqld"
|
||||
then
|
||||
libexecdir="$basedir/bin"
|
||||
else
|
||||
libexecdir="$basedir/libexec"
|
||||
fi
|
||||
fi
|
||||
|
||||
# datadir_set is used to determine if datadir was set (and so should be
|
||||
@ -126,6 +131,12 @@ parse_server_arguments() {
|
||||
datadir="$basedir/data"
|
||||
fi
|
||||
sbindir="$basedir/sbin"
|
||||
if test -f "$basedir/bin/mysqld"
|
||||
then
|
||||
libexecdir="$basedir/bin"
|
||||
else
|
||||
libexecdir="$basedir/libexec"
|
||||
fi
|
||||
libexecdir="$basedir/libexec"
|
||||
;;
|
||||
--datadir=*) datadir=`echo "$arg" | sed -e 's/^[^=]*=//'`
|
||||
@ -434,9 +445,36 @@ case "$mode" in
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
'configtest')
|
||||
# Safeguard (relative paths, core dumps..)
|
||||
cd $basedir
|
||||
echo $echo_n "Testing MySQL configuration syntax"
|
||||
daemon=$bindir/mysqld
|
||||
if test -x $libexecdir/mysqld
|
||||
then
|
||||
daemon=$libexecdir/mysqld
|
||||
elif test -x $sbindir/mysqld
|
||||
then
|
||||
daemon=$sbindir/mysqld
|
||||
elif test -x `which mysqld`
|
||||
then
|
||||
daemon=`which mysqld`
|
||||
else
|
||||
log_failure_msg "Unable to locate the mysqld binary!"
|
||||
exit 1
|
||||
fi
|
||||
help_out=`$daemon --help 2>&1`; r=$?
|
||||
if test "$r" != 0 ; then
|
||||
log_failure_msg "$help_out"
|
||||
log_failure_msg "There are syntax errors in the server configuration. Please fix them!"
|
||||
else
|
||||
log_success_msg "Syntax OK"
|
||||
fi
|
||||
exit $r
|
||||
;;
|
||||
*)
|
||||
# usage
|
||||
echo "Usage: $0 {start|stop|restart|reload|force-reload|status} [ MySQL server options ]"
|
||||
echo "Usage: $0 {start|stop|restart|reload|force-reload|status|configtest} [ MySQL server options ]"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
@ -1157,7 +1157,7 @@ my_bool fetch_n(const char **query_list, unsigned query_count,
|
||||
|
||||
/* Separate thread query to test some cases */
|
||||
|
||||
static my_bool thread_query(char *query)
|
||||
static my_bool thread_query(const char *query)
|
||||
{
|
||||
MYSQL *l_mysql;
|
||||
my_bool error;
|
||||
@ -1179,7 +1179,7 @@ static my_bool thread_query(char *query)
|
||||
goto end;
|
||||
}
|
||||
l_mysql->reconnect= 1;
|
||||
if (mysql_query(l_mysql, (char *)query))
|
||||
if (mysql_query(l_mysql, query))
|
||||
{
|
||||
fprintf(stderr, "Query failed (%s)\n", mysql_error(l_mysql));
|
||||
error= 1;
|
||||
@ -5803,7 +5803,7 @@ static void test_prepare_alter()
|
||||
rc= mysql_stmt_execute(stmt);
|
||||
check_execute(stmt, rc);
|
||||
|
||||
if (thread_query((char *)"ALTER TABLE test_prep_alter change id id_new varchar(20)"))
|
||||
if (thread_query("ALTER TABLE test_prep_alter change id id_new varchar(20)"))
|
||||
exit(1);
|
||||
|
||||
is_null= 1;
|
||||
|
@ -66,6 +66,7 @@ main(void)
|
||||
ok(cmp == 0, "Comparing encode-decode result");
|
||||
if (cmp != 0)
|
||||
{
|
||||
/* FIXME: This only prints last value of the compared strings */
|
||||
char buf[80];
|
||||
diag(" --------- src --------- --------- dst ---------");
|
||||
for (k= 0; k<src_len; k+=8)
|
||||
@ -84,7 +85,7 @@ main(void)
|
||||
unsigned char c= dst[k+l];
|
||||
sprintf(buf, "%.2x ", (unsigned)c);
|
||||
}
|
||||
diag(buf);
|
||||
diag("%s", buf);
|
||||
}
|
||||
diag("src length: %.8x, dst length: %.8x\n",
|
||||
(uint) src_len, (uint) dst_len);
|
||||
|
Loading…
x
Reference in New Issue
Block a user