Commit c6ac1e39 authored by Marko Mäkelä's avatar Marko Mäkelä

Merge 11.0 into 11.1

parents 26b96094 f2b4972b
......@@ -135,6 +135,44 @@ void my_function_2()
}
```
#### Preprocessor directives
Compiler preprocessor directives should have no indentation to them, even if in the middle of indented code.
For example:
```c
case SSL_TYPE_NONE: // SSL is not required
if (opt_require_secure_transport)
{
enum enum_vio_type type= vio_type(vio);
#ifdef HAVE_OPENSSL
return type != VIO_TYPE_SSL &&
#ifndef _WIN32
type != VIO_TYPE_SOCKET;
#else
type != VIO_TYPE_NAMEDPIPE;
#endif
#else
#ifndef _WIN32
return type != VIO_TYPE_SOCKET;
#else
return type != VIO_TYPE_NAMEDPIPE;
#endif
#endif
}
```
Comments reflecting the original `#if` condition can be appended to `#else` / `#endif` to provide additional clarity. This can be useful for large code blocks between the start and end preprocessor directives or nested preprocessor directives.
For example:
```c
#ifndef EMBEDDED_LIBRARY
...
#else /* ! EMBEDDED_LIBRARY */
...
#endif /* ! EMBEDDED_LIBRARY */
```
### File names
File names should be lower case with underscore word separators.
......
......@@ -319,6 +319,7 @@ ENDIF()
# MDEV-24629, we need it outside of ELSIFs
IF(RPM MATCHES "fedora")
ALTERNATIVE_NAME("common" "mariadb-connector-c-config" ${MARIADB_CONNECTOR_C_VERSION}-1)
ALTERNATIVE_NAME("shared" "mariadb-connector-c" ${MARIADB_CONNECTOR_C_VERSION}-1)
ENDIF()
SET(PYTHON_SHEBANG "/usr/bin/python3" CACHE STRING "python shebang")
......
......@@ -566,9 +566,7 @@ Description: MariaDB database client binaries
Package: mariadb-client-compat
Architecture: all
Depends: mariadb-client (>= ${source:Version})
Multi-Arch: foreign
Description: MySQL compatibility links to mariadb-client binaries/scripts.
Conflicts: mariadb-client (< 11.0.0),
Conflicts: mariadb-client (<< 11.0.0),
mariadb-client-10.0,
mariadb-client-10.1,
mariadb-client-10.2,
......@@ -582,7 +580,7 @@ Conflicts: mariadb-client (< 11.0.0),
mariadb-client-5.2,
mariadb-client-5.3,
mariadb-client-5.5,
mariadb-client-core (< 11.0.0),
mariadb-client-core (<< 11.0.0),
mariadb-client-core-10.0,
mariadb-client-core-10.1,
mariadb-client-core-10.2,
......@@ -610,7 +608,7 @@ Conflicts: mariadb-client (< 11.0.0),
mysql-client-core-5.6,
mysql-client-core-5.7,
mysql-client-core-8.0,
mariadb-server (< 11.0.0),
mariadb-server (<< 11.0.0),
mariadb-server-10.0,
mariadb-server-10.1,
mariadb-server-10.2,
......@@ -620,7 +618,7 @@ Conflicts: mariadb-client (< 11.0.0),
mariadb-server-10.6,
mariadb-server-10.7,
mariadb-server-10.8,
mariadb-server-core (< 11.0.0),
mariadb-server-core (<< 11.0.0),
mariadb-server-core-10.0,
mariadb-server-core-10.1,
mariadb-server-core-10.2,
......@@ -637,6 +635,13 @@ Conflicts: mariadb-client (< 11.0.0),
percona-xtradb-cluster-server-5.6,
percona-xtradb-cluster-server-5.7,
percona-xtradb-cluster-server
Multi-Arch: foreign
Description: MySQL compatibility links to mariadb-client binaries/scripts.
The package contains links and binaries that are needed by MySQL centric
tools which also works with MariaDB.
.
This package is also useful for users with strong background in MySQL
maintenance, but wants to switch to MariaDB
Package: mariadb-server-core
Architecture: any
......@@ -861,9 +866,7 @@ Description: MariaDB database server binaries
Package: mariadb-server-compat
Architecture: all
Depends: mariadb-server (>= ${source:Version}),
Multi-Arch: foreign
Description: MySQL compatibility links to mariadb-server binaries/scripts.
Conflicts: mariadb-server-core (< 11.0.0),
Conflicts: mariadb-server-core (<< 11.0.0),
mariadb-server-core-10.0,
mariadb-server-core-10.1,
mariadb-server-core-10.2,
......@@ -877,7 +880,7 @@ Conflicts: mariadb-server-core (< 11.0.0),
mariadb-server-core-5.2,
mariadb-server-core-5.3,
mariadb-server-core-5.5,
mariadb-server (< 11.0.0),
mariadb-server (<< 11.0.0),
mariadb-server-10.0,
mariadb-server-10.1,
mariadb-server-10.2,
......@@ -904,6 +907,13 @@ Conflicts: mariadb-server-core (< 11.0.0),
percona-xtradb-cluster-server-5.6,
percona-xtradb-cluster-server-5.7,
percona-xtradb-cluster-server
Multi-Arch: foreign
Description: MySQL compatibility links to mariadb-server binaries/scripts.
The package contains links and binaries that are needed by MySQL centric
tools which also works with MariaDB.
.
This package is also useful for users with strong background in MySQL
maintenance, but wants to switch to MariaDB
Package: mariadb-backup
Architecture: any
......
# 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
library-not-linked-against-libc [usr/lib/mysql/plugin/provider_bzip2.so]
# 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
library-not-linked-against-libc [usr/lib/mysql/plugin/provider_lz4.so]
# 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
library-not-linked-against-libc [usr/lib/mysql/plugin/provider_lzma.so]
# 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
library-not-linked-against-libc [usr/lib/mysql/plugin/provider_lzo.so]
# 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
library-not-linked-against-libc [usr/lib/mysql/plugin/provider_snappy.so]
This diff is collapsed.
# MariaDB use high enough debhelper so this is should
# be considered as bug in lintia
missing-build-dependency-for-dh-addon systemd *
# Necessary for drop-in-place-replacement upgrades on mysql-server/-client
# since package breaks/replaces these but at the same time also provides them
version-substvar-for-external-package mariadb-client-core -> mysql-client-5.5
......
......@@ -201,7 +201,7 @@ extern ulonglong strtoull(const char *str, char **ptr, int base);
#ifdef __cplusplus
#include <type_traits>
template<typename T> inline const char *_swl_check(T s)
template<typename T> inline constexpr const char *_swl_check(T s)
{
static_assert(std::is_same<T, const char (&)[sizeof(T)]>::value
|| std::is_same<T, const char [sizeof(T)]>::value,
......
......@@ -40,7 +40,15 @@
/* GNU C/C++ */
#if defined __GNUC__
# define MY_ALIGN_EXT
# define MY_ASSERT_UNREACHABLE() __builtin_unreachable()
/*
__builtin_unreachable() removes the "statement may fall through" warning-as-
error when MY_ASSERT_UNREACHABLE() is used in "case xxx:" in switch (...)
statements.
abort() is there to prevent the execution from reaching the
__builtin_unreachable() as this may cause misleading stack traces.
*/
# define MY_ASSERT_UNREACHABLE() { abort(); __builtin_unreachable(); }
/* Microsoft Visual C++ */
#elif defined _MSC_VER
......@@ -88,7 +96,7 @@
#endif
#ifndef MY_ASSERT_UNREACHABLE
# define MY_ASSERT_UNREACHABLE() do { assert(0); } while (0)
# define MY_ASSERT_UNREACHABLE() do { abort(); } while (0)
#endif
/**
......
'\" t
.\"
.TH "\FBCOMP_ERR\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBCOMP_ERR\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBGALERA_NEW_CLUSTER\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBGALERA_NEW_CLUSTER\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBGALERA_RECOVERY\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBGALERA_RECOVERY\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBINNOCHECKSUM\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBINNOCHECKSUM\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMARIADB-ACCESS\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-ACCESS\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......@@ -400,7 +400,7 @@ script at approximately line 18\&. Search for a line that looks like this:
.RS 4
.\}
.nf
$MYSQL = \'/usr/local/bin/mysql\'; # path to mysql executable
$MYSQL = '/usr/local/bin/mysql'; # path to mysql executable
.fi
.if n \{\
.RE
......
'\" t
.\"
.TH "\FBMARIADB-ADMIN\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-ADMIN\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......@@ -22,7 +22,7 @@ mariadb-admin \- client for administering a MariaDB server (mysqladmin is now a
.SH "DESCRIPTION"
.PP
\fBmysqladmin\fR
is a client for performing administrative operations\&. You can use it to check the server\'s configuration and current status, to create and drop databases, and more\&.
is a client for performing administrative operations\&. You can use it to check the server's configuration and current status, to create and drop databases, and more\&.
.PP
Invoke
\fBmysqladmin\fR
......@@ -763,7 +763,7 @@ If you execute
\fBmysqladmin shutdown\fR
when connecting to a local server using a Unix socket file,
\fBmysqladmin\fR
waits until the server\'s process ID file has been removed, to ensure that the server has stopped properly\&.
waits until the server's process ID file has been removed, to ensure that the server has stopped properly\&.
.\" mysqladmin command options
.\" command options: mysqladmin
.\" options: command-line: mysqladmin
......@@ -871,9 +871,7 @@ option is given\&.
.sp
Write a debugging log\&. A typical
\fIdebug_options\fR
string is
\'d:t:o,\fIfile_name\fR\'\&. The default is
\'d:t:o,/tmp/mysqladmin\&.trace\'\&.
string is 'd:t:o,\fIfile_name\fR'. The default is 'd:t:o,/tmp/mysqladmin.trace'.
.RE
.sp
.RS 4
......
'\" t
.\"
.TH "\FBMARIABACKUP\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIABACKUP\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMARIADB-BINLOG\FR" "1" "14 April 2021" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-BINLOG\fR" "1" "14 April 2021" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......@@ -19,7 +19,7 @@ mariadb-binlog \- utility for processing binary log files (mysqlbinlog is now a
\fBmysqlbinlog [\fR\fBoptions\fR\fB] \fR\fB\fIlog_file\fR\fR\fB \&.\&.\&.\fR
.SH "DESCRIPTION"
.PP
The server\'s binary log consists of files containing
The server's binary log consists of files containing
\(lqevents\(rq
that describe modifications to database contents\&. The server writes these files in binary format\&. To display their contents in text format, use the
\fBmysqlbinlog\fR
......@@ -455,9 +455,7 @@ with row\-based logging prior to MySQL 5\&.1\&.37\&.
.sp
Write a debugging log\&. A typical
\fIdebug_options\fR
string is
\'d:t:o,\fIfile_name\fR\'\&. The default is
\'d:t:o,/tmp/mysqlbinlog\&.trace\'\&.
string is 'd:t:o,\fIfile_name\fR'. The default is 'd:t:o,/tmp/mysqlbinlog.trace'.
.RE
.sp
.RS 4
......@@ -1422,11 +1420,8 @@ Position: The byte position within the log file\&.
.sp -1
.IP \(bu 2.3
.\}
Timestamp: The event timestamp\&. In the example shown,
\'9d fc 5c 43\'
is the representation of
\'051024 17:24:13\'
in hexadecimal\&.
Timestamp: The event timestamp\&. In the example shown, '9d fc 5c 43'
is the representation of '051024 17:24:13' in hexadecimal\&.
.RE
.sp
.RS 4
......@@ -1437,9 +1432,7 @@ in hexadecimal\&.
.sp -1
.IP \(bu 2.3
.\}
Type: The event type code\&. In the example shown,
\'0f\'
indicates a
Type: The event type code\&. In the example shown, '0f' indicates a
FORMAT_DESCRIPTION_EVENT\&. The following table lists the possible type codes\&.
.TS
allbox tab(:);
......@@ -1729,14 +1722,11 @@ T}:T{
.nf
LOG_EVENT_BINLOG_IN_USE_F
T}:T{
Log file correctly closed\&. (Used only in
FORMAT_DESCRIPTION_EVENT\&.) If
this flag is set (if the flags are, for example,
\'01 00\') in a
FORMAT_DESCRIPTION_EVENT, the log
file has not been properly closed\&. Most probably
this is because of a master crash (for example, due
to power failure)\&.
Log file correctly closed\&. (Used only in FORMAT_DESCRIPTION_EVENT\&.) If this
flag is set (if the flags are, for example, '01 00') in a
FORMAT_DESCRIPTION_EVENT, the log file has not been properly closed\&. Most
probably this is because of a master crash (for example, due to power
failure)\&.
T}
T{
02
......@@ -1752,7 +1742,7 @@ T}:T{
LOG_EVENT_THREAD_SPECIFIC_F
T}:T{
Set if the event is dependent on the connection it was executed in (for
example, \'04 00\'), for example,
example, '04 00'), for example,
if the event uses temporary tables\&.
T}
T{
......@@ -1794,8 +1784,8 @@ CREATE TABLE t
date DATE NULL
) ENGINE = InnoDB;
START TRANSACTION;
INSERT INTO t VALUES(1, \'apple\', NULL);
UPDATE t SET name = \'pear\', date = \'2009\-01\-01\' WHERE id = 1;
INSERT INTO t VALUES(1, 'apple', NULL);
UPDATE t SET name = 'pear', date = '2009\-01\-01' WHERE id = 1;
DELETE FROM t WHERE id = 1;
COMMIT;
.fi
......@@ -1817,24 +1807,18 @@ shell> \fBmysqlbinlog \fR\fB\fIlog_file\fR\fR
\&.\&.\&.
# at 218
#080828 15:03:08 server id 1 end_log_pos 258 Write_rows: table id 17 flags: STMT_END_F
BINLOG \'
fAS3SBMBAAAALAAAANoAAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ=
fAS3SBcBAAAAKAAAAAIBAAAQABEAAAAAAAEAA//8AQAAAAVhcHBsZQ==
\'/*!*/;
BINLOG 'fAS3SBMBAAAALAAAANoAAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ=
fAS3SBcBAAAAKAAAAAIBAAAQABEAAAAAAAEAA//8AQAAAAVhcHBsZQ=='/*!*/;
\&.\&.\&.
# at 302
#080828 15:03:08 server id 1 end_log_pos 356 Update_rows: table id 17 flags: STMT_END_F
BINLOG \'
fAS3SBMBAAAALAAAAC4BAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ=
fAS3SBgBAAAANgAAAGQBAAAQABEAAAAAAAEAA////AEAAAAFYXBwbGX4AQAAAARwZWFyIbIP
\'/*!*/;
BINLOG 'fAS3SBMBAAAALAAAAC4BAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ=
fAS3SBgBAAAANgAAAGQBAAAQABEAAAAAAAEAA////AEAAAAFYXBwbGX4AQAAAARwZWFyIbIP'/*!*/;
\&.\&.\&.
# at 400
#080828 15:03:08 server id 1 end_log_pos 442 Delete_rows: table id 17 flags: STMT_END_F
BINLOG \'
fAS3SBMBAAAALAAAAJABAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ=
fAS3SBkBAAAAKgAAALoBAAAQABEAAAAAAAEAA//4AQAAAARwZWFyIbIP
\'/*!*/;
BINLOG 'fAS3SBMBAAAALAAAAJABAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ=
fAS3SBkBAAAAKgAAALoBAAAQABEAAAAAAAEAA//4AQAAAARwZWFyIbIP'/*!*/;
.fi
.if n \{\
.RE
......@@ -1859,43 +1843,37 @@ shell> \fBmysqlbinlog \-v \fR\fB\fIlog_file\fR\fR
\&.\&.\&.
# at 218
#080828 15:03:08 server id 1 end_log_pos 258 Write_rows: table id 17 flags: STMT_END_F
BINLOG \'
fAS3SBMBAAAALAAAANoAAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ=
fAS3SBcBAAAAKAAAAAIBAAAQABEAAAAAAAEAA//8AQAAAAVhcHBsZQ==
\'/*!*/;
BINLOG 'fAS3SBMBAAAALAAAANoAAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ=
fAS3SBcBAAAAKAAAAAIBAAAQABEAAAAAAAEAA//8AQAAAAVhcHBsZQ=='/*!*/;
### INSERT INTO test\&.t
### SET
### @1=1
### @2=\'apple\'
### @2='apple'
### @3=NULL
\&.\&.\&.
# at 302
#080828 15:03:08 server id 1 end_log_pos 356 Update_rows: table id 17 flags: STMT_END_F
BINLOG \'
fAS3SBMBAAAALAAAAC4BAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ=
fAS3SBgBAAAANgAAAGQBAAAQABEAAAAAAAEAA////AEAAAAFYXBwbGX4AQAAAARwZWFyIbIP
\'/*!*/;
BINLOG 'fAS3SBMBAAAALAAAAC4BAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ=
fAS3SBgBAAAANgAAAGQBAAAQABEAAAAAAAEAA////AEAAAAFYXBwbGX4AQAAAARwZWFyIbIP'/*!*/;
### UPDATE test\&.t
### WHERE
### @1=1
### @2=\'apple\'
### @2='apple'
### @3=NULL
### SET
### @1=1
### @2=\'pear\'
### @3=\'2009:01:01\'
### @2='pear'
### @3='2009:01:01'
\&.\&.\&.
# at 400
#080828 15:03:08 server id 1 end_log_pos 442 Delete_rows: table id 17 flags: STMT_END_F
BINLOG \'
fAS3SBMBAAAALAAAAJABAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ=
fAS3SBkBAAAAKgAAALoBAAAQABEAAAAAAAEAA//4AQAAAARwZWFyIbIP
\'/*!*/;
BINLOG 'fAS3SBMBAAAALAAAAJABAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ=
fAS3SBkBAAAAKgAAALoBAAAQABEAAAAAAAEAA//4AQAAAARwZWFyIbIP'/*!*/;
### DELETE FROM test\&.t
### WHERE
### @1=1
### @2=\'pear\'
### @3=\'2009:01:01\'
### @2='pear'
### @3='2009:01:01'
.fi
.if n \{\
.RE
......@@ -1915,43 +1893,37 @@ shell> \fBmysqlbinlog \-vv \fR\fB\fIlog_file\fR\fR
\&.\&.\&.
# at 218
#080828 15:03:08 server id 1 end_log_pos 258 Write_rows: table id 17 flags: STMT_END_F
BINLOG \'
fAS3SBMBAAAALAAAANoAAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ=
fAS3SBcBAAAAKAAAAAIBAAAQABEAAAAAAAEAA//8AQAAAAVhcHBsZQ==
\'/*!*/;
BINLOG 'fAS3SBMBAAAALAAAANoAAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ=
fAS3SBcBAAAAKAAAAAIBAAAQABEAAAAAAAEAA//8AQAAAAVhcHBsZQ=='/*!*/;
### INSERT INTO test\&.t
### SET
### @1=1 /* INT meta=0 nullable=0 is_null=0 */
### @2=\'apple\' /* VARSTRING(20) meta=20 nullable=0 is_null=0 */
### @2='apple' /* VARSTRING(20) meta=20 nullable=0 is_null=0 */
### @3=NULL /* VARSTRING(20) meta=0 nullable=1 is_null=1 */
\&.\&.\&.
# at 302
#080828 15:03:08 server id 1 end_log_pos 356 Update_rows: table id 17 flags: STMT_END_F
BINLOG \'
fAS3SBMBAAAALAAAAC4BAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ=
fAS3SBgBAAAANgAAAGQBAAAQABEAAAAAAAEAA////AEAAAAFYXBwbGX4AQAAAARwZWFyIbIP
\'/*!*/;
BINLOG 'fAS3SBMBAAAALAAAAC4BAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ=
fAS3SBgBAAAANgAAAGQBAAAQABEAAAAAAAEAA////AEAAAAFYXBwbGX4AQAAAARwZWFyIbIP'/*!*/;
### UPDATE test\&.t
### WHERE
### @1=1 /* INT meta=0 nullable=0 is_null=0 */
### @2=\'apple\' /* VARSTRING(20) meta=20 nullable=0 is_null=0 */
### @2='apple' /* VARSTRING(20) meta=20 nullable=0 is_null=0 */
### @3=NULL /* VARSTRING(20) meta=0 nullable=1 is_null=1 */
### SET
### @1=1 /* INT meta=0 nullable=0 is_null=0 */
### @2=\'pear\' /* VARSTRING(20) meta=20 nullable=0 is_null=0 */
### @3=\'2009:01:01\' /* DATE meta=0 nullable=1 is_null=0 */
### @2='pear' /* VARSTRING(20) meta=20 nullable=0 is_null=0 */
### @3='2009:01:01' /* DATE meta=0 nullable=1 is_null=0 */
\&.\&.\&.
# at 400
#080828 15:03:08 server id 1 end_log_pos 442 Delete_rows: table id 17 flags: STMT_END_F
BINLOG \'
fAS3SBMBAAAALAAAAJABAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ=
fAS3SBkBAAAAKgAAALoBAAAQABEAAAAAAAEAA//4AQAAAARwZWFyIbIP
\'/*!*/;
BINLOG 'fAS3SBMBAAAALAAAAJABAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ=
fAS3SBkBAAAAKgAAALoBAAAQABEAAAAAAAEAA//4AQAAAARwZWFyIbIP'/*!*/;
### DELETE FROM test\&.t
### WHERE
### @1=1 /* INT meta=0 nullable=0 is_null=0 */
### @2=\'pear\' /* VARSTRING(20) meta=20 nullable=0 is_null=0 */
### @3=\'2009:01:01\' /* DATE meta=0 nullable=1 is_null=0 */
### @2='pear' /* VARSTRING(20) meta=20 nullable=0 is_null=0 */
### @3='2009:01:01' /* DATE meta=0 nullable=1 is_null=0 */
.fi
.if n \{\
.RE
......@@ -1982,7 +1954,7 @@ shell> \fBmysqlbinlog \-v \-\-base64\-output=DECODE\-ROWS \fR\fB\fIlog_file\fR\f
### INSERT INTO test\&.t
### SET
### @1=1
### @2=\'apple\'
### @2='apple'
### @3=NULL
\&.\&.\&.
# at 302
......@@ -1990,20 +1962,20 @@ shell> \fBmysqlbinlog \-v \-\-base64\-output=DECODE\-ROWS \fR\fB\fIlog_file\fR\f
### UPDATE test\&.t
### WHERE
### @1=1
### @2=\'apple\'
### @2='apple'
### @3=NULL
### SET
### @1=1
### @2=\'pear\'
### @3=\'2009:01:01\'
### @2='pear'
### @3='2009:01:01'
\&.\&.\&.
# at 400
#080828 15:03:08 server id 1 end_log_pos 442 Delete_rows: table id 17 flags: STMT_END_F
### DELETE FROM test\&.t
### WHERE
### @1=1
### @2=\'pear\'
### @3=\'2009:01:01\'
### @2='pear'
### @3='2009:01:01'
.fi
.if n \{\
.RE
......
'\" t
.\"
.TH "\FBMARIADB-CHECK\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-CHECK\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......@@ -79,7 +79,7 @@ table, an attempt to check it produces this result:
.nf
shell> \fBmysqlcheck test t\fR
test\&.t
note : The storage engine for the table doesn\'t support check
note : The storage engine for the table doesn't support check
.fi
.if n \{\
.RE
......@@ -381,9 +381,7 @@ treats the first name argument on the command line as a database name and follow
.sp
Write a debugging log\&. A typical
\fIdebug_options\fR
string is
\'d:t:o,\fIfile_name\fR\'\&. The default is
\'d:t:o\'\&.
string is 'd:t:o,\fIfile_name\fR'. The default is 'd:t:o'.
.RE
.sp
.RS 4
......
'\" t
.\"
.TH "\FBMARIADB-CLIENT-TEST" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-CLIENT-TEST\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......@@ -123,8 +123,7 @@ The database to use\&.
.sp
Write a debugging log if MariaDB is built with debugging support\&. The default
\fIdebug_options\fR
value is
\'d:t:o,/tmp/mysql_client_test\&.trace\'\&.
value is 'd:t:o,/tmp/mysql_client_test.trace'.
.RE
.sp
.RS 4
......
'\" t
.\"
.TH "\FBMARIADB-CONV" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-CONV\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMARIADB-CONVERT-TAB" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-CONVERT-TABLE-FORMAT\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMARIADB-DUMP\FR" "1" "24 October 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-DUMP\fR" "1" "24 October 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......@@ -563,9 +563,7 @@ statements are included in the output before each new database\&.
.sp
Write a debugging log\&. A typical
\fIdebug_options\fR
string is
\'d:t:o,\fIfile_name\fR\'\&. The default value is
\'d:t:o,/tmp/mysqldump\&.trace\'\&.
string is 'd:t:o,\fIfile_name\fR'. The default value is 'd:t:o,/tmp/mysqldump.trace'.
.RE
.sp
.RS 4
......@@ -1022,9 +1020,7 @@ Used together with --tab. When enabled, adds header with column names to the top
.\" hex-blob option: mysqldump
\fB\-\-hex\-blob\fR
.sp
Dump binary columns using hexadecimal notation (for example,
\'abc\'
becomes
Dump binary columns using hexadecimal notation (for example, 'abc' becomes
0x616263)\&. The affected data types are
BINARY,
VARBINARY, the
......@@ -1243,7 +1239,7 @@ It is also possible to set up a slave by dumping an existing slave of the master
.sp -1
.IP " 1." 4.2
.\}
Stop the slave\'s SQL thread and get its current status:
Stop the slave's SQL thread and get its current status:
.sp
.if n \{\
.RS 4
......@@ -1355,7 +1351,7 @@ On the new slave, set the replication coordinates to those of the master server
.\}
.nf
mysql> \fBCHANGE MASTER TO\fR
\-> \fBMASTER_LOG_FILE = \'\fR\fB\fIfile_name\fR\fR\fB\', MASTER_LOG_POS = \fR\fB\fIfile_pos\fR\fR\fB;\fR
\-> \fBMASTER_LOG_FILE = '\fR\fB\fIfile_name\fR\fR\fB', MASTER_LOG_POS = \fR\fB\fIfile_pos\fR\fR\fB;\fR
.fi
.if n \{\
.RE
......@@ -1564,7 +1560,7 @@ See the discussion at the beginning of this section for information about select
.\" order-by-primary option: mysqldump
\fB\-\-order\-by\-primary\fR
.sp
Dump each table\'s rows sorted by its primary key, or by its first unique index, if such an index exists\&. This is useful when dumping a
Dump each table's rows sorted by its primary key, or by its first unique index, if such an index exists\&. This is useful when dumping a
MyISAM
table to be loaded into an
InnoDB
......@@ -2446,7 +2442,7 @@ TIMESTAMP
columns to be dumped and reloaded between servers in different time zones\&.
\fBmysqldump\fR
sets its connection time zone to UTC and adds
SET TIME_ZONE=\'+00:00\'
SET TIME_ZONE='+00:00'
to the dump file\&. Without this option,
TIMESTAMP
columns are dumped and reloaded in the time zones local to the source and destination servers, which can cause the values to change if the servers are in different time zones\&.
......@@ -2515,8 +2511,8 @@ Display version information and exit\&.
.\}
.\" mysqldump: where option
.\" where option: mysqldump
\fB\-\-where=\'\fR\fB\fIwhere_condition\fR\fR\fB\'\fR,
\fB\-w \'\fR\fB\fIwhere_condition\fR\fR\fB\'\fR
\fB\-\-where='\fR\fB\fIwhere_condition\fR\fR\fB'\fR,
\fB\-w '\fR\fB\fIwhere_condition\fR\fR\fB'\fR
.sp
Dump only rows selected by the given
WHERE
......@@ -2528,7 +2524,7 @@ Examples:
.RS 4
.\}
.nf
\-\-where="user=\'jimf\'"
\-\-where="user='jimf'"
\-w"userid>1"
\-w"userid<1"
.fi
......@@ -2552,11 +2548,8 @@ Examples:
.sp
Write dump output as well\-formed XML\&.
.sp
\fBNULL\fR\fB, \fR\fB\'NULL\'\fR\fB, and Empty Values\fR: For a column named
\fIcolumn_name\fR, the
NULL
value, an empty string, and the string value
\'NULL\'
\fBNULL\fR\fB, \fR\fB'NULL'\fR\fB, and Empty Values\fR: For a column named
\fIcolumn_name\fR, the NULL value, an empty string, and the string value 'NULL'
are distinguished from one another in the output generated by this option as follows\&.
.TS
allbox tab(:);
......@@ -2572,12 +2565,12 @@ T}:T{
<field name="\fIcolumn_name\fR" xsi:nil="true" />
T}
T{
\'\' (\fIempty string\fR)
\(aq\(aq (\fIempty string\fR)
T}:T{
<field name="\fIcolumn_name\fR"></field>
T}
T{
\'NULL\' (\fIstring value\fR)
\(aqNULL\(aq (\fIstring value\fR)
T}:T{
<field name="\fIcolumn_name\fR">NULL</field>
T}
......
'\" t
.\"
.TH "\FBMARIADB-DUMPSLOW\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-DUMPSLOW\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......@@ -27,11 +27,7 @@ Normally,
\fBmysqldumpslow\fR
groups queries that are similar except for the particular values of number and string data values\&. It
\(lqabstracts\(rq
these values to
N
and
\'S\'
when displaying summary output\&. The
these values to N and 'S' when displaying summary output\&. The
\fB\-a\fR
and
\fB\-n\fR
......@@ -79,10 +75,7 @@ Display a help message and exit\&.
.\}
\fB\-a\fR
.sp
Do not abstract all numbers to
N
and strings to
\'S\'\&.
Do not abstract all numbers to N and strings to 'S'.
.RE
.sp
.RS 4
......
'\" t
.\"
.TH "\FBMARIADB-FIND-ROWS\F" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-FIND-ROWS\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMARIADB-FIX-EXTENSI" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-FIX-EXTENSIONS\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMARIADB-HOTCOPY\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-HOTCOPY\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMARIADB-IMPORT\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-IMPORT\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......@@ -49,7 +49,7 @@ shell> \fBmysqlimport [\fR\fB\fIoptions\fR\fR\fB] \fR\fB\fIdb_name\fR\fR\fB \fR\
.PP
For each text file named on the command line,
\fBmysqlimport\fR
strips any extension from the file name and uses the result to determine the name of the table into which to import the file\'s contents\&. For example, files named
strips any extension from the file name and uses the result to determine the name of the table into which to import the file's contents\&. For example, files named
patient\&.txt,
patient\&.text, and
patient
......@@ -144,9 +144,7 @@ Compress all information sent between the client and the server if both support
.sp
Write a debugging log\&. A typical
\fIdebug_options\fR
string is
\'d:t:o,\fIfile_name\fR\'\&. The default is
\'d:t:o\'\&.
string is 'd:t:o,\fIfile_name\fR'. The default is 'd:t:o'.
.RE
.sp
.RS 4
......@@ -836,7 +834,7 @@ Here is a sample session that demonstrates use of
.RS 4
.\}
.nf
shell> \fBmysql \-e \'CREATE TABLE imptest(id INT, n VARCHAR(30))\' test\fR
shell> \fBmysql \-e 'CREATE TABLE imptest(id INT, n VARCHAR(30))' test\fR
shell> \fBed\fR
a
100 Max Sydow
......@@ -851,7 +849,7 @@ shell> \fBod \-c imptest\&.txt\fR
0000040
shell> \fBmysqlimport \-\-local test imptest\&.txt\fR
test\&.imptest: Records: 2 Deleted: 0 Skipped: 0 Warnings: 0
shell> \fBmysql \-e \'SELECT * FROM imptest\' test\fR
shell> \fBmysql \-e 'SELECT * FROM imptest' test\fR
+\-\-\-\-\-\-+\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-+
| id | n |
+\-\-\-\-\-\-+\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-+
......
'\" t
.\"
.TH "\FBMARIADB-INSTALL-DB\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-INSTALL-DB\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMARIADB-PLUGIN\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-PLUGIN\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMARIADB-SECURE-INST" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-SECURE-INSTALLATION\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMARIADB-SERVICE-CONVERT\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-SERVICE-CONVERT\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMARIADB-SETPERMISSI" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-SETPERMISSION\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMARIADB-SHOW\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-SHOW\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......@@ -26,7 +26,7 @@ mariadb-show \- display database, table, and column information (mysqlshow is no
.PP
The
\fBmysqlshow\fR
client can be used to quickly see which databases exist, their tables, or a table\'s columns or indexes\&.
client can be used to quickly see which databases exist, their tables, or a table's columns or indexes\&.
.PP
\fBmysqlshow\fR
provides a command\-line interface to several SQL
......@@ -191,9 +191,7 @@ tables\&.
.sp
Write a debugging log\&. A typical
\fIdebug_options\fR
string is
\'d:t:o,\fIfile_name\fR\'\&. The default is
\'d:t:o\'\&.
string is 'd:t:o,\fIfile_name\fR'. The default is 'd:t:o'.
.RE
.sp
.RS 4
......
'\" t
.\"
.TH "\FBMARIADB-SLAP\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-SLAP\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......@@ -105,7 +105,7 @@ build the query SQL statement with a table of two
INT
columns and three
VARCHAR
columns\&. Use five clients querying 20 times each\&. Do not create the table or insert the data (that is, use the previous test\'s schema and data):
columns\&. Use five clients querying 20 times each\&. Do not create the table or insert the data (that is, use the previous test's schema and data):
.sp
.if n \{\
.RS 4
......@@ -119,15 +119,11 @@ mysqlslap \-\-concurrency=5 \-\-iterations=20 \e
.RE
.\}
.PP
Tell the program to load the create, insert, and query SQL statements from the specified files, where the
create\&.sql
file has multiple table creation statements delimited by
\';\'
and multiple insert statements delimited by
\';\'\&. The
Tell the program to load the create, insert, and query SQL statements from the specified files, where the create\&.sql
file has multiple table creation statements delimited by ';' and multiple insert statements delimited by ';'\&. The
\fB\-\-query\fR
file will have multiple queries delimited by
\';\'\&. Run all the load statements, then run all the queries in the query file with five clients (five times each):
file will have multiple queries delimited by ';'\&. Run all the load statements,
then run all the queries in the query file with five clients (five times each):
.sp
.if n \{\
.RS 4
......@@ -427,9 +423,7 @@ Generate output in comma\-separated values format\&. The output goes to the name
.sp
Write a debugging log\&. A typical
\fIdebug_options\fR
string is
\'d:t:o,\fIfile_name\fR\'\&. The default is
\'d:t:o,/tmp/mysqlslap\&.trace\'\&.
string is 'd:t:o,\fIfile_name\fR'. The default is 'd:t:o,/tmp/mysqlslap.trace'.
.RE
.sp
.RS 4
......
'\" t
.\"
.TH "\FBMARIADB-TEST\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-TEST\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......@@ -270,8 +270,7 @@ The default database to use\&.
.sp
Write a debugging log if MariaDB is built with debugging support\&. The default
\fIdebug_options\fR
value is
\'d:t:S:i:O,/tmp/mysqltest\&.trace\'\&.
value is 'd:t:S:i:O,/tmp/mysqltest.trace'.
.RE
.sp
.RS 4
......
'\" t
.\"
.TH "\FBMARIADB-TZINFO-TO-S" "1" "22 April 2022" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-TZINFO-TO-SQL\fR" "1" "22 April 2022" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......@@ -64,7 +64,7 @@ shell> \fBmysql_tzinfo_to_sql /usr/share/zoneinfo | mysql \-u root mysql\fR
.\}
.PP
\fBmysql_tzinfo_to_sql\fR
reads your system\'s time zone files and generates SQL statements from them\&.
reads your system's time zone files and generates SQL statements from them\&.
\fBmysql\fR
processes those statements to load the time zone tables\&.
.PP
......
'\" t
.\"
.TH "\FBMARIADB-UPGRADE\FR" "1" "20 July 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-UPGRADE\fR" "1" "20 July 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMARIADB-WAITPID\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB-WAITPID\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMARIADB\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADB\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......@@ -340,9 +340,7 @@ The database to use\&.
.sp
Write a debugging log\&. A typical
\fIdebug_options\fR
string is
\'d:t:o,\fIfile_name\fR\'\&. The default is
\'d:t:o,/tmp/mysql\&.trace\'\&.
string is 'd:t:o,\fIfile_name\fR'. The default is 'd:t:o,/tmp/mysql.trace'.
.RE
.sp
.RS 4
......@@ -1529,9 +1527,9 @@ The XML output also uses an XML namespace, as shown here:
.RS 4
.\}
.nf
shell> \fBmysql \-\-xml \-uroot \-e "SHOW VARIABLES LIKE \'version%\'"\fR
shell> \fBmysql \-\-xml \-uroot \-e "SHOW VARIABLES LIKE 'version%'"\fR
<?xml version="1\&.0"?>
<resultset statement="SHOW VARIABLES LIKE \'version%\'" xmlns:xsi="http://www\&.w3\&.org/2001/XMLSchema\-instance">
<resultset statement="SHOW VARIABLES LIKE 'version%'" xmlns:xsi="http://www\&.w3\&.org/2001/XMLSchema\-instance">
<row>
<field name="Variable_name">version</field>
<field name="Value">5\&.0\&.40\-debug</field>
......@@ -1666,7 +1664,7 @@ if it exists, and then use either of the following techniques:
Set the
MARIADB_HISTFILE
variable to
/dev/null\&. To cause this setting to take effect each time you log in, put the setting in one of your shell\'s startup files\&.
/dev/null\&. To cause this setting to take effect each time you log in, put the setting in one of your shell's startup files\&.
.RE
.sp
.RS 4
......@@ -1714,8 +1712,8 @@ prompt:
.nf
mysql> \fBhelp\fR
List of all MySQL commands:
Note that all text commands must be first on line and end with \';\'
? (\e?) Synonym for `help\'\&.
Note that all text commands must be first on line and end with ';'
? (\e?) Synonym for 'help'\&.
clear (\ec) Clear command\&.
connect (\er) Reconnect to the server\&. Optional arguments are db and host\&.
delimiter (\ed) Set statement delimiter\&.
......@@ -1725,7 +1723,7 @@ exit (\eq) Exit mysql\&. Same as quit\&.
go (\eg) Send command to mysql server\&.
help (\eh) Display this help\&.
nopager (\en) Disable pager, print to stdout\&.
notee (\et) Don\'t write into outfile\&.
notee (\et) Don't write into outfile\&.
pager (\eP) Set PAGER [to_pager]\&. Print the query results via PAGER\&.
print (\ep) Print current command\&.
prompt (\eR) Change your mysql prompt\&.
......@@ -1740,8 +1738,8 @@ use (\eu) Use another database\&. Takes database name as argument\&.
charset (\eC) Switch to another charset\&. Might be needed for processing
binlog with multi\-byte charsets\&.
warnings (\eW) Show warnings after every statement\&.
nowarning (\ew) Don\'t show warnings after every statement\&.
For server side help, type \'help contents\'
nowarning (\ew) Don't show warnings after every statement\&.
For server side help, type 'help contents'
.fi
.if n \{\
.RE
......@@ -1849,7 +1847,7 @@ Change the string that
\fBmysql\fR
interprets as the separator between SQL statements\&. The default is the semicolon character (\(lq;\(rq)\&.
.sp
The delimiter can be specified as an unquoted or quoted argument\&. Quoting can be done with either single quote (\') or douple quote (") characters\&. To include a quote within a quoted string, either quote the string with the other quote character or escape the quote with a backslash (\(lq\e\(rq) character\&. Backslash should be avoided outside of quoted strings because it is the escape character for MariaDB\&. For an unquoted argument, the delmiter is read up to the first space or end of line\&. For a quoted argument, the delimiter is read up to the matching quote on the line\&.
The delimiter can be specified as an unquoted or quoted argument\&. Quoting can be done with either single quote (') or douple quote (") characters\&. To include a quote within a quoted string, either quote the string with the other quote character or escape the quote with a backslash (\(lq\e\(rq) character\&. Backslash should be avoided outside of quoted strings because it is the escape character for MariaDB\&. For an unquoted argument, the delmiter is read up to the first space or end of line\&. For a quoted argument, the delimiter is read up to the matching quote on the line\&.
.sp
When the delimiter recognized by
\fBmysql\fR
......@@ -2557,7 +2555,7 @@ T}:T{
A space (a space follows the backslash)
T}
T{
\e\'
\e'
T}:T{
Single quote
T}
......@@ -2703,7 +2701,7 @@ prompt
.\}
.nf
mysql> \fBprompt (\eu@\eh) [\ed]>\e_\fR
PROMPT set to \'(\eu@\eh) [\ed]>\e_\'
PROMPT set to '(\eu@\eh) [\ed]>\e_'
(\fIuser\fR@\fIhost\fR) [\fIdatabase\fR]>
(\fIuser\fR@\fIhost\fR) [\fIdatabase\fR]> prompt
Returning to default PROMPT of mysql>
......@@ -2741,7 +2739,7 @@ If there is no match for the search string, the search fails:
.nf
mysql> \fBhelp me\fR
Nothing found
Please try to run \'help contents\' for a list of all accessible topics
Please try to run 'help contents' for a list of all accessible topics
.fi
.if n \{\
.RE
......@@ -2757,7 +2755,7 @@ to see a list of the help categories:
.nf
mysql> \fBhelp contents\fR
You asked for help about help category: "Contents"
For more information, type \'help <item>\', where <item> is one of the
For more information, type 'help <item>', where <item> is one of the
following categories:
Account Management
Administration
......@@ -2789,7 +2787,7 @@ shows a list of matching topics:
.nf
mysql> \fBhelp logs\fR
Many help items for your request exist\&.
To make a more specific request, please type \'help <item>\',
To make a more specific request, please type 'help <item>',
where <item> is one of the following topics:
SHOW
SHOW BINARY LOGS
......@@ -2807,7 +2805,7 @@ Use a topic as the search string to see the help entry for that topic:
.\}
.nf
mysql> \fBhelp show binary logs\fR
Name: \'SHOW BINARY LOGS\'
Name: 'SHOW BINARY LOGS'
Description:
Syntax:
SHOW BINARY LOGS
......@@ -2907,7 +2905,7 @@ Sometimes you may want your script to display progress information to the user\&
.RS 4
.\}
.nf
SELECT \'<info_to_display>\' AS \' \';
SELECT '<info_to_display>' AS ' ';
.fi
.if n \{\
.RE
......@@ -2954,7 +2952,7 @@ mail_from: Monty
sbj: UTF\-8
txt: >>>>> "Thimble" == Thimble Smith writes:
Thimble> Hi\&. I think this is a good idea\&. Is anyone familiar
Thimble> with UTF\-8 or Unicode? Otherwise, I\'ll put this on my
Thimble> with UTF\-8 or Unicode? Otherwise, I'll put this on my
Thimble> TODO list and see what happens\&.
Yes, please do that\&.
Regards,
......
'\" t
.\"
.TH "\FBMYSQL_CONFIG\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMYSQL_CONFIG\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMARIADBD-MULTI\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADBD-MULTI\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......@@ -511,7 +511,7 @@ account by executing the following commands for each server:
shell> \fBmysql \-u root \-S /tmp/mysql\&.sock \-p\fR
Enter password:
mysql> \fBGRANT SHUTDOWN ON *\&.*\fR
\-> \fBTO \'multi_admin\'@\'localhost\' IDENTIFIED BY \'multipass\';\fR
\-> \fBTO 'multi_admin'@'localhost' IDENTIFIED BY 'multipass';\fR
.fi
.if n \{\
.RE
......@@ -606,7 +606,7 @@ option for
\fBmysqld_multi\fR
script as the Unix
root
user\&. Having the option in the option file doesn\'t matter; you just get a warning if you are not the superuser and the
user\&. Having the option in the option file doesn't matter; you just get a warning if you are not the superuser and the
\fBmysqld\fR
processes are started under your own Unix account\&.
.RE
......
'\" t
.\"
.TH "\FBMARIADBD-SAFE-HELPER\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADBD-SAFE-HELPER\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMARIADBD-SAFE\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADBD-SAFE\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......@@ -327,7 +327,7 @@ directory\&.
.sp
Use the
nice
program to set the server\'s scheduling priority to the given value\&.
program to set the server's scheduling priority to the given value\&.
.RE
.sp
.RS 4
......
'\" t
.\"
.TH "\FBMARIADBD\FR" "8" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMARIADBD\fR" "8" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMBSTREAM\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMBSTREAM\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMSQL2MYSQL\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMSQL2MYSQL\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMY_PRINT_DEFAULTS" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMY_PRINT_DEFAULTS\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......@@ -100,9 +100,7 @@ the first option, then read this file only, do not read global or per\-user conf
.sp
Write a debugging log\&. A typical
\fIdebug_options\fR
string is
\'d:t:o,\fIfile_name\fR\'\&. The default is
\'d:t:o,/tmp/my_print_defaults\&.trace\'\&.
string is 'd:t:o,\fIfile_name\fR'. The default is 'd:t:o,/tmp/my_print_defaults.trace'.
.RE
.sp
.RS 4
......
'\" t
.\"
.TH "\FBMY_SAFE_PROCESS\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMY_SAFE_PROCESS\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMYISAM_FTDUMP\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMYISAM_FTDUMP\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......@@ -56,7 +56,7 @@ table\&. You can also specify a table by naming its index file (the file with th
\&.MYI
suffix)\&. If you do not invoke
\fBmyisam_ftdump\fR
in the directory where the table files are located, the table or index file name must be preceded by the path name to the table\'s database directory\&. Index numbers begin with 0\&.
in the directory where the table files are located, the table or index file name must be preceded by the path name to the table's database directory\&. Index numbers begin with 0\&.
.PP
Example: Suppose that the
test
......
'\" t
.\"
.TH "\FBMYISAMCHK\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMYISAMCHK\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......@@ -189,7 +189,7 @@ Otherwise, when you run
.RS 4
.\}
.nf
warning: clients are using or haven\'t closed the table properly
warning: clients are using or haven't closed the table properly
.fi
.if n \{\
.RE
......@@ -197,7 +197,7 @@ warning: clients are using or haven\'t closed the table properly
.PP
This means that you are trying to check a table that has been updated by another program (such as the
\fBmysqld\fR
server) that hasn\'t yet closed the file or that has died without closing the file properly, which can sometimes lead to the corruption of one or more
server) that hasn't yet closed the file or that has died without closing the file properly, which can sometimes lead to the corruption of one or more
MyISAM
tables\&.
.PP
......@@ -273,9 +273,7 @@ Display a help message and exit\&. Options are presented in a single list\&.
.sp
Write a debugging log\&. A typical
\fIdebug_options\fR
string is
\'d:t:o,\fIfile_name\fR\'\&. The default is
\'d:t:o,/tmp/myisamchk\&.trace\'\&.
string is 'd:t:o,\fIfile_name\fR'. The default is 'd:t:o,/tmp/myisamchk.trace'.
.RE
.sp
.RS 4
......@@ -729,7 +727,7 @@ the section called \(lqMYISAMCHK TABLE INFORMATION\(rq\&.
\fB\-\-fast\fR,
\fB\-F\fR
.sp
Check only tables that haven\'t been closed properly\&.
Check only tables that haven't been closed properly\&.
.RE
.sp
.RS 4
......@@ -826,7 +824,7 @@ Store information in the
\&.MYI
file to indicate when the table was checked and whether the table crashed\&. This should be used to get full benefit of the
\fB\-\-check\-only\-changed\fR
option, but you shouldn\'t use this option if the
option, but you shouldn't use this option if the
\fBmysqld\fR
server is using the table and you are running it with external locking disabled\&.
.RE
......@@ -1287,8 +1285,8 @@ Sort records according to a particular index\&. This makes your data much more l
SELECT
and
ORDER BY
operations that use this index\&. (The first time you use this option to sort a table, it may be very slow\&.) To determine a table\'s index numbers, use
SHOW INDEX, which displays a table\'s indexes in the same order that
operations that use this index\&. (The first time you use this option to sort a table, it may be very slow\&.) To determine a table's index numbers, use
SHOW INDEX, which displays a table's indexes in the same order that
\fBmyisamchk\fR
sees them\&. Indexes are numbered beginning with 1\&.
.sp
......@@ -1616,7 +1614,7 @@ sorted index pages\&.
Auto increment key,
Last value
.sp
The key number associated the table\'s
The key number associated the table's
AUTO_INCREMENT
column, and the most recently generated value for this column\&. These fields do not appear if there is no such column\&.
.RE
......@@ -1757,7 +1755,7 @@ displays some low\-level information:
.\}
Key
.sp
This key\'s number\&. This value is shown only for the first column of the key\&. If this value is missing, the line corresponds to the second or later column of a multiple\-column key\&. For the table shown in the example, there are two
This key's number\&. This value is shown only for the first column of the key\&. If this value is missing, the line corresponds to the second or later column of a multiple\-column key\&. For the table shown in the example, there are two
table description
lines for the second index\&. This indicates that it is a multiple\-part index with two parts\&.
.RE
......
'\" t
.\"
.TH "\FBMYISAMLOG\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMYISAMLOG\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMYISAMPACK\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMYISAMPACK\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......@@ -125,7 +125,7 @@ Display a help message and exit\&.
\fB\-\-backup\fR,
\fB\-b\fR
.sp
Make a backup of each table\'s data file using the name
Make a backup of each table's data file using the name
\fItbl_name\fR\&.OLD\&.
.RE
.sp
......@@ -160,9 +160,7 @@ Section\ \&9.5, \(lqCharacter Set Configuration\(rq\&.
.sp
Write a debugging log\&. A typical
\fIdebug_options\fR
string is
\'d:t:o,\fIfile_name\fR\'\&. The default is
\'d:t:o\'\&.
string is 'd:t:o,\fIfile_name\fR'. The default is 'd:t:o'.
.RE
.sp
.RS 4
......
'\" t
.\"
.TH "\FBMYSQL\-STRESS\-TE" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMYSQL\-STRESS\-TEST\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBMYSQL\-TEST\-RUN\" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMYSQL\-TEST\-RUN\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......@@ -191,7 +191,7 @@ shell> \fBmake test force="\-\-skip\-test=init_file"\fR
.PP
To run
\fBmysql\-test\-run\&.pl\fR
on Windows, you\'ll need either Cygwin or ActiveState Perl to run it\&. You may also need to install the modules required by the script\&. To run the test script, change location into the
on Windows, you'll need either Cygwin or ActiveState Perl to run it\&. You may also need to install the modules required by the script\&. To run the test script, change location into the
mysql\-test
directory, set the
MTR_VS_CONFIG
......@@ -1744,7 +1744,7 @@ option, it sets up a secure connection for all test cases\&. In this case, if
does not support SSL,
\fBmysql\-test\-run\&.pl\fR
exits with an error message:
Couldn\'t find support for SSL
Couldn't find support for SSL
.RE
.sp
.RS 4
......
'\" t
.\"
.TH "\FBMYSQL\&.SERVER\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBMYSQL\&.SERVER\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
.TH MYTOP "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH MYTOP "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.SH NAME
mytop \- display MariaDB server performance info like 'top'
.SH "SEE ALSO"
......
'\" t
.\"
.TH "\FBPERROR\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBPERROR\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBREPLACE\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBREPLACE\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBRESOLVE_STACK_DUM" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBRESOLVE_STACK_DUMP\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBRESOLVEIP\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBRESOLVEIP\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBWSREP_SST_COMMON\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBWSREP_SST_COMMON\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBWSREP_SST_MARIABACKUP\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBWSREP_SST_MARIABACKUP\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBWSREP_SST_MYSQLDUMP\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBWSREP_SST_MYSQLDUMP\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBWSREP_SST_RSYNC\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBWSREP_SST_RSYNC\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
'\" t
.\"
.TH "\FBWSREP_SST_RSYNC_WAN\FR" "1" "15 May 2020" "MariaDB 10\&.10" "MariaDB Database System"
.TH "\fBWSREP_SST_RSYNC_WAN\fR" "1" "15 May 2020" "MariaDB 10.11" "MariaDB Database System"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
......
# The time on ANALYSE FORMAT=JSON is rather variable
# Remove non-deterministic parts of ANALYZE FORMAT=JSON output:
# - any timings
# - Buffer sizes (depend on pointer size)
# - r_engine_stats depends on buffer pool state and whether old record versions
# were purged.
--replace_regex /("(r_[a-z_]*_time(_in_progress)?_ms|r_buffer_size|cost)": )[^, \n]*/\1"REPLACED"/
--replace_regex /("(r_[a-z_]*_time(_in_progress)?_ms|r_buffer_size|cost)": )[^, \n]*/\1"REPLACED"/ /("r_engine_stats":) {[^}]*}/\1 REPLACED/
if ($log_expected_matches) {
--echo [log_grep.inc] file: $log_file pattern: $grep_pattern expected_matches: $log_expected_matches
}
if (!$log_expected_matches) {
--echo [log_grep.inc] file: $log_file pattern: $grep_pattern
}
--let LOG_GREP_PERL_RESULT=$MYSQL_TMP_DIR/log_grep_perl_result.test
perl;
open my $command_file, ">", "$ENV{'LOG_GREP_PERL_RESULT'}" or die "Cannot create file";
$log_file= $ENV{'log_file'};
$log_file_full_path= $ENV{'log_file_full_path'};
$log_slow_rate_test= $ENV{'log_slow_rate_test'};
open(FILE, "$log_file_full_path")
or die("Cannot open file $log_file_full_path: $!\n");
if ($log_slow_rate_test) {
$one= 0;
$two= 0;
$three= 0;
while(<FILE>) {
$one++ if(/'connection_one'/);
$two++ if(/'connection_two'/);
$three++ if(/'connection_three'/);
}
$sum= $one + $two + $three;
$zero= 0;
if ($one == 0) {
$zero++;
}
if ($two == 0) {
$zero++;
}
if ($three == 0) {
$zero++;
}
print "[log_grep.inc] sum: $sum\n";
print "[log_grep.inc] zero: $zero\n";
}
else {
$grep_pattern= $ENV{'grep_pattern'};
$lines= 0;
while(<FILE>) {
$lines++ if (/$grep_pattern/);
}
$log_expected_matches= $ENV{'log_expected_matches'};
if ($log_expected_matches) {
if ($log_expected_matches != $lines) {
print "[log_grep.inc] ERROR: expected matches: $log_expected_matches, actual matches: $lines\n";
print "[log_grep.inc] log file at $log_file_full_path\n";
close(FILE);
open(FILE, "$log_file_full_path")
or die("Cannot open file $log_file_full_path: $!\n");
while (<FILE>) {
print ;
}
print $command_file "--let \$log_grep_failed= 1;\n";
} else {
print "[log_grep.inc] found expected match count: $log_expected_matches\n";
}
} else {
print "[log_grep.inc] lines: $lines\n";
}
}
close(FILE);
close($command_file);
EOF
--source $LOG_GREP_PERL_RESULT
--remove_file $LOG_GREP_PERL_RESULT
if ($log_grep_failed)
{
SHOW SESSION STATUS LIKE 'Slow_queries';
SHOW GLOBAL VARIABLES LIKE 'log%';
SHOW GLOBAL VARIABLES LIKE 'long_query_time';
SHOW GLOBAL VARIABLES LIKE 'min_examined_row_limit';
SHOW GLOBAL VARIABLES LIKE 'query_cache%';
SHOW GLOBAL VARIABLES LIKE 'slow_query%';
SHOW SESSION VARIABLES LIKE 'log%';
SHOW SESSION VARIABLES LIKE 'long_query_time';
SHOW SESSION VARIABLES LIKE 'min_examined_row_limit';
SHOW SESSION VARIABLES LIKE 'query_cache%';
SHOW SESSION VARIABLES LIKE 'slow_query%';
--die Testcase failed!
}
--remove_files_wildcard $MYSQLTEST_VARDIR/tmp $log_slow_prefix-*.slog
--disable_query_log
EVAL SET GLOBAL log_output= $log_output_old;
EVAL SET GLOBAL slow_query_log_file= "$slow_query_log_file_old";
EVAL SET GLOBAL slow_query_log= $slow_query_log_old;
--enable_query_log
# Common extensions to the slow query log
--let grep_pattern = ^# Thread_id: .+ Schema: .+ QC_hit: (Yes|No)\$
--let log_expected_matches = $log_slow_verbosity_expected_matches
--source include/log_grep.inc
--let grep_pattern = ^# Query_time: \d+\.\d+ Lock_time: \d+\.\d+ Rows_sent: \d+ Rows_examined: \d+\$
--source include/log_grep.inc
--let grep_pattern = ^# Rows_affected: \d+ Bytes_sent: \d+\$
--source include/log_grep.inc
# Query plan
--let log_expected_matches = $log_slow_verbosity_queryplan_expected_matches
--let grep_pattern = ^# Full_scan: (Yes|No) Full_join: (Yes|No) Tmp_table: (Yes|No) Tmp_table_on_disk: (Yes|No)\$
--source include/log_grep.inc
--let grep_pattern = ^# Filesort: (Yes|No) Filesort_on_disk: (Yes|No) Merge_passes: \d+\ Priority_queue: (Yes|No)\$
--source include/log_grep.inc
# Temp tables
--let log_expected_matches = $log_slow_verbosity_tmptable_expected_matches
--source include/log_grep.inc
--let grep_pattern = ^# Tmp_tables: \d+ Tmp_disk_tables: \d+\$
--source include/log_grep.inc
# InnoDB/Engines
--let log_expected_matches = $log_slow_innodb_expected_matches
--let grep_pattern = ^# Pages_accessed: \d+ Pages_read: \d+ Pages_updated: \d+ Old_rows_read: \d+\n# Pages_read_time: \d+\.\d+ Engine_time: \d+\.\d+\$
--disable_query_log
--let slow_query_log_old= `select @@slow_query_log`
--let slow_query_log_file_old= `select @@slow_query_log_file`
--let log_output_old= `select @@log_output`
SET GLOBAL slow_query_log=0;
SET GLOBAL log_output=FILE;
--enable_query_log
--disable_query_log
--let log_file_full_path=$MYSQLTEST_VARDIR/tmp/$log_file.slog
--echo [slow_log_start.inc] $log_file
EVAL SET GLOBAL slow_query_log_file="$log_file_full_path";
SET GLOBAL slow_query_log=1;
--enable_query_log
--disable_query_log
SET GLOBAL slow_query_log=0;
--echo [log_slow_stop.inc] $log_file
--enable_query_log
[slow_query_log_on]
slow_query_log=ON
[slow_query_log_off]
slow_query_log=OFF
create table t1 (
pk int not null,
a varchar(64),
b varchar(64),
c varchar(64)
) engine=innodb;
insert into t1 select
seq, seq, seq, seq
from
seq_1_to_10000;
analyze table t1 persistent for all;
Table Op Msg_type Msg_text
test.t1 analyze status Engine-independent statistics collected
test.t1 analyze status OK
# Note the r_engine_stats below. Only non-zero members are printed
select '$out' as X;
X
{
"query_optimization": {
"r_total_time_ms": "REPLACED"
},
"query_block": {
"select_id": 1,
"cost": 1.6664988,
"r_loops": 1,
"r_total_time_ms": "REPLACED",
"nested_loop": [
{
"table": {
"table_name": "t1",
"access_type": "ALL",
"loops": 1,
"r_loops": 1,
"rows": 10000,
"r_rows": 10000,
"cost": 1.6664988,
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": {
"pages_accessed": "REPLACED"
},
"filtered": 100,
"r_filtered": 100,
"attached_condition": "t1.pk < 120000"
}
}
]
}
}
set @js='$out';
set @out=(select json_extract(@js,'$**.r_engine_stats.pages_accessed'));
select cast(json_extract(@out,'$[0]') as DOUBLE) > 0 as PAGES_ACCESSED_MORE_THAN_ZERO;
PAGES_ACCESSED_MORE_THAN_ZERO
1
#
# Try an UPDATE
#
select '$out' as X;
X
{
"query_optimization": {
"r_total_time_ms": "REPLACED"
},
"query_block": {
"select_id": 1,
"r_total_time_ms": "REPLACED",
"table": {
"update": 1,
"table_name": "t1",
"access_type": "ALL",
"rows": 10000,
"r_rows": 10000,
"r_filtered": 100,
"r_total_time_ms": "REPLACED",
"r_engine_stats": {
"pages_accessed": "REPLACED",
"pages_updated": "REPLACED"
},
"attached_condition": "t1.pk < 120000"
}
}
}
set @js='$out';
set @out=(select json_extract(@js,'$**.r_engine_stats.pages_updated'));
select cast(json_extract(@out,'$[0]') as DOUBLE) > 0 as PAGES_UPDATED_MORE_THAN_ZERO;
PAGES_UPDATED_MORE_THAN_ZERO
1
#
# Try a DELETE
#
select '$out' as X;
X
{
"query_optimization": {
"r_total_time_ms": "REPLACED"
},
"query_block": {
"select_id": 1,
"r_total_time_ms": "REPLACED",
"table": {
"delete": 1,
"table_name": "t1",
"access_type": "ALL",
"rows": 10000,
"r_rows": 10000,
"r_filtered": 50,
"r_total_time_ms": "REPLACED",
"r_engine_stats": {
"pages_accessed": "REPLACED",
"pages_updated": "REPLACED"
},
"attached_condition": "t1.pk MOD 2 = 1"
}
}
}
set @js='$out';
set @out=(select json_extract(@js,'$**.r_engine_stats.pages_updated'));
select cast(json_extract(@out,'$[0]') as DOUBLE) > 0 as PAGES_UPDATED_MORE_THAN_ZERO;
PAGES_UPDATED_MORE_THAN_ZERO
1
drop table t1;
#
# Tests for r_engine_stats in ANALYZE FORMAT=JSON output
#
--source include/analyze-format.inc
--source include/have_sequence.inc
--source include/have_innodb.inc
create table t1 (
pk int not null,
a varchar(64),
b varchar(64),
c varchar(64)
) engine=innodb;
insert into t1 select
seq, seq, seq, seq
from
seq_1_to_10000;
analyze table t1 persistent for all;
--echo # Note the r_engine_stats below. Only non-zero members are printed
let $out=`
ANALYZE FORMAT=json
select * from t1 where pk < 120000;
`;
# Don't use "source include/analyze-format.inc" as it replaces r_engine_stats
# Replace the "pages_accessed" value, too, as it is different for some
# platforms...
--replace_regex /("(r_[a-z_]*_time(_in_progress)?_ms|r_buffer_size|pages_accessed)": )[^, \n]*/\1"REPLACED"/
evalp select '$out' as X;
evalp set @js='$out';
set @out=(select json_extract(@js,'$**.r_engine_stats.pages_accessed'));
select cast(json_extract(@out,'$[0]') as DOUBLE) > 0 as PAGES_ACCESSED_MORE_THAN_ZERO;
--echo #
--echo # Try an UPDATE
--echo #
let $out=`analyze format=json update t1 set b = b-1 where pk < 120000`;
--replace_regex /("(r_[a-z_]*_time_ms|pages_accessed|pages_updated)": )[^, \n]*/\1"REPLACED"/
evalp select '$out' as X;
evalp set @js='$out';
set @out=(select json_extract(@js,'$**.r_engine_stats.pages_updated'));
select cast(json_extract(@out,'$[0]') as DOUBLE) > 0 as PAGES_UPDATED_MORE_THAN_ZERO;
--echo #
--echo # Try a DELETE
--echo #
let $out=`analyze format=json delete from t1 where mod(pk,2)=1`;
--replace_regex /("(r_[a-z_]*_time_ms|pages_accessed|pages_updated)": )[^, \n]*/\1"REPLACED"/
evalp select '$out' as X;
evalp set @js='$out';
set @out=(select json_extract(@js,'$**.r_engine_stats.pages_updated'));
select cast(json_extract(@out,'$[0]') as DOUBLE) > 0 as PAGES_UPDATED_MORE_THAN_ZERO;
drop table t1;
......@@ -25,6 +25,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 30,
"attached_condition": "t0.a < 3"
......@@ -64,6 +65,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 0,
"attached_condition": "t0.a > 9 and t0.a is not null"
......@@ -83,6 +85,7 @@ ANALYZE
"rows": 1,
"r_rows": null,
"cost": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": null
}
......@@ -119,6 +122,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100,
"attached_condition": "t0.a is not null"
......@@ -140,6 +144,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 40,
"attached_condition": "t1.b < 4"
......@@ -177,6 +182,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 20,
"attached_condition": "tbl1.b < 20"
......@@ -194,6 +200,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 60,
"attached_condition": "tbl2.b < 60"
......@@ -235,6 +242,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 20,
"attached_condition": "tbl1.b < 20"
......@@ -252,6 +260,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 60,
"attached_condition": "tbl2.b < 60"
......@@ -302,6 +311,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100,
"attached_condition": "t1.a is not null"
......@@ -323,6 +333,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100,
"using_index": true
......@@ -368,6 +379,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 50,
"attached_condition": "test.t1.a < 5"
......@@ -407,7 +419,8 @@ ANALYZE
"rows": 1000,
"r_rows": 1000,
"r_filtered": 100,
"r_total_time_ms": "REPLACED"
"r_total_time_ms": "REPLACED",
"r_engine_stats": REPLACED
}
}
}
......@@ -439,6 +452,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 50,
"index_condition": "t1.pk < 10",
......@@ -470,6 +484,7 @@ ANALYZE
"r_rows": 10,
"r_filtered": 50,
"r_total_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"attached_condition": "t1.pk < 10 and t1.b > 4"
}
}
......@@ -518,6 +533,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -546,6 +562,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 98.13542689
}
......@@ -593,6 +610,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 50,
"attached_condition": "tbl1.a < 5"
......@@ -620,6 +638,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 20,
"attached_condition": "tbl2.a in (2,3)"
......@@ -680,6 +699,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -722,6 +742,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -778,6 +799,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -818,6 +840,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -834,6 +857,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 0,
"attached_condition": "<in_optimizer>(t2.b,t2.b in (subquery#2))"
......@@ -869,6 +893,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -936,6 +961,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -952,6 +978,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 0,
"attached_condition": "t3.f3 in (1,2)"
......@@ -985,6 +1012,7 @@ ANALYZE
"rows": 2,
"r_rows": null,
"cost": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": null
}
......@@ -999,6 +1027,7 @@ ANALYZE
"rows": 2,
"r_rows": null,
"cost": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": null
},
......@@ -1056,6 +1085,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 0,
"attached_condition": "t1.a < 0"
......@@ -1089,6 +1119,7 @@ ANALYZE
"rows": 10,
"r_rows": null,
"cost": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": null,
"attached_condition": "t2.a < t1.a"
......@@ -1151,6 +1182,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 10,
"r_filtered": 10,
"attached_condition": "t11.a < 100"
......@@ -1168,6 +1200,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 70,
"r_filtered": 70,
"attached_condition": "t10.a < 700"
......@@ -1215,6 +1248,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 10,
"r_filtered": 10,
"attached_condition": "t11.a < 100 and t11.b is not null"
......@@ -1236,6 +1270,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 0.209580004,
"r_filtered": 70,
"attached_condition": "t10.a < 700"
......
......@@ -57,6 +57,7 @@ X
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100,
"attached_condition": "t1.a < 700 and t1.b is not null"
......@@ -78,6 +79,7 @@ X
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 10,
"r_filtered": 20,
"attached_condition": "t2.a < 100"
......@@ -153,6 +155,7 @@ X
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100,
"attached_condition": "t1.a is not null"
......@@ -174,6 +177,7 @@ X
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 10,
"r_filtered": 100
},
......
......@@ -55,7 +55,8 @@ ANALYZE
"rows": 10000,
"r_rows": 10000,
"r_filtered": 100,
"r_total_time_ms": "REPLACED"
"r_total_time_ms": "REPLACED",
"r_engine_stats": REPLACED
}
}
}
......@@ -111,6 +112,7 @@ ANALYZE
"r_rows": 10,
"r_filtered": 100,
"r_total_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"attached_condition": "t2.a < 10"
}
}
......@@ -163,7 +165,8 @@ ANALYZE
"rows": 10000,
"r_rows": 10000,
"r_filtered": 100,
"r_total_time_ms": "REPLACED"
"r_total_time_ms": "REPLACED",
"r_engine_stats": REPLACED
}
}
}
......@@ -251,6 +254,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100,
"attached_condition": "t0.a is not null"
......@@ -272,6 +276,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -365,6 +370,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100,
"attached_condition": "t0.a is not null"
......@@ -388,6 +394,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -440,6 +447,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 50,
"attached_condition": "t2.a MOD 2 = 0"
......@@ -499,6 +507,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -515,6 +524,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
},
......@@ -591,6 +601,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 80,
"attached_condition": "t6.b > 0 and t6.a <= 5"
......@@ -608,6 +619,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
},
......@@ -728,6 +740,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100,
"using_index_for_group_by": true
......
--slow-query-log --long-query-time=0.00001 --log-slow-verbosity=query_plan,explain
--slow-query-log --long-query-time=0.00001 --log-slow-verbosity=query_plan,explain,innodb
......@@ -3936,6 +3936,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100,
"attached_condition": "t1.a1 is not null"
......@@ -3986,6 +3987,7 @@ ANALYZE
"r_loops": 0,
"rows": 1,
"r_rows": null,
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": null,
"using_index": true
......@@ -4014,6 +4016,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100,
"attached_condition": "tt2.b1 is not null"
......@@ -4250,6 +4253,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -4276,6 +4280,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100,
"attached_condition": "t1.c is not null"
......@@ -4388,6 +4393,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......
......@@ -3688,3 +3688,31 @@ DROP TABLE results_alter_db;
DROP TABLE results_create_table;
DROP TABLE results_alter_table;
DROP TABLE results_convert_table;
#
# MDEV-30003 Assertion failure upon 2nd execution of SP trying to set collation on non-existing database
#
CREATE PROCEDURE p() ALTER SCHEMA db DEFAULT COLLATE = utf8_bin;
CALL p;
ERROR HY000: Can't create/write to file '<dir>db.opt' (Errcode: 2 "No such file or directory")
CALL p;
ERROR HY000: Can't create/write to file '<dir>db.opt' (Errcode: 2 "No such file or directory")
DROP PROCEDURE p;
CREATE DATABASE db1;
CREATE PROCEDURE p() CREATE DATABASE db1 COLLATE DEFAULT;
CALL p;
ERROR HY000: Can't create database 'db1'; database exists
CALL p;
ERROR HY000: Can't create database 'db1'; database exists
DROP DATABASE db1;
DROP PROCEDURE p;
CREATE TABLE t1 (a INT);
CREATE PROCEDURE p() CREATE TABLE t1 (a INT) COLLATE DEFAULT;
CALL p;
ERROR 42S01: Table 't1' already exists
CALL p;
ERROR 42S01: Table 't1' already exists
DROP TABLE t1;
DROP PROCEDURE p;
#
# End of 10.9 tests
#
......@@ -366,3 +366,38 @@ DROP TABLE results_alter_db;
DROP TABLE results_create_table;
DROP TABLE results_alter_table;
DROP TABLE results_convert_table;
--echo #
--echo # MDEV-30003 Assertion failure upon 2nd execution of SP trying to set collation on non-existing database
--echo #
CREATE PROCEDURE p() ALTER SCHEMA db DEFAULT COLLATE = utf8_bin;
--replace_regex /to file '.*db.opt'/to file '<dir>db.opt'/
--error 1
CALL p;
--replace_regex /to file '.*db.opt'/to file '<dir>db.opt'/
--error 1
CALL p;
DROP PROCEDURE p;
CREATE DATABASE db1;
CREATE PROCEDURE p() CREATE DATABASE db1 COLLATE DEFAULT;
--error ER_DB_CREATE_EXISTS
CALL p;
--error ER_DB_CREATE_EXISTS
CALL p;
DROP DATABASE db1;
DROP PROCEDURE p;
CREATE TABLE t1 (a INT);
CREATE PROCEDURE p() CREATE TABLE t1 (a INT) COLLATE DEFAULT;
--error ER_TABLE_EXISTS_ERROR
CALL p;
--error ER_TABLE_EXISTS_ERROR
CALL p;
DROP TABLE t1;
DROP PROCEDURE p;
--echo #
--echo # End of 10.9 tests
--echo #
......@@ -21522,6 +21522,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 50,
"attached_condition": "t1.a = 3"
......
......@@ -386,6 +386,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -406,6 +407,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100,
"attached_condition": "trigcond(trigcond(t1.b is not null))"
......@@ -427,6 +429,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100,
"attached_condition": "trigcond(trigcond(t1.b is not null))"
......@@ -476,6 +479,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -492,6 +496,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
},
......
......@@ -106,6 +106,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -132,6 +133,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -194,6 +196,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -220,6 +223,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -401,6 +405,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -417,6 +422,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
},
......@@ -452,6 +458,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -468,6 +475,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
},
......@@ -540,6 +548,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -556,6 +565,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
},
......@@ -591,6 +601,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -607,6 +618,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
},
......
......@@ -169,6 +169,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -195,6 +196,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -262,6 +264,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -288,6 +291,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -534,6 +538,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -550,6 +555,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
},
......@@ -585,6 +591,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -601,6 +608,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
},
......@@ -672,6 +680,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -688,6 +697,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
},
......@@ -723,6 +733,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -739,6 +750,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
},
......
......@@ -1309,6 +1309,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100,
"using_index_for_group_by": true
......@@ -1718,6 +1719,7 @@ ANALYZE
"r_loops": 0,
"rows": 0,
"r_rows": null,
"r_engine_stats": REPLACED,
"filtered": 0,
"r_filtered": null,
"impossible_on_condition": true
......@@ -1734,6 +1736,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -1810,6 +1813,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -1830,6 +1834,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100,
"attached_condition": "trigcond(t2.pk is null) and trigcond(trigcond(t1.a is not null))",
......@@ -1912,6 +1917,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100,
"attached_condition": "t1.a is not null"
......@@ -1933,6 +1939,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100,
"using_index": true,
......@@ -2030,6 +2037,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100,
"attached_condition": "t3.a is not null"
......@@ -2052,6 +2060,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100,
"index_condition_bka": "t4.b + 1 <= t3.b + 1"
......
......@@ -53,6 +53,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 30,
"attached_condition": "t1.a in (2,3,4)"
......@@ -80,6 +81,7 @@ ANALYZE
"r_rows": 10,
"r_filtered": 30,
"r_total_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"attached_condition": "t1.a in (2,3,4)"
}
}
......@@ -103,6 +105,7 @@ ANALYZE
"r_rows": 10,
"r_filtered": 0,
"r_total_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"attached_condition": "t1.a in (20,30,40)"
}
}
......
......@@ -472,6 +472,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......
......@@ -139,6 +139,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -165,6 +166,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -191,6 +193,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -253,6 +256,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -279,6 +283,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -305,6 +310,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -460,6 +466,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -486,6 +493,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -502,6 +510,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
},
......@@ -573,6 +582,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -599,6 +609,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -615,6 +626,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
},
......
......@@ -151,6 +151,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -177,6 +178,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -203,6 +205,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -265,6 +268,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -291,6 +295,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -317,6 +322,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -491,6 +497,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -517,6 +524,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -533,6 +541,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
},
......@@ -604,6 +613,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -630,6 +640,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
}
......@@ -646,6 +657,7 @@ ANALYZE
"cost": "REPLACED",
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"r_engine_stats": REPLACED,
"filtered": 100,
"r_filtered": 100
},
......
......@@ -234,6 +234,7 @@ connection default;
set debug_sync='now WAIT_FOR go0';
set debug_sync='found_killee SIGNAL go1 WAIT_FOR go2';
kill $id;
select variable_value into @threads_cached from information_schema.global_status where variable_name='threads_cached';
set debug_sync='now SIGNAL go3';
drop table t1;
set debug_sync='reset';
......@@ -313,6 +313,12 @@ connection default;
set debug_sync='now WAIT_FOR go0';
set debug_sync='found_killee SIGNAL go1 WAIT_FOR go2';
evalp kill $id;
select variable_value into @threads_cached from information_schema.global_status where variable_name='threads_cached';
set debug_sync='now SIGNAL go3';
if (`select @@thread_handling != 'pool-of-threads'`) {
# cannot check that a thread was added to thread pool on windows, but the test works there w/o the wait
let wait_condition= select variable_value>@threads_cached from information_schema.global_status where variable_name='threads_cached';
source include/wait_condition.inc;
}
drop table t1;
set debug_sync='reset';
CREATE TABLE t1(a INT primary key, b int) ENGINE=InnoDB;
INSERT INTO t1 select seq, seq from seq_1_to_1000;
SET SESSION min_examined_row_limit=0;
SET SESSION long_query_time=0;
SET SESSION log_slow_verbosity='innodb,query_plan';
[slow_log_start.inc] log_slow_innodb-verbosity_1
SELECT sum(a+b) FROM t1;
sum(a+b)
1001000
UPDATE t1 set b=b+1 where a=1 or a=999;
[log_slow_stop.inc] log_slow_innodb-verbosity_1
[log_grep.inc] file: log_slow_innodb-verbosity_1 pattern: ^# Thread_id: .+ Schema: .+ QC_hit: (Yes|No)$ expected_matches: 3
[log_grep.inc] found expected match count: 3
[log_grep.inc] file: log_slow_innodb-verbosity_1 pattern: ^# Query_time: \d+\.\d+ Lock_time: \d+\.\d+ Rows_sent: \d+ Rows_examined: \d+$ expected_matches: 3
[log_grep.inc] found expected match count: 3
[log_grep.inc] file: log_slow_innodb-verbosity_1 pattern: ^# Rows_affected: \d+ Bytes_sent: \d+$ expected_matches: 3
[log_grep.inc] found expected match count: 3
[log_grep.inc] file: log_slow_innodb-verbosity_1 pattern: ^# Full_scan: (Yes|No) Full_join: (Yes|No) Tmp_table: (Yes|No) Tmp_table_on_disk: (Yes|No)$
[log_grep.inc] lines: 1
[log_grep.inc] file: log_slow_innodb-verbosity_1 pattern: ^# Filesort: (Yes|No) Filesort_on_disk: (Yes|No) Merge_passes: \d+\ Priority_queue: (Yes|No)$
[log_grep.inc] lines: 0
[log_grep.inc] file: log_slow_innodb-verbosity_1 pattern: ^# Filesort: (Yes|No) Filesort_on_disk: (Yes|No) Merge_passes: \d+\ Priority_queue: (Yes|No)$
[log_grep.inc] lines: 0
[log_grep.inc] file: log_slow_innodb-verbosity_1 pattern: ^# Tmp_tables: \d+ Tmp_disk_tables: \d+$
[log_grep.inc] lines: 0
SET SESSION log_slow_verbosity='innodb,query_plan';
[slow_log_start.inc] log_slow_innodb-verbosity_2
SELECT 1;
1
1
[log_slow_stop.inc] log_slow_innodb-verbosity_2
[log_grep.inc] file: log_slow_innodb-verbosity_2 pattern: ^# Thread_id: .+ Schema: .+ QC_hit: (Yes|No)$ expected_matches: 2
[log_grep.inc] found expected match count: 2
[log_grep.inc] file: log_slow_innodb-verbosity_2 pattern: ^# Query_time: \d+\.\d+ Lock_time: \d+\.\d+ Rows_sent: \d+ Rows_examined: \d+$ expected_matches: 2
[log_grep.inc] found expected match count: 2
[log_grep.inc] file: log_slow_innodb-verbosity_2 pattern: ^# Rows_affected: \d+ Bytes_sent: \d+$ expected_matches: 2
[log_grep.inc] found expected match count: 2
[log_grep.inc] file: log_slow_innodb-verbosity_2 pattern: ^# Full_scan: (Yes|No) Full_join: (Yes|No) Tmp_table: (Yes|No) Tmp_table_on_disk: (Yes|No)$
[log_grep.inc] lines: 0
[log_grep.inc] file: log_slow_innodb-verbosity_2 pattern: ^# Filesort: (Yes|No) Filesort_on_disk: (Yes|No) Merge_passes: \d+\ Priority_queue: (Yes|No)$
[log_grep.inc] lines: 0
[log_grep.inc] file: log_slow_innodb-verbosity_2 pattern: ^# Filesort: (Yes|No) Filesort_on_disk: (Yes|No) Merge_passes: \d+\ Priority_queue: (Yes|No)$
[log_grep.inc] lines: 0
[log_grep.inc] file: log_slow_innodb-verbosity_2 pattern: ^# Tmp_tables: \d+ Tmp_disk_tables: \d+$
[log_grep.inc] lines: 0
SET SESSION log_slow_verbosity='query_plan';
[log_slow_stop.inc] log_slow_innodb-verbosity_3
--source include/log_slow_start.inc
INSERT INTO t1 VALUE(1000)
[log_grep.inc] file: log_slow_innodb-verbosity_3
--source include/log_slow_start.inc
INSERT INTO t1 VALUE(1000) pattern: ^# Thread_id: .+ Schema: .+ QC_hit: (Yes|No)$ expected_matches: 2
[log_grep.inc] found expected match count: 2
[log_grep.inc] file: log_slow_innodb-verbosity_3
--source include/log_slow_start.inc
INSERT INTO t1 VALUE(1000) pattern: ^# Query_time: \d+\.\d+ Lock_time: \d+\.\d+ Rows_sent: \d+ Rows_examined: \d+$ expected_matches: 2
[log_grep.inc] found expected match count: 2
[log_grep.inc] file: log_slow_innodb-verbosity_3
--source include/log_slow_start.inc
INSERT INTO t1 VALUE(1000) pattern: ^# Rows_affected: \d+ Bytes_sent: \d+$ expected_matches: 2
[log_grep.inc] found expected match count: 2
[log_grep.inc] file: log_slow_innodb-verbosity_3
--source include/log_slow_start.inc
INSERT INTO t1 VALUE(1000) pattern: ^# Full_scan: (Yes|No) Full_join: (Yes|No) Tmp_table: (Yes|No) Tmp_table_on_disk: (Yes|No)$
[log_grep.inc] lines: 0
[log_grep.inc] file: log_slow_innodb-verbosity_3
--source include/log_slow_start.inc
INSERT INTO t1 VALUE(1000) pattern: ^# Filesort: (Yes|No) Filesort_on_disk: (Yes|No) Merge_passes: \d+\ Priority_queue: (Yes|No)$
[log_grep.inc] lines: 0
[log_grep.inc] file: log_slow_innodb-verbosity_3
--source include/log_slow_start.inc
INSERT INTO t1 VALUE(1000) pattern: ^# Filesort: (Yes|No) Filesort_on_disk: (Yes|No) Merge_passes: \d+\ Priority_queue: (Yes|No)$
[log_grep.inc] lines: 0
[log_grep.inc] file: log_slow_innodb-verbosity_3
--source include/log_slow_start.inc
INSERT INTO t1 VALUE(1000) pattern: ^# Tmp_tables: \d+ Tmp_disk_tables: \d+$
[log_grep.inc] lines: 0
DROP TABLE t1;
#
# Test the extended slow query log output format for various log_slow_verbosity values.
# Test that InnoDB stats for the extended slow query log are collected.
#
# This test file is based on tests from Percona server
#
--source include/have_innodb.inc
--source include/have_sequence.inc
--source include/log_slow_prepare.inc
# Cannot be used with view protocol as number of temporary tables changes
--source include/no_view_protocol.inc
--let $log_slow_prefix=log_slow_innodb
# Force cold buffer pool
#--let $restart_parameters=--innodb_buffer_pool_load_at_startup=OFF
#--source include/restart_mysqld.inc
CREATE TABLE t1(a INT primary key, b int) ENGINE=InnoDB;
INSERT INTO t1 select seq, seq from seq_1_to_1000;
SET SESSION min_examined_row_limit=0;
SET SESSION long_query_time=0;
#
# Test all enabled options with InnoDB-involving query
#
SET SESSION log_slow_verbosity='innodb,query_plan';
--let log_file=$log_slow_prefix-verbosity_1
--source include/log_slow_start.inc
SELECT sum(a+b) FROM t1;
UPDATE t1 set b=b+1 where a=1 or a=999;
--source include/log_slow_stop.inc
--let log_slow_verbosity_expected_matches= 3
--let log_slow_verbosity_queryplan_matches= 1
--let log_slow_verbosity_innodb_expected_matches= 2
--let log_slow_verbosity_tmptable_expected_matches= 0
--source include/log_slow_grep.inc
#
# Test for "No InnoDB statistics available" in output when InnoDB stats are requested
# but the query does not involve InnoDB tables
#
SET SESSION log_slow_verbosity='innodb,query_plan';
--let log_file=$log_slow_prefix-verbosity_2
--source include/log_slow_start.inc
SELECT 1;
--source include/log_slow_stop.inc
--let log_slow_verbosity_expected_matches= 2
--let log_slow_verbosity_queryplan_matches= 1
--let log_slow_verbosity_innodb_expected_matches= 0
--source include/log_slow_grep.inc
#
# Test 'query_plan'
#
SET SESSION log_slow_verbosity='query_plan';
let log_file=$log_slow_prefix-verbosity_3
--source include/log_slow_start.inc
INSERT INTO t1 VALUE(1000);
--source include/log_slow_stop.inc
--let log_slow_verbosity_innodb_expected_matches= 1
--source include/log_slow_grep.inc
DROP TABLE t1;
--source include/log_slow_cleanup.inc
......@@ -550,7 +550,7 @@ The following specify which files/extra groups are read (specified before remain
(Defaults to on; use --skip-log-slow-slave-statements to disable.)
--log-slow-verbosity=name
Verbosity level for the slow log. Any combination of:
innodb, query_plan, explain
innodb, query_plan, explain, engine, full
--log-tc=name Path to transaction coordinator log (used for
transactions that affect more than one storage engine,
when binary log is disabled).
......
--source include/not_embedded.inc
--source include/have_sequence.inc
# View protocol changes some plans
--source include/no_view_protocol.inc
SELECT table_name, column_name FROM information_schema.columns where table_name="OPTIMIZER_TRACE";
set optimizer_trace="enabled=on";
show variables like 'optimizer_trace';
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment