summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Golubchik <sergii@pisem.net>2013-09-20 11:29:01 +0200
committerSergei Golubchik <sergii@pisem.net>2013-09-20 11:29:01 +0200
commit2fe0836eed16ce5809c34064893681f12c77da9f (patch)
tree441c1eb870dadd4659e6b63e9fd48aecbafbdb7f
parent4232874772c7fb041247614790f1b22740ddfb7f (diff)
parent28ec372744e6dbeab9ecae7a3a9a7ef23b0866d5 (diff)
downloadmariadb-git-2fe0836eed16ce5809c34064893681f12c77da9f.tar.gz
5.5.33a merge
-rw-r--r--cmake/jemalloc.cmake15
-rw-r--r--debian/dist/Debian/control3
-rw-r--r--debian/dist/Ubuntu/control3
-rw-r--r--man/mysqld_safe.142
-rw-r--r--mysql-test/r/bad_frm_crash_5029.result11
-rw-r--r--mysql-test/std_data/mdev5029_1.frm (renamed from mysql-test/std_data/mdev5029.frm)bin8602 -> 8602 bytes
-rw-r--r--mysql-test/std_data/mdev5029_2.MADbin0 -> 8192 bytes
-rw-r--r--mysql-test/std_data/mdev5029_2.MAIbin0 -> 8192 bytes
-rw-r--r--mysql-test/std_data/mdev5029_2.frmbin0 -> 8602 bytes
-rw-r--r--mysql-test/t/bad_frm_crash_5029.test11
-rw-r--r--scripts/mysqld_safe.sh2
-rw-r--r--sql/table.cc5
-rw-r--r--storage/tokudb/CMakeLists.txt3
13 files changed, 48 insertions, 47 deletions
diff --git a/cmake/jemalloc.cmake b/cmake/jemalloc.cmake
index 54e69da5a28..5cb9c493a20 100644
--- a/cmake/jemalloc.cmake
+++ b/cmake/jemalloc.cmake
@@ -30,14 +30,23 @@ MACRO (USE_BUNDLED_JEMALLOC)
ENDMACRO()
SET(WITH_JEMALLOC "yes" CACHE STRING
- "Which jemalloc to use (possible values are 'no', 'bundled', 'yes' (same as bundled)")
-#"Which jemalloc to use (possible values are 'no', 'bundled', 'system', 'yes' (system if possible, otherwise bundled)")
+ "Which jemalloc to use (possible values are 'no', 'bundled', 'system', 'yes' (system if possible, otherwise bundled)")
MACRO (CHECK_JEMALLOC)
IF(WIN32)
SET(WITH_JEMALLOC "no")
ENDIF()
- IF(WITH_JEMALLOC STREQUAL "bundled" OR WITH_JEMALLOC STREQUAL "yes")
+ IF(WITH_JEMALLOC STREQUAL "system" OR WITH_JEMALLOC STREQUAL "yes")
+ CHECK_LIBRARY_EXISTS(jemalloc malloc_stats_print "" HAVE_JEMALLOC)
+ IF (HAVE_JEMALLOC)
+ SET(LIBJEMALLOC jemalloc)
+ ELSEIF (WITH_JEMALLOC STREQUAL "system")
+ MESSAGE(FATAL_ERROR "system jemalloc is not found")
+ ELSEIF (WITH_JEMALLOC STREQUAL "yes")
+ SET(trybundled 1)
+ ENDIF()
+ ENDIF()
+ IF(WITH_JEMALLOC STREQUAL "bundled" OR trybundled)
USE_BUNDLED_JEMALLOC()
ENDIF()
ENDMACRO()
diff --git a/debian/dist/Debian/control b/debian/dist/Debian/control
index c66ffedfd1a..38868478abd 100644
--- a/debian/dist/Debian/control
+++ b/debian/dist/Debian/control
@@ -14,7 +14,8 @@ Package: libmariadbclient18
Section: libs
Architecture: any
Depends: mariadb-common, libmysqlclient18 (= ${source:Version}), ${shlibs:Depends}, ${misc:Depends}
-Conflicts: mariadb-server-5.5 (<< 5.5.33), mariadb-galera-server-5.5 (<< 5.5.33)
+Conflicts: mariadb-server-5.5 (<< 5.5.33), mariadb-galera-server-5.5 (<< 5.5.33),
+ mariadb-server-5.1, mariadb-server-5.2, mariadb-server-5.3
Description: MariaDB database client library
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
diff --git a/debian/dist/Ubuntu/control b/debian/dist/Ubuntu/control
index 8eb5f4537ac..de7b2405676 100644
--- a/debian/dist/Ubuntu/control
+++ b/debian/dist/Ubuntu/control
@@ -14,7 +14,8 @@ Package: libmariadbclient18
Section: libs
Architecture: any
Depends: mariadb-common, libmysqlclient18 (= ${source:Version}), ${shlibs:Depends}, ${misc:Depends}
-Conflicts: mariadb-server-5.5 (<< 5.5.33), mariadb-galera-server-5.5 (<< 5.5.33)
+Conflicts: mariadb-server-5.5 (<< 5.5.33), mariadb-galera-server-5.5 (<< 5.5.33),
+ mariadb-server-5.1, mariadb-server-5.2, mariadb-server-5.3
Description: MariaDB database client library
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
diff --git a/man/mysqld_safe.1 b/man/mysqld_safe.1
index 7cd68e01c7d..25848aecb9c 100644
--- a/man/mysqld_safe.1
+++ b/man/mysqld_safe.1
@@ -83,15 +83,15 @@ Options unknown to
are passed to
\fBmysqld\fR
if they are specified on the command line, but ignored if they are specified in the
-[mysqld_safe]
-group of an option file\&. See
+[mysqld_safe] or [mariadb_safe]
+groups of an option file\&. See
Section\ \&4.2.3.3, \(lqUsing Option Files\(rq\&.
.PP
\fBmysqld_safe\fR
reads all options from the
[mysqld],
-[server], and
-[mysqld_safe]
+[server],
+[mysqld_safe], and [mariadb_safe]
sections in option files\&. For example, if you specify a
[mysqld]
section like this,
@@ -146,40 +146,6 @@ Display a help message and exit\&.
.sp -1
.IP \(bu 2.3
.\}
-.\" mysqld_safe: autoclose option
-.\" autoclose option: mysqld_safe
-\fB\-\-autoclose\fR
-.sp
-(NetWare only) On NetWare,
-\fBmysqld_safe\fR
-provides a screen presence\&. When you unload (shut down) the
-\fBmysqld_safe\fR
-NLM, the screen does not by default go away\&. Instead, it prompts for user input:
-.sp
-.if n \{\
-.RS 4
-.\}
-.nf
-*<NLM has terminated; Press any key to close the screen>*
-.fi
-.if n \{\
-.RE
-.\}
-.sp
-If you want NetWare to close the screen automatically instead, use the
-\fB\-\-autoclose\fR
-option to
-\fBmysqld_safe\fR\&.
-.RE
-.sp
-.RS 4
-.ie n \{\
-\h'-04'\(bu\h'+03'\c
-.\}
-.el \{\
-.sp -1
-.IP \(bu 2.3
-.\}
.\" mysqld_safe: basedir option
.\" basedir option: mysqld_safe
\fB\-\-basedir=\fR\fB\fIpath\fR\fR
diff --git a/mysql-test/r/bad_frm_crash_5029.result b/mysql-test/r/bad_frm_crash_5029.result
index 7a829c8f6ba..8aa0065f5ee 100644
--- a/mysql-test/r/bad_frm_crash_5029.result
+++ b/mysql-test/r/bad_frm_crash_5029.result
@@ -1,2 +1,13 @@
show create table t1;
ERROR 42000: Unknown storage engine 'InnoDB'
+call mtr.add_suppression("t1.frm is inconsistent: engine typecode 43, engine name Aria");
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` int(11) DEFAULT NULL,
+ `b` int(11) DEFAULT NULL,
+ `c` int(11) DEFAULT NULL,
+ KEY `a` (`a`),
+ KEY `b` (`b`)
+) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
+drop table t1;
diff --git a/mysql-test/std_data/mdev5029.frm b/mysql-test/std_data/mdev5029_1.frm
index de169a20953..de169a20953 100644
--- a/mysql-test/std_data/mdev5029.frm
+++ b/mysql-test/std_data/mdev5029_1.frm
Binary files differ
diff --git a/mysql-test/std_data/mdev5029_2.MAD b/mysql-test/std_data/mdev5029_2.MAD
new file mode 100644
index 00000000000..3dcc005ec0d
--- /dev/null
+++ b/mysql-test/std_data/mdev5029_2.MAD
Binary files differ
diff --git a/mysql-test/std_data/mdev5029_2.MAI b/mysql-test/std_data/mdev5029_2.MAI
new file mode 100644
index 00000000000..3533a1d705a
--- /dev/null
+++ b/mysql-test/std_data/mdev5029_2.MAI
Binary files differ
diff --git a/mysql-test/std_data/mdev5029_2.frm b/mysql-test/std_data/mdev5029_2.frm
new file mode 100644
index 00000000000..d7eb677fea7
--- /dev/null
+++ b/mysql-test/std_data/mdev5029_2.frm
Binary files differ
diff --git a/mysql-test/t/bad_frm_crash_5029.test b/mysql-test/t/bad_frm_crash_5029.test
index b15c37fbc6d..858922886ab 100644
--- a/mysql-test/t/bad_frm_crash_5029.test
+++ b/mysql-test/t/bad_frm_crash_5029.test
@@ -4,8 +4,17 @@
# a.k.a. fail to open an frm with indexes:
let $datadir=`select @@datadir`;
-copy_file std_data/mdev5029.frm $datadir/test/t1.frm;
+
+# normal innodb table (but innodb is disabled here)
+copy_file std_data/mdev5029_1.frm $datadir/test/t1.frm;
--error ER_UNKNOWN_STORAGE_ENGINE
show create table t1;
remove_file $datadir/test/t1.frm;
+# Aria table, incorrect typecode
+call mtr.add_suppression("t1.frm is inconsistent: engine typecode 43, engine name Aria");
+copy_file std_data/mdev5029_2.frm $datadir/test/t1.frm;
+copy_file std_data/mdev5029_2.MAI $datadir/test/t1.MAI;
+copy_file std_data/mdev5029_2.MAD $datadir/test/t1.MAD;
+show create table t1;
+drop table t1;
diff --git a/scripts/mysqld_safe.sh b/scripts/mysqld_safe.sh
index 572a08781c8..3c63acddc0c 100644
--- a/scripts/mysqld_safe.sh
+++ b/scripts/mysqld_safe.sh
@@ -509,7 +509,7 @@ then
SET_USER=0
fi
-parse_arguments `$print_defaults $defaults --loose-verbose mysqld_safe safe_mysqld`
+parse_arguments `$print_defaults $defaults --loose-verbose mysqld_safe safe_mysqld mariadb_safe`
parse_arguments PICK-ARGS-FROM-ARGV "$@"
diff --git a/sql/table.cc b/sql/table.cc
index b81c9c2dcb6..7adf4f4831b 100644
--- a/sql/table.cc
+++ b/sql/table.cc
@@ -1135,7 +1135,10 @@ int TABLE_SHARE::init_from_binary_frm_image(THD *thd, bool write,
if (se_plugin)
{
/* bad file, legacy_db_type did not match the name */
- goto err;
+ sql_print_warning("%s.frm is inconsistent: engine typecode %d, engine name %s (%d)",
+ share->normalized_path.str, legacy_db_type,
+ plugin_name(tmp_plugin)->str,
+ ha_legacy_type(plugin_data(tmp_plugin, handlerton *)));
}
/*
tmp_plugin is locked with a local lock.
diff --git a/storage/tokudb/CMakeLists.txt b/storage/tokudb/CMakeLists.txt
index fb6cfeb2aec..716af3f9ba6 100644
--- a/storage/tokudb/CMakeLists.txt
+++ b/storage/tokudb/CMakeLists.txt
@@ -1,6 +1,7 @@
# ft-index only supports x86-64 and cmake-2.8.9+
IF(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64" AND
- NOT CMAKE_VERSION VERSION_LESS "2.8.9")
+ NOT CMAKE_VERSION VERSION_LESS "2.8.9" AND
+ NOT WITHOUT_TOKUDB AND NOT WITHOUT_TOKUDB_STORAGE_ENGINE)
CHECK_CXX_SOURCE_COMPILES(
"
struct a {int b; int c; };